Teorema di Church e teoremi di incompletezza di Gödel


27

Di recente ho letto alcune delle idee e della storia del lavoro pionieristico svolto da vari logici e matematici sulla computabilità. Mentre i singoli concetti sono abbastanza chiari per me, sto cercando di ottenere una solida comprensione delle relazioni reciproche e del livello astratto a cui sono tutti collegati.

Sappiamo che il teorema di Church (o meglio, le prove indipendenti del problema Entscheidungs di Alonzo Church e Alan Turing di Hilbert ) hanno dimostrato che in generale non possiamo calcolare se una determinata affermazione matematica in un sistema formale sia vera o falsa. A quanto ho capito, la tesi di Church-Turing fornisce una descrizione abbastanza chiara dell'equivalenza (isomorfismo) tra il calcolo lambda di Church e le macchine di Turing, quindi abbiamo effettivamente un modello unificato per la calcolabilità. (Nota: per quanto ne so, la prova di Turing si avvale del fatto che il problema dell'arresto è indecidibile. Correggimi se sbaglio.)

Ora, il primo teorema di incompletezza di Gödel afferma che non tutte le affermazioni in un sistema formale coerente con sufficiente potere aritmetico possono essere provate o smentite (decise) all'interno di questo sistema. In molti modi, mi sembra che stia dicendo esattamente la stessa cosa dei teoremi di Church, considerando che il calcolo lambda e le macchine di tornitura sono entrambi tipi di sistemi effettivamente formali!

Questa è comunque la mia interpretazione olistica e speravo che qualcuno potesse far luce sui dettagli. Questi due teoremi sono effettivamente equivalenti? Ci sono delle sottigliezze da osservare? Se queste teorie stanno essenzialmente guardando la stessa verità universale in modi diversi, perché sono state affrontate da angolazioni così diverse? (Ci sono stati più o meno 6 anni tra la prova di Godel e quella di Church). Infine, possiamo essenzialmente dire che il concetto di provabilità in un sistema formale (calcolo di prova) è identico al concetto di calcolabilità nella teoria della ricorsione (macchine di Turing / calcolo lambda)?


1
Non hai proprio ragione sulla tesi di Church-Turing. Il calcolo lambda e la macchina di Turing sono stati entrambi specificati formalmente. La tesi di Church-Turing è che tutto ciò che possiamo ragionevolmente chiamare calcolo può essere eseguito su una macchina di Turing (o nel calcolo lambda, o qualcosa di equivalente). Dal momento che nessuno ha escogitato un'eccezione, è generalmente accettato, ma ovviamente è impossibile dimostrarlo.
David Thornley,

2
Per favore stai attento quando parli di queste cose. Ad esempio, hai affermato che "il primo teorema di incompletezza di Gödel afferma che non tutte le affermazioni in un sistema formale coerente possono essere provate all'interno di questo sistema". Questa è spazzatura. Se un sistema è coerente, l'istruzione 1 = 0 non è dimostrabile. Quello che hai da dire è che un sistema formale (che soddisfa tali e tali condizioni) non decide tutte le frasi.
Andrej Bauer,

@ David Thornley: grazie per la correzione. Quindi l'equivalenza tra il calcolo lambda e le macchine di Turing è formalmente dimostrata (un teorema di Kleene a giudicare da un'altra risposta), ma la tesi Church-Turing è più simile a un'ipotesi con molte prove a sostegno, ma nessuna prova effettiva.
Noldorin,

@Andrej: Se cambio "provato" in "provato o smentito" e "sistema formale" in "sistema formale con sufficiente capacità aritmetica", allora sono abbastanza sicuro che sia corretto.
Noldorin,

2
@Andrej: giusto. Il motivo non implica che si tratti di una sorta di crimine. Gli errori sono inevitabili per le persone che cercano di imparare (o addirittura con accademici esperti), e non è loro compito scrivere tutto senza errori!
Noldorin,

Risposte:


19

Innanzitutto, ti suggerisco di leggere la "metamatematica" di Kleene come un buon libro su questi argomenti. I primi due capitoli del volume I della "Teoria della ricorsione classica" di Odifreddi possono anche essere utili per comprendere la relazione tra questi concetti.

Sappiamo che il teorema di Church (o meglio, le prove indipendenti del problema Entscheidungs ​​di Alonzo Church e Alan Turing di Hilbert) hanno dimostrato che in generale non possiamo calcolare se una determinata affermazione matematica in un sistema formale sia vera o falsa.

Penso che ti riferisci al teorema di Church secondo cui l'insieme dei teoremi della logica del primo ordine non è decidibile. È importante notare che la lingua è di primo ordine.

A quanto ho capito, la tesi di Church-Turing fornisce una descrizione abbastanza chiara dell'equivalenza (isomorfismo) tra il calcolo lambda di Church e le macchine di Turing, quindi abbiamo effettivamente un modello unificato per la calcolabilità.

No. L'equivalenza tra lambda-calcolabilità e Turing-calcolabilità è un teorema di Kleene. Non è una tesi. È considerata una prova a sostegno della tesi di Church.

Nota: per quanto ne so, la prova di Turing si avvale del fatto che il problema dell'arresto è indecidibile. Correggimi se sbaglio.

Ora, il primo teorema di incompletezza di Gödel afferma che non tutte le affermazioni in un sistema formale coerente possono essere provate all'interno di questo sistema. In molti modi, mi sembra che stia dicendo esattamente la stessa cosa dei teoremi di Church, considerando che il calcolo lambda e le macchine di tornitura sono entrambi tipi di sistemi effettivamente formali!

No. Il teorema di Godel afferma che per ogni teoria coerente e ricorsivamente enumerabile che contiene abbastanza aritmetica , esiste una frase φ st φ eωφφ¬φ non sono provabili in essa.

Questo non afferma la stessa cosa. Non dice nulla sul fatto che l'insieme dei teoremi della teoria sia indecidibile.

Questa è comunque la mia interpretazione olistica e speravo che qualcuno potesse far luce sui dettagli. Questi due teoremi sono effettivamente equivalenti? Ci sono delle sottigliezze da osservare? Se queste teorie stanno essenzialmente guardando la stessa verità universale in modi diversi, perché sono state affrontate da angolazioni così diverse? (Ci sono stati più o meno 6 anni tra la prova di Godel e quella di Church).

Nel corso degli anni ci sono stati molti abusi dei teoremi di Godel (e teoremi simili). Bisogna stare molto attenti a interpretarli. Per quanto ho visto, gli abusi sono generalmente il risultato di dimenticare di menzionare una condizione nel teorema o di combinare i teoremi con altre credenze. Uno sguardo attento mostra che questi teoremi, sebbene correlati, non sono equivalenti.

Infine, possiamo essenzialmente dire che il concetto di provabilità in un sistema formale (calcolo di prova) è identico al concetto di calcolabilità nella teoria della ricorsione (macchine di Turing / calcolo lambda)?

Non capisco cosa intendi per "identico". Certamente ci sono molte relazioni tra calcolabilità e provabilità. Potrei essere in grado di fare un commento più utile se chiarisci cosa intendi con questi identici.

aggiornare

LTThm(T)T¬Thm(T)TTrueFun'lSeTrueFun'lSeL=TrueFun'lSe

Thm(T)¬Thm(T)LT

Thm(T)Thm(T) non è decidibile.

Sul rapporto tra provabilità nel sistema formale e calcolabilità. Uno è il seguente: se il sistema è efficace, l'insieme di espressioni derivabili in esso è re e il sistema è un caso speciale di grammatica. La grammatica è un altro modo per definire il concetto di calcolabilità che equivale alla calcolabilità della macchina di Turing.


Grazie per la tua risposta. Mi riferisco al teorema di Church come affermato nella pagina di Wikipedia: "Nel 1936 e nel 1937 Alonzo Church e Alan Turing rispettivamente [1], pubblicarono documenti indipendenti che mostravano l'impossibilità di decidere algoritmicamente se le affermazioni nell'aritmetica sono vere o false. Questo risultato è ora noto come Teorema di Church o Teorema di Church-Turing (da non confondere con la tesi di Church-Turing). ". Applausi per la correzione anche sulla tesi di Church-Turing, ne prenderò nota. Allora, sei conforme al commento di David Thornley sulla mia domanda?
Noldorin,

Per quanto riguarda la descrizione del primo teorema di incompletezza di Godel, accetto pienamente la tua (più precisa) definizione, sebbene non sia equivalente alla mia versione corretta nella domanda / commento sulla risposta di Marc Hamann? Infine, c'è un modo in cui possiamo essere specifici su come esattamente questi teoremi si relazionano tra loro, nonostante non siano equivalenti?
Noldorin,

Oh, e riguardo al mio significato di "identico". Forse potresti modificare la seguente dichiarazione in modo che sia corretta (aggiungendo le condizioni / avvertenze necessarie): Qualunque prova valida in un sistema formale coerente può essere rappresentata da una funzione calcolabile in una macchina di Turing?
Noldorin,

La teoria dovrebbe essere re altrimenti il ​​teorema di incompletezza non regge. (prendi tutte le frasi vere nel modello standard, soddisfa tutte le altre condizioni.) Aggiungerò un aggiornamento alla mia risposta.
Kaveh,

"Qualunque prova valida in un sistema formale coerente può essere rappresentata da una funzione calcolabile in una macchina di Turing?" Non capisco cosa intendi per "rappresentare". Una dimostrazione è solo una serie finita di simboli.
Kaveh,

17

possiamo essenzialmente dire che il concetto di provabilità in un sistema formale (calcolo di prova) è identico al concetto di calcolabilità nella teoria della ricorsione (macchine di Turing / calcolo lambda)?

Questi sono molto simili ma non identici, poiché alcune delle fasi del calcolo delle prove possono rappresentare operazioni non calcolabili.

ZFC(N)

Allo stesso modo, il Teorema di completezza di Gödel ci dice che qualsiasi formula valida nella logica del primo ordine ha una prova, ma il teorema di Trakhtenbrot ci dice che, su modelli finiti, la validità delle formule del primo ordine è indecifrabile.

Quindi le prove finite non corrispondono necessariamente a operazioni calcolabili.


Grazie per la tua risposta. Quindi, per chiarire, come sono esattamente non calcolabili quei passaggi del tuo esempio? In che senso, dovrei dire? Per chiarire, quando dico che le prove sono calcolabili, intendo che le regole di inferenza sono calcolabili ... (Esiste un altro modo di pensarci?)
Noldorin

1
L'insieme dei naturali è ricorsivamente enumerabile, ma un tentativo di generare tutti i naturali ovviamente non terminerebbe, quindi non è strettamente calcolabile. Il powerset dei naturali non è neppure enumerabile in modo ricorsivo, e la maggior parte degli elementi non è enumerabile in modo ricorsivo, quindi è "anche meno" calcolabile.
Marc Hamann,

L'altra tua domanda su come pensare a questo è piuttosto più complicata e di portata maggiore di quanto ritenga adatto qui. Basti pensare che se si considerano calcolabili passaggi non calcolabili con regole di inferenza calcolabili, allora il problema di Halting è calcolabile semplicemente assumendo un Assioma di Halting che pone un oracolo di arresto. Sembra imbrogliarmi. ;-)
Marc Hamann,

@Marc: Il libro che sto leggendo in questo momento dice che l'insieme di tutti i numeri naturali è calcolabile in quanto se si inserisce n nella macchina di Turing, la macchina può produrre l'ennesimo numero naturale. In effetti, il powerset non può essere calcolato da una macchina di Turing.
Noldorin,

Inoltre, non sono sicuro di seguire del tutto il tuo ragionamento sull'assumere un Assioma di Halting ... Le macchine di Turing non hanno "assiomi" per così dire? Penso di dover ancora essere convinto che "tutte le prove valide in un sistema formale sono prove calcolabili" non è vero. Questo mi sembra intuitivamente corretto.
Noldorin,

10

Anche se questo non è esattamente ciò che stai chiedendo, è nella stessa vena e speriamo che tu (e altri lettori della tua domanda) lo trovi interessante. Dovresti assolutamente leggere la corrispondenza di Curry-Howard , che afferma che la categoria di programmi è, in un senso specifico, isomorfa alla categoria di prove costruttive . (Si tratta di discutere prove e calcolabilità a un livello diverso rispetto alle altre risposte.)


Assolutamente ... Ero a conoscenza della corrispondenza Curry-Howard ma non volevo portarla alla domanda e complicare ulteriormente le cose. Grazie per averlo sottolineato però. Non sono del tutto sicuro se questo è il link che sto cercando, o se è un po 'più restrittivo / stretto di quello che voglio vedere. Cosa ne pensi, ci sono dei chiarimenti da fare qui?
Noldorin

1

Cercherò di rispondere alla tua domanda dal punto di vista che prendi, in breve; Sto anche cercando di mettere in relazione i due teoremi in modo diverso.

Il primo teorema di incompletezza di Gödel afferma che in un sistema formale coerente con sufficiente potere aritmetico, esiste un'affermazione P tale che non esiste alcuna prova né di essa né della sua negazione. Ciò non implica che non esiste un algoritmo decisionale per l'insieme dei teoremi della teoria, il che direbbe anche che né P né P sono teoremi. Il risultato del teorema di Church-Turing afferma che un tale algoritmo non esiste. Questo è anche il nocciolo della risposta di Kaveh, spero di averlo spiegato più chiaramente.

Ora proverò a dimostrare che il teorema di Church-Turing implica il teorema di Gödel, per favore spiegami dove e se sbaglio. L'insieme di teoremi Thm è parzialmente decidibile, e supponiamo che R sia un programma che lo riconosce (cioè, si ferma con "yes" se l'ingresso è in Thm, continua a funzionare altrimenti). Usiamo questo per costruire un nuovo algoritmo: data un'istruzione Q, per vedere se è provabile, esegui R in parallelo su Q e non Q, interlacciando la loro esecuzione e fermandosi quando il primo si ferma e producendo "No" se "non Q" è stato provato, e "Sì" altrimenti; questo fornisce un algoritmo calcolabile. Supponendo per contraddizione che tutte le affermazioni possano essere provate o smentite, questo algoritmo risolverebbe il problema di Entscheidungs, ma è assurdo! Pertanto, ci deve essere una dichiarazione che può

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.