la Repubblica, 2 aprile 2017
Passeggiata con i numeri sulla soglia del mistero
Il mitico tempo dei primordi, osservava Elias Canetti, era popolato da figure, divine, umane e totemiche che, nel fissare un’immagine o una maschera, rappresentavano la salvezza dall’incessante fluidità del mondo di allora. Esse esprimevano al tempo stesso il processo della metamorfosi e il suo risultato. Perché non ipotizzare, allora, che la geometria e l’aritmetica dei pitagorici servissero a fissare delle forme nell’incessante metamorfosi che, nella loro dottrina, regolava i rapporti di parentela tra tutti i viventi? Un’ipotesi che il legame tra divinità e figure geometriche, stabilito da tempi remoti, rendeva ancora più plausibile. Ma un fatto decisivo è che l’aritmetica pitagorica, e la stessa concezione di numero, dipendevano dalla ripetuta costruzione di figure, come il quadrato, il triangolo o il pentagono, che rimanevano immutate a meno di un fattore di scala. Già allora, come in tempi più recenti, la matematica sembrava assumersi il compito di cercare l’invarianza nel cambiamento: le figure della geometria pitagorica erano forme di stabilizzazione nel divenire di un processo di calcolo.
Possiamo trovare un’eco di ciò negli algoritmi di oggi? Per capirlo conviene ricordare che in un celebre congresso a Parigi, nell’agosto del 1900, David Hilbert, figura di spicco del mondo scientifico del tempo, presentò un elenco di ventitré problemi ancora irrisolti. Il clima di quegli anni era improntato a una fede nel potere della mente di concepire teorie straordinarie, come le geometrie non-euclidee e i numeri transfiniti, e in quello che Félix Ravaisson, pochi anni prima, aveva chiamato “eroismo” della scienza. In sintonia con il clima di allora, Hilbert fu tentato, in quell’occasione, dalla questione suprema: può la mente del matematico risolvere qualsiasi problema le venga posto? Hilbert sosteneva che un problema ben formulato è sempre risolubile e il cammino intricato che seguiamo per conquistare verità nascoste può e deve avere sempre una conclusione, fosse pure quella di dimostrare l’impossibilità di trovare soluzioni. In polemica con il fisiologo tedesco Emil du Bois- Reymond, Hilbert dichiarava che mai il matematico sarà ridotto a dire “ignorabimus”.
Uno dei ventitré problemi si rivelò decisivo per il futuro sviluppo della scienza degli algoritmi. Bisognava scoprire se esiste un metodo universale per stabilire la verità o la falsità di un qualsiasi asserto in un linguaggio della logica formale che si chiama “calcolo dei predicati”. Nel tentare di risolvere questo problema, alcuni decenni più tardi, Alan Turing si trovò a indagare sul concetto stesso di metodo e intuì che questo doveva consistere in un algoritmo, un calcolo puramente meccanico, senza pensiero e senza coscienza. Il modello di un simile calcolo, che prese il nome di “macchina di Turing”, doveva servire a dare una definizione al concetto di computazione effettiva. Nel 1936 Alan Turing e Alonzo Church congetturarono che le condizioni generali di calcolabilità non sono imposte dallo stato di avanzamento nella progettazione dei calcolatori digitali, e neppure dal nostro ingegnarci nella costruzione di nuovi modelli di calcolo, ma hanno carattere universale. Secondo la tesi di Church- Turing ogni funzione che sia intuitivamente calcolabile può essere calcolata da una macchina di Turing o, equivalentemente, da una procedura ricorsiva. Ma più che di una tesi si trattava di un’ipotesi, perché è vano pretendere che una definizione formale come quella di macchina di Turing esprima a pieno titolo l’idea intuitiva di calcolabilità. Nel suo celebre articolo del 1936 Turing rendeva quasi umana la sua macchina, paragonandola al nostro computare su un foglio di carta. Altri l’hanno paragonata a una macchina da scrivere, con una testina mobile in grado di stampare su un nastro, uno alla volta, dei simboli. La testina poteva anche “leggere” un simbolo in una data posizione, e dedurre da questo, in modo deterministico, la mossa successiva dell’algoritmo. La macchina si rivelò come l’incarnazione plausibile proprio di quel metodo a cui si era riferito Hilbert, e Turing poté dimostrare che non esiste una procedura automatica che accerti in ogni caso se una macchina, con un insieme assegnato di dati d’ingresso, porta a termine in un numero finito di passi il suo processo. Questo gli consentiva di dimostrare che il problema posto da Hilbert non è risolubile. In termini più generali (e suggestivi), la matematica non poteva essere ridotta a una computazione meccanica. Il descrivere la macchina come un congegno non ne alterava il carattere matematico, ma sarebbe stato pure fuorviante prescindere del tutto dalla metafora meccanica. Fin dall’inizio si profilava, nell’algoritmo, la combinazione di due ambiti opposti: l’astrattezza matematica e la materialità del dispositivo, che sarebbe diventato, più tardi, lo stesso calcolatore digitale.
Le parole per descrivere tutto ciò non sono irrilevanti. Turing parlava dell’algoritmo come di un processo che, da un insieme di dati iniziali, portasse a un risultato in un numero finito di passi. Il prodotto abc di tre numeri a, b e c è una semplice formula, ma non un algoritmo, almeno finché non stabiliamo se cominciare a moltiplicare il primo numero per il secondo oppure il secondo per il terzo. La proprietà associativa della moltiplicazione non lascia vedere differenze, ma i due processi, svolti in modo automatico, possono dare risultati ( ab) c e a( bc) completamente diversi tra loro.
Pensato come un processo, come un’elaborazione nel tempo di un insieme di dati, l’algoritmo ci riporta all’idea di mobilità che fa da sfondo a un concetto della filosofia greca, quello di kynesis, da cui derivano cinetico e cinematica. Però il termine greco poteva designare, oltre ai movimenti nello spazio, anche le più diverse trasformazioni che si registrano in natura, comprese le metamorfosi che riducono ogni cosa, come recitava il Pitagora di Ovidio, a immagine precaria ed errabonda. Il pensiero greco era segnato dall’idea che ogni cambiamento è sempre in altro, e può implicare una perdita d’identità: l’essere umano che cresce non è più quello che era, tanto che, argomentavano gli antichi sofisti, un debito contratto diversi anni addietro non ha più valore, perché la persona che l’ha stipulato non è più la stessa di prima.
Anche l’enumerazione è una specie di kynesis, e così pure l’algoritmo di Turing. Ma ogni enumerazione si compie grazie a un’operazione fissata, che consiste nell’aggiungere ripetutamente, a ogni numero, un’unità. Anche per questo motivo Descartes, nella Règle VII, vedeva nel semplice atto di enumerare un criterio di conoscenza certa e infallibile. Nelle moderne teorie, come nella matematica antica, l’algoritmo sembra offrire analoghe garanzie di stabilità e di invarianza: è un movimento che si prolunga iterativamente, producendo sempre qualcosa di nuovo, ma senza sconfinare in elementi alieni o inconoscibili, e mirando a raggiungere un risultato in un tempo finito. Per questa ragione il processo algoritmico, pur contrassegnato dalla novità e dal cambiamento, poteva e può ancora considerarsi un presupposto della stessa epistéme, che è il contrario dell’instabilità e della mutevolezza.
Ma la definizione di algoritmo, come meccanismo ricorsivo o come macchina di Turing, lascia pure intravedere ciò che algoritmo non è. Rispetto alla pura enumerazione, l’essere alieno, non calcolabile, subentrava ora, negli sviluppi della scienza del calcolo del XX secolo, con tecniche analoghe a quelle che ci fanno riconoscere la non numerabilità del continuo. Turing dimostrava che i numeri calcolabili, le cui cifre decimali sono valutabili da una macchina, formano nel complesso un insieme numerabile; ma questo insieme lascia aperto, fuori di sé, un baratro di incalcolabilità paragonabile a quello dei numeri irrazionali, un territorio alieno che la mente umana non riesce a catturare se non per via di complesse costruzioni teoriche, non sempre adeguate a quel principio di realtà che anche la matematica si sforza di rispettare. I numeri e le figure ci distolgono da quel baratro, ma non fino al punto da poterlo ignorare.