Teloni Turing reversibili?


10

Questa domanda è se ci sono tarp reversibili noti di Turing, dove "reversibile" significa nel senso di Axelsen e Glück , e "tarpit" è un concetto molto più informale (e potrebbe non essere un'ottima scelta di parole), ma farò del mio meglio per spiegare cosa intendo con questo.

Cosa intendo per "tarpit"

Alcuni modelli di calcolo sono progettati per essere utili in qualche modo. Altri sembrano essere Turing completi e non hanno proprietà particolarmente utili; questi sono noti come "Taring di Turing". Gli esempi includono il linguaggio Brainfuck , l' automa cellulare Rule 110 e il tag Bitwise Cyclic Tag (che mi piace perché è molto facile da implementare e qualsiasi stringa binaria è un programma valido).

Non esiste una definizione formale di "Tarpit di Turing", ma per questa domanda lo sto usando per indicare un sistema abbastanza semplice (in termini di avere un piccolo numero di "regole") che "capita" di essere Turing completo, senza il suo stato interno ha un evidente significato semantico. L'aspetto più importante per i miei scopi è la semplicità delle regole, piuttosto che la mancanza di una semantica ovvia. Fondamentalmente stiamo parlando del genere di cose di cui Stephen Wolfram ha scritto una volta un libro molto grande , anche se non ha usato la parola "tarpit".

Cosa intendo per "reversibile"

Sono interessato al calcolo reversibile. In particolare, sono interessato alle lingue complete di r-Turing, nel senso di Axelsen e Glück , il che significa che possono calcolare tutte le funzioni iniettive calcolabili e possono solo calcolare le funzioni iniettive. Ora, ci sono molti modelli di calcolo reversibili in questo senso, come la macchina di Turing universale reversibile di Axelsen o il linguaggio reversibile di alto livello Janus . (Ci sono molti altri esempi in letteratura; è un'area attiva di ricerca.)

Va notato che la definizione di completezza di r-Turing di Axelsen e Glück è un approccio diverso al calcolo reversibile rispetto al solito approccio dovuto a Bennett. Nell'approccio di Bennett un sistema è autorizzato a produrre "dati inutili" che vengono gettati via alla fine del calcolo; in tali condizioni un sistema reversibile può essere Turing completo. Tuttavia, nell'approccio di Axelsen e Glück, al sistema non è consentito produrre tali "dati spazzatura", il che limita la classe di problemi che può calcolare. (Quindi, "r-Turing completo" anziché "Turing completo".)

Nota: la carta Axelsen e Glück è dietro un paywall. Questo è un peccato - per quanto ne sappia, al momento non esiste alcuna risorsa non paywall sull'argomento della completezza di r-Turing. Cercherò di avviare una pagina di Wikipedia se ho tempo, ma nessuna promessa.

Quello che sto cercando

Gli esempi di elaborazione reversibile sopra menzionati sono tutti piuttosto "semanticamente carichi". Questa è una buona cosa nella maggior parte dei contesti, ma significa che le regole necessarie per aggiornare il loro stato in ogni fase sono abbastanza complesse. Sto cercando i "tarpits" dell'informatica reversibile. Cioè, sistemi arbitrari più o meno con regole abbastanza semplici che "capita" di essere lingue complete di r-Turing. Ribadisco che non esiste una definizione formale di ciò che sto cercando, ma lo saprò quando lo vedrò e penso che sia ragionevole chiederlo.

Ci sono un certo numero di cose che conosco che si adattano perfettamente al conto, ma non del tutto. Esistono diversi automi cellulari reversibili che hanno dimostrato di essere Turing completi. Anche la formica di Langton (una specie di macchina di Turing bidimensionale con una funzione di transizione di stato reversibile abbastanza arbitraria e abbastanza semplice) è completa, purché le sue condizioni iniziali possano contenere infiniti schemi ripetitivi. Tuttavia, con questi sistemi non è banale definire una mappatura dal loro stato a un "output" in modo tale che nessun dato indesiderato venga eliminato. Sono interessato in particolare ai sistemi che possono essere considerati come prendere un input, eseguire una sequenza di trasformazioni (reversibili) su di esso e quindi (se terminano) restituire un output.

(Spero che a questa domanda sarà più facile rispondere rispetto alla mia precedente correlata su un equivalente reversibile al calcolo lambda.)


2
Non ho idea di come taggare questa domanda. Sarebbe bello se ci fosse un tag di calcolo reversibile, ma non ho il rappresentante per crearne uno.
Nathaniel,

1
x(x,f(x))f

1
c'è forse una domanda decente che lotta per liberarsi qui. la frase della domanda che dichiari nell'ultimo commento non appare da nessuna parte nella domanda pubblicata . la domanda può essere risolta solo tramite un tentativo di defn di "turing tarpit" non nei commenti ma nel post ... (puoi collegarti a un defn di "r-Turing complete" da qualche parte? idealmente wikipedia?)
vzn

1
Sono d'accordo con vzn che è un po 'difficile ottenere il nocciolo della tua domanda dal tuo post. Sembra essere la frase "Sto cercando i 'tarpits' dell'informatica reversibile", ma non è molto chiaro; un po 'di formattazione (anche solo in grassetto questa frase) probabilmente aiuterebbe!
usul

1
@vzn onestamente, ti esorto a leggere correttamente la domanda prima di continuare a criticarla. L'argomento degli automi cellulari è già stato discusso nel testo.
Nathaniel,

Risposte:


-1

"r-complete" sembra essere un concetto relativamente nuovo inventato da Axelsen e Glück ~ 2011, forse non molto considerato da altri autori, e mi chiedo se ci sia una prova che è diversa da Turing completa.

sto prendendo questa domanda prolissa e tortuosa da porre sostanzialmente:

  • un semplice sistema completo Turing
  • reversibile

prova gli automi cellulari reversibili completi di Turing, ad esempio:

  • Automi cellulari universali a due stati, reversibili, in tre dimensioni Miller / Fredkin

    Viene descritto un romanzo Automi cellulare reversibile a due stati (RCA). Questo RCA tridimensionale è dimostrato di essere in grado di computazione universale. Inoltre, viene fornita la prova che questo RCA è capace di costruzione universale.

  • K. Imai e K. Morita, Un automa cellulare reversibile triangolare a 8 stati computazionale universale a 8 stati, Theoretical Computer Science 231 (2000), n. 2, 181–191.

    Riassunto: Un automa cellulare reversibile (RCA) è un automa cellulare (CA) la cui funzione globale è iniettiva e ogni configurazione ha al massimo un predecessore. Margolus ha dimostrato che esiste un RCA bidimensionale universale computazionale. Ma il suo RCA ha un vicino non uniforme, quindi Morita e Ueno hanno proposto un RCA universale di calcolo a 16 stati usando automi cellulari partizionati (PCA). Poiché PCA può essere considerato come una sottoclasse di CA standard, i loro modelli hanno un vicino standard. In questo documento, mostriamo che il numero di stati dei modelli Morita e Ueno può essere ridotto. Per ridurre il numero di stati dai loro modelli con proprietà isotropiche e bit-preservanti, abbiamo usato un triangolare a 3 vicini, e quindi un RCA a 8 stati può essere possibile. Questo è il più piccolo RCA bidimensionale allo stato sotto la condizione della proprietà isotropica nel quadro del PCA. Mostriamo che il nostro modello può simulare elementi circuitali di base come cavi di unità, elementi di ritardo, cavi di attraversamento, porte di commutazione e porte di commutazione inverse ed è possibile costruire una porta Fredkin combinando questi elementi. Poiché la porta di Fredkin è nota per essere una porta logica universale, il nostro modello ha un universalità di calcolo.

è stato trovato come riferimento in questo sondaggio di CA che potrebbe avere altri utili indizi sull'inchiesta (ad es. vedi paragrafo 7, Reversibilità e Universalità). (a 17 pg e 86 riferimenti il ​​titolo è quasi ironico.)

UNIVERSALITÀ NELL'INDAGINE CELLULARE AUTOMATA A (BREVE) Ollinger


1
Sono a conoscenza del lavoro sulle CA reversibili risalenti agli anni '70, ma, dalla domanda: "Esistono diversi automi cellulari reversibili che hanno dimostrato di essere Turing completi ... Tuttavia, con questi sistemi non è banale definire un mappando dal loro stato a un "output" in modo tale che nessun dato indesiderato venga eliminato. Sono interessato in particolare ai sistemi che possono essere considerati come prendere un input, eseguire una sequenza di trasformazioni (reversibili) su di esso, e quindi (se terminano) restituendo un output ".
Nathaniel,
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.