ALAN TURING:
MACCHINA di TURING e CALCOLABILITA’
Alberto Bertoni
Milano, 23 Giugno 2012
ALAN TURING: VITA
•
•
•
•
•
•
•
•
•
•
1912:
nasce a LONDRA
1924:
passione per gli SCACCHI
1934:
laurea in Matematica a CAMBRIDGE
1936/38: propone il modello di Macchina
visita PRINCETON – Tesi di Church-Turing
1939/45: collabora con il Secret Intelligence Service
a BLETCHLEY PARK
1946:
pianifica (senza successo) lo sviluppo di un
calcolatore al Nat. Phys. Lab.
1948:
frustrato, si dedica alla maratona
1950:
discute su MACCHINE E INTELLIGENZA
1951:
sviluppa una teoria sulla BIOMORFOGENESI
1952/54: anni horribiles
TURING E CALCOLABILITA’
BACKGROUND:
J. VON NEUMANN - FISICA MATEMATICA,
MECCANICA QUANTISTICA
B. RUSSEL
- LOGICA MATEMATICA
Max NEWMAN
- INCOMPLETEZZA di GODEL
- 2° PROBLEMA di HILBERT
TURING E CALCOLABILITA’
MOTIVAZIONE:
ENTSCHEIDUNGSPROBLEM (2° Problema di Hilbert):
Esiste un METODO che, data una PROPOSIZIONE
MATEMATICA (1° ord.), permette di decidere se è o non è
DIMOSTRABILE?
PROPOSTA di TURING:
METODO = ?
METODO = Algoritmo basato su MACCHINA di TURING !
TURING E CALCOLABILITA’
LAVORI DI RIFERIMENTO:
• [1] On computable numbers, with an application to the
Entscheidungsproblem, Proc. London Maths. Soc., ser. 2, 42:
230–265, 1936
• [2] Systems of logic defined by ordinals, Proc. Lond. Math.
Soc., ser. 2, 45: 161–228, 1939
OSSERVAZIONE:
In [1] la Macchina di Turing è introdotta come generatore di
numeri reali; in questa discussione, per questioni di semplicità,
la introduciamo come riconoscitore di linguaggi.
MACCHINA DI TURING
NASTRO
TESTINA di LETTURA
PROGRAMMA: Sequenza di
istruzioni
PROGRAMMA
ISTRUZIONE:
(q) Case
Leggi X then Stampa Y , MUOVI dx/sin , go to (q’)
Istruzione di Partenza:
Istruzioni di arresto:
START
ACCETTA / RESPINGI
MACCHINA DI TURING
OSSERVAZIONE:
Sia gli INGRESSI che i PROGRAMMI sono PAROLE!
COMPORTAMENTO della MACCHINA M:
L(M) = LINGUAGGIO formato dalle PAROLE
che, messe in ingresso a M, generano una
computazione accettante.
PROPOSTA di TURING:
Concetto di PROCEDURA = Macchina di Turing
Concetto di ALGORITMO = Macchina di Turing che
termina per ogni ingresso
MACCHINA DI TURING
MACCHINA di TURING UNIVERSALE:
Macchina U che, su ingresso W#Y, interpreta Y come
(codifica di) una Macchina di Turing e accetta W se
W  L(Y)
PROPOSTA di TURING:
MACCHINA di TURING
= Programma per calcolatore
MACCHINA UNIVERSALE = Calcolatore
= Interprete
LIMITI ALLA CALCOLABILITA’
SISTEMI
PROBLEMI
S
ImmagineS(SISTEMI) = Problemi risolubili in SISTEMI
Se |SISTEMI| < |PROBLEMI| esistono Problemi NON risolubili
da SISTEMI !
LIMITI ALLA CALCOLABILITA’
TECNICA di DIAGONALIZZAZIONE [CANTOR 1874]
Data la seguente {0,1}-matrice parzialmente nota (mik)
1
?

?

?
?
0
?
?
?
?
0
?
?
?
?

1
determinare un vettore 1x4 che NON può essere una riga di (mik)
SOLUZIONE:
Il complemento della diagonale = (1- mkk) = (0 1 1 0)
NON DECIDIBILITA’ DEL PROBLEMA “ARRESTO”
PROBLEMA: ARRESTO
ISTANZA:
due parole W , Y
QUESTIONE: la macchina Y termina su ingresso W?
FATTO: ARRESTO non è algoritmicamente decidibile.
Se lo fosse, la seguente matrice sarebbe calcolabile:
1
se Y termina su ingresso W
mWY =
0
se Y non termina su ingresso W
Allora sarebbe calcolabile f(W) = 1- mWW ed
esisterebbe M per cui f(W) = mWM. Assurdo, perché
mMM = f(M) = 1 – mMM
FATTO: ENTSCHEIDUNGSPROBLEM non è decidibile
Riduzione ad ARRESTO!
COMPUTABILITA’ NEGLI ANNI ‘30
SISTEMI
-Calcolo [Church 35]
Macchine di Turing
[Turing 36]
Funzioni calcolabili nel -Calcolo
Funzioni calcolabili da M di Turing
A.Turing sviluppa la tesi di PhD a Princeton sotto la
supervisione di Church. Tra le conclusioni:
Fatto [Turing 38]:
Funzioni -calcolabili = Funzioni Turing-calcolabili
= Funzioni ricorsive [Godel 34]
TESI DI CHURCH-TURING
ROBUSTEZZA DI UNA
CLASSE DI FUNZIONI
INDIPENDENZA DAI
FORMALISMI CHE
LE DEFINISCONO
LE FUNZIONI TURING-CALCOLABILI SONO ROBUSTE!
CONCETTO EPISTEMOLOGICO
PROBLEMI RISOLUBILI
PER VIA AUTOMATICA
CONCETTO MATEMATICO
PROBLEMI
TURING RISOLUBILI
TESI DI CHURCH-TURING
MACCHINE DI TURING E COMPLESSITA’ STRUTTURALE
COMPLESSITA’ STRUTTURALE:
Stima delle risorse computazionali necessarie alla
soluzione di un dato problema
SISTEMI
PROBLEMI
S
C
RISORSE
MACCHINA DI TURING E COMPLESSITA’ STRUTTURALE
LUCIDO APPROCCIO:
J. Hartmanis, R.E. Stearns, On the computational
complexity of Algorithms, J.Symb.Log.37, 1965
Juris HARTMANIS:
• PhD nel 1955 a CalTech
• Nel 1957 lavora con Stearns ai Laboratori GE
• Colpito dai lavori di Shannon (Informazione trasmittibile
in canali rumorosi) si chiede se sia possibile una analoga
teoria sulle risorse computazionali.
• Fallimento degli approcci basati sul concetto di entropia.
MACCHINA DI TURING E COMPLESSITA’ STRUTTURALE
APPROCCIO BASATO SU MACCHINA DI TURING
“Our exposure to Turing’s ideas was a dramatic event for us.
We studied Turing’s paper with excitement and were
delighted in the simplicity of the Turing machine model and
the beauty of the capture the computability via this model.
The Turing machine was ideed a powerful intellectual tool.”
[Hartmanis 2012]
METODI UTILIZZATI:
• Tecnica di diagonalizzazione
• Robustezza delle classi di complessità
• Turing-riducibilità
MACCHINA DI TURING E COMPLESSITA’ STRUTTURALE
COMPLESSITA’ STRUTTURALE: una teoria difficile
… MOLTI PROBLEMI APERTI
?
?
?
LOGSPACE = P = NP = PSPACE
[almeno una relazione è  . Ma quale?]
…QUALCHE PROGRESSO
NLOGSPACE = co-NLOGSPACE
[Szelepesènyi, The method of forcing for nondeterministic automata,
Bull.EATCS 33, 96-11, 1987]
…UN VECCHIO PROBLEMA
I numeri algebrici sono Turing-calcolabili in tempo O(n2).
Lo sono in tempo O(n)?
CONCLUSIONI
ALAN TURING
• REFRATTARIETA’ A CHIUDERSI IN “GABBIE
SETTORIALI”
• STRAORDINARIA CAPACITA’ DI UNIFICARE
ASPETTI APPARENTEMENTE DISTANTI DELLA
CONOSCENZA
• AVVERSIONE A COMPROMESSI MORALI O
INTELLETTUALI