Jules Gilbert
unread,Sep 11, 2012, 5:52:00 AM9/11/12You do not have permission to delete messages in this group
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to
I don't know what I'm going to do. It's a good thing I have my day job (predicting the future, or at least, the next-day market,) because, when I talk to patent attorneys, well, what they say scares me.
They refer to the reasons I haven't moved on other versions of repeatable compressors as if those reasons are good -- I repeat, they scare me. And I'm having these conversations because I'm looking for a patent attorney.
Oh, and to those of you who think I don't have what I have, I'm distributing a simple demo program and an output; This material is exactly as the job was run, I haven't changed so much as a character. (I did delete the critical function, but nothing else was changed. Contact me if you want a copy.)
Right now, having focused on this project for the past few weeks, I don't see a solution. I had intended to license the program in America, and give it to (licensing it for free,) to countries in which less than 5% of the population are Christians so long as their are no restrictions on witnessing and Bible groups, etc. But as things stand, I don't see any likelihood of actually profiting from my work.
Some explanation:
Today, almost all files and messages are sent compressed. This is true whether the message is a TV signal, one side of a telephone conversation or a movie stored on a CDROM. Compressors are programs which only work once. After one stage of compression, conventional compressors are unable to re-compress the result of the prior stage because the output of all compressors is random-appearing and no compressor can further compress random data.
I have invented a process that changes this, and I believe it qualifies for patent protection. My method decreases the degree of randomness of a client buffer (a portion of a file, possibly produced by a compressor.)
This is quite a claim, it's also true. And to help you believe me I've supplied two files, which I discuss below.
Randomness is measured using the coefficient-like values derived from the process of auto-correlation. An autocor routine measures how alike (or unlike,) each cell is to it's neighbors. Using auto-correlation, a buffer that is random produces coefficient values that are numerically lower than results produced by examining buffers containing non-random values. (In the DSP world, autocorrelation is the standard by which randomness is measured.)
So, a measured buffer which produces high coefficient-like values is less random than measured buffer that produced lower values.
Without exception my process, applied to buffers containing data that is random-appearing converts such buffers to less random data. Also the process has an inverse, so the data can be converted back, making decompression practical.
Now, my method won't turn a compressed file of raucous music into a symphony by Beethoven or Liszt, but it will produce a buffer that is consistently less random than the original input buffer. This process can be cascaded many times using 'helper' routines I supply.
Again, output results produced this way are reversible. This is important if the program is to be commercially useful.
Compression and cell phone related sub-systems are the two most heavily litigated patent areas in the US. Compression has been number one or two for longer than a decade. I don't want to become a party to this statistic.
I am supplying an two attachments to demonstrate the claims I make in this letter. I show C source code used in a simple experimental setup which demonstrates my claim by applying auto-correlatiion before and after reading a random-appearing buffer.
That C program produced the attached output file is complete but for my proprietary functionality.
In my lab I have 10,000 files, each orginally ordinary text documents that were compressed with gzip, a popular compressor of medium quality. I don't get to choose which files get compressed in experiments, a random value is used to make that choice. Also, all data used as input is first XOR'ed with the output of a pseudo-random number generator (a PRNG,) thus insuring that very little context exists in the input when my program processes it.
In the attached program, these files are processed in 256 byte blocks. And this setup is fairly arbitrary, my method can as easily handle large movie files. Really, since I XOR everything against a PRNG, any type of file can be compressed. And then compressed many more times.
Notice I am not patenting anything directly related to compression itself, eg., I don't have a method for doing Huffman or arithmetic coding better than they are already being done. Instead I have a method, so far the only method, for making compression happen the second time, and many more times after that. (The minimum file size is not determined by me, my program makes use of some conventional compressor, which can be chosen by the client. That program, not my program, by it's characteristics determines the minimum practical size. Most files and messages can be made smaller than 5kb. Two thousand bytes is a typical minimum size.)
Whatever kind of compressor someone uses, if they want to compress their file more than once they need to make use of my method. It's that atomic. I don't see anyone building a work-around; I'm pretty sure my method is so basic that a work-around isn't possible.
Simple point, easy to understand and verify: The 'coefficients' obtained from autocor are bigger after the 'demo' function is applied.