1.1 Glossary

This document uses the following terms:

Huffman alphabet: A set of symbols used in Huffman encoding.

Huffman code: See "prefix code".

Huffman codes: A set of variable-length bit sequences for an alphabet of symbols.  In order to provide compression, more frequent symbols are assigned shorter bit sequences.  The bottom-up Huffman construction process is optimal in the sense that the total length of the data is minimized, given the number of times each symbol occurs.

Huffman symbol: See "prefix code".

LZ77: A general-purpose compression technique introduced by Lempel and Ziv in 1977.  Byte sequences that are the same as previous sequences are replaced by a (length, distance) pair that unambiguously references the earlier sequence.

prefix code: A type of code system, typically variable-length, having the prefix property, in that no valid code word in the system is a prefix of any other valid code word in the set.

MAY, SHOULD, MUST, SHOULD NOT, MUST NOT: These terms (in all caps) are used as defined in [RFC2119]. All statements of optional behavior use either MAY, SHOULD, or SHOULD NOT.