Arithmetic compression is an alternative to Huffman compression; it
enables characters to be represented as fractional bit lengths. Arithmetic coding
works by representing a number by an interval of real numbers greater or equal
to zero, but less than one. As a message becomes longer, the interval needed to
represent it becomes smaller and smaller, and the number of bits needed to
specify it increases.