Why does Huffman encoding have entropy?

539 Views Asked by At

Possible duplicate: How are Huffman encoding and entropy related?

I am confused on why you would calculate entropy, H, of some Huffman encoding implementation. I understand the calculation but it seems to me that calculating entropy is inappropriate because there are no error correcting properties of a Huffman code.

According to Dr. David MacKay's Information Theory, Inference, and Learning Algorithms, stream codes "will fail to decode correctly if any of the bits of the compressed files are altered."

That is the entire point of error correcting codes. Furthermore, to calculate the Shannon Limit, you must be able to model the communication channel in terms of its error distributions.

Unless I'm mistaken, there is no assumption of a noisy channel with canonical Huffman codes. Even so, I am seeing published papers that calculate the Shannon Entropy of a Huffman code.

Conceptually, why would you do this?

Edit: Some additional information:

I am seeing estimates for stream codes (variations on Lempel-Ziv) being referred to as the Shannon Limit for a channel. According to Wikipedia's Noisy Channel page, The Shannon limit or Shannon capacity of a communications channel is the theoretical maximum information transfer rate of the channel, for a particular noise level.

What is bothering me is I'm seeing some entropy calculation for Huffman codes being presented as the Shannon Limit and I think that is incorrect.

I'm trying to figure out what I'm misunderstanding.