Die Kolmogorov-Komplexität eines Strings ist nicht berechenbar. Wie wird jedoch erwartet, dass in einer zufälligen Teilmenge der Größe von binären Zeichenfolgen der Länge die Komplexität geringer ist als eine ganze Zahl kleiner als (als Funktion von , und )?n n 0 n M n n 0
9
Antworten:
Die Kolmogorov-Komplexität wird nur bis zu einer additiven Konstante bestimmt, so dass es nicht möglich ist, eine genaue Antwort zu geben. Die Grenze, die ich hier beschreibe, ist noch schwächer.
Natürlich kann die erwartete Anzahl leicht berechnet werden, wenn wir wissen, wie viele der Zeichenfolgen eine Komplexität von weniger als haben. Lassen Sie mich dies beantworten. Es ist normalerweise die erste Aussage über die Komplexität von Kolmogorov, dass diese Zahl höchstens beträgt - da es nur diese vielen Zeichenfolgen kleinerer Länge gibt. Wenn Ihr Programm andererseits "von Länge , nehmen Sie die te Zahl" sagt , erhalten Sie -Ketten mit einer Komplexität von weniger als , wobei ist Präfixfreie Version der Kolmogorov-Komplexität von (also höchstensn 0 2 n 0 - 1 n x 2 n 0 - K ( n ) - C n 0 K ( n ) n log n + log ∗ n + O ( 1 ) p x n x n O ( 1 ) p x2n n0 2n0- 1 n x 2n0- K.( n ) - C. n0 K.( n ) n Logn + log∗n+O(1) ). Im Detail enthält die Zeichenfolge zuerst die Beschreibung der Turing-Maschine, die die Eingabe , wobei p die Beschreibung eines präfixfreien Programms ist, das ausgibt und die te Anzahl der Länge ausgibt , die Bits ist und dann folgt .px n x n O(1) p x
Wahrscheinlich ist es möglich, diese Grenzen zu verbessern, aber ich bezweifle, dass Sie eine genaue Antwort erhalten könnten.
quelle
Eine genaue Antwort kann gegeben werden. Die Anzahl der Strings der Länge mit (einfacher) Komplexität beträgt höchstens n 0 2 n 0 - K ( n 0 | n ) bis zu einem konstanten Faktor. Daher hat jeder Prozess, der zufällig eine Teilmenge auswählt, mit vernünftiger Wahrscheinlichkeit einen 2 - K ( n 0 | n ) + O ( 1 ) Bruchteil von Zeichenfolgen mit einer Komplexität von weniger als n 0 . Um unseren Anspruch zu zeigen, genügt es zu zeigen, dass die Anzahl der Zeichenfolgen komplex istn n0 2n0- K.( n0| n) 2- K.( n0| n)+O(1) n0 gleich zu ist auch gegeben durch 2 k - K ( k | n ) . Wir können das notwendige Ergebnis zeigen, indem wir die Summe dieses Wertes über k von 1 bis n 0 bestimmen . Um dies zu zeigen, verwenden wir ein Additivitätsergebnis für die einfache Komplexität (aufgrund von B. Bauwens und A. Shen. Ein Additivitätssatz für die einfache Kolmogorov-Komplexität . Theory of Computing Systems, 52 (2): 297-302, Februar 2013),
C. ( a , b ) = K ( a | C ( a , b )k 2k−K(k|n) k n0
Hier bezeichnet K ( ⋅ ) die präfixfreie Kolmogorov-Komplexität. Die Wahl a = n , beobachten wirdass für jedes n -BitString b Komplexitäts k haben wir
k = C ( b ) = C ( n , b ) + O (
quelle