La complessità di Kolmogorov è una funzione suriettiva?


9

Risolviamo una codifica delle macchine di Turing e di una macchina di Turing universale, U, che sull'ingresso (T, x) produce qualunque uscita T sull'ingresso x (possibilmente entrambe funzionano per sempre). Definire la complessità di Kolmogorov di x, K (x), come la lunghezza del programma più breve, p, tale che U (p) = x.

Esiste una N tale che per tutte n> N esiste una x con K (x) = n?

Osservazione. Se definiamo le macchine di Turing universali in modo diverso, la risposta può essere negativa. Ad esempio, considera una U che sull'ingresso (T, x) simula T su x se la lunghezza di (T, x) è divisibile per 100, e altrimenti non fa nulla. Si può modificare questo esempio in diversi modi per ottenere controesempi per diverse definizioni di macchine di Turing universali.


Lontano da quello che stai chiedendo, ma penso che non è difficile dimostrare che l'immagine di ha una densità lineare positiva indipendentemente U . Ciò implica ad esempio che K ( x ) è infinitamente spesso composito. KUK(x)
Dan Brumleve,

Risposte:


3

Solo un commento esteso senza intuizioni profonde: forse puoi imbrogliare la codifica di una macchina di Turing e costruire una codifica artificiale che porta a una complessità surrogativa di Kolmogorov:

  • rappresenta la macchina di Turing che emette 0 (1 stato TM);00
  • rappresenta la macchina di Turing che genera p + 1 (il numero rappresentato dalla stringa binaria p più uno); è semplicemente una versione "zippata" implicita di una TM decidibile che genera p + 1 ;0pp+1pp+1
  • rappresenta la p + 1 -esima macchina di Turing in un elenco standard (l'enumerazione può saltare i TM già inclusi con 0 e 0 p ).1pp+100p

La TM universale corrispondente sull'ingresso controlla qual è il valore di b , se è 0 allora genera semplicemente x + 1 , altrimenti simula TM M x + 1 ( M 0 quando x è la stringa vuota); si noti che M x + 1 incorpora gli input.bxb0x+1Mx+1M0xMx+1

Per tutte le stringhe , 1 K ( x ) | x | + 1 ; e per tutti n 1 ci sono 2 n stringhe di lunghezza n ma ci sono solo 2 n - 1 - 1 programmi di lunghezza < n che possono essere rappresentati usando la codifica 1 p ; e solo 2 n - 1 programmi di lunghezza n che possono essere rappresentati usando 1 px1K(x)|x|+1n12nn2n11<n1p2n1n1pcodifica; quindi almeno una stringa di lunghezza n non può essere rappresentata con un programma 1 p di lunghezza n ; ma può sicuramente essere rappresentato con il programma 0 x di lunghezza n + 1 (non ci preoccupiamo se esiste anche un programma 1 p della stessa lunghezza n + 1 che lo genera).xn1pn0xn+11pn+1

n>1x,|x|=nK(x)=n+1

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.