ISSN 0032-9460, Problems of Information Transmission, 2010, Vol. 46, No. 1, pp. 38–61.
Pleiades Publishing, Inc., 2010.
Original Russian Text
An.A. Muchnik, A.E. Romashchenko, 2010, published in Problemy Peredachi Informatsii, 2010, Vol. 46, No. 1, pp. 42–67.
Stability of Properties of Kolmogorov Complexity
An. A. Muchnik
and A. E. Romashchenko
Kharkevich Institute for Information Transmission Problems, RAS, Moscow
Received June 8, 2009; in ﬁnal form, January 15, 2010
Abstract—Assume that a tuple of binary strings ¯a = a
has negligible mutual infor-
mation with another string b. Does this mean that properties of the Kolmogorov complexity
of ¯a do not change signiﬁcantly if we relativize them to b? This question becomes very nontriv-
ial when we try to formalize it. In this paper we investigate this problem for a special class of
properties (for properties that can be expressed by an ∃-formula). In particular, we show that
a random (conditional on ¯a)oracleb does not help to extract common information from the
The Kolmogorov complexity K(x) of a binary string x is the minimum length of a program
that generates x. Similarly, the conditional complexity K(x| y)(complexityofx given y)isthe
minimum length of a program that prints x given y as an input. We consider programs in one of
optimal programming languages (for details of the deﬁnition, see [1, 2]).
We may deﬁne Kolmogorov complexity (and conditional Kolmogorov complexity) not only for
individual strings but also for pairs, triples, and all tuples of strings. To this end, we ﬁx some
computable enumeration of all tuples, i.e., a computable bijection between binary strings and all
tuples of binary strings. The Kolmogorov complexity of a tuple is deﬁned as the Kolmogorov
complexity of the string assigned to this tuple in the enumeration. The choice of a particular
enumeration does not matter: if we switch from one computable enumeration to another, this
changes the Kolmogorov complexity of tuples by an additive term O(1) only. This is not essential
since even the Kolmogorov complexity of an individual string is deﬁned only up to an additive O(1)
(which depends on the choice of an optimal programming language).
The main deﬁnitions and most of the results in the theory of Kolmogorov complexity easily
relativize: instead of plain programs, we may consider algorithms with an oracle, and most argu-
ments about Kolmogorov complexity work with any oracle. Note that if an oracle is a ﬁnite object
(string) z, we do not even need to introduce new notation to speak about Kolmogorov complexity
with this oracle. Relativization to an oracle z means that we put z in conditions of all complexities;
e.g., relativized version of K(x)isK(x| z), relativized K(x| y)isK(x| y, z), etc.
Information about y contained in x is deﬁned as the diﬀerence between the Kolmogorov com-
plexity of y and conditional Kolmogorov complexity of y given x:
I(x : y)=K(y) − K(y| x).
Supported in part by the Russian Foundation for Basic Research, project no. 99-01-00828.
Deceased (February 24, 1958 — March 18, 2007).