2012-06-22 25 views
6

Ho studiato la teoria di base della macchina da corsa come studente universitario. Non ho mai visto alcuna menzione di un turing maching a tempo. Un esempio: un turing machine che conta il numero di secondi trascorsi da quando è iniziato.Una macchina di turazione ha il concetto di "tempo"?

I computer moderni hanno chiaramente la capacità di farlo. Quindi, la capacità di un computer è un superset di quello che può fare una macchina turing. Ci sono articoli/matematica/documentazione su questo? O il mio argomento è sbagliato ad un certo punto?

risposta

5

La macchina di turing non usa il tempo perché non ne ha bisogno, è un dispositivo puramente computazionale e il calcolo non è la derivazione del tempo, ma il tempo è la derivazione del calcolo. Tuttavia, si tratta di un dispositivo meccanico, quindi a causa di ciò ci vuole del tempo per fare dei passi, quindi la macchina può contare anche questa volta, ma ciò richiederebbe un altro apparecchio di rilevamento per farlo.

ps. È a causa dell'entropia, il tempo è derivato dal calcolo. È possibile ripristinare il computer in tempo reale, - questo è nella direzione opposta di entropia. Ecco perché l'avvio richiede quasi sempre più tempo di quello di spegnimento, soprattutto se si scollega l'alimentazione.

+0

Hmm - questo significherebbe che stai usando due macchine di turing. Ma se puoi farlo con due macchine di turing, dovresti riuscire a farlo solo con uno. –

+0

Beh, ho pensato che avrebbe bisogno di un po 'di riferimento per calcolare questa volta, e per questo può essere una macchina turing che effettua passi al secondo senza condizioni e aggiorna il contatore. L'altra macchina non può eseguire il passo ogni secondo, perché funziona ad es. ogni 1/3s, quindi non può misurare se stesso. Infatti, non dirà nemmeno quando si bloccherà, quindi l'altra macchina misurerebbe il tempo e quando si fermerà. – Andrew

+0

ps. Il problema principale con la macchina di turing è che utilizza il concetto di lunghezza nastro infinita. Il problema è che è solo una teoria. Come si suppone una velocità infinita di luce. In pratica, è solo un modello concettuale incompleto dal punto di vista pratico. Quindi, se il nastro finisse sul 1 °, non sarebbe stampato questa volta, e fallirebbe come con BSOD, e per avere un valore di questo, avresti bisogno di un altro computer. – Andrew

0

si potrebbe desiderare di leggere il informal definition o, se si preferisce, il formal defintion di ciò che una macchina di Turing è su Wikipedia

Casualmente googling ho trovato anche this che sembra essere promettente.

Penso insomma, hai ragione, i computer sono più conveniente di macchine di Turing ma in fondo nessun dispositivo potrà mai risolvere qualcosa che non è risolvibile con una o più macchine di Turing.

+1

... o da un gruppo di macchine di turing. – Andrew

+0

grazie, ho modificato la mia risposta – marktani

1

Ovviamente la macchina di Turing può calcolare il tempo.

Diciamo che la tua macchina di Turing fa un passo ogni secondo.

  1. Scrivi ora corrente sul nastro della macchina di Turing (uguale impostazione volta nel BIOS o scaricandolo da internet)

  2. Modifica la macchina, quindi si aggiunge 1 secont al tempo su nastro in ogni passo (è uguale a elettrica "generatore tick" sulla scheda madre aumenta il numero di BIOS in ogni tick)

Ora si può mettere questa macchina di Turing sulla parete. Vedrai l'ora esatta ogni volta che guardi il suo nastro.

Ma ricorda, la macchina di Turing funziona con un alfabeto. I computer funzionano con l'alfabeto {0,1}. La macchina di Turing (o computer) non sa, se questi zeri e quelli rappresentano lettere, numeri, immagini o video.

+0

Come è noto al tornitore esattamente un secondo è passato? –

+0

Cosa intendi per "sapere"? Ho leggermente modificato il mio commento. Il computer non "sa" nulla. Ha solo qualche "stato" (dati) nella sua memoria (nastro). –

Problemi correlati