Simulazione universale delle macchine di Turing


16

Sia f una funzione fissa costruibile nel tempo.

Il classico risultato di simulazione universale per TM (Hennie e Stearns, 1966) afferma che esiste una TM a due nastri tale cheU

  • la descrizione di una TM eM
  • una stringa di input ,x

corre per passi e restituisce la risposta di su . E può essere considerato qualsiasi funzione in .g(|x|)Mxgω(f(n)lgf(n))

Le mie domande sono:

  1. Qual è il risultato di simulazione più noto su un singolo nastro TM? Anche il risultato sopra è ancora valido?

  2. C'è qualche miglioramento su [HS66]? È possibile simulare le TM su una TM a due nastri per i passaggi in modo più rapido? Possiamo prendere g ( n ) per essere in ω ( f ( n ) ) al posto di ω ( f ( n ) lg f ( n ) ) ?f(n)g(n)ω(f(n))ω(f(n)lgf(n))


Il numero di nastri dovrebbe essere uguale o limitato in qualche modo?
Raffaello

E più nastri possono essere simulati in un tempo quadratico su un nastro, quindi se questo tipo di simulazione è corretta, perché ti aspetti una differenza? O il tempo di simulazione lineare è giusto per altri motivi?
Raffaello

"Sto chiedendo se la simulazione può essere eseguita con un overhead lineare" - Non riesco ad associarlo alla domanda. Intendevi ? o(f(n))
Raffaello

1
@Raphael, ho ricontrollato e aggiornato la domanda. La è corretta, nota che g è una arbitraria funzione ω ( f ( n ) ) . (nel teorema abbiamo bisogno che qualcosa cresca più velocemente di f ( n ) lg f ( n ) perché l'alfabeto e il numero di stati della macchina simulata non sono fissi, quindi c'è una costante che dipende dalla macchina. ω è usato a causa di loro.)ωgω(f(n))f(n)lgf(n)ω
Kaveh,

Risposte:


7

Qual è il risultato di simulazione più noto su un singolo nastro TM? Anche il risultato sopra è ancora valido?

Possiamo simulare una TM a più nastri su una TM a nastro singolo con aumento quadratico del tempo. Il tempo di simulazione è . L'aumento quadratico è necessario poiché esistono lingue (ad es. Palindromi) che richiedono tempo Ω ( n 2 ) su un DTM a nastro singolo ma possono essere risolti nel tempo O ( n ) su un DTM a due nastri.O(n2)Ω(n2)O(n)

In breve, il risultato sopra riportato non funziona quando il simulatore è una TM a nastro singolo.

Per la simulazione di TM a nastro singolo su una TM a nastro singolo (con alfabeto finito arbitrario), il risultato vale, vale a dire che la simulazione può essere eseguita con un aumento del fattore nel tempo. Vedi (2) e (3). Il riferimento sembra essere (6).lg

C'è qualche miglioramento su [HS66]? È possibile simulare le TM su una TM a due nastri per i passaggi in modo più rapido? Possiamo prendere g ( n ) per essere in ω ( f ( n ) ) al posto di ω ( f ( n ) lg f ( n ) ) ?f(n)g(n)ω(f(n))ω(f(n)lgf(n))

Sembra che non ci sia stato alcun miglioramento poiché ciò implicherebbe un teorema della gerarchia temporale migliore di quello attualmente noto.

Correzione: i soliti teoremi della gerarchia si basano su classi di complessità temporale definite usando TM a nastro singolo. Per -tape TM un risultato stretto simile al teorema della gerarchia spaziale è dimostrato da Furer nel 1982 (5). Il fattore lg non è necessario. Vedi anche (4).nlg

Riferimenti:

  1. Peter van Emde Boas, "Modelli di macchine e simulazione", nel Manuale di informatica teorica, 1990
    (in particolare, pagg. 18-21)

  2. Michael Sipser, "Introduzione alla teoria della computazione", 2006
    (le classi di complessità temporale sono definite usando TM con infinito a nastro singolo in entrambe le direzioni e alfabeto arbitrario finito, vedere pagine 140 e 341)

  3. Odifreddi, "Teoria della ricorsione classica", vol. I & II, 1989 e 1999
    (le definizioni sono simili a Sipser, vedi Def. I.4.1 in vol. I pagina 48, Def. VII.4.1 in vol. II pagina 67 e Thm. VII.4.15 in vol. II pagina 83)

  4. Piergiorgio Odifreddi, "Teoria della ricorsione classica", vol. II, 1999
    (pagina 84)

  5. Martin Fürer, " La stretta gerarchia temporale deterministica ", 1982

  6. Juris Hartmanis, " Complessità computazionale dei calcoli della macchina di Turing a nastro singolo ", 1968

  7. FC Hennie e RE Stearns, " Simulazione a due nastri di macchine multitape Turing ", 1966

  8. Altre domande correlate:

    1. Limiti inferiori e separazione delle classi ,
    2. Giustificazione di nel teorema della gerarchia DTIMElgf ,
    3. Alfabeto della macchina di Turing a nastro singolo ,
    4. Per il teorema della gerarchia temporale, come viene tradotto in modo efficiente l'input? ,
    5. un commento di Luca Trevisan.

Tuttavia ci sono alcune cose che non sono ancora del tutto chiare per me, in particolare circa la 8.3 e la simulazione a nastro singolo di macchine a nastro singolo, aggiornerò la risposta se necessario.
Kaveh,

n2t(n)t(n)
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.