Compression is most important when space is in short supply, so compression algorithms are often implemented in limited memory. Most analyses ignore memory constraints as an implementation detail, however, creating a gap between theory and practice. In this paper we consider the effect of memory limitations on compression algorithms. In the first part of the paper we assume the memory available is fixed and prove nearly tight upper and lower bound on how much is needed to compress a string close to its k-th order entropy. In the second part we assume the memory available grows (slowly) as more and more characters are read. In this setting we show that the rate of growth of the available memory determines the speed at which the compression ratio approaches the entropy. In particular, we establish a relationship between the rate of growth of the sliding window in the LZ77 algorithm and its convergence rate.
KeywordsCompression Ratio Compression Algorithm Kolmogorov Complexity Input String Arithmetic Code
Unable to display preview. Download preview PDF.
- 1.Babcock, B., Babu, S., Datar, M., Motwani, R., Widom, J.: Models and issues in data stream systems. In: Proceedings of the 21st Symposium on Principles of Database Systems, pp. 1–16 (2002)Google Scholar
- 4.Gagie, T., Manzini, G.: Space-conscious compression. Technical Report TR-INF-2007-06-02, Università del Piemonte Orientale (2007)Google Scholar
- 10.Muthukrishnan, S.: Data Streams: Algorithms and Applications (2005). Now Publishers, See also: http://www.nowpublishers.com/tcs/
- 14.Wyner, A.J.: The redundancy and distribution of the phrase lengths of the fixed-database Lempel-Ziv algorithm. IEEE Transactions on Information Theory 43, 1452–1464 (1997)Google Scholar