Logica predicativa del prim’ordine Eugenio G. Omodeo∗ Anno accademico 2007/’08 Contents 1 Linguaggi per la logica predicativa del prim’ordine 1.1 Sintassi di un linguaggio predicativo . . . . . . . . . . . . . . . 1.2 Convenzioni sul lessico per la logica predicativa . . . . . . . . 1.3 Arricchimenti dei linguaggi predicativi . . . . . . . . . . . . . 1.3.1 Estensioni sintattiche come regole di riscrittura . . . . 1.4 Prime riflessioni sul metalinguaggio per i linguaggi predicativi 1.5 Appendice: Sottolinguaggi clausolari . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Semantica dei linguaggi predicativi 2.1 Interpretazioni di un linguaggio predicativo . . . . . . . . . . . . . . 2.2 Valutazione di un enunciato . . . . . . . . . . . . . . . . . . . . . . 2.3 Modelli e conseguenze logiche. Enunciati assurdi e validi . . . . . . 2.3.1 Universi e basi di Herbrand, e modelli di enunciati universali 2.4 ‘Ingegneria della conoscenza’ . . . . . . . . . . . . . . . . . . . . . . 2.5 Teorie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.6 Digressione sul concetto di formalismo . . . . . . . . . . . . . . . . 2.6.1 Che cos’è un formalismo? . . . . . . . . . . . . . . . . . . . 2.6.2 Correttezza e completezza . . . . . . . . . . . . . . . . . . . 2.6.3 Sistemi deduttivi, calcolo logico e consistenza . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 Esempi d’uso dei linguaggi predicativi: formalizzazione di teorie 3.1 Teorie sugli ordinamenti . . . . . . . . . . . . . . . . . . . . . . . . . . 3.1.1 Leggi dell’uguaglianza . . . . . . . . . . . . . . . . . . . . . . . 3.1.2 Teoria dei preordinamenti . . . . . . . . . . . . . . . . . . . . . 3.1.3 Teoria degli ordinamenti parziali . . . . . . . . . . . . . . . . . . 3.1.4 Teoria degli ordinamenti totali . . . . . . . . . . . . . . . . . . . 3.1.5 Teorie sugli ordinamenti densi . . . . . . . . . . . . . . . . . . . 3.2 Teorie su domini numerici . . . . . . . . . . . . . . . . . . . . . . . . . 3.2.1 Teoria dei numeri naturali con successore . . . . . . . . . . . . . 3.2.2 Aritmetica di Presburger . . . . . . . . . . . . . . . . . . . . . . 3.2.3 Aritmetica elementare con somma, prodotto ed esponenziazione ∗ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 5 6 7 9 9 12 . . . . . . . . . . 13 13 14 15 16 18 19 20 20 21 22 . . . . . . . . . . 23 23 23 24 24 25 25 26 26 26 26 Università degli Studi di Trieste, Dipartimento di Matematica e Informatica, via Alfonso Valerio 12/b, 34127 - Trieste. [email protected] 1 3.3 3.4 3.2.4 Aritmetica elementare di Peano . . . . . . . . . . . . . . . . . 3.2.5 Teoria dei numeri reali e teoria dei numeri complessi . . . . . Teorie deboli degli insiemi . . . . . . . . . . . . . . . . . . . . . . . . 3.3.1 Estensionalità, assiomi sull’aggiunta e la rimozione di elementi 3.3.2 Variante degli assiomi in un linguaggio piú ricco di simboli . . 3.3.3 Buona fondatezza dell’appartenenza . . . . . . . . . . . . . . . Geometria elementare . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 Questioni metamatematiche 4.1 Non-contraddittorietà di una teoria . . . . . . . . . . 4.1.1 Consistenza di un sistema deduttivo . . . . . . 4.2 Completezza di una teoria . . . . . . . . . . . . . . . 4.3 Decidibilità o indecidibilità di una teoria . . . . . . . 4.3.1 Teorie indecidibili e indecidibilità essenziale . 4.3.2 Semidecidibilità di una teoria . . . . . . . . . 4.3.3 Oltre la mera decidibilità . . . . . . . . . . . . 4.3.4 Frammenti decidibili di una teoria . . . . . . . 4.4 Assiomatizzabilità di una teoria . . . . . . . . . . . . 4.4.1 Assiomatizzabilità finita di una teoria . . . . . 4.4.2 Indipendenza fra assiomi, ed assiomatizzazioni . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . equipollenti . . . . . . . . . . . 5 Apparati deduttivi per la logica del prim’ordine 5.1 Sistemi deduttivi alla Hilbert . . . . . . . . . . . . . . . . . . . . . 5.1.1 Assiomi logici, derivabilità, inferenze . . . . . . . . . . . . . 5.1.2 Teorema di correttezza . . . . . . . . . . . . . . . . . . . . . 5.1.3 (*) Consistenza del calcolo predicativo . . . . . . . . . . . . 5.1.4 Teoremi di completezza, compattezza ed enumerabilità . . . 5.1.5 Varianti del formalismo hilbertiano qui proposto . . . . . . . 5.2 Sistemi di deduzione fondati sul principio di risoluzione . . . . . . . 5.2.1 Riduzione di enunciati a forma prenessa . . . . . . . . . . . 5.2.2 Skolemizzazione . . . . . . . . . . . . . . . . . . . . . . . . . 5.2.3 Teorema di Herbrand . . . . . . . . . . . . . . . . . . . . . . 5.2.4 Organizzazione di un dimostratore automatico . . . . . . . . 5.2.5 Principio di risoluzione . . . . . . . . . . . . . . . . . . . . . 5.2.6 Completezza del principio di risoluzione . . . . . . . . . . . 5.2.7 Algoritmo di unificazione . . . . . . . . . . . . . . . . . . . . 5.3 Sistemi equazionali . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.3.1 Un formalismo corretto e completo per il trattamento di sole 5.3.2 Il problema dell’unificazione . . . . . . . . . . . . . . . . . . 6 Svolgimento di esercizi selezionati . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . identità . . . . . . . . . . . . 27 28 28 28 29 30 30 . . . . . . . . . . . 32 32 34 34 34 35 36 36 36 36 36 37 . . . . . . . . . . . . . . . . . 37 37 37 39 40 41 42 42 42 44 45 45 46 46 46 46 47 48 48 Introduzione Quando una proposizione italiana viene tradotta in un enunciato del linguaggio proposizionale, essa si riduce ad uno scheletro in cui sopravvive ben poco della struttura e del significato originari. La traduzione può tuttavia mettere in risalto, in alcuni casi fortunati, che la proposizione 2 italiana è senza dubbio vera, poiché essa viene a tradursi in un enunciato tautologico. Un esempio: La proposizione “Se Socrate è un uomo, allora Socrate è mortale oppure Socrate è un uomo” potrebbe essere tradotta come p →q∨p; quest’enunciato è tautologico, e quindi è valida l’affermazione italiana scritta fra virgolette. La traduzione, in certi casi, è invece fuorviante. Se traducessimo “Mary amò John ed ebbe un bambino” come r ∧ s, apparirebbe altrettanto legittimo tradurre “Mary ebbe un bambino ed amò John” come s ∧ r. Per la commutatività dell’operazione ∧ di congiunzione, r ∧ s è logicamente equivalente ad s ∧ r. Sono allora equivalenti di significato le due affermazioni italiane che questi enunciati dovrebbero rappresentare (sia pure schematicamente)? Meglio andarci cauti. Vi sono poi dei casi in cui la traduzione dall’italiano al linguaggio proposizionale viene ad oscurare dei legami logici che sono essenziali per la correttezza di un’argomentazione. Le seguenti quattro affermazioni sono valide in italiano, ma la loro validità non trasparirebbe da una traduzione nel calcolo proposizionale: 1. “Se ogni amico di Martino è amico di Gianna e se inoltre Pietro non è amico di Gianna, allora Pietro non è amico di Martino”; 2. “Se le donne sono tutte immortali, e se inoltre Cleopatra è una donna, allora Cleopatra è immortale”; 3. “Se gli uomini sono bipedi, allora la chioma di qualsiasi uomo è chioma di un bipede”; 4. “Se tutti gli uomini sono filosofi, se inoltre Socrate è un uomo e Socrate è uguale al marito di Santippe, allora il marito di Santippe è un filosofo”. Il linguaggio predicativo di cui stiamo intraprendendo lo studio consente di esprimere queste quattro affermazioni in modo formale e senza occultare la struttura logica che le rende valide. In teoria degli insiemi —un particolare sistema deduttivo fondato sulla logica predicativa—, potremmo in effetti esprimere 1.–4. cosı́: 10 . amici( martino ) ⊆ amici( gianna ) ∧ pietro ∈ / amici( gianna )→pietro ∈ / amici( martino ); 20 . donne ⊆ immortali ∧ cleopatra ∈ donne → cleopatra ∈ immortali; 30 . uomini ⊆ bipedi→∀ x ( ∃ y ∈ uomini ( x = chioma( y ) )→∃ z ∈ bipedi ( x = chioma( z ) ) ); 40 . uomini ⊆ filosofi ∧ socrate ∈ uomini ∧ socrate = marito( santippe ) → marito( santippe ) ∈ filosofi. (Qui amici, chioma, marito denotano funzioni, mentre tutti gli altri identificatori denotano insiemi1 ). I simboli ∀ ed ∃ che stiamo qui vedendo per la prima volta corrispondono grosso modo ai costrutti “for” ed “exists” di molti linguaggi di programmazione. Con una differenza sostanziale, però. Che mentre “for” prescrive che l’esecuzione di un certo brano di programma 1 Per semplicità ci stiamo riferendo con la parola ‘insiemi’ sia agli insiemi in senso stretto che ai costituenti ultimi di cui gli insiemi sono composti, che talvolta vengono chiamati individui. 3 venga effettuata un numero finito di volte, ∀ rappresenta l’iterazione sulla classe —immensa— che è costituita da tutti gli insiemi. Analogamente, mentre “exists” indica che una certa ricerca, svolta su di un insieme finito di oggetti, dovrà interrompersi con successo qualora venga trovato un oggetto soddisfacente a certe condizioni; nell’interpretare ∃, invece, la ricerca si immagina effettuata sulla totalità degli insiemi. In accordo con questo cenno di semantica, leggeremo ∀ x ϕ come “per ogni x si ha che ϕ” ed ∃ x ϕ come “vi è almeno un x tale che ϕ”. Le formule esistenziali in esempio, che sono ∃ y ∈ uomini ( x = chioma( y ) ) ed ∃ z ∈ bipedi ( x = chioma( z ) ), devono essere considerate abbreviazioni di ∃ y ( y ∈ uomini ∧ x = chioma( y ) ) e di ∃ z ( z ∈ bipedi ∧ x = chioma( z ) ), e dunque significano: “esiste un uomo che ha come sua chioma x”, “esiste un bipede che ha come sua chioma x”. Come vedremo, esiste una varietà di linguaggi predicativi: essi sono accomunati dai tratti salienti, e differiscono marginalmente per alcuni costrutti. Fra i linguaggi predicativi ve ne sono nei quali formulare teorie degli insiemi, altri nei quali formulare teorie sugli spazi geometrici, ecc.. Non sempre in un linguaggio predicativo sono disponibili, col loro significato insiemistico, i simboli ∈ e ⊆. Vi saranno però comunque, in aggiunta ai simboli che denotano funzioni, dei simboli ‘predicativi’. Invece di scrivere che cleopatra ∈ donne potremo scrivere, quindi, che donna( cleopatra ), ove donna è un simbolo predicativo ad un argomento. Invece di scrivere che amici( martino ) ⊆ amici( gianna ) scriveremo che ∀ x ( amico( x, martino )→amico( x, gianna ) ), dove amico è un simbolo predicativo a due argomenti. Perfino il simbolo = di uguaglianza può talvolta mancare, ma anche in tal caso, con diversi accorgimenti, si arriva ad esprimere ciò che si vuole. L’‘universo’ su cui, nel calcolo predicativo, si immaginano effettuate le iterazioni denotate da ∀, ∃, non è necessariamente, come in teoria degli insiemi, la classe costituita da tutti gli insiemi. È una generica classe, che si suppone non vuota solamente per ragioni tecniche. In un linguaggio non specificatamente rivolto alla teoria degli insiemi, potremmo esprimere 1.–4. cosı́: 100 . ∀ x ( amico( x, martino )→amico( x, gianna ) ) ∧ ¬amico( pietro, gianna ) →¬amico( pietro, martino ); 200 . ∀ x ( donna( x )→immortale( x ) ) ∧ donna( cleopatra )→immortale( cleopatra ); 300 . ∀ x ( uomo( x )→bipede( x ) ) →∀ x ( ∃ y ( uomo( y ) ∧ x = chioma( y ) )→∃ z ( bipede( z ) ∧ x = chioma( z ) ) ); 400 . ∀ x ( uomo( x )→filosofo( x ) ) ∧ uomo( socrate ) ∧ socrate = marito( santippe ) →filosofo( marito( santippe ) ). Presenteremo ora la sintassi dei linguaggi predicativi, e, piú oltre, la sua semantica (della quale non si sono dati fino ad ora che alcuni cenni). Dopodiché entreremo nello specifico delle problematiche logiche: analisi dei concetti di formalismo, teoria, sistema deduttivo; questioni metamatematiche connesse con la formalizzazione di teorie; risultati limitativi della logica e risultati di decidibilità di teorie; ecc.. I linguaggi della logica predicativa, nella loro varietà, ci renderanno facile affiancare alla discussione di queste problematiche numerosi esempi che riguarderanno prevalentemente ambiti matematici di natura piuttosto astratta. Una volta constatata la gran versatilità e ubiquitarietà della logica, non ci vorrà molto a convincersi della molteplicità dei suoi impieghi pratici anche in settori lontani dall’astrazione matematica. Esercizio 1 Provate a esprimere nel simbolismo predicativo le seguenti proposizioni: 4 • Tutti i corvi sono neri e col becco giallo. • Esistono galline dalle uova d’oro. 2 • Chi semina vento raccoglie tempesta. 1 Linguaggi per la logica predicativa del prim’ordine 1.1 Sintassi di un linguaggio predicativo Servendoci della notazione di Backus-Naur estesa, possiamo specificare la sintassi di un linguaggio predicativo del prim’ordine come segue:2 h formula i ::= h formula atomica i | h connettivo nullario i | h connettivo unario i h formula i | ( h formula i h connettivo binario i h formula i ) | h quantificatore i h formula i | ( h formula i ) h formula atomica i ::= h Simbolo di predicato i h argomenti i h argomenti i ::= ( h termine i h altri termini i ) h altri termini i ::= | , h termine i h altri termini i h termine i ::= h VAR i | h Costante i | h Simbolo di funzione i h argomenti i h quantificatore i ::= ∀ h VAR i | ∃ h VAR i h connettivo nullario i ::= f |v h connettivo unario i ::= ¬ h connettivo binario i ::= ∧|∨|→|←|↔|+|||↓|> (ove con viene denotata la parola vuota). Il simbolo iniziale di questa grammatica è h formula i, ma anche la categoria sintattica descritta da h termine i rivestirà un ruolo essenziale. Le novità piú rilevanti, rispetto al linguaggio della logica proposizionale, sono: 2 La dicitura “del prim’ordine” verrà generalmente omessa, senza fraintendimenti possibili, dato che in questo corso non andremo al di là del primo ordine. 5 • I quantificatori, classificabili in: universali, quelli della forma ∀ x; esistenziali, quelli della forma ∃ x. Senza ancora affrontare la semantica di termini e formule, conviene comunque indicare come vada letta una formula della forma ∀ x ϕ o della forma ∃ x ϕ. Rispettivamente: “per ogni x si ha che ϕ”, e “c’è almeno un x tale che ϕ”. • Le variabili, che formano la categoria su indicata con h VAR i. Non abbiamo specificato questa categoria, poiché la vediamo come una categoria lessicale piuttosto che sintattica. È importante, comunque la si determini, far in modo che questa categoria circoscriva una scorta infinita di identificatori. Assumeremo che questi identificatori siano disposti in un ordine simile a quello dei numeri naturali —tanto che si possa, per esempio, parlare della prima variabile che non figura in una formula. Quanto a hCostante i, hSimbolo di funzione i, hSimbolo di predicato i, è proprio precisando queste tre categorie che si stabilisce con esattezza il linguaggio: non stiamo infatti considerando un singolo linguaggio, ma uno schema di linguaggio che andrà adattato caso per caso alle esigenze di formalizzazione di una specifica teoria. Il linguaggio che ha C, F, P (insiemi fra loro disgiunti) come insieme delle costanti, dei simboli di funzione e dei simboli di predicato, verrà indicato nel seguito come L(C, F, P). Nel determinare queste tre categorie di simboli, per ciascun simbolo di funzione e di predicato si dovrà indicare un intero positivo detto il suo grado (o la sua ‘arità’). Tramite il grado viene stabilito, per ciascun simbolo, il numero dei termini in qualsiasi lista di argomenti preceduta da quel simbolo. La mancata concordanza fra lunghezza di una lista di argomenti e grado del simbolo che la regge è un errore di semantica statica piuttosto che di sintassi: questa è una ragione per cui la faccenda del grado non traspare dalle regole di produzione della nostra grammatica. Non è raro che i simboli di costante e di funzione siano del tutto assenti, ma qualunque linguaggio predicativo deve comprendere almeno un simbolo di predicato. Talvolta c’è un solo simbolo di predicato (comune il caso che si tratti del simbolo = di uguaglianza). Talvolta la scorta dei simboli di predicato e funzione è infinita, e cosı́ pure quella delle costanti. La sintassi della logica predicativa non è uno standard, e la versione che ne abbiamo fornita potrà differire in qualche particolare —ci auguriamo inessenziale— da quella che potete trovare in comuni manuali di logica. Per fare un caso, la parentesizzazione da noi prevista, è sovrabbondante. Ciò che conta è, comunque, che essa sia adeguata a rendere unica la lettura delle formule: ed in effetti, la nostra grammatica non ha il difetto di essere ambigua. Esercizio 2 Individuate tutti i terminali nella grammatica delle formule esposta nella sez. 1.1. 2 1.2 Convenzioni sul lessico per la logica predicativa Se la sintassi della logica predicativa non è uno standard, la situazione del lessico è ancora piú confusa, dato che le convenzioni adottate da un autore sono spesso antitetiche a quelle di un altro. Vi sono, per esempio, due linguaggi di programmazione fortemente improntati alla logica del prim’ordine (non di tutta, ma di una parte significativamente estesa): Prolog e Gödel. In Prolog si pattuisce che gli identificatori di variabile inizino con lettera maiuscola e quelli delle costanti con lettera minuscola; in Gödel queste convenzioni sono invertite. 6 Scegliamo qui come riferimento Prolog, semplicemente per prendere una posizione (dalla quale, prima o poi, derogare). Tradizionalmente in Prolog i simboli di predicato e di funzione hanno la stessa struttura, e vengono detti funtori; le costanti vengono identificate sia al modo dei funtori, che tramite numerali (cioè tramite sequenze di cifre decimali): h VAR i h FUNTORE i h COSTANTE i h NUMERALE i ::= ::= ::= ::= h seqAlfNum i ::= | h cifra i h seqAlfNum i | h minusc i h seqAlfNum i | h maiusc i h seqAlfNum i ::= | h cifra i h seqCif i ::= 0 | h cifraPos i ::= 1 | 2 | · · · | 9 ::= a | b | c | · · · |z ::= | A | B | C | · · · |Z h seqCif i h cifra i h cifraPos i h minusc i h maiusc i h maiusc i h seqAlfNum i h minusc i h seqAlfNum i h minusc i h seqAlfNum i | h NUMERALE i h cifraPos i h seqCif i Simboli desunti dal matematico (per esempio ∅, π come costanti, +, ·, ∗ come simboli di funzione, ⊇, ≈ come simboli di predicato, ecc.) verranno aggiunti a questo lessico quando se ne presenterà l’occasione, e non ci soffermeremo a sottolineare ogni circostanza dl genere. Per le variabili impiegheremo spesso le lettere x, y, z, u, v, w, `, e di quando in quando anche altre lettere minuscole (non grassettate), eventualmente con pedici. Questa non è una vera difformità dalle norme or ora stabilite, ma una prassi che si giustifica con il fatto che le variabili dei quantificatori possono essere ridenominate a piacere —giacché sono variabili ‘mute’, alla stessa stregua degli indici di sommatorie, delle variabili di integrazione, ecc.—. Ciò risulterà evidente dalla semantica dei linguaggi predicativi (vedi sez. 2), e ci induce sin d’ora a impiegare al posto delle variabili delle ‘meta-variabili’, liberamente sostituibili con variabili autentiche. Qualcuno impiega parentesi quadre e graffe in sostituzione delle tonde quando ciò può facilitare la lettura; noi non ci regoleremo cosı́, ma talvolta ingrandiremo coppie di parentesi corrispondenti, con lo stesso obiettivo di chiarezza. 1.3 Arricchimenti dei linguaggi predicativi Per facilitare l’impiego dei linguaggi predicativi del prim’ordine, si usa arricchirli o renderne piú agile o flessibile la sintassi. Le modifiche sono numerose, e non comportano un aumento del potere espressivo: solo una maggior concisione o, quanto meno, un miglioramento della leggibilità delle formule. Come illustreremo con qualche esempio, si tratta di convenzioni abbreviative che potrebbero essere trattate per mezzo di un preprocessore. Per descrivere la sintassi di un linguaggio-oggetto (nel caso sotto esame, quello logica predicativa), è comune l’impiego di un metalinguaggio formale, come quello delle grammatiche che abbiamo utilizzato sopra. Anche per l’introduzione di notazioni abbreviative, esistono strumenti formali, ma qui ci contentiamo di sbrigative convenzioni: • Le lettere x, y, z, u, v, w indicheranno variabili; le lettere c, b, a, k, costanti; le lettere f, g, h, simboli di funzione; le lettere P, Q, R, S, simboli di predicato; le lettere greche ϕ, ψ, χ, α, β, ϑ indicheranno formule; le lettere τ, t, d, s, termini. (Pedici ammessi in ciascuno dei sei casi). 7 • Tramite i simboli definitorı̂ =Def e ↔Def , a due argomenti, verrà spiegato come andrebbe riscritto il definiendum (l’argomento di sinistra —un’espressione che non fa parte del linguaggio originario) in base al definiens (l’argomento di destra —appartenente, o già riconducibile, al linguaggio originario). Una delle piú diffuse convenzioni di comodo riguarda i simboli (di predicato o di funzione) aventi grado 2, per i quali si ricorre sovente alla notazione infissa: vale a dire, invece di anteporre il simbolo alla lista dei suoi due argomenti, lo si inserisce fra i due, come si fa con i connettivi proposizionali binari. Importantissimo fra i simboli che usualmente vengono adoperati come infissi è quello, =, di uguaglianza, che a differenza degli altri simboli di predicato avrà un’interpretazione prestabilita. Importanti anche il simbolo ∈ di appartenenza, utilizzato nella formalizzazione di teorie di insiemi e classi; estremamente comune l’operatore di confronto, < (che può presentarsi in varie fogge: ≺, , ; o talvolta capovolto: >, , , ; combinato con l’uguaglianza: 6, >, ; ecc.). Altre cose [.......DA SISTEMARE........]: • Possibilità di evitare parentesi attorno alle liste di argomenti o, procedendo in senso opposto, di evitare attribuzioni di grado. • Impiego pre-/post-fisso di simboli di funzione e di predicato aventi grado 1 (simboli utilizzati a questo modo, o come infissi, verranno chiamati anche operatori, oppure relatori, a seconda che rappresentino funzioni o predicati). • Possibilità di stabilire regole di priorità, estendenti quelle sui connettivi (i pre-/post-fissi hanno di solito precedenza sugli infissi, gli operatori sui relatori, i relatori sui connettivi). • Assorbimento del ¬ nel relatore: s 6= t, s ∈ / t, ecc. • Quantificatori aggiuntivi (ristretti ecc.): ∃ ! x ϕ, ∀ x < τ ϕ, ∀ x ∈ τ ϕ, ∃ x ∈ τ ϕ, ecc.. (Da leggersi, rispettivamente: “esiste uno ed un solo x tale che ϕ”, “per ogni x che sia minore di τ si ha che ϕ”, “per ogni x appartenente a τ si ha che ϕ”, “c’è almeno un x appartenente a τ tale che ϕ”). • Descrittori di Peano/Russell e di Hilbert: ε x ϕ, ι x ϕ. (Da leggersi, rispettivamente: “un x tale che ϕ”, “lo x tale che ϕ”).3 A livello sintattico, si tratta semplicemente di creare un’interdipendenza ricorsiva fra termini e formule, aggiungendo alle alternative nella produzione dei termini queste due: h termine i ::= ε h VAR i h formula i | ι h VAR i h formula i • Lettere proposizionali, che possono essere viste alla stregua di simboli predicativi di grado 0 (il linguaggio deve comunque comprendere almeno un simbolo predicativo di grado > 0). • Aggiunte specifiche: [τ1 , . . . , τn | τ ], {τ1 , . . . , τn }, n, ecc., per designare rispettivamente liste, insiemi finiti, numeri naturali, ecc.. Tradizionalmente lo ι del descrittore di Peano viene piú spesso scritto capovolto, cosı́: . ι 3 8 1.3.1 Estensioni sintattiche come regole di riscrittura In molti casi gli arricchimenti sintattici che facilitano l’impiego della logica del prim’ordine possono essere descritti tramite semplici regole di riscrittura, quali:4 s∈ /t ↔Def ¬ ∈(s, t) s 6= t ↔Def ¬s = t ←ϕ ↔Def f ← ϕ ∃! x ϕ ↔Def ∃ y ∀ x ( ϕ↔x = y ) ∃x ∈ τ ϕ ↔Def ∃ x ( x ∈ τ ∧ ϕ ) ∀x ∈ τ ϕ ↔Def ∀ x ( x ∈ τ →ϕ ) ∀x 6 τ ϕ ↔Def ∀ x ( x < τ ∨x = τ →ϕ ) [τ1 , . . . , τn | τ ] =Def ( τ1 , ( τ2 , . . . , ( τn , τ ) · · · ) ) {τ1 , . . . , τn } =Def con( τn , con( τn-1 , . . . , con( τ1 , ∅ ) · · · ) ) 00···0 n =Def 0 |{z} n volte ιx ϕ =Def ε y ∀ x ( ϕ↔x = y ) Altre volte, la tecnica di eliminazione di un costrutto secondario non si presta a essere descritta cosı́ semplicemente: un caso è quello del descrittore ε xϕ, sul quale preferiamo sorvolare. In un’ottica rigorosamente occamista, non solo potremmo liquidare come forme di abbreviazione tutti i connettivi proposizionali salvo quelli che formano una base adeguata (vedi dispensa ‘Logica proposizionale a due valori di verità’), ma anche i quantificatori esistenziali. Per ridursi a soli universali basterebbe, in effetti, porre: ∃ x ϕ ↔Def ¬∀ x ¬ ϕ (all’inverso, potremmo eliminare tutti i quantificatori universali e ridurci a soli esistenziali). Esercizio 3 Non volendo considerare le lettere proposizionali come simboli predicativi di grado 0, potremmo considerare anche il loro impiego come ricorso ad una notazione abbreviativa? 2 1.4 Prime riflessioni sul metalinguaggio per i linguaggi predicativi Abitualmente le considerazioni sul linguaggio-oggetto vengono svolte —come già abbiamo iniziato a fare— in italiano, con l’ausilio di qualche notazione e convenzione simbolica: non intendiamo metterci sulla strada di una completa formalizzazione del metalinguaggio, tanto piú che il compito sarebbe arduo per l’eterogeneità degli scopi a cui serve il metalinguaggio. Ci sono degli inconvenienti, nel nostro modo sbrigativo di affrontare le questioni metalinguistiche. Spesso sacrifichiamo il rigore per non eccedere in precisazioni pignole, e questo può lasciare perplesso il lettore piú attento. Per esempio, nel porre la definizione ∃ ! x ϕ ↔Def ∃ y ∀ x ( ϕ↔x = y ) (vedi sopra), rigore avrebbe voluto che precisassimo come va scelta la y: per esempio dicendo che si tratta della prima variabile che non compare in ϕ. Alcuni deplorano che nel metalinguaggio le entità linguistiche del linguaggio-oggetto vengano adoperate come nomi di sé stesse. Quando, in un discorso comune, ci si riferisce a entità del mondo fisico, ci si guarda bene dall’inserire tali entità direttamente dentro le proposizioni che 4 Per chiarezza, stiamo introducendo le formule abbreviative mediante un simbolo, ↔Def , diverso da quello, =Def , utilizzato per introdurre termini abbreviativi. 9 le riguardano: invece, si adoperano nomi delle cose (o locuzioni nominali) al posto delle cose stesse. Non si dovrebbe procedere in modo analogo quando, nel metalinguaggio, si tratta di entità linguistiche del linguaggio-oggetto? non dovremmo inserire opportuni nomi (o espressioni nominali) al posto di termini e formule nominate? ma quale nome si può attribuire a una formula? Per avere un nome di un’entità linguistica, può bastare racchiuderla fra virgolette. Ad esempio: “pera” è il nome della parola ‘pera’, la quale denota il frutto pera, ecc.. L’impiego sistematico di virgolette attorno a termini, formule, variabili, ecc. è, però, intollerabilmente pesante: quasi tutti lo evitano, se non da subito, almeno dopo un po’. È importante, comunque, che a nessuno sfugga la distinzione fra il linguaggio-oggetto ed il metalinguaggio: quest’ultimo offre, in un certo senso, a chi ragiona sul linguaggio-oggetto, un punto di osservazione sopraelevato rispetto ad esso. Qualcuno si sarà forse meravigliato del frequente uso che faccio delle virgolette. Esse mi servono per distinguere i casi in cui parlo del segno stesso da quelli in cui parlo di ciò che esso denota. Questo modo di procedere può sembrare estremamente pedante, ma io lo considero necessario. È straordinario come un modo inesatto di parlare e di scrivere, usato in origine forse soltanto per comodità, possa giungere a fuorviare il pensiero una volta che si cessi di tenerlo presente. Cosı́, è avvenuto che i numerali fossero confusi con i numeri, i nomi, cioè, con ciò che essi denominano, ciò che è semplicemente ausiliario con l’oggetto proprio dell’aritmetica. (Frege) Alcune nozioni metalinguistiche importanti: • Distinzione fra un simbolo (che è semplicemente preso dall’alfabeto dei terminali di L(C, F, P)) e le sue occorrenze entro un’espressione (ben formata, cioè un termine o una formula). [. . . . . . DA COMPLETARE . . . . . . ] • Insieme varr( ) delle variabili libere di un’espressione. Può venir definito tramite una ricorsione strutturale, come segue: varr(x) =Def {x} varr(c) =Def ∅ varr(g( t0 , . .. , tn )) =Def varr(t0 ) ∪ · · · ∪ varr(tn ) varr(ε x ϕ) =Def varr(ϕ) \ {x} varr(ι x ϕ) varr(v) =Def ∅ varr(f ) varr(Q( t0 , .. . , tn )) =Def varr(t0 ) ∪ · · · ∪ varr(tn ) varr(¬ϕ) =Def varr(ϕ) varr(( ϕ )) varr(( ϕ ? ψ )) =Def varr(ϕ) ∪ varr(ψ) varr(∀ x ϕ) =Def varr(ϕ) \ {x} varr(∃ x ϕ) (Qui ? sta per un qualsiasi connettivo proposizionale binario). • Definizioni: Un termine τ tale che varr(τ ) = ∅ si chiama un termine di base (‘ground term’ in inglese). Una formula α tale che varr(α) = ∅ si chiama un enunciato (‘sentence’ in inglese). 10 Si chiama campo d’azione di un’occorrenza di quantificatore (∀ x od ∃ x) in una formula ϕ: l’intera sottoformula (rispettivamente della forma ∀ x ψ od ∃ x ψ) che inizia con tale occorrenza ed è formata di simboli consecutivi di ϕ. Un’occorrenza di variabile x all’interno di una formula ϕ si dirà legata, rispettivam. libera: se essa figura, rispettivam. non figura, nel campo d’azione di un quantificatore, cioè entro qualche sottoformula di ϕ della forma ∀ x ψ o ∃ x ψ. 2 • Definizioni. Chiusura esistenziale ϕ∃ , chiusura universale ϕ∀ di una formula ϕ: si tratta dell’enunciato ∃ x1 · · · ∃ xn ( ϕ ), rispettivam. ∀ x1 · · · ∀ xn ( ϕ ), che si ottiene anteponendo alla formula quantificatori relativi alle variabili x1 , . . . , xn tali che varr(ϕ) = {x1 , . . . , xn }, disposte secondo il loro ordine naturale. 2 ,...,xn ···xn • Sostituzioni uniformi: Utilizzeremo la notazione ϕxt11,...,t (oppure ϕxt11···t ) per indin n 5 care la formula che risulta da ϕ per rimpiazzo simultaneo – di tutte le occorrenze libere della variabile x1 con il termine t1 , – di tutte le occorrenze libere della variabile x2 con il termine t2 , · · · – di tutte le occorrenze libere della variabile xn con il termine tn . ,...,xn • Confusione di variabili: La sostituzione ϕxt11,...,t è da evitare quando in ϕ vi siano n occorrenze libere di una xi che ricadano nel campo d’azione di un quantificatore, ∃ y oppure ∀ y, con y appartenente a varr(ti ). Effettuando il rimpiazzo, in un caso simile, si va incontro alla cosiddetta confusione. 2 Intuitivamente parlando, la confusione ha origine dal fatto che una variabile che s’intendeva dovesse essere libera viene invece ‘catturata’ da un quantificatore. Ad esempio, le sostituzioni (∃ y x 6= y)xy , (∃ y x 6= y)x ed (u 6= ∅→∃ w ∈ u w ∩ u 6= ∅)uw∩w portano ad g( y ) ∃ y y 6= y, ad ∃ y g( y ) 6= y ed a w ∩ w 6= ∅→∃ w ( w ∈ w ∩ w ∧ w ∩ ( w ∩ w ) 6= ∅ ), tre casi di confusione. • Ridenominazione di variabili: Consideriamo un insieme finito, ϕ, ψ1 , . . . , ψp , τ1 , . . . , τq , di formule e termini. Supponiamo che varr(ϕ) = {x1 , . . . , xm }. Poiché vi sono, nel linguaggio infinite variabili, sono certo reperibili delle distinte variabili y1 , . . . , ym che non compaiano (libere né legate) in alcuna delle espressioni ϕ, ψ1 , . . . , ψp , τ1 , . . . , τq . La formula che risulta da ϕ per rimpiazzo simultaneo di tutte le occorrenze legate (!) di ciascuna variabile xi con la corrispondente yi , si dice ottenuta per ridenominazione di ϕ via da ψ1 , . . . , ψp , τ1 , . . . , τq . 2 ···xn Per evitare confusione di variabili, prima di effettuare una sostituzione ϕxt11···t possiamo n sempre ridenominare ϕ via da t1 , . . . , tn . I tre casi di confusione visti poco fa, per esempio, si evitano ridenominando preliminarmente: ∃ y x 6= y come ∃ z x 6= z, ed u 6= ∅→∃ w ∈ u w ∩ u 6= ∅ come u 6= ∅→∃ y ∈ u y ∩ u 6= ∅. Esercizio 4 Per ciascuna delle seguenti formule a.–d., indicate (1) se la formula sia un enunciato, o, in caso contrario, (2) quali variabili vi compaiano libere. 5 Qui, ovviamente, si deve assumere che le variabili xi siano distinte una dall’altra. I tj non sono tenuti a essere distinti né fra loro né dalle xi . Non importa richiedere che le xi compaiano effettivamente in ϕ. 11 Ecco le formule: P ( x ) ∧ ∀ x Q( x, y ) ∀ x ( P ( x )→Q( x, y ) ) ∀ x ∃ y ( P ( x )→Q( x, y ) ) ∀ x ∀ y ∀ z ( Q( x, x ) ∧ Q( x, y ) ) a. b. c. d. 2 1.5 Appendice: Sottolinguaggi clausolari C’è un frammento della logica predicativa che ha acquisito tanto rilievo nel campo della logica computazionale perché valga la pena di descriverne il linguaggio con una grammatica a sé stante. Il costrutto principale del linguaggio sotto-descritto è la clausola di Horn: h clausola di Horn i ::= h asserzione i | h regola i | h domanda i h asserzione i h regola i h domanda i ::= ::= ::= h formula atomica i h formula atomica i ← h corpo di clausola i h goal i h goal i h testa di goal i h corpo di goal i ::= ::= ::= h testa di goal i ← h corpo di goal i |f h corpo di clausola i | v h corpo di clausola i ::= h formula atomica i | h formula atomica i ∧ h corpo di clausola i h formula atomica i ::= h Simbolo di predicato i h argomenti i | h Lettera proposizionale i h argomenti i ::= h altri termini i ::= | , h termine i h altri termini i h termine i ::= h VAR i | h Costante i | h Simbolo di funzione i h argomenti i ( h termine i h altri termini i ) Stiamo adottando da subito, in questa porzione di linguaggio predicativo del prim’ordine, notazioni come ←ϕ e come le lettere proposizionali che, sino ad ora, avevamo considerato forme di abbreviazione. Qualcuno si spinge oltre, ed ammette pure che un’asserzione (o multiasserzione, vedi sotto) ϕ venga scritta nella forma ϕ←, sottintendendo un v alla destra di ←. La sintassi che abbiamo fornito ora, con la semantica mutuata da quella della logica predicativa (vedi sotto, sez. 2), costituisce il nucleo essenziale di un linguaggio di programmazione: Prolog, linguaggio spesso sbandierato come emblema della concezione logico-dichiarativa della programmazione. In Prolog il relatore di uguaglianza non può figurare in un’asserzione né 12 dentro il conseguente di una regola. Un’uguaglianza degna di questo nome esiste nei cosiddetti linguaggi logici equazionali, ma questi ultimi non sono ancora tanto affermati (né tanto assestati) quanto Prolog. Un linguaggio simile a quello sopra, tanto importante nel campo della deduzione automatica quanto il precedente è importante nella programmazione dichiarativa, ha come costrutto principale non la clausola di Horn, ma la clausola intesa in un senso piú generale: h clausola i ::= h multi asserzione i ::= h multi regola i ::= h clausola di Horn i | h multi asserzione i | h multi regola i h formula atomica i ∧ h corpo di clausola i h formula atomica i ∧ h corpo di clausola i ← h corpo di clausola i (Non stiamo a specificare di nuovo i costrutti descritti dalla precedente grammatica). Nota Bene: Eventuali variabili presenti in una clausola vanno considerate universalmente quantificate, sebbene i relativi quantificatori non vengano scritti: dunque una clausola ϕ, almeno finché ci si muove nel ristretto della logica predicativa ‘clausolare’, dev’essere intesa come abbreviazione dell’enunciato ϕ∀ . Definizione 1 Un’asserzione priva di variabili viene chiamata un fatto. 2 2 Semantica dei linguaggi predicativi 2.1 Interpretazioni di un linguaggio predicativo Per interpretare un linguaggio predicativo L = L(C, F, P), con la funzione grado ar : F ∪ P → N \ {0}, occorre fissare una struttura =, detta interpretazione: Definizione 2 Un’ interpretazione = è costituita da • un dominio non vuoto, ∀= , su quale far spaziare le variabili; • una funzione c 7→ c= dall’insieme C delle costanti di L in ∀= ; • una funzione g 7→ g = dall’insieme F dei simboli di funzione di L in funzioni (totali) su ∀= : quando g ha grado n, dev’essere g = : (∀= )n −→ ∀= ; • una funzione Q 7→ Q= dall’insieme P dei simboli di predicato di L in relazioni su ∀= : – quando Q ha grado n, dev’essere Q= ⊆ (∀= )n , per cui Q= potrà essere assimilata ad una funzione da (∀= )n nell’insieme { f , v } dei valori di verità; 13 – qualora P comprenda il relatore =, sarà obbligatorio porre6 == = { [ ξ , ξ ] | ξ in ∀= } . (Talvolta è previsto anche il grado 0: in tal caso il simbolo di predicato viene detto lettera proposizionale, poichè svolge nella logica predicativa lo stesso ruolo delle variabili enunciative nella logica proposizionale. Vale a dire: Q= deve appartenere a { f , v }, per ogni lettera proposizionale Q). 2 2.2 Valutazione di un enunciato Un’interpretazione = per un linguaggio predicativo L = L(C, F, P), con la funzione grado ar : F ∪ P → N \ {0}, determina il valore di ogni termine e formula sprovvisto/a di variabili libere. Il processo per determinare tale valore (ben di rado algoritmico, benché astrattamente specificabile in termini di ricorsione strutturale) va sotto il nome di valutazione. Conviene riferire la valutazione al linguaggio arricchito L = L(C ∪ ∀= , F, P) (stessa funzione grado ar di prima, ed ∪ unione disgiunta), al quale l’interpretazione = può venir estesa nel modo piú scontato: per ogni k ∈ ∀= , k = =Def k. Le seguenti regole stabiliscono come ciascun termine di base t del linguaggio L designi un elemento t= del dominio, e ogni enunciato α un valore α= di verità. Definizione 3 (Regole di designazione di valore) Per i termini (senza variabili): (1) c= è esplicitamente fissato da = per ogni c in C ∪ ∀= ; = (2) g(t1 , . . . , tn )= vale g = (t= 1 , . . . , tn ). Per gli enunciati: = (3) Q(t1 , . . . , tn ) vale (4) (¬α)= vale = = v se la n-upla ordinata t= 1 , . . . , tn appartiene a Q , f altrimenti ; v se α= = f , f altrimenti ; (5) analogamente si definisce ( α ? β )= per ciascun connettivo proposizionale binario ?, in base alla relativa tavola di verità (cfr. dispensa ‘Logica proposizionale a due valori di verità’); v se per ogni k in ∀= , (ϕxk )= = v , = (6) (∀ x ϕ) vale f altrimenti ; v se per qualche k in ∀= , (ϕxk )= = v , = (7) (∃ x ϕ) vale f altrimenti ; 6 Alcuni testi di logica non richiedono che = designi sempre l’uguaglianza; ma, ad ogni buon conto, chiamano normali le interpretazioni in cui le cose stanno cosı́. 14 (8) ( α )= = α= . 2 Si noti che, a dispetto delle somiglianze superficiali fra queste regole e le regole tramite cui è stata specificata la funzione varr (cfr. sez. 1.4), le regole su varr erano interamente costruttive, mentre queste non lo sono. Il punto delicato, qui, riguarda la semantica dei quantificatori: le regole (6) e (7) sono regole ricorsive altrettanto accettabili quanto le (2)–(5), ma il valore di (∀ x ϕ)= e di (∃ x ϕ)= può dipendere da infiniti valori (ϕxk )= . Ciascun enunciato ϕxk ha struttura sintattica piú semplice dei due enunciati quantificati di cui concorre a determinare il valore di verità, e dunque la ricorsione è ben impostata; tuttavia c’è il problema che non si possono effettuare infinite valutazioni di enunciati. Esercizio 5 Supponiamo provvisoriamente che nei linguaggi predicativi vengano introdotte le descrizioni hilbertiane, ossia i termini della forma ε x ϕ, con la nuova regola di valutazione (ε x ϕ)= è un elemento k del dominio ∀= , possibilmente tale che (ϕxk )= = v . (Vale a dire: se vi sono k per cui valga (ϕxk )= , come valore (ε xϕ)= viene arbitrariamente fissato uno di tali k; altrimenti (ϕxk )= è un qualsiasi elemento del dominio). Mostrate che in presenza di questo descrittore ε i quantificatori possono venir considerati costrutti secondari, cioè alla stregua di forme di abbreviazione. 2 Esercizio 6 Si consideri un’interpretazione = che abbia finito il dominio di supporto ∀= . La valutazione di un enunciato è, almeno in questo caso effettuabile algoritmicamente? 2 Esercizio 7 Considerate il linguaggio L(∅, ∅, { p1 , p2 , p3 , · · · }), sprovvisto di costanti e simboli di funzione ma dotato di infiniti simboli predicativi unari pn . Specificate interpretazioni =1 ed =2 tali che 1. in =1 risultino veri, simultaneamente, tutti gli enunciati ∃ x( p1 ( x ) ∧ · · · ∧ pn−1 ( x )↔¬pn ( x ) ) ; 2. in =2 risultino veri, simultaneamente, tutti gli enunciati ∃ x( p1 ( x ) ∧ · · · ∧ pn−1 ( x ) ∧ ¬pn ( x ) ) . Tanto in 1. che in 2., n varia sugli interi positivi. La congiunzione p1 ( x ) ∧ · · · ∧ pn−1 è da intendersi vera quando n = 1. 2 2.3 Modelli e conseguenze logiche. Enunciati assurdi e validi Consideriamo un insieme ℘ di enunciati: Definizione 4 I modelli di ℘ sono le interpretazioni = tali che α= = v per ogni α in ℘ . Se un enunciato β risulta vero in tutti i modelli di ℘, si dice che esso è conseguenza logica di ℘. Se ℘ non ha nessun modello, si dice che esso è contraddittorio, o assurdo. 2 15 Anche un enunciato singolo, α, può essere contraddittorio, nel senso che α= = f per ogni interpretazione =. Tali sono, ad esempio, i tre enunciati f , f ∧ v, ∀ x P ( x ) ∧ ∀ x ¬P ( g( x ) ). All’opposto, un enunciato può essere vero in ogni possibile interpretazione, nel qual caso si dirà valido: piú in generale, Definizione 5 Se la chiusura esistenziale, ϕ∀ , di una formula ϕ risulta vera in qualche interpretazione, ϕ si dice soddisfacibile. Se la chiusura universale, ϕ∀ , di una formula ϕ risulta vera in tutte le interpretazioni, ϕ si dice valida. Se invece risulta ((¬ϕ)∃ )= = v in ogni interpretazione =, allora ϕ viene detta contraddittoria, o insoddisfacibile, o assurda. 2 Esercizio 8 Dite se il seguente enunciato è valido, assurdo, o nessuna delle due cose: ∀ x P ( x )→∃ y ¬P ( f ( y ) ). 2 [· · · · · · DA COMPLETARE CON UN ELENCO DI SCHEMI VALIDI · · · · · · ] [· · · · · · E CON PUNTATORI AD ALTRI SCHEMI VALIDI NELLA DISPENSA (sez. 3.1.1, sez. 5.2.1) · · · · · · ] Esercizio 9 Per ciascuno dei seguenti enunciati a.–h., indicate se esso sia: (0) assurdo, (1) valido, (2) soddisfacibile ma non valido. Giustificate ciascuna risposta: in particolare, nel caso (2), descrivete accuratamente un modello dell’enunciato e un modello della sua negazione. Ecco gli enunciati: a. ∀ x ∀ y x = y e. ∀ x Q( x, x )→∀ x ∃ y Q( x, y ) b. ∀ x ∀ y x 6= y f. ∀ x ∃ y Q( x, y )→∀ x Q( x, x ) c. ∀ x ( x 6= x→P ( x ) ) g. ∀ x ∀ y x = y→( ∀ x ∃ y Q( x, y )→ d. ∀ y ( ∀ x x 6= x→Q( x, y ) ) ∀ x Q( x, x ) ) h. ∃ x ∀ y ( P ( y )↔x = y )↔∃ x P ( x ) ∧ ∀ y ∀ z ( P ( y ) ∧ P ( z )→y = z ) 2 2.3.1 Universi e basi di Herbrand, e modelli di enunciati universali Purché l’insieme C delle costanti non sia vuoto, non lo sarà neppure l’insieme H(C, F) dei termini di base del linguaggio L(C, F, P). In tal caso (sottintesa l’usuale funzione ar : F ∪P → N \ {0}), si dà la seguente definizione: Definizione 6 L’insieme H(C, F) dei termini privi di variabili viene detto un universo di Herbrand. L’insieme delle formule atomiche prive di variabili, cioè a dire, delle espressioni della forma Q(t1 , . . . , tm ) , con Q in P, ar(Q)=m e t1 , . . . , tm appartenenti ad H(C, F) , si chiama base di Herbrand (relativa al linguaggio L(C, F, P)). Un’interpretazione H che goda delle seguenti due proprietà si chiama un’interpretazione di Herbrand: 1. ∀H = H(C, F), 2 2. tH = t per ogni t in H(C, F). 16 Banalmente le interpretazioni di Herbrand hanno dominio numerabile (anche se per lo piú infinito). Altro pregio di queste interpretazioni è che, per caratterizzarne una, basta indicare il sottinsieme della base di Herbrand costituito dalle formule atomiche di L(C, F, P) che sono vere nell’interpretazione. (Ciò è ovvio dalla nozione stessa di interpretazione). 2 Esercizio 10 Quand’è che l’universo di Herbrand è finito? Consideriamo un enunciato della forma ϕ∀ , dove ϕ è una formula in cui non compaiono quantificatori. Se c’è un’interpretazione = che rende vera ϕ∀ , allora possiamo trovare un’interpretazione H di Herbrand nella quale ϕ∀ è del pari vera. Questo fatto, del quale tratteggiamo qui di seguito la dimostrazione, è caso particolare di una celebre proposizione del 1915/19: Teorema 1 (di Löwenheim-Skolem —versione ristretta) Sia = un’interpretazione. C’è un’interpretazione H di Herbrand nella quale risultano veri tutti gli enunciati di forma ψ ∀ , con ψ priva di quantificatori, che sono veri in =: se (ψ ∀ )= = v, allora (ψ ∀ )H = v . Dim. Onde soddisfare le proprietà 1.–2. di un’interpretazione di Herbrand, poniamo semplicemente • cH per ogni c in C; H • g H (t1 , . . . , tm ) = g(tH 1 , . . . , tm ), dove m = ar(g), per ogni g in F ed ogni tupla t1 , . . . , tm in ∀)H . Per soddisfare in piú la tesi, dobbiamo porre = v se Q(t= 1 , . . . , tm ) , H • Q (t1 , . . . , tm ) = f in caso contrario , dove m = ar(Q), per ogni Q in P ed ogni tupla t1 , . . . , tm in ∀H . Il fatto che la tesi sia soddisfatta —in prima battuta— dalle ψ atomiche, costituisce il punto d’avvio di una dimostrazione induttiva, che permette di dimostrare che ψ = = ψ H per qualunque ψ priva di variabili. = ···xn Piú in generale, dire che (ψ ∀ )= = v equivale —per definizione— ad asserire che ( ψkx11···k ) = n = v per ogni n-upla k1 , . . . , kn di elementi di ∀ , dove x1 , . . . , xn sono le variabili distinte che = ···x ( ψtx ···t ) = v per ogni n-upla t1, . . . , tn H ···x Tanto è come dire che ( ψtx ···t ) = v per ogni n-upla t1, . . . , tn di figurano in ψ. Di conseguenza, se (ψ ∀ )= = v, allora 1 = 1 n = n n 1 di elementi di H(C, F). n 1 elementi di H(C, F), ossia che (ψ ∀ )H = v, come volevasi dimostrare. 2 Esercizio 11 Descrivete particolareggiatamente (1) l’universo di Herbrand associato alle seguenti clausole di Horn; (2) il piú piccolo sottinsieme della base di Herbrand che costituisce un modello della congiunzione di queste clausole. 17 Ecco la base di clausole: a. b. c. d. e. f. g. cura( influenza, aspirina ) cura( emicrania, aspirina ) cura( singhiozzo, spavento ) cura( singhiozzo, x ) ← bevuta( sorso( sorso( acqua ) )) bevuta(sorso( sorso( vino ) ) ) bevuta( sorso( x ) ) ← bevuta( x ) bevuta( x ) 2 2.4 ‘Ingegneria della conoscenza’ Accade spesso che un ‘ingegnere della conoscenza’, come si usa dire da qualche anno, si assuma il compito di caratterizzare formalmente un dominio D. In altri tempi —quando l’ingegnere della conoscenza era un matematico o un logico—, si trattava di formalizzare un dominio astratto, come uno spazio geometrico o un corpo numerico. Oggi, sempre piú spesso, può trattarsi di un dominio concreto, formato per esempio di circuiti digitali, di informazioni patologico / diagnostico / farmaceutiche, di normative anti-inquinamento, ecc.. L’ingegnere della conoscenza è dunque una figura professionale per molti aspetti nuova. L’obiettivo è di rendere rigorosa la conoscenza su D, piú o meno intuitiva e piú o meno allenata, per potersene poi servire in maniera piú affidabile, poterla piú facilmente richiamare, piú chiaramente comunicare, ecc.. Càpita che l’ingegnere della conoscenza non sia lui stesso competente sul dominio in questione, ma desideri acquisire ed assimilare esperienza e conoscenze specialistiche di ‘tecnici del ramo’. La logica predicativa può essere lo strumento per questo tipo di ingegneria, il cui modo di procedere sarà di • proporre un linguaggio L ricco abbastanza da permettere di fare affermazioni, o porre domande, sul dominio D; • proporre come assiomatizzazione di D un insieme ℘ di enunciati. In questo caso c’è un modello privilegiato (in inglese: privileged model ovvero intended model ) di L: si tratta di D, per l’appunto. Inconvenienti che si possono avere in una formalizzazione: 1. A causa di ‘errori di codifica’ si ha che D non è per davvero un modello di ℘. Una situazione-limite si ha quando 2. errori di codifica causano la contraddittorietà di ℘. Non avendo, l’insieme degli assiomi, nessun modello, da esso consegue logicamente qualunque affermazione.7 3. L’insieme di assiomi ammette, oltre a D, una schiera di altri modelli: vi sono enunciati β veri in un modello e falsi in un altro. Si tratta semplicemente di un’inadeguatezza degli assiomi rimediabile con un arricchimento degli stessi? Non sempre: può darsi il caso che 7 Ciò puó apparire contrario al buonsenso. Lo stesso logico Frege affermava: “Nulla può essere dedotto da false premesse”, ma non è cosı́. 18 • occorrano infiniti assiomi per caratterizzare compiutamente D. Poco male se tali assiomi sono riassumibili in un numero finito di schemi d’assioma o se, quanto meno, si possono racchiudere in algoritmi riconoscitori. In altri casi • l’inadeguatezza a distinguere D da altri modelli non riguarda solo ℘, ma qualunque sua estensione non contradittoria e formata da un insieme decidibile di enunciati. Chiarire i diversi punti qui solo accennati è uno degli scopi da cui è nata questa dispensa; in modo particolare li focalizzeremo nella sez. 4. Esercizio 12 In che differisce il compito di chi stabilisce gli assiomi per una struttura algebrica astratta —o per un tipo astratto di dati— da quello di un ingegnere della conoscenza, inteso come sopra? 2 2.5 Teorie Definizione 7 Un insieme Γ di enunciati si dice una teoria se ogni conseguenza logica di Γ (vedi def.4) appartiene anch’essa a Γ. 2 Poiché, evidentemente, qualunque intersezione di teorie è una teoria, dato un qualunque insieme ℘ di enunciati, ha senso parlare della teoria Γ piú piccola possibile tale che ℘ ⊆ Γ: Definizione 8 La teoria formata da tutte e sole le conseguenze logiche di ℘ viene detta la teoria generata da ℘ e viene indicata come Cn(℘). 2 Dunque un insieme ℘ di assiomi non è una teoria, ma ne genera una. Casi limite: • ℘ è contraddittorio, per esempio ℘ = {∀ x P ( x ), ∃ y ¬P ( g( y ) )} oppure ℘ = {f , v}, oppure (se il linguaggio L possiede l’uguaglianza) ℘ = {∀ x( x 6= x )}: in questo caso Cn(℘) è la famiglia di tutti gli enunciati. • ℘ = ∅: Gli enunciati in Cn(℘) sono quelli veri in tutte le interpretazioni. Si tratta di quelli che abbiami chiamato enunciati validi . Come richiameremo nella sez. 4.3.1, Cn(∅) non è una famiglia decidibile di enunciati: pertanto non coincide né con ∅ né con la famiglia Cn({f , v}). Esercizio 13 Gli enunciati veri in un’interpretazione = formano o no una teoria? E gli enunciati veri in tutte le = che appartengono ad un fissato insieme < di interpretazioni? 2 Esercizio 14 Si dimostri il seguente corollario del teor.1: Qualunque teoria del prim’ordine abbia un modello, e sia generata da enunciati tutti della forma ψ ∀ , con ψ priva di quantificatori, ha un modello dal dominio numerabile. 2 19 2.6 2.6.1 Digressione sul concetto di formalismo Che cos’è un formalismo? Che cos’è un formalismo? Un libro di Alfred Tarski e Steven Givant apparso a metà degli anni ’80 risponde con la seguente definizione, quasi filosofica, che abbraccia come casi particolari (non casi unici) il sistema di logica predicativa che veniamo trattando, e quello della logica proposizionale già trattato in altra dispensa: Definizione 9 Un formalismo è una quaterna Σ, `, RE, MO di oggetti metalogici, dei quali due, e cioè Σ: l’insieme dei cosiddetti enunciati, e `: la relazione detta di derivabilità fra sottinsiemi di Σ e membri di Σ, sono sintattici, mentre gli altri due, RE: l’insieme delle interpretazioni (o ‘realizzazioni’), e MO: la funzione che associa ad ogni enunciato α di Σ una sottoclasse di RE, detta la classe di tutti i modelli di α, sono semantici. Si assume che RE sia l’unione di tutte le MO(α) con α in Σ. 2 Ci riferiamo per un po’ ad un formalismo inteso a questo modo, ed assumiamo che siano ℘ ⊆ Σ , α in Σ , < ⊆ RE , = in RE . Allora • la locuzione “= rende vera α” esprime che = sta in MO(α); • MO(℘) denota la classe \ MO(β) , β in ℘ formata dalle interpretazioni che rendono veri, simultaneamente, tutti gli enunciati β in ℘; • ℘ |= α (leggi: α è conseguenza logica di ℘) significa che MO(℘) ⊆ MO(α), ossia che qualunque interpretazione renda veri, simultaneamente, tutti gli enunciati in ℘, rende del pari vero anche α; • Th( < ) denota l’insieme { ϑ in Σ | < ⊆ MO(ϑ) } , formato dagli enunciati che vengono resi veri da tutte quante le interpretazioni appartenenti ad <; Th( = ) sta per Th({=}); • Cn( ℘ ) denota l’insieme { ϑ in Σ | ℘ |= ϑ } formato dagli enunciati che sono conseguenze logiche di ℘; 20 Cn( α ) sta per Cn({α}); • Θ(℘) denota l’insieme { ϑ in Σ | ℘ ` ϑ } formato dagli enunciati che sono derivabili da ℘. Esercizio 15 Com’è fatto Th( ∅ )? Com’è fatto MO( ∅ )? È vero che se ℘1 ⊆ ℘2 , allora Cn(℘1 ) ⊆ Cn(℘2 )? Se MO(α) = ∅, com’è fatto Cn(α)? Dimostrate che, per qualunque ℘ ⊆ Σ: ℘ ⊆ Cn(℘), Cn(℘) = Cn(Cn(℘)), Cn(℘) = Th(MO(℘)). È vero che ∅ 6= Cn(℘), qualunque sia ℘? 2 Gli esempi di formalismo che vedremo in queste dispense avranno come loro Σ la famiglia S(C, F, P) degli enunciati di un linguaggio predicativo L = L(C, F, P): come RE prenderemo la classe di tutte le strutture che già abbiamo chiamato interpretazioni di L nella sez. 2.1; come MO(α) di un enunciato α prenderemo le interpretazioni = tali che α= = v. I concetti di modello, consequenza logica, teoria, validità, ecc., che già avevamo definito, riescono naturalmente ad armonizzarsi con la prospettiva piú generale dalla quale stiamo rivisitando quei concetti. Pur rimanendo nella logica predicativa del prim’ordine, non ci limiteremo a considerare un solo formalismo: sia per la parametricità del linguaggio; sia —cosa piú importante— per il fatto che prenderemo in esame diverse relazioni ` di derivazione. A un certo punto (vedi es.45 della sez. 5.1.2 e successiva sez. 5.1.3), volendo richiamare velocemente da un classico trattato di logica un importante teorema, cambieremo le carte in tavola: Σ diverrà la famiglia di tutte le formule di L(C, F, P); RE si manterrà uguale a prima; come MO(ϕ) di una famiglia prenderemo le interpretazioni = tali che (ϕ∀ )= = v. Esercizio 16 Come esprimereste le nozioni di validità e contraddittorietà di un enunciato, per un generico formalismo? 2 2.6.2 Correttezza e completezza Due importanti proprietà che un formalismo dovrebbe avere sono correttezza e completezza: Definizione 10 Un formalismo si dice corretto (in inglese ‘sound’) quando assicura che Θ(℘) ⊆ Cn(℘), cioè quando, comunque si prendano ℘ ed α, si ha che se ℘ ` α, allora ℘ |= α; completo quando assicura che Cn(℘) ⊆ Θ(℘), cioè quando, comunque si prendano ℘ ed α: se ℘ |= α, allora ℘ ` α. 2 In un formalismo con queste due proprietà, la nozione semantica di consequenzialità logica, che a priori non è detto sia costruttiva, viene surrogata da un concetto sintattico perfettamente equivalente, e viene cosı́ ricondotta nell’ambito delle manipolazioni algoritmiche. Esercizio 17 Dimostrate che dalla completezza di un formalismo scende che ℘ ` α ogniqualvolta α sta in ℘ . 2 21 Importante la seguente definizione, piú generale della def.7, che ci dice come è costituita una teoria formale: Definizione 11 Una teoria è un insieme Γ di enunciati chiuso rispetto alla consequenzialità logica: Cn(Γ) ⊆ Γ . Come caso particolare, abbiamo la teoria contraddittoria, coincidente con l’insieme Σ di tutti quanti gli enunciati. 2 È facile rendersi conto che una teoria non è altro che un insieme di enunciati della forma Cn(℘), ed anche —se il formalismo è corretto e completo— della forma Θ(℘). Esercizio 18 Abbinate ciascuna delle attività (1)–(4) elencate qui di seguito (1) Formulare congetture e verificarle o trovarne controesempi. (2) Ideare formalismi corretti e —se possibile— completi. (3) Individuare ‘verità’ caratteristiche di una specifica teoria, e specificarle in un formalismo prestabilito. (4) Automatizzare, per quanto possibile in maniera efficiente, la verifica di relazioni ℘ ` ϑ. con quella, fra le seguenti figure professionali (a)–(d), che ha la competenza specifica per svolgerla: (a) Logico-matematico. (b) Ingegnere della conoscenza. (c) Utente finale del decisore (o, piú spesso, semi-decisore) automatico di una teoria. 2 (d) Informatico. 2.6.3 Sistemi deduttivi, calcolo logico e consistenza Nella mia ideografia ogni inferenza viene condotta secondo una specie di calcolo. Ciò non deve essere inteso in senso ristretto, come se esercitasse il proprio controllo un algoritmo uguale o simile a quello dell’addizione e della moltiplicazione ordinarie, ma nel senso che l’intero sistema è algoritmico, cioè dotato di un complesso di regole che determinano il passaggio da una o due proposizioni a un’altra in modo tale che può aver luogo soltanto ciò che è in accordo con tali regole. Il mio proposito, quindi, è quello di ottenere un continuo rigore nelle dimostrazioni e un’estrema accuratezza logica, e contemporaneamente perspicuità e concisione. (Frege, 1896) Cosa significa fondare su di un formalismo Σ, `, RE, MO un sistema deduttivo? La risposta è semplice: 22 Definizione 12 Una terna Σ, `, ℘ con ℘ ⊆ Σ viene chiamata un sistema deduttivo (fondato sul formalismo in questione). Gli enunciati in ℘ e quelli in Θ(℘) vengono chiamati rispettivamente assiomi propri e teoremi di un tale sistema.8 Quando Θ(℘) 6= Σ, il sistema deduttivo viene detto consistente. Quando ℘ = ∅, il sistema viene chiamato calcolo (dunque a ogni formalismo corrisponde uno e un solo calcolo). 2 È possibile che un sistema deduttivo venga sviluppato a sé, senza che RE né MO vengano espressamente indicati. Il requisito di consistenza è importante comunque: un calcolo inconsistente è vacuo, cioè privo di applicazioni. Sistemi deduttivi inconsistenti sono stati autorevolmente proposti in passato (naturalmente per errore), e ne citeremo piú avanti qualche esempio. Quando un sistema deduttivo viene proposto senza il fondamento di un formalismo, ed incontra un durevole successo, si può star sicuri che prima o poi qualcuno fornirà anche la semantica di quello che altrimenti rischierebbe di rimanere solo un gioco con i simboli. Con l’aggiunta della semantica, verrà raggiunta la pienezza del formalismo. 3 Esempi d’uso dei linguaggi predicativi: formalizzazione di teorie 3.1 Teorie sugli ordinamenti Quando, fra gli obiettivi per i quali un linguaggio predicativo viene istituito, c’è quello di formalizzare il trattamento di una relazione di ordinamento, anche il relatore = di uguaglianza è costantemente presente. Perciò iniziamo questa sezione indicando fondamentali enunciati validi sull’uguaglianza. Agli assiomi sugli ordinamenti totali giungeremo per gradi, passando dapprima in rassegna gli assiomi sui preordinamenti e sugli ordinamenti parziali. Per ultima cosa aggiungeremo assiomi tesi a caratterizzare l’importante relazione che ordina nel modo usuale il dominio dei numeri razionali. 3.1.1 Leggi dell’uguaglianza Qualunque formula di una delle seguenti forme è valida, per il significato invariabile del relatore =: x=x x=y → (y = z → x = z) x=y → y=x x=y → ( ϕ[x, x]→ϕ[x, y] ) La prime tre di queste formule esprimono riflessività, transitività, simmetria dell’uguaglianza (che, dopo tutto, è una particolarissima relazione di equivalenza). L’ultima è lo schema di sostitutività, che ci dice che l’uguaglianza è una relazione di congruenza: questo schema abbraccia infinite formule predicative, e va inteso cosı́: 8 Si noti che la parola “teorema” ha in queste dispense due significati: talvolta si riferisce agli enunciati derivabili in un sistema deduttivo, talvolta a proposizioni riguardanti formalismi e sistemi deduttivi (ad esempio teoremi di correttezza, completezza, compattezza, ecc.). Nella seconda accezione sarebbe meglio parlare di ‘metateoremi’, cosa che eviteremo di fare per non essere farraginosi. Eviteremo, a scanso di ogni possibile equivoco (almeno fin quando non sia stato dimostrato un appropriato teorema di completezza), di usare la parola teorema in una possibile terza accezione: quella di enunciato appartenente a una teoria Cn(℘). 23 • ϕ[x, y] può essere una formula qualsiasi del linguaggio predicativo, • x ed y sono variabili distinte, • ϕ[x, y] è la formula che risulta da ϕ[x, x] quando alcune, ma non necessariamente tutte, le occorrenze libere di x vengono rimpiazzate con occorrenze di y, senza che nessuna delle occorrenze di y cosı́ introdotte venga a cadere nel campo d’azione di qualche quantificatore ∀y . Esercizio 19 (*) Mostrate che transitività e simmetria dell’uguaglianza conseguono logicamente da simmetria e sostitutività. 2 3.1.2 Teoria dei preordinamenti Un relazione di preordine condivide alcune proprietà formali con l’uguaglianza. Ovviamente non tutte: ci stiamo difatti avvicinando alla nozione di relazione d’ordine, e gli ordinamenti hanno proprietà molto diverse da quelle di una relazione di equivalenza. Indicando con 6 una relazione di preordine, postuliamo riflessività e transitività: x6x x6y → (y 6 z → x 6 z) Di fronte a ciascuna di queste due formule andrebbero posti quantificatori universali, quanti ne occorrono per legare tutte le variabili: ∀x ( x 6 x ) ∀x ∀y ∀z ( x 6 y → (y 6 z → x 6 z) ) Tuttavia, poiché come assiomi di una teoria del prim’ordine si adottano sempre enunciati (e non formule qualsiasi), i quantificatori universali che governano un intero assioma vengono spesso lasciati sottintesi —cosı́ ci siamo regolati noi qui sopra, e cosı́ continueremo a regolarci in tutto il resto di questa dispensa. Un’avvertenza sulla nomenclatura: alle parole ‘postulato’ e ‘assioma’ viene molto spesso attribuito lo stesso significato. Qui utilizziamo la prima quando ci riferiamo a una teoria espressa nei termini semi-formali consueti alle esposizioni matematiche; mentre riserviamo la seconda agli enunciati che codificano i postulati in un formalismo logico. Esercizio 20 Un modello degli assiomi sui preordinamenti sia dato da ∀= , 6= . Sia inoltre ∼ la relazione definita sul dominio ∀= dalla condizione ξ ∼ ζ sseDef ξ 6= ζ 6= ξ . Dimostrate che ∼ è una relazione di equivalenza (cioè che essa soddisfa le proprietà formali di riflessività, simmetria e transitività). 2 3.1.3 Teoria degli ordinamenti parziali Un relazione di ordine parziale gode delle proprietà di un preordine, e gode anche di una ulteriore, l’anti-simmetria, che la collega all’uguaglianza. Manteniamo per denotarla lo stesso relatore di prima, cioè 6, e aggiungiamo ai due assiomi della sez. 3.1.2 l’assioma antisimmetrico: x6y → ( y 6x→x=y ) 24 Esercizio 21 Dimostrate che ogni modello degli assiomi di ordine parziale soddisfa le infinite istanze del seguente schema di enunciato: (x0 6 x1 ∧ x1 6 x2 ∧ · · · ∧ xn 6 xn+1 ∧ xn+1 6 x0 →x0 = x1 ∧ x1 = x2 ∧ · · · ∧ xn = xn+1 )∀ . 2 3.1.4 Teoria degli ordinamenti totali Un relazione di ordine totale gode delle proprietà di un ordinamento parziale, e gode anche di una nuova, la tricotomia, esprimibile con il seguente assioma: x6y ∨ y6x Esercizio 22 Modificate il linguaggio predicativo sugli ordinamenti, ponendo nella dotazione iniziale del linguaggio < e =, e introducendo 6 come costrutto secondario: s 6 t ↔Def s < t ∨ s = t In questo nuovo linguaggio, trovate un modo alternativo —forse piú naturale— di esprimere gli assiomi di ordinamento totale. 2 3.1.5 Teorie sugli ordinamenti densi Se pensiamo alle particolari relazioni di ordinamento che vengono usualmente imposte ai numeri razionali o ai numeri reali, constatiamo che esse, oltre a soddisfare gli assiomi detti sopra, soddisfano i due assiomi di densità e mancanza di estremi, che possiamo facilmente esprimere come segue, dopo aver introdotto la notazione abbreviativa s < t ↔Def s 6 t ∧ s 6= t (cfr. sez. 1.3): x < y → ∃z (x < z ∧ z < y) ∃y ∃z ( y < x ∧ x < z ) Esercizio 23 Oltre ai due modelli suindicati —cioè quello dei numeri razionali e quello dei reali—, individuate altri modelli degli assiomi di riflessività, transitività, antisimmetria, tricotomia, densità e mancanza di estremi. 2 Esercizio 24 Aggiungete al linguaggio in cui è stata definita la teoria degli ordinamenti densi e privi di estremi: • una costante 0 e l’operatore infisso +,9 interpretati sui numeri reali (o sui razionali) come zero e come operazione di somma; • un simbolo di funzione, d, di grado 2. Indicate almeno due modi di interpretare d sı́ che risultino veri i seguenti enunciati: ∀ x ∀ y 0 6 d( x, y ) ∀ x ∀ y ( d( x, y ) = 0↔x = y ) ∀ x ∀ y d( x, y ) = d( y, x ) ∀ x ∀ y ∀ z d( x, z ) 6 d( x, y )+d( y, z ) 9 2 Attenzione all’overloading, cioè al sovraccarico di significati, del carattere +: stiamo dando la stessa veste tipografica al connettivo di disgiunzione esclusiva e ad un simbolo di funzione. 25 3.2 3.2.1 Teorie su domini numerici Teoria dei numeri naturali con successore Una banale teoria dei numeri naturali viene espressa nel linguaggio del prim’ordine con uguaglianza dotato di una costante, 0, denotante il numero zero, e di un operatore postfisso, 0 , denotante l’operazione m 7→ m + 1 di successore: x0 6= 0 x0 = y 0 → x = y y 6= 0 → ∃ x y = x0 00···0 x |{z} 6= x n+1 volte Si noti che l’ultima formula non è un assioma, ma piuttosto uno schema d’assioma, del quale si ottengono infinite istanze prendendo qualsiasi numero naturale come n (numero di volte che viene adoperato l’operatore di successore, diminuito di uno). Esercizio 25 Oltre al modello suindicato —quello dei numeri naturali con 0 interpretato come incremento unitario—, individuate infiniti modelli significativamente diversi uno dall’altro per gli assiomi della funzione di successore. 2 Esercizio 26 Dimostrate che è infinito il dominio di qualsiasi modello dei due enunciati ∀ x x0 6= 0, ∀ x ∀ y ( x0 = y 0 →x = y ). 2 3.2.2 Aritmetica di Presburger Nel 1929 Presburger studiò una teoria dei numeri naturali che includeva, oltre all’operatore di successore, quello denotante la somma (cioè +) ed il relatore < di ordinamento stretto. Fra gli enunciati veri nel dominio privilegiato d’interpretazione vi sono i seguenti: y 6= 0 → ∃ x y = x0 0 x<y ↔ x<y∨x=y ¬ x<0 x<y ∨x=y∨ y <x x<y → y 6< x x<y → ( y < z→x < z ) Questi enunciati veri sono da prendersi piuttosto come ‘aneddoti’ che come assiomi. Il motivo di presentare questa teoria non nella forma assiomatica (cioè nella forma Cn(℘) di teoria generata da un insieme ℘ di enunciati), bensı́ nella forma Th(=) di teoria di una particolare struttura = emergeranno all’inizio della sez. 4.3. 3.2.3 Aritmetica elementare con somma, prodotto ed esponenziazione Ci mettiamo ora nel linguaggio dotato di relatori =, < di uguaglianza e di ordinamento stretto, della costante 0, dell’operatore postfisso 0 di successore, e degli operatori infissi +, ·, E di somma, prodotto ed esponenziazione, con le priorità scontate. Ecco assiomi per la teoria dei numeri naturali con le suddette operazioni: 26 x0 = y 0 x < y0 ¬ x<y x+0 x+y 0 x·0 x · y0 xE0 x E y0 3.2.4 x0 = 6 0 → ↔ x<0 ∨x=y∨ = = = = = = x=y x<y∨x=y y<x x ( x+y )0 0 x · y+x 00 xEy·x Aritmetica elementare di Peano La prima presentazione assiomatica della teoria dei numeri venne elaborata da Dedekind nel 1901, in termini semi-formali. Essa va sotto il nome di ‘aritmetica di Peano’, e può venir riassunta cosı́: • 0 è un numero naturale. • Se x è un numero naturale, allora c’è un numero naturale che viene denotato come x0 ed è chiamato il successore di x. • 0 6= x0 per qualunque numero naturale x. • Se x0 = y 0 , allora x = y. • Principio d’induzione finita: Se Q è una proprietà che per qualsiasi dato numero naturale può valere o no, e se questa proprietà – vale per lo 0, – ogniqualvolta vale per x, vale anche per x0 , allora tutti i numeri naturali hanno la proprietà Q. Per formalizzare questa teoria nella logica del prim’ordine, di solito viene impiegato un linguaggio piú ristretto di quello che abbiamo utilizzato nella sez. 3.2.3. Lasciamo dunque cadere sia il relatore < che l’operatore E, e diamo gli assiomi: x0 6= 0 x0 = y 0 → x=y x+0 = x x+y 0 = ( x+y )0 x·0 = 0 x · y0 = x · y+x x ϕ0 → ( ∀ x ( ϕ→ϕxx0 ) → ∀ x ϕ ) L’ultimo di questi è uno schema che ammette infinite istanze, una per ciascuna formula ϕ in cui compaia libera la sola variabile x. Esercizio 27 La congettura di Goldbach è che ogni numero pari > 4 è ottenibile come somma di due numeri primi. Esprimete questa congettura nello stesso linguaggio che è stato utilizzato sopra per l’aritmetica di Peano.10 2 10 Fate attenzione: non sono considerati primi né il numero 1 né lo 0. 27 3.2.5 Teoria dei numeri reali e teoria dei numeri complessi Come quella di Presburger, la teoria dei numeri reali e quella dei numeri complessi vengono qui proposte non in forma assiomatica, ma indicando la struttura di interesse: in un caso • Il dominio di interesse è l’insieme dei numeri reali, con le costanti 0 ed 1 e le operazioni di somma e prodotto. Nell’altro caso, • Il dominio di interesse è l’insieme dei numeri complessi, con le costanti 0 ed 1 e le operazioni di somma e prodotto. 3.3 Teorie deboli degli insiemi La prima presentazione assiomatica della teoria degli insiemi è dovuta a Zermelo, che la espose in un articolo del 1908 senza servirsi di un linguaggio simbolico pienamente sviluppato. La presentazione di tale teoria in un linguaggio predicativo del prim’ordine è dunque successiva. Uno degli assiomi originari presentava qualche oscurità e dovette essere precisato (grazie alla critica di Fraenkel e di Skolem); qualche assioma venne rafforzato o aggiunto: ultimo l’assioma di regolarità, formulato da von Neumann nel 1928, che sanciva il fatto che la relazione di appartenenza non deve formare cicli. In questa dispensa verranno esaminate solo delle ‘micro-teorie’ degli insiemi. Il dominio privilegiato d’interpretazione è formato da insiemi finiti che possono essere annidati uno nell’altro: per esempio, apparterrà al dominio l’insieme {∅, {∅}, {∅, {{∅}}}} . Per semplicità non tireremo in ballo ‘individui’: cioè non permetteremo che entità diverse dagli insiemi stessi entrino nella formazione di insiemi. Dunque, ad esempio, {2, 3, 4} non verrà considerato elemento del dominio, se non dopo che i numeri siano stati codificati come insiemi. Esercizio 28 (*) Il dominio privilegiato D per una teoria degli insiemi finiti potrebbe essere descritto tramite la seguente costruzione cumulativa: D0 =Def ∅, Di+1 =Def {SX | X ⊆ Di }, per i = 0, 1, 2, . . . ; D =Def i in N Di . Volendo trattare insiemi formati a partire da individui d1 , . . . , dn —ancora insiemi finiti, e con annidamenti— come modifichereste questa costruzione? E se il numero degli individui fosse infinito anziché finito? 2 3.3.1 Estensionalità, assiomi sull’aggiunta e la rimozione di elementi Gli assiomi, informalmente: (E) Non vi sono due insiemi con gli stessi elementi. (N) C’è un insieme privo di elementi. (W) Un insieme può essere inserito in un altro come nuovo elemento. 28 (L) Un elemento di un insieme può venire rimosso. (Sottinteso: inserimento e rimozione danno come risultato un insieme). Parametri del linguaggio predicativo: nessuna costante, nessun simbolo di funzione; i simboli di predicato sono = e ∈, adoperati come relatori infissi. Gli assiomi, formalizzati: ∀u ∀y ( ∀d ( d ∈ u ↔ d ∈ y ) → u = y ) ∃z ∀v v ∈ / z ∀u ∀y ∃w ∀v ( v ∈ w ↔ ( v ∈ u ∨ v = y ) ) ∀ u ∀ y ∃ ` ∀ v ( v ∈ ` ↔ ( v ∈ u ∧ v 6= y ) ) (E) (N) (W) (L) Esercizio 29 Si riscrivano gli assiomi omettendo i quantificatori (universali) che possono rimanere sottintesi. 2 Esercizio 30 Riferitevi ad un modello di una generica teoria degli insiemi. Sarà o no vero l’enunciato ∀ x ∀ y ( ∀ v ( v ∈ x↔v ∈ y )→∀ w ( x ∈ w↔y ∈ w ) ) ? 2 Esercizio 31 Nel 1991 Franco Parlamento e Alberto Policriti proposero il seguente modo di asserire l’esistenza di insiemi infiniti (di due in un sol colpo, w0 e w1 ): (I) ∃ w0 ∃ w1 ( ( ∀ y ∈ w0 ∀ x ∈ y x ∈ w1 ) ∧ ( ∀ y ∈ w1 ∀ x ∈ y x ∈ w0 ) ∧ w0 ∈ / w1 ∧ w1 ∈ / w0 ∧ w0 6= w1 ∧ ∀ x ∈ w0 ∀ y ∈ w1 ( x ∈ y∨y ∈ x ) ∧ ∀ x1 ∈ w0 ∀ x2 ∈ w0 ∀ y1 ∈ w1 ∀ y2 ∈ w1 ( x1 ∈ y1 ∧ y1 ∈ x2 ∧ x2 ∈ y2 → x1 ∈ y2 ) ) Mostrate che questo enunciato è falso nella nostra interpretazione privilegiata. Mostrate che questo enunciato non è conseguenza logica degli assiomi (E), (N),(W),(L). 2 Esercizio 32 Nel 1924 Tarski propose il seguente modo di asserire che tutti gli insiemi sono finiti: (F) ∀ k ∀ f ∈ k ∃ a ∈ k ∀ b ∈ k ( b 6= a → ∃ d ∈ b d ∈ / a) Mostrate che questo enunciato è vero nella nostra interpretazione privilegiata. Mostrate che questo enunciato non è conseguenza logica degli assiomi (E), (N),(W),(L). Indicate un’interpretazione nella quale risultino veri (E),(N),(W),(L) mentre risultano falsi tanto (F) che l’enunciato (I) del precedente esercizio. 2 3.3.2 Variante degli assiomi in un linguaggio piú ricco di simboli Impiegando un linguaggio predicativo piú ricco di costrutti, possiamo elaborare un insieme di assiomi piú conciso, ma della stessa potenza di quello appena visto. Introduciamo nel linguaggio la costante ∅ e due operatori binari: con e senza. Con l’usuale omissione dei quantificatori universali, e dando dell’estensionalità una formulazione alternativa (ma logicamente equivalente a quella di prima), scriviamo gli assiomi: (E) (N) (W) (L) u 6= y → ∃ d ( d ∈ u + d ∈ y ) v ∈ / ∅ v ∈ u con y ↔ v ∈ u ∨ v = y v ∈ u senza y ↔ v ∈ u ∧ v 6= y 29 Una ragione per dire che la potenza della teoria non è aumentata è questa: gli enunciati del linguaggio di prima che conseguono dalla nuova formulazione degli assiomi rimangono gli stessi che conseguivano dalla vecchia formulazione. In questo senso la nuova teoria è estensione conservativa della teoria della sez. 3.3.1. Naturalmente, ora che il linguaggio è piú esteso, ci saranno dei nuovi enunciati conseguenti dagli assiomi, per esempio ∅ ∈ / ∅; ma nessuno di questi era presente nel linguaggio originario. Esercizio 33 Aggiungete al linguaggio simboli unari di funzione P e le operazioni di S , con i quali designare • formazione dell’insieme di tutti i sottinsiemi di un dato insieme ξ, e di • formazione dell’insieme di tutti gli elementi di elementi di un dato insieme ξ. S Aggiungete assiomi tesi a garantire l’esistenza degli insiemi P(ξ) ed ξ, per ogni insieme ξ. La teoria cosı́ ottenuta è estensione conservativa di quella considerata nella sez. 3.3.1? 2 Esercizio 34 Dimostrate che se vengono introdotte le abbreviazioni 0 =Def ∅ ed s0 =Def ∅ con s, allora i due enunciati dell’es.26 sono conseguenza logica degli assiomi di questa sezione. Pensate che questo sia vero anche degli altri assiomi sulla funzione di successore dati nella sez. 3.2.1?2 3.3.3 Buona fondatezza dell’appartenenza In genere non si ammette che la relazione di appartenenza possa formare cicli di insiemi, né, piú in generale, catene discendenti infinite della forma11 · · · ∈ x3 ∈ x2 ∈ x1 ∈ x0 . Viene dunque postulato il seguente schema di aciclicità, dove n è un numero grande a piacere: (A) ∀ x0 ∀ x1 · · · ∀ xn ¬( ( x0 ∈ x1 ∧ · · · ∧ xn−1 ∈ xn ) ∧ xn ∈ x0 ) Come casi particolari avremo: ∀ x0 x0 ∈ / x0 , ∀ x0 ∀ x1 ( x0 ∈ x1 →x1 ∈ / x0 ), ∀ x0 ∀ x1 ∀ x2 ( x0 ∈ x1 ∧ x1 ∈ x2 →x2 ∈ / x0 ), ecc.. Esercizio 35 Invece di ricorrere ad uno schema infinito di assiomi, von Neumann utilizzò un enunciato equivalente a quello che segue, chiamato assioma di regolarità: (R) ∀u ( ( ∃v v ∈ u ) → ∃w ( w ∈ u ∧ ¬∃z( z ∈ w ∧ z ∈ u ) ) ) Dimostrate che lo schema di aciclicità è conseguenza logica dell’assioma di regolarità. 3.4 2 Geometria elementare Ho sognato la geometria. Ho sognato il punto, la linea, il piano ed il volume. (Jorge Luis Borges, 1981) · · · riguardiamo come elementare quella parte della geometria euclidea che può venir formulata e istituita senza l’aiuto di alcun espediente insiemistico. (Tarski, 1959) 11 Per dovere di cronaca, è giusto segnalare che è in auge da qualche anno una contro-tendenza, tesa ad ammettere che la relazione di appartenenza possa formare cicli di lunghezza arbitraria, ed anche catene discendenti infinite: una simile ‘eresia’ è, in realtà, quasi coeva alla stessa assiomatizzazione di Zermelo, che al riguardo non si sbilanciava né in un senso né nell’altro. 30 Il linguaggio della geometria elementare è privo di costanti e di simboli di funzione: ha solo due simboli di predicato, fra ed eqd, di rispettivi gradi 3 e 4. Nell’interpretazione privilegiata, il cui dominio è formato dai punti di uno spazio euclideo, • il simbolo fra designa la relazione che lega punti x, y, z giacenti su di una stessa retta, con y intermedio tra x e z (non esclusa l’eventualità che y coincida con x o con z, o che addirittura x, y, z coincidano uno con l’altro); • il simbolo eqd designa la relazione che lega x, y, u, v quando la distanza di x da y è uguale alla distanza di u da v. Un limite del linguaggio è che non consente di parlare esplicitamente di figure intese come insiemi di punti. Ciononostante potremo formulare delle affermazioni che, indirettamente, riguardano figure (vedi sotto, es.37). Gli assiomi andranno scelti diversamente a seconda della dimensione dello spazio euclideo che si vuole considerare. Per fortuna, sono in tutto un paio gli assiomi che devono essere adattati alla dimensione dello spazio, mentre la maggior parte degli assiomi rimangono sempre gli stessi. Un primo gruppo di assiomi, che riguarda il transitività e connettività: fra( x, y, x ) fra( x, y, u ) ∧ fra( y, z, u ) x 6= y ∧ fra( x, y, z ) ∧ fra( x, y, u ) predicato fra, comprende antisimmetria, → y=x → fra( x, y, z ) → fra( x, z, u )∨fra( x, u, z ) Assiomi di analoga semplicità concettuale riguardano la relazione di equidistanza: riflessività, antisimmetria, transitività. eqd( x, y, y, x ) eqd( x, y, z, z ) → y=x eqd( x, y, z, u ) ∧ eqd( x, y, v, w ) → eqd( z, u, v, w ) Altri quattro assiomi, che caratterizzano in senso fortemente geometrico la teoria, vengono chiamati assioma di Pasch, assioma di Euclide, assioma dei cinque segmenti e assioma di costruzione di segmenti: fra( x, `, u ) ∧ fra( y, u, z )→∃ v ( fra( x, v, y ) ∧ fra( z, `, v ) ) x 6= u ∧ fra( x, u, ` ) ∧ fra( y, u, z )→∃ v ∃ w ( fra( x, z, v ) ∧ fra( x, y, w ) ∧ fra( v, `, w ) ) x 6= y ∧ fra( x, y, z ) ∧ fra( x1 , y1 , z1 ) ∧ eqd( x, y, x1 , y1 ) ∧ eqd( y, z, y1 , z1 ) ∧eqd( x, u, x1 , u1 ) ∧ eqd( y, u, y1 , u1 )→eqd( z, u, z1 , u1 ) ∃ z ( fra( x, y, z ) ∧ eqd( y, z, y1 , z1 ) ) Due assiomi servono a caratterizzare la dimensione dello spazio geometrico, imponendole un limite inferiore ed un limite superiore. Per esempio, volendo caratterizzare uno spazio a due dimensioni, e dopo aver posto allineati( x, y, z ) ↔Def fra( x, y, z )∨fra( y, z, x )∨fra( z, x, y ) , si stabiliranno le seguenti limitazione inferiore e limitazione superiore: ∃ x ∃ y ∃ z ¬allineati( x, y, z ) u 6= v ∧ eqd( x, u, x, v ) ∧ eqd( y, u, y, v ) ∧ eqd( z, u, z, v )→allineati( x, y, z ) Per ultimo viene lo schema di continuità: ∃ z ∀ x ∀ y ( ϕ ∧ ψ→fra( z, x, y ) ) → ∃ u ∀ x ∀ y ( ϕ ∧ ψ→fra( x, u, y ) ) Qui ϕ sta per una formula tale che 31 • x sta in varr(ϕ), mentre né y né z né u stanno in varr(ϕ); • y sta in varr(ψ), mentre né x né z né u stanno in varr(ψ); per cui, intuitivamente parlando, questo schema dice che se due insiemi F, G di punti giacciono su una stessa retta e tutti i punti di F stanno dalla stessa parte rispetto a ciascun punto di G, allora c’è un punto u intermedio fra tutti i punti di F e tutti i punti di G. Esercizio 36 Dimostrate che conseguono logicamente dagli assiomi gli enunciati ∀ x ∀ y( fra( x, x, y ) ∧ fra( x, y, y ) ) e ∀ x ∀ y ∀ z ( fra( x, y, z )→fra( z, y, x ) ) . 2 Esercizio 37 Esprimete nel linguaggio della geometria elementare il fatto che quando un segmento collega due punti, uno interno e l’altro esterno a una data circonferenza, allora il segmento interseca la circonferenza. 2 4 4.1 Questioni metamatematiche Non-contraddittorietà di una teoria Lei scrive: ‘Il fatto che gli assiomi sono veri ci assicura che essi non si contraddicono fra loro’. Mi ha molto interessato leggere nella Sua lettera proprio questa frase, poiché io, da quando ho incominciato a riflettere, scrivere e tenere conferenze su questo argomento, ho sempre detto esattamente il contrario: se assiomi arbitrariamente stabiliti non sono in mutua [sic!] contraddizione con tutte le loro conseguenze, allora essi sono veri, allora esistono gli enti definiti per mezzo di quegli assiomi. Questo è per me il criterio della verità e dell’esistenza. (Da una lettera di Hilbert a Frege, 1899÷1900) —————— Il 16 giugno del 1902 il filosofo Bertrand Russell indirizzava una lettera al grande logico Gottlob Frege, riguardo ad un’opera della quale questi stava ultimando il secondo volume. Tambur battente (il 22 giugno), Frege rispondeva in questi termini: “Molte grazie per la sua interessante lettera · · · La sua scoperta della contraddizione mi ha causato la piú grande sorpresa e, direi quasi, costernazione, dato che ha scosso la base sulla quale intendevo costruire l’aritmetica · · · ” Che era successo? Vediamo di riassumere in due parole ciò che costituisce la cosiddetta antinomia di Russell.12 Utilizzando il linguaggio con i soli predicati ∈ ed = (lo stesso della sez. 3.3.1) per formalizzare una teoria degli insiemi, può venire spontaneo postulare che ∃ x ∀ y ( y ∈ x↔ϕ ) , dove ϕ è una qualsiasi formula in cui figura libera la sola variabile y. Ciò corrisponde all’intuizione che, in una teoria generale degli insiemi (che non si limiti a trattare di insiemi infiniti, ma vada oltre), qualunque proprietà —almeno se è esprimibile con una formula ϕ — descriva intensionalmente un insieme. Quell’insieme x che siamo soliti denotare come { y |ϕ[y] }. 12 Molti la chiamano ‘paradosso’ di Russell, ma la parola antinomia è piú appropriata, in quanto si tratta di una genuina contraddizione e non, semplicemente, di qualcosa che causa sconcerto mentale. 32 Ma l’intuizione si scontra con la seguente realtà: se come ϕ prendiamo la formula y ∈ / y, e quindi consideriamo l’insieme x formato da tutti e soli gli elementi y tali che y ∈ / y, allora x apparterrà a sé stesso se e solo se non appartiene a sé stesso: una patente contraddizione. Non se ne esce neppure assumendo che l’appartenenza sia ben fondata (cfr. sez. 3.3.3): una contraddizione non svanisce, in effetti, per l’aggiunta di nuove ipotesi ma, caso mai, per eliminazione o indebolimento di alcuni degli assunti da cui è scaturita. Frege era incorso in una contraddizione di questa natura nel tentativo di formalizzare i fondamenti dell’aritmetica; eppure il germe della contraddizione, presente nella sua teoria era rimasto latente per diversi anni. Se una contraddizione può insediarsi in un formalismo limato per anni, come non essere perplessi sull’affidabilità dell’intera logica? come non nutrire scetticismo sulla non-contraddittorietà di qualunque teoria? È opinione di chi scrive che sia irragionevole temere che possa domani o mai rivelarsi contraddittoria una teoria come l’aritmetica proposta nella sez. 3.2.3. Se una teoria ha un modello, tanto basta a certificarne la non-contraddittorietà: e la teoria in questione è, in effetti, generata da un numero finito di enunciati, veri —cosı́ appare lampante— nel modello privilegiato. Il modello privilegiato ha una sua evidenza intuitiva, poiché poggia sul dominio dei numeri naturali, che l’uomo ha indagato per millenni, trovando continue conferme ai convincimenti via via maturati sul suo conto. Appena piú delicata è la questione della non-contraddittorietà dell’aritmetica di Peano (cfr. sez. 3.2.4), in quanto gli enunciati che generano la teoria sono infiniti di numero: cogliere con uno sguardo la verità dello schema di induzione non è facile quanto rendersi conto della verità di un insieme finito di enunciati. Anche in questo caso, comunque, lo scetticismo sembra poco ragionevole: rischierebbe di portare a una paralisi del pensiero. Se è facile incorrere in errori nel formulare una teoria generale degli insiemi (il caso di una teoria degli insiemi finiti è di gran lunga meno problematico), la ragione è che il dominio stesso che presumiamo di descrivere sfugge in parte alla nostra intuizione. Ma la situazione, oggi, non è malcerta come poteva esserlo ai primi del ’900, quando l’indagine su quel dominio contava sı́ e no venti anni di esperienza. Esercizio 38 Considerate la teoria Cn( {(E),(N),(W),(L),(A), ( ∃ u ∀ y ( y 6= u→y ∈ u ))}) comprendente, oltre agli assiomi insiemistici della sez. 3.3.1 e allo schema di aciclicità della sez. 3.3.3, anche l’assunzione di esistenza di un insieme avente come suoi elementi tutti gli altri insiemi. Mostrate che questa teoria è contraddittoria. 2 Esercizio 39 Considerate la teoria Cn( {(E),(N),(W),(L),(A), ( ∀ v ∃ x ∀ y ( y ∈ x↔( y ∈ v ∧ ϕ ) ) )}) comprendente, oltre agli assiomi insiemistici delle sezz.3.3.1 e 3.3.3, anche il cosiddetto schema di separazione, che permette di circoscrivere entro un qualunque insieme v il sottinsieme x = {y ∈ v | ϕ[y]} costituito dagli elementi che soddisfano una certa proprietà, espressa da ϕ. Nonostante la somiglianza dello schema di separazione con l’assunto che portò all’antinomia di Russell, questa teoria non è contraddittoria. Riuscite a dimostrare questo fatto? 2 Nel caso di una teoria espressa in un linguaggio con uguaglianza, acquista rilievo una questione molto vicina a quella della contraddittorietà. È scarsissimo —per non dire nullo— l’interesse di una teoria che non ammetta alcun modello = con piú di un elemento in ∀= . Per questo si usa dire che una teoria Cn(℘) con uguaglianza è contraddittoria anche quando in realtà non è direttamente Cn(℘), ma Cn(℘ ∪ {∃ x ∃ y x 6= y}), ad essere contraddittoria. 33 4.1.1 Consistenza di un sistema deduttivo [· · · · · · DA COMPLETARE· · · · · · ] Torneremo sulla questione della consistenza nella sez. 5.1.3. 4.2 Completezza di una teoria Definizione 13 Una teoria Γ si dice completa se per ogni enunciato ϑ del suo linguaggio: ϑ appartiene a Γ o ¬ϑ appartiene a Γ. 2 (In altre parole: Γ è completa se ogni enunciato formulato nel simbolismo di Γ o vale in tutti i modelli di questa teoria o in nessuno). L’importanza di questa nozione di teoria completa è che tali sono le teorie della forma Th(=). Se cerchiamo di individuare un insieme ℘ di enunciati (veri in =) adeguato a descrivere =, ma la teoria Cn(℘) risulta incompleta, allora è escluso che possa valere Cn(℘) = Th(=), e dunque non abbiamo raggiunto l’intento: l’assiomatizzazione ℘ risulta inadeguata. Esistono vari criteri per rivelare la completezza di una teoria, quando essa è data nella forma Cn(℘). Fra le altre, si dimostrano complete: • La teoria dei numeri naturali con successore descritta nella sez. 3.2.1. • La geometria elementare della sez. 3.4. È stato dimostrato che se da questa teoria lasciamo cadere lo schema d’assioma di continuità e al suo posto introduciamo come nuovo assioma un enunciato che quando un segmento collega due punti, uno interno e l’altro esterno a una data circonferenza, allora il segmento interseca la circonferenza (vedi soluzione dell’es.37), allora la teoria cessa di essere completa. Esercizio 40 La teoria contraddittoria è completa? 4.3 2 Decidibilità o indecidibilità di una teoria Dal punto di vista computazionale, la questione di maggior rilievo riguardo a una teoria è: “Si può stabilire per mezzo di un procedimento algoritmico, quali enunciati appartengono ad una teoria e quali no?” Viene detta decidibile una teoria per la quale un simile procedimento esiste. Naturalmente il procedimento va ideato avendo di mira anche l’efficienza: non di rado una teoria che è decidibile in linea di principio non lo risulta di fatto, per via dei tempi proibitivi di risposta. Se una teoria è decidibile, dopo aver formulato nel linguaggio di tale teoria una congettura α, potremo chiedere al calcolatore che convalidi o refuti α. La prospettiva è interessante, se pensiamo alle non poche congetture matematiche, come quella di Fermat, che rimangono aperte per secoli.13 13 La notissima congettura, spesso impropriamente chiamata ‘grande teorema’ di Fermat (tale è diventato solo dopo la dimostrazione di Andrew Wiles del 1993/94, mentre Pierre de Fermat visse nel secolo XVII), dice che per nessun numero intero n > 2 esistono tre interi x, y, z tali che xn + y n = z n , salvo soluzioni banali in cui un’incognita si annulla. 34 Quando la teoria è della forma Th(=), disporre di un algoritmo di decisione significa poter ottenere responsi automatici a domande relative al dominio d’interesse. Per esempio, alle due domande ∃ x ∃ y x+y = 0 , ∃ x ∃ y x+y 0 = 0 relative all’aritmetica di Presburger (vedi sez. 3.2.2) competerà rispettivamente risposta affermativa e negativa: in un caso, perché 0 + 0 = 0, nell’altro perché non esistono numeri naturali h, k per i quali h + k + 1 = 0. L’esempio non è scelto a caso, poiché è ben noto che la teoria di Presburger è decidibile (un tentativo di automatizzarla su computer risale al 1957, ma evidenziò che nonostante la decidibilità restava il problema, insormontabile, della complessità algoritmica). Se, per ipotesi, la decidibilità si mantenesse anche dopo aggiunto al linguaggio di Presburger l’operatore E di esponenziazione, potremmo porre al calcolatore domande sui numeri naturali impegnative come lo scioglimento della congettura di Fermat: ∃ u ∃ x ∃ y ∃ z ( u > 000 ∧ x 6= 0 ∧ y 6= 0 ∧ z 6= 0 ∧ x E u +y E u = z E u ) ? Esempi di teoria decidibile, a parte la già menzionata aritmetica di Presburger ed altre teorie che menzioneremo nel seguito, sono: la teoria dei gruppi commutativi e quella delle algebre di Boole (che discuteremo in altra dispensa —qualche cenno sarà dato sotto, nella sez. 5.3). Queste sono entrambe teorie della forma Cn(℘), dove costrutti del linguaggio predicativo ed insieme ℘ degli assiomi sono opportunamente fissati. Bastano questi pochi esempi a dimostrare che la decidibilità non è una chimera: va comunque sottolineato subito che le teorie indecidibili sono frequenti, importanti e a portata di mano. Inoltre la decidibilità è di interesse piú filosofico che pratico a meno che la complessità algoritmica del decisore non sia bassa, eventualità molto rara.14 4.3.1 Teorie indecidibili e indecidibilità essenziale La teoria contraddittoria è, evidentemente, decidibile: giacché in effetti, quale che sia l’enunciato α proposto come congettura, il responso sull’appartenenza di α alla teoria dovrà essere, invariabilmente, affermativo. Però (per quello che si è detto nella sez. 4.1), può non essere subito evidente, dal modo in cui una teoria viene presentata, se essa sia contraddittoria. Agli ‘antipodi’ della teoria contraddittoria, troviamo le teorie essenzialmente indecidibili: Definizione 14 Una teoria Γ si dice essenzialmente indecidibile se né Γ né alcuna teoria non-contraddittoria ∆, con Γ ⊆ ∆, è decidibile. Una teoria Γ si dice ereditariamente indecidibile se né Γ né alcuna teoria ∆, con ∆ ⊆ Γ, è decidibile. 2 (È sottinteso che Γ e ∆ si basino sullo stesso linguaggio). Può sorprendere che teorie cosı́ ‘patologiche’ possano esistere; ma forse le teorie piú espressive sono proprio quelle piú soggette all’indecidibilità essenziale. E non si creda che l’indecidibilità ad un grado simile presupponga un elaborato insieme ℘ di generatori per la teoria. Sono essenzialmente indecidibili, fra le altre, l’aritmetica di Peano e l’aritmetica piú semplice che abbiamo esposto nella sez. 3.2.3. Fu stabilito nel 1962 che la teoria generata dai due soli assiomi (N),(W) (nel linguaggio della sez. 3.3.1) è sia essenzialmente che ereditariamente indecidibile. 14 Stando a un articolo del 1979, è poco plausibile che un decisore per l’aritmetica di Presburger possa avere 2n complessità temporale deterministica relativa al caso peggiore di ordine piú basso di 22 , dove n è la taglia della congettura da trattare. 35 Due ‘capostipiti’ dei risultati di questo tipo furono stabiliti da Kurt Gödel nel 1931, in relazione ad una formalizzazione dell’aritmetica di Peano. Questi scioccanti risultati vennero chiamati teoremi di incompletezza. Altro importante teorema limitativo, alcune istanze del quale sono direttamente deducibili dai teoremi di incompletezza, è il teorema di Church, scoperto nel 1936, in base al quale è generalmente indecidibile la teoria Cn(∅).15 4.3.2 Semidecidibilità di una teoria 4.3.3 Oltre la mera decidibilità 4.3.4 Frammenti decidibili di una teoria Per soluzione di un caso speciale del problema della decisione · · · intendiamo questo: che verrà data una classe speciale di formule ben formate, un test effettivo per riconoscere se una formula appartiene a questa classe, un procedimento effettivo (la procedura di decisione) per determinare se una formula di questa classe è un teorema, ed infine un metodo effettivo per trovare una dimostrazione della formula, una volta determinato in tal modo che essa è un teorema. Chiamando effettivo un procedimento o un metodo intendiamo, grosso modo, dire questo: che c’è la garanzia di ottenere il responso desiderato in ciascun caso particolare, tramite l’esecuzione meticolosa e del tutto meccanica di istruzioni fissate, senza che occorra alcun esercizio di ingegnosità · · · (Alonzo Church, 1951) 4.4 Assiomatizzabilità di una teoria Definizione 15 Una teoria Γ si dice assiomatizzabile se c’è un insieme decidibile ℘ di enunciati tale che Γ = Cn(℘). 2 Conseguirà dal teorema di completezza per la logica predicativa del prim’ordine (vedi sez. 5.1.4) che qualunque teoria assiomatizzabile è semidecidibile. Esercizio 41 Deducete dall’ultima osservazione che qualunque teoria assiomatizzabile e completa è decidibile. 2 4.4.1 Assiomatizzabilità finita di una teoria Un insieme finito di enunciati è di sicuro decidibile. Fra le teorie assiomatizzabili ha particolare interesse mettere a fuoco le seguenti: Definizione 16 Una teoria Γ si dice finitamente assiomatizzabile se c’è un insieme finito ℘ di enunciati tale che Γ = Cn(℘). 2 Non è detto, se una teoria è assiomatizzabile, che essa sia anche finitamente assiomatizzabile: non lo sono, ad esempio, né la teoria di Peano né la geometria elementare (cfr. sezz.3.2.4 e 3.4). Certo, se una teoria è finitamente assiomatizzabile, essa si presta meglio ad essere trattata con un dimostratore automatico (utilizzando, per esempio, metodi basati sul principio di 15 C’è un’eccezione (cfr. sez. 4.3.4): il caso di linguaggi privi di costanti e simboli di funzione, in cui i simboli predicativi sono tutti di grado 1. In tale ambito è possibile stabilire di qualunque enunciato se sia valido o no —cosa che lasceremo indimostrata. 36 risoluzione, vedi sez. 5.2). Ma, per fortuna, anche quando l’assiomatica è infinita il teorema di compattezza (che vedremo nella sez. 5.1.4) ci apre qualche possibilità. 4.4.2 Indipendenza fra assiomi, ed assiomatizzazioni equipollenti [. . . . . . DA COMPLETARE . . . . . . ] 5 Apparati deduttivi per la logica del prim’ordine 5.1 5.1.1 Sistemi deduttivi alla Hilbert Assiomi logici, derivabilità, inferenze Per semplicità in questa sezione consideriamo la variante del linguaggio predicativo del prim’ordine che ha come solo connettivo binario → e che è priva dei connettivi nullari e del quantificatore ∃. Lasciamo cadere anche la regola di formazione che prevede che ( ϕ ) sia una formula quando ϕ è una formula. Dopotutto non sono rinunce importanti rispetto alla sez. 1.1, dato che abbiamo mantenuto una base adeguata di connettivi, e dato che il quantificatore esistenziale si può facilmente esprimere attraverso quello universale. Per completezza di esposizione, prevediamo che il relatore = sia fra i costrutti del linguaggio. Un limite di questa sezione, invece, è che non ammettiamo nel linguaggio costanti né simboli di funzione. A questo linguaggio interpretato non manca che aggiungere la relazione di derivabilità, affinché diventi un formalismo nel senso della parola delineato nella sez. 2.6.1.16 Cruciale, ai fini della nostra definizione della derivabilità, è la selezione di un opportuno insieme di schemi d’enunciato valido: (( ϕ→ψ ) → ( ( ψ→χ )→( ϕ→χ ) ))∀ (( ¬ϕ→ϕ ) → ϕ)∀ (ϕ → ( ¬ϕ→ψ ))∀ (∀ x∀ y ϕ→∀ y∀ x ϕ)∀ (∀ x ( ϕ→ψ ) → ( ∀ x ϕ→∀ x ψ ))∀ (∀ x ϕ → ϕ)∀ (ϕ → ∀ x ϕ)∀ ove x non appartiene a varr(ϕ) ∀ y ¬ ∀ x ¬x = y ove x, y sono tra loro distinte (x = y → ( ϕ[x, x]→ϕ[x, y] ))∀ dove ϕ[x, x] può essere qualsiasi formula atomica in cui figuri x, e dove ϕ[x, y] risulta da ϕ[x, x] per sostituzione di y ad una singola occorrenza di x Indichiamo con Σ: l’insieme di tutti gli enunciati; Λ: l’insieme di tutti gli enunciati che ricadono sotto almeno uno dei suelencati schemi di enunciato valido; ℘: un insieme di enunciati; ϑ: un enunciato; per giungere alla seguente definizione della derivabilità. 16 Questo formalismo è ripreso da Tarski: ne esistono varianti che si fanno carico anche dei simboli di funzione. 37 Definizione 17 ϑ si dice derivabile da ℘, in simboli ℘ ` ϑ, sse ϑ appartiene a tutti i sottinsiemi Ω di Σ tali che 1. Λ ⊆ Ω, 2. ℘ ⊆ Ω; 3. Ω è chiuso rispetto alla seguente regola di modus ponens: α appartiene ad Ω quando c’è un β tale che ad Ω appartengano sia β che ( β→α ). 2 La dimostrazione del seguente lemma è semplice, e viene lasciata come esercizio: Lemma 1 (a) L’insieme Θ(℘) di tutte le formule derivabili da ℘ è intersezione di tutti i sottinsiemi Ω di Σ che godono delle predette proprietà 1.–3. e dunque gode lui stesso di tali proprietà di chiusura. (b) ϑ appartiene a Θ(℘) se e solo se esiste una sequenza finita ϑ0 , ϑ1 , . . . , ϑn di enunciati 0. l’ultimo dei quali, ϑn , sia appunto ϑ, e nella quale ciascun ϑi soddisfi almeno una delle tre condizioni: 1. ϑi appartiene a Λ, 2. ϑi appartiene a ℘, 3. vi sono p, q, con 0 6 p < i e 0 6 q < i, tali che ϑp ha la forma ( ϑq →ϑi ). 2 Definizione 18 Una sequenza di enunciati come quella di cui si parla in (b) viene chiamata catena d’inferenza, ed anche una derivazione di ϑ da ℘. Le sue componenti vengono detti passi (d’inferenza). L’ultimo passo viene chiamato conclusione. Gli enunciati in Λ vengono chiamati assiomi logici; gli enunciati in ℘ vengono chiamati assiomi propri di Θ(℘), i passi di un’inferenza che si giustificano con la 3. vengono detti impieghi del modus ponens. 2 A priori non è detto che Θ(℘) sia una teoria; ma emergerà dal seguito che essa non è altro che la teoria Cn(℘) già considerata nella sez. 2.5. Esercizio 42 Dimostrate le tesi (a) e (b) del lemma che precede. 2 Esercizio 43 È possibile che un assioma logico ricada sotto piú d’uno degli schemi d’assioma su riportati? 2 Esercizio 44 Dimostrate che non è limitativo richiedere che in una catena d’inferenza nessun enunciato si presenti piú di una volta. 2 Dal lemma 1 discende la seguente importante proposizione, che ci dice in che senso la derivabilità è una nozione ‘sintattica’: 38 Corollario 1 Se ℘ è ricorsivo (cioè, se c’è un algoritmo in grado di stabilire se un dato enunciato appartenga o no a ℘), allora Θ(℘) è ricorsivamente enumerabile (cioè c’è un procedimento perpetuo in grado di generare tutti e soli gli enunciati che stanno in Θ(℘)). (Affermando questo non si intende, naturalmente, escludere che Θ(℘) possa essere lui stesso ricorsivo). Traccia di dim. Si adotti una qualunque tecnica sistematica per generare, una di seguito all’altra, tutte le sequenze finite di enunciati. Per ciascuna sequenza, si verifichi se è una catena di inferenze: in caso affermativo, si ponga ϑ in Θ(℘). 2 Quest’ultimo corollario ci dà qualche indizio sul senso della citazione di Frege riportata all’inizio della sez. 2.6.3. 5.1.2 Teorema di correttezza Teorema 2 (Correttezza) Da un insieme ℘ di enunciati non è derivabile nulla che non sia conseguenza logica di ℘. In breve: Θ(℘) ⊆ Cn(℘). 2 La dimostrazione consiste nel verificare che • Ogni assioma logico è un enunciato valido. • Ogni impiego di una regola di inferenza ricava dalle sue premesse una conseguenza logica delle stesse. Una volta fatte queste due verifiche, il teorema di correttezza scenderà subito. In effetti, considerando una qualunque catena di inferenze ϑ0 , . . . , ϑn in Θ(℘), avremo induttivamente che ϑi sta in Cn(℘) per i = 0, . . . , n: • Se ϑi è un assioma logico, allora qualsiasi interpretazione = rende vero ϑi . In particolare ciò accade quando = è un modello di ℘: dunque ϑi sta in Cn(℘). • Se ϑi è un assioma proprio, cioè se ϑi appartiene a ℘, allora banalmente ϑi è vero in ogni modello di ℘, cioè sta in Cn(℘). • Se ϑi è ricavato tramite modus ponens da ϑp e ϑq , allora, assumendo induttivamente che ϑp e ϑq appartengano a Cn(℘), avremo lo stesso per ϑi . In effetti ogni modello di ℘, essendo modello anche per ϑq , e per ϑp che è ( ϑq →ϑi ), deve rendere vera ϑi . Diamo per pacifico che ogni impiego di modus ponens ricavi dalle sue premesse una conseguenza logica delle stesse. In formalismi che accettano piú regole di inferenza, e meno ovvie del modus ponens, ogni regola di inferenza dovrebbe essere trattata separatamente nella dimostrazione di correttezza. Qui siamo facilitati dall’aver scelto un formalismo ridotto all’essenziale, ma è altresı́ vero che le catene di inferenze, in un formalismo ridotto come il nostro, tendono ad essere piú lunghe. Per quanto riguarda la validità degli assiomi logici: • I primi tre schemi sono schemi di tautologia. Le tautologie, strettamente parlando, appartengono alla logica proposizionale (vedi dispensa ‘Logica proposizionale a due valori di verità’); ma si può dimostrare la validità, nella logica predicativa, di qualunque enunciato 39 della forma ϕ∀ , dove ϕ risulti da una tautologia per sostituzione di formule alle lettere proposizionali (formula uguale in tutte le occorrenze di una stessa lettera). Avremmo potuto dunque, d’emblée, assumere come assiomi tutti gli enunciati di struttura tautologica. Invece ci siamo limitati a tre schemi, per un piú semplice riconoscimento, su base sintattica, degli assiomi logici. • Il quarto e il quinto schema d’assioma esprimono proprietà tanto facilmente intuibili del quantificatore universale da non meritare commenti. Per quanto riguarda lo schema (∀ x ϕ → ϕ)∀ , si tratta di un caso particolare di uno schema valido molto piú generale, noto come assioma di specializzazione: (∀ x ϕ → ϕxt )∀ , ove bisogna richiedere che la sostituzione di t ad x non causi confusione di variabili (cfr. sez. 1.4). Ovviamente lo schema di specializzazione è particolarmente utile quando nel linguaggio sono presenti simboli di funzione e costanti, per cui la sintassi dei termini è piú ricca. La validità dello schema (ϕ → ∀ x ϕ)∀ , ove si richiede che x non figuri libera in ϕ, è anch’essa molto facile da vedere. • Dei due schemi d’assioma sull’uguaglianza, il primo si giustifica osservando che per ogni ζ del dominio c’è, in effetti, un elemento che uguaglia ζ: ζ stesso. Il secondo è un caso particolare di uno schema valido già considerato nella sez. 3.1. Esercizio 45 E. Mendelson riferisce la nozione di derivabilità non all’insieme degli enunciati ma delle formule. Ammettendo nel linguaggio anche i simboli di funzione (ma lasciandone fuori il relatore =), prende come assiomi logici i seguenti: ( ϕ→( ψ→χ ) ) → ( ( ϕ→ψ )→( ϕ→χ ) ) ϕ → ( ψ→ϕ ) ( ¬ψ→¬ϕ) → ( ( ¬ψ→ϕ )→ψ ) ∀ x ϕ → ϕxt ove la sostituzione non causa confusione (t non è tenuto ad essere distinto da x) ∀ x ( ϕ→ψ ) → ( ϕ→∀ x ψ ) ove x non appartiene a varr(ϕ) Inoltre nella definizione di derivabilità richiede che Θ(℘) sia chiuso rispetto alla regola di modus ponens (come la nostra, ma riferita alle formule) e rispetto alla seguente regola di generalizzazione: quando ϑ appartiene a Θ(℘) anche ∀ x ϑ appartiene a Θ(℘), per qualunque variabile x. Dimostrate la correttezza di questo formalismo di Mendelson. 2 5.1.3 (*) Consistenza del calcolo predicativo Infinitum actu non datur. (Aristotele) Dio, che solo con la infinita capacitade infinito comprende. (Dante) Ricordiamo che un calcolo Σ, ` è consistente, per definizione, se non permette di derivare qualsiasi ϑ di Σ dai soli assiomi logici. La consistenza di un calcolo predicativo17 si può 17 Meglio dire ‘un’, piuttosto che dire ‘il calcolo predicativo’ perché, non dimentichiamolo— il linguaggio, e dunque Σ, dipende da certi parametri. 40 dimostrare sbrigativamente cosı́: dato che in Θ(∅) non vi sono altro che enunciati validi (in base al già dimostrato teorema di correttezza), l’insieme Θ(∅) non può comprendere tutti gli enunciati. Ciò scende dalla stessa esistenza di enunciati non validi (f per citare il piú semplice). Una dimostrazione di questo tipo lascia perplesso chi vorrebbe una dimostrazione di consistenza inoppugnabile dal punto di vista filosofico. Nelle nozioni semantiche, quale ad esempio il formidabile concetto di ‘classe RE di tutte le interpretazioni possibili del linguaggio’, una persone incline allo scetticismo può supporre insidie nascoste che potrebbero viziare i ragionamenti. Le stesse regole di designazione (cfr. def.3 nella sez. 2.2) a qualcuno sembrano sospette. Qualora la dimostrazione di correttezza fosse inaffidabile, come fidarsi allora della consistenza, da essa dedotta a mo’ di corollario? Ecco perché alcuni autori sono andati in cerca di dimostrazioni della consistenza piú dirette e costruttive, fondate unicamente sulla sintassi. Elliott Mendelson, riferendosi alla propria nozione di derivabilità (vedi sopra, es.45), non troppo dissimile dalla nostra, dimostra la consistenza del calcolo predicativo lungo quest’altra falsariga che prescinde dal teorema di correttezza: Se cancelliamo da una formula ϕ tutti i quantificatori, e tutti i termini (comprese le parentesi che racchiudono liste di argomenti, e le virgole che separano gli argomenti), otteniamo un ◦ enunciato ϕ della logica proposizionale. ◦ Osserviamo che per ogni istanza ϕ di un assioma logico, ϕ è una tautologia. Non solo: la regola di modus ponens, applicata a una coppia ϕ, ϕ→ψ di passi per derivare ψ, se assumiamo ◦ z }| { ◦ ◦ ◦ ◦ tautologiche tanto ϕ che ϕ→ψ (cioè ϕ → ψ), produrrà una ψ con ψ tautologica. Per quanto riguarda la regola di generalizzazione, applicata a un passo ϕ essa produce un passo della forma ◦ z }| { ◦ ◦ ∀ x ϕ, per il quale ∀ x ϕ, coincidente con ϕ, sarà tautologica se ϕ è tautologica. Tutto ciò dimostra che se a ciascun passo χ di una catena di inferenze non involgente ◦ assiomi propri si applica la trasformazione χ 7→χ, il risultato sarà una catena di tautologie. ◦ ◦ Poiché non è possibile che due formule ψ e ¬ ψ siano entrambe tautologie, bisogna escludere (qualunque sia ψ) che almeno una delle due formule ψ, ¬ψ stia in Θ(∅). La fiducia maggiore che sentiamo di poter riporre in un ragionamento di questo tipo sintattico si spiega con il fatto che, in sostanza, ci siamo ridotti a considerare interpretazioni = dal dominio singoletto ∀= = {u}: interpretazioni che non hanno davvero nulla di formidabile. Esercizio 46 Si può traslare questa dimostrazione di consistenza alla versione del calcolo predicativo presentata nella sez. 5.1.1, che tratta l’uguaglianza? 2 5.1.4 Teoremi di completezza, compattezza ed enumerabilità Teorema 3 (Completezza) Ogni conseguenza logica di un insieme ℘ di enunciati è derivabile da ℘. In breve: Cn(℘) ⊆ Θ(℘). 2 Di questo importantissimo teorema, dimostrato per la prima volta da Gödel nel 1930 (in riferimento ad un formalismo diverso da quello qui considerato, ma dai connotati simili), omettiamo la dimostrazione, che è molto impegnativa. A questo punto sappiamo che Cn(℘) = Θ(℘), e dunque che le relazioni ` e |=, a priori distinte, sono in realtà coincidenti. Fra i corollari importanti del teorema di completezza vi sono i due seguenti: 41 Teorema 4 (Compattezza) Ogni conseguenza logica di un insieme ℘ di enunciati è anche conseguenza logica di un sottinsieme finito di ℘. Ogni insieme contraddittorio ℘ di enunciati ha un sottinsieme finito contraddittorio. 2 Teorema 5 (Enumerabilità) Se ℘ è un insieme ricorsivo di enunciati (per esempio, se è ∅, o se è finito), l’insieme delle sue conseguenze logiche è ricorsivamente enumerabile. 2 · · · · · · DA COMPLETARE · · · · · · Esercizio 47 Dimostrate che gli insiemi ℘ di enunciati per i quali Θ(℘) coincide con la teoria contraddittoria sono quelli per i quali c’è un enunciato ϑ appartenente, assieme a ¬ϑ, a Θ(℘). 2 5.1.5 Varianti del formalismo hilbertiano qui proposto [· · · · · · DA COMPLETARE · · · · · · ] Regola di sostituzione di equivalenti: Da ϑp e ϑq e ϑr , se ϑp , ϑq hanno rispettivam. forma ϕ→ψ e ψ→ϕ (con le medesime ϕ, ψ), si può ricavare qualunque formula ottenibile da ϑr per sostituzione di ψ ad una o piú occorrenze di ϕ. 5.2 5.2.1 Sistemi di deduzione fondati sul principio di risoluzione [· · · · · · TUTTA LA SOTTOSEZIONE DA RIEMPIRE · · · · · · ] Riduzione di enunciati a forma prenessa In questo paragrafo ci restringiamo a considerare, per semplicità, solo formule in cui non compaiono i simboli ε, = né i connettivi ↓, |, +, ←, >. Definizione 19 Si dice che un enunciato α è in forma normale prenessa se α è della forma Q1 x1 · · · Qn xn M ove: • n > 0, • ciascun Qi xi è un quantificatore ∀ xi oppure ∃ xi , • M è una formula senza quantificatori. La lista Q1 x1 · · · Qn xn di quantificatori si chiama il prefisso di α; M la matrice di α. Se tutti i quantificatori Qi sono universali (cioè ∀), allora si dice che α è una chiusura universale di M . (Quest’ultima definizione vige anche quando M è una formula in cui compaiono quantificatori). 2 Ecco qui alcuni esempi di forma normale prenessa: ∀ x ∀ y ( p( x, y ) ∧ q( y ) ), ∀ x ∀ y ( ¬p( x, y )→q( y ) ), ∀ x ∀ y ∃ z ( p( x, y )→r( z ) ), 42 ove p, q, r sono lettere predicative. Se ϕ, ψ, χ sono formule e la variabile x non figura libera in χ, allora le chiusure universali delle seguenti formule (ove Q sta per ∀ o per ∃) sono teoremi del calcolo predicativo: 1. ( ϕ→ψ )↔( ¬ϕ∨ψ ) 2. ( ϕ↔ψ )↔( ( ¬ϕ∨ψ ) ∧ ( ¬ψ∨ϕ ) ) 3. ¬¬ϕ↔ϕ 4. ¬( ϕ∨ψ )↔( ¬ϕ ∧ ¬ψ ) 5. ¬( ϕ ∧ ψ )↔( ¬ϕ∨¬ψ ) 6. Q x ( χ∨ϕ )↔χ∨Q x ϕ 7. Q x ( χ ∧ ϕ )↔χ ∧ Q x ϕ 8. Q x χ↔χ 9. ¬ ∀ x ϕ↔∃ x ¬ϕ 10. ¬ ∃ x ϕ↔∀ x ¬ϕ Se indichiamo con ϕxy la formula ottenuta sostituendo presenze di una variabile y, assente sia da ϕ che da ψ, al posto dele occorrenze libere di x in ϕ, allora avremo che 11. ( Q1 x ϕ∨Q2 x ψ )↔Q1 y Q2 x ( ϕxy ∨ψ ) 12. ( Q1 x ϕ ∧ Q2 x ψ )↔Q1 y Q2 x ( ϕxy ∧ ψ ) Omettiamo la dimostrazione di questi dodici schemi di teorema, che sarebbe lunga e tediosa. Contentiamoci di osservare che la maggior parte di essi è valida: segue la loro dimostrabilità, in virtú del teorema di completezza. Usando queste dodici leggi, possiamo trasformare qualsiasi enunciato β in una forma normale prenessa α tale che ` ( α↔β ) con in seguente procedimento: Passo 1. Si usino le leggi 1., 2. per eliminare i connettivi → e ↔. Passo 2. Si usino le leggi 3., 4., 5., 9., 10. per portare il segno ¬ di negazione immediatamente a sinistra degli atomi p( t1 , . . . , tn ). Passo 3. Si adoperino le leggi 6., 7., 8., 11., 12. per spostare i quantificatori a sinistra, sı́ da ottenere una forma prenessa. (Anche la commutatività di ∧ e di ∨ deve essere sfruttata). · · · · · · DA COMPLETARE · · · · · · 2 Esempio 1 Esercizio 48 Portate gli assiomi di estensionalità e di regolarità delle sezz.3.3.1 e 3.3.3 in forma prenessa, cercando di darne una versione di massima brevità. 2 43 5.2.2 Skolemizzazione Definizione 20 Se una forma normale prenessa S ha solo quantificatori universali ed ha una matrice M in forma normale congiuntiva, ossia M è della forma C1 ∧ · · · ∧ Cn ove ciascun Ci è della forma Di1 ∨ · · · ∨Dimi , ove ciascun Dij è un letterale, cioè della forma pij ( tij1 , . . . , tij`ij ) o della forma ¬pij ( tij1 , . . . , tij`ij ) , allora S si dice una forma (congiuntiva) di Skolem. 2 Piacerebbe poter affermare che qualsiasi enunciato β può essere trasformato in una forma di Skolem S tale che ` ( S↔β ) ; non è cosı́ in generale e dovremo accontentarci di trovare una S equisoddisfacibile con β. In effetti, nel modo che adesso vedremo, dato un qualunque β possiamo ottenere un enunciato S in forma di Skolem S tale che β è soddisfacibile se e solo se S è soddisfacibile. Il procedimento si compone delle seguenti tre fasi: 1. Si ottenga, come descritto sopra, un enunciato α equivalente a β che sia in forma normale prenessa. 2. Scomponendo α come Q1 x1 · · · Qn xn M (vedi def.19), procediamo alla sua ‘skolemizzazione’ cosı́: procedura Skolemizzazione(α); var i, j, d; siano Q1 x1 · · · Qn xn ed M il prefisso di α e la sua matrice; j := ∅; d := 0; per i := 1, . . . , n cicla se Qi ≡ ∃ allora introdurre un funtore f di grado d, ‘nuovo’, ossia distinto da ogni simbolo presente in M ; i M := Mfx(x ; j(1) ,...,xj(d) ) altrimenti j( d +:= 1 ) := i; fine se; fine per; restituire ∀ xj(1) · · · ∀ xj(d) M ; fine Skolemizzazione. 3. Sfruttando la logica proposizionale, si trasformi la matrice M dell’enunciato ottenuto alla fase precedente in equivalente forma normale congiuntiva. 44 5.2.3 Teorema di Herbrand 5.2.4 Organizzazione di un dimostratore automatico Nel 1928 il grande matematico David Hilbert definiva il problema di trovare un algoritmo in grado di stabilire se un enunciato sia o no soddisfacibile “il problema principale della logica matematica”. Nel 1936, il logico Alonzo Church vanificava l’aspettativa che un simile algoritmo potesse esistere; subito, Alan Turing coglieva conseguenze limitative del risultato di Church per tutta quanta la teoria—all’epoca nascente—della calcolabilità. È nondimeno possibile escogitare un procedimento che, ricevendo in ingresso • una collezione finita A1 . . . , AN di postulati di una teoria assiomatica del prim’ordine ed • una tesi T , vale a dire un enunciato che si presume discenda da tali ipotesi assiomatiche, intraprenda una ricerca che 1. termini con un responso di successo se davvero T è conseguenza logica degli assiomi Ai ; in caso contrario, 2. porti forse, con un responso di fallimento, ad escludere che T consegua dagli assiomi oppure, in circostanze sfavorevoli, 3. si protragga all’infinito. Dunque, quando la tesi (o congettura) sottomessa ad esame è effettivamente un teorema, il responso affermativo è garantito; quando, invece, è erronea, anziché fornirci un responso negativo il procedimento potrebbe perpetuare la sua esplorazione di uno spazio di ricerca infinito. In qualche caso particolare, per una teoria della forma Cn({A1 , . . . , AN }) si ha la possibilità di produrre sempre un responso corretto (casi 1. e 2.); il procedimento specializzato realizzabile in circostanze del genere, si dirà decisore per la teoria in questione. Il teorema di Church ci dice, però, che se vogliamo uno strumento non specializzato in alcuna direzione ma adatto al trattamento di qualsiasi teoria assiomatica del prim’ordine, non possiamo escludere l’eventualità 3.; per cui il procedimento si comporterà, cosa molto meno soddisfacente, da semidecisore. Il caso piú ovvio in cui tocca contentarsi di un semidecisore è N = 0, quando non ci sono assiomi di cui tener conto e dunque ci troviamo semplicemente nel calcolo predicativo. Per semplicità, per tutto il resto di questa sezione e fino alla sez. 5.3 supporremo che il linguaggio della teoria in cui sono formulati A1 . . . , AN e T manchi del simbolo = di uguaglianza. Nell’organizzazione tipica di un semidecisore non specializzato, adatto al trattamento di qualsiasi teoria dotata di un numero finito di assiomi, si susseguono queste fasi: (1) Per intraprendere una reductio ad absurdum, la tesi T viene sostituita con la negazione ¬T . L’obiettivo diventa quello di stabilire la insoddisfacibilità della congiunzione A1 ∧ · · · ∧ AN ∧ ¬T . (2) Ciascuno degli enunciati A1 , . . . , AN , ¬T viene portato a forma normale prenessa (v. sez. 5.2.1): cosı́ ad ogni Ai subentra un equivalente A0i , mentre a ¬T subentra T 0 . Il nuovo obiettivo è: evidenziare l’insoddisfacibilità della congiunzione A01 ∧ · · · ∧ A0N ∧ T 0 . 45 (3) Ciascuno degli enunciati A01 , . . . , A0N , T 0 viene portato in forma di Skolem (v. sez. 5.2.2): cosı́ ad ogni A0i subentra un enunciato prenesso A00i la cui matrice ha forma normale congiuntiva; analogamente, a T 0 subentra T 00 . La congiunzione A001 ∧ · · · ∧ A00N ∧ T 00 , pur non essendo logicamente equivalente alla congiunzione originaria A1 ∧ · · · ∧ AN ∧ ¬T , sarà equisoddisfacibile con lei, purché simboli di funzione e/o costanti introdotti durante la skolemizzazione di ciascun A0i siano distinti da quelli introdotti nel corso della skolemizzazione di ogni altro A0j e di T 0 . In nuovo obiettivo è: evidenziare la insoddisfacibilità della congiunzione A001 ∧ · · · ∧ A00N ∧ T 00 . (4) Da ciascuno degli enunciati ∀ x1 · · · ∀ xd (L11 ∨ · · · ∨L1m1 ) ∧ · · · ∧ (Lk1 ∨ · · · ∨Lkmk ) in forma di Skolem ottenuti al passo precedente si lascino cadere i quantificatori, per rappresentarlo poi con l’insieme (congiuntivo) {L11 , . . . , L1m1 }, . . . , {Lk1 , . . . , Lkmk } , ove ciascuna clausola (disgiuntiva) {Li1 , · · · , Limi } è formata di letterali. L’insieme S = {C1 , . . . , CK } ottenuto per unione di tutti questi insiemi di clausole rappresenta la congiunzione delle forme congiuntive di Skolem ottenute nella fase (3). Tale insieme è la rappresentazione con cui lavorare di qui in poi. (5) Si cerchi di trarre da S una manifesta contraddizione, qui intesa come una lista (finita) [ Ci0 , t01 , . . . , t0g0 ], .. .. .. . . . [ CiA , tA1 , . . . , tAgA ], dove ciascuna Cij è una clausola estratta da S mentre i corrispettivi tj1 , . . . , tjgj sono bi , termini che sostituiti alle variabili consecutive di Cij la trasformano in un enunciato C j ossia ne fanno sparire le variabili. La contraddizione dovrà manifestarsi nel fatto che la bi0 ∧ · · · ∧ C bi risulti insoddisfacibile ai sensi del calcolo proposizionale. congiunzione C A 5.2.5 Principio di risoluzione 5.2.6 Completezza del principio di risoluzione 5.2.7 Algoritmo di unificazione 5.3 Sistemi equazionali Frequente oggetto di studio sono le teorie della forma Cn(E) nelle quali E è formato da enunciati della forma s = d∀ —cioè (s = d)∀ . Un paio di esempi illustreranno che le teorie di questo genere hanno estremo rilievo nell’algebra, ma che non emergono solo dallo studio dell’algebra. Esempio 2 Fra le strutture algebriche piú fondamentali vi sono le algebre di Boole. Come nella logica proposizionale, anche qui la scelta delle operazioni da adottare come primitive è molto variabile, senza modifiche della sostanza. Una proponibile assiomatizzazione è xty = ytx x t (y t z) = (x t y) t z xtytxty = x 46 C’è un teorema (teorema di Stone) che dice che qualunque algebra di Boole (i.e., qualunque modello dei tre assiomi qui sopra) è isomorfo a una famiglia di sottinsiemi di un opportuno U, con t interpretato come unione insiemistica ed come operazione ξ 7→ U \ ξ di complementazione. Per questo non è arbitrario impiegare operatori insiemistici (∪, ∩, \, ecc.) per denotare le operazioni booleane: quando torneremo sulle algebre booleane (vedi dispensa “Appunti sull’unificazione booleana”), senza infingimenti utilizzeremo ∪ e non t; analogamente ∩ e non u, ecc.. 2 Esercizio 49 La teoria delle algebre di Boole, con l’aggiunta dell’assioma ∀ x x 6= x, è completa? 2 Esempio 3 In topologia generale, si studia l’operatore di chiusura di Kuratowski per il quale una proponibile assiomatizzazione è ∅ = ∅ x∪x = x cioe‘ x ⊆ x x∪y = x∪y x = x ∅∪x = x x∪y = y∪x x ∪ (y ∪ z) = (x ∪ y) ∪ z Di nuovo, come poco fa, l’interpretazione privilegiata di ∪ è l’unione insiemistica. Cambia invece il significato dell’operatore : se, ad esempio, come dominio d’interpretazione prendiamo la famiglia dei sottinsiemi dell’insieme dei numeri reali, allora x denoterà l’insieme ottenuto aggiungendo all’insieme ξ denotato da x tutti gli eventuali punti di accumulazione di ξ. 2 Esercizio 50 La teoria contraddittoria caratterizzata nella def.11 può coincidere con Cn(E), per qualche E della forma detta sopra? 2 5.3.1 Un formalismo corretto e completo per il trattamento di sole identità Continuiamo per un po’ a considerare teorie della forma Cn(E) nelle quali E sia formato da enunciati della forma s = d∀ . Il problema di stabilire se un enunciato anch’esso della forma s1 = d1 ∀ sia conseguenza logica di E è particolarmente importante; a tal punto che vale la pena d’inquadrarlo in un formalismo (inteso come nella sez. 2.6.1) piú ristretto di quello dell’intera logica predicativa del prim’ordine. Dunque, invece di prendere come insieme degli enunciati tutto l’insieme S(C, F, {= }) delle formule di un linguaggio predicativo L(C, F, {=}) sprovviste di variabili libere, poniamo adesso Σ = { α in L(C, F, {=}) | α è della forma t0 = t1 ∀ }. Come insieme della realizzazioni prendiamo tutte le interpretazioni di L(C, F, {=}) che hanno dominio non singoletto, e —in sintonia non solo con questa stipula ma anche con la particolare nozione di contraddittorietà introdotta alla fine della sez. 4.1— bandiamo le interpretazioni che hanno dominio singoletto dagli insiemi MO(α) di modelli, con α nel Σ ristretto. Forniamo infine la seguente definizione della derivabilità, piú limitata della def.17, e ritagliata su misura per le teorie equazionali di cui ci stiamo occupando ora. Definizione 21 ϑ si dice equazionalmente derivabile da E, in simboli E ` ϑ, sse ϑ appartiene a tutti i sottinsiemi Ω di Σ tali che 47 1. { s = s∀ | s termine involgente i costrutti in C ∪ F } ⊆ Ω, 2. E ⊆ Ω; 3. Ω è chiuso rispetto alle seguenti due regole di inferenza: • quando s = d∀ sta in Ω, lo stesso accade di sσ = dσ ∀ , dove σ è una sostituzione uniforme di termini a variabili; • quando t1 = t∀2 ed s1 = s∀2 sono in Ω ed s1 figura in t1 o in t2 (o in entrambi), allora d1 = d∀2 appartiene anch’essa ad Ω per qualsiasi uguaglianza d1 = d2 ottenibile da t1 = t2 tramite sostituzione di s2 a qualche occorrenza di s1 entro t1 o t2 . 2 Esercizio 51 Si ricalchino, adattandoli al presente ambito di discorso, il lemma 1 e la def.18. 2 L’interesse di questa definizione sta nel seguente teorema del 19??: Teorema 6 (Birkhoff ) La nozione di derivabilità equazionale introdotta con la def.21 è corretta e completa rispetto alla consequenzialità logica ristretta agli • enunciati della forma s = d∀ ed alle • interpretazioni aventi dominio non singoletto. 5.3.2 2 Il problema dell’unificazione Il problema dell’unificazione ci riporta all’ambito complessivo della logica predicativa del prim’ordine, anche se in genere viene affrontato in relazione a teorie Cn(E), con E insieme di enunciati della forma t1 = t2 ∀ . Esso può essere cosı́ delineato: stabilire se E ` (s0 = t0 ∧ · · · ∧ sm = tm )∃ . Naturalmente, come nel caso di qualunque problema di decisione o semidecisione, è desiderabile avere un responso piú articolato di una semplice risposta sı́/no: vorremmo, cioè, ottenere una sintetica caratterizzazione di tutte le possibili soluzioni , intese come le sostituzioni di elementi ξ1 , . . . , ξn tratti dal dominio ∀M di un generico modello (non singoletto) M di E al posto delle variabili x1 , . . . , xn che figurano in s0 = t0 ∧ · · · ∧ sm = tm , tali che ···xn (s0 = t0 ∧ · · · ∧ sm = tm )xξ11···ξ . n [· · · · · · DA COMPLETARE · · · · · · ] 6 Svolgimento di esercizi selezionati Soluzione dell’es.1. ∀ x ( Corvo( x )→Nero( x ) ∧ HaBeccoGiallo( x ) ), ∃ x ( gallina( x ) ∧ ∀ y ( uovo di( x, y )→d0 oro ( y ) ) ), ∀ x ( semina( x, vento )→raccoglie( x, tempesta ) ). 48 Soluzione dell’es.2. I terminali della grammatica delle formule sono ( , ), ,, f , v, ¬, ∧, ∨, →, ←, ↔, +, |, ↓, >, ∃, ∀, h VAR i , h Costante i , h Simbolo di funzione i , h Simbolo di predicato i . Gli ultimi quattro, in effetti, pur potendo ricoprire categorie lessicali formate da piú simboli — hVAR i abbraccia addirittura infiniti simboli—, possono essere trattati come terminali al livello sintattico di analisi del linguaggio. I non-terminali della grammatica sono tutti i simboli con nomi della forma h· · · i, fuorché i quattro terminali già segnalati. Quanto a ::=, |, , non sono né terminali né non-terminali, ma semplicemente meta-simboli del formalismo di Backus-Naur. Soluzione dell’es.3. Sı́, a patto di avere a disposizione un distinto simbolo predicativo p̄, di grado uno, da porre in corrispondenza con ciascuna lettera proposizionale p. Identificheremo allora p con l’enunciato ∀ x p̄( x ). Soluzione dell’es.5. Si può porre: ∃ x ϕ ↔Def ϕxε y ϕ̄ , ∀ x ϕ ↔Def ¬∃ x ¬ϕ , dove ϕ̄ è una ridenominazione di ϕ (vedi sez. 1.4) nella quale x è rimpiazzato da y. Soluzione dell’es.6. Sı́, nel senso che se viene esplicitamente fornito il significato in = di ciascuna costante e di ciascun simbolo di funzione e predicato, allora si può determinare il valore α= di ciascun enunciato α. Soluzione dell’es.7. Si può porre =1 = =2 , in quanto =2 è tenuto a soddisfare un requisito piú forte che =1 . Ad esempio, ∀= = {0, 1, 2, · · · }, pn = = {1, . . . , n − 1} per ciascun n, ed =1 = =2 = =. Un’alternativa per =1 è di fissarne ad arbitrio il dominio, interpretando poi p1 come vuoto e, per n > 1, ciascun pn come coincidente con l’intero dominio. Soluzione dell’es.8. L’enunciato ∀ x P ( x )→∃ y ¬P ( f ( y ) ) non è né valido né assurdo. In un’interpretazione = in cui P = sia vuoto, esso risulta vero; in un’interpretazione = in cui sia P = = ∀= , esso risulta falso. Soluzione dell’es.10. Nella definizione di H(C, F) si è suppostio che C non sia vuoto, altrimenti l’intero universo di Herbrand risulterebbe vuoto. Ma allora, basterebbe che vi fosse un simbolo di funzione, di qualunque arità, e potrebbe venir generato un insieme infinito di termini di base. Affinché H(C, F) sia finito, occorre dunque richiedere che sia F = ∅. Soluzione dell’es.12. Se differenza c’è, sta nel fatto che chi tratta strutture algebriche astratte, o per partito preso o facendo di necessità virtú, non cerca di descrivere attraverso gli assiomi un singolo dominio d’interesse ma un’intera categoria di modelli. È però probabile che questa dispensa pecchi di eccessiva semplificazione riguardo ai compiti dell’ingegnere della conoscenza. Soluzione dell’es.13. Sı́, quella che d’ora in avanti indicheremo come Th(<) è una teoria. In effetti, se α è conseguenza logica di Th(<), ossia è vera in tutti i modelli di Th(<), allora α= = v per ogni = appartenente ad <: dunque α sta in Th(<). Soluzione dell’es.15. Th(∅) = Σ, MO(∅) = RE, Cn(℘) = Σ quando MO(℘) = ∅. Se ℘1 ⊆ ℘2 , allora MO(℘2 ) ⊆ Cn(℘1 ), per cui Cn(℘1 ) ⊆ Cn(℘2 ). La nostra def.9 di formalismo non permette di escludere che Cn(∅) = ∅, cosa che comunque è falsa nei formalismi predicativi, nei quali vi sono enunciati ϑ tali che MO(ϑ) = RE. 49 Soluzione dell’es.16. Un enunciato valido ϑ sarà caratterizzato dall’avere MO(ϑ) = RE; un enunciato assurdo β, dall’avere MO(β) = ∅. T Soluzione dell’es.17. Se α sta in ℘, allora MO(℘) = β in ℘ MO(β) ⊆ MO(α) e quindi ℘ |= α, donde per completezza ℘ ` α. Soluzione dell’es.18 L’abbinamento piú naturale è (1)-(c), (2)-(a), (3)-(b), (4)-(d), anche se oggi i contorni fra professionalità tendono ad accavallarsi, e non è insolito che un informatico con interessi particolarmente rivolti all’intelligenza artificiale svolga l’attività (2), o che un matematico che nutre interesse per la logica computazionale svolga contemporaneamente attività (4) —non solo sul piano ideativo ma anche implementativo— e attività (1). Soluzione dell’es.22. I postulati sugli ordinamenti totali, cioè transitività, antisimmetria e tricotomia, possono venir enunciati come segue: ∀x ∀y ∀z ( x < y → (y < z → x < z) ) ∀ x ∀ y ( x < y → y 6< x ) ∀x ∀y ( x = y ∨ x < y ∨ y < x ) dove 6< va introdotto in modo analogo a 6=. Soluzione dell’es.23. Un ordinamento denso e privo di estremi si ottiene anche togliendo il numero 0 ai reali (o ai razionali), o anche restringendo l’ordinamento usuale dei reali ai numeri (reali o razionali) che cadono in un qualsiasi intervallo aperto non vuoto. Due di questi ordinamenti sono significativamente diversi solo quando si dimostrino non isomorfi. Di sicuro non è isomorfo l’ordinamento dei razionali a quello dei reali, perché i due domini hanno cardinalità differenti; ma un noto teorema di Cantor dice che i modelli contabili degli assiomi in discussione sono isomorfi tra loro. E oltre la cardinalità del contabile (per esempio in quella del continuo)? Soluzione dell’es.24. Come d= si possono prendere la metrica euclidea e quella discreta; 0 se x = y , cioè, rispettivamente, la funzione (x, y) 7→ |x − y| e la funzione (x, y) 7→ 1 se x 6= y . Soluzione dell’es.25. Possiamo, per ogni numero ` = 2, 3, 4, . . . , individuare un distinto modello avente per dominio l’insieme Z \ {−`, −2 · `, −3 · `, . . . } , dove Z sta a indicare l’insieme {0, ±1, ±2, ±3, . . . } dei numeri interi (dotati di segno). Basta intendere 0 come l’operazione m 7→ m+` definita su tale dominio. Il dominio risulta, cosı́, ripartito in una catena isomorfa al dominio N dei naturali (con l’operazione di incremento unitario) e da ` − 1 catene isomorfe al dominio degli interi (con la stessa operazione). Si potrebbe andare oltre, e considerare modelli con infinite catene isomorfe a Z. Soluzione dell’es.26. Nel dominio di qualsiasi interpretazione = del linguaggio che ci interessa, dovranno esservi le entità 0= , 00 = , 000 = , . . . . Ci basta dunque dimostrare che se = è 0 ··· 0 = 0 ··· 0 = un modello dei due enunciati dati, allora 0 |{z} differisce da 0 |{z} per ogni coppia n, m di n m numeri naturali distinti. Se per assurdo cosı́ non fosse, allora esisterebbe una coppia n0 , m0 0 ··· 0 = 0 ··· 0 = tale che n0 < m0 e che 0 |{z} = 0 |{z} , con m0 piú piccolo possibile. Tuttavia non può n0 m0 essere n0 = 0, altrimenti = non modellerebbe l’enunciato ∀ x x0 6= 0; d’altro canto non può 50 ··· = ··· = 0 0 0 0 essere neppure n0 > 0, altrimenti otterremmo che 0 |{z} = 0 |{z} , contro la minimalità di n0 −1 m0 −1 m0 , dato che = deve modellare ∀ x ∀ y ( x0 = y 0 →x = y ). Giungiamo cosı́ a un assurdo, dato che qualsiasi numero naturale n0 è o uguale o maggiore di 0. Soluzione dell’es.27. Si ponga per definizione: pari( x ) x<y divide( x, y ) primo( x ) ↔Def ↔Def ↔Def ↔Def ∃ y x = y+y ∃ z x+z 0 = y ∃z x · z = y 00 < x ∧ ∀ y ( 00 < y ∧ y < x→¬divide( y, x ) ) La congettura di Goldbach può venir espressa cosı́: ∀ x ( pari( x ) ∧ 000 < x → ∃ y ∃ z ( primo( y ) ∧ primo( z ) ∧ x = y + z ) ) Soluzione dell’es.28. La gerarchia cumulativa degli insiemi ereditariamente finiti si ottiene con la seguente costruzione generale: D−1 =Def {d1 , d2 , d3 , . . . , dn } (0 6 n 6 ∞) individui Di =Def Di−1 ∪ P(Di−1 ) ↑ n = ∞, F per ogni numero naturale i S insiemi ereditariam. finiti se D =Def i in N Di ‘puri’ se n = 0 Qui P(S) ed F(S) denotano, rispettivamente: l’insieme di tutti i sottinsiemi di un dato S e l’insieme di tutti i sottinsiemi finiti di S. Soluzione dell’es.31. [· · · · · · DA RIEMPIRE · · · · · · ] Soluzione dell’es.32. [· · · · · · DA RIEMPIRE · · · · · · ] Per mostrare che Cn( {(E),(N),(W),(L),(I)} ) 6= Cn( {(E),(N),(W),(L),¬(F)} ), possiamo considerare la seguente interpretazione =: [· · · · · · DA RIEMPIRE · · · · · · ] Soluzione dell’es.35. Consideriamo un’interpretazione = nella quale siano veri (E),(N),(W) e falsa un’istanza ∀ x0 · · · ∀ xn ( x0 ∈ x1 ∧ · · · ∧ xn−1 ∈ xn →xn ∈ / x0 ) dello schema (A) di aciclicità. Basterà mostrare che in = è falso anche l’enunciato (R) di regolarità. Stiamo assumendo che vi siano entità ξ0 , . . . , ξn in ∀= tali che ξ0 ∈= ξ1 ∈= · · · ∈= ξn e ξn ∈= ξ0 . Possiamo costruire, in base ad (N) e a (W), l’‘insieme’ {ξ0 , . . . , ξn }= , cioè l’entità ζ = ∅= con= ξ0 con= · · · con= ξn . La presenza di un tale ζ nel dominio ∀= contrasta, evidentemente, con (R): in effetti, nessuno degli elementi ξi di ζ ha intersezione vuota con ζ. 51 Soluzione dell’es.37 Un modo di esprimere simbolicamente l’affermazione proposta è: ∀ x ∀ y ∀ u ∀ x1 ∀ y1 ∀ z1 ( eqd( u, x, u, x1 ) ∧ eqd( u, y, u, y1 ) ∧ fra( u, x1 , y1 ) ∧ fra( x1 , z1 , y1 ) → ∃ z ( eqd( u, z, u, z1 ) ∧ fra( x, z, y ) ) ) dove non è necessario imporre, tramite l’antecedente, che x1 6= z1 né che z1 6= y1 . Soluzione dell’es.38. Se vi fosse un modello M per la teoria in questione, dovrebbe esservi un elemento υ del dominio ∀M tale che ξ ∈M υ per ogni ξ distinto da υ in ∀M . Aggiungendo ad υ come nuovo elemento υ stesso (cosa che possiamo fare in base ad (W) otterremmo un insieme ω avente come suoi elementi tutti gli insiemi. In particolare avremmo che ω ∈M ω, in contrasto con lo schema di aciclicità, il quale comporta che ∀ x0 x0 ∈ / x0 . Basta a questo punto richiamare (vedi soluzione dell’es.15) che quando non vi sono modelli per l’insieme ℘ dei generatori di una teoria Cn(℘), allora la teoria comprende tutti gli enunciati e dunque è contraddittoria ai sensi della def.11. Soluzione dell’es.39. La medesima interpretazione che abbiamo proposto come modello privilegiato per la teoria della sez. 3.3.1 (interpretazione il cui dominio è costituito di insiemi finiti, annidati e privi di individui), rende veri anche gli schemi di aciclicità e di separazione. Soluzione dell’es.47. Se Θ(℘) = Σ, banalmente stanno in Θ(℘) tanto α che ¬α per qualunque enunciato α: per dirne uno, ciò accade quando α è f . All’inverso, se ϑ e ¬ϑ stanno in Θ(℘), allora per ogni enunciato α si ha che ϑ→( ¬ϑ→α ), e dunque (per modus ponens) ¬ϑ→α ed α, stanno in Θ(℘). In effetti ϑ→( ¬ϑ→α ), essendo un’istanza di tautologia, e dunque essendo un enunciato valido, appartiene a Θ(∅) in base al teorema di completezza. A maggior ragione, tale enunciato apparterrà a Θ(℘). Soluzione dell’es.48. (E) (R) ∀u ∀y ∃d ( ( d ∈ u ↔ d ∈ y ) → u = y ) ∀u ∃w ∀v ( v ∈ u → ( w ∈ u ∧ v ∈ / w)) Soluzione dell’es.50. No: poiché un insieme E di enunciati della forma in questione ammette sempre come modelli le interpretazioni dal dominio singoletto, l’enunciato ∃ x ∃ y x 6= y (che in tali interpretazioni è falso) non appartiene mai a Cn(E). Tanto basta per concludere che Cn(E) 6= Σ. References [Boc72b] J. M. Bocheński. La logica formale - La logica matematica. (Edizione a cura di A. Conte). Giulio Einaudi editore, Torino, 1972. [CL73] C.-L. Chang, R. C.-T., Lee. Symbolic logic and mechanical theorem proving. Academic Press, Computer Science and Applied Mathematics, 1973. [End73] H. B. Enderton. A mathematical introduction to logic. Academic Press, New York and London, second printing, 1973. [Men64] E. Mendelson. Introduzione alla logica matematica. Bollati Boringhieri editore, collana di Logica Matematica, 1972. [PP91] F. Parlamento, A. Policriti. Expressing infinity without foundation. Journal of Symbolic Logic, 56(4),1230-1235, 1991. 52 [Tar24] A. Tarski. Sur les ensembles fini. Fundamenta Mathematicae, vol.VI, 45–95, 1924. [Tar59] A. Tarski. What is elementary geometry? In The philosophy of mathematics, J. Hintikka ed., Oxford readings in Philosophy, Oxford University Press, 1969. [TG87] A. Tarski, S. Givant. A formalization of Set Theory without variables, volume 41 delle Colloquium Publications. American Mathematical Society, 1987. 53