Re: Please, PLEASE, hold your questions/comments/elsewhat til the end. Thank you. :)



Einstein <michaelhh@xxxxxxxxx> wrote:

Ok, here I go... the other threads are slower in means, but people here
post like I do! We write books where paragraphs could do :D

Wow -- you write books where nothing would do... How many hours of
your life have you wasted on this when almost everyone here could have
told you in the first 30 seconds that what you were doing won't work?
Your time would have been more productively spent lying outside in the
grass and enjoying the fresh air...

So back to what you've posted. Your "step 1" was clearly stated but
utterly useless. All you've done is change the statistics -- big
deal. You could have started with the following statement: "I can
compress any binary string with 0/1 probabilities of 0.4/0.6 so that
on average I get a result smaller than 97% of the input." That's what
you have after the first step, after all, so let's just *start* there.
And, incidentally, I picked 97% because Shannon's basic theorem says
that this is impossible.

Incidentally, changing statistics is easy. Give me *any* 0/1
probability split and I'll give you an encoding that achieves
approximately those probabilities. This is simple and provably
doesn't do anything useful for compression.

So now you go through some horribly complex coding process and think
you can beat the 97% figure. Here's the wonderful thing about
Shannon's theorem: It doesn't matter for beans how complex that
coding stage is. You could have a completely complicated process that
requires 1000 pages to describe, with carefully crafted lookup tables
and clever coding tricks, and it just wouldn't matter. The *only*
thing you gain from the complexity is a higher chance of getting
yourself confused and making a mistake -- which is exactly what you've
done.

There are two possibilities for your steps 2-whatever:

1) You've got a valid coding scheme but have messed up the
math/analysis so that it really doesn't give any compression.

2) You've produced an invalid code (a code that isn't uniquely
decipherable, for instance).

I'll leave it for you (or others who have more time than I do) to
discover which is the case, but I'll give you a simple exercise that
you can do that will demonstrate your error: Take the smallest input
size where you think your technique will work -- if that's 8 bits you
can do this by hand, but for 16 bits you'll have to write a program.
Now do your coding on every possible input string of that length so
you basically have a lookup table. From what you claim, it sounds
like you think you can make a lookup table where if the input is 16
bits then the outputs will be (on average?) 15 bits or smaller. Now
from that output it will be easy to determine which of the two
possibilities above apply by testing with the Kraft inequality: if
your resulting code violates the Kraft inequality, then it's an
invalid code (case #2); if it satisfies the Kraft inequality, then
it could possibly be a valid encoding, but when you weight the strings
the probabilities of them occuring you'll get something larger than
97% of the input size -- guaranteed (this means you're in case #1).

So have fun. But don't forget to go outside and enjoy the fresh air
every now and then...

--

Steve Stringer
sillybanter@xxxxxxxxx


.



Relevant Pages

  • Re: QI and MQ Coder: First real-life experiences
    ... 1's or probabilities, can be passed in variety of ways in different ... index log) is the cost of coding k, which is the count of 1's. ... since the high entropy limit makes the relative error ...
    (comp.compression)
  • Re: QI and MQ Coder: First real-life experiences
    ... 1's or probabilities, can be passed in variety of ways in different ... index log) is the cost of coding k, which is the count of 1's. ... since the high entropy limit makes the relative error ...
    (comp.compression)
  • VBA Coding
    ... Needless to say my coding is a failure i.e. it does not work..... ... Dim StrDocName As String ... Dim stQryName As String ...
    (microsoft.public.access.modulesdaovba)
  • RE: prepare form for new record entry on open
    ... Private Sub openstudydetsup_Click ... Dim stLinkCriteria As String ... I’m wondering if this coding needs to be deleted in order to put in the ... >>> Dim stDocName As String ...
    (microsoft.public.access.formscoding)
  • Re: How to get a list of SQL Server Instances?
    ... run your coding on your box, it works fine since you also check local ... get the list of SQL Server Instances in a VB.Net application. ... private string instance; ... public ServerInstance (string server, string instance, string ...
    (microsoft.public.dotnet.languages.vb)

Loading