You are on page 1of 9

Innito completato vs.

incompleto in aritmetica
Edward Nelson Dipartimento di matematica, Universit` di Princeton a I numeri sono 0, 1, 2, 3, . . . . I numeri costituiscono linnito pi` u semplice, e dunque se vogliamo capire linnito ci conviene di tentare di capire i numeri. Invece di usare i simboli 1, 2, ecc. di origine indiana, usiamo la notazione della logica matematica: i numeri sono 0, S0, SS0, SSS0, . . . dove si pu` leggere S come successore. Questa notazione esprime chiarao mente lidea che i numeri si ottengono da un processo di contare, luno dopo laltro. Ci sono almeno due modi diversi da pensare ai numeri: come un innito completato oppure come un innito incompleto. Non faremo un errore grave se chiamiamo questi il modo platonico (P) e il modo aristotelico (A). Ora, ho gi` fatto un grande errore in questa conferenza a causa a di una trappola di linguaggio. Ho parlato di P e A come due modi di pensare a i numeri. Ma vedremo che P e A danno due sistemi di numeri diversi, non due modi di pensare allo stesso sistema. Cominciamo con P, che ` il punto di vista della matematica cone temporanea. I numeri costituiscono un innito completato notato N. Sintende che i variabili x, y, e cos` via, sono elementi di N. La propriet` a fondamentale di N ` linduzione: e Ipotesi : 0 ha la propriet` p ; a se x ha la propriet` p, allora Sx ha la propriet` p. a a Conclusione: per ogni x, x ha la propriet` p. a La prima ipotesi ` la base e la seconda ` il passo induttivo. Per un e e numero specico, ad esempio SSS0, non ` necessario assumere linduzione e per dimostrare la conclusione dalle ipotesi. Infatti, supponiamo p(0). Allora, usando successivamente il passo induttivo, otteniamo p(S0), p(SS0), e inne p(SSS0). Cionondimeno, linduzione ` un assioma potente e e molte propriet` dei numeri sono dimostrabili soltanto tramite linduzioa ne. Ecco un esempio. 1

Sia p la propriet` di x seguente: esiste un numero y non zero dia visibile da ogni numero z non zero tale che z x. Sostengo che ogni numero x ha la propriet` p. Certo che 0 ha la propriet` p (sia y = S0). a a Supponiamo che x abbia la propriet` p, e dunque che esiste un numero y a non zero divisibile da ogni numero z non zero tale che z x. Per induzione, ci resta soltanto di dimostrare il passo induttivo, che Sx ha la propriet` p; cio`, che esiste un numero y non zero divisibile da ogni a e numero z non zero tale che z Sx. Ma ` vero: sia y = y Sx e conside eriamo qualunque numero z non zero con z Sx. Allora o z x, nel qual caso esso divide y e dunque divide y = y Sx, oppure z = Sx, nel qual caso pure esso divide y, ci` che conclude la dimostrazione. o Nei primi anni del novecento, Bertrand Russell e Henri Poincar e scambiarono polemiche sopra la natura dellinduzione. Secondo Poincar, linduzione ` un principio logico, una specie di sillogismo innito. e e Russell sostenne che linduzione ` soltanto una denizione verbalei nue meri sono deniti come quegli oggetti che ubbidiscono allinduzione. N e luno n laltro chiam` in questione la legitimit` dellinduzione. e o a Nella matematica contemporanea, il punto di vista di Russell prevale. Oggi il solito fondamento della matematica ` la teoria degli insiemi, e teoria di Zermelo-Fraenkel con lassioma di scelta (ZFC). Le propriet` a sono reicate e diventano insiemi. Il numero 0 ` denito come linsieme e vuoto, senza elementi. Per ogni insieme x, si denisce il suo successore Sx come linsieme i cui elementi sono gli elementi di x pure che linsieme x stesso. Si dice che un insieme X ` induttivo se 0 ` un elemento di X e e e se ogni volta che x ` un elemento di X, allora anche il suo successore Sx e ` elemento di X. Lassioma dellinnito di ZFC asserisce che esiste un e insieme induttivo. Poi si dimostra che esiste un unico insieme induttivo minimale e si denisce N, linsieme di tutti i numeri, come questo insieme. Detto verbalmente, tutto ci` riviene a questo: una propriet` ` ino ae duttiva se e solo se sodisfa alla base e al passo induttivo; un oggetto ` un e numero se e solo se ha ogni propriet` induttiva. Cos` una propriet` che a a gli oggetti possono avere, quella di essere un numero, ` denita tramite e la collezione di tutte le propriet` che possono avere gli oggetti. Questa a ` una denizione impredicativa. Limpredicativit` disturba profondae a mente alcuni pensatori; altri non vedono nessun problema. La matematica contemporanea ` completamente impredicativa. e Quale fondamento per laritmetica, questa denizione non sodisfa. Certo che laritmetica, la teoria dei numeri, ` la teoria matematica la e pi` primitiva. Ma la si basa sulla teoria, ben pi` sosticata, degli inu u siemi. Inoltre, il procedimento di reicare le propriet` come insiemi a rimpiazzando una propriet`, concetto intensionale, con linsieme estena 2

sionale di tutti gli oggetti che hanno la propriet`conduce a contradiza zioni ben note se non si prende cura, come Russell stesso scopr` nel suo paradosso famoso dellinsieme di tutti gli insiemi che non sono elementi di se stessi. Strettamente legata allinduzione ` la costruzione di numeri per e mezzo della ricorsione primitiva. Questa si fa specicando prima il valore quando y = 0 (la base) e poi il valore per Sy per mezzo del valore per y (il passo ricorsivo). Allora, per esempio, il valore per y = SSS0 ` e determinato: il valore per y = 0 ci ` dato, da questo otteniamo il valore e per y = S0, poi il valore per y = SS0, e inne il valore per y = SSS0. Introduciamo laddizione +, la moltiplicazione , lesponenziazione , e la super-esponenziazione , e cos` via, come segue: x+0 x 0 x0 x0 = = = = x, 0, S0, S0, x + Sy x Sy x Sy x Sy = = = = S(x + y); x + (x y); x (x y); x (x y);

e cos` via. Allora x+y x y xy xy = = = = S . . . Sx x+ ... +x x ... x x ... x con con con con y y y y occorrenze occorrenze occorrenze occorrenze di di di di S, x, x, x,

e cos` via. Queste sono ricorsioni primitive. Ackermann dimostr` come o andare inoltre alle ricorsioni primitive. Notiamo F0 , F1 , F2 , F3 , e cos` via, le funzioni +, , , , e cos` via. Allora, una versione della fun zione Ackermann ` la funzione A il cui valore su y ` A(y) = y Fy y. e e Questa funzione ` ricorsivaper qualsiasi y abbiamo un procedimento e meccanico per calcolare il valore A(y)ma la funzione cresce ben pi` u rapidamente di ogni funzione ricorsiva primitiva. Questa costruzione ` e un altro esempio del metodo diagonale di Cantor, metodo che Cantor us` per dimostrare che il continuo (i numeri reali) non ` numerabile, un o e innito pi` grande di N, metodo che anche ` alla base del paradosso di u e Russell e dei teoremi dincompletezza di Gdel. o Si vuole che lidea generale di funzione ricorsiva esprima il concetto di algoritmo. La parola algoritmo viene dal nome, alKhwarizmi, dellautore del trattato altamente inuente Al-Jabr wa-al-Muqabilah scritto circa nel 820 (e la parola algebra stessa proviene dal titolo del libro!). Ma passarono pi` di undici secoli prima che fosse ricercato il probu lema di denire il signicato di algoritmo, di denire il concetto di funzione ricorsiva. Il procedimento di Ackermann dimostra limpossibilit` a 3

di fare una denizione sintattica esplicita del concetto di funzione ricorsiva, perch` ci` permetterebbe di elencarle e poi la costruzione diagonale e o darebbe una nuova funzione ricorsiva. Il problema ` stato risolto in tre modi apparentemente diversi da e Church, Gdel, e Turing (rispettivamente professore allUniversit` di o a Princeton, socio permanente dellIstituto per lo Studio Avvanzato a Princeton, e studente allUniversit` di Princeton, noto con orgoglio di a paese), e queste tre denizioni si rivellarono equivalenti. Gdel stesso o ha detto che la denizione di Turing ` la migliore. Il lavoro di Turing e e costru` i fondamenti dellinformatica e il suo articolo [6] del 1936 ` in teressante ancora oggi, ma bisgona stare attenti al fatto che in questo articolo computer signica persona che calcola. Si pu` descrivere la denizione di Turing come segue. Considerio amo un programma computer (questo ` un oggetto sintattico concreto) e che prende i numeri come argomenti. Allora ` un algoritmo se e solo e se per ogni argomento, prima o poi il calcolo termina con un numero come valore (questo ` un concetto semantico astratto). Il problema di e decidere se o no un programma termina per ogni argomento non ` rie solvibile algoritmicamente; ci` signica che per un programma generale o non c` nessun modo per determinare se sia un algoritmo oltre che cere care fra tutti gli inniti argomenti possibili e per ognuno di essi aspettare pazientementeper sempre, se necessarioa vedere se il calcolo termina con un valore. Ecco linnito completato senza scherzi! (In uno dei libri del paese di Oz, lo Spaventapasseri dice, Pu` darsi che resteremo ino trappolati qu` per sempre! La Ragazza Mosaica chiede, Quanto dura ` il per sempre ? e lo Spaventapasseri risponde, E proprio questo che scopriremo subito.)

Ora facciamo una critica aristotelica (come la chiamo) di queste idee, considerando i numeri come un innito incompleto. Si pu` notare o che etimologicamente laggettivo nella locuzione innito incompleto ` e superuo, dato che la parola innito signica non nito (nel senso di no ho nito). Come abbiamo visto, linduzione e la ricorsione primitiva si basano sul concetto dei numeri come un innito completato. Introduciamo il concetto di un numero da contare. Questo ` un concetto primitivo e dellaritmetica-A, e piuttosto che tentare di denirlo, enumciamo gli assiomi che postuliamo per questo concetto. Questi assiomi sono la base dellinduzione e il passo induttivo, cio` e 4

0 ` un numero da contare; e se y ` un numero da contare, lo ` anche Sy. e e Ecco tutto quello che supponiamo riguardante questo concetto, e in particolare non postuliamo che tutti i numeri siano numeri da contare. Usando le cifre arabiche (cos` chiamate bench` siano dorigine indi e ana e fossero trasmesse allovest principalmente dal persiano alKhwarizmi), chiediamo se, dato un numero specico y denito per mezzo di una ricorsione primitiva, ad esempio y = 2 5 oppure y = 2 2 5, si pu` o dimostrare che ` un numero da contare. Ora, dire che c` una dimostrae e zon ovvia di y passi ` un ragionamento circolare, perch` i passi sono cose e e che si contano, e dunque i passi si possono contare solo se infatti y ` un e numero da contare. Si nota che 2 5 = 2 2 2 2 2 = 2 65536 ` e un numero super-astronomicamente grande, e che 2 2 5 ` uguale a e 2 . . . 2 con quel numero, 2 5, di occorrenze di 2. Facciamo le due denizioni seguenti: 1. x ` un numero additivo se e solo se per ogni numero da e contare y, anche x + y ` un numero da contare; e 2. x ` un numero moltiplicativo se e solo se per ogni numero e additivo y, anche x y ` un numero additivo. e Allora abbiamo i teoremi seguenti: 3. 4. 5. tare. 6. 7. 8. Se x ` un numero additivo, x ` un numero da contare. e e Se x ` un numero moltiplicativo, x ` un numero additivo. e e Se x ` un numero moltiplicativo, x ` un numero da cone e Se x e z sono numeri additivi, lo ` anche x + z. e Se x e z sono numeri moltiplicativi, lo ` anche x + z. e Se x e z sono numeri moltiplicativi, lo ` anche x z. e

Le dimostrazioni sono facili. Per 3, sia x un numero additivo. Applichiamo la denizione 1 a y = 0, che ` un numero da contare. Allora e x + 0 ` un numero da contare, ma x + 0 = x. e Per 4, sia x un numero moltiplicativo. Applichiamo la denizione 2 a y = 1, che ` un numero additivo, come facilmente si vede. Allora x 1 e ` un numero additivo, ma x 1 = x. e Notiamo che 5 ` conseguenza di 3 e 4. e Per 6, siano x e y numeri additivi, e sia y un numero da contare qualunque. Secondo la denizione 1, dobbiamo dimostrare che (x+z)+y ` un numero da contare. Notiamo che z + y ` un numero da contare, e e secondo la denizione 1, e dunque x + (z + y) ` un numero da contare, e sempre secondo la denizione 1. Ma x + (z + y) = (x + z) + y. 5

Per 7, siano x e z numeri moltiplicativi, e sia y un numero additivo qualunque. Secondo la denizione 2, dobbiamo dimostrare che (x + z) y ` un numero additivo. Notiamo che z + y ` un numero additivo, secondo e e la denizione 2, e che x + y ` un numero additivo, sempre secondo la e denizione 2. Dunque (x y) + (z y) ` un numero additivo secondo il e teorema 6. Ma (x y) + (z y) = (x + z) y. Per 8, siano x e z numeri moltiplicativi, e sia y un numero additivo qualunque. Secondo la denizione 2, dobbiamo dimostrare che (x z) y ` un numero additivo. Notiamo che z y ` un numero additivo, secondo e e la denizione 2, e dunque x (z y) ` un numero additivo, sempre secondo e la denizione 2. Ma x (z y) = (x z) y. Ora possiamo dimostrare che 2 5 ` un numero da contare. Ponie amo a0 = 2, a1 = a0 a0 , a2 = a1 a1 , . . . , a16 = a15 a15 . Allora a16 = 2 5. Si vede facilmente che 2 ` un numero moltiplicativo. e Applicando il teorema 8 seidici volte, vediamo che a1 , a2 , . . . , e a16 = 2 5 sono numeri moltiplicativi, e dunque 2 5 ` un numero da contare e secondo il teorema 5, ci` che conclude la dimostrazione. Ma nessuno mai o dimostrer` che 2 2 5 ` un numero da contare. a e Perch` non si pu` continuare la serie di denizioni e teoremi? Supe o poniamo di denire 9. x ` un numero esponenziabile se e solo se per ogni e numero moltiplicativo y, x y ` un numero moltiplicativo. e Ma allora non possiamo dimostrare 10. Se x e z sono numeri esponenziabili, lo ` anche x z. e La dicolt` ` che lesponenziazione non ` associativa; cio`, in genere a e e e x (z y) = (x z) y, e abbiamo usato lassociativit` delladdizione a e della moltiplicazione nei teoremi 6 e 8. Infatti, si pu` dimostrare il o seguente: non esiste una propriet` p tale che si pu` dimostrare che se a o p(x) allora x ` un numero da contare e che se p(x) e p(z) allora p(x z). e Questo teorema non ` facile; la dimostrazione impiega il teorema proe fondo di Hilbert e Ackermann sulleliminazione dei quanticatori. Vedi il capitolo 18 del libro dellautore Predicative Arithmetic [4]. Insomma, da un punto di vista A, lesponenziazione dei numeri non ` un concetto ben denito. Per conseguenza, la matematica-A ` e e molto pi` debole della matematica-P. Per esempio, il teorema sulla diu visibilit` che abbiamo dimostrato per linduzione non pu` essere staa o bilito. Ciononostante, per alcune ragioni vale la pena di perseguire la matematica-A. Una ragione ` che una quantit` veramente sorprendente e a 6

della matematica avvanzata pu` essere sviluppata da questo punto di o vista con grande simplicazione dei mezzi tecnici; vedi il libro dellautore Radically Elementary Probability Theory [5]. Unaltra ragione per sviluppare la matematica-A ` il suo legame coi e problemi della complessit` computazionale, campo molto attivo della a matematica e dellinformatica teorica. Ora esaminiamo questo legame. Turing, Church, e Gdel hanno risoltoa condizione che si accetti o N come innito completatoil problema cos` un algoritmo?. Con e lavvento dei computer si pone il problema, cos` un algoritmo fate ` emerso un consenso fra gli studenti della complessit` comtibile?. E a putazionale che la denizione giusta ` una funzione di tempo polinomiale. e Queste sono le funzioni tali che esistono una macchina di Turing (programma computer) e un polinomio tali che per ogni numero y il calcolo termina e d` un valore dopo al massimo (log y) passi. Questa ` una a e denizione complicata che a prima vista sembra piuttosto arbitraria. Ma Bellantoni e Cook [1] [2], e anche Leivant [3], hanno dato una denizione equivalente che si pu` descrivere come segue. o Consideriamo di nuovo la ricorsione primitiva. Vogliamo denire F (x, y), e a questo scopo specichiamo un valore quando y = 0 e poi specichiamo un valore per F (x, Sy) in termini di x e del valore per F (x, y): F (x, 0) = G(x), F (x, Sy) = H x, F (x, y) . Qu` G e H sono date in termini di 0, S, e funzioni gi` denite. Allora a abbiamo F (x, 0) = G(x), F (x, S0) = H x, F (x, 0) = H x, G(x) , F (x, SS0) = H x, F (x, S0) = H x, H x, G(x) , F (x, SSS0) = H x, F (x, SS0) = H x, H x, H x, G(x) ,

e cos` via no al valore di F (x, y). Anch` questo abbia senso, bisogna che y sia un numero da contare, e perch` la denizione ` una costruzione passo-a-passo da 0 a S0, a SS0, e e . . . , e inne a y, ma anche se y ` un numero da contare non sappiamo e che il valore F (x, y) ` un numero da contare (a meno che non facciamo il e postulato platonico che tutti i numeri sono numeri da contare). Una ricorsione predicativa ` una ricorsione primitiva tale che tutte le ricursioni e sono solamente sopra i numeri da contare. Vediamo come funziona questo. Non c` problema per laddizione: e x + 0 = x, x + Sy = S(x + y). 7

Questo ha senso per ogni numero x e ogni numero da contare y. Adesso supponiamo che ambo i numeri x e y sono numeri da contare. Allora non c` problema con la moltiplicazione: e x 0 = 0, x Sy = (x y) + x

dato che abbiamo denito predicativamente la somma di un numero qualunque, come x y, con un numero da contare, come x. Questi sono esempi della ricorsione predicativa. Ma lesponenziazione ` impredicae tiva. Nella costruzione x 0 = S0, x Sy = x (x y)

non si sa che il numero x y ` un numero da contarema la rie corsione predicativa per la moltiplicazione ` predicativamente denita e soltanto se il secondo argomento ` un numero da contare. E infatti, e lesponenziazione ` infattibile. e Bellantoni e Cook, e Leivant, hanno dimostrato che una funzione ` una funzione di tempo polinomiale (algoritmo fattibile) se e solo se ` e e costruita da una ricorsione predicativa. Questa ` una caratterizzazione e semplice e bella: non c` niente che riguardi le macchine di Turing o i e polinomi in questa descrizione, ma ` equivalente alla denizione complie cata gi` data. a

Per concludere, il pensare ai numeri come un innito incompleto ` un alternativo viabile e interessante al pensare ai numeri come un e innito completato, alternativo che conduce a grandi simplicazioni in alcune aree della matematica e che ha legami forti con la teoria della complessit` computazionale. a I due modi, P e A, di pensare ai numeri conducono a sistemi di numeri diversi. Quello che ` un numero nito per P non ` necessariamente e e numero nito per A. Nella matematica contemporanea, il concetto del nito viene denito tramite linnito completato N. Non esiste un concetto chiaro del nito in termini del quale si pu` denire linnito come il o non-nito. Nella matematica contemporanea, platonica, si va nel senso opposto e si denisce il nito come il non-innito. Forse dovremmo avere un congresso interdisciplinare sul nito. Come ha detto Orazio, Ci sono meno cose in cielo e in terra, Amleto, di quante la tua losoa abbia sognato. 8

Bibliograa [1] Stephen Bellantoni and Stephen Cook, A new recursion-theoretic characterization of the poly-time functions, Computational Complexity, 2:97110, 1992. [2] Stephen Bellantoni, Predicative Recursion and Computational Complexity, Ph.D. Thesis, University of Toronto, 1992.
ftp://ftp.cs.toronto.edu/pub/reports/theory/cs-92-264.ps.Z

[3] Daniel Leivant, Ramied recurrence and computational complexity I: Word recurrence and poly-time, in Peter Cole and Jerey Remmel, editors, Feasible Mathematics II, Perspectives in Computer Science, pages 320-343, Birkhauser-Boston, New York, 1994. [4] Edward Nelson, Predicative Arithmetic, Mathematical Notes #32, Princeton University Press, Princeton, New Jersey, 1986.
http://www.math.princeton.edu/~nelson/books/pa.pdf

[5] , Radically Elementary Probability Theory, Annals of Mathematics Studies, Number 117, Princeton University Press, Princeton, New Jersey, 1987.
http://www.math.princeton.edu/~nelson/books/rept.pdf

[6] A. M. Turing, On computable numbers, with an application to the Entscheidungsproblem, Proceedings of the London Mathematical Society, Series 2, 42, pp. 230265, 1936. Errata in 43, pp. 544546, 1937.
http://www.abelard.org/turpap2/tp2-ie.asp