Applicabilità della tesi di Church-Turing a modelli interattivi di calcolo


38

Paul Wegner e Dina Goldin pubblicano da oltre un decennio articoli e libri sostenendo principalmente che la tesi di Church-Turing è spesso travisata nella comunità della Teoria CS e altrove. Cioè, viene presentato come comprendente tutto il calcolo quando in realtà si applica solo al calcolo delle funzioni, che è un sottoinsieme molto piccolo di tutto il calcolo. Invece suggeriscono che dovremmo cercare di modellare il calcolo interattivo, in cui la comunicazione con il mondo esterno avviene durante il calcolo.

L'unica critica che ho visto di questo lavoro è nel forum Lambda the Ultimate , dove qualcuno ha lamentato questi autori per aver pubblicato continuamente ciò che è ovviamente noto. La mia domanda allora è: c'è ancora più critica in questa linea di pensiero, e in particolare nelle loro Persistent Turing Machines. E se no, perché allora è apparentemente studiato molto poco (potrei sbagliarmi). Infine, come si traduce la nozione di universalità in un dominio interattivo.


ps: potresti anche dare un'occhiata a questa domanda sull'ipercomputazione.
Kaveh,

6
Ecco un'altra domanda simile .
Dave Clarke,

7
Penso che Andrej e Neel abbiano spiegato qui che la risposta è negativa per i problemi di calcolo delle funzioni di tipo superiore. Quindi, essenzialmente, la tesi di Church-Turing riguarda problemi di calcolo delle funzioni numeriche . Le solite equivalenze tra i modelli di calcolo non valgono per i tipi superiori. (Tuttavia, a quanto ho capito, si tratta più dei meccanismi di interazione e di come sono rappresentati oggetti di tipo superiore che della potenza computazionale dei modelli.) (Ripubblicando per correggere alcuni errori di battitura)
Kaveh

7
Sono d'accordo con Kaveh.
Andrej Bauer,

attualmente il 1 ° documento di questo tipo sembra risalire al 1996-1997, "Perché l'interazione è più importante degli algoritmi" o "Il cambio di paradigma dagli algoritmi all'interazione". più avanti nel documento si fa riferimento alla grotta di Platos, "il tarpit di Turing" (?), la critica di Kants della ragion pura, la logica dialettica di Marx, Cartesio, Penrose, Searle. quindi forse dovrebbe essere visto al confine con il filosofico e non tanto sulla scia della tecnica / matematica TCS. niente matematica, niente lemmi o prove o thms. anche se forse un po 'grandioso, cerca seriamente di capire "il quadro generale" della storia della tesi sulla tesi CT, ecc ...
vzn

Risposte:


75

Ecco la mia analogia preferita. Supponiamo che abbia trascorso un decennio a pubblicare libri e articoli sostenendo che, contrariamente al dogma teorico dell'informatica, la tesi Church-Turing non riesce a catturare tutto il calcolo, perché le macchine di Turing non possono tostare il pane . Pertanto, è necessario il mio nuovo modello rivoluzionario , la Toaster-Enhanced Turing Machine (TETM), che consente il pane come input possibile e include la tostatura come operazione primitiva.

Potresti dire: certo, ho un "punto", ma è del tutto poco interessante. Nessuno ha mai sostenuto che una macchina Turing potesse gestire ogni possibile interazione con il mondo esterno, senza prima collegarlo a periferiche adatte. Se vuoi che un TM tosti il ​​pane, devi collegarlo a un tostapane; allora il TM può facilmente gestire la logica interna del tostapane (a meno che questo particolare tostapane non richieda la risoluzione del problema di arresto o qualcosa del genere per determinare quanto deve essere marrone il pane!). Allo stesso modo, se si desidera che una TM gestisca la comunicazione interattiva, è necessario collegarla a dispositivi di comunicazione adeguati, come Neel ha discusso nella sua risposta. In nessun caso stiamo dicendo qualcosa che non sarebbe stato ovvio per lo stesso Turing.

Quindi, direi che il motivo per cui non vi è stato un "seguito" delle diatribi di Wegner e Goldin è che TCS ha saputo modellare l'interattività ogni volta che è necessario, e lo ha fatto felicemente, fin dall'inizio del campo.

Aggiornamento (30/08): un punto correlato è il seguente. Dà mai ai critici una pausa che, all'interno della Elite Church-Turing Ivory Tower (ECTIT), i principali temi di ricerca degli ultimi due decenni hanno incluso prove interattive, protocolli crittografici multipartitici, codici per la comunicazione interattiva, protocolli asincroni per il routing , consenso, diffusione di voci, elezioni dei leader, ecc. e il prezzo dell'anarchia nelle reti economiche? Se mettere la nozione di computazione di Turing al centro del campo rende così difficile discutere di interazione, come mai così pochi di noi hanno notato?

Un altro aggiornamento: per le persone che continuano a battere il tamburo sul fatto che i formalismi di livello superiore siano enormemente più intuitivi delle TM e che nessuno pensi in termini di TM come una questione pratica, lasciami fare una domanda estremamente semplice. Cos'è che consente a tutti quei linguaggi di alto livello di esistere in primo luogo, che garantisce che possano sempre essere compilati in codice macchina? Potrebbe essere ... err ... LA TESI DI TRASFORMAZIONE DELLA CHIESA , la stessa su cui hai avuto problemi? Per chiarire, la tesi Church-Turing non è l'affermazione che "TURING MACHINEZ RULE !!" Piuttosto, è l'affermazione che qualsiasi linguaggio di programmazione ragionevole sarà equivalente in potenza espressiva alle macchine Turing - e di conseguenza, che potresti anche pensare in termini di lingue di livello superiore se è più conveniente farlo. Questa, naturalmente, fu una nuova intuizione radicale 60-75 anni fa.

Aggiornamento finale: ho creato un post sul blog per ulteriori discussioni su questa risposta.


8
Esiste una differenza sostanziale tra i tostapane e l'interazione: ogni modello di calcolo ha un meccanismo di I / O. I tostapane si presentano solo raramente. Alcuni modelli di modello di calcolo IO ingenui: ad esempio le macchine di Turing gestiscono IO solo in modo informale. Ciò non è problematico quando il calcolo è considerato funzionale, vale a dire iniziare con un input e terminare con un output, come avviene con le macchine di Turing. Tuttavia, questo ingenuamente diventa oneroso quando si desidera affrontare autentici fenomeni simultanei, ad esempio quando due calcoli interattivi sono uguali? (Continua sotto.)
Martin Berger,

12
Nel caso in cui i miei punti di vista non siano ancora abbastanza chiari, dovrei aggiungere che trovo che tutta la letteratura sul "mito della tesi di Church-Turing" non sia semplicemente hectoring, ma (più precisamente) deprimentemente sterile di idee. La lettura porta tutta la gioia di leggere qualcuno che afferma di confutare la fisica newtoniana, non a causa di qualcosa di interessante come la meccanica quantistica o la relatività, ma perché "le leggi di Newton ignorano l'attrito" . O ascoltando un bambino spiegare perché tecnicamente ha vinto un gioco da tavolo perché ha spostato i pezzi mentre sei partito per andare in bagno.
Scott Aaronson,

7
Penso che la citazione di Lance Fortnow estratta di seguito nella risposta di vzn (articolo originale qui: ubiquity.acm.org/article.cfm?id=1921573 ) dimostra che almeno alcune persone sane sostengono la tesi "Forte". Fortnow afferma che la tesi CT può essere "semplicemente dichiarata" come "tutto calcolabile è calcolabile da una macchina di Turing", scrivendo "tutto" dove avrebbe dovuto davvero scrivere "ogni ". f:NN
Noam Zeilberger,

10
come possiamo discutere su una cosiddetta tesi che prende il nome sia da Turing che da Church, nessuno dei quali in realtà ha affermato nella propria scrittura la tesi così come è stata successivamente interpretata ed evoluta? - Vedi anche: formula di Eulero, eliminazione gaussiana, algoritmo di Euclide, teorema di Pitagora.
Jeffε

14
venti commenti! scott ha trasformato con successo una risposta cstheory a un blog Shtetl Optimized ...
Sasho Nikolov

35

Penso che il problema sia abbastanza semplice.

  1. Tutti i formalismi interattivi possono essere simulati dalle macchine di Turing.

  2. Le TM sono linguaggi scomodi per la ricerca sul calcolo interattivo (nella maggior parte dei casi) perché i problemi interessanti vengono soffocati dal rumore delle codifiche.

  3. Tutti coloro che lavorano sulla matematizzazione dell'interazione lo sanno.

Lascia che lo spieghi più in dettaglio.

Le macchine di Turing possono ovviamente modellare tutti i modelli interattivi di calcolo esistenti nel seguente senso: Scegli una codifica della sintassi rilevante come stringhe binarie, scrivi una TM che accetta come input due programmi interattivi codificati P, Q (in un modello di calcolo interattivo scelto) e ritorna vero esattamente quando c'è una riduzione di un passo da P a Q nel relativo sistema di riscrittura (se il tuo calcolo ha una relazione di transizione ternaria, procedi mutatis mutandis). Quindi hai una TM che esegue una simulazione passo-passo del calcolo nel calcolo interattivo. Chiaramente pi-calcolo, calcolo ambientale, CCS, CSP, reti di Petri, pi-calcolo cronometrato e qualsiasi altro modello interattivo di calcolo che è stato studiato può essere espresso in questo senso. Questo è ciò che le persone intendono quando affermano che l'interazione non va oltre le TM.

N. Krishnaswami fa riferimento a un secondo approccio alla modellizzazione dell'interattività usando nastri dell'oracolo. Questo approccio è diverso dall'interpretazione della relazione di riduzione / transizione sopra, perché la nozione di TM è cambiata: passiamo da TM semplici a TM con nastri oracolari. Questo approccio è popolare nella teoria della complessità e nella crittografia, soprattutto perché consente ai ricercatori in questi campi di trasferire i loro strumenti e risultati dal mondo sequenziale a quello simultaneo.

Il problema con entrambi gli approcci è che i problemi teorici della concorrenza reale sono oscurati. La teoria della concorrenza cerca di comprendere l'interazione come un fenomeno sui generis. Entrambi gli approcci tramite TM sostituiscono semplicemente un formalismo conveniente per esprimere un linguaggio di programmazione interattivo con un formalismo meno conveniente.

In nessuno dei due approcci i problemi teorici della concorrenza reale, ovvero la comunicazione e la sua infrastruttura di supporto hanno una rappresentazione diretta. Sono lì, visibili all'occhio allenato, ma codificati, nascosti nella nebbia impenetrabile della complessità codificante. Quindi entrambi gli approcci sono pessimi nella matematica delle principali preoccupazioni del calcolo interattivo. Prendiamo ad esempio quale potrebbe essere la migliore idea nella teoria dei linguaggi di programmazione nell'ultimo mezzo secolo, l'assiomatizzazione dell'estrusione dell'ambito da parte di Milner et al (che è un passo chiave in una teoria generale della composizionalità):

P|(νX)Q  (νX)(P|Q)fornito Xfv(P)

Com'è meravigliosamente semplice questa idea quando espressa in un linguaggio linguistico su misura come il pi-calculus. Fare questo usando la codifica di pi-calculus in TM probabilmente riempirebbe 20 pagine.

In altre parole, l'invenzione di formalismi espliciti per l'interazione ha dato il seguente contributo all'informatica: l'assiomatizzazione diretta delle primitive chiave per la comunicazione (es. Operatori di input e output) e i meccanismi di supporto (es. Nuova generazione di nomi, composizione parallela ecc.) . Questa assiomatizzazione è diventata una vera e propria tradizione di ricerca con proprie conferenze, scuole, terminologia.

Una situazione simile si ottiene in matematica: la maggior parte dei concetti potrebbe essere scritta usando il linguaggio della teoria degli insiemi (o teoria dei topos), ma preferiamo principalmente concetti di livello superiore come gruppi, anelli, spazi topologici e così via.


1
+1 per spiegare i sistemi di calcolo interattivo power wrt del modello TM (può simularli).
Kaveh,

3
Se solo potessi votare questo più volte.
Vijay D,

26

NN

Tuttavia, è ancora vero che le macchine di Turing sono abbastanza dolorose per la modellazione di proprietà come l'interattività. Il motivo è un po 'sottile e ha a che fare con il tipo di domande che vogliamo porre sui calcoli interattivi.

Il solito primo passaggio all'interazione di modellazione con TM è con i nastri oracle. Intuitivamente, puoi pensare alla stringa stampata sul nastro dell'oracolo come una "previsione" dell'interazione I / O della macchina di Turing con l'ambiente. Tuttavia, considera il tipo di domande che vogliamo porre sui programmi interattivi: ad esempio, potremmo voler sapere che un programma per computer non produrrà i tuoi dati finanziari a meno che non riceva il tuo nome utente e la password come input, e inoltre che i programmi non perdano informazioni sulle password. Parlare di questo tipo di vincolo è molto doloroso con le stringhe dell'oracolo, poiché riflette un vincolo epistemico temporale sulla traccia dell'interazione e la definizione di nastri dell'oracolo ti chiede di fornire l'intera stringa in anticipo.

Ho il sospetto che questo sia fattibile, e sostanzialmente equivale a (1) considerare le stringhe dell'oracolo non come un insieme, ma come uno spazio topologico i cui insiemi aperti codificano la logica modale del tempo e della conoscenza che si desidera modellare e (2) garantire che i teoremi che dimostrate sono tutti continui rispetto a questa topologia, vedendo i predicati come funzioni continue dalle stringhe dell'oracolo ai valori di verità visti come lo spazio di Sierpinski. Dovrei sottolineare che questa è un'ipotesi , basata sull'analogia con la teoria dei domini. Avresti bisogno di elaborare i dettagli (e probabilmente inviarli a LICS o qualcosa del genere) per essere sicuri.

Di conseguenza, le persone preferiscono modellare l'interazione usando cose come il modello Dolev-Yao , in cui modellano esplicitamente l'interazione tra computer e ambiente, in modo da poter caratterizzare esplicitamente ciò che l'attaccante conosce. Ciò rende molto più semplice la formulazione di logiche modali appropriate per il ragionamento sulla sicurezza, poiché lo stato del sistema e lo stato dell'ambiente sono rappresentati in modo esplicito.


1

leggendo il blog di Lance Fortnows, ho appena incontrato questo recente / piacevole / lungo articolo di indagine sul soggetto con molte prospettive e riferimenti [1] (che non è stato citato finora), include la prospettiva di Wegner / Goldin (tra molti altri). Ill solo citare Fortnows eccellente / enfatico riassunto / dichiarazione / affermazione della linea di partito TCS quasi ufficiale / uniforme / unanime:

"Alcuni scienziati informatici tentano tuttavia di sostenere che la tesi di [Church-Turing] non riesce a catturare alcuni aspetti del calcolo. Alcuni di questi sono stati pubblicati in sedi prestigiose come Science, Communications of the ACM, e ora come una serie di articoli in ACM Ubiquity. Alcune persone al di fuori dell'informatica potrebbero pensare che ci sia un serio dibattito sulla natura del calcolo. Non c'è. "

[1] Turings Titanic Machine di Barry S Cooper CACM Vol 55


-4

Sono molto d'accordo con i commenti di Aaronson.

Non capisco il lavoro di Milner. (es. pi calculus, che Milner ha inventato per descrivere i processi comunicativi). È abbastanza illeggibile per me, come lo sono quasi tutti gli articoli su matematica e logica, come le teorie di Lambek. Non ho dubbi sul fatto che le idee di Lambek siano molto buone, ma mi piacerebbe vederle tradotte in una specie di inglese pidgin che posso leggere.

Sono colpito dal commento di Milner che il calcolo lambda va bene per i "processi sequenziali", ma che è necessario qualcosa di più per i processi comunicativi.

Il mio punto di vista (forse ingenuo) era che non può essere così, perché pi-calculus è Turing completo, e quindi può essere convertito meccanicamente in un'altra notazione completa di Turing, ovvero lambda calcolo. Pertanto la notazione pi-calculus di Milner può essere convertita automaticamente in calcolo lambda.

Sembra che io abbia identificato un progetto: intuitivamente, dovrebbe essere possibile convertire meccanicamente da una lingua completa di Turing in un'altra. c'è un algoritmo per farlo? Dovrò guardare su Google. Forse questo è incredibilmente difficile da fare e difficile come il problema di arresto.

Ho guardato ieri in rete e ho trovato documenti su modelli di calcolo lambda. Sono sorpreso di scoprire che questa sembra essere una tana di coniglio molto profonda.

Richard Mullins


-7

Ecco il punto, una volta aggiunta (pura) interattività, la formalità esce dalla finestra. Non è più un sistema "chiuso". La domanda allora è: qual è la nozione di calcolo quando entra in gioco l'interattività? Quella risposta: beh, l'altro utente / macchina sta sostituendo parte del tuo calcolo (che può essere iscritto da un altro, più grande, macchina a stati) o non sei più in un sistema formalmente definibile e ora stai giocando un gioco , nel qual caso non c'è applicazione della tesi di Church-Turing.


2
I modelli interattivi di calcolo come i calcoli di processo sono giochi nel senso della semantica del gioco .
Martin Berger,

1
Il comportamento umano è irrilevante. Ciò che conta è che i dispositivi interattivi calcolabili agiscano in modo algoritmico e meccanico sui loro input.
Martin Berger,

1
@ Mark J, non capisco cosa stai dicendo. L'approccio interattivo afferma semplicemente che un dispositivo è calcolabile se reagisce ai suoi input in modo meccanico, utilizzando risorse limitate. Sì, se l'altra parte dell'interazione fa qualcosa di folle, come inserire l'Omega di Chaitin, il dispositivo meccanico può fare qualcosa di folle, come calcolare il problema di arresto. E allora?
Martin Berger,

1
Secondo me il CTT non riguarda ciò che è fisicamente implementabile. Invece, è un test rozzo che esclude alcune cose chiaramente non implementabili: se il CTT dice che qualcosa non è calcolabile, allora non è fisicamente implementabile, ma non credo che valga l'implicazione inversa.
Martin Berger,

1
@ Mark J, il requisito "un dispositivo è calcolabile se reagisce ai suoi input in modo meccanico, usando risorse limitate" non richiede che gli input vengano generati meccanicamente. Certamente l'immissione dell'Omega di Chaitin non può essere generata meccanicamente.
Martin Berger

-8

sfogliando la carta di Wegner, è chiaro che è un po 'melodrammatico e contrarian, ma ha ragione. il futuro dell'informatica è probabilmente molto più significativamente centrato nella robotica , nell'intelligenza artificiale o nel datamining (di vasti "big data" nel mondo reale) di cui non sembra parlare molto per nome, ma a cui chiaramente allude con il suo modello. e queste aree si concentrano in gran parte sull'universo al di fuori degli input e degli output di una TM.

storicamente è stato anche chiamato cibernetica come inventato / formulato da Weiner. il punto della robotica è che gli ingressi e le uscite non sono semplicemente digitali e privi di significato, che si potrebbe concludere osservando una MT; lo sono, ma hanno implicazioni / effetti / cause nel mondo reale, e la macchina forma un circuito di feedback con l'ambiente.

quindi direi che le TM e la robotica formano una sinergia molto naturale o una relazione simbiotica per così dire. ma questa non è un'affermazione radicale e ciò che Wegner annuncia con grande fanfara è, espresso in termini diversi, non molto controverso o romanzo. in altre parole, Wegner sembra proporsi come un iconoclasta intellettuale o accademica nel suo stile di proposito ... e quindi chi è la comunità TCS per negargli quell'inquadramento melodrammatico? tuttavia, vedere [2] per una confutazione grave.

L'esempio di Wegner di guidare un'auto è molto rilevante e altre importanti innovazioni recenti possono citare TCS :

  • la sfida della gara su strada DARPA e anche la chiusura di Google sulla tecnologia di un'auto alla guida. [3]
  • il caso della vittoria degli scacchi Big Blue AI su Kasparov
  • la recente vittoria della Deep Blue Jeopardy Challenge
  • il rover su Marte sempre più autonomo
  • una recente svolta annunciata nel riconoscimento di oggetti senza supervisione da parte di Google. [4]
  • riconoscimento vocale commercializzato

ma è vero, ciò che è iniziato decenni fa come mera teoria con le TM è ora un fenomeno molto reale e segmenti della torre d'avorio comunità TCS della potrebbero essere in qualche resistenza o addirittura negare quel fatto e il associato, fondamentale [vicino al Kuhnian ] trasformazione e spostamento "attualmente in gioco". questo è un po 'ironico perché Turing è stato molto applicato in molte delle sue prospettive e studi come il suo interesse per un test operativo AI (il test di Turing), la dinamica chimica, il calcolo della risoluzione degli scacchi, ecc. [5].

puoi persino vederlo in un microcosmo su questo sito in scontri su come definire l'ambito, e accese discussioni sul fatto che uno specifico tag apparentemente innocuo chiamato applicazione della teoria sia legittimo. [7]

e notiamo che TCS sta infatti studiando molti modelli interattivi di calcolo e molte ricerche chiave sono in corso in quell'area ... in particolare i sistemi di prova interattivi di cui tutte le importanti classi di calcolo possono essere definite in termini di. [6]

[1] La tesi di Church-Turing: rompere il mito di Goldin & Wegner

[2] sono nuovi modelli di calcolo? una risposta a Goldin & Wegner di Cockshott & Michaelson

[3] Googles auto a guida autonoma: 300K miglia registrate, non un singolo incidente sotto il controllo del computer, l'Atlantico

[4] Riconoscimento di oggetti senza supervisione di Google delle immagini di Youtube

[5] Contributi di Alan Turings a CS

[6] Panorama dei sistemi di prova interattivi

[7] Modificando il nostro ambito di applicazione, una proposta


9
quello che è iniziato decenni fa come mera teoria con le TM è ora un fenomeno molto reale - Certo, lo sappiamo. Lo chiamiamo "informatica".
Jeffε,


un'analogia che era al limite dei miei pensieri mentre scrivevo questo, ma alla fine ho capito in seguito: pensare che la distinzione tra biologia in vivo e in vitro sia rilevante. la TM è analoga a quest'ultima. altri modelli (emergenti) sono analoghi al primo. =)
vzn,

comunque il volume del 2006 mostra molti prestigiosi informatici che concordano con il nuovo paradigma. nota anche il saggio finale della raccolta: Lynn Stein, Interazione, Calcolo ed Educazione - Questo volume nel suo insieme documenta uno spostamento fondamentale nella cultura del calcolo da un focus sulla risoluzione algoritmica del problema a una prospettiva in cui l'interazione gioca un ruolo centrale . In questo capitolo, Stein sottolinea che tale spostamento deve essere accompagnato da un corrispondente cambiamento nell'educazione informatica, nella `` storia '' fondamentale che raccontiamo ai nostri studenti nei loro corsi introduttivi.
vzn,

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.