|Compression algorithms are all about exploiting redundancy. When applying
an expensive Reducer to a redundant source, it may be better to
extract the structural redundancy that is present. LZ78 is a compression
algorithm that does so, without requiring the dictionary to be populated
with all of the possible values of a data type unlike its later
refinement LZW, and which has fewer comparison reqirements during encoding
than its earlier counterpart LZ77. Since we aren't storing these as a
bitstream the LZSS refinement of only encoding pointers once you cross
the break-even point is a net loss.
|a type-constrained reduce operation
|contruct an LZ78-compressed Generator using a Map internally, requires an instance of Ord.
|contruct an LZ78-compressed Generator using a list internally, requires an instance of Eq.
|QuickCheck property: decode . encode = id
|QuickCheck property: decode . encodeEq = id
|Produced by Haddock version 2.4.1|