Le funzioni non calcolabili diventano asintoticamente più grandi?


13

Ho letto dei numeri di castori occupati e di come crescono asintoticamente più grandi di qualsiasi funzione calcolabile. Perché è così? È a causa della non calcolabilità della funzione di castoro occupato? In tal caso, allora tutte le funzioni non calcolabili diventano asintoticamente più grandi di quelle calcolabili?

Modificare:

Ottime risposte di seguito, ma vorrei spiegare in inglese più semplice cosa ho capito di loro.

Se esisteva una funzione calcolabile f che cresceva più velocemente della funzione di castoro occupato, allora ciò significa che la funzione di castoro occupato è limitata da f. In altre parole, una macchina turing dovrebbe semplicemente correre per f (n) molti passaggi per decidere il problema di arresto. Poiché sappiamo che il problema dell'arresto è indecidibile, il nostro presupposto iniziale è sbagliato. Pertanto, la funzione di castoro occupato cresce più velocemente di tutte le funzioni calcolabili.


Per quanto riguarda la tua parte "inglese semplice", da dove le risposte l'hai capita? Come si passa da una funzione di castoro indaffarato a decidere il problema di arresto in generale? Si noti che decidere di sosta per ogni macchina di Turing è non uncomputable.
Raffaello

@Raphael il suo semplice riassunto in inglese mi sembra corretto, ma non del tutto completo. Il dettaglio mancante è che si può ridurre la decisione se TM ferma su x per decidere se una TM M ′ si ferma sul nastro vuoto (filo rigido x in M ). Quindi se f ( n ) fosse un limite calcolabile su BB, l'algoritmo descritto da OP risolverebbe il problema di arresto su qualsiasi M e x . MxMxMf(n)Mx
Sasho Nikolov,

Risposte:


14

Se si prende qualsiasi set non numerabile di numeri naturali, la funzione caratteristica dell'insieme accetta solo i valori ed è non calcolabile. Quindi non accade che ogni funzione non calcolabile cresca molto rapidamente, possono anche essere limitate.{0,1}

La funzione Busy Beaver cresce più rapidamente di ogni funzione calcolabile perché è costruita per farlo. La prova che è non calcolabile procede dimostrando innanzitutto che cresce più velocemente di qualsiasi funzione calcolabile.

Più in generale, dire che un set ha "grado privo di iperimmune" se ogni funzione calcolabile da A è delimitata da una funzione calcolabile. Certamente ogni set calcolabile ha un grado privo di iperimmune. È noto che ci sono anche molti insiemi non calcolabili che hanno un grado privo di iperimmune. Quindi non è vero che tutto ciò che non è calcolabile dovrà calcolare una funzione in rapida crescita. ANA

Tuttavia, è anche possibile che un reimpostazione non calcolabile non abbia un grado privo di iperimmune . Se è re, ed elencato dall'indice e , la funzione f tale che f ( n ) = k se e enumera n in k passi, e f ( n ) = 0 se e non enumera n , è calcolabile da B ma questo La funzione è limitata da una funzione calcolabile se e solo se B è calcolabile.Beff(n)=kenkf(n)=0enBB


4

Se una funzione cresce più veloce (o più lento) di qualsiasi funzione in un insieme F di funzioni, che è f w ( g ) (o o ( g ) ) per tutte le funzioni g F , allora chiaramente f F . Questo è ciò che viene utilizzato per mostrare che la funzione di beaver occupato non è calcolabile. Un altro esempio è la prova che la funzione - calcolabile e totale - di Ackermann non è ricorsiva primitiva.fFfω(g)o(g)gFfF

Il contrario non regge necessariamente. La funzione del problema Halting accetta valori in quindi è in O ( 1 ) ¹; chiaramente ci sono funzioni calcolabili che crescono sempre più velocemente.{0,1}O(1)

Esistono certamente serie di funzioni per le quali il runtime è sia un criterio di appartenenza necessario sia sufficiente, vale a dire quelle che sono caratterizzate dal runtime, come

.Poly={f:NNk.fO(nk)}


  1. Questo ha solo una quantità limitata di senso. Il parametro della funzione HP è una codifica della macchina di Turing e un numero naturale; le sue dimensioni non misurano quanto sia complicato decidere di fermarsi.
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.