Il 23 giugno 1912 nacque a Londra Alan Mathinson Turing, uno dei più geniali scienziati del secolo scorso, la cui opera in diversi campi dalla matematica, alla logica e alla filosofia ha prodotto contributi significativi e decisivi per la società.
Quando morì il 7 giugno 1954 a Wilmslow in circostanze drammatiche, quasi sicuramente suicida, anche se non fu abbandonata l’ipotesi di assassinio o comunque di pressioni a cui fu sottoposto forse a causa del suo lavoro sulle comunicazioni segrete, il mondo era diventato totalmente differente da quello esistente al suo esordio.
L’autore ne tratteggia un ritratto in cui libertà e pragmatismo, tipici del suo carattere, si intrecciano con l’ originalità in campo scientifico, in particolare «la capacità di costruire immagini concrete di concetti astratti».
La vita breve quanto intensa di Turing non manca di attrarre e affascinare sia gli esperti sia un pubblico più vasto di cultori appassionati.
L’estrema capacità di concentrazione e indipendenza di giudizio gli permisero di formarsi e sopravvivere senza troppi danni già a partire dai primi impatti con una scuola pubblica il cui obiettivo dichiarato, in Inghilterra come del resto nel mondo occidentale di quegli anni, era essenzialmente di «educazione».
In questo articolo più che fornire informazioni complete sulla vita e sulle opere di Turing, per le quali rinvio gli interessati alla bibliografia riportata in appendice, mi pongo l’obiettivo di cogliere nella sua ricerca l’aspetto che mi ha più colpito, cioè la sua capacità di costruire immagini concrete di concetti astratti. Il dispiegarsi nella pratica del suo pensiero ha portato all’attuale e pervasivo mondo dell’informatica e della scienza dei computer. Il mondo «digitale», che è per le giovani generazioni niente più che un dato di fatto, esiste nella sua forma attuale anche grazie all’opera di Turing, non solo di studio teorico delle macchine, ma anche di progettazione effettiva dei calcolatori reali.
Entscheidungsproblem – il problema della decidibilità
La ricerca matematica era, nei primi decenni del secolo XX, dominata dalla figura di David Hilbert, scienziato di grande versatilità, autore di notevoli risultati in molteplici campi della matematica e della fisica.
La scuola di Gottinga diventa, anche grazie alla sua presenza, il centro principale della matematica mondiale dalla fine del XIX secolo per oltre trent’anni fino all’avvento al potere dei nazisti. L’esilio a cui furono allora costretti i più brillanti esponenti della scuola ebbe effetti devastanti a tal punto che si narra di come Hilbert, al gerarca che gli chiedeva quale fosse lo stato della ricerca, diede con amarezza la risposta: «la matematica a Gottinga non esiste più».
Al congresso internazionale tenuto a Parigi nel 1900 Hilbert presentò una lista di problemi che divenne celebre presso i matematici in quanto considerata un piano di lavoro che orientò le generazioni future per i decenni a venire. Alcuni dei ventitre problemi, come la cosiddetta ipotesi di Riemann sugli zeri della funzione z, sono tuttora aperti.
Ipotesi di Riemann La congettura di Riemann afferma che gli zeri non banali della funzione |
Fra gli altri problemi, il X riguarda le equazioni diofantee (da Diofanto di Alessandria, matematico greco del III secolo), equazioni in una o più incognite a coefficienti interi di cui si ricercano soluzioni intere. Tale problema fu a lungo trascurato anche per la sua formulazione un po’ enigmatica; si chiedeva infatti di «dare un procedimento col quale poter decidere, mediante un numero finito di operazioni, se l’equazione è risolubile in numeri razionali interi».
La questione fu infine risolta nel 1970 in termini negativi, ma poté essere formulata in modo più preciso e generale solo quando la teoria degli algoritmi, sviluppata negli anni Trenta da Alonzo Church e Alan Turing, permise di studiare la logica dei processi ricorsivi.
In questo campo di ricerca la principale difficoltà che si incontra riguarda la necessità di fornire una definizione corretta e inattaccabile a espressioni come: «metodo» e «procedura effettiva». Su queste idee Turing lavorò a lungo fino al 1936, come di consueto in modo isolato e indipendente, fino alla formulazione del suo metodo innovativo il cui punto fondamentale consiste nella riduzione del processo di deduzione del risultato a una serie di operazioni atomiche così elementari da poter essere meccanizzate. Se si raggiunge il risultato attraverso un numero finito di passi vuol dire che esso è «computabile». In [1] Turing, dopo aver definito i numeri computabili e aver mostrato come gli stessi concetti si applichino a enti più complessi (funzioni, predicati e così via), passa a dimostrare la possibilità teorica di una macchina universale di computazione.
Incompletezza dei sistemi formali Il X problema si trasformò negli anni, tanto da non essere più riconoscibile nella formulazione originaria, in quello della «decidibilità» delle proposizioni di un sistema formale; nelle parole di Hilbert: «qualsiasi problema ben posto può essere risolto o riuscendo a dare la risposta alla questione posta o mostrando l’impossibilità di una soluzione, quindi la necessità dell’insuccesso di ogni tentativo». |
La macchina universale di Turing
Il mondo delle macchine, cioè dei manufatti che forniscono in modo autonomo un prodotto fruibile, non mai ha cessato di affascinare il genere umano, tanto più se i prodotti sono caratterizzati da aspetti simbolici invece che materiali come le informazioni.
La Macchina universale di Turing trae invece ispirazione dalla telescrivente della quale è una versione più estesa; infatti è costituita da un nastro suddiviso in cellette che può muoversi indefinitamente di una casella alla volta in entrambe le direzioni e da un dispositivo che può leggere, cancellare o scrivere un nuovo simbolo, piuttosto che scrivere soltanto un simbolo in modo indelebile. È chiaro che vi è un’infinità di macchine di Turing, ciascuna corrispondente a una differente procedura o metodo di calcolo in base a una diversa «tabella di comportamento» che, in termini moderni, è impossibile non identificare con un programma di computer.
L’analisi di Turing non riguardava il computer che ancora non esisteva, ma si concentrò sul generale processo meccanico di passi consecutivi percorso da un essere umano, mentre esegue un effettivo processo seguendo un insieme fissato di regole (algoritmo), interpretabile senza ambiguità, per raggiungere la soluzione. Non è difficile immaginare una procedura per risolvere un problema aritmetico come eseguire un’addizione, ma in modo analogo si può pensare di affrontare anche problemi non numerici, basta infatti associare ai simboli un diverso significato.
Il risultato fondamentale di Turing è che, per tutto quanto è computabile sia esso un numero o un simbolo, esiste una «macchina», cioè un processo meccanico, che effettivamente lo calcola. Data allora una proposizione matematica formalmente corretta, ci si chiede se esista un metodo per decidere se sia o non sia dimostrabile. Se il metodo esiste allora si può costruire una MT che «calcoli» la decisione. Si può dimostrare formalmente che la definizione di computabilità di Turing, applicata al problema della decidibilità, coincide con le definizioni date da Church e da Gödel ma ha, rispetto a queste, il pregio di essere anche intuitiva.
Una descrizione più formale della Macchina di Turing Una Macchina di Turing (MT) è un dispositivo costituito da:
Alla partenza da una posizione prescelta (per esempio dalla cella non vuota più a sinistra) l’unità di controllo contiene il programma e il nastro contiene un insieme finito di simboli appartenenti a un alfabeto finito. Lo stato della macchina, cioè l’istruzione eseguita e il simbolo letto, determinano il nuovo simbolo da scrivere, il movimento del nastro e la prossima istruzione da eseguire. Se e quando la macchina si ferma, sul nastro si legge il risultato, che è un insieme di simboli dell’alfabeto. |
Seguendo Turing chiamiamo allora numero computabile un numero reale (considerato come un decimale infinito) per il quale esista una MT che lo calcoli. Le MT sono numerabili, perciò possono essere ordinate assegnando ad esse un numero identificativo crescente. I numeri identificativi delle MT che calcolano numeri computabili sono detti soddisfacenti. Con il tradizionale metodo della diagonale usato da Cantor si può dimostrare che non esiste una MT in grado di decidere se un numero è o non è soddisfacente, cioè se la macchina corrispondente calcola un numero computabile.
Metodo della «diagonale» Il prototipo è la dimostrazione tanto semplice quanto elegante di Cantor, della non numerabilità dei numeri reali che voglio riassumere in poche righe. |
Infatti, supponiamo che esista una MT in grado di decidere se l’identificativo di ogni altra macchina è soddisfacente, allora possiamo costruire una nuova MT con il seguente comportamento: essa cambia il contenuto della N-sima posizione del numero computato dalla macchina di numero soddisfacente N. Così mentre la macchina procede costruisce effettivamente un numero reale computabile che deve essere per costruzione diverso da tutti quelli computati da macchine identificate da numeri soddisfacenti. La nostra macchina dovrebbe allora avere un identificativo soddisfacente e contemporaneamente non averlo perché non appartiene all’elenco; questa contraddizione falsifica l’ipotesi che la macchina in grado di decidere possa essere costruita.
Un algoritmo e il programma che lo realizza hanno dimensione finita anche se il risultato dell’esecuzione è potenzialmente infinito; si pensi per esempio all’algoritmo per calcolare il numero e che, racchiuso in poche istruzioni, produce il risultato con la voluta approssimazione.
Dato un numero reale, la successione delle sue cifre può apparire caotica, ma celare una certa regolarità che sarebbe perciò incapsulabile in un programma finito oppure, ed è vero per la maggior parte dei numeri, il programma dovrebbe essere necessariamente infinito per contenere in modo esplicito il numero stesso.
Turing ha aperto nuove aree di esplorazione sulle questioni riguardanti la decidibilità, in particolare sul problema dell’arresto di un programma. Anche se nella pratica si affrontano problemi generalmente computabili, non c’è modo di escludere a priori la possibilità che un algoritmo non si arresti per qualche valore dei dati di ingresso; non esiste infatti per tutti i programmi un limite superiore per il numero di istruzioni che possono eseguire. La non decidibilità della terminazione, ovvero la sua non computabilità, è un altro punto di vista dell’incompletezza dell’aritmetica.
Il test di Turing
Nel suo articolo più famoso [2], pubblicato su Mind nel 1950, Turing affronta un problema centrale che è tuttora oggetto di ricerca sia nelle scienze cognitive sia nell’Intelligenza Artificiale: quello della macchina che mostra un comportamento intelligente.
Animali «semplici» quali l’aplysia (lumaca di mare studiata da Eric R. Kandel, premio Nobel nel 2000 per la medicina) possiedono una corrispondenza neurone-funzione, che li rende adeguati per uno studio dei processi elementari che si ritrovano anche in organismi più evoluti. Come poi tali processi si organizzino per produrre la creatività del pensiero umano è un altro discorso che ovviamente non tocchiamo.
Se è possibile produrre un’intelligenza aggregando processi elementari si può in teoria costruirla anche partendo da un substrato hardware non necessariamente biologico, del resto alcuni passi sono stati compiuti, per esempio con macchine che, benché specializzate e prive di coscienza e sensibilità affettiva, emulano processi mentali e sono in grado di giocare partite a scacchi da campioni.
L’approccio di Turing al problema dell’intelligenza è ancora una volta concreto e pragmatico anche se, visto a distanza di tempo, può forse contenere qualche ingenuità che non diminuisce però la fondatezza del suo punto di vista (per un’analisi dettagliata vedi per esempio [3]).
A molti anni dalla sua stesura, la leggerezza e profondità dell’articolo lo lasciano leggere ancora con diletto, tanto che me lo immagino recitato come dialogo in teatro. Che io sappia finora è solo la vita di Turing, soprattutto riletta attraverso il racconto della madre, che è stata trasposta in spettacolo. Turing evita di affrontare in modo analitico discussioni sulla natura del pensiero, della mente e della coscienza dando invece un criterio in termini esterni. La sua giustificazione è che uno giudica che gli altri esseri umani pensano in base a osservazioni esterne, se perciò un essere umano e un computer competono per convincere un giudice imparziale, usando solo messaggi testuali, su chi sia l’essere umano e se il computer risulta vincitore, allora gli si deve accreditare una forma di intelligenza.
Turing stesso introduce il problema Il problema si può descrivere nei termini di un gioco che chiameremo «gioco di imitazione». |
Il nostro autore, ben conscio della tempesta di opposizioni che avrebbe sollevato, analizza in modo dettagliato e ironico le obiezioni all’idea che le macchine possano pensare. L’intento del gioco di imitazione, è sicuramente provocatorio dato che è relativamente ingenuo anche perché limitato da assunzioni sul linguaggio e cultura e perché ignora il pensiero animale o extra-terrestre non riconducibile a comunicazione verbale.
È inoltre curioso il fatto che l’articolo apparve in una rivista di filosofia: Turing non era un filosofo ma essenzialmente un matematico che volle offrire alla filosofia una riflessione illuminante su un nuovo campo di ricerca in cui si era avventurato fra i primi.
Conclusioni
L’eredità di Turing è molto più vasta di quanto possa sembrare da quanto detto sopra, in particolare le sue competenze (oltre che sui sistemi non lineari) di chimica e biologia gli permisero di affrontare la morfogenesi [4] cioè i meccanismi che possono determinare la struttura anatomica di un organismo vivente.
Sappiamo, solo indirettamente perché non esistono suoi scritti, che nell’ultimo periodo di vita, le riflessioni di Turing avevano come oggetto la Meccanica Quantistica, altro campo delle sue competenze nel quale si muoveva con disinvoltura. Ma noi posteri possiamo solo avere qualche suggestiva idea del tipo: si prefigurava forse un computer quantico o pensava a una forma di incomputabilità del processo di riduzione della teoria dei quanti che possa anche influenzare le azioni mentali? Qui però entriamo in un campo che può essere solo soggettivo.
Alan Turing appartiene secondo me a quella esigua schiera di Grandi del passato che sono fonte inesauribile di ispirazione per il futuro, nel senso che possiamo continuare a discutere con loro nella nostra mente e trarre qualche indicazione dalle loro immaginarie risposte.
Paolo Borghese
(Docente di Informatica presso la Facoltà di Ingegneria dell’Università degli Studi di Bergamo)
Indicazioni Bibliografiche
-
A. M. Turing, On computable numbers, with an application to the Entscheidungsproblem, Proc. London Maths. Soc., ser. 2, 42: 230-265.
-
A. M. Turing, Computing machinery and intelligence, Mind, 50: 433-460.
-
G. O. Longo, Il test di Turing, storia e significato, Mondo Digitale, 29: 11-24.
-
A. M. Turing, The Chemical Basis of Morphogenesis, Philosophical Transactions of the Royal Society of London. Series B, Biological Sciences, Vol. 237, No. 641. (Aug. 14, 1952), pp. 37-72.
Indicazioni Sitografiche
-
www.turing.org.uk/turing/: Guida al sito web dedicato a Alan Turing (1912-1954)
-
http://plato.stanford.edu/entries/turing/: Qui si trova anche una approfondita bibliografia
-
www.nemesi.net/turing.htm
Libri
-
UK paperback: Alan Turing: the Enigma, ISBN 0-09-911641-3 (Vintage, Random House, London.). Translation into Italian by David Mezzacapa, Storia di un Enigma, Bollati Boringhieri, Torino 1983 (Premio Giovanni Comisso, nel 1992).
-
D. R. Hofstadter, Gödel, Escher, Bach – Un’eterna ghirlanda brillante, Adelphi, Milano 1992. In questo libro si parla anche di Turing; ne raccomando la lettura in quanto lo considero una brillante e moderna introduzione ai problemi del pensiero e quindi anche alla lettura delle opere originali di Turing.
© Pubblicato sul n° 45 di Emmeciquadro