A complexity-theoretic approach to the classical data compression problem is to define a notion of language compression by a machine in a certain complexity class, and to study language classes compressible under the above definition. Languages that can be compressed efficiently (e.g. by a probabilistic polynomial time machine) are of special interest.
We define the notion of language compressibility, and show that sufficiently sparse “easy” languages (e.g. polynomial time) can be compressed efficiently. We also define a notion of ranking (which is an optimal compression) and show that some “very easy” languages (e.g. unambiguous context-free languages) can be ranked efficiently. We exhibit languages which cannot be compressed or ranked efficiently.
The notion of compressibility is closely related to Kolmogorov complexity and randomness. We discuss this relationship and the complexity-theoretic implications of our results.
[1]
Jorma Rissanen,et al.
Generalized Kraft Inequality and Arithmetic Coding
,
1976,
IBM J. Res. Dev..
[2]
Michael Sipser,et al.
A complexity theoretic approach to randomness
,
1983,
STOC.
[3]
Leslie G. Valiant,et al.
The Complexity of Computing the Permanent
,
1979,
Theor. Comput. Sci..
[4]
Andrew Chi-Chih Yao,et al.
Theory and application of trapdoor functions
,
1982,
23rd Annual Symposium on Foundations of Computer Science (sfcs 1982).
[5]
Manuel Blum,et al.
How to Generate Cryptographically Strong Sequences of Pseudo Random Bits
,
1982,
FOCS.
[6]
Glen G. Langdon,et al.
Arithmetic Coding
,
1979
.