Macchina di Turing alfabeto infinito


9

Una macchina di Turing a cui è consentito leggere e scrivere simboli da un alfabeto infinito è più potente di una normale TM (questa è l'unica differenza, la macchina ha ancora un numero finito di stati)?

L'intuizione non mi dice, dal momento che hai bisogno di un numero infinito di stati per differenziare ogni simbolo. Quindi penso che alcuni dei simboli o delle transizioni causati dai simboli (o alcuni sottoinsiemi delle transizioni) debbano essere equivalenti. Quindi puoi effettivamente simulare tale macchina con una normale TM e un sottoinsieme limitato di tali simboli o transizioni.

Come potrei affrontare una prova formale di questo?


7
Contemporaneamente crosspost su CSTheory. Per favore, non farlo. Rende la tua domanda più importante di altre. Questo è probabilmente più adatto qui.
Juho,

Risposte:


17

No, sarebbe più potente. La funzione di transizione non sarebbe più limitata e ciò ti procurerà molta energia.

Con un alfabeto infinito, puoi codificare qualsiasi elemento di input da un set infinito in un simbolo (anche se il set di input non può essere "più infinito" rispetto al set di alfabeto, ad esempio l'alfabeto sarebbe presumibilmente solo numerabile infinito, quindi elementi di plural insiemi come i numeri reali non possono essere rappresentati in un simbolo). E allo stesso modo per l'output.

Quindi puoi creare un infinito-alfabeto-TM a due stati (uno iniziale, uno accetta) con una singola transizione che si sposta nello stato di accettazione e cambia il simbolo sotto la testina in base alla funzione che stai cercando di calcolare. Questa ricetta ti consentirebbe di calcolare qualsiasi mappatura tra insiemi che può essere inserita in una corrispondenza uno a uno con l'alfabeto.

Quindi, per evitare che quel tipo di macchina degenerata sia la risposta a tutto, dovresti limitare ciò che la funzione di transizione può fare. Una cosa ovvia sarebbe richiedere che la stessa funzione di transizione sia calcolabile (le normali funzioni di transizione della TM sono banalmente calcolabili, dal momento che sono finite). Ma poi proveresti ad usare le funzioni calcolabili per definire il tuo modello di funzioni calcolabili.


6

La risposta sopra è corretta, ma si può dire qualcosa in più sugli alfabeti infiniti e sulla calcolabilità.

Una macchina di Turing è descritta in WP come in cui tutti gli insiemi sono finiti. Pertanto la funzione di transizione è necessariamente finita.M=(Q,Γ,b,Σ,δ,q0,qf)

δ:Q/F×ΓQ×Γ×{L,R}

In una macchina con alfabeto infinito sostituiremmo l'alfabeto di input con e quindi l'alfabeto con nastro di e la funzione di transizione con obbedendo:ΣΣinfΓinfδinf

δinf:Q/F×ΓinfQ×Γinf×{L,R}

Quindi è necessariamente una funzione infinita. Come osservato se questa funzione non deve essere calcolata, quanto sopra non è rappresentabile in modo definitivo. Supponiamo che manterremo (parziale) ricorsivo se possibile. La domanda è se l'alfabeto lo consentirà sempre.δinfδinf

Il problema di base è che un alfabeto finito è presentato nella sua interezza (quindi possiamo scegliere di definire le nostre funzioni in modo ricorsivo), ma un alfabeto infinito non può mai essere presentato nella sua interezza. Quindi quale meccanismo sta generando l'alfabeto?

Il modo più semplice di considerare questo è di immaginare che ci sia un alfabeto "core" finito, diciamo . Quindi genera una lingua . Si supponga che stringa abaab . Quindi definire . Quindi l'alfabeto infinito è costituito da serie di stringhe da concatenate in un singolo simbolo come .A={a,b}LA Lα=<abaab>∈ΓinfL<abaab>

Il più semplice di tale alfabeto è sostanzialmente <1 *> , la lingua normale in cui si distinguono due simboli contando il numero di tratti verticali in ciascun simbolo. Questo sarà calcolabile con un parser a stati finiti (come un LBA, non come un automa finito). Turing ha sostenuto un alfabeto finito per evitare la comparsa di un'operazione non finita in un'operazione TM. Tuttavia, vale la pena notare che le 26 lettere dell'alfabeto inglese non seguono questo schema di conteggio: la lettera z non contiene 26 tratti o punti o altro. Quindi, altri modelli sono possibili con il modello di calcolo più generale che sulla base di un ricorsivamente enumerabile (ri) lingua .L

Il problema qui è che la costruzione di non sarà possibile a meno che la definizione di sia esplicitamente fornita. Questo in parte perché equivalenza delle schede RE è indecidibile e in parte perché altrimenti sempre e solo un campione finito a lavorare con e non può dedurre da questo. Se abbiamo la definizione di (e quindi ) allora se è ricorsivo in allora è ricorsivo in A finito, e quindi è assolutamente ricorsivo e può essere ricorsivo.δinfLLLΓinffΓinfffδinf

Infine, consideriamo il caso in cui non ha due esempi:L

Esempio 1 . iff chiaramente divergente. In questo caso l'alfabeto avrà ovviamente una descrizione finita - invece "crescerà" nel tempo (e sarà completamente definito solo in qualche limite computazionale). Ma poi è un alfabeto infinito che non può essere presentato in una sola volta in ogni caso. Quindi se è ricorsivo in , allora f è in - l'insieme Halting. Quindi non può essere ricorsivo.<n>∈Γinfϕn(n)ΓinffΓinfΔ20δinf

Esempio 2 . Un esempio più geometrico considera le piastrelle simili a Penrose . Consenti al simbolo se è un'unità di N tessere aperiodiche che possono dimostrare il piano. Questo alfabeto è infinito poiché si può costruire, per qualsiasi N, un'unità N-tile di tessere Penrose. Comunque piastrellare il piano stesso è indecidibile, quindi l'insieme di S crescerà man mano che verranno scoperte più tessere come questa. Una possibile ricorsiva in ma non assolutamente ricorsiva potrebbe essere f (S) = numero di tessere in S.SΓinfSfΓinf

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.