So finally you admit huffman is not suited to encode the world's information.
Imagine having to come up with a table to encode the world's information.
You have no idea what the information is now
So finally you admit huffman is not suited to encode the world's information.
Imagine having to come up with a table to encode the world's information.
You have no idea what the information is now
Ok smarty pants here is an example description of a possible application:
A sender is sending information fields and operation fields to the receiver.
The information fields are variable bit.
The operation fields are variable bit.
The receiver is supposed to perform the operation on the information fields and return the results.
The result fields are variable bit.
Example of operation fields:
0 = add 1 = substract 01 = multiply 10 = divide more could follow in the future.Example of information fields:
111 = 7 decimal 1000 = 8 decimal. largere numbers possible.Information fields can be near infinite length Operation fields can be near infinite length Result fields can be near infinite length. (only limited by current hardware, future hardware can embrace more)
How do you send the information to the receiver ?
How do you make sure the "system/protocol" scales and stays compatible as better hardware becomes available ?
Bye, Skybuck.
Poor Baby! Too ignorant to study information theory before opening mouth in high gear.
...Jim Thompson
-- | James E.Thompson, P.E. | mens | | Analog Innovations, Inc. | et | | Analog/Mixed-Signal ASIC's and Discrete Systems | manus | | Phoenix, Arizona Voice:(480)460-2350 | | | E-mail Address at Website Fax:(480)460-2142 | Brass Rat | | http://www.analog-innovations.com | 1962 | America: Land of the Free, Because of the Brave
Kind of reminds you of 'Dork Splatter', doesn't it?
-- Service to my country? Been there, Done that, and I've got my DD214 to prove it. Member of DAV #85. Michael A. Terrell Central Florida
My underwear is not something I discuss on Usenet.
Doesn't make a lot of sense. If you want to decode that, how do you distinguish 0 followed by the operand from 01? IOW, how do you know that the 1 is part of the operation and not of the operand?
-- Rudy Velthuis http://rvelthuis.de "It is better to have a permanent income than to be fascinating." -- Oscar Wilde (1854-1900)
Wrong conclusion. I never said anything like it.
If the table translates bytes into bit patterns, it will not contain more than 256 entries. Not too big, and negligible compared to the world's information. For all the data in the world, it would probably make sense to use a DWORD table, to speed things up and get better compression. Of course, you would first have to establish which bytes (words, dwords, whatever you choose) are used very often, and which ones are very rare.
Like I said: you may have read it but you certainly didn't understand what you were reading.
-- Rudy Velthuis http://rvelthuis.de "When ideas fail, words come in very handy." -- Goethe (1749-1832)
If anyone has "admitted" that they are incorrect. Huffman knew a lot of stuff and published quite a bit about encoding information without wasting bits. You will find that there are very easy systems for encoding bit strings of unlimitted lengths based on his ideas. You just need to read up on them.
No table is needed. The table is just a very handy way to state the general case. You can do specific cases of Huffman coding without a need for a table.
You only need a system to deal with it.
It still doesn't matter. Since Huffman coding can be done following a rule that continues to infinite lengths, there is no need to know what the information will be in the future.
No, you have suggested an encoding which wastes a lot of bits and is therefor not suited to the worlds needs. There are enoiugh bits needed already. Adding a bunch of waste solves nothing.
That is incorrect.
Something we should have noticed before already.
More or less a case of the following, IMO (my newsreader picked that quote at random, BTW):
-- Rudy Velthuis
If that were true, he should patent it and start competing with the compressors already on the market, instead of bothering us with his "ideas".
-- Rudy Velthuis http://rvelthuis.de "Few things are harder to put up with than a good example." - Mark Twain (1835-1910)
This shows you do not understand what I at least mean with a universal code.
The wikipedia page about universal codes has also changed since I posted version 1 of my universal code.
You suggest a fix-bit system for the world, which is the problem the world currently has.
The universal code is ment to fix the problem of the world and introduce a variable bit system.
A concept you simple do not grasp ? :)
Bye, Skybuck.
The gigabit example, let's expand it with another field.
Field one: 160 * 1000 * 1000 * 1000 bits.
Field two: 50 * 1000 * 1000 * 1000 bits .
Skybuck's Universal Code Version 4:
Field 1:
Marker: 38 bits. Length: 38 bits. Data: 160 000 000 000 bits Total: 160 000 000 076 bits.
Field 2: Marker: 36 bits. Length: 36 bits. Data: 50 000 000 000 bits. Total: 50 000 000 072 bits.
Field 1 + Field2 = 210000000148 bits.
Total data bits = 210000000000. Total overhead bits = 148.
((210000000148 - 210000000000) / 210000000000) * 100% = 0.000000000704 procent overhead.
Show me any encoding which is more efficient and just as flexible as mine ?
Bye, Skybuck.
My universal code solves that problem.
However you apperently reject my solution, so it's up to you to find your own solution.
Bye, Skybuck.
Universal codes do not solve a lot. From wiki: "Huffman coding and arithmetic encoding (when they can be used) give at least as good, and often better compression than any universal code."
Not at all. See below. You usually start with a certain presumption, though.
What is "the problem of the world", according to you? Hunger, disease, poverty, war, lack of clean water, global warming, or what?
Apparently you do not understand what I am saying. There is also adaptive compression (huffman or whatever), which simply starts with a certain presumption and then updates it every so many bytes, depending on the data already read. Decoding will produce the same set of bytes again, so the table can be adapted exactly the same way at decoding too.
-- Rudy Velthuis http://rvelthuis.de "Ask people why they have deer heads on their walls and they tell you it\'s because they\'re such beautiful animals. I think my wife is beautiful, but I only have photographs of her on the wall." -- George Carlin
FWIW, the wiki also says: "Universal codes are also useful when Huffman codes are inconvenient. For example, when the transmitter but not the receiver knows the probabilities of the messages, Huffman coding requires an overhead of transmitting those probabilities to the receiver. Using a universal code does not have that overhead."
Well, that is what I said. But it is only true for short messages, not for longer messages, where the size of the probability data is negligible to the size of the real data.
And it still not solves your encoding using 0, 1, 01 and 11 for the different operations. When decoding, one can't distinguish between 01 and 01, i.e. it is ambiguous, since it can have two meanings: "add" plus the first bit of the operand, or "multiply".
Now if you assume that division is not done as often as multiplication, and that subtraction happens less than addition, you can use:
0 addition 10 subtraction 110 multiplication 111 division.Now, if you see a 0, you know it is addition, and what follows is the first operand. If you see a 1, you must check the next bit. If it is 0, you have subtraction, otherwise you must check the next bit, etc.
-- Rudy Velthuis http://rvelthuis.de "There Ought to be Limits to Freedom!" -- George W. Bush, commenting on gwbush.com (05/21/1999)
Misconception:
Universal code is not compression, it's flexiblity, while huffman is not.
Internet address space shortage, multiple stacks running next to each other, more complexity, more costs, millenium bug, windows 16, 32, 64 bit compatibility problems, costs go into the billions of dollars ;)
I have studied it, it's not suited.
Stop studieing that bullshit and start studieing and applyieng Skybuck's Universal Code and you might actually learn something and write better software which will:
Time to ditch fixed-bit-shit :)
Bye, Skybuck.
To much effort for me.
All I can do is try to convince myself, you, the people and the world, the universal code is a better way to encode/decode/store information for the future.
I myself am not 100% convinced yet... but version 4 is a major efficiency improvement ;)
Bye, Skybuck.
Why not just use a fixed length DWORD or QWORD indicating the number of bits transmitted, and how often do you use such large integers?
What are you trying to solve?
-- Rudy Velthuis http://rvelthuis.de "Always go to other people's funerals, otherwise they won't come to yours." -- Yogi Berra.
Not that I can see. Show us some working code (if possible, in readable form) and prove that is solves all the problems. Should not be too hard for a genius like you.
I don't need one. I really wonder what you are trying to solve.
-- Rudy Velthuis http://rvelthuis.de "I have read your book and much like it." -- Moses Hadas (1900-1966)
How would a universal code solve these? Note that variable bit systems would be much harder to implement, and probably a lot slower as well.
Says you.
Yeah, sure.
-- Rudy Velthuis http://rvelthuis.de "Success usually comes to those who are too busy to be looking for it" -- Henry David Thoreau (1817-1862)
Would greatly increase your credibility, though.
I'm pretty sure you are very convinced of yourself.
Problem is that you don't convince others, especially since you display a lack of basic knowledge which makes it hard for anyone to believe you have a clue at all.
-- Rudy Velthuis http://rvelthuis.de "Roses are #FF0000 Violets are #0000FF All my base are belong to you!" -- Geek Valentine T-shirt at ThinkGeek
ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.