C'è un nome per "cose ​​fisiche con le quali si può costruire una macchina di Turing"?


16

Una delle cose straordinarie dell'informatica è che l'implementazione fisica è in un certo senso "irrilevante". Le persone hanno costruito con successo computer da diversi substrati diversi: relè, tubi a vuoto, transistor discreti, ecc. Le persone potrebbero presto riuscire a costruire computer completi di Turing con materiali ottici non lineari, varie biomolecole e alcuni altri substrati. In linea di principio, sembra possibile costruire un computer da biliardo .

Tuttavia, il substrato fisico non è completamente irrilevante. Le persone hanno scoperto che alcuni insiemi di componenti - in particolare la logica di resistenza a diodo - sono "incompleti": non importa quanti di essi si collegano a un alimentatore e tra loro, ci sono alcune cose molto semplici che non possono fare. (La logica di resistenza diodo può implementare AND, OR, ma non riesce a implementare NOT). Inoltre, alcuni modi di collegare i componenti - in particolare i percetron a strato singolo - sono "incompleti": ci sono alcune cose molto semplici che non possono fare. (Un percettrone a strato singolo può implementare AND, OR, NOT, ma non implementa XOR).

Esiste una frase meno imbarazzante per "cose ​​fisiche con le quali si può costruire una macchina di Turing"? O al contrario, "le cose fisiche che, indipendentemente da quante ne abbiano, non possono formare una macchina di Turing"?

Per un po 'ho usato la frase "set funzionalmente completo" o "set universale di porte" - o, quando parliamo con i matematici, "cose ​​fisiche che possono implementare un set funzionalmente completo" - ma mi è stato detto che non è' è del tutto corretto. Alcuni set di componenti possono implementare un set funzionalmente completo; eppure non è possibile costruire una macchina completa di Turing con questi componenti. Ad esempio, lampadine e interruttori della luce a 4 vie azionati manualmente possono implementare un set funzionalmente completo (AND, OR, NOT, XOR, ecc.); e tuttavia non è possibile costruire una macchina completa di Turing completamente senza interruttori e lampadine, poiché l'uscita (elettrica o ottica) di una non può essere immessa nell'ingresso (a rotazione meccanica) della successiva.

correlati: esiste un nome ufficiale per una nozione di "riutilizzabile universale"? e C'è un nome per "chip da cui si può costruire una CPU"?


1
Questa non è una risposta ma non posso pubblicare commenti e ho sentito il bisogno di dare il link a questo incredibile fumetto di xkcd: [A Bunch of Rocks] [1] che è legato a questa domanda :). [1]: xkcd.com/505
Zenon,

Risposte:


3

Credo che un termine appropriato sia "un'implementazione fisica di Turing Machine".

PNP, quindi sarebbe improbabile che un informatico li risolva.

Puoi leggere di più nel documento NP-complete problemi e realtà fisica di Scott Aaronson , in particolare nella sezione Informatica analogica e di relatività.

È inoltre possibile trovare un'implementazione lego (con nastro finito) nella seguente pagina: http://legoofdoom.blogspot.com/


+1 per i Lego - whee! Speravo di trovare una frase un po 'più semplice da pronunciare rispetto a "Un'implementazione fisica di una macchina di Turing può essere composta da questo insieme di parti" - ma questo è ancora molto meglio delle alternative che ho visto finora.
David Cary,

4

La fisica modella la realtà con teorie che definiscono un concetto di stato dipendente dal tempo associato a un sistema e un operatore di evoluzione temporale che descrive come si evolve questo stato. Non appena trovi un sistema fisico che (dopo una certa discretizzazione dello spazio degli stati) implementa lo spazio degli stati della tua macchina Turing, e che presenta termini di interazione che implementano (forse dopo qualche discretizzazione del tempo) l'evoluzione del tempo secondo la tabella di transizione degli stati di la tua macchina Turing nel suo spazio di stato, hai trovato un modello fisico completo di Turing del tuo sistema. Quindi puoi dire, il tuo sistema "è" Turing-complete.

Osservando il calcolo quantistico, troverai discussioni sulle implicazioni delle teorie fisiche sul modello di calcolo di Turing. Ad esempio, le teorie fisiche devono essere reversibili. Una proprietà che non è condivisa dalle normali macchine Turing. Tuttavia non vi è alcuna perdita in generale, poiché qualsiasi macchina di Turing può essere simulata da una macchina reversibile, con un certo sovraccarico che può compensare il tempo rispetto allo spazio, ecc.


Questo testo è ricco di concetti e terminologia interessanti. Purtroppo, qui non vedo alcuna frase che posso usare come "Questo è un <phrase> set di componenti, mentre quelli sono un <not-phrase> set di componenti".
David Cary,

3

Ho solo pensato di sottolineare che la completezza di un supporto fisico per simulare la logica richiesta per realizzare una macchina di elaborazione completa di Turing può essere stabilita esclusivamente nella sua capacità di incarnare una porta NAND, poiché tutte le altre porte possono essere derivate da porte NAND (una potrebbe chiedere che cosa comprende quindi le porte NAND, e questa è una domanda molto intelligente, ma sono le porte NAND fino in fondo!).

Dovresti guardare il lavoro di Charles Babbage e le persone che ha ispirato. Babbage creò un computer fisico per tabulare le funzioni polinomiali in tabelle stampate per gli indici matematici (nel passato avresti avuto pile di libri che non avevano altro che nomi di funzioni seguiti da fogli di valori f (x)). sono diventati un computer completo di Turing che utilizza camme di ingranaggi e simili. Suo figlio credo che sia stato continuato il suo lavoro e l'unica manifestazione fisica dei loro sforzi combinati è stata una ALU meccanica perfettamente funzionante che è la base di quei calcolatori meccanici che potresti conoscere o meno. Tuttavia, i finanziamenti per questi progetti sono diminuiti come un computer meccanico nelle dimensioni e nei modi in cui potevano essere realizzati in quel momento era molto impraticabile. Tuttavia da allora, e soprattutto negli eventi recenti, la gente ha attraversato e sta promuovendo la ricerca di Charles Babbage. Questo approccio potrebbe avere la sua ultima risata, poiché ci sono quelli che pensano che l'unico modo per rendere le CPU seriali più veloci di quanto non siano ora sarebbe quello di implementare alcuni di questi approcci meccanici all'interno di una CPU evitando i problemi derivanti dall'elettromagnetismo su una scala inferiore a quello che usiamo ora. La meccanica sembra funzionare su qualsiasi scala.

Allo stesso modo, il lavoro è andato in quello che viene chiamato il computer quantistico che cerca di facilitare calcoli di grandi dimensioni attraverso la teoria quantistica, non sono del tutto sicuro di come tutto funzioni. Ma fa appello fisicamente agli esperimenti di fisica delle particelle che si basano sulla teoria quantistica.

Ci sono sicuramente molti più diversi mezzi di calcolo in fase di esplorazione, anche rocce nel deserto, ma di loro non ho esperienza.


Le lampadine e gli interruttori della luce possono implementare NAND. Esiste una configurazione di 2 normali interruttori della luce e una lampadina di uscita (e una seconda lampadina nascosta) in cui la lampadina di uscita rimane LUMINOSA tranne quando un essere umano accende entrambi gli interruttori su ON, quindi la lampadina di uscita diventa SCURO. Purtroppo, a quanto pare (?) Non è possibile costruire una macchina completa di Turing interamente con interruttori e lampadine. C'è un termine che posso usare che include la NAND 74HC132 ma esclude la NAND di interruttori e lampadine?
David Cary,

Bene, il problema è che l'ingresso è meccanico e l'uscita è elettrica, quindi gli interruttori sono come una conversione nand gate tra due domini (cinetica all'elettronica). Supponendo che funzioni esattamente come un nandgate che POTREBBE ricavarne da un computer completo Turing, è solo che dovresti facilitare la conversione tra questi due supporti per fare in modo che l'output da un gate venga immesso in un altro, possibilmente un interruttore motorizzato, ma sì poco pratico. Un termine che potresti usare che tratterò ora è nandgate dello stesso medium, che stabilisce che input e output siano sullo stesso medium.
acp10bda

+1 buona idea - basta inventare un termine e definirlo esattamente come il termine che sto cercando. Il set {(una scatola con 2 interruttori delle luci in ingresso e un lighbulb in uscita che implementa AND), (un flipper motorizzato attivato dalla luce che implementa NOT)} è un set a cascata universale d. Ma l'insieme {lampadine, interruttori della luce} da solo non è un insieme a cascata d-universale.
David Cary,

È possibile costruire una macchina di Turing a partire da cose che non sono nandgates dello stesso mezzo?
David Cary,

Ci scusiamo per il ritardo di questa risposta, ma sì. Una macchina Turing può essere realizzata da qualsiasi assemblaggio di componenti utilizzando qualsiasi varietà di mezzi di input e output purché i componenti siano disposti in modo tale che il risultato sia un meccanismo completo di Turing. Tuttavia, dato che il mezzo di calcolo diventerebbe una variante così selvaggiamente e potenzialmente molto interessante da guardare al lavoro, mi piacerebbe fare riferimento a un tale meccanismo come un meccanismo completo Rube-Goldberg-Turing. :)
acp10bda,
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.