Copertina
Autore Martin Davis
Titolo Il calcolatore universale
SottotitoloDa Leibniz a Turing
EdizioneAdelphi, Milano, 2003, Biblioteca scientifica 35 , pag. 324, cop.fle., dim. 140x220x24 mm , Isbn 978-88-459-1792-9
OriginaleThe Universal Computer. The Road from Leibniz to Turing [2000]
TraduttoreGianni Rigamonti
LettoreRenato di Stefano, 2004
Classe storia della scienza , matematica , logica , informatica: fondamenti
PrimaPagina


al sito dell'editore


per l'acquisto su IBS.IT

per l'acquisto su BOL.IT

per l'acquisto su AMAZON.IT

 

| << |  <  |  >  | >> |

Indice

Prefazione                                              9
Introduzione                                           13
IL CALCOLATORE UNIVERSALE
I. Il sogno di Leibniz 17 II. Boole trasforma la logica in algebra 38 III. Frege: dalla grande conquista al crollo 61 IV. Cantor: una deviazione verso l'infinito 83 V. Hilbert vola al soccorso 109 VI. Gödel manda tutto per aria 136 VII. Turing e l'idea del calcolatore generale 174 VIII. La costruzione dei primi calcolatori universali 217 Epilogo 254 Note 257 Bibliografia 299 Indice analitico 307  

 

| << |  <  |  >  | >> |

Pagina 13

INTRODUZIONE



    Se risultasse che le logiche di base di una macchina
    progettata per la soluzione numerica di equazioni
    differenziali coincidono con quelle di una macchina
    destinata a preparare le fatture di un grande magazzino,
    penserei che si tratta della più stupefacente
    coincidenza di tutta la mia vita.
    HOWARD AIKEN, 1956

    Torniamo ora all'analogia con le macchine calcolatrici
    teoriche... Si può dimostrare che è realizzabile una
    speciale macchina di questo tipo capace di fare da sola
    il lavoro di tutte; potremmo addirittura farla funzionare
    da modello di qualsiasi altra. Questa macchina speciale
    può essere chiamata «universale».
    ALAN TURING, 1947



Nell'autunno del 1945, mentre l'ENIAC, un gigantesco «motore da calcolo» con migliaia di valvole termoioniche, stava per essere completato presso la Moore School of Electrical Engineering di Philadelphia, un gruppo di esperti si riuniva a scadenze regolari per discutere il progetto della macchina che doveva succedergli, l'EDVAC. Col passare delle settimane le discussioni divennero sempre più astiose e gli esperti si divisero in due gruppi che essi stessi cominciarono a chiamare «gli ingegneri» e «i logici». John Presper Eckert, capo riconosciuto degli ingegneri, era giustamente orgoglioso di quello che era riuscito a fare con l'ENIAC. Si pensava che fosse impossibile, data la loro dissipazione termica, far funzionare tutte insieme quindicimila valvole termoioniche abbastanza a lungo da ottenere un qualsiasi risultato utile, ma Eckert, grazie a una progettazione molto accurata e insieme molto prudente, era brillantemente riuscito nell'impresa.

Le discussioni giunsero a una svolta quando, con grande disappunto di Eckert, John von Neumann, il più autorevole dei logici e sommo matematico, cominciò a far circolare (con la propria firma) la minuta di un rapporto sul progetto dell'EDVAC in cui era data scarsa attenzione ai dettagli ingegneristici, ma veniva proposta quella struttura logica fondamentale del calcolatore che va ancor oggi sotto il nome di «architettura di von Neumann».

Pur essendo una meraviglia dell'ingegneria, sul piano logico l'ENIAC era un disastro. Fu la sua competenza in questo campo (e quello che aveva imparato da un altro logico, l'inglese Alan Turing) a permettere a von Neumann di capire che in realtà una macchina calcolatrice è una macchina logica nei cui circuiti trova corpo un distillato delle intuizioni, elaborate nell'arco di vari secoli, di una straordinaria successione di pensatori. Oggi, mentre la tecnologia informatica avanza a velocità tale da togliere il respiro e ammiriamo le imprese (senz'altro degne di nota) degli ingegneri, è fin troppo facile dimenticare quei logici le cui idee le hanno rese possibili. Questo libro racconta la loro storia.

| << |  <  |  >  | >> |

Pagina 19

L'IDEA MERAVIGLIOSA DI LEIBNIZ



Leibniz nacque nel 1646 a Lipsia, in una Germania frammentata in una miriade di entità politiche separate e devastata da un conflitto che durava ormai da tre decenni - la guerra dei Trent'anni terminò due anni dopo e, benché vi prendessero parte tutte le principali potenze europee, venne combattuta principalmente in terra tedesca. A sei anni perse il padre, professore di filosofia morale all'università; a otto, superando l'opposizione dei precettori, ottenne di accedere alla biblioteca paterna e in breve tempo imparò a leggere correntemente il latino.

Destinato a diventare uno dei massimi matematici di tutti i tempi, il giovane Gottfried apprese i primi elementi di questa disciplina da insegnanti che non avevano idea della rivoluzione matematica in atto in altre parti d'Europa. In Germania perfino la geometria elementare di Euclide era a quei tempi matematica superiore, e veniva studiata solo all'università; ma Leibniz era ancora un ragazzino quando i precettori gli presentarono il sistema logico elaborato da Aristotele oltre due millenni prima, e ciò risvegliò la sua passione e il suo talento per la matematica. Affascinato dalla divisione aristotelica dei concetti in «categorie», concepì di lì a poco quella che avrebbe definito un'«idea meravigliosa»: creare un alfabeto speciale, i cui elementi non stessero per suoni ma per concetti. Un linguaggio basato su un simile alfabeto avrebbe permesso di stabilire, per mezzo di calcoli simbolici, quali dei suoi enunciati erano veri e quali relazioni logiche intercorrevano fra essi. Leibniz non si emancipò mai dall'influsso di Aristotele e a tale visione rimase fedele per il resto della sua vita.

| << |  <  |  >  | >> |

Pagina 31

LA CARATTERISTICA UNIVERSALE



Che ne fu dell'idea meravigliosa del giovane Leibniz, del suo audace sogno di trovare un autentico alfabeto del pensiero umano e gli strumenti di calcolo adatti a manipolare i suoi simboli? Pur essendosi rassegnato all'idea di non poter realizzare questo progetto da solo, egli non perse mai di vista l'obiettivo e continuò a pensarci e scriverne per tutta la vita. Gli era chiaro che sia i segni speciali usati in aritmetica e algebra, sia i simboli della chimica e dell'astronomia, sia quelli introdotti da lui stesso per il calcolo differenziale e integrale rappresentavano altrettanti paradigmi che mostravano tutta l'importanza di un simbolismo ben scelto. Nella terminologia di Leibniz un sistema simbolico con queste proprietà era una caratteristica; ciascuno degli esempi citati era una caratteristica reale, in cui ogni singolo simbolo rappresentava un'idea ben definita in modo naturale e adeguato - a differenza dei simboli, privi di significato, dell'alfabeto. Ma quello di cui c'era bisogno, pensava Leibniz, era una caratteristica universale, cioè un sistema di simboli che non solo fosse «reale» ma abbracciasse anche il pensiero umano in tutta la sua estensione.

| << |  <  |  >  | >> |

Pagina 61

III
FREGE: DALLA GRANDE CONQUISTA AL CROLLO



Nel giugno del 1902 arrivò a Jena (una città medioevale che molti anni dopo sarebbe diventata parte della DDR) una lettera spedita al cinquantatreenne Gottlob Frege dal giovane filosofo inglese Bertrand Russell. Frege era convinto di avere fatto scoperte importanti, fondamentali, ma la sua opera era quasi del tutto ignorata, per cui dovette fargli piacere leggere: «Sono d'accordo con lei su tutte le cose essenziali... Trovo nei suoi lavori analisi, distinzioni e definizioni che invano si cercherebbero nell'opera di altri logici». Ma la lettera proseguiva dicendo: «C'è un solo punto nel quale ho incontrato una difficoltà». Frege capì immediatamente che quella «difficoltà» isolata significava il crollo del lavoro di tutta la sua vita; né gli era di molto conforto che Russell aggiungesse: «La trattazione rigorosa della logica nelle questioni fondamentali... è rimasta molto indietro; nella sua opera ho trovato la migliore elaborazione del nostro tempo, e mi sono permesso quindi di esprimerle il mio profondo rispetto».

Frege rispose subito a Russell, riconoscendo l'esistenza del problema. Il secondo volume del trattato nel quale applicava i suoi metodi logici alla fondazione dell'aritmetica era già in tipografia, ed egli vi aggiunse in tutta fretta un'appendice che cominciava con queste parole: «Per uno scienziato non c'è niente di peggio che veder crollare i fondamenti del suo lavoro proprio quando questo è stato appena completato. Io sono stato messo in tale situazione da una lettera del signor Bertrand Russell».

Molti anni dopo - ne erano passati oltre quaranta dalla morte di Frege - lo stesso Russell ebbe occasione di scrivere: «Quando penso ad atti d'integrità e magnanimità, mi rendo conto che fra tutti quelli che conosco non c'è niente che regga il confronto con la dedizione di Frege alla verità. L'opera della sua vita era sul punto di essere completata, gran parte di essa era stata ignorata a tutto vantaggio di uomini infinitamente meno capaci, il secondo volume stava per essere pubblicato, e quando egli scoprì che il suo assunto fondamentale era errato la lieta e serena dirittura intellettuale con cui reagì prevalse chiaramente su ogni sentimento personale di delusione. Fu una cosa quasi sovrumana, una dimostrazione significativa di ciò di cui sono capaci gli esseri umani se è al lavoro creativo e alla conoscenza che si dedicano, e non all'impresa - tanto più grossolana - di emergere e farsi conoscere».

Il filosofo contemporaneo Michael Dummett, la cui opera è in buona parte ispirata alle idee di Frege, scrive sull'«integrità» di quest'ultimo in tono ben diverso: «Per me c'è una certa ironia nel fatto che l'uomo alle cui opinioni filosofiche ho dedicato, anno dopo anno, lunghe riflessioni fosse, almeno nell'ultima parte della sua vita, un razzista virulento, e più specificamente un antisemita ... Il [suo] diario ci mostra un Frege di estrema destra, ferocemente avverso al sistema parlamentare, ai democratici, ai liberali, ai cattolici, ai francesi e soprattutto agli ebrei, che secondo lui avrebbero dovuto essere privati dei diritti politici, e preferibilmente espulsi dalla Germania. [Quando lo lessi] ne fui profondamente scosso perché veneravo Frege, nel quale vedevo un uomo assolutamente razionale».

| << |  <  |  >  | >> |

Pagina 74

FREGE INVENTA LA SINTASSI FORMALE



La logica di Boole non era che un nuovo ramo della matematica, da sviluppare usando i normali metodi matematici; solo che questi metodi comprendono, ovviamente, il ragionamento logico, e vi è in qualche modo una circolarità in questo usare la logica per sviluppare la logica stessa. Per Frege la cosa era inaccettabile. Quello che intendeva dimostrare era che tutta la matematica poteva essere basata sulla logica, e perché la dimostrazione fosse convincente egli doveva trovare un modo di sviluppare la sua logica senza usare la logica stessa. La sua soluzione consistette nel creare, con la Begriffsschrift, un linguaggio artificiale che aveva regole grammaticali - o, come oggi preferiamo dire, sintattiche - di una precisione spietata. In tal modo diventava possibile presentare le inferenze logiche come operazioni puramente meccaniche condotte per mezzo di cosiddette «regole d'inferenza» che riguardavano solo le configurazioni in cui erano disposti i simboli. Fu così che nacque, fra l'altro, il primo esempio di linguaggio formale artificiale dotato di una sintassi precisa; da questo punto di vista la Begriffsschrift fu l'antenata di tutti i linguaggi di programmazione comunemente usati al giorno d'oggi.

| << |  <  |  >  | >> |

Pagina 80

FREGE E IL SOGNO DI LEIBNIZ



Frege era convinto che la sua Begriffsschrift fosse la realizzazione del linguaggio logico universale invocato da Leibniz - e in effetti la sua logica è in grado di trattare gli argomenti più disparati -, ma Leibniz ne sarebbe stato probabilmente deluso, poiché restava al di qua delle sue aspirazioni per almeno due aspetti. Egli aveva immaginato, infatti, un linguaggio non solo utilizzabile per trarre deduzioni, ma in grado anche di inglobare in maniera automatica tutte le verità della scienza e della filosofia. Queste ingenue aspettative erano concepibili solo prima dei giganteschi progressi delle scienze realizzati nel Settecento e nell'Ottocento e basati tanto sulla riflessione teorica quanto su accurate sperimentazioni.

Dal punto di vista della nostra storia, tuttavia, è più utile sottolineare un'altra limitazione della logica di Frege. Leibniz aveva sognato un linguaggio che fosse anche uno strumento di calcolo efficiente, che permettesse di eseguire in modo sistematico inferenze logiche manipolando soltanto dei simboli; nel sistema di Frege, invece, tutte le deduzioni, a parte le più elementari, sono insopportabilmente complesse. E non solo le deduzioni sono lunghe e tediose, ma le regole di Frege non forniscono alcun procedimento di calcolo che permetta di stabilire se una certa conclusione che c'interessa sia o non sia derivabile da determinate premesse nella logica della Begriffsschrift.

Poiché, tuttavia, la Begriffsschrift riassumeva tutta la logica usata nella matematica ordinaria, divenne possibile studiare l'attività matematica usando i suoi stessi metodi; e queste ricerche produssero, come vedremo, alcuni risultati imprevisti e molto notevoli. La ricerca di un metodo di calcolo in grado di stabilire se una determinata inferenza della logica fregeana era corretta toccò il punto culminante nel 1936, quando si dimostrò che non esiste nessun metodo generale di questo tipo: una pessima notizia per il sogno di Leibniz. Tuttavia fu proprio dimostrando questo risultato negativo che Alan Turing scoprì una cosa che avrebbe riempito Leibniz di gioia: che in linea di principio si sarebbe potuta costruire un'unica macchina universale capace di eseguire ogni possibile calcolo da sola.

| << |  <  |  >  | >> |

Pagina 181

L'«ENTSCHEIDUNGSPROBLEM» DI HILBERT



Leibniz sognava una ragione umana ridotta a puro calcolo e a grandi macchine meccaniche che consentissero l'esecuzione dei calcoli; Frege era stato primo a produrre un sistema di regole capace dì rendere conto in modo plausibile di tutti i ragionamenti deduttivi umani; e Gödel, nella tesi di dottorato del 1930, aveva dimostrato, rispondendo a una domanda posta da Hilbert due anni prima, che le regole di Frege erano complete. Hilbert cercava anche procedure di calcolo esplicite che, date alcune premesse e una ipotetica conclusione, scritte nella notazione di quella che oggi chiamiamo logica del primo ordine, permettessero sempre di stabilire se le regole di Frege consentissero di derivare la seconda dalle prime; la ricerca di queste procedure è nota come l' Entscheidungsproblem (letteralmente «problema della decisione») di Hilbert. Naturalmente i sistemi di procedure di calcolo destinati alla soluzione di problemi specifici non erano una novità, e anzi il programma tradizionale degli studi matematici consisteva in buona parte di queste procedure, note anche come algoritmi. I primi algoritmi che impariamo sono l'addizione, la moltiplicazione, la sottrazione e la divisione; poi vengono quelli che servono a manipolare le espressioni algebriche e risolvere le equazioni, e se arriviamo a studiare il calcolo infinitesimale impariamo a usare anche quelli originariamente creati da Leibniz. Hilbert però cercava un algoritmo di un'ampiezza senza precedenti; in linea di principio l'algoritmo per l' Entscheidungsproblem avrebbe dovuto ridurre tutti i ragionamenti deduttivi umani a calcolo bruto, realizzando in buona misura il sogno di Leibniz.

| << |  <  |  >  | >> |

Pagina 187

In conclusione, ogni calcolo può essere inteso come un processo con le seguenti caratteristiche:

* Viene eseguito scrivendo dei simboli nelle caselle di un nastro di carta.

* A ogni passo la persona che esegue il calcolo fa attenzione al simbolo scritto in una sola di queste caselle.

* L'azione successiva dipenderà da questo simbolo e dallo stato mentale della persona.

* Tale azione consisterà nello scrivere un simbolo nella casella osservata ed eventualmente nello spostare l'attenzione sulla casella immediatamente a destra o a sinistra.

Č facile vedere che la persona può essere sostituita da una macchina nella quale il nastro - che possiamo pensare come un nastro magnetico ove i simboli scritti sono rappresentati da informazioni in codice - si muove avanti e indietro, mentre agli stati mentali dell'operatore corrispondono differenti configurazioni delle componenti interne della macchina. Quest'ultima va progettata in modo da scandire, istante per istante, uno solo dei simboli del nastro. A seconda della sua configurazione interna e del simbolo scandito, scriverà sul nastro un certo simbolo (che rimpiazzerà quello scandito), dopodiché o continuerà a scandire la stessa casella o si sposterà di un passo verso destra o verso sinistra. Ai fini del calcolo non importa come sia costruita la macchina o addirittura di che cosa sia fatta; conta solo che abbia la capacità di assumere un certo numero di configurazioni (dette anche stati) distinte e che in ognuna di esse si comporti in modo adeguato.

Il punto non è la costruzione effettiva di una di queste macchine di Turing, che dopotutto sono solo astrazioni matematiche; ciò che importa è che questa analisi della nozione di calcolo abbia consentito di stabilire che tutto ciò che è calcolabile mediante un processo algoritmico può essere calcolato da una macchina di Turing. Se quindi si può dimostrare che un certo compito non può essere eseguito da una macchina di Turing, è certo che non esiste un processo algoritmico in grado di eseguirlo; e fu così che Turing dimostrò che non esisteva un algoritmo per l' Entscheidungsproblem. Oltre a ciò, Turing mostrò come creare una singola macchina di Turing capace di fare, senza aiuti esterni, tutto ciò che poteva essere fatto da una qualsiasi macchina di Turing: era un modello matematico di calcolatore generale.

| << |  <  |  >  | >> |

Pagina 228

Dopo l'esperienza con l'ENIAC e il Colossus, quelli che erano interessati alla strumentazione di calcolo non erano più disposti ad accettare velocità operative inferiori a quelle che sapevano di poter raggiungere con l'elettronica a valvole. Per un calcolatore di carattere generale ispirato al modello della macchina universale di Turing occorreva un dispositivo fisico capace di assicurargli una memoria abbastanza grande. Sul nastro della macchina universale astratta, per passare da una casella a un'altra bisognava compiere una faticosa serie di spostamenti di una casella per volta - e per gli scopi di Turing nel 1936 questo andava benissimo, visto che le sue macchine teoriche non erano state pensate per finalità applicative; ma un calcolatore elettronico veloce aveva bisogno di una memoria veloce, e per questo era indispensabile che i dati immagazzinati in ogni sua parte fossero direttamente accessibili in un solo passo che la memoria fosse cioè ad accesso casuale.

Nei tardi anni Quaranta c'erano due possibili candidati alla funzione di memoria di un calcolatore: la linea di ritardo acustica e il tubo catodico. La linea di ritardo era un tubo pieno di mercurio in cui i dati erano immagazzinati sotto forma di onde acustiche che rimbalzavano da un estremo all'altro; nei tubi catodici - che oggi sono conosciutissimi, perché servono per la televisione e i monitor dei PC diventavano invece configurazioni della superficie del tubo stesso. Entrambi i sistemi ponevano problemi ingegneristici molto seri, ma fortunatamente per il progetto EDVAC Eckert era riuscito a migliorare di molto la linea di ritardo per l'uso militare nei radar. (Nei primi anni Cinquanta, invece, furono i tubi catodici a diventare il substrato preferito per la memoria).

Quando si rievoca questo periodo, di solito parlando dei nuovi calcolatori che proprio allora venivano creati si dice che realizzavano il concetto di «programma memorizzato», perché i programmi da eseguire venivano memorizzati, per la prima volta, dentro la macchina. Purtroppo questa terminologia ha finito per oscurare il fatto che l'aspetto veramente rivoluzionario di tali calcolatori era il loro carattere generale e universale, mentre il programma memorizzato era semplicemente un mezzo in vista di un fine. La concezione di Turing e von Neumann è così semplice, ed è penetrata così a fondo nel nostro attuale clima intellettuale, che oggi ci è difficile capire quanto fosse radicale la sua novità; è molto più facile apprezzare l'importanza di una nuova invenzione, come la linea di ritardo acustica, che quella di una nuova idea astratta. Anni dopo, Eckert affermò di avere avuto l'idea del cosiddetto programma memorizzato ben prima che entrasse in scena von Neumann, e presentò come prova un appunto in cui parlava di programmazione automatica immagazzinata su dischi in lega metallica o con microincisioni. Nel documento non c'è nulla che richiami, anche lontanamente, il concetto di calcolatore generale con una memoria grande e flessibile nella quale coabitano istruzioni e dati. Ma caratterizzare il grande progresso che era stato realizzato con il concetto di programma memorizzato significa proprio confondere le due cose.

| << |  <  |  >  | >> |

Pagina 236

Č interessante mettere a confronto il modo in cui von Neumann vedeva il lavoro di programmazione con quello di Turing. Von Neumann lo chiamava «codifica», ed è chiaro che per lui si trattava di una mansione da impiegato che non richiedeva grande intelligenza. Un aneddoto molto significativo racconta che nel centro di calcolo dell'Institute for Advanced Study gli studenti dovevano tradurre a mano le istruzioni per i calcolatori, scritte per essere leggibili da esseri umani, in linguaggio macchina. Un giovane e baldanzoso programmatore propose di costruire un assemblatore che facesse il lavoro automaticamente; pare che von Neumann, arrabbiatissimo, gli avesse risposto che sarebbe stato uno spreco usare un prezioso strumento scientifico per fare del semplice lavoro d'ufficio. Nel rapporto sull'ACE Turing afferma invece che programmare un calcolatore «sarà molto affascinante. Non dovrebbe alla lunga diventare un lavoraccio ingrato, perché qualunque processo che sia davvero meccanico può essere passato alla macchina».

| << |  <  |  >  | >> |

Pagina 243

IX
OLTRE IL SOGNO DI LEIBNIZ



Nel suo discorso ai membri della London Mathematical Society Turing aveva detto: «Mi aspetto che le macchine calcolatrici digitali stimoleranno alla lunga un notevole interesse per la logica simbolica ... Il linguaggio attraverso cui si comunica con queste macchine... forma una specie di logica simbolica». Il nesso fra logica e calcolo cui allude Turing è stato uno dei temi principali di questo libro, ma è possibile che qualche lettore si chieda: «Come può essere che le due cose siano correlate? Che cos'ha a che fare l'aritmetica col ragionamento?». Una possibile chiave di comprensione è fornita da un'espressione colloquiale inglese nella quale il verbo to reckon non ha il significato solito di «calcolare»:

I «reckon» he's sweet-talking her in the moonlight right now.

Immagino che in questo momento le stia dicendo paroline dolci al chiaro di luna»].

Il malinconico protagonista di un film di serie B parla del rivale, non sapendo di avere già conquistato il cuore di lei. Egli non sta certo pensando all'aritmetica: le sue parole rispecchiano un ragionamento, basato sulla presunta conoscenza delle subdole arti del rivale. Il legame tra calcolo e ragionamento suggerito da questo uso della parola reckon è tuttavia autentico e profondo: il conteggio numerico è esso stesso una forma di ragionamento, e viceversa i ragionamenti degli esseri umani possono in molti casi essere considerati una forma di calcolo. Č molto interessante che questa correlazione, almeno a livello subliminale, venga generalmente percepita. Abbiamo questa percezione ad esempio quando qualcuno viene descritto come una persona «calcolatrice».

Il tentativo di ridurre il ragionamento logico a una serie di regole formali risale ad Aristotele, ed era alla base del sogno leibniziano di un linguaggio computazionale universale, nonché del successo di Turing nel dimostrare che la sua macchina universale poteva svolgere qualsiasi calcolo. Calcolo e ragionamento logico sono due facce della stessa medaglia; e questa intuizione viene usata non soltanto per programmare i calcolatori in modo che sappiano eseguire un'impressionante varietà di compiti, ma anche per progettarli e costruirli.

| << |  <  |  >  | >> |

Pagina 251

Turing e von Neumann furono mossi a paragonare il calcolatore al cervello umano per un'ottima ragione: sapendo che gli esseri umani sono capaci di pensare secondo schemi molto diversi, congetturarono che la nostra capacità di fare tante cose diverse sia dovuta alla presenza, nel nostro cervello, di un calcolatore universale. Ecco perché von Neumann fu tanto colpito da una teoria dei neuroni artificiali mentre si accingeva a progettare l'EDVAC. E i calcolatori universali possono soltanto eseguire algoritmi. «Gli esseri umani fanno ben poco calcolo nel senso letterale del termine» sostiene Searle. «Passiamo pochissimo del nostro tempo a far funzionare algoritmi». Ne è proprio sicuro? Quando ci chiedono: «Ha mai letto niente di Charles Dickens?», la risposta (sì o no) emerge immediata dal profondo. Come ci riusciamo? Non ne abbiamo idea, ma l'ipotesi che vi sia di mezzo un qualche tipo di processo algoritmico che accede all'informazione richiesta partendo da una base dati che abbiamo nel cervello è, almeno a prima vista, molto attraente. Le ricerche sul modo in cui un calcolatore rielabora i dati visivi grezzi che gli arrivano da una o più telecamere fanno molto riflettere sul tipo di processo necessario per produrre quell'immagine visiva così netta che ci viene fornita dal nostro cervello a partire dai dati grezzi che dalla retina vanno al cervello stesso. Ora, noi non sappiamo che il nostro cervello fa queste cose seguendo degli algoritmi, ma sicuramente non sappiamo nemmeno che non le fa così.

Roger Penrose, illustre matematico e fisico matematico che ha scritto pagine bellissime sulla geometria dell'universo, si è chiesto se il funzionamento della mente umana sia fondamentalmente algoritmico. Adducendo il teorema d'incompletezza di Gödel, ha risposto con un energico «No!». Un modo per formulare il teorema di Gödel è il seguente:

Dato un algoritmo che produce, uno dopo l'altro, enunciati veri sui numeri naturali possiamo sempre ottenere un altro enunciato vero sui numeri naturali, che chiameremo «la proposizione di Gödel», che non è generato da questo algoritmo.

Secondo Penrose, nessuno specifico algoritmo che venga proposto come equivalente al funzionamento della mente sarà mai adeguato allo scopo perché con un atto di «intuito» possiamo vedere che la proposizione di Gödel per quell'algoritmo è vera. Questo argomento è profondamente sbagliato per una ragione che Turing aveva illustrato, quarant'anni prima, nella sua conferenza del 1947 alla London Mathematical Society. Turing aveva sottolineato che il teorema di Gödel è applicabile solo ad algoritmi che generano esclusivamente proposizioni vere, mentre nessun matematico umano può rivendicare l'infallibilità. Tutti commettiamo errori! Perciò nel teorema di Gödel non c'è niente che impedisca alle capacità matematiche della mente umana di essere equivalenti a un processo algoritmico che produca enunciati sia falsi sia veri.

Searle e Penrose respingono l'ipotesi che la mente umana, nei suoi aspetti essenziali, equivalga a un calcolatore, ma entrambi partono dal presupposto che - qualunque cosa sia - la nostra mente sia prodotta dal cervello, il quale è soggetto alle leggi della fisica e della chimica. Per parte sua Kurt Gödel era dispostissimo a credere che il cervello fosse effettivamente un calcolatore, ma rifiutava l'idea che non vi sia una mente oltre ciò che può fare il cervello umano. Qui la maggior parte dei lettori si renderà conto che al centro delle sue preoccupazioni c'era il classico problema mente-corpo. La sua convinzione che la mente dell'uomo sia, in qualche modo, indipendente dalla sua esistenza fisica era una forma di quello che va sotto il nome di dualismo cartesiano.

La discussione ci ha portati molto più in là del sogno di Leibniz, in un regno che sta tra filosofia e fantascienza. Sicuramente, se pensiamo a che cosa sono diventati i calcolatori dai tempi dei rapporti sull'EDVAC e l'ACE, ci rendiamo conto che è saggio evitare previsioni azzardate su quello che potranno o non potranno fare in futuro.

| << |  <  |  >  | >> |

Pagina 254

EPILOGO



Abbiamo seguito le vicende di un gruppo di brillanti innovatori, vissuti nell'arco di tre secoli, ognuno dei quali si è interessato, in un modo o nell'altro, della natura della ragione umana. La somma dei loro contributi individuali ha prodotto la matrice intellettuale dalla quale è uscito il calcolatore moderno. A parte Turing, nessuno di loro ha mai intravisto questo esito della sua opera. Leibniz guardava lontano, ma non fino a questo punto. Boole non poteva certo immaginare che la sua algebra della logica sarebbe stata usata per progettare complessi circuiti elettronici. Frege sarebbe stato stupito di scoprire che l'equivalente delle sue regole logiche era stato incorporato in programmi di deduzione automatica. Cantor, sicuramente, non immaginò mai le ramificazioni che avrebbe avuto il suo metodo della diagonale. Il programma di Hilbert, che doveva rendere sicuri i fondamenti della matematica, puntava in una direzione molto diversa. E Gödel, tutto preso com'era dalla vita della mente, non si occupò mai di applicazioni a congegni meccanici.

Questa storia vuole sottolineare la potenza delle idee e la vanità di ogni pretesa di prevedere dove ci porteranno. I duchi di Hannover credevano di sapere come Leibniz doveva occupare il suo tempo: lavorando alla storia della loro famiglia. Ma anche oggi accade fin troppo spesso che quelli che forniscono agli scienziati le risorse necessarie per vivere e lavorare cerchino di indirizzarli nelle direzioni che secondo loro hanno più probabilità di produrre rapidamente risultati. Tuttavia un simile tentativo non solo risulterà, verosimilmente, vano nei tempi brevi, ma - e questo è più importante - scoraggiando le ricerche prive di utilità immediata impoverirà il nostro futuro.

| << |  <  |