Jump to content

Grammar-based code

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by DragonBot (talk | contribs) at 04:59, 11 October 2008 (robot Adding: pl:Kodowanie gramatykowe). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.


Grammar-based codes are compression algorithms based on the idea of constructing a context-free grammar for the string to be compressed. Examples include universal lossless data compression algorithms proposed in Kieffer and Yang 2000, and SEQUITUR(http://sequitur.info/), among others. To compress a data sequence, a grammar-based code first transforms into a context-free grammar , and then uses an arithmetic coding algorithm to compress the grammar . For a detailed description of grammar-based codes and context-free grammars, the reader is referred to Kieffer and Yang 2000.

Examples

The class of grammar-based codes is very broad. It includes block codes, variations of the incremental parsing Lempel-Ziv code Ziv and Lempel 1978 (LZ78), the multilevel pattern matching (MPM) algorithm Kieffer et al. 2000, and many other new universal lossless compression algorithms.

Coding theorems

Grammar-based codes are universal in the sense that they can achieve asymptotically the entropy rate of any stationary, ergodic source with a finite alphabet.

References

  • Kieffer-Yang 2000. J. C. Kieffer and E.-H. Yang, "Grammar-based codes: A new class of universal lossless source codes," IEEE Trans. Inform. Theory, vol. 46, pp. 737–754, 2000.
  • Ziv and Lempel 1978. J. Ziv and A. Lempel, "Compression of individual sequences via variable rate coding," IEEE Trans. Inform. Theory, vol. 24, pp. 530–536, 2000.