×

The construction of Huffman codes is a submodular (”convex”) optimization problem over a lattice of binary trees. (English) Zbl 0967.94005

Summary: We show that the space of all binary Huffman codes for a finite alphabet defines a lattice, ordered by the imbalance of the code trees. Representing code trees as path-length sequences, we show that the imbalance ordering is closely related to a majorization ordering on real-valued sequences that correspond to discrete probability density functions. Furthermore, this tree imbalance is a partial ordering that is consistent with the total orderings given by either the external path length (sum of tree path lengths) or the entropy determined by the tree structure. On the imbalance lattice, we show the weighted path-length of a tree (the usual objective function for Huffman coding) is a submodular function, as is the corresponding function on the majorization lattice. Submodular functions are discrete analogues of convex functions. These results give perspective on Huffman coding and suggest new approaches to coding as optimization over a lattice.

MSC:

94A45 Prefix, length-variable, comma-free codes
94A15 Information theory (general)
94A29 Source coding
94A24 Coding theorems (Shannon theory)
05C05 Trees
06A07 Combinatorics of partially ordered sets
Full Text: DOI