Re: Repeatable compression is possible and easy to do, here's how...
- From: jg <jules.stocks@xxxxxxxxx>
- Date: Tue, 23 Oct 2007 05:23:05 -0700
No thomas,
I might have made one more statement in my original post, perhaps it
wasn't obvious to you. Here goes...
Yes, when you strip the sign bit you do in fact lose information. And
given the system architecure I described, you can reconstitute the
original value INCLUDING THE MISSING SIGN BIT on the receiver side of
the channel.
It's called inferencing, it's something that people do everyday in
AI. In fact many programs have been written to make inferences that
are both interesting and valuable.
So the receiver is given the absolute value of the message cell, and
by using inferencing of the received message cell and other
information -- not sent over the transmission channel, the sign bit
can be reliably inferred.
How? Pardon me Thomas, but I think I will restrict that information
to licensees.
I do expect to use this method, as inefficient as it is, on Nelson's
MILLION-DIGIT file. In fact, because the compressor is public, it's
easy for Mark to run the compressor step himself. (Mark, I'll send
you the code to do this as soon as I get to the machine which has my
compressor work.)
And either he and I will meet or we'll work on other arrangements to
accomplish this.
As to efficiency, I don't claim that processing 2-bit client values is
the best way to do things. I have other designs that are preferable.
But I am not willing to disclose the compression method for the other
systems, whereas since this is more of a demonstrator and has almost
zero practical value, I am not motivated to keep it confidential --
especially because the decompression logic is non-trivial, I didn't
write the decompressor by hand and I doubt that anyone else can
develop it.
On Oct 22, 3:01 am, Thomas Richter <t...@xxxxxxxxxxxxxxxxx> wrote:
jg schrieb:
Assume two bit data.
Call this data 'client'.
Establish three streams of pseudo-random data, each two bits wide.
z1 = client ^ a;
z2 = b ^ c;
z = z1 - z2;
Strip the sign-bit, now the 'z' variable is two bits too.
...and has loss.
And!, drumroll -- it has a distribution, as z will contain more values
near zero. Thus, a stream of z values is 'easily' compressed.
So might it be. Just that the above "stripping" is not a group
operation, not invertible and your data is gone forever. *Provably*
Not by a lot, that's true. But you can do this again and again. I
have. It works.
No, it doesn't. I do not even have to check the code to see that.
It is in the same sense broken as any algorithm to divide an angle by
three with just a ruler and a compass is deemed to fail. Provably.
And by the way, that "counting argument" that you fools seem to be in
love with disallows not only repeatable compression but regular
compression too. I've said this before yet everyone seems willing to
ignore basic natural science. If you want to disprove repeatable
compression you need to come up with a theory that (at a minimum!,)
*allows* conventional compression. So far, I have yet to see even an
attempt at this.
Has been discussed often enough here. Indeed, a compressor expands most
sequences. Just not the interesting ones. This is good enough for
all-day purpose. In that sense, "most compressors don't work", and the
only established one that does is the "cp" command, which compresses all
programs by 0%, but neither expands a single one.
Because the decompressor isn't so trivial.
It is, in fact, completely impossible. Stripping the sign bit is
provably a non-invertible mapping, and your data is gone.
It involves some algebra,
some cleverness, and some C-code. Which means my method is perfectly
safe here.
..perfectly save to get rid of the original data, indeed.
Greetings,
Thomas
.
- Follow-Ups:
- References:
- Prev by Date: Re: zlib stream parsing question
- Next by Date: Re: Repeatable compression is possible and easy to do, here's how...
- Previous by thread: Re: Repeatable compression is possible and easy to do, here's how...
- Next by thread: Re: Repeatable compression is possible and easy to do, here's how...
- Index(es):
Relevant Pages
|
|