UniversitĂ degli Studi di Bari Dipartimento di Scienze Filosofiche Cattedra di Logica Prof. Luciano Floridi
Introduzione alla logica matematica Appunti per il Modulo I Versione 7.1
Š Copyright 20.10.2004 Luciano Floridi
Avvertenze La versione più aggiornata di questo file è scaricabile gratuitamente presso il sito www.wolfson.ox.ac.uk/~floridi/bari/ cliccando in alto sulla voce “corsi” e seguendo i links. Il testo di questi appunti è pensato solo come supporto del manuale del corso. Molti esercizi sono presi o basati su gli “examination papers” dell’Università di Oxford. Si prega di non citare senza autorizzazione.
Ringraziamenti Queste note sono state realizzate anche grazie ai suggerimenti e alle correzioni di moltissimi studenti e studentesse, colleghi e colleghe di Oxford e di Bari, che desidero ringraziare: Agnese Alemanno (Università degli Studi di Bari), David Broad (St. Anne's College, Oxford), Antonia K. S. Bruce (Jesus College, Oxford), Marialuisa Ciliberti (Bari), Filippo Contesi (Bari), Roger Crisp (St. Anne's), Cathrin M. Daniel (Jesus), Antonio Florio (Bari), Rod Girle (University of Auckland), Giles Hannah (St. Anne's), Robin Haynes (Jesus), Matthew Hodgson (Jesus), Rachel Jardine (St. Anne's), Thomas P. Jordan (Jesus), Alexis Johansen (Christ Church College, Oxford), Christopher Kirwan (Exeter College, Oxford), Chiara Lorusso (Bari) Steve Mace (St. Anne's), Richard Malpas (che mi ha messo a disposizione il suo The Hertford Course), Michelangelo Mastrosimini (Bari) Sabrina Piccolo (Bari), James Roebuck (Jesus), Catia Rotolo (Bari), Mariarosaria Taddeo (Bari), Robyn Vesey (Jesus), Joel Walmsley (St. Anne's). Ovviamente resto il solo responsabile di possibili errori, che possono essere segnalati inviandomi una email al seguente indirizzo luciano.floridi@filosofia.uniba.it
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
2
Indice
Prima parte
Invito alla logica
Seconda parte
Il linguaggio della matematica discreta
Terza parte
Il calcolo proposizionale
Quarta parte
Il calcolo dei predicati
Quinta parte
La logica modale
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 Š Luciano Floridi
3
Introduzione alla logica matematica Prima parte Invito alla logica
Mefistofele (allo studente): Impieghi bene il tempo. Corre via così presto ! Ma a guadagnarlo le sarà d’aiuto l’ordine. Quindi, amico caro, il mio consiglio è, anzitutto, Collegium Logicum Goethe, Faust I, 1908-1911
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
4
Perché è importante studiare la logica a) Come suggerisce la citazione dal Faust, un buon corso di logica serve come corso in “Defense Against the Dark Arts”. Vi si apprende l’arte del combattere la vaghezza, l’oscurità, le chiacchiere inutili e molte altre cose pericolose che possono furoviare e corrompere la mente di giovani filosofe e filosofi. Benvenuti a Hogwarts. b) Per avere le idee chiare e fare ragionamenti sensati. Attraverso l’analisi logica si raggiunge una buona competenza concettuale e si è in grado di irreggimentare il ragionamento. c) Come antitodo contro il senso comune, l’ esperienza quotidiana e i pregiuizi. d) Per fare filosofia: la logica permette di essere deboli apertamente, di non nascondersi dietro oscurità e vaghezze. e) Per capire la filosofia di oggi: gran parte della filosofia contemporanea presuppone un minimo di dimestichezza con la logica matematica. f) Per capire la filosofia del passato: molti dei grandi filosofi del passato sono stati anche dei grandi logici: Platone, Aristotele, i logici stoici, i logici medievali, Cartesio, Leibniz, Berkeley, Hume, Hobbes, Kant, Hegel, Husserl, Wittgenstein, Frege, Russell. Poche eccezioni: Locke, Heidegger. g) Per avere un atteggiamento più critico nella vita: la logica fornisce gli strumenti e la forma mentis per poter criticare in modo intelligente la realtà che ci circonda. h) Per capire meglio il mondo, sempre più costruito e determinato dal mondo della matematica e dell’informatica. i) Per trovare più facilmente lavoro, date le le precedenti ragioni. A che cosa non serve la logica 1. 2. 3. 4.
a scoprire la verità di x a studiare il significato di x a capire la rilevanza di x a dimostrare x
Esempio 1 1) La mente è un computer solo se è un processore di informazioni 2) La mente è un computer se è un processore di informazioni 3) La mente è un computer perché funziona come un processore di informationi. Le tre tesi sono più o meno equivalenti? Se non lo sono qual’ è la differenza? Esempio 2 Tesi: “Se il test deve continuare, allora le turbine devono rotare abbastanza velocemente da generare sufficiente energia elettrica di emergenza” Supponiamo che: “le turbine non stanno rotando abbastanza velocemente da generare sufficiente energia elettrica di emergenza” Che cosa ne segue? L’errore logico ha contribuito al disastro di Chernobyl (Medvedev, 1990). Esempio 3 Supponiamo di conoscere quanto segue su una mano di carte: Se si ha in mano un jack allora sia ha anche in mano un re, oppure (alternativamente) se non si ha un jack in mano allora si ha un re in mano. Si ha un jack in mano. Che cosa si può inferire?
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
5
Pensiero visivo Be sure of it, give me ocular proof�, Shakespeare, Otello, III, iii, 356-360) Esempio 4 Logica digitale ovvero contare sulle dita le proprie premesse e conclusioni.
Raffaello Sanzio, Stanze Vaticane, La Scuola di Atene (sotto: particolare, Socrate)
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 Š Luciano Floridi
6
Albrecht Dürer, “Gesù tra i dottori”, Madrid, Museo Thyssen-Bornemisza
1) (a + b)2 = (a + b) • (a + b) 2) = ((a + b) • a) + ((a + b) • b) 3) = (a2 + ba) + (ab + b2) 4) ba = ab 5) = (a2 + ab) + (ab + b2) 6) = a2 + 2ab + b2
Esempio 5, il pensiero visivo
a
b
a
a•b
a
a•b
b
b
2
2
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
7
Esempio 6, il pensiero visivo
1
2 3
4
5
6
7
2
4
6
8
10 12 14
3
6
9 12
15 18 21
4
8 12 16
20 24 28
5 10 15 20
25 30 35
6 12 18 24
30 36 42
7 14 21 28
35 42 49
calcolo combinatorio 1) 72 = 7 x 7 2) = 7 + 7 + 7 + 7+ 7 +7 +7 3) = 49
calcolo sequenziale
Esempio 7, il pensiero visivo
Esempio di tavola della verità, tratto dalla proposizione 4.442 del Tractatus. La W sta per wahr (vero) e la F per falsh (falso). Wittgenstein discute le tavole di verità per 1, 2 e 3 proposizioni nella 4.31
p
q
W
W
W
F
W
W
W
F
F
F
W
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
8
Esempio 8 La differenza tra la logica come linguaggio e la logica come calcolo, gli scacchi e l’aritmetica. La notazione algebrica è un sistema per documentare una partita a scacchi in modo da poter ricostruire a posteriori l'intera partita nell'esatta sequenza di mosse giocate. Si tratta di un sistema di annotazione relativamente recente in confronto ad altri sistemi di documentazione. Funziona in modo molto simile alla battaglia navale. Ecco due splendidi esempi tratti dalla rivista Italia Scacchistica. http://www.maskeret.com/italiascacchistica/p_gal04.htm Attenzione: la regina in h8 nel primo problema è Bianca. Sam Loyd «Il nome di Sam Loyd forse non dirà molto ai nostri lettori meno addentro alle segrete cose del gioco degli scacchi; eppure si tratta non solo del più grande problemista americano del secolo scorso, ma anche di uno dei più grandi enigmisti ed ideatori di giochi di tutti i tempi. Chi di noi, per esempio, non ha mai avuto almeno una volta tra le mani il famoso Gioco del 15? Il "Gioco del 15" e' quel telaietto di quattro caselle per quattro all'interno del quale si muovono quindici blocchetti scorrevoli numerati appunto da 1 a 15, che vanno rimessi a posto nell'ordine corretto. Ebbene, l'ideatore di questo giochino fu proprio Sam Loyd, che lo inventò nel 1876. Sam Loyd nacque a Filadelfia il 30 gennaio 1841, ultimo di otto figli del facoltoso agente immobiliare Thomas; all'età di tre anni si trasferì con la famiglia a New York e in famiglia mosse i primi passi come scacchista. Si appassionò subito al problema, tanto che a soli 14 anni aveva la soddisfazione di vedere pubblicato uno dei suoi primi lavori dal "New York Saturday Courrier". Nel corso della sua vita Loyd compose più di 750 problemi, molto spesso accompagnati da simpatici aneddoti e racconti, in due, tre, quattro e più mosse; prediligeva comunque quelli in tre mosse, da lui ritenuti i più consoni allo spirito del problema di scacchi.
Sam Loyd Matto in 3 mosse
Sam Loyd Matto in 5 mosse
Come dicono i commentatori sportivi americani "Ci sono le bugie, ci sono le grandi bugie, e poi ci sono le statistiche!". In tutti gli sport dominano i numeri: i record, le vittorie, i punti, tutto e' espresso tramite i numeri. Quando i numeri si fanno da parte, ecco comparire le "emozioni": Michael Jordan e' stato un atleta più potente e più
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
9
vincente di Julius Erving, ma le schiacciate di Doctor J non saranno mai dimenticate; Leroy Burrell ha corso più veloce di qualsiasi altro uomo sulla Terra, ma le prestazioni di Jesse Owens resteranno nella leggenda molto più a lungo dei record di Burrell; anche Kasparov e Karpov hanno raggiunto un punteggio ELO strepitoso, ma non riusciranno mai a far dimenticare i nomi di Capablanca, Alekhine, Fischer. Dunque i numeri: gol segnati, canestri realizzati, medaglie d'oro, primati del mondo, percentuale di KO... e i problemi di scacchi? Quelli no! La bellezza di un problema e' legata a concetti che non possono essere espressi per mezzo dei numeri (come del resto la bellezza di una splendida donna ...). Certo, nel corso dei decenni le regole della composizione sono cambiate: l'uso di pezzi inutili per il problema, che servono però a sviare il solutore, non è più ammesso; il concetto di economia e' divenuto un'imposizione restrittiva; un problema che presenta dei duali e' oggi considerato scorretto. In base a questa ultima considerazione molti bellissimi problemi di Sam Loyd sarebbero oggi considerati scorretti o poco validi; ma all'epoca di Loyd ciò che più contava era l'idea che veniva descritta sulla scacchiera: se questa e' valida, non c è duale che tenga ... A Sam Loyd appartengono alcuni tra i problemi più belli mai composti e, tra questi, i due problemi con la mossa chiave (secondo me) pi "clamorosa" mai ideata. Sono i due problemi che trovate qui. Analizziamoli insieme. Il primo problema presenta una situazione non insolita nel mondo della composizione: un pedone bianco in settima traversa; i problemisti amano queste posizioni che consentono di realizzare belle promozioni a pezzo minore (mi raccomando: nel corso delle vostre partite continuate a promuovere a Donna come avete sempre fatto ... lasciate queste libertà ai problemisti!). Eppure, pur avendo magari già visto problemi di questo tipo, e dopo quanto ho appena detto, sareste disposti a credere ciecamente al fatto che la mossa vincente e' 1) b7-a8= !? Il fatto e' che, in risposta a questa mossa, il nero può giocare solo la Torre, aprendo così alla Donna bianca la diagonale h8-a1 e trovandosi minacciato da 2) h8-a1+ seguito dal matto. Vi e' un solo modo di impedire la manovra 1) ... f6-a6, ma a questo punto il bianco prosegue con 2) a8-b6; ecco spiegato il perché di quella strana mossa chiave: il Cavallo impedisce alla Torre di coprire la casa h6. A questo punto il nero non può difendere contemporaneamente le case a1 e h6, e prende il matto in quella lasciata sguarnita. Il bianco avrebbe potuto promuovere a Donna o Alfiere? No. Dopo l'interferenza in c6, la Torre avrebbe catturato in c6, e in seguito a 3) h8-a1 si sarebbe interposto in c1, ritardando il matto di una mossa. Il secondo problema e' stato concepito da Loyd all'età di ... 16 anni ed e' accompagnato, come molte sue composizioni, da un curioso aneddoto. Loyd propose il problema presso la Morphy Chess Room ad uno dei più noti solutori dell'epoca, Dennis Julien, che sosteneva di poter indicare, dalla semplice analisi della posizione del problema, con quale pezzo il bianco avrebbe potuto dare il matto. Loyd capovolse la domanda e chiese a Julien di analizzare il problema allo scopo di capire quale pezzo bianco non poteva dare il matto; immediatamente Julien indicò il pedone b2 come "pezzo mattante più improbabile". Anche dopo quanto vi ho detto, sareste disposti a scommettere sul fatto che la mossa chiave e' 1) b2-b4 ??? Questa mossa minaccia 2) b5-d5 o b5-f5 seguita dal matto in d1 o in f1. Il nero può rispondere solo 1) ... c8-c5+ a cui segue 2) b4:c5, minacciando 3) b5-b1 matto. Alla difesa 2) ... a3-a2 segue 3) c5-c6 (si ripete la minaccia che segue la chiave). L'unica "parata" efficace e' 3) ... d8-c7, che consente di ritardare il matto di una mossa. Ma in questo modo il nero ha bloccato nell'angolo il Cavallo e il Pedone Bianco gli
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
10
piomba addosso come un falco: 4) c6:b7 e 5) b7:a8= o matto. E così Loyd sconfisse Julien. Questo problema e' noto anche come Problema Excelsior; nel Tema Excelsior si ha infatti la corsa vincente di un pedone dalla casa di partenza alla ottava traversa. » Torniamo all’ esempio 3 Supponiamo di conoscere quanto segue su una mano di carte: Se si ha in mano un jack allora sia ha anche in mano un re, oppure se non si ha un jack in mano allora si ha un re in mano. Si ha un jack in mano. Che cosa si può inferire? Introduciamo i seguenti simboli: J = si ha in mano un jack R = si ha in mano un re ¬ = negazione, ad esempio ¬ J = non si ha in mano un jack → = se … allora … , ad esempio J → R = se si ha in mano un jack allora sia ha anche in mano un re ∨ = oppure |= = segue che Il precedente ragionamento può essere tradotto così: [(J → R) ∨ (¬ J → R)], J |= ? La risposta R al posto di ? è errata. Vediamo perché. J V V F F
R V F V F
J→R V F V V
∨ V V V V
¬J→R V V V F
R V F V F
Nella seconda riga si mostra che dalle premesse potrebbe anche derivare ¬ R, quindi l’inferenza di R non è corretta. Q.E.D. (quod erat demonstrandum) Dove sta il trucco? Provare ad analizzare lo stesso ragionamento sostituendo “oppure” con “e”.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
11
Il Watson Selection Task. Controllare le seguenti inferenze. 1) Ci sono 4 carte. Ciascuna carta ha una lettera su un lato e un numero sull’altro. Le 4 carte disponibili sono: [E]
[C]
[5]
[4]
Ci viene detto che se una carta ha una vocale (V) su un lato, allora ha un numero dispari (D) sull’altro, cioè, la regola: V → D Problema: qual è il numero minimo di carte che dobbiamo girare per controllare se la regola è valida?
2) Abbiamo una legge che proibisce ai minorenni di bere birra e quattro casi: [Mario beve birra] [Giovanna beve cocacola] [Pietro ha 25 anni] [Francesca ha 16 anni]
Quali situazioni dobbiamo controllare come minimo per vedere se la legge è stata rispettata? 3) Comparare ora le risposte alle due inferenze e vedere perché in entrambi i casi si deve controllare la prima e l’ultima carta/situazione.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
12
Introduzione alla logica matematica Seconda parte Il linguaggio della matematica discreta
Pure mathematics is, in its way, the poetry of logical ideas. Albert Einstein
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 Š Luciano Floridi
13
In questa breve sezione A ripasseremo alcuni concetti elementari fondamentali della matematica discreta di cui avremo bisogno nelle prossime lezioni: 1. Insieme (classe, proprietà, sottoinsieme), elemento, operazioni sugli insiemi 2. Variabili, costanti e funzioni 3. Diagrammi di Venn 4. Relazioni (le studieremo nel modulo sul calcolo dei predicati) 5. Teoria dei grafi 6. Modello/Sistema 7. Semantica, sintassi 8. Statica/Sincronia 9. Dinamica/Diacronia (tempo, causalità, transizione di stati) 10. Dimensioni di un sistema/problema/modello 11. L’infinito e i numeri transfinit 12. Il paradosso di Russell 13. L’induzione matematica
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
14
Introduzione al linguaggio della matematica discreta
Insiemi Un insieme è un qualsiasi raggruppamento o collezione discreta di oggetti, ad esempio 8 persone in una stanza, 3 libri su uno scaffale, tutti gli oggetti sopra la scrivania, il gruppo degli studenti di logica, tutte le cose che ho visto durante un certo lasso di tempo. Gli oggetti di un insieme sono chiamati elementi dell’insieme. Gli elementi di un insieme possono essere i più disparati, (ci interessa di solito il loro numero, non la loro natura). Vedremo che gli elementi di un sistema sono delle costanti, mentre per fare riferimento ad un qualsiasi membro di un insieme si utilizzano delle variabili. Data la loro natura estremamente elementare e fondamentale, le due idee base di insieme e di elemento di un insieme vengono date come primitive in matematica e non sono definite oltre il livello di semplice intuizione. Definizione di insieme "Un insieme è una collezione di oggetti determinati e distinti della nostra percezione o del nostro pensiero concepiti come un tutto unico. Tali oggetti si dicono gli elementi dell'insieme." G. Cantor. Insiemi arbitrari sono spesso denotati con lettere maiuscole a partire da S (che sta per l’inglese set), con o senza numerazione. Insiemi specifici sono di solito denotati da lettere maiuscole a partire da A. La notazione per indicare che un elemento a appartiene ad un insieme S è: a ∈ S, dove ∈ è la lettera greca che sta per la prima lettera della parola "esiste" e significa che a esiste in S. Se a non appartiene a S allora si usa il segno della negazione ¬, oppure il simbolo ∉: ¬ (a ∈ S) oppure a ∉ S. Un’insieme S è definito se, per ogni oggetto a, vale che (a ∈ S) oppure ¬ (a ∈ S), cioè se dato un qualsiasi oggetto, questo oggetto appartiene oppure non appartiene a S. Quando esiste un metodo per determinare se un elemento appartiene o meno ad un determinato insieme, allora l’insieme è detto ben definito. Un insieme ben definito è anche detto classe. Gli oggetti in una classe sono i suoi membri. Si noti che
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
15
la terminologia è flessibile e si può parlare indifferentemente di oggetti, membri o elementi di un insieme o di una classe. Un insieme può essere definito in due modi: •
estensionalmente cioè elencando implicitamente o esplicitamente la totalità degli oggetti che sono elementi dell’insieme. Questa è anche detta la roster notation o notazione a parentesi graffe. Ad esempio S = {a, b, c} significa che l’insieme S consiste esattamente in 3 lettere esplicitamente elencate; S = {a, …, z} significa che S è l’intero alfabeto, consistente in tutte le lettere implicitamente elencate dalla a alla z, i così detti limiti dell’insieme.
•
intenzionalmente cioè indicando una o più proprietà rilevanti che connotano in modo non-ambiguo tutti gli oggetti che appartengono all’insieme. Questa è la notazione così detta “costruttiva” (set-builder notation), che indica come gli elementi dell’insieme possono essere costruiti. Ad esempio, S = {x | x ∈ A}.
Nei seguenti esempi assumiamo che N = l’insieme dei numeri naturali 1, 2, 3...: S = {1, 2, 3} S è l’insieme costituito dai tre numeri interi 1, 2 e 3. S = {x ∈ N | 0 < x < 4} S è l’insieme di tutte quelle x che appartengono a N e sono maggiori di 0 e minori di 4. S = {x | P(x) } S è l’insieme di tutte quelle x che soddisfano la properità P, ad esempio essere uno dei primi tre numeri interi. S = {x2 | x ∈ N} S è l’insieme di tutte le x che appartengono a N elevate al quadrato.
La notazione costruttiva è essenziale ogni volta che gli elementi dell’insieme non possono essere facilmente elencati. Ad esempio, l’insieme infinito di numeri reali R tra 0 e 1 può essere descritto così: {x | 0 ≤ x ≥ 1}, cioè come l’insieme di tutte le x tale che x è un numero reale uguale o maggiore di 0 e uguale o minore di 1. Dato che questo insieme contiene un numero infinito di elementi, la notazione estensionale a parentesi graffe non può essere utilizzata.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
16
Per capire alcune nozioni base nella teoria delle relazioni, dobbiamo sapere che •
un insieme vuoto o nullo ∅ è un insieme che non ha alcun elemento. Si definisce S = {}, oppure S = ¬ ∃x (x = x), dove la E rovesciata è il quantificatore esistenziale e significa “esiste almeno uno”. In questo caso è negata dal simbolo ¬ e quindi vuol dire che non esiste nemmeno un elemento x tale che x è uguale a se stesso. Siccome qualsiasi elemento x ha perlomeno la proprietà di essere uguale a se stesso, si tratta di un modo di dire che non ci sono x in S, e che quindi S è vuota. Importante: ∅ è un sottoinsieme di ogni insieme.
•
un insieme non-vuoto è un insieme che contiene almeno un elemento. Si indica con S ≠ {}, oppure S = ∃x (x = x)
•
un insieme finito è un insieme con un numero finito di elementi, come ad esempio l’alfabeto.
•
un insieme infinito è un insieme con un numero infinito di elementi, come ad esempio l’insieme dei numeri naturali.
•
un insieme può essere delimitato (o limitato o chiuso) ma essere anche infinito (cioè, per essere infinito un insieme non deve essere anche illimitato), come nel caso dell’esempio dei numeri reali tra 1 e 2.
Torneremo su questi concetti tra poco. Gli insiemi hanno molte proprietà. Alcune delle più importanti sono ricordate qui di seguito. Sono illustrate graficamente mediante i diagrammi di Venn.
U
Un diagramma di Venn è costituito da un
A
B
insieme universale U (detto anche il dominio del discorso) e da insiemi al suo interno, che possono essere messi in diverse relazioni tra loro.
Quando due insiemi A e B in U non hanno alcun elemento in comune, come nel diagramma, si dicono disgiunti.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
17
U
A
B A
B
Se tutti gli elementi di un insieme B appartengono anche a un insieme A, si dice che B è un sottoinsieme di A: A ⊇ B oppure B ⊆ A. Si noti che A e B potrebbero essere
A⊇B
uguali.
A⊃B
U
Se B è un sottoinsieme di A ma esiste almeno
A
un elemento di A che non appartiene a B, allora B si dice un sottoinsieme proprio di A,
B
in simboli, A ⊃ B oppure B ⊂ A.
Si noti che un insieme può essere costituito da altri insiemi, ad esempio A = {1, a, {3, v}, 2, {3}}. Attenzione tuttavia a non fare confusione. L’insieme che contiene come elementi i due insiemi infiniti dei numeri pari P e dei numeri dispari D non è l’insieme dei numeri naturali, che contiene un’infinita quantità di elementi, ma un insieme finito che contiene solo due elementi, cioè i due sottoinsiemi {P, D}. Da ricordare: raramente le proprietà dei membri sono ereditate dall’insieme. L’insieme di tutti i cavalli non è quadrupede.
U
A=B Se A ⊆ B e B ⊆ A, cioè, se ogni elemento di A
A B
è anche elemento di B, e ogni elemento di B è anche elemento di A, allora i due insiemi coincidono, e si scrive A = B.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
18
Nella notazione logica del calcolo dei predicati: A = B ≡ ∀x (x ∈ A ↔ x ∈ B), dove ≡ è il simbolo dell’identità o della definizione, ∀ è una A rovesciata che significa “tutti” (all) e ↔ è il simbolo della doppia implicazione e significa “se e solo se”. La formula si legge: “A e B si definiscono uguali quando, per ogni x, x appartiene ad A se e solo se x appartiene anche a B”.
A∪B Dati due sottoinsiemi A e B di un insieme U,
A
B
gli elementi che si trovano in A, in B o in entrambi costituiscono un sottoinsieme di U, in simboli A ∪ B, detto unione di A e B.
U
A∩B=C
Dati due sottoinsiemi A e B di un insieme U, gli elementi comuni ad A e a B formano un
A
C
B
sottoinsieme di U detto intersezione di A e B, e indicato con A ∩ B (la parte grigio scuro C nel diagramma).
U
A∆B=C+D
A C
B D
Dati due sottoinsiemi A e B di un insieme U, la differenza simmetrica A
∆
B (delta
maiuscolo) è l’insieme degli elementi di A che non appartengono a B e l’insieme degli elementi di B che non appartengono ad A (le parti in grigio chiaro C e D nel diagramma).
Formalmente: A ∆ B = (A ∪ B)\(A ∩ B) = (A ∩ B’) ∪ (A’ ∩ N)
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
19
U
A∪B=∅ Dati due sottoinsiemi A e B di un insieme U,
A
B
se A e B non hanno alcun elemento in comune, l'intersezione è vuota ed equivale all’insieme vuoto ∅.
U
A-B Dati due sottoinsiemi A e B di un insieme U,
A-B
C
B
l'insieme degli elementi che appartengono ad A ma non a B si chiama differenza tra A e B, e si scrive A - B (o anche A\B).
U
A-B
B'
Se B è un sottoinsieme di un insieme A, l'insieme degli elementi di A che non
B
appartengono a B si dice il complemento di B (rispetto a A), e si scrive A - B = B' (o anche Bc).
Le precedenti definizioni non discutono l’insieme universale U ma possono essere facilmente adattate.
Esempio: il complemento dell’unione di due insiemi è l’insieme universale U.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
20
Ecco una tabella riassuntiva, in cui si prende in considerazione anche U:
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 Š Luciano Floridi
21
I diagrammi di Venn possano essere utilizzati con facilitĂ per studiare le relazioni tra insieme e quindi la logica sillogistica (tutti gli uomini sono mortali etc.)
Fino a tre insieme si tratta di ordinary diagrammi:
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 Š Luciano Floridi
22
I seguenti diagrammi sono usati raramente:
Diagramma di Venn per 3 insiemi
Diagramma di Venn per 4 insiemi
Diagramma di Venn per 5 insiemi
Diagramma di Venn per 6 insiemi
Le mappe di Karnaugh (K-map) sono diagrammi simili ai diagrammi di Venn. Le studieremo nel corso del calcolo proposizionale.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 Š Luciano Floridi
23
Operazioni su insiemi Dalle definizioni precedenti segue che, dati A, B e C come sottoinsiemi di un dato insieme universale U, abbiamo le seguenti operazioni: 1.
A∪A=A∩A=A
2.
(A')' = A
3.
A ∪ A' = U
4.
A ∩ A' = ∅
5.
A∪U=U
6.
A∩U=A
7.
A∪∅=A
8.
A∩∅=∅
9.
A∪B=B∪A
proprietà commutativa
10.
A∩B=B∩A
proprietà commutativa
11.
(A ∪ B) ∪ C = A ∪ (B ∪ C)
proprietà associativa
12.
(A ∩ B) ∩ C = A ∩ (B ∩ C)
proprietà associativa
13.
A ∪ (B ∩ C) = (A ∪ B) ∩ (A ∪ C) proprietà distributiva
14.
A ∩ (B ∪ C) = (A ∩ B) ∪ (A ∩ C) proprietà distributive
15.
A ∪ (A ∩ B) = A
assorbimento
16.
A ∩ (A ∪ B) = A
assorbimento
17.
(A ∪ B)' = A' ∩ B'
legge di De Morgan
18.
(A ∩ B)' = A' ∪ B'
legge di De Morgan
19.
A - B = A ∩ B'
20.
(A - B) - C = A - (B ∪ C)
21.
Se A ∩ B = ∅, allora (A ∪ B) - B = A
22.
A - (B ∪ C) = (A - B) ∩ (A - C)
idempotenza
Le precedenti relazioni definiscono un'algebra degli insiemi; essa è un esempio di algebra di Boole o algebra booleana, dal nome del matematico britannico George Boole, che può considerarsi il fondatore dell'algebra della logica. Torneremo sull’argomento nel corso delle lezioni sul calcolo proposizionale.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
24
Operazioni su insiemi Gli insiemi possono essere trattati come oggetti matematici, e quindi essere sottoposti a operazioni di trasformazione, dando vita ad un’algebra degli insiemi. Le seguenti operazioni sono tra le più comuni, e saranno utili nel corso delle lezioni.
Insieme delle parti (power set): dato un insieme A costituito da un numero finito n di elementi, si può costruire un insieme P(A), costituito da tutti i sottoinsiemi di A, detto insieme delle parti di A. Il totale di tutti i sottoinsiemi è 2n. Esempio: se A = {1, 2, 3}, allora P(A) = {∅, {1}, {2}, {3}, {1, 2}, {1, 3}, {2, 3}, {1, 2, 3}}. Partizione: insieme dei sottoinsiemi disgiunti di A la cui unione dà A.
Esempio: se A = {1, 2, 3}, allora {{1,2}, {3}} è una sua partizione. Prodotto Cartesiano: dati due insiemi A e B, con a ∈ A e b ∈ B, l’insieme di tutte le coppie ordinate della forma (a, b) si definisce prodotto cartesiano di A per B, e si indica generalmente con A × B. Ad esempio, se A = {1, 2} e B = {3, 4, 5}, allora A × B = {(1, 3), (1, 4), (1, 5), (2, 3), (2, 4), (2, 5)}, mentre B × A = {(3, 1), (4, 1), (5, 1), (3, 2), (4, 2), (5, 2)}. Si osservi che in questo caso, dato che le coppie sono ordinate, l'operazione di moltiplicazione tra insiemi non gode della proprietà commutativa, cioè A × B ≠ B × A, poiché la coppia (1, 3) è distinta dalla coppia (3, 1). Quando abbiamo A = B, l'insieme A × A si scrive anche A2. Questa notazione sarà utile per identificare lo spazio bidimensionale organizzato dagli assi cartesiani. La definizione di prodotto cartesiano può facilmente estendersi a n
≥
3 insiemi. In
questo caso si parla di ennuple o tuple (la terminologia viene dall’inglese, dove abbiamo couple, triple e quindi n-tuple). Il prodotto cartesiano di n insiemi A1, A2, … An è l'insieme di tutte le possibili ennuple che hanno come primo elemento un
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
25
elemento di A1, come secondo elemento un elemento di A2 ... e come ennesimo elemento un elemento di An. Esempio: se A = {1, 3}, B = {2, 4} e C ={5, 6}, allora A × B × C = {(1, 2, 5), (1, 2, 6), (1, 4, 5), (1, 4, 6), (3, 2, 5), (3, 2, 6), (3, 4, 5), (3, 4, 6)}.
Variabili e costanti “Variabile” e “costante” sono due concetti astratti fondamentali, tra i più importanti in logica e in matematica. Senza di essi non sarebbe possibile sviluppare l’analisi dei fenomeni scientifici più semplici. Intuitivamente, una costante è un valore fisso e immutabile, mentre una variabile è un valore che si modifica nel corso del tempo o al mutare delle circostanze. Definizione di variabile: entità simbolica (in matematica, una grandezza) che può assumere tutti i valori appartenenti a un insieme (campo di variabilità).
Definizione di costante: entità simbolica (in matematica, una grandezza) il cui valore rimane invariato al variare dei parametri da cui si presume che dipenda. Esempi: 1.
il numero di centimetri in un metro è una costante
2.
il numero di centimetri che indicano la lunghezza di una matita è una variabile
3.
la composizione fisica del legno della matita è una costante
4.
il prezzo della matita è una variabile
5.
il valore in lire del prezzo in euro della matita è una costante
6.
la temperature corporea è indicata da una variabile
7.
il rapporto tra gradi centigradi (Celsius) e gradi Farenheit è una costante:
C/100 = (F - 32)/180. Ad esempio, 0 gradi C corrispondono a 32 gradi F; 100 gradi C a 212 gradi F; 20 gradi C a 68 F.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
26
Di solito le costanti si indicano con lettere minuscolo iniziando dalla a, mentre le variabili si indicano con le lettere minuscole x e y, e se necessario con lettere indicizzate numericamente, ad esempio x1. Le variabili e le costanti sono i mattoni con cui analizziamo un determinato sistema (ad esempio la matita) in modo “statico”, registrando certi valori. Questi valori sono legati tra loro da relazioni. Studieremo la natura delle relazioni—soprattutto quelle binarie, cioè quelle che legano due termini—e le loro proprietà più importanti nel corso delle lezioni sulla logica dei predicati. Qui è importante ricordare una famiglia di relazioni fondamentali, che prendono il nome di funzioni, un’altro concetto chiave nel pensiero moderno e contemporaneo.
Funzioni Una funzione è una relazione che lega due elementi (variabili o costanti) in modo dinamico, trasformando uno nell’altro. Sul concetto di relazione dovremo tornare nel corso del modulo sulla logica dei predicati. Per ora basti osservare che questo concetto si definisce in termini di prodotto cartesiano. Definizione di relazione: una relazione tra due insiemi A e B è un sottoinsieme del prodotto cartesiano A × B. Intuitivamente, una funzione può essere immaginata come una specie di motore o meccanismo che all’entrata prende un certo valore come input e all’uscita restituisce uno specifico valore come output. Il numero di scarpe che una persona porta è (di solito) una funzione della misura del piede di quella persona. Normalmente, il numero delle asole presenti su una giacca è una funzione del numero di bottoni (che dovrebbero essere) presenti sulla giacca. Infilate nella funzione la misura del piede e trovare il numero della scarpa, adottate come input il numero di asole e ottenete il numero di bottoni. Si noti che in senso ampio questa è anche la definizione di un algoritmo, cioè di una ricetta che trasforma determinati ingredienti in uno specifico prodotto. Si noti inoltre che il concetto di funzione è di solito ma non necessariamente
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
27
legato a quello di valore numerico. Nel calcolo proposizionale, ci serviremo di lettere e valori di verità. Il concetto di funzione fu introdotto per la prima volta da Cartesio nel 1637 per designare la potenza ennesima della variabile x, cioè xn (una funzione che vedremo tra poco). Fu poi applicato da Leibniz nel 1694 per analizzare diversi aspetti di una curva (vedi sotto). Fu definito in modo rigoroso nel 1829 dal matematico tedesco Peter Dirichlet. Cerchiamo ora di essere più precisi.
Definizione di funzione: dati due insiemi qualsiasi X e Y, si dice funzione o mappa dall’insieme X (dominio) all’insieme Y (codominio) una relazione f (detta anche legge o corrispondenza) che associa ad ogni elemento x ∈ X esattamente un (cioè uno e un solo) elemento di y ∈ Y. La funzione si scrive y = f (x), dove x è la variabile indipendente o argomento e y è la variabile dipendente o valore di f. L’insieme di tutte le immagini di tutti gli elementi x ∈ X ottenuti attraverso la funziona f, cioè tutti i valori possibili y = f(x) assunti dalla f, si chiama immagine di f e si indica con Im(f). La definizione introduce un nuovo concetto fondamentale, quello di equazione.
Definizione di equazione: una uguaglianza tra due espressioni comprendenti almeno una variabile incognita, generalmente soddisfatta solo per opportuni valori di questa.
Esempi Spesso le funzioni sono rappresentate attraverso dei diagrammi (a volte chiamati impropriamente diagrammi di Venn), uno strumento visivo molto utile che inizieremo a sfruttare a partire dai seguenti esempi.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
28
1) Consideriamo X = tutti gli stati dell’unione europea e Y = tutte le città europee. La relazione che associa uno stato x a una città y non è una funzione perché ciascun stato non è associato ad una ed una sola città. Scrivendo f (Francia) = x? non sapremmo a quale città francese la x dovrebbe corrispondere. Ma la relazione “capitale di” che associa ciascun stato ad una sola città-capitale è una funzione. Avremo ad esempio: f (Francia) = Parigi.
F I x
f
P
f
R
f
y
Fig. 1 Nel grafico la freccia tratteggiata sta ad indicare che sono indicati solo due esempi, Francia-Parigi e Italia-Roma.
2) Consideriamo (Fig. 2) l’insieme N. Per X = Y = N, f(x) = x2 è una semplice funzione che ha come valore un numero naturale e come argomento il risultato della moltiplicazione di quel numero naturale per se stesso.
1 2 x
f f f
1 4 x2
Fig. 2 3) Consideriamo (Fig. 3) X = date di nascita e Y = tutti gli studenti di logica. Chiaramente la relazione che associa una data di nascita a ciascun studente non è una funzione, dato che possono esserci più studenti nati nello stesso giorno, mese ed anno.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
29
Mario 1.30.87
Laura Paola
Fig. 3 4) Consideriamo (Fig. 4) X = voti di esame e Y = tutti gli studenti di logica. Chiaramente la relazione che associa ciascun studente ad un voto di esame non è una funzione, dato che possono esserci studenti che non sostengono l’esame. Notare che il fatto che due studenti prendono lo stesso voto non è un problema. L’importante è che a ciascun membro di X corrisponda uno ed un solo valore di Y.
Mario Laura
30
Paola
Fig. 4 Attenzione dunque: una relazione è una funzione se e solo se essa associa a ciascun elemento del proprio dominio uno e solo un elemento del codominio. Una funzione può relazionare più membri di X ad un solo elemento di Y. In altre parole, solo alcuni tipi di funzioni sono “reversibili”, vedremo che saranno le funzioni biettive.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
30
Esercizio Le seguenti relazioni sono funzioni? Per rispondere, immaginate di inserire il valore della X nel meccanismo-funzione per ottenere il valore della Y: 1.
la relazione che lega X = nomi propri e Y = studenti di logica
2.
la relazione che lega X = nomi propri + cognomi e Y = studenti di logica
3.
la relazione che lega X = nomi propri + cognomi + date di nascita e Y = studenti di logica
4.
la relazione che lega X = impronte digitali e Y = studenti di logica
5.
la relazione che lega X = targhe e Y = le automobili di Bari
6.
la relazione che lega X = le automobili di Bari e Y = le targhe
7.
la relazione che lega X = madri e Y = figlie
8.
la relazione che lega X = figli e Y = padri
Le risposte sono: 1.
no, perché lo stesso nome proprio può corrispondere a più studenti
2.
no, perché lo stesso nome proprio + cognome può corrispondere a più studenti
3.
no, perché lo stesso nome proprio + cognome + data di nascita può corrispondere a più studenti
4.
si, perché ad ogni impronta digitale corrisponde uno ed un solo studente
5.
si, perché ad ogni targa automobile corrisponde una ed una sola targa
6.
si, perché ad ogni targa corrisponde una ed una sola automobile
7.
no, perché ad una madre possono corrispondere più figlie
8.
si, perché a ciascun figlio corrisponde uno ed un solo padre
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
31
Tipi logici di funzioni
Definizione di funzione iniettiva: una funzione f : A → B (x) si definisce iniettiva (relazione uno a uno) o in B quando ad ogni elemento di A corrisponde un solo elemento di B, ma non tutti gli elementi di B sono immagini di A.
1 2
f f
a b c
Definizione di funzione suriettiva: una funzione f : A → B si definisce suriettiva o su B quando ogni elemento di B è immagine di almeno un elemento di A.
1 2 3
f f
a b
f
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
32
Definizione di funzione biettiva: una funzione f : A → B si definisce biettiva quando è allo stesso tempo iniettiva e suriettiva.
f
1
a
f
2 3
b c
f
La funzione biettiva equivale a una corrispondenza biunivoca tra due insiemi, in cui a ciascun elemento di un insieme corrisponde uno e uno solo degli elementi dell’altro insieme.
Definizione di funzione inversa: data una funzione f : A → B, si definisce funzione inversa della f una funzione g : B → A tale che, g(f(a)) = a, per ogni a ∈ A, e f(g(b)) = b, ogni b ∈ B.
La funzione inversa si indica anche con il simbolo f –. Una funzione è invertibile se e solo se è biettiva. Esempio: la funzione inversa di x2 per x ∈ R+ (cioè un numero reale positivo) è √x; √3 2 = 3.
a
f
b
f-
a
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
33
Definizione di funzione composta: date due funzioni f : A → B e g : B → C, si definisce funzione composta di f e g la funzione g ◦ f : A → C che ad ogni x ∈ A associa il valore g(f(x)) (cioè uno un solo elemento y ∈ C). In pratica, si tratta di applicare ad x le varie funziona partendo da quella più interna. Chiaramente si possono avere funzioni composte da n funzioni. La funziona composta non gode della proprietà commutativa. Esempio: se g = f – allora g(f(x) = x. Esempio: se f(x) = x2 e g(x) = x – 1, allora f(g(x)) = x2 – 2x + 1, cioè applichiamo anzitutto g a x, ottenendo x – 1, e quindi f al risultato di g(x), ottenendo x2 – 2x + 1. Si noti che g(f(x)) = x2 – 1.
g◦f a
f
b
g
c
Definizione di funzione ricorsiva: una funzione f : A → B si definisce ricorsiva quando f(x) ∈ A, cioè quando fra gli elementi del dominio compare la funzione stessa. Esempio: la funzione fattoriale in matematica viene definita come il prodotto di tutti i numeri da 1 fino all'argomento incluso, con il fattoriale di 1 uguale ad 1. Più precisamente, il fattoriale di n > 0, per n intero non negativo, in simboli n! (si legge “fattoriale di n”) si definisce: n! = n × (n – 1) × (n – 2) × ... × 3 × 2 × 1
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
34
Ad esempio: 1! = 1 2! = 1 × 2 = 2 3! = 1 × 2 × 3 = 2! × 3 = 6; e così via. La funzione fattoriale (che indicheremo con fact) ci permette di ottenere una definizione ricorsiva per la quale valgono le seguenti proprietà: n! = n × (n – 1)!
cioè: fact (n) = n × fact (n – 1)
0! = 1
cioè: fact (0) = 1
Le funzioni ricorsive sono fondamentali in informatica. Chiaramente il fatto che una funzione ricorsiva sia “riflessiva”, cioè si applichi anche a se stessa, rende il suo uso estremamente delicato, dato il rischio di facili risultati paradossali. Paradossi come quello del mentitore (“Dico sempre delle menzogne” sto dicendo la verità?) e quello del barbiere (in un villaggio il barbiere sbarba tutti quelli che non si sbarbano da soli: si sbarba da solo?) sono generati dalla riflessività delle “funzioni” in questione. In altri casi, si può finire per cadere in un loop, cioè in un circolo senza fine, in cui la funzione richiama se stessa all’infinito (si pensi al seguente dialogo: “dove vai?” “al cinema”; “a vedere che cosa?” “quo vadis”; “dove vai?” “al cinema”...). Vedremo che il più famoso di questi paradossi, quello di Russell, è alla base della crisi dei fondamenti della matematica. Un’ultima annotazione: la ricorsività non deve essere confusa con la reiterabilità, che studieremo nel contesto del principio di induzione matematica.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
35
La rappresentazione grafica delle funzioni La rappresentazione grafica delle funzioni numeriche è data attraverso gli assi Cartesiani (l’asse delle x e delle y è idealmente infinito): y 5 4 3 2 1 -7 -6 -5 -4 -3 -2 -1 -1
x 1
2
3
4
5
6
7
-2 -3 -4 -5
Fig. 5 Sappiamo che su ciascun asse si trovano infiniti punti. Ciò significa che preso un punto a qualsiasi e un altro punto b qualsiasi diverso da a, è sempre possibile trovare un terzo punto c, diverso da a e da b, tale che c si trova tra a e b. Se si traduce questa rappresentazione grafica in numeri, abbiamo l’insieme dei numeri reali, indicato da una R. Per ogni coppia di numeri reali a e b è sempre possibile trovare un numero c tale che c è maggiore di a e minore di b. Questa è la definizione del continuo. Ora ciascuno dei 4 riquadri (ortanti) degli assi Cartesiani è anch’esso composto da infiniti punti. È quindi possibile mettere in relazione biunivoca ciascun punto di una retta (l’asse) con ciascun punto del riquadro. Il problema è che in questo modo non sapremmo ancora dove collocare il punto in questione, visto che ad un valore positivo dell’asse delle y, ad esempio 3,5, corrisponde un’intera linea nel primo e nel quarto riquadro:
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
36
y
y = 3.5
5 4 3 2 1 -7 -6 -5 -4 -3 -2 -1 -1
x 1
2
3
4
5
6
7
-2 -3 -4 -5
Fig. 6 Come nella battagli navale, per indicare un punto specifico abbiamo bisogno di una coppia di valori (x, y). Dato che abbiamo indicato lo spazio lineare ad una dimensione con R è utile far riferimento allo spazio bidimensionale individuato dagli assi cartesiani con R2 , basta ricordare che il “2” qui non sta proprio per il quadrato di tutti i numeri reali, ma per lo spazio numerico reale bidimensionale (cioè il quadrato) identificato come l’insieme delle coppie ordinate (x, y) di numeri reali (i numeri sull’asse delle X e sull’asse delle Y). Si dice che le coppie sono ordinate perché la coppia (2,1) identifica un punto diverso dalla coppia (1,2). Di nuovo, niente di più di quello che accade nella battaglia navale, con la sola differenza (ma non sempre, si vedano i due software per giocare alla battaglia navale, gratuiti scaricabili dal sito) che nella battaglia navale usiamo assi con lettere e numeri, quindi l’ordine di apparizione è irrilevante. Che cosa c’entra tutto questo con il concetto di funzione? La coppia di valori (x, y) potrebbe essere non soltanto statica, ma dinamica, cioè tale da rendere uno dei due valori dipendente dall’altro. Siamo arrivati nuovamente al concetto di funzione.
Funzioni elementari Vediamo ora alcune delle funzioni più comuni che trasformano numeri reali in altri numeri reali (funzioni numeriche reali di variabili reali). Gli esempi sono forniti solo al fine di rendere il concetto di funzione più chiaro. Non avremo bisogno di questo genere di matematica “continua” nel corso di logica. La rappresentazione visiva è fornita dal grafico di f : R → R, e sarà una curva (le linee rette sono curve speciali, “curve dritte”) su cui si trovano tutti i punti definiti Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
37
dalla funzione. Si noti che un classico test (la prova del nove) per capire se una relazione è una funzione è controllare se la curva interseca l’asse delle Y solo una volta (test superato) o più di una volta (test fallito), dato che una funzione non può identificare due punti sulla stessa linea. La funzione costante f (x) = c associa a ciascun numero x ∈ R il valore costante c ∈ R. Si veda la Fig. 6. La funzione identica f (x) = x associa a ciascun numero x ∈ R se stesso. Il grafico di questa funzione identica è la bisettrice (che continua all’infinito) del primo e terzo ortante, cioè la “retta a 45 gradi” (Fig. 7): y
y=x
10 8 6 4 2
x -14 -12 -10 -8
-6
-4
-2
2
4
6
8
10 12
14
-2 -4 -6 -8 -10
Fig. 7 La funzione affine (o retta, è detta anche, impropriamente funzione lineare) f (x) = mx + q, si ottiene aggiungendo alla semplice funzione identica due parametri qualsiasi ma fissi, m ∈ R e q ∈ R. Il parametro m fornisce la pendenza della retta (coefficiente angolare) e il parametro q fornisce il punto di intercettazione dell’asse delle ordinate. La Fig. 8 riporta come esempi sia la funzione identica vista sopra sia un esempio di funzione affine f (x) = (½) x + 2 (cioè m = ½ e q = 2).
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
38
y
y=x y = (1/2) x + 2
10 8 6 4 2
x -14 -12 -10 -8
-6
-4
-2
2
4
6
8
10 12
14
-2 -4 -6 -8 -10
Fig. 8 La funzione valore assoluto f (x) = |x| è una naturale generalizzazione della funzione identica. Sappiamo che i numeri naturali {1, 2, 3, ...} così come quelli reali (il continuo) possono essere sia positivi sia negativi. Un numero x si dice assoluto e si scrive |x| quando ci interessa solo il suo valore e non il suo “segno” positivo o negativo. La funzione valore assoluto trasforma qualsiasi numero negativo o positivo in un numero positivo, mentre se x è positivo allora lo lascia invariato. Scrivendo f(x) = |x| è un po’ come se scrivessimo che il grafico dovrà rappresentare sia la funzione identica “positiva” f (x) = x, sia il grafico della funzione identica “negativa” f (x) = - x e questo è possibile solo “piegando” la curva allo zero, si veda la Fig. 9. Il concetto di valore assoluto sarà utile in seguito. y
y = abs x
5
4
3
2
1 x -7
-6
-5
-4
-3
-2
-1
1
2
3
4
5
6
7
-1
-2
-3
-4
-5
Fig. 9
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
39
La funzione quadrato f (x) = x2 è un caso specifico della funzione dell’elevamento a potenza. È stata già introdotta informalmente e qui è interessante vederne il grafico (Fig. 10), che è una parabola orientata verso l’alto e con vertice nell’origine. y
y = x ^2
5
4
3
2
1 x -7
-6
-5
-4
-3
-2
-1
1
2
3
4
5
6
7
-1
-2
-3
-4
-5
Fig. 10 La funzione logaritmo f (x) = logax è la funzione inversa dell’elevamento a potenza, y = ax. Ad esempio: log28 = 3 perché 8 = 23. La funzione è definita nell’insieme dei numeri reali positivi, con il parametro a (la base) interpretato come un numero reale positivo diverso da 1. Se a > 1, allora la funzione è monotona1 crescente, tende asintoticamente (asintoto verticale) vero - ∞ per x che tende a 0 e diventa positiva per x > 1. Se 0 < a > 1, la funzione è decrescente, tende asintoticamente verso + ∞ per x che tende a 0 e diventa negativa per x > 1. In termini di funzione inversa della potenza, si noti la differenza con la funziona di radice quadrata, che è la funziona inverse soltanto dell’elevamento alla potenza di 2 e solo per numeri reali positivi. La base può variare a seconda delle necessità, ma le basi più comuni sono 10 (ad esempio Log10 di 1000 = 3 dato che 103 = 1000) e quella naturale o di Napier (John Napier fu il primo a pubblicare tavole di logaritmi a base e nel 1614) che usa il numero irrazionale e = approssimativamente 2.7183. Oggi è comune utilizzare anche la base 2 a causa dell’informatica e della teoria dell’informazione. Le due figure illustrano il grafico di Log10 x e Log10 – x. L’utilità dei logaritmi è legata ad una loro peculiare proprietà: la moltiplicazione e la divisione di due numeri può essere semplificata addizionando o sottraendo i loro logaritmi. Ad esempio: 8 × 4 = 32 equivale a Log23 + Log22 = Log25 = 32 1
In matematica, una funzione o una successione si dice monòtona se è sempre crescente (o non decrescente) o sempre decrescente (o non crescente). Vedremo che in logica il termine ha un significato leggermente diverso.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
40
16 : 4 = 4 equivale a Log24 – Log22 = Log22 = 4 In genere nella calcolatrice troviamo log = Log10 e ln = Loge ma non troviamo Log2. Per ottenere il valore di qualsiasi Loga basta utilizzare la seguenti equazione: Loga x = Logb x/Logb a. Ad esempio: Log2 16 = 4 = Log10 16 / Log10 2 (provare a vedere che cosa succede nel calcolatore). y
y
y = log x
2.5
y = log - x
2.5
2
2
1.5
1.5
1
1
0.5
0.5 x
-3.5
-3
-2.5
-2
-1.5
-1
-0.5
0.5
1
1.5
2
2.5
3
x
3.5
-3.5
-3
-2.5
-2
-1.5
-1
-0.5
-0.5
0.5
1
1.5
2
2.5
3
3.5
-0.5
-1
-1
-1.5
-1.5
-2
-2
-2.5
-2.5
La funzione radice quadrata f (x) =
√x
è una delle più note dopo la funzione
quadrato. Come si ricorderà, √x (cioè l’elemento immagine y = √x) è quel numero reale y tale che, elevato al quadrato (y2 cioè moltiplicato per se stesso), restituisce il valore della variabile indipendente x. Le Fig.e 11 e 12 riportano il grafico della funzione radice quadrata e poi il grafico della funzione radice cubica. Notare come i valori della radice quadrata siano tutti positivi, mentre quelli della radice cubica siano anche negativi. y
y
y = sqrt x
5
y = sqrt x y = cbrt x
5
4
4
3
3
2
2
1
1 x
-7
-6
-5
-4
-3
-2
-1
1
2
3
4
5
6
7
x -7
-6
-5
-4
-3
-2
-1
1
-1
-1
-2
-2
-3
-3
-4
-4
-5
-5
Fig. 11
2
3
4
5
6
7
Fig. 12
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
41
La funzione polinomio di secondo grado f (x) = ax2 + bx + c, è una generalizzazione della funzione quadrato. I parametri a, b, c appartengono ai numeri reali. Il grafico è una generica parabola verticale orientata verso l’alto (Fig. 13) oppure verso il basso (Fig. 14), con l’asse di simmetria parallelo all’asse delle ordinate. y
y
y = (x ^2 - 2x + 2
5
y = - x^2 - 2 x + 2
5
4
4
3
3
2
2
1
1 x
-7
-6
-5
-4
-3
-2
-1
1
2
3
4
5
6
x
7
-7
-6
-5
-4
-3
-2
-1
1
-1
-1
-2
-2
-3
-3
-4
-4
-5
-5
Fig. 13
2
3
4
5
6
7
Fig. 14
La funzione razionale fratta f (x) =
ax + b cx + d
è la generalizzazione della funzione
reciproca f (x) = 1/x = x−1 . Il suo grafico è una generica iperbole con asintoti paralleli agli assi cartesiani. Le Fig. 15 e 16 mostrano due esempi elementari f (x) = 1/x e f (x) = - 1/x. y
y
y = 1 /x
5
y = -1 /x
5
4
4
3
3
2
2
1
1 x
-7
-6
-5
-4
-3
-2
-1
1
2
3
4
5
6
7
x -7
-6
-5
-4
-3
-2
-1
1
-1
-1
-2
-2
-3
-3
-4
-4
-5
-5
Fig. 15
2
3
4
5
6
7
Fig. 16
Lo studio delle funzioni è un campo molto vasto della matematica. Noi ci fermiamo qui perché questi esempi elementari sono sufficienti a dare un’idea del concetto.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
42
Insiemi infiniti Alcuni degli insiemi numerici infiniti più importanti, che utilizzeremo spesso, e sui quali torneremo tra poco, sono: N = l’insieme dei numeri naturali 1, 2, 3... (può includere anche lo 0). Si tratta dei familiari numeri interi non negativi. Z = l’insieme dei numeri (interi) relativi, cioè {... - 3, - 2, - 1, 0, 1, 2, 3, ...}, la Z sta per la parola tedesca Zahlen = numeri. I numeri relativi includono quelli naturali. Q = l’insieme dei numeri razionali, cioè {0, 1, 2, 3, … - 1, - 2, - 3, … + 1/2, - 1/2, + 1/3, - 1/3, …, + 2/3, - 2/3, …}. Si tratta dei numeri che possono essere espressi come una frazione esatta x/y, dove x e y sono diversi da zero e appartengono a Z (ad esempio: 0.5 = 1/2). I numeri razionali includono i numeri naturali. R = l’insieme dei numeri reali, {0, 1, 2, 3, … - 1, - 2, - 3, … + 1/2, - 1/2, + 1/3, - 1/3, …, + 2/3, - 2/3, …√2, √3,...,
3
√2,..., π, e, …} cioè l’unione dell’insieme dei numeri
razionali e dei numeri irrazionali: Q ∪ . I numeri irrazionali sono numeri che pur rappresentando dei rapporti tra grandezze, come i numeri razionali, non sono esprimibili come frazioni esatte, ad esempio π o certe radici quadrate, come √2. Come vedremo meglio in seguito, questo insieme rappresenta il continuo, cioè la retta euclidea fatta di infiniti punti. Chiaramente abbiamo che N ⊂ Z ⊂ Q ⊂ R
Grandezza di un’insieme Un’insieme A è composto da un certo numero di elementi che ne determina la grandezza. La grandezza di un’insieme A è detta cardinalità di A, in simboli |A|. Esempio: se A = {1, 2} allora |A| = 2; se B = {3, 4, 5} allora |B| = 3. L’insieme vuoto ∅ ha cardinalità zero. Un insieme avente un solo elemento ha cardinalità 1 ed è definito insieme unitario o singoletto (oppure singleton), ad esempio |{a}| = 1, oppure |{Adamo}| = 1. Un insieme avente due elementi in totale ha cardinalità 2 ed è chiamato insieme coppia, ad esempio {a, b} oppure {Adamo, Eva}.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
43
Due insieme si dicono simili se hanno la stessa cardinalità, indipendentemente dalla natura e dall’ordine in cui sono elencati i loro membri. Ad esempio, {1,2,3} e {a, b, c} sono simili. Come è ben noto, l’insieme dei numeri naturali N non ammette nessuna limitazione: possiamo sempre aggiungere una unità al numero più grande appena raggiunto. Kant chiama questo processo “progressus in indefinitum”. L’insieme che si ottiene “per aggiunzione”è una serie infinita discreta (esiste una “spazio vuoto” tra un elemento e l’altro)—quello che Hegel chiama “la cattiva o mala infinità”—ed ha cardinalità infinita. La cardinalità di N si definisce con la prima lettera dell’alfabeto ebraico ℵ0 detta aleph: | N | = ℵ0. Q, l’infinito potenziale espresso dai numeri razionali, è invece caratterizzabile come un insieme ottenuto per divisione all’infinito di un segmento (uno spazio lineare delimitato) in parti sempre più piccole, un processo chiamato da Kant “regressus in infinitum”. Muovendo da un limite all’altro dello spazio in questione possiamo attraversare tutti i membri di Q. È possibile dimostrare che Q è discreto.
Le grandezze dell’infinito Gli elementi di due insieme possano essere messi in relazione tra loro in vari modi. Quello che ci interessa qui è la corrispondenza biunivoca. Se sussiste una corrispondenza biunivoca tra gli elementi di due insiemi, allora si dice che questi hanno la stessa cardinalità. Si può anche dire che un’insieme è equipotente ad un altro insieme o che i due insieme sono equipotenti. Inoltre, si dice che un insieme è infinito, o a cardinalità infinita, se è possibile stabilire una corrispondenza biunivoca tra i suoi elementi e gli elementi di uno qualunque dei suoi sottoinsiemi. Ad esempio: gli elementi dell'insieme A = {1, 2, 3} non possono essere posti in corrispondenza biunivoca con gli elementi di uno qualunque dei sottoinsiemi propri di A, perciò l'insieme A è un insieme finito, o a cardinalità finita. Diversamente, gli elementi dell'insieme B = {1, 2, 3, ... } possono essere messi in corrispondenza 1-1 con gli elementi del sottoinsieme proprio di B, C = {3, 4, 5, ...}, mediante la relazione che associa, ad esempio, l'elemento n di B con l'elemento n + 2 di C, dove n = 1, 2, 3, ... e così via.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
44
Definizione Un insieme si dice infinito se è equipotente a qualche sua parte propria.
Ogni insieme che può essere messo in una relazione biunivoca con N è un insieme detto numerabile. Esso avrà cardinalità ℵ0 cioè conterrà tanti elementi quanti N. È vero che il tutto è maggiore della parte? Non proprio, non quando il tutto e la parte sono infiniti. Si immagini la seguente sequenza: 2
4
6
8
…
↑
↑
↑
↑
↑
1
2
3
4
…
è intuitivamente chiaro che l’insieme infinito dei numeri pari è al contempo un sottoinsieme di N ma ha la stessa cardinalità, cioè è tanto “grande” quanto N. È banale mostrare che lo stesso risultato può essere ottenuto considerando i numeri dispari, oppure i quadrati 12, 22, 32, 42 etc. Si noti che l’unione dei numeri pari con i numeri dispari è un insieme che non è più grande di ciascuno dei due sottoinsiemi, poiché si tratta di N. La cosa interessante è che questo è vero per certi infiniti importanti, come |Z| e |Q|
|N|, nonostante sembrino “più grandi”. Inoltre, si può dimostrare l’esistenza di
insiemi infiniti veramente “più grandi” di N, cioè con una cardinalità superiore a ℵ0. Vediamo come.
Teorema di Cantor. L'insieme dei numeri reali ha una cardinalità maggiore di quella dei numeri naturali (e quindi di tutti gli insieme numerabili).
La dimostrazione è di Cantor, uno dei più grandi matematici di tutti i tempi. È semplice ed elegante, e si basa sullo stesso principio della corrispondenza biunivoca usato sopra per i numeri pari, con una variazione, detta diagonalizzazione o metodo diagonale. Per dimostrare che |Z| e |Q|
|N|
ℵ0 basta ordinare gli insieme in questione
in modo appropriato, lungo la “linea” dei numeri naturali.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
45
Per Z avremo {0, 1, -1, 2, -2, 3, -3, …) e quindi la corrispondenza biunivoca: Z= N=
0
1
-1
2
-2
3
-3
…
↑
↑
↑
↑
↑
↑
↑
↑
1
2
3
4
5
6
7
…
Graficamente, si può immaginare la costruzione della retta infinita dei numeri relativi ordinate su una reta (o spirale) infinita di numeri naturali:
…-5 -4 -3 -2 -1 0 1 2 3 4 5… … 11
9
7
5
3 1 2 4 6 8 10 …
Per Q la struttura è leggermente più complessa è abbiamo bisogno della diagonalizzazione. Si immagini una griglia o matrice, in cui elenchiamo sistematicamente ogni numero della forma x/y per x, y ∈ N. Elencando tutti i valori della x in orizzontale e quelli della y in verticale (nel piano cartesiano diventeranno l’asse delle ascisse e delle ordinate), avremo la seguenti matrice:
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
46
1
1
2
3
4
…
1/1
2/1
3/1
4/1
…
2
1/2
3
2/2
2/3
1/4
…
2/4
4/3
…
...
…
3/4
…
4/2
3/3
4
3/2
1/3
4/4
…
…
…
…
Diagonalizzazione dei numeri razionali Seguendo le frecce avremo {1/1, 2/1, 1/2, 1/3, 2/2, 3/1, 4/1…}. Possiamo quindi ordinare tutti i numeri razionali su una linea retta e creare una relazione biunivoca con N: Q= N=
1/1
2/1
1/2
1/3
2/2
3/1
4/1
…
↑
↑
↑
↑
↑
↑
↑
↑
1
2
3
4
5
6
7
…
Anche in numeri razionali sono dunque numerabili, e la loro cardinalità è uguale a quella di N. La scoperta di Cantor è che con lo stesso metodo si può dimostrare che R non è numerabile, ha cioè un ℵ più grande di ℵ0. Per vedere come, abbiamo bisogna dei seguenti strumenti: •
Il metodo della diagonalizzazione (appena vista)
•
il concetto di dimostrazione per assurdo o prova per contraddizione
•
il concetto di notazione binaria dei numeri (non è strettamente necessario, ma serve per rendere poi la dimostrazione più semplice ed elegante).
Iniziamo con la prova per assurdo (per absurdum) o per contraddizione. Supponiamo di voler dimostrare l’ipotesi P. Un modo standard di procedere in logica è
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
47
i)
assumere che P non sia il caso (¬ P),
ii)
dimostrare che da questa assunzione segue necessariamente (sul concetto di necessità torneremo in seguito, per ora si intenda “in modo inevitabile”) una contraddizione (un errore irreparabile, sul concetto di contraddizione torneremo nel modulo sulla logica proposizionale) e quindi
iii)
rivedere l’ipotesi “assurda”, alla luce della legge del terzo escluso cioè del fatto che “o P oppure non P”. Dato che ¬ P porta ad una contraddizione, non può essere il caso che ¬ P, quindi P deve essere il caso.
Per dirla con parole semplici, è un po’ come quando un amico ci avverte che P, noi non seguiamo il suo Consiglio (facciamo come se ¬ P), succede inevitabilmente un disastro e lui alla fine ci dice “te l’avevo detto che P” e noi siamo costretti a dargli ragione. Esempio (semplificato al punto da essere solo parzialmente corretto ma ancora fruibile per capire il concetto di fondo): supponiamo di voler dimostrare che le mucche sono erbivore (P). Assumiamo che non lo siano, cioè ¬ P. Dimostriamo che ¬P porta ad un errore irreparabile (tutte le mucche muoiono), ritorniamo sull’ipotesi “assurda”, la neghiamo (¬¬P) e concludiamo che P (nella logica classica ¬ ¬ P = P) le mucche sono erbivore. Passiamo ora al concetto di notazione binaria. I numerali possano essere “scritti” in molti modi. Noi usiamo di solito la notazione decimale, cioè a base 10: contiamo attraverso un alfabeto di dieci simboli: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 e poi iniziamo ad usare i dieci numerali appena visti per le decine, in modo relativo alla loro posizione. Così 12 significa: 1 decina + due unità di resto, ciascuna del valore di una unità; 1238 significa 1 migliaio, due centinaia, tre decine e otto unità di resto. Formalmente, il lavoro che facciamo è questo (gli asterischi indicano le quantità), si ricordi che x0 = 1 e x1 = x: … … cioè:
migliaia quanti 10
centinaia 3
quanti 10
decine 2
1
quanti 10 = 10
unità quanti 10 0 = 1
*
**
***
********
1
2
3
8
Da bambini, si impiega non poco tempo ad apprendere questa notazione, ma una volta appresa sembra la cosa più naturale del mondo. Ora la notazione binaria usa un Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
48
alfabeto con soltanto due simboli—di solito 0 e 1, ma potrebbero essere una luce rossa e una verde, bassa e alta corrente, vero/falso, ecc.— il ragionamento è simile. Dobbiamo contare in termini di potenze di 2 + unità di resto. Muovendo da destra verso sinistra abbiamo i seguenti valori: …
quanti 23 = 8 quanti 22 = 4 quanti 21 = 2 quanti 20 = 1
Usiamo la notazione con gli asterischi per vedere qualche esempio. …
1003 = 1000
12 = 100
101 = 10
100 = 1
una mela
1
due mele
2
nove mele
9
tredici mele …
23 = 8
22 = 4
1
3
21 = 2
20 = 1
una mela
1
due mele
2
nove mele
1
0
0
1
tredici mele
1
1
0
1
Nove mele saranno quindi una unità di resto = casella del 20 piena + una unità di valore 8 = casella dell’8, cioè casella del 23, piena, e niente tra i due, dunque 1001. Un paio di osservazioni prima di procedere oltre. Si noti come entrambi le notazioni sfruttino proprietà “posizionali”, cioè lo spazio di scrittura o memoria, per veicolare informazioni. In entrambi i casi l’informazione cambia a seconda della posizione dei simboli utilizzati. Si noti inoltre come la notazione binaria richieda molto più spazio della notazione digitale per veicolare la stessa quantità di informazione, in quanto i numeri binari richiedono molti più simboli. Se un computer potesse leggere i numeri arabi e la notazione decimale sarebbe molto più veloce (non più potente, su questo torneremo). Purtroppo i computer “capiscono” solo differenze tra alta e bassa corrente, quindi un alfabeto semplice come quello binario. Abbiamo ora tutti gli strumenti per apprezzare la dimostrazione di |R| > |N|.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
49
Ipotesti per assurdo: assumiamo che ¬ (|R| > |N|) cioè assumiamo che l’insieme infinito R sia numerabile. Se R è numerabile, lo sarà anche a maggior ragione (a fortiori) il suo sottoinsieme delimitato dei numeri reali tra 0 e 1. Definiamo questo sottoinsieme Rs, dove la s sta per “segmento”. La nostra ipotesi per assurdo diventa ¬ (|Rs| > |N|). Se ¬ (|Rs| > |N|), allora Rs è numerabile. Se Rs è numerabile, allora sarà possibile fornire un elenco di tutti i membri di Rs che contiene tutti i numeri reali tra zero ed uno (cioè tutte le x tali che 0 < x < 1), i quali saranno in (una qualsiasi forma di) relazione biunivoca con i membri di N. Non ha importanza quale lista si generi, qualsiasi essa sia, sarà possibile costruire per Rs una matrice come quella vista per Q. Immaginiamo, per semplicità, di indicare i numeri reali nella loro notazione binaria. La matrice sarà una lista infinita di stringhe di 1 e di 0, possibilmente infinite, ad esempio:
a
0
0
0
1
1
1
…
b
0
0
1
1
1
0
…
c
0
1
0
1
0
1
…
d
0
1
1
1
0
0
…
e
1
0
0
0
1
1
…
f
1
0
1
0
1
0
…
g
1
1
0
0
0
1
…
h
1
1
1
0
0
0
…
…
…
…
…
…
…
…
…
Ora, contrariamente a quanto avviene per la matrice dei numeri razionali, in questa matrice ciascuna riga a, b, c, d, e, f, g, h, … rappresenta un numero reale. Selezioniamo la diagonale, nel nostro esempio identificata dalla stringa <0, 0, 0, 1, 1, 0, …> e invertiamo ciascun valore nel suo opposto, ottenendo <1, 1, 1, 0, 0, 1, …>.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
50
a
1
0
0
1
1
1
…
b
0
1
1
1
1
0
…
c
0
1
1
1
0
1
…
d
0
1
1
0
0
0
…
e
1
0
0
0
0
1
…
f
1
0
1
0
1
1
…
g
1
1
0
0
0
1
…
h
1
1
1
0
0
0
…
…
…
…
…
…
…
…
…
Nella dimostrazione originaria questo è equivalente a modificare ogni numero decimale che descrive il numero razionale (ad esempio, 0.2756493 può diventare 0.3867604). Il fatto che stiamo lavorando con numeri razionali tra 0 e 1 assicura che la nuova descrizione ottenuta farà riferimento ad uno specifico numero reale x ∈ Rs, dunque, per ipotesi, x deve comparire nella matrice, ma in realtà x non può essere mai elencato, perché differisce dal primo numero a = <0, 0, 0, 1, 1, 1, …> perlomeno nel primo posto, che abbiamo modificato in 1; differisce dal secondo numero b perlomeno nel secondo posto, che abbiamo trasformato in 1; differisce dal terzo numero c perlomeno al terzo posto, che abbiamo trasformato in 1; e così via, per ogni posto n di ogni numero nella ipotetica lista. Ne segue che l’assunzione di una lista completa di tutti i numeri reali era errata. Non solo: esiste un infinito numero di numeri reali non “listati” nella matrice (la costruzione di cui sopra può essere ripetuta per l’infinito numero di diagonali della matrice). Dunque l’ipotesi deve essere abbandonata. I numeri reali non sono “contabili”. R non può essere messo in una relazione biunivoca con N. Ne segue che |R| > |N|. In precedenza abbiamo definito |N| = ℵ0, la dimostrazione di Cantor ci porta a definire |R| = ℵ1. ℵ1 è la potenza del continuo e per questo si indica anche con C. Come scrive Cantor in una citazione famosa: "Dopo Kant ha acquistato cittadinanza tra i filosofi l’idea falsa che il limite ideale del finito sia l'assoluto, mentre in verità
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
51
tale limite può venir pensato solo come transfinito [...] e precisamente come il minimo di tutti i transfiniti..." (Cantor 1885). I numeri ℵ0, ℵ1…ℵn sono i numeri transfiniti. Vediamo ora alcune proprietà interessanti, sempre dovute alla teoria di Cantor. L’infinito numero di infiniti diversi Si ricorderà che dato un insieme A costituito da un numero finito di n elementi, cioè (|A| = n), si può costruire un insieme P(A), costituito da tutti i sottoinsiemi di A, detto insieme delle parti di A. Il totale di tutti i sottoinsiemi di A è 2n: |P(A)| = 2n. A sua volta l’insieme delle parti di P(A) sarà uguale a 22n e così via. Chiaramente abbiamo che n < 2 n < 22n < … ecc. Ora si consideri |N| = ℵ0. Per le ragioni appena viste avremo che |P(N)| = 2ℵo e poi |P(P(N)| = 2 2ℵo e così via. Di nuovo: ℵ0 < 2ℵ0 < 22ℵo … ecc. . Il risultato è che siccome l’insieme delle parti di un insieme infinito ha cardinalità maggiore dell’insieme infinito stesso, possiamo costruire una serie infinita di numeri transfiniti. In altre parole, non esistono solo due infiniti ma un numero infinito di infiniti sempre più grandi. L’ipotesi del continuo Cantor ha dimostrato che 2 ℵo = ℵ1 , cioè che la potenza del continuo ha la stessa cardinalità dell'insieme delle parti di N. Quello che non riuscì a dimostrare, e che resta ancora oggi una ipotesi (ipotesi del continuo), è che il continuo è la potenza immediatamente successiva alla potenza dei numeri naturali, cioè che dopo ℵ0 segue immediatamente ℵ1 e non un altro numero transfinito. Nel 1900, nella famosa relazione sui problemi aperti in matematica, Hilbert cita l’ipotesi del continuo come uno dei più importanti. Nel 1938 Gödel dimostra che se la teoria degli insiemi senza l'ipotesi del continuo è consistente, allora la teoria che si ottiene aggiungendo l’ipotesi del continuo come ulteriore assioma aggiuntivo è essa stessa consistente. Nel 1963, Cohen dimostra che questo si applica anche alle teorie che si ottengono negando l'ipotesi del continuo. È comune quindi paragonare l’ipotesi del continuo al famoso quinto postulato delle parallele di Euclide, affermando il quale si ha l’ordinaria geometria euclidea e negando il quale si ottengono le geometrie non-euclideee, che
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
52
sono altrettanto consistenti. Possiamo quindi parlare di teorie degli insiemi noncantoriane. Dimensionalità e potenza Usando il sistema della diagonalizzazione è possibile dimostrare che qualsiasi spazio ad n dimensioni ha cardinalità ℵ0 purché n sia un numero finito. Consideriamo il caso più semplice, quello in cui n
≤ 3. I punti <x, y, z> (3D; ad esempio un cubo) possono
essere messi in una relazione biunivoca con i punti di una superficie piana (2D; nel nostro esempio, una faccia del cubo) <x, y>; e i punti di una superficie piana (2D) possono essere messi in una relazione biunivoca con i punti di un segmento del piano (1D; nel nostro esempio, un lato del cubo), e i punti di un segmento del piano (1D) possono essere messi in una relazione biunivoca con i punti di un una sua parte piccola a piacere (1D/x, per x ≥ 2), cioè: |3D| = |2D| = |1D| = |1D/x, per x ≥ 2|. Come è possibile? Basta recuperare la matrice creata per i numeri razionali, aggiungere le necessarie n dimensioni (una in più, nel nostro esempio) e quindi procedere “miscelando” i valori di ciascuna tripletta. Per ogni x = xaxbxcxd xe ... y = ya ybyc yd ye ... z = zazbzczdze ... che identifica uno e un solo punto in 3D avremo uno e un solo numero P = xayazaxb ybzb... Ad esempio, se x = 0. 76865; y = 0.32139 e z = 0.98745 avremo P = 0.739628817634595 Chiaramente la dimensionalità (il numero di D) non fornisce un criterio per stabilire la potenza di un insieme. Un segmento piccolo a piacere, un’area del piano e un solido sono equipotenti. Lo spazio ha tanti punti quanti un segmento piccolo a piacere e l’infinito dei numeri reali è contenuto in un granello di sabbia. Il paradosso di Russell Abbiamo visto che l’infinito va maneggiato con cura. L’intuito e il senso comune sono di aiuto solo parzialmente. Considereremo ora una dei paradossi più famosi e importanti nella logica e nella filosofia della matematica, il paradosso di Russell.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
53
Si ricorderà che abbiamo detto che l’insieme delle parti di A, cioè P(A), include sia A sia ∅. Ciò non va confuso con la questione se un insieme sia un elemento di se stesso. A compare sempre in P(A), ma può non comparire in A stesso. Ad esempio: l’insieme A di tutte le pagine di un libro non è a sua volta una pagina del libro (A ∉ A), mentre l’insieme B di tutti gli insiemi che hanno più di un elemento contiene anche se stesso (B ∈ B), in quanto esso steso soddisfa la definizione di insieme con un numero di elementi maggiore di uno. Frege aveva basato la sua ricostruzione dei fondamenti dell’aritmetica sull’ipotesi che ogni proprietà definisce l’insieme degli elementi che la soddisfano, cioè la sua estensione. Ad esempio: la proprietà di essere un libro è soddisfatta solo da un certo tipo di oggetti, che formano la classe o insieme L, l’insieme di tutti i libri. L’ipotesi sembrava semplice ed innocua. Russell, tuttavia, in una famosa lettera, pose il seguente quesito: consideriamo l’insieme S di tutti gli insiemi che non sono elementi di se stessi (come ad esempio l’insieme A delle pagine di un libro). Abbiamo appena usato una descrizione di una proprietà molto ben definita per identificare un insieme. Tuttavia, la situazione paradossale è che se S ∉ S allora S è proprio uno di quegli insiemi che non contengono se stessi che abbiamo supposto essere parte di S, perciò avremo che S ∈ S; ma se S ∈ S ciò significa che S è uno di quegli insiemi che contengono se stessi, e che quindi S non deve includere, perciò S ∉ S. In simboli, e utilizzando la doppia freccia come simbolo per indicare “se e solo se”:
paradosso di Russell: (S ∈ S) ↔ (S ∉ S)
Questo paradosso o antinomia minò il progetto di Frege alle fondamenta in modo così radicale da renderlo irrealizzabile. I Principia Mathematica sono costruiti in vista anche della risoluzione del paradosso di Russell, attraverso la teoria dei tipi. La teoria dei tipi permette di evitare l’autoreferenzialità presente nel paradosso di Russell attraverso una stratificazione degli insiemi. Il costo è pagato in termini di assiomi o assunzioni molto forti. Ma su questo varrà la pena tenere un altro corso. Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
54
Induzione matematica Per dimostrare teoremi che affermano che gli elementi di un insieme infinito—di solito N—hanno una certa proprietà P, non è possibile controllare ogni elemento. Fortunatamente, si può utilizzare uno strumento noto come (il principio di) induzione matematica.2 L’induzione matematica è uno strumento di dimostrazione, come la prova per assurdo vista in precedenza. Si utilizza frequentemente anche in informatica e in logica quando si ha a che fare con infiniti numerabili. Il principio utilizza tre semplicissimi strumenti: il modus ponens, la dimostrazione algebrica per trasformazione di equazioni e la quantificazione universale. Vediamoli: 1. modus ponens: è il pilastro della logica deduttiva, sul quale torneremo spesso. Si tratta della legge per cui se A implica B e si da A allora si da anche B. Ad esempio: se piove resto in casa, piove, perciò resto in casa. Semplice. In simboli: P → C, P |= C 2. dimostrazione algebrica per semplice trasformazione di equazioni: l’abbiamo già incontrata all’inizio del corso. Per dimostrare che A = Z, basta dimostrare che esiste una serie di uguaglianze, identità, equazioni o equivalente del tipo A = B = C = D = ,..., = Z. Si ottiene A = Z per la proprietà transitiva dell’uguaglianza. 3. quantificazione universale: altro tema che analizzeremo a fondo nel modulo sulla logica dei predicati. Per ora basta ricordare l’uso del simbolo ∀ per indicare tutti gli elementi di un insieme. L’idea di fondo del principio di induzione matematica è questa: 1. per dimostrare che una determinata proprietà P qualifica ogni elemento x di un insieme infinito S applichiamo anzitutto il modus ponens: P(x), P(x) → P(x + 1) |= P(x + 1) È chiaro allora che abbiamo bisogno di due “pezzi” per il nostro motoredimostrazione: 2. dobbiamo dimostrare che P(x) 2
L’induzione matematica non deve essere confusa con il ragionamento induttivo in logica, un tipo di inferenza ragionevole ma mai del tutto dimostrativa sul quale torneremo brevemente nel corso del primo modulo.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
55
3. dobbiamo dimostrare che P(x) → P(x + 1) La dimostrazione di (2) si chiama passo iniziale o dimostrazione della base induttiva. La dimostrazione di (3) si chiama passo induttivo. Il passo iniziale (2) è di solito elementare: si tratta di verificare che la proprietà in questione si applica nel caso in cui x = 1 (a volte si usa 0 per il passo iniziale, ma la differenza è irrilevante qui). Per il passo induttivo (3), si tratta di dimostrare la validità dell’inferenza che dice sostanzialmente “se X allora Y”. Per verificare questa inferenza, dobbiamo assumere X e vedere se Y segue effettivamente da X. Si procede in questo modo: assumiamo X, cioè che la proprietà P in questione sia verificata per un valore x = k, e chiediamoci: è vero che allora questo comporta il fatto Y, cioè che la proprietà si applica anche ad un valore k + 1? Lo sforzo in questo caso è di dimostrare che si, Y segue deduttivamente da X. Come si fa? Di solito si opera attraverso una serie di trasformazioni algebriche di semplici equazioni. Se alla fine riusciamo a dimostrare sia (2) sia (3) abbiamo dimostrato la parte che sta a sinistra del modus ponens, ergo abbiamo dimostrato la parte che sta a destra: la proprietà P(x) vale su tutto S. In altre parole, abbiamo dimostrato che se X allora Y ma si da il caso che X allora si da il caso che Y. E siccome abbiamo utilizzato variabili incrementabili a piacere, abbiamo dimostrato che (2)+(3) sono iterabili all’infinito, così che la proprietà si applica a tutti i numeri naturali via via “raggiunti” dal “+ 1”, cioè dalla funziona successore. Ad ogni nuova applicazione del passo induttivo possiamo vedere che la dimostrazione copre un numero sempre più esteso di membri di N, e ciò avviene senza limite ultimo. L’induzione matematica si basa quindi sulla reiterabilità del passo induttivo, in una serie di basi successive (abbiamo visto che è possibile coprire una estensione di casi facendo in modo che la funzione in questione si applichi a se stessa, in modo ricorsivo, ma questa è una cosa diversa). Vediamo ora la definizione formale ed un esempio. Principio di induzione matematica Sia P(n) un predicato definito per ogni n ≥ 1, se 1. P(1); e se 2. ∀k (P(k) → P(k + 1)) per k ≥ 1, allora 3. ∀n (P(n))
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
56
Nel seguente esempio procederemo in modo molto graduale. Supponiamo di voler dimostrare il seguente teorema: 1 + 2 + ... + n = ½ n (n + 1) per ogni n ≥ 1 Si può osservare che una notazione più adeguata utilizza il simbolo sigma maiuscolo per indicare la somma dei numeri interi i da 1 a n, in questo modo:
∑ i = n (n2+ 1) n
i =1
Dal teorema segue banalmente che la proprietà P(n) è 1 + 2 + ... + n = ½ n (n + 1). Siccome il teorema predica P per ogni n ∈ N, dobbiamo utilizzare il principio di induzione matematica per dimostrarne la correttezza. La base induttiva è facilmente dimostrabile, basta verificare se l’equazione è corretta quando n = 1. Se n = 1 allora 1 + 2 + ... + n significa semplicemente 1, cioè:
∑i = 1 1
i =1
avremo quindi: 1 = ½ n (n + 1) = ½ 1 (1 + 1) = ½ 1 (2) = ½ (2) = 1. La base induttiva è assicurata. Ora dobbiamo verificare il passo induttivo. Assumiamo la premessa dell’inferenza e vediamo se da essa possiamo dedurre analiticamente la conclusione. Nel caso specifico, assumiamo 1 + 2 + ... + k = ½ k (k + 1) e vediamo se l’equazione resta soddisfatta quando incrementiamo k di una unità, cioè se, assumendo 1 + 2 + ... + k = ½ k (k + 1), segue necessariamente che 1 + 2 + ... + (k + 1) = ½ (k + 1)(k + 2). In questo processo utilizzeremo il semplice metodo della manipolazione di equazioni. Anzitutto incrementiamo k ottenendo 1 + 2 + ... + (k + 1) questa formula è equivalente a 1 + 2 + ... + k + (k + 1). Se ciò non è evidente, immaginate di sostituire k con 5, ad esempio, e otterrete: 1 + 2 + 3 + 4 + 5 + 6 = 1 + 2 + 3 + 4 + 5 + 6. Dunque, seguendo lo schema precedente, abbiamo 1 + 2 + ... + (k + 1) = 1 + 2 + ... + k + (k + 1)
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
57
Ma siccome abbiamo assunto che 1 + 2 + ... + k = ½ k (k + 1), allora possiamo sostituire 1 + 2 + ... + k con ½ k (k + 1), ottenendo 1 + 2 + ... + (k + 1) = ½ k (k + 1) + (k + 1) Per estrarre ½ dalla prima parentesi, basta moltiplicare per 2 l’ultima (k + 1), e avremo che ½ k (k + 1) + (k + 1) = ½ [k (k + 1) + 2(k + 1)], cioè 1 + 2 + ... + (k + 1) = ½ [k (k + 1) + 2(k + 1)] In questo modo possiamo estrarre (k +1), ottenendo ½ [k (k + 1) + 2(k + 1)] = ½ [(k + 2) (k + 1)], cioè 1 + 2 + ... + (k + 1) = ½ [(k + 2) + (k + 1)] Siamo quasi arrivati. Ovviamente ½ [(k + 2) + (k + 1)] = ½ [(k + 1) + (k + 2)], cioè 1 + 2 + ... + (k + 1) = ½ [(k + 1) + (k + 2)] A questo punto abbiamo dimostrato che, se si assume 1 + 2 + ... + k = ½ k (k + 1), segue analiticamente che ½ [(k + 1) + (k + 2)], ma questo è il passo induttivo di cui avevamo bisogno. Avendo dimostrato sia (P(1) sia ∀k (P(k) → P(k + 1)) per k segue che ∀n (P(n)), cioè 1 + 2 + ... + n = ½ n (n + 1) per ogni n
≥ 1,
≥ 1, e questo è il
nostro teorema.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
58
Introduzione alla logica matematica Terza parte Il calcolo proposizionale
Captain Spock: Logic, logic, logic. Logic is the beginning of wisdom, Valeris, not the end. Star Trek VI: The Undiscovered Country (1991)
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 Š Luciano Floridi
59
Unità 1
Argomenti •
Presentazione e organizzazione del corso
Unità 2
Argomenti •
Che cos'è la logica matematica
•
La logica come studio delle inferenze valide
•
La logica come lo studio delle proprietà formali di un sistema di inferenze
•
La logica come studio dell’argomentazione coerente (consistente)
•
La logica come lingua formale: un triangolo di relazioni
•
I portatori di verità: credenze, frasi, asserzioni, enunciati e proposizioni
•
Come qualificare i portatori di verità: in/consistenza e in/coerenza, possibile/contingente/necessario, tautologia/contraddizione, analitico/sintetico, a priori/a posteriori.
La natura della logica: una prospettiva Top Down 1. che cos`è la logica formale o matematica? 1.1. impoverimento: astrarre dal significato, dalla verità e dalla rilevanza 1.2. la logica informale (esempio: l’argomentazione causale) 1.3. la teoria dell’inferenza 1.4. la teoria dei processi di transizione di stati di un sistema (system theory) 1.5. condizione minima di accettabilità di un’argomentazione o inferenza deduttiva 2. logica deduttiva, induttiva e abduttiva logica deduttiva = top-down, logica induttiva = bottom-up, logica abduttiva = orizzontale, import-export di ipotesi 2.1. formale vs. formalizzabile (il concetto di vero-funzionalità) 2.2. necessità vs. possibilità/contingenza 2.3. a priori vs. a posteriori
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
60
2.4. analitico vs. sintetico 2.5. descrizione e irreggimentazione 3. La logica classica: logica proposizionale + logica dei predicati (granularità e livello di astrazione) 3.1. il calcolo proposizionale (CProp) 3.1.1. il linguaggio simbolico del calcolo proposizionale (LCProp) 3.1.2. traduzione italiano/LCProp 3.1.3. la valutazione della validità delle inferenze ottenibili in LCProp 3.1.4. le proprietà formali di CProp 3.2. il calcolo del predicati (CPred) 3.2.1. il linguaggio simbolico del calcolo proposizionale (LCPred = LCProp + teoria della quantificazione + teoria delle relazioni) 3.2.2. traduzione italiano/LCPred 3.2.3. la valutazione della validità delle inferenze ottenibili in LCPred 3.2.4. le proprietà formali di CPred 4. logica classica: dal primo al secondo ordine 5. logiche deduttive non-standard 5.1. logiche modali 5.2. logiche non-monotone 5.3. logiche Booleane, a n valori e logica fuzzy 5.4. logiche para-consistenti 5.5. logiche rilevanti 5.6. logiche libere 6. logica classica e logica intuizionistica (costruttivista) 7. la filosofia della logica La logica classica 1. formale 2. deduttiva 3. monotona 4. standard (non-modale) 5. a due valori (booleana, binaria) 6. bivalente (prove indirette o per assurdo) 7. non costruzionista (terzo escluso, bivalenza, prove indirette o per assurdo) Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
61
8. di primo livello (quantificazione)
Linguaggio formale
Linguaggio naturale
Concetti chiave
Linguaggio e metalinguaggio
Un sistema di valori di verità (detti anche valori aletici, dal greco alethos = verità) può essere: •
binario, booleano o classico = 2 Valori aletici / valori di verità {V, F} oppure {1, 0}
•
multi-valued (a più valori) = ci sono n valori di verità per n ≥ (esempio: vero, false e né vero né falso)
•
fuzzy = c’è una scala continua di valori di verità che va da “completamente vero” a “completamente falso” (di solito questi due limiti sono simboleggiati da [1,0])
Nella logica classica utilizziamo un sistema a due valori di verità. Su questa base possiamo stabilire la seguente definizione:
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
62
un portatore di verità (truth-bearer) PV è qualsiasi contenuto che può essere dotato di significato, privo di ambiguità e che può essere correttamente descritto come vero oppure falso, almeno in principio, se non di fatto. Un buon test per controllare se x = PV è controllare se la domanda “è vero che x?” è dotata di significato e corretta. Una credenza è un PV mentale (contesti opachi o intensionali). Una frase dichiarativa di un linguaggio L è una frase in L che è grammaticalmente ben formata (well-formed) secondo la sintassi di L ed è un PV. Una asserzione/affermazione/dichiarazione/enunciato è una frase dichiarativa che in qualche modo è stata implementata, ad esempio scritta, formulata, stampata etc. Una proposizione è una astrazione che fa riferimento al significato o al contenuto semantico di una frase dichiarativa senza alcun riguardo per lo specifico linguaggio naturale o artificiale impiegato e la sua implementazione. Quindi, due frasi dichiarative appartenenti a due linguaggi naturali diversi, che sono una la traduzione dell’altra, condividono la stessa proposizione. Il calcolo proposizionale si chiama in questo modo proprio perché astrae dalla specifica natura empirica di qualsiasi linguaggio naturale o artificiale. Come qualificare i portatori di verità
Le seguenti coppie di qualificazioni possono essere utilizzate per qualificare (insiemi di)
una
o
più
portatori
possibile/contingente/necessario,
di
verità:
in/consistenza
tautologia/contraddizione,
e
in/coerenza,
analitico/sintetico,
a
priori/a posteriori. Se ϕ e ψ sono due variabili proposizionale sostituibili con due formule atomiche ben formulate in un linguaggio L, affermate oppure negate, ed Σ è l’insieme costituito da ϕ e ψ cioè Σ = {ϕ, ψ}, abbiamo le seguenti qualificazioni:
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
63
ϕ è consistente esempi: alcuni triangoli sono scaleni gli unicorni sono animali simpatici ci sono state solo due guerre mondiali ϕ è una contraddizione ϕ è inconsistente esempio: i triangoli hanno quattro lati ϕ è una tautologia esempio: i triangoli hanno tre lati Σ è consistente ϕ e ψ sono mutualmente consistenti esempio: alcuni triangoli sono isosceli e alcuni triangoli sono equilateri le balene sono dei mammiferi e le arance sono commestibili Σ è inconsistente Σ è incoerente ϕ e ψ sono mutualmente inconsistenti esempio: tutti i triangoli sono gialli e tutti i triangoli sono verdi le arance sono del colore delle patate e le arance sono del colore delle banana ϕ e ψ si contraddicono (l’una con l’altra o mutualmente) esempio: tutti i triangoli sono scalene e non tutti i triangoli sono scalene le arance sono del colore delle patate e le arance non sono del colore delle patate
ϕ è vera in modo contingente, cioè esiste almeno una situazione o un mondo possibile in cui si da il caso che ϕ sia vera, ma ϕ non è vera in tutti i mondi possibili o in tutte le situazioni. ϕ è inconsistente ϕ è necessariamente falsa, cioè non esiste alcuna situazione o mondo possibile in cui ϕ può mai risultare vera ϕ è necessariamente vera, cioè non esiste alcuna situazione o mondo possibile in cui ϕ può mai risultare falsa ϕ e ψ sono mutualmente consistenti Esiste almeno una situazione o un mondo possibile o una struttura nella tavola di verità di ϕ e ψ (si veda oltre) in cui sia ϕ sia ψ risultano vere allo stesso tempo ϕ e ψ sono mutualmente inconsistenti ϕ e ψ sono mutualmente inconsistenti non esiste alcuna situazione o alcun mondo possibile o alcuna struttura nella tavola di verità di ϕ e ψ in cui sia ϕ sia ψ risultano vere allo stesso tempo. Sia ϕ sia ψ possono essere entrambi false. non esiste alcuna situazione o alcun mondo possibile o alcuna struttura nella tavola di verità di ϕ e ψ in cui sia ϕ sia ψ risultano vere allo stesso tempo, ma una delle due formule deve essere vera e l'altra falsa.
La nozione di tautologia è più forte di (include) quella di consistenza: se ϕ è una tautologia allora ϕ deve anche essere consistente, ma non vice versa. La nozione di contraddizione è più forte di (include) quella di inconsistenza: se ϕ e ψ si contraddicono allora devono essere mutualmente inconsistenti, ma non vice versa. Le nozioni di consistenza e inconsistenza sono state presentata sopra in modo semantico (cioè facendo riferimento ai valori di verità delle formule) ma è in realtà si
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
64
tratta di nozioni sintattiche: ϕ e ¬ ϕ sono inconsistenti a prescindere dallo specifico valore di verità attribuito alle due formule. Le nozioni di contraddizione e tautologia sono semantiche, fanno cioè riferimento ai valori di verità delle formule così caratterizzate. Insiemi di formule possano essere consistenti o inconsistenti ma non contraddittori o tautologici, se non in senso improprio. Se Σ è consistente, allora esiste perlomeno una situazione, un mondo possibile o una struttura nella sua tavola di verità in cui tutte le formule che appartengono a Σ sono compatibili (vere al contempo), cioè nessuna formula è al contempo affermata e negata. Se Σ è inconsistente, allora non esiste alcuna situazione, mondo possibile o struttura nella sua tavola di verità in cui tutte le formule che appartengono a Σ sono compatibili (vere al contempo). Esempio di inconsistenza: In M. Yourcenar, Opera in Nero un personaggio, Dolet, muore due volte, L'Oeuvre au Noir (Paris: Gallimard, 1968): p. 151: Dolet ... mon libraire ... il n'ent pas l'occasion d'essayer de ma dragée, s'étant fait dépecher à Venise dans une ruelle obscure par le meme spadassin qui l'avait manqué en France. p. 185: Depuis qu' Étienne Dolet, san premier libraire, avait été étranglé et geté au feu pour opinions subversives, Zénon n'avait plus publié en France. Esercizio: inviarmi un esempio di inconsistenza o incoerenza preso da qualche testo stampato.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
65
Unità 3
Argomenti •
Ancora sulla natura della logica matematica
•
Sistemi di valori di verità e portatori di verità
•
Il linguaggio del calcolo proposizionale
Logiche deduttive non-standard 1. logiche modali 2. logiche non-monotone 3. logiche Booleane, a n valori e logica fuzzy 4. logiche para-consistenti 5. logiche rilevanti 6. logiche libere 7. etc. Logica classica e logica intuizionistica (costruttivista) Terzo escluso (ϕ è vera oppure falsa), bivalenza (se ϕ non è falsa allora è vera) e la costruzione di prove indirette o per assurdo. La filosofia della logica.
Unità 4
Argomenti •
mappa
•
Il linguaggio del calcolo proposizionale (LCProp) 1. Vocabolario 1. Lettere proposizionali 2. Connettivi logici 2. Sintassi (regole di formazione)
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
66
Una mappa per collocare la logica classica. La logica classica è definita dalla linea blu.
Logica
Logica parte -tutto
Logica elemento-insieme
Logica abduttiva
Logica induttiva
Logica non-monotona
Logica monotona
Logica multi-valued
Logica fuzzy
Logica costruzionista detta che intuizionista
Logica di secondo ordine
Logica modale
Calcolo proposizionale
Logica deduttiva
Logica boolena (2 valori)
Logica bivalente (prove indirette)
Logica di primo ordine
Logica non-modale
Calcolo dei predicati
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 Š Luciano Floridi
67
La logica come sistema
Le parti di un sistema Ogni sistema che analizza una struttura contiene le seguenti parti:
• • • •
un insieme di elementi semplici (vocabolario) un insieme di relazioni/connessioni tra elementi (vocabolario) regole di formazione di elementi complessi (sintassi) un’interpretazione o modello degli elementi (semplici e complessi) e delle loro relazioni (semantica)
Una volta disponibile, un sistema logico permette
• •
la modellizzazione delle relative strutture (sequenti, vedi oltre) la valutazione delle strutture attraverso la valutazione dei modelli (tavole di verità e tableaux, vedi oltre)
•
lo studio delle proprietà interessanti del sistema stesso (risultati metalogici)
valutazione
metaproprietà
modello costruzione sistema
linguaggio
analisi struttura
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
68
Vocabolario: lettere proposizionali
Insieme di lettere proposizionali {P, Q…Z}, oppure {P1,…Pn}. Queste sono le nostre costanti. Funzionano come se fossero i nomi propri delle corrispondenti proposizioni. Argomento: se piove allora prendo l’ombrello, piove, perciò prendo l’ombrello. Interpretazione: Piove = P, Prendo l’ombrello = Q Traduzione: Se P allora Q, P perciò Q Per parlare di proposizioni in generale, abbiamo bisogno di variabili. L’insieme delle lettere greche {ϕ, χ,…, ψ} funzionano come se fossero dei pronomi delle corrispondenti lettere proposizionali. Attenzione: “Se P allora Q, P perciò Q” formalizza solo uno specifico argomento, quello indicato dalla corrispondenza fissata dalla traduzione. Al contrario, “Se ϕ allora ψ, ϕ, perciò ψ” è uno schema logico universale che si applica a tutte le specifiche lettere proposizionali. Vocabolario: connettivi
I connettivi vero-funzionali sono molti, come vedremo in seguito. Di solito si usano i seguenti 5: ¬ = la negazione, l’unico connettivo ad 1 posto (per capire come un connettivo possa essere ad un posto bisognerà attendere la lezione sul concetto di relazione) ∧ = la congiunzione ∨ = la disgiunzione → = l’implicazione (se…allora) ↔ = la doppia implicazione (se e solo se, a volte abbreviata sse) I connettivi fanno parte dell’insieme degli operatori logici, insieme ai quantificatori, di cui parleremo quando verrà introdotto il calcolo dei predicati, e agli operatori modali, di cui parleremo nel secondo modulo. Nelle lezioni successive dimostreremo che l’insieme {¬, ∧, ∨, →, ↔}: 1. è completo da un punto di vista vero-funzionale, cioè è in grado di esprimere tutti i rapporti vero-funzionali tra proposizioni e non servono altri connettivi. 2. è riducibile ad una coppia di connettivi che include la negazione {¬, …} oppure ad un solo connettivo in grado di esprimere la negazione attraverso la sua ripetizione:
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
69
NOR = disgiunzione negativa = “non [… oppure …]” = Peirce arrow = ↓ NAND = congiunzione negativa = “non [… e …]” = Sheffer stroke = ↑ Scopo (scope) di un operatore logico:
Lo scopo di un operatore logico è la minima stringa di simboli il cui significato è modificato dalla presenza dell’operatore logico. Ad esempio, nella formula [P → Q] ∨ R lo scopo di “→” è la sottoformula “P → Q”, mentre lo scopo di “∨” è la sottoformula “ϕ ∨ R”, dove ϕ = “P → Q”. Torneremo su questa nozione fondamentale quando parleremo dei quantificatori. Sintassi: regole di formazione (RF)
Le RF determinano la corretta costruzione di formule atomiche e complesse di un linguaggio formale per il calcolo proposizionale (LCProp). Sono equivalenti alle regole grammaticali del linguaggio naturale. Esse stabiliscono esplicitatamene tutte e solo le combinazioni di simboli, appartenenti ai due insiemi dei 5 connettivi {¬, ∧, ∨, →, ↔} e delle lettere proposizionali {P1, ..., Pn}, che saranno considerate come aventi significato in LCProp. Sono in tutto 7: 1. qualsiasi lettera proposizionale ϕ è una formula ben formulata (fbf) di LCProp (formule atomiche). 2. se ϕ è una fbf di LCProp, allora anche ¬ ϕ è una fbf di LCProp (negazione di una formula semplice o complessa). 3. se ϕ e ψ sono fbf di LCProp, allora anche [ϕ ∧ ψ] è una fbf di LCProp (congiunzione) 4. se ϕ e ψ sono fbf di LCProp, allora anche [ϕ ∨ ψ] è una fbf di LCProp (disgiunzione) 5. se ϕ e ψ sono fbf di LCProp, allora anche [ϕ → ψ] è una fbf di LCProp (inferenza) 6. se ϕ e ψ sono fbf di LCProp, allora anche [ϕ ↔ ψ] è una fbf di LCProp (doppia inferenza) 7. nessuna altra formula è una fbf di LCProp (clausola di chiusura) Le 7 regole si possono ulteriormente abbreviare utilizzando una variabile ƒ
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
70
per fare riferimento a qualsiasi connettivo binario vero-funzionale: 1. qualsiasi lettera proposizionale ϕ è una formula ben formulata (fbf) di LCProp (formule atomiche). 2. se ϕ è una fbf di LCProp, allora anche ¬ ϕ è una fbf di LCProp (negazione di una formula semplice o complessa). 3. se ϕ e ψ sono fbf di LCProp, allora anche [ϕ ƒ ψ] è una fbf di LCProp (congiunzione, disgiunzione, inferenza, doppia inferenza) 4. nessuna altra formula è una fbf di LCProp (clausola di chiusura) Il vantaggio della versione abbreviata è che essa può essere mantenuta anche se si decide di modificare l’insieme dei connettivi binari utilizzati. Ciò tornerà utile una volta che saranno introdotti i due connettivi universali NOR e NAND (si veda oltre). Sarà inoltre utile quando dovremo introdurre gli operatori modali, nel secondo modulo. Sintassi: regole di formazione (RF)
RF definite dall’insieme di regole {1,7} = {RF1, ..., RF7} L’insieme {RF1, ..., RF7} funziona algoritmicamente, come un motore logico, il cui input consiste in n ≥ 1 elementi dei due insiemi finiti {¬, ∧, ∨, →, ↔} e {P1, ..., Pn} e il cui output consiste nell’insieme infinito Φ di tutte le fbf ϕ, cioè Φ = {ϕ: ϕ è una fbf}
{¬, ∧, ∨, →, ↔}
{RF1, ..., RF7}
Φ = {ϕ: ϕ è una fbf}
{P1, ..., Pn}
Il nostro esempio diventa: P → Q, P, perciò Q
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
71
Notare che non abbiamo ancora il segno di “perciò” (entailment)
Unità 5
Argomenti •
Il linguaggio del calcolo proposizionale
•
Semantica (tavole di verità TV) 1. Proprietà delle TV 2. Il linguaggio dei sequenti logici 3. Le TV e la valutazione della validità delle inferenze
Prima di introdurre l’argomento dei sequenti, e quindi il simbolo di “perciò”, dobbiamo analizzare il “significato” dei connettivi. Il significato dei connettivi è dato dal loro uso e specificato dalle tavole di verità.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
72
Le tavole di verità hanno due funzioni: •
Quella primaria è fornire il significato vero-funzionale dei connettivi. I connettivi che utilizziamo sono 5, quindi avremo 5 tavole i verità.
•
Quella secondaria è fornire uno strumento per la valutazione della validità formale di un’argomentazione, cioè per la valutazione della correttezza di un sequente. Per vedere questo dobbiamo aspettare di introdurre il simbolo di “perciò”. Le tavole di verità dei cinque connettivi vero-funzionali
ϕ ¬ϕ V F F V
ϕ V V F F
ψ ϕ∧ψ V V F F V F F F
ϕ V V F F
ϕ V V F F
ψ ϕ →ψ V V F F V V F V
ϕ ψ ϕ↔ψ V V V V F F F V F F F V
ψ ϕ ∨ψ V V F V V V F F
Minimalismo (lettura debole, non forte, dei connettivi) Due formule si dicono equivalente sse le loro tavole di verità generano esattamente lo stesso output (l’output di una TV è la colonna principale di valori di verità assegnati all’intera formula, non alle sue componenti). In base a questa definizione è facile dimostrare che: ϕ ↔ ψ è equivalente a (ϕ → ψ) ∧ (ψ → ϕ) ϕ → ψ è equivalente a ¬ (ϕ ∧ ¬ ψ) ϕ ∧ ψ è simmetrico, perciò equivalente a ψ ∧ ϕ (nessun rapporto causale: esempio, i giapponesi attaccarono Pearl Harbour e dichiararono guerra) ϕ ∨ ψ è inclusivo (esempio: possono partecipare uomini o donne). La disgiunzione esclusiva può essere espressa così: (ϕ ∨ ψ) ∧ ¬ (ϕ ∧ ψ) Una volta introdotto il sistema dei tableau vedremo che esiste un metodo più semplice per dimostrare l’equivalenza tra due formule.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
73
Altri connettivi vero-funzionali Abbiamo già incontrato i tre connettivi vero-funzionali che combinano la congiunzione o la disgiunzione con la negazione: NOR = disgiunzione negativa = “non [… oppure …]” = Peirce arrow = ↓ XOR = disgiunzione esclusiva, non c'è un simbolo standard utilizzato da tutti, possiamo optare per ↕ NAND = congiunzione negativa = “non [… e …]” = Sheffer stroke = ↑
Le loro tavole di verità sono: Le tavole di verità dei tre connettivi “congiunti” NOR
XOR
NAND
ϕ ψ ¬ (ϕ ∨ ψ) ϕ↓ψ V V F V F F F V F F F V
ϕ ψ (ϕ ∨ ψ) ∧ ¬ (ϕ ∧ ψ) ϕ↕ψ V V F V F V F V V F F F
ϕ ψ ¬ (ϕ ∧ ψ) ϕ↑ψ V V F V F T F V T F F T
Torneremo su questi tre connettivi dopo aver introdotto il teorema di verofunzionalità. Dimostrare e inferire A questo punto è utile introdurre una distinzione fondamentale tra provare/dimostrare Q e inferire correttamente o validamente Q a partire da P. Il concetto di prova o dimostrazione è più forte, nel senso che richiede, come condizione necessaria, che Q sia correttamente o validamente inferita da P. Esso tuttavia richiede anche che Q sia correttamente o validamente inferita da premesse
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
74
vere, cioè che si dia il caso che P. La verità delle premesse non è invece richiesta se si concentra l’attenzione, come faremo in questo corso, sul concetto di inferenza valida. Si considerino le seguenti coppie di esempi: Tutti i parlamentari italiani sono cinesi Luciano Floridi è un parlamentare Perciò Luciano Floridi è un cinese Due premesse false e una conclusione falsa generano pur sempre un’inferenza valida, ma non abbiamo certo dimostrato che LF è un cinese. Avremmo un’inferenza invalida se dicessimo: Tutti i parlamentari italiani sono cinesi Luciano Floridi è un parlamentare Perciò Luciano Floridi non è un cinese
Tutti i parlamentari italiani parlano italiano Luciano Floridi è un parlamentare Perciò Luciano Floridi parla italiano Una premessa vera e una falsa, che portano ad una conclusione vera, generano un’altra inferenza valida, ma di nuovo non abbiamo dimostrato che LF parla italiano. Avremmo un’inferenza invalida se dicessimo: Tutti i parlamentari italiani parlano italiano Luciano Floridi è un parlamentare Perciò Luciano Floridi non parla italiano
Inferenze valide e sequenti In “P → Q, P, perciò Q”, “perciò” rappresenta una relazione di conseguenza logica tra (insiemi di) fbf. Tutta la formula si definisce un sequente.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
75
I sequenti sono affermazioni di carattere simbolico riguardanti le relazioni formali di implicazione tra fbf del linguaggio in questione. Asseriscono che le conclusioni seguono necessariamente dalle premesse. Perciò i sequenti appartengono al metalinguaggio della teoria della dimostrazione, non sono essi stessi delle formule del linguaggio formale. Ciò risulta ovvio se si nota che i due nuovi simboli, cioè il turnstile semantico |= e il turnstile sintattico |-, non appartengono al vocabolario di LCProp. Le formule possono essere vere o false, le inferenze valide o invalide, ma i sequenti, in quanto affermazioni su “che cosa segue logicamente da che cos’altro” sono corretti o incorretti. Possono essere visti come rappresentazioni grafiche della nozione di conseguenza logica. In alcuni testi di logica, ad esempio, questa rappresentazione avviene in modo perpendicolare e non orizzontale, con le premesse divise dalla conclusione mediante una linea e la conclusione segnalata da tre punti: P→Q P _____ ...Q
I sequenti possono essere semantici o sintattici. Un sequente è semantico (simbolo |=) se valuta la relazione di conseguenza logica tra le premesse e le conseguenze assegnando valori di verità a tutte le formule e controllando le loro possibili combinazioni in una tavola di verità. Il sequente semantico è incorretto se e so se tutte le premesse sono vere e la conclusione è falsa, altrimenti è corretto. In altre parole, un sequente semantico asserisce che non si da mai il caso che, allo stesso tempo (più precisamente: nella stessa struttura di una tavola di verità), tutte le formule prima del turnstile sono vere e tutte le formule dopo il turnstile sono false. Possiamo tradurre la precedente inferenza in modo semantico così: P → Q, P |= Q. Un sequente semantico è in/corretto se e solo se il suo equivalente sintattico è parimenti in/corretto.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
76
Un sequente è sintattico se valuta la relazione di conseguenza logica tra le premesse e le conclusioni costruendo un controesempio (stesse premesse + negazione delle conclusioni) e dimostrandone la sua inconsistenza sintattica identificando la presenza/assenza di proposizioni atomiche affermate e negate al contempo, attraverso un tableau chiuso. Tutto ciò sarà più chiaro una volta che introdurremo i tableaux. Per il momento basti dire che se un sequente sintattico è corretto, allora l’equivalente contro-esempio è inconsistente, e il tableau da esso generato è chiuso. Come dicevo, i sequenti possono essere corretti o incorretti e sono utilizzati per rappresentare la in/validità formale di una inferenza/argomento o il valore di verità di un fbf, nel seguente modo:
ϕ
╞ ψ (sequente semantico), ϕ implica semanticamente ψ, cioè non si da mai il
caso che, al contempo, ϕ = V e ψ = F.
╞ (sequente semantico), ϕ può implicare qualsiasi formula. Poiché questo è il caso solo se ϕ è sempre = F, ϕ ╞ è una annotazione abbreviata per dire che ϕ è una
ϕ
inconsistenza o falsità logica cioè una contraddizione.
╞ ϕ (sequente
semantico), ϕ può essere implicato semanticamente da qualsiasi
formula. Poiché questo è il caso solo se ϕ è sempre = V, ϕ
╞ è una annotazione
abbreviata per dire che ϕ è un teorema logico, cioè una tautologia. Γ ├ ϕ (sequente sintattico), l’insieme di fbf Γ implica sintatticamente ϕ, cioè l’unione Γ ∪ ¬ ϕ, che rappresenta il controesempio, è inconsistente. Γ ├ (sequente sintattico), l’insieme di fbf Γ può implicare sintatticamente qualsiasi (insieme di) fbf, cioè che Γ è inconsistente.
├ ϕ (sequente sintattico), ϕ può essere implicato da qualsiasi (insieme di) fbf. Si tratta di una annotazione abbreviata per dire che ϕ è un teorema sintattico.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
77
Tavole di verità: un esempio di prova formale Argomento nel LN: Se piove (= P) allora resto a casa (= Q). Se è Sabato (= R), allora esco (= ¬ Q). Esco (¬Q), perciò o non sta piovendo (= ¬P) oppure è Sabato (= R). Traduzione in sequente semantico di LCProp: [P → Q], [R → ¬ Q], ¬ Q |= [ ¬P ∨ R]
Tavola di verità
1) 2) 3) 4) 5) 6) 7) 8)
P
Q
R
V V V V F F F F
V V F F V V F F
V F V F V F V F
[P → Q] V V F F V V V V
[R → ¬ Q]
¬Q
¬ [¬ P ∨ R ]
F V
F
F V V V
F V V
V V
Gli unici due casi in cui tutte le premesse sono vere (strutture 7 e 8) sono anche i casi in cui la conclusione è vera. Tutte le altre strutture sono analizzate fino al punto in cui l’inferenza potrebbe ancora essere invalida (il punto dove arriva la freccia orizzontale). Oltre quel punto sappiamo che, per quel che riguarda la struttura in questione, l’inferenza non può essere invalida, cioè è valida.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
78
Unità 6 Sommario Il linguaggio del calcolo proposizionale 1. Complessità delle tavole di verità 2. Elementi di traduzione dal linguaggio naturale al linguaggio del calcolo proposizionale Abbiamo visto che le TV stabiliscono a) il significato/uso degli operatori logici detti connettivi b) la validità di un argomento/inferenza, cioè la correttezza di un sequente semantico. (a) è autoevidente. Un simbolo grafico ha semplicemente il significato attribuitogli dalla corrispondente tavola di verità. Ad esempio, potremmo decidere di usare il simbolo & invece del simbolo ∧ associando al simbolo la TV secondo cui il v. di verità della formula complessa è V se e solo se entrambe le formule atomiche che la compongono hanno valore di verità T, altrimenti è F. (b) significa che, dato che un argomento è valido (un sequente semantico è corretto) se e solo se non si da mai il caso (non esiste mondo possibile, non esiste alcuna struttura in una TV) in cui tutte le premesse sono al contempo vere e le conclusioni false, possiamo usare una TV per controllare l’assenza di questa combinazione di valori (notare l’uso delle espressioni Struttura, Caso Possibile, Mondo Possibile, Situazione per indicare una linea orizzontale di una tavola di verità). Si da sempre il caso che (b), ma (b) diventa di fatto impraticabile quando le TV sono troppo complesse. La complessità di una TV è calcolabile in i) numero M di colonne della TV in cui si assegnano valori di verità alle fbn ii) numero 2N di strutture (righe) della TV, dove 2 sta per i valori di verità e N sta per il numero di lettere proposizionali atomiche costituenti le fbf complesse. (i) Cresce linearmente perché M = numero N di lettere proposizionali + numero di premesse + numero di conclusioni. (ii) Cresce esponenzialmente con il crescere di N. In pratica, ciò significa che si può usare con facilità una TV per analizzare un’argomentazione con N ≤ 4.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
79
Ora che abbiamo a disposizione il nuovo linguaggio del calcolo proposizionale (LCProp) dobbiamo vedere come tradurre in LCProp argomentazioni presentate in un linguaggio naturale LN.
LN esempio
LN connet.
LCProp trad.
Amo la logica (L) e la studio molto (Q) e (lettura debole) P ∧ Q Odio la logica ma, tuttavia, eppure la ma, tuttavia, eppureP ∧ Q studio ugualmente Odio la logica sebbene, anche se, la sebbene, anche se P ∧ Q studio Non solo odio la logica, mi fa anche no solo [...] ma P∧O orrore (O) anche Amo la logica in vista del fatto, perché è perciò [lettura nonE |= L semplice (E) causale] Il fatto che vado a Foggia (F) segue dal perciò S |= F fatto che mi hai salutato (S) Mi hai salutato per cui (e [lettura forte], perciò S |= F quindi, ergo) vado a Foggia Visto, dato che mi hai salutato (avendomi perciò S |= F tu salutato), vado a Foggia Mi hai salutato. Ne (con)segue che vado Perciò S |= F a Foggia. Se mi saluti, vado a Foggia (1) se … allora S→F Vado a Foggia purché, a patto che, a purché S→F condizione che, purché mi saluti. (2) F→S Vado a Foggia solo se mi saluti solo se oppure ¬S → ¬F Vado a Foggia ogniqualvolta, tutte le ogniqualvolta S→F volte che mi saluti (3) (lettura debole) Vado a Foggia precisamente in tutti quei se e solo se F↔S casi in cui mi saluti Vado a Foggia, a meno che (salvo che, a meno che (lettura sempre che, fuorché, purché non, eccetto F∧S debole) che) tu mi saluti Non vado a Foggia senza, a meno di A meno che F∧S essere stato salutato. (lettura debole) Che mi saluti o meno (sia che... sia che sia che … sia che (S ∧ ¬ S) → F non...), vado a Foggia non oppure F (S ∧ ¬ S) → F Vado a Foggia anche se mi saluti anche se oppure F Vado a Foggia se e solo se mi saluti se e solo se (sse) F ↔ S
(1) La così detta implicazione materiale che usiamo in logica corrisponde ad una relazione “esterna” : P implica Q anche quando Q è falsa (nessuna relazione di
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
80
rilevanza) o quando Q è una tautologia. La concezione ordinaria di implicazione, che G. E. Moore chiama “entailment” (“comportare” invece di “implicare”), è più forte e corrisponde ad una relazione “interna” secondo la quale P “comporta (entails)” Q quando la verità di P porta necessariamente alla verità di Q. (2) Se questo sembra controintuitivo, si consideri che “F purché S" significa semplicemente che, se la S-condizione è soddisfatta allora si da il caso che F. Ciò significa che, in “F purché S", S deve essere trattata solo come una condizione sufficiente di P, non come una condizione necessaria, e quindi che la traduzione corretta è “se F allora S", e non “S solo se F”, che è molto più forte. La differenza può essere illustrata con un esempio. Immaginiamo che l’inferenza sia: “vado al cinema (P) purché Mimmo venga con me (Q)” a.
la traduzione corretta, che tratta Q come una condizione sufficiente, è (Q → P)
b. La traduzione incorretta, che tratta Q come una condizione necessaria, sarebbe (P → Q) cioè (¬ Q → ¬ P). Questa seconda formula dice che, se Mimmo non va al cinema (¬ Q) allora non ci vado neppure io (¬ P), ma questa è una lettura troppo forte di “purché”. Si noti che le due formule non sono equivalenti, e che perciò fa molta differenza il modo in cui interpretiamo l’argomento originale in LN: P Q
Q→P
¬Q→¬P
P→Q
T T
T
T
T
T F
T
F
F
F T
F
T
T
F F
T
T
T
Più in generale: •
se P è una condizione necessaria per Q (“P purché Q”), allora P si pone dopo la freccia del connettivo che simboleggia l’implicazione: Q → P. Questo perché se Q è il caso, allora deve anche essere necessariamente il caso che P e
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
81
se ¬ P allora segue che ¬ Q. Ciò formalizza il concetto di “ragione necessaria”. •
se invece P è una condizione sufficiente per Q (“P solo se Q”), allora P si pone prima del connettivo che simboleggia l’implicazione: P → Q. Questo perché se P è il caso, allora deve anche essere necessariamente il caso che Q. Ciò formalizza il concetto di “ragione sufficiente”.
•
se P è una condizione necessaria e sufficiente per Q, abbiamo la doppia implicazione da P a Q (P è condizione sufficiente per Q) e da Q a P (P e’ anche necessaria). Ciò formalizza il concetto di “ragione necessaria e sufficiente”.
(3) In questo caso “ogniqualvolta” è ridotto al connettivo inferenziale (lettura debole), ma, strettamente parlando, si tratta di un “sentence-functor” che non è verofunzionale. È venuto il momento di analizzare il concetto di vero-funzionalita` più da vicino.
Unità 7 Argomenti •
Il linguaggio del calcolo proposizionale 1. Vero-funzionalità 2. Elementi di traduzione dal linguaggio naturale al linguaggio del calcolo proposizionale
Un sentence-functor dichiarativo (funtore proposizionale) in L è una qualsiasi stringa ben formata di simboli di un linguaggio L che, in combinazione con perlomeno un’altra stringa ben formata di simboli di L produce una stringa ben formata di simboli di L, più complessa, qualificabile come una frase dichiarativa ben formata in L.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
82
Un operatore logico vero-funzionale è una qualsiasi stringa di simboli che, lavorando come un sentence-functor dichiarativo rende il valore di verità della frase dichiarativa complessa interamente dipendente dai valori di verità delle sue componenti costitutive. Quindi ogni operatore logico vero-funzionale è anche un sentence-functor dichiarativo ma non vice versa. Ecco 4 esempi illustrativi di operatori logici molto importanti che non sono verofunzionali. Perché Si veda la tavola di verità sottostante. Nelle ultime 3 strutture "perché" funziona allo stesso modo della congiunzione ∧. Se φ oppure χ o entrambi sono false, allora certamente la connessione causale, stabilita dalla formula più complessa, deve essere falsa. Tuttavia, quando sia φ sia χ sono vere, è impossibile determinare, sulla sola base di una analisi logica formale, se la relazione causale si applica realmente, e quindi se la formula complessa debba essere valutata come necessariamente vera, senza prendere in considerazione il significato e la mutua rilevanza sia di φ sia di χ. Lo stesso vale per il sentence-functor "solo perché". ϕ
χ
ϕ perché χ
V
V
V
F
F
F
V
F
F
F
F
Possiamo chiamare tutto ciò la Legge di Hume, dalla famosa critica di Hume alla nozione di causalità. Esercizio: analizzare il valore di verità della seguente frase dichiarativa “non è vero che le mie scarpe sono bagnate perché piove".
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
83
Ogniqualvolta Il sentence-functor "ogniqualvolta" indica che se χ è dato come vero, allora anche φ deve essere necessariamente vero, questo spiga perché la terza struttura è falsa. In tutti gli altri casi, non abbiamo alcun modo per valutare il valore di verità della formula complessa sulla base del valore di verità delle sue formule atomiche. Quando χ è falso allora la verità di φ non ci dice nulla sul valore di verità della formula complessa, e quando χ è vera, allora, come nel caso dell’operatore logico “perché”, non siamo ancora in grado di stabilire se la formula complessa è necessariamente vera. Esercizio: analizzare il valore di verità della seguente frase dichiarativa “bevo un caffè ogniqualvolta mi sento stanca". ϕ
χ
ϕ ogniqualvolta χ
V
V
?
V
F
?
F
V
F
F
F
È una bugia che Ovviamente, se φ è vera (esempio: Londra è la capitale della Gran Bretagna), allora qualificare φ come una bugia è equivalente ad affermare qualcosa di falso. Ma se φ è falso (esempio: Oxford è la capitale della Gran Bretagna), allora resta del tutto dubbio se uno possa qualificare φ come una bugia, dato il fatto che una frase dichiarativa falsa può essere asserita in tutta buona fede e sincerità, per mera ignoranza. In altre parole, non è vero che ogniqualvolta diciamo qualcosa di falso stiamo anche mentendo. ϕ
è una bugia che ϕ
V F
F
S sa che Come si può vedere (tavola successiva), la situazione è esattamente inversa nel caso della conoscenza. Se φ è falsa, è impossibile che S sappia che φ, quindi la seconda struttura è necessariamente falsa. Questo non significa che le falsità non si possano
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
84
conoscere, ma solo che la verità della proposizione in questione (affermata o negata) è una conditio sine qua non della conoscenza. Al contrario, se φ è vera non possiamo qualificare "S sa che φ " come falsa, perché non sappiamo se S sa che φ, ma non possiamo qualificarla come vera perché altrimenti S sarebbe onnisciente. Ciò significa che la verità è una condizione necessaria ma insufficiente per la conoscenza. Vedremo nel prossimo modulo come si può trattare la logica della conoscenza (logica epistemica) attraverso l’ampliamento del nostro vocabolario sulla base della logica modale. ϕ V F
S sa che ϕ ? F
Sia che ... sia che... (Se o meno...), comunque L’operatore logico “se o meno φ” ("whether or not φ") genera una tautologia, dunque il valore della formula complessa dipende interamente dal valore della formula atomica che segue. Nel primo caso, siccome χ= χ è anch’essa una tautologia, il valore di verità complessivo è anch’esso quello di una tautologia. ϕ V V F F
χ V F V F
se o meno ϕ, è comunque il caso che χ V V V V
Questo secondo caso è più controverso (si veda Hodges per un’analisi che diverge da quella presentata in questa unità). Come nel caso precedente, la clausola "se o meno
φ" resta una tautologia. Il valore di verità della formula complessa può essere interpretato come equivalente al valore di verità: 1. di χ da sola 2. della congiunzione (φ ∨ ¬ φ) ∧ χ 3. della doppia inferenza (φ → χ) ∧ (¬ φ → χ) in ciascun caso, tuttavia, il valore di verità della formula complessa resta identico a quello di χ. Hodges tratta tuttavia il valore di verità della c come empirico e quindi logicamente indeterminato a priori. Se χ è una verità contingente, allora lo è anche il valore di verità della formula complessa, e non possiamo stabilirlo a priori per mezzo
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
85
della sola analisi logica. La tesi filosofica sostenuta da Hodges è corretta: aggiungere una tautologia lascia il valore di verità della formula complessa inalterato. Tuttavia ciò non significa che non possiamo elencare tutti i possibili casi, come nella tavola di verità qui presentata, e specificare per ogni caso quale sarebbe il valore di verità della formula complessa. In altre parole, una formula atomica a se stante è vero-funzionale. ϕ V V F F
χ V F V F
se o meno ϕ, è comunque il caso che χ V F V F
Analisi dettagliata di un esempio di traduzione Il compito di questa analisi è di fornire una descrizione dettagliata della procedura di traduzione di una argomentazione - presentata in un linguaggio naturale come l'italiano - in un sequente del calcolo proposizionale. 1) formulazione dell'argomentazione nel linguaggio naturale (NL). Utilizzeremo un esempio molto istruttivo tratto dall'esame di primo anno (Preliminary Examination) di logica dell'Università di Oxford, 1994: Se Dio esiste, allora non esiste il male nel mondo, o perlomeno non esiste alcun male che non sia prodotto da esseri umani. Ma allo stesso modo se Dio non esiste, allora le nozioni di bene e male non hanno alcun senso; ed è ovviamente una condizione necessaria affinché il male esista che le nozioni di bene e male siano intelligibili, anche se al limite soltanto per Dio. Perciò, sempre che io non abbia commesso un errore nel mio ragionamento - e chiunque con un briciolo di intelligenza può vedere che non ne ho commesso alcuno - carestia, pestilenza e terremoti, ovvi esempi di male naturale, non esistono. (If God exists, then there is no evil in the world - or at least none which is not produced by human beings. But equally if God doesn't exist, then the notions of good and evil don’t make sense; and it’s obviously a necessary condition of there being evil that the notions of good and evil are intelligible, even if only to God. So unless I’ve made a mistake in my reasoning - and anyone with intelligence can see that I haven’t -
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
86
famine, pestilence and earthquakes, which are obvious examples of natural evil, don’t exist.) 2) separare le premesse dalla conclusione. Attenzione: la conclusione di un argomento in NL tende ad essere collocata verso la fine dell'argomento stesso, ma non è sempre così. Premesse: Se Dio esiste, allora non esiste il male nel mondo, o perlomeno non esiste alcun male che non sia prodotto da esseri umani. Ma allo stesso modo se Dio non esiste, allora le nozioni di bene e male non hanno alcun senso; ed è ovviamente una condizione necessaria affinché il male esista che le nozioni di bene e male siano intelligibili, anche se al limite soltanto per Dio. Conclusione: Perciò, sempre che io non abbia commesso un errore nel mio ragionamento - e chiunque con un briciolo di intelligenza può vedere che non ne ho commesso alcuno carestia, pestilenza e terremoti, ovvi esempi di male naturale, non esistono. 3) identificare e separare le varie premesse tra loro, se ce ne sono più di una. Attenzione: di solito la presenza del punto o del punto e virgola indicano la fine di una premessa. i) Se Dio esiste, allora non esiste il male nel mondo, o perlomeno non esiste alcun male che non sia prodotto da esseri umani. ii) Ma allo stesso modo se Dio non esiste, allora le nozioni di bene e male non hanno alcun senso; iii) ed è ovviamente una condizione necessaria affinché il male esista che le nozioni di bene e male siano intelligibili, anche se al limite soltanto per Dio. Perciò, sempre che io non abbia commesso un errore nel mio ragionamento - e chiunque con un briciolo di intelligenza può vedere che non ne ho commesso alcuno carestia, pestilenza e terremoti, ovvi esempi di male naturale, non esistono. 4) indicare, in ciascuna premessa e nella conclusione, quale componente linguistica funziona come un operatore logico. Attenzione: gli operatori logici sono di solito ovvi, ma a volte possono essere impliciti o nascosti nell'argomento in NL, come ad esempio nel caso della premessa (iii). Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
87
i) Se Dio esiste, allora non esiste il male nel mondo, o perlomeno non esiste alcun male che non sia prodotto da esseri umani. ii) Ma allo stesso modo se Dio non esiste, allora le nozioni di bene e male non hanno alcun senso; iii) ed è ovviamente una condizione necessaria affinché il male esista che le nozioni di bene e male siano intelligibili, anche se al limite soltanto per Dio. Perciò, sempre che io non abbia commesso un errore nel mio ragionamento - e chiunque con un briciolo di intelligenza può vedere che non ne ho commesso alcuno carestia, pestilenza e terremoti, ovvi esempi di male naturale, non esistono. 5) eliminare qualsiasi ridondanza. Attenzione: assicurarsi che quanto eliminato non svolga alcun ruolo logico all'interno dell'argomentazione. i) Se Dio esiste, allora non esiste il male nel mondo, o perlomeno non esiste alcun male che non sia prodotto da esseri umani. ii) Ma allo stesso modo [questo non aggiunge niente all'argomento] se Dio non esiste, allora le nozioni di bene e male non hanno alcun senso; iii) ed [questo non aggiunge niente all'argomento. Si consideri che stiamo già trattando le due premesse (ii) e (iii) come "date" e quindi entrambe vere] è ovviamente [questo non aggiunge niente all'argomento] una condizione necessaria affinché il male esista che le nozioni di bene e male siano intelligibili, anche se al limite soltanto per Dio [questo non aggiunge niente all'argomento perché è solo un modo ridondante di dire che qualcosa è intelligibile]. |= Perciò [questo è ora espresso dal simbolo di inferenza semantica], a meno che io non abbia commesso un errore nel mio ragionamento - e chiunque con un briciolo di intelligenza può vedere che non ne ho commesso alcuno - [tutto questo non aggiunge niente all'argomento, si tratta solo di un modo ridondante per dire "a meno che P, ma non P", quindi può essere eliminato; se lo si includesse, non si tratterebbe di un errore, ma solo di un'inutile giro di frase, che renderebbe la nostra analisi meno elegante ed economica] carestia, pestilenza e terremoti, ovvi esempi di male naturale, non esistono.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
88
Risultato: i) Se Dio esiste, allora non esiste il male nel mondo, o perlomeno non esiste alcun male che non sia prodotto da esseri umani. ii) se Dio non esiste, allora le nozioni di bene e male non hanno alcun senso; iii) è una condizione necessaria affinché il male esista che le nozioni di bene e male siano intelligibili. |= carestia, pestilenza e terremoti, ovvi esempi di male naturale, non esistono. 6) fornire una interpretazione per le frasi dichiarative connesse dagli operatori logici. Attenzione, assicurarsi •
di partire dalla prima frase dichiarativa utilizzando P e continuare in ordine alfabetico con Q etc. (questo per ragioni di semplicità)
•
che a frasi dichiarative positive corrispondano semplici lettere proposizionali
•
che a frasi dichiarative negative corrispondano le corrispondenti lettere proposizionali negate
•
che
agli stessi contenuti, anche se espressi da frasi dichiarative
apparentemente diverse, corrispondano le stesse lettere proposizionali i) Se P (= Dio esiste), allora ¬ Q (= non esiste il male nel mondo, o perlomeno non esiste alcun male che non sia prodotto da esseri umani. Attenzione: tutta questa frase significa solo che non esiste il male naturale ma solo il male morale o "umano“). ii) se ¬ P (= Dio non esiste), allora ¬ R (= le nozioni di bene e male non hanno alcun senso); iii) è una condizione necessaria affinché Q (= il male esista) che R (= le nozioni di bene e male siano intelligibili). |= ¬ Q (= carestia, pestilenza e terremoti, ovvi esempi di male naturale, non esistono. Attenzione: si tratta di mali naturali). Risultato: i) Se P allora ¬ Q ii) Se ¬ P allora ¬ R iii) è una condizione necessaria affinché Q che R |= ¬ Q
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
89
7) fornire l'interpretazione degli operatori logici. Risultato: i)
P→¬Q
ii)
¬P→¬R
iii)
Q→R
iv)
|= ¬ Q
8) provare con una tavola di verità se il sequente è corretto.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
90
Unità 8 Argomenti •
Il sistema di dimostrazione ad alberi (tableaux) 1. Come funziona 2. Le regole di derivazione 3. Un esempio
Se un sequente Γ|= φ è corretto allora la corrispondente inferenza in LCProp è valida e valido è l’argomento in LN. Un sequente Γ|= φ è corretto se e solo se: C) non è mai il caso che tutte le premesse sono al contempo vere e la conclusione è falsa. Per controllare se la condizione C è soddisfatta si possono utilizzare diversi metodi tra cui le tavole di verità (TV) e i tableaux. Le TV sono un sistema di dimostrazione laborioso e semantico: mostrano direttamente se tutte le ψ in Γsono vere quando la φ è falsa. I tableaux sono un sistema di dimostrazione elegante, economico e puramente sintattico. Vediamo come funzionano. L’idea base dei tableaux è piuttosto semplice: i) una argomentazione in LN è valida ↔ la corrispondente inferenza in LCProp è valida ii) Una inferenza in LCProp è valida ↔ il corrispondente sequente Γ|= φ è corretto iii) Un sequente Γ|= φ è corretto ↔ non esiste alcun mondo possibile (alcuna struttura) in cui tutte le formule in Γ = V e φ = F iv) non esiste alcun mondo possibile (alcuna struttura) in cui tutte le formule in Γ = V e φ = F ↔ ipotizzare Γ|= ¬ φ significa ipotizzare una contraddizione. v) Assumiamo quindi le premesse come date, neghiamo la conclusione: se si genera una contraddizione avremmo un argomento valido, se si genera un mondo possibile avremmo un argomento invalido. In altre parole, se si riesce a dimostrare che Γ|= ¬ φ
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
91
genera in qualsiasi mondo possibile una contraddizione, avremo dimostrato che è necessariamente il caso che Γ|= φ. Per dimostrare che Γ|= ¬ φ genera sempre contraddizioni in qualsiasi mondo possibile, dobbiamo essere in grado di controllare la presenza di formule negate e asserite al contempo. Di solito i sequenti contengono diverse formule complesse, che pur essendo basate su un numero definito di lettere proposizionali non hanno tuttavia la stessa struttura morfologica. Come facciamo per enucleare le formule affermate e negate? Per ciascun tipo di formula complessa dobbiamo essere in grado di analizzare le formule atomiche che la compongono. Per far questo si deve essere in grado di eliminare I connettivi. Le regole di derivazione RD sono dunque 9: •
1 per la eliminazione della doppia negazione e
•
2 per la eliminazione di ciascun connettivo affermato e poi negato.
Esse permettono di invertire il processo di formazione regolato dalla sintassi di LCProp. La seguente tavola illustra le 9 regole in dettaglio.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
92
Le 9 regole di derivazione lineari φ∧ψ
¬ ( φ ∨ ψ)
φ
¬φ ¬ψ
ψ
¬(φ ∧ ψ)
¬φ
¬ψ
¬¬φ
φ
φ
¬ψ
φ∨ψ
φ
¬ (φ → ψ)
ψ
φ→ψ
¬φ
ψ
ramificanti
¬(φ ↔ ψ)
φ↔ψ
φ
ψ
¬φ
¬ψ
φ
¬ψ
¬φ
ψ
Si noti la differenza tra i due tipi di regole, quelle lineari e quelle ramificanti. Su questa differenza torneremo tra poco. Le RD stabiliscono in modo dettagliato, preciso ed esaustivo come si possono eliminare i connettivi e mettere in luce le formule atomiche (lettere proposizionali {P1,..., Pn} e le loro negazioni) in modo da poter riscontrare la presenza di inconsistenze (stesse formule affermate e negate). Le RD possono quindi essere definite come un insieme di 9 regole {DR1,..., DR9} che funzionano in modo algoritmico, o come un motore che inverte il processo attuato dal motore rappresentato dalle regole di formazione. Il suo input è rappresentato da fbb φ, cioè Φ = {φ : φ è una fbf} e il suo output è rappresentato da lettere proposizionali affermate o negate ψ, cioè Ψ {ψ: ψ è una formula atomica}.
Φ = {φ : φ è una fbf}
{DR1,..., DR9}
Ψ = {ψ: ψ è una formula atomica}
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
93
Oltre alle 9 RD esiste una sola regola di chiusura che indica che un ramo del tableaux è chiuso sse in qualsiasi parte del ramo si trovano sia l’affermazione sia la negazione della stessa formula ϕ:
Regola di chiusura φ
¬φ
L’idea dietro il sistema dei tableaux Il sistema dei tableaux sfrutta i) La possibilità di provare la validità di un’ inferenza confutando la possibilità della sua invalidità ii) La possibilità di confutare la invalidità di un’ inferenza provando l’impossibilità del suo controesempio iii) La possibilità di confutare l’impossibilità di un controesempio provandone l’inconsistenza. Questi 3 punti possono essere sintetizzati dicendo che il sistema dei tableaux sfrutta il fatto che sia la validità sia l’inconsistenza sono monotone, cioè: se un’inferenza A è valida allora A non può essere trasformata in un’inferenza invalida aggiungendo ulteriori premesse. Quindi tutto quello che si deve controllare è se la conclusione è falsa quando assumiamo che tutte le premesse siano vere. Allo stesso modo, se un insieme di fbf è inconsistente non può essere trasformato in un insieme consistente aggiungendo ulteriori fbf (se il controesempio è inconsistente rimane inconsistente anche se aggiungiamo ulteriori premesse). Nb. Le due nozioni di invalidità e consistenza sono non-monotone. Computabilità del calcolo proposizionale Date le RD e la natura del LCProp è facile comprendere perché il calcolo proposizionale è completamente meccanizzabile. Esiste sempre un finito e ben determinato numero di operazioni (applicazioni di RD) la cui ripetuta applicazione
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
94
genera fbf sempre più semplici fino a quando non si raggiungono formule atomiche affermate o negate, e la selezione delle RD da applicare non richiede alcune scelta euristica, solo una adeguatezza formale. Vedremo che non è così nella logica dei predicati. Strategia di analisi Strategia per i Tableaux proposizionali Quanto appena detto sulla computabilità non significa che non esistano strategie più o meno efficienti (ad esempio in termini di numero di simboli o di passi o di ramificazioni impiegati per raggiungere la soluzione). La seguente è una semplice strategia che chiameremo “Cartesiana” per ragioni che spiegherò nel corso della unità: i) Applicare anzitutto le RD lineari ii) Applicare tutte quelle RD ramificanti che permettono la chiusura di uno dei due rami immediatamente al passo successivo iii) Applicare le RD ramificanti alle restanti formule. Esercizio Applicare il sistema dei tableaux al sequente ottenuto nella unità precedente: (P → ¬ Q), (¬ P → ¬ R), (Q → R) |= ¬ Q Specificare quali di queste coppie si applica a che cosa: Corretto/incorretto Vero/falso Consistente/inconsistente Tautologico/contraddittorio Valido/invalido Aperto/chiuso
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
95
Unità 9 Argomenti •
Mappa del lavoro svolto
•
Ancora sull’equivalenza logica
•
Tre teoremi fondamentali del calcolo proposizionale 1. Teorema di completezza vero-funzionale 2. Generalizzazione del teorema di completezza vero-funzionale 3. Logica proposizionale e logic gates
Ecco una breve mappa del lavoro svolto nel calcolo proposizionale.
• Vocabolario • Sintassi
• lettere proposizionali • connettivi (operatori logici vero-funzionali) • regole di formazione • “grammaticalità”
• Semantica • interpretazione (tavole di verità) Argomento nel linguaggio naturale NL, proprietà: in/valido
Traduzione
Argomento nel linguaggio formale LF, proprietà: in/valido
Argomento in NL valido Argomento in LF valido
Tavole di verità (scorciatoia)
Costruzione del sequente sintattico proprietà: in/corretto
Seq. semantico incorretto
Costruzione del controesempio del sequente sintattico. proprietà: in/consistente
Seq. sintattico corretto
Controesempio inconsistente
Costruzione del sequente semantico proprietà : in/corretto
Tableau chiuso
Analisi con un Tableau proprietà: chiuso/aperto
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
96
Quando il tableau non è chiuso, sappiamo che in logica proposizionale questo significa che l’argomento originale è invalido. Ancora sull’equivalenza logica Quando traduciamo un argomento “proposizionale” da un linguaggio naturale NL ad un linguaggio formale LF, a volte non è chiaro se le formule ottenute colgono realmente tutto e solo il significato logicamente rilevante ai fini della valutazione dell’inferenza logica, contenuto nelle frasi dichiarative originali in NL. Se si è ragionevolmente in dubbio, un modo per controllare la correttezza delle traduzione è applicare la seguente procedura: 1. fornire la migliore traduzione possibile in LF dell’argomento originale A in LN 2. usando lo stesso insieme di lettere proposizionali utilizzato in (1) ma un diverso insieme di connettivi, fornire una nuova traduzione di A. Le nuove formule saranno ora graficamente diverse ma (dovrebbero essere) logicamente equivalenti a quelle ottenute in (1) 3. confrontare le due traduzioni T1 e T2 4. se T1 e T2 sono logicamente equivalenti, allora abbiamo una ragione in più per credere di aver ottenuto la traduzione giusta. Possiamo fermarci qui, anche se la procedura non ci assicura, con totale certezza, che non abbiamo commesso lo stesso errore due volte sia in T1 sia in T2. IN questo caso il rischio è di confermare semplicemente una interpretazione sbagliata. 5. se T1 e T2 non sono logicamente equivalenti, abbiamo scoperto che c’è un errore di traduzione. In questo caso 6. individuata la discrepanza tra T1 e T2, ripetere l’analisi in (1) e (2) per cercare di individuare in quale traduzione sussiste l’errore. Si può fornire a questo scopo una terza traduzione T3, confrontarla con T1 e T2 e ripetere il processo. In questo caso il rischio è che tutte le traduzioni T1...Tn siano in realtà errate. Tuttavia, data un minimo di competenza e intelligenza nel fornire le varie traduzioni, il rischio decresce con l’aumentare del numero di tentativi. Ovviamente questa procedura è solamente euristica e non è a prova di proiettile: errori possono essere ripetuti e, anche se la loro presenza è nota, non essere facilmente individuabili. Una corretta traduzione richiede intelligenza, e non può essere del tutto meccanizzata.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
97
Un problema aperto resta quello della comparazione veloce dell’equivalenza logica di formule diverse. Un sistema affidabile è quello delle tavole di verità che abbiamo visto in precedenza. Possiamo ora introdurre un sistema più semplice, sfruttando i tableaux delle formule stesse. Immaginiamo di aver raggiunto la fase in cui una premessa del nostro argomento A in NL è stata tradotta in 4 modi diversi: P → Q | ¬ (P ∧ ¬ Q) | (¬ Q → ¬ P) | (Q ∨ ¬ P) Se non si vede immediatamente che le 4 formule sono logicamente equivalenti (e qui l’occhio dell’esperto si educa con l’esperienza), possiamo controllare in due modi a) utilizzando 4 tavole di verità corrispondenti per assicurarci che tutte generano lo stesso output, oppure b) utilizzando i 4 tableaux corrispondenti per assicurarci che tutti generano gli stessi rami aperti/chiusi, come nella seguente tavola.
Questa procedura (b) è molto più semplice e quella che raccomando di adottare.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
98
Teorema di Completezza Vero-Funzionale (TCVF) del linguaggio del calcolo proposizionale L’importanza del teorema sta nel fatto che, una volta dimostrato, esso assicura che qualsiasi argomento o teorema vero-funzionale formulabile in un qualsiasi linguaggio naturale o artificiale L può essere tradotto in un sequente le cui formule utilizzano esclusivamente i connettivi che abbiamo già introdotto nel linguaggio del calcolo proposizionale (LCProp). Ciò significa che LCProp ha sufficienti risorse per esprimere tutte le possibili combinazioni vero funzionali tra lettere proposizionali, cioè è in grado di generare tutte le possibili tavole di verità (TV) complete. Più formalmente: Enunciato (TCVF) qualsiasi nuovo connettivo vero-funzionale che possa essere aggiunto al linguaggio del calcolo proposizionale (LCProp) genera fbf che sono logicamente equivalenti a fbf già ottenibili in LCProp mediante i 5 connettivi {¬ ∧ ∨ → ↔} (sarebbe ridondante in termini di forza espressiva di LCProp). Dimostrazione TCVF può essere dimostrato indirettamente. Supponiamo che l’enunciato del teorema non sia vero, allora esiste perlomeno un nuovo connettivo vero-funzionale che, aggiunto a LCProp, è in grado di generare fbf le cui tavole di verità non sono equivalenti o riproducibili in LCProp utilizzando i connettivi già introdotti. Indichiamo questo nuovo connettivo con il simbolo * e controlliamo se * è in grado di soddisfare la condizione appena stabilita. Il numero di tavole di verità generabili da un connettivo è infinito ma non il numero di classi in cui le tavole di verità possono essere organizzate per tipologia. Abbiamo infatti 5 possibili casi da prendere in considerazione (attenzione Hodges prende in considerazione solo i casi 1, 2, 3 e 5, il che semplifica la dimostrazione ma complica la sua implementazione). 1. |V| = 0
il nuovo connettivo * genera una TV in cui il numero di V, che
indicheremo con |V| (stiamo adattando una notazione matematica con cui si indica il valore assoluto di un numero, ad esempio |+a| = |a| = |− a|) nella colonna principale pari a 0.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
99
2. |V| = 1
il nuovo connettivo * genera una TV in cui il numero di V nella
colonna principale è pari a 1 3. |V| ≤ |F|
il nuovo connettivo * genera una TV in cui il numero di V nella
colonna principale è superiore a 1 ma inferiore al numero di |F|. 4. |V| > |F|
il nuovo connettivo * genera una TV in cui il numero di V nella
colonna principale è superiore a 1 e superiore al numero di |F|. 5. |F| = 0
il nuovo connettivo * genera una TV in cui ci sono solo V nella
colonna principale. I casi (1) e (5) sono semplici: dobbiamo esclusivamente impiegare le stesse lettere proposizionale usate nella formula in cui ricorre * per generare una contraddizione quando |V| = 0 o una tautologia quando |F| = 0. Il caso (2): se |V| = 1, allora si consideri la struttura in cui ricorre la unica V nella colonna principale della TV (questa è la struttura n. 3 nel seguente esempio). Tutte le lettere proposizionali che sono modificate da * avranno uno specifico valore di verità, indicato nella colonne iniziali della TV (le colonne 1 e 2 nel seguente esempio). Si connettano le lettere proposizionali con l’operatore logico ∧, assicurandosi di affermare qualsiasi lettera che abbia valore V e di negare qualsiasi lettere che abbia valore F nelle colonne iniziali della TV, come nel seguente esempio:
P
Q
P*Q
PQ
(¬ P ∧ Q)
V
V
F
VV
FVFV
V
F
F
VF
FVFF
F
V
V
FV
VFVV
F
F
F
FF
VFFF
(¬P ∧ Q)
La risultante formula sarà sempre vera in tutte e solo quelle strutture in cui la formula originale è vera, quindi le TV saranno equivalenti. Anche in questo caso * non genera una TV “originale”.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
100
Il caso (3): se |V| ≤ |F|, allora si considerino tutte le strutture in cui ricorrono delle V nella colonna principale della TV (queste sono le strutture n.3 e n. 4 nel seguente esempio). Tutte le lettere proposizionali che sono modificate da * avranno uno specifico valore di verità, indicato nella colonne iniziali della TV (le colonne 1 e 2 nel seguente esempio). Per ciascuna struttura contenente una V nella colonna principale della TV si connettano tutte le lettere proposizionali con l’operatore logico ∧, assicurandosi di affermare tutte le lettere che hanno valore V e di negare tutte le lettere che hanno valore F nelle colonne iniziali della TV. Infine, si connettano tutte le formule così ottenute attraverso il connettivo ∨, come nel seguente esempio:
P
Q
P*Q
P
Q
(¬P ∧ Q) ∨ (¬P ∧ ¬Q)
V
V
F
V
V
FT F V F FT F FT
V
F
F
V
F
V
V
(¬P ∧ Q)
F
V
TF V V V TF V FT
F
F
V
(¬P ∧ ¬Q)
F
V
TF F F V TF V TF
F
FT F F F FT F TF
La risultante formula sarà sempre vera in tutte e solo quelle strutture in cui la formula originale è vera, quindi le TV saranno equivalenti. Anche in questo caso * non genera una TV “originale”. Il caso (4): se |V| > |F|, allora è preferibile considerare tutte le strutture in cui ricorrono delle F nella colonna principale della TV (queste sono le strutture n.3 e n. 4 nel seguente esempio). Tutte le lettere proposizionali che sono modificate da * avranno uno specifico valore di verità, indicato nella colonne iniziali della TV (le colonne 1, 2 e 3 nel seguente esempio). Per ciascuna struttura contenente una F nella colonna principale della TV si connettano tutte le lettere proposizionali con l’operatore logico ∧, assicurandosi di affermare tutte le lettere che hanno valore V e di negare tutte le
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
101
lettere che hanno valore F nelle colonne iniziali della TV. Infine, si connettano tutte le formule così ottenute attraverso il connettivo ∨, negando poi l’inera formula, come nel seguente esempio:
PQR
(P * Q) * R
P Q R
¬ (((P∧¬Q)∧R) ∨ (P∧¬Q)∧¬R))
VVV
V
V V V
V
F
VVF
V
V V F
V
F
VFV
F ((P ∧ ¬Q) ∧ R)
V F V
F
V
VFF
F (P ∧ ¬Q) ∧ ¬R) V F F
F
V
FVV
V
F V V
V
F
FVF
V
F V F
V
F
FFV
V
F F V
V
F
FFF
V
F F F
V
F
La risultante formula sarà sempre vera in tutte e solo quelle strutture in cui la formula originale è vera, quindi le TV saranno equivalenti. Anche in questo caso * non genera una TV “originale”. Si noti che questa strategia ci fornisce un modo più efficiente di trattare lunghe TV> Focalizzando l’attenzione sulle F-strutture invece che sulle Vstrutture prima costruiamo una fbf che è vera in tutti i casi in cui la formula originale è falsa, e poi la neghiamo, ottenendo il risultato voluto. Abbiamo dimostrato che in tutte le 5 possibili classi di TV, il connettivo *, qualsiasi esso sia, non genera nuove tipologie di TV che non sia riproducibili attraverso i connettivi del LCProp. Con questo abbiamo provato che l’ipotesi di partenza era incorretta, dimostrando il teorema.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
102
Generalizzazione del teorema di completezza vero-funzionale Il teorema appena dimostrato non è generale, ma riguarda la completezza verofunzionale di uno specifico insieme di vero-funtori binari Σ, cioè {¬, ∨, ∧, →, ↔}. È importante dimostrare che può essere generalizzato. Un insieme di vero-funtori binari Σ è vero-funzionale se e solo se Σ può esprimere tutte le 16 funzioni {ƒ1,..., ƒ16} vero-funzionali a 2-posti, cioè se e solo se l’insieme {Σ , φ , ψ } può generare tutte le colonne numerate nella seguente tavola di verità:
Operatori logici vero-funzionali binari ∨
Simboli
→
↔ ∧ ↑
↓
Funzioni ƒ1 ƒ 2 ƒ3 ƒ4 ƒ 5 ƒ 6 ƒ7 ƒ8 ƒ 9 ƒ10 ƒ11 ƒ 12 ƒ13 ƒ 14 ƒ15 ƒ 16 TT ϕ ψ 1
2
3
4
5
6
7
8
9 10 11 12 13 14 15 16
1
T T T T T T T T T T F
F
F
F
F
F
F
F
2
T F T T T T F F
F
F T
T
T
T
F
F
F
F
3
F T T T F F T T F
F T
T
F
F
T
T
F
F
4
F F T F T F T F T
F T
F
T
F
T
F
T
F
Abbiamo appena visto come dimostrare la completezza vero-funzionale dell’insieme 1. Σ = {¬, ∧, ∨, →, ↔} A partire da (1) è elementare dimostrare la completezza di 2. Σ = {¬, ∧, ∨, →} 3. Σ = {¬, ∧, ∨} Per dimostrare che 4. Σ = {¬, ∧} è completo, è sufficiente provare (3) e che qualsiasi formula [φ ∨ ψ ] è equivalente a ¬[¬φ ∧ ¬ψ]. Per dimostrare che 5. Σ = {¬, ∨} è completo è sufficiente provare (3) e che qualsiasi formula [φ ∧ ψ] è equivalente a ¬[¬φ ∨ ¬ψ]. Per provare che
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
103
6. Σ = {¬, →} completo è sufficiente provare (5) e che qualsiasi formula [φ ∨ ψ] è equivalente a [¬φ → ψ]. Per dimostrare che 7. Σ = {¬, ƒ3} è completo è sufficiente provare, ad esempio, (6) e che qualsiasi formula [φ → ψ] è equivalente a [¬φ ƒ3 ¬ψ] Per dimostrare che 8. Σ = {¬, ƒ12} 9. Σ = {¬, ƒ14} si segue la stessa procedura adottata per dimostrare (7). Quando Σ consiste di un solo membro, abbiamo solo due alternative, poiché •
ƒ1 e ƒ16 possono solo generare TV che consistono di tautologie e contraddizioni, e aggiungere la negazione non fa alcuna differenza,
•
ƒ4, ƒ6, ƒ10, ƒ11, ƒ13 e ƒ7 possono solo generare TV con un numero pari di V o F, quindi aggiungere la negazione non cambia il risultato,
•
ƒ3, ƒ12, ƒ14 così come la ƒ2, ƒ5 e ƒ8 possono generare TV con un numero dispari di Ve F ma necessitano della negazione per generare le altre funzioni
ne consegue che ƒ9 e ƒ15 (↑ and ↓) sono gli unici due funtori che possono generare T da F+F e F da T+T e quindi qualsiasi TV, senza dover ricorrere al simbolo della negazione. Quindi per dimostrare 10. Σ = {ƒ9} 11. Σ = {ƒ15} si segue la stessa procedura adottata per dimostrare (7) ovviamente evitando l’uso della negazione. Il risultato è che tutta la logica proposizionale può essere ridotta all’uso di un solo simbolo vero-funzionale: non-e [NAND, detto anche Sheffer stroke] oppure non-o [NOR, detto anche Peirce arrow]. La cosa non è affatto sorprendente se si ricorda che la negazione è incorporata in ciascun funtore. I due funtori in questione sono quelli più comunemente usati nella logica informatica, dove è utile – per ovvie ragioni di implementazione industriale – poter generare tutte le varie funzioni utilizzando un solo simbolo o “gate logico”. Passiamo ad analizzare questo concetto. Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
104
Il teorema di completezza vero-funzionale fa parte di una famiglia di teoremi importanti che riguardano la natura e i limiti della logical classica (metateoremi). Ecco qui una mappa:
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 Š Luciano Floridi
105
Logica Proposizionale e Logic Gates Le funzioni espresse dalle tavole di verità della logica proposizionale possano essere implementate attraverso la combinazione di circuiti elettrici. Un circuito elettrico è il corrispettivo fisico di un circuito logico, ed un circuito logico è un insieme (architettura) di logic gates. A ciascun operatore logico corrisponde un “logic gate” che modifica il flusso della corrente elettrica. Il valore 1 equivale alla presenza di corrente elettrica con voltaggio alto (high) e il valore 0 alla presenza di corrente con voltaggio basso (low). Vediamo qui di seguito come si possano rappresentare questi logic gates.
Invertitore (negazione)
L’invertitore implementa la più basilare funziona logica, quella della inversione o complementazione di un input. Esso inverte un valore nel suo opposto ed equivale semanticamente all’operatore logico della negazione. Da un punto di vista insiemistico, il diagramma di Venn (a destra) mostra come la negazione di A corrisponda al suo complemento. Si noti come nella notazione dei logic gates la negazione sia indicata con un trattino sopra il valore negato, cioè Ā = ¬A.
INPUT
OUTPUT
A
Ā
0
1
1
0
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
106
AND gate
L’ AND gate ha perlomeno due input e sempre un solo output. Esso opera come un moltiplicatore logico ed equivale semanticamente all’operatore logico della congiunzione. Da un punto di vista insiemistico, il diagramma di Venn (a destra) mostra come la congiunzione corrisponda all’intersezione dei due insiemi (settore in rosso).
INPUT
OUTPUT
A
B
X=A•B
0
0
0
0
1
0
1
0
0
1
1
1
OR gate
L’ OR gate ha perlomeno due input e sempre un solo output. Esso opera come un addizione logica ed equivale semanticamente all’operatore logico della disgiunzione. Da un punto di vista insiemistico, il diagramma di Venn (a destra) mostra come la disgiunzione corrisponda all’unione dei due insiemi (settore in rosso).
INPUT
OUTPUT
A
B
X=A+B
0
0
0
0
1
1
1
0
1
1
1
1
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
107
NAND Gate
Il NAND gate ha perlomeno due input e sempre un solo output. Esso equivale semanticamente all’operatore logico della negazione della congiunzione (NOT + AND). Abbiamo visto nelle precedenti lezioni che l’operatore logico NAND è una funzione universale, cioè può essere utilizzato da solo per esprimere tutte le combinazioni verofunzionali. Nella logica dei gates ciò significa che il NAND gate è una funzione universale: utilizzando diversi NAND gates si può costruire un invertitore, un AND gate, un OR gate e quindi qualsiasi altro gate si desideri. Ciò rende questo gate molto importante nella costruzione di circuiti logici.
INPUT
OUTPUT
A
B
X = AB
0
0
1
0
1
1
1
0
1
1
1
0
Le seguenti tavole mostrano come si possono costruire i vari gate a partire dal gate NAND e viceversa. Si noti come compaiono solo NAND gates assemblati tra loro:
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
108
NOR gate
Il NOR gate ha perlomeno due input e sempre un solo output. Esso equivale semanticamente all’operatore logico della negazione della disgiunzione (NOT + OR). Abbiamo visto nelle precedenti lezioni che l’operatore logico NOR è anch'esso una funzione universale, cioè può essere utilizzato da solo per esprimere tutte le combinazioni vero-funzionali. Nella logica dei gates ciò significa che anche il NOR gate è una funzione universale: utilizzando diversi NOR gates si può costruire un invertitore, un AND gate, un OR gate e quindi qualsiasi altro gate si desideri. Ciò rende anche questo gate molto importante nella costruzione di circuiti logici.
INPUT
OUTPUT
A
B
X=A+B
0
0
1
0
1
0
1
0
0
1
1
0
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
109
Exclusive-OR (XOR) e Exclusive NOR (XNOR), (a) e (b) gates Questi due gates sono costruiti attraverso la combinazione degli altri gates introdotti in precedenza (la figura sottostante mostra come costruire un XNOR gate). Data la loro importanza, tuttavia, essi sono di solito trattati come gates fondamentali, con i loro propri simboli. Come si può notare dalla tavola di verità, essi sono semanticamente equivalenti alla doppia implicazione (XNOR) e alla sua negazione (XOR).
INPUT
XOR OUTPUT
XNOR OUTPUT
A
B
X=A⊕B
X=A⊕B
0
0
0
1
0
1
1
0
1
0
1
0
1
1
0
1
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
110
Vediamo ora un esempio di circuito logico. Questa architettura rappresenta la funzione ƒ13 (si veda sopra la tavola degli operatori logici vero-funzionali binari), cioè F F T T o l’equivalente 0 0 1 1. A e B sono gli input dell’AND gate. Gli input dell’OR gate sono A e l’output dell’AND gate. Ecco la tavola di verità. INPUT
AND OUTPUT
OR OUTPUT
A
B
INPUT
X = ƒ13
0
0
0
0
0
1
0
0
1
0
0
1
1
1
1
1
La seguente tavola mostra alcune equivalente basilari.
Esercizio: costruire un logic gate semanticamente equivalente all’operatore logico dell’implicazione.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
111
Una possibile soluzione è nella seconda tavola sinottica successiva. Tavola sinottica dei logic gates
Sulla base dei circuiti logici diventa possibile utilizzare la logica Boolena per svolgere i calcoli aritmetici di base necessari al funzionamento di qualsiasi computer. In altre parole, i logic gates è il luogo dove la logica matematica incontra l’informatica. Ma questa è una storia che non seguiremo.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
112
Unità 10 Argomenti •
Il teorema di interpolazione
•
Il teorema di completezza
Il Teorema di interpolazione (interpolation theorem) Il teorema di interpolazione afferma che, se le seguenti 3 condizioni sono soddisfatte: 1. ϕ e ψ sono fbf, 2. ϕ |= ψ, 3. ϕ e ψ hanno perlomeno una formula atomica in comune allora esiste una terza formula χ con le seguenti 5 proprietà: 1. χ ≠ ϕ 2. χ ≠ ψ 3. χ contiene solo fbf atomiche che ricorrono sia in ϕ sia in ψ 4. ϕ |= χ 5. χ |= ψ χ è definita come l’interpolante. La dimostrazione si basa sul processo di costruzione dell’interpolante. Il processo è leggermente laborioso ma concettualmente semplice: 1. dato che deve essere il caso che ϕ |= χ, sappiamo che quando ϕ è vera allora anche χ deve essere vera. Otteniamo i valori di verità richiesti per χ applicando la stessa tecnica utilizzata per il teorema di completezza vero-funzionale. 2. dato che deve essere il caso che χ |= ψ, sappiamo che quando ψ è falsa χ non può essere vera, ma deve essere anch'essa falsa. Anche in questo caso otteniamo i valori di verità richiesti per χ applicando la stessa tecnica utilizzata per il teorema di completezza vero-funzionale. 3. per il resto dei valori di χ, è ovvio che è del tutto indifferente quale scelta operiamo. Per convenzione si può stabilire di indicare un valore di verità positivo. Il metodo precedente è quello adottato da Hodges. Esiste tuttavia un metodo più semplice e diretto per generare la formula χ:
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
113
•
dato che deve essere il caso che ϕ |= χ, sappiamo che quando ϕ è vera allora anche χ deve essere vera. In questo caso eseguire l’operazione (1) come sopra. Per il resto dei valori di χ, assegnare sempre un valore di verità negativo.
Oppure: •
dato che deve essere il caso che χ |= ψ, sappiamo che quando ψ è falsa χ non può essere vera, ma deve essere anch’essa falsa. In questo caso eseguire l’operazione (2) come sopra. Per il resto dei valori di χ, assegnare sempre un valore di verità positivo.
Il seguente esempio mostra come costruire l’interpolante nel modo standard, seguito da Hodges.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
114
ϕ
ψ
|=
PQR P V V V V V V V V F F F F F F F F
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
Q V V V V F F F F V V V V F F F F
R V V F F V V F F V V F F V V F F
S [¬[P ∨ Q] ∧ [P ↔ R]] V F F F V F F F V F F F V F F F V F F F V F F F V F F F V V F V
QRS |=
[[ R→ Q] ∧ ¬ [S ∧ R]] F V V V F F V V F V V V F F V V
La tavola di verità (TV) sopra (B) è la TV di espansione della TV sotto (A). QR =χ
1 2 3 4
Q V V F F
R V F V F
[Q ∧ ¬ R] ∨ [¬ Q ∧ ¬ R] F V F V
[¬ Q ∧ ¬ R] [Q ∧ ¬ R] [Q ∧ ¬ R] [¬ Q ∧ ¬ R]
Ne consegue che χ = [Q ∧ ¬ R] ∨ [¬ Q ∧ ¬ R] o più semplicemente χ = ¬ R.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
115
Il Teorema di completezza Il teorema dimostra che il calcolo proposizionale è completo nel senso che tutto ciò che può essere dimostrato semanticamente – attraverso le tavole di verità – è anche dimostrabile sintatticamente – attraverso il sistema dei tableaux – e viceversa. Il teorema è ben spiegato in Hodges, quindi qui di seguito si fornisce solo la traccia della dimostrazione. La tesi del teorema può essere rappresentata in modo sintetico utilizzando i simboli del calcolo proposizionale in modo non ortodosso così: 1. (Γ |= ϕ) ↔ (Γ|- ϕ) dato che 2. |= ϕ ↔ Γ, ¬ ϕ |= (cioè le due formule sono logicamente equivalenti) e che 3. |= ϕ ↔ Γ, ¬ ϕ |= da 2 e 3 segue che la 1 può essere riformulata così 4. Γ, ¬ ϕ |= ↔ Γ, ¬ ϕ |ma dato che in entrambe le formule l’insieme Γ è un qualsiasi insieme, possiamo includere ¬ ϕ in Γ, e riformulare la 4 così 5. Γ|= ↔ Γ |il passo successivo consiste nel dividere la 5 nelle sue due formule costitutive 5.1. Γ|= → Γ |5.2. Γ|- → Γ |= e dimostrare sia la 5.1 sia la 5.2. In entrambe le parti della dimostrazione A e B si procede dimostrando che la negazione della formula porta ad una contraddizione (prova per assurdo). A) Immaginiamo che non sia il caso che Γ |= → Γ |-, cioè 6. ¬ (Γ |= → Γ |-) ciò significa al contempo che 6.1. Γ |= cioè Γ è semanticamente inconsistente, e
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
116
6.2. ¬(Γ |-), cioè Γ è sintatticamente consistente dalla 6.2 segue che Γ genera un tableau completo, finito, necessariamente aperto, in simboli possiamo scrivere: 7. A(TΓ) dalla 7 segue che esiste almeno un ramo R di TΓ in cui nessuna formula atomica ϕ è contraddetta. Utilizzando il simbolo ∀ per indicare “tutte”, possiamo scrivere 8. ∀ϕ ((ϕ ∈ ( RΓT ) ∧ A ( RΓT ) ) → ¬ (¬ϕ ∈ ( RΓT ) )
dalla 8 segue che possiamo raccogliere tutte le ϕ e attribuire a ciascuna di esse un valore di verità positivo, in simboli 9. ∀ϕ V(ϕ ) dalla 9 segue che esiste una situazione (un mondo possibile) cioè una struttura in una tavola di verità tale che tutte le formule atomiche di Γ sono vere in quella struttura. Ma questo significa che Γ non è semanticamente inconsistente (non è vero che non esiste un mondo possibile in cui tutte le formule atomiche in Γ sono vere). Abbiamo dimostrato la 5.1 B) Immaginiamo ora che non sia il caso che Γ |- → Γ |=, cioè 10. ¬ (Γ |- → Γ |=) la prova procede secondo linee simili ad (A) la 10 significa al contempo che 10.1.
Γ |- cioè Γ è sintatticamente inconsistente, e
10.2.
¬(Γ |= ), cioè Γ è semanticamente consistente
dalla 10.2 segue che Γ genera una tavola di verità in cui esiste almeno una struttura in cui tutte le formule atomiche ϕ di Γ sono vere. Identifichiamo questa struttura nel tableau generato da Γ. Essa corrisponderà ad un ramo del tableau. Siccome tutte le ϕ nella struttura sono vere, il ramo equivalente non potrà contenere l’affermazione e la negazione delle stesse formule atomiche, cioè sarà aperto. Ma se il ramo è aperto, allora il tableau stesso è aperto. Ma questo contraddice il fatto che Γ sia sintatticamente inconsistente. Dunque anche in questo caso la prova per assurdo dimostra che non è possibile negare 5.2. Avendo dimostrato sia la 5.1 sia la 5.2 abbiamo dimostrato 5, e siccome 5 è logicamente equivalente a 1, abbiamo dimostrato 1.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
117
Introduzione alla logica matematica Quarta parte Il calcolo dei predicati
To create a good philosophy you should renounce metaphysics but be a good mathematician. Bertrand Russell
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 Š Luciano Floridi
118
Unità 11
Argomenti •
Il linguaggio del calcolo dei predicati
Abbiamo bisogno di un linguaggio più ricco espressivamente perché certe argomentazioni e inferenze si basano sulle relazioni logiche intercorrenti tra (insiemi di) individui e tra le loro proprietà. Il calcolo proposizionale ha una granularità meno fine (un livello di astrazione più alto) perché tratta delle relazioni inferenziali tra (classi di) intere proposizioni, e non tra le loro componenti. Utilizzando una metafora, ci serve un microscopio attraverso il quale poter osservare più da vicino le proposizioni in questione e vedere come le relazioni che intercorrono tra loro non siano tanto al livello di blocco proposizionale, ma di componenti del blocco. Esempio: La macchina di Alessia è bianca, Michelangelo guida la machina di Alessia, perciò Michelangelo guida una macchina bianca. Anche intuitivamente, l’inferenza è valida, ma nel LCProp la sua traduzione sarebbe: P, Q |= R e chiaramente questo sequente non fornisce il livello di analisi necessario per mettere in evidenza e valutare la validità dell’inferenza. Dobbiamo quindi espandere il nostro linguaggio. Oltre a tutto il LCProp avremo in più un vocabolario che include: Vocabolario: variabili e costanti
I nostri individui, {a, b, c,..., n}, oppure {a1,..., an}, corrispondono a Mimmo, Sabina, Marialuisa, Rosaria, etc. Le nostre variabili {x, y, ...z} oppure {x1,... xn} corrispondono ai nostri pronomi, e ci permettono di generalizzare quello che stiamo dicendo (sono come le ϕ e le ψ che usiamo per parlare delle P e delle Q).
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
119
Vocabolario: proprietà e relazioni
Si indicano con le lettere maiuscole {F, G, ...} da non confondere con le lettere maiuscole usate per le proposizioni {P, Q,...} (notare che si parte di solito dalla lettera F, per convenzione). La macchina è bianca, si può tradurre così: F(a). Con F stiamo predicando la “bianchezza” di a. Una relazione lega tra loro perlomeno 2 individui, così: R(a,b). Su questo torneremo più giù. Al momento è sufficiente sapere che la formula significa che stiamo relazionando a con b attraverso R. Una relazione è almeno binaria, mentre le proprietà (gli attributi, le qualità i predicati) possono qualificare una sola costante o variabile. Per unificare il nostro vocabolario diremo che le relazioni possono essere a n-posti, unarie (le chiamiamo in questo caso proprietà o qualità o predicati), binarie, ternarie o più generalmente n-arie. Una relazione si qualifica quindi per la sua “arietà”. Una qualità come “essere dolce” è una relazione la cui arietà = 1. Caso speciale di relazione è l’identità, che viene simboleggiata con =. Se si scrive a = b ciò significa che a e b sono assolutamente e completamente identiche. Come direbbe Leibniz, non sono discernibili. Vocabolario: quantificatori (altri due operatori logici)
Per esprimere precisamente quanti individui soddisfano una certa relazione o proprietà abbiamo bisogno di due operatori logici in più, oltre i connettivi. ∃xFx questo è il quantificatore esistenziale (il simbolo è una E rovesciata per
“Exists”), significa che c’é almeno una x tale che x è F. ∀xFx questo è il quantificatore universale (il simbolo è una A rovesciata per “All”),
significa che tutte le x sono F. Scopo (scope) di un quantificatore:
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
120
Abbiamo visto in precedenza che lo scopo di un operatore logico è la minima stringa di simboli il cui significato è modificato dalla presenza dell’operatore logico. Ad esempio, nella formula ∃x ∀ y (x = y ↔ Fy), lo scopo di “↔” sono le due formule "x = y" e "Fy"; lo scopo di "∀ y" è tutta la formula (x = y ↔ Fy), si noti la presenza delle parentesi; e lo scopo di ∃x è tutta la formula “∀ y (x = y ↔ Fy)". Se il quantificatore esistenziale fosse negato, allora la negazione avrebbe lo scopo più ampio. Nuove regole sintattiche
Oltre alle regole sintattiche del LCProp abbiamo le regole che governano le formule quantificate (la loro specificazione è solo una questione di dettagli). Ma soprattutto abbiamo Nuove regole di derivazione
Nel CPred ci sono formule complesse che includo i quantificatori e l’uso dell’identità. Le regole di derivazione del Cpred ∃x Fx ∀x Fx | | Passi liberi (nonFa Fa cartesiani), vedi sotto. Purché a non appaia già Purché a appaia già nel nel tableaux Tableaux
¬∃x Fx | ∀x ¬Fx a=b | Fa | Fb
¬∀x Fx | ∃x¬Fx
Passi cartesiani (nessuna scelta), vedi sotto.
Legge di Leibniz, Passo libero (non indiscernibilità degli cartesiano), vedi sotto. identici o identità degli indiscernibili.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
121
Perlomeno n ed esattamente n
Il quantificatore esistenziale dice esclusivamente che esiste perlomeno un membro del dominio che soddisfa la proprietà in questione, diciamo Fa. Per dire che esistono perlomeno 2 membri che soddisfano F, è necessario utilizzare due variabili quantificate esistenzialmente e indicare esplicitamente che sono diverese. Ad esempio: ∃x ∃y [[Fx ∧ Fy] ∧ x ≠ y]
Si noti che la differenza tra x e y si può esprime in modo del tutto equivalente anche attraverso la negazione: ¬ [x = y] oppure [¬x = y] Per n membri, si dovrà ripetere la stessa operazione per n variabili quantificate e distinte. Per esprimere l’idea che esiste uno e un solo membro che soddisfa una proprietà, è necessario utilizzare entrambi i quantificatori. L’unicità si esprime infatti indicando che esiste perlomeno una x che soddisfa la proprietà in questione e che qualsiasi altra y che dovesse soddisfare la stessa proprietà sarebbe in realtà (identica a) x. Ad esempio: ∃x (Fx ∧ ∀y (Fy → x = y)
Lo stesso concetto si può esprimere (in modo molto meno trasparente ma più economico) così: ∃x∀ y [Fy ↔ y = x]
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
122
Una strategia euristica per risolvere tableaux (alberi sintattici)nel calcolo dei predicati della logica classica di primo ordine con identità (CPred).
Assumiamo che:
1. Un tableau (T) in CPred consiste di un insieme (possibilmente infinito) Γ di formule, organizzate in un controesempio (tutte le premesse + la negazione della conclusione presenti nel sequente originale) e un albero di derivazione, costituito da un numero (possibilmente infinito) di righe (linee orizzontali), ciascuna rappresentante un livello della diramazione di T, e un numero (possibilmente infinito) di linee verticali (dette rami), ciascuna rappresentante un mondo possibile (nella logica proposizionale i rami sono la controparte sintattica delle strutture semantiche nelle corrispondenti tavole i verità). Ciascun livello di ramificazione n (per n ≥ 2) è ottenuto da uno o più livello n-m di Γ (per m < n) applicando le regole di derivazione di CPred. 2. Il dominio su cui operano i quantificatori potrebbe essere vuoto. 3. I quantificatori esistenziali possono essere eliminati soltanto attraverso l’istanziazione di nuove costanti, cioè costanti che non appaiono già in Γ o nei Trami sotto esame. 4. I quantificatore universali possono essere eliminate solo attraverso l’istanziazione di vecchie costanti, cioè costanti che appaiono già in Γ oppure nel T-ramo sotto esame. 5. Nel cercare una possibile contraddizione, è possibile ripetere l’eliminazione di un quantificatore universale attraverso l’istanziazione di un’altra variabile già apparsa in Γ or nel T-ramo sotto osservazione. Se adottiamo le seguenti definizioni:
i) Ogni applicazione di una regola di derivazione al livello n-m, insieme all’output della sua applicazione =def. un passo nella costruzione di T al livello n. ii) L’applicazione di tutte le regole di derivazione che governano l’eliminazione dei connettivi logici e del quantificatore esistenziale =def. un passo cartesiano.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
123
Un “passo cartesiano” (si vedano le Meditazioni IV, 57-58 per l’analisi offerta da Descartes della “razionalità vincolata”) è un qualsiasi passo il cui output è predeterminato (non può essere altrimenti) dalla semplice applicazione meccanica della regola di derivazione, lasciando nessuna scelta tattica oltre alla semplice applicazione della regola o, in alcuni casi, la mera scelta di una nuova costante. Come sempre, i passi cartesiani possono essere lineari o ramificanti. iii) Tutte le regole di derivazione che governano l’eliminazione del quantificatore universale e la manipolazione algebrica delle identità secondo la legge di Leibniz e attraverso il simbolo di identità (=) =def. passi liberi (non-cartesiani). I passi liberi richiedono sempre delle scelte tattiche. Date le precedenti definizioni, i passi liberi sono sempre lineari. iv) Le formule che richiedono un passo cartesiano per essere analizzate =def..formule cartesiane. v) Le formule che richiedono un passo libero o non-cartesiano per essere analizzate =def. formule libere. Allora possiamo dividere ulteriormente le formule libere in questo modo:
Supponiamo che una formula φ non può essere analizzata a meno che non si applichi un passo libero. Possono esserci due casi: 1. nessuna formula output ψ , generate dalla completa analisi di φ, è cartesiana. 2. almeno una ψ è una formula cartesiana. Se (1) è il caso, allora diremo che φ è una formula 0 PC, e scriveremo φPC0. Se (2) è il caso, allora diremo che φ è una formula n PC, dove n indica il numero di passi richiesti dall’analisi di φ per raggiungere la prima formula cartesiana incapsulata in φ, e scriveremo φPCn. A questo punto, una possibile strategia euristica per risolvere un qualsiasi tableau T consiste nello strutturare Γ nel seguente modo:
si considerino tutte le formule in Γ a) il livello 1 conterrà la classe delle formule cartesiane lineari b) il livello 2 conterrà la classe delle formule cartesiane ramificanti
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
124
c) il livello m-1 (m ≥ 3) conterrà la classe delle formule libere il cui PC = m-3 d) il livello m conterrà la classe di tutte le formule libere il cui PC = 0 Si noti che stiamo assumendo che le formule potrebbero essere infinitamente lunghe. Le mosse tattiche (1) e (2) sono cartesiane: la loro applicazione e il loro risultato sono inevitabili. Le mosse tattiche (3)-(5) richiedono, affinché la loro applicazione abbia successo nel generare un tableau chiuso, intelligenza, esperienza e a volte un po’ di buona fortuna. In generale, è più sicuro ritardare la loro applicazione il più a lungo possibile, aspettando che i vari rami siano stati spogliati (potati) di almeno parte della loro complessità. Dunque, come regola generale, un passo libero non dovrebbe mai essere fatto prima di un passo cartesiano lineare. Tuttavia, a seconda della complessità del controesempio, un passo libero potrebbe dover essere preso prima i un passo cartesiano ramificante, se il suo output al livello successivo è poi soggetto ad un passo cartesiano oppure è soggetto ad un passo cartesiano ramificante che si chiude, almeno in parte, subito dopo.
L’idea che guida la strategia
Nel risolvere un tableau in CPred vogliamo evitare di restare invischiati in scelte arbitrarie tanto quanto possibile. Poiché i passi liberi possono essere fatti appunto liberamente, visto che richiedono una scelta arbitraria di costanti (nel caso dell’eliminazione del quantificatore universale) oppure una manipolazione arbitraria di identità, più a lungo riusciremo ad evitarli, più sarà probabile che le possibili contraddizioni presenti implicitamente a diversi livelli di ramificazione diventino palesi, una volta che poche semplici istanziazioni (eliminazione del quantificatore universale) e alcune trasformazioni tra identità (se ce ne sono) saranno state effettuate alla fine dell’analisi. La natura “Cartesiana” dell’eliminazione dei connettivi verofunzionali e del quantificatore esistenziale ci ricorda che ogni passo preso in questa Direzione è
pienamente
determinato
dal controesempio,
resta lo
stesso,
indipendentemente a come il tableau sarà risolto, e può essere descritto come “strategy-independent”.
D’altra
parte,
la
ripetibilità
dell’eliminazione
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
125
del
quantificatore universale assicura che, sebbene operare come stabilito dalla presente strategia euristica possa generare un tableau meno elegante ed economico, essa ci fornisce certamente un metodo per mettere in luce le potenziali contraddizioni nascoste in Γ più valido di altre strategie meno “meccaniche”. Per finire con un esempio, un software di logica come “Twootie”, che sembra non implementare la strategia appena descritta, ha meno chance di provare un teorema del CPred anche non molto complesso di uno studente alle prime armi che segua i consigli forniti sopra.
Vediamo un esempio.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
126
Esempio di Tableau nel CPRed (Exercise 9.02 da Tableau II)
Teorema: ∃x ∀ y (x = y ↔ Fy), ∃x ¬ (Gx → ∀y (Gy → x = y)) |- ∃x ¬ (Gx → Fx) 1. ∃x ∀y (x = y ↔ Fy) 2. ∃x ¬ (Gx → ∀y (Gy → x = y)) Controesempio 3. ¬ ∃x ¬ (Gx → Fx) ∀x ¬ ¬ (Gx → Fx) PC* da 3 | 5. ¬ (Ga → ∀y (Gy → a = y)) PC da 2 | 6. Ga PC da 5 ¬ ∀y (Gy → a = y) | 7. ∃y ¬ (Gy → a = y) PC da 2a ½ 6 | 8. ¬ (Gb → a = b) PC da 7 | 9. Gb PC da 8 ¬a=b | 10. ∀ y (c = y ↔ Fy) PC da 1 | 11. ¬ ¬ (Gb → Fb) PL** da 4 | 12. (Gb → Fb) PC da 11 ________|________ 13. ¬ Gb Fb PC da 12 | 14. c = b ↔ Fb PL da 10 _____________|___________ 15. c = b ¬c=b PC da 14 Fb ¬ Fb | 16. c = a ↔ Fa PL da 10 ____|_____________________________________ 17. c = a ¬ c = a PC da 16 ¬ Fa Fa | | 18. a = b LL*** da 1a ½ 15 + 1a ½ 17 ¬ ¬ (Ga → Fa) PL da 4 | | a 19. a = ¬ a LL da 2 ½ 9+18 (Ga → Fa) PC da 18 ______|______ 20. ¬ Ga Fa PC da 19
4.
PC* = Passo Cartesiano PL** = Passo Libero (non-Cartesiano) LL*** = Legge di Leibniz
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
127
Unità 12
Sommario Ancora sui tableaux per il Cpred: un nuovo esempio Esempio di tableaux per CPred (preso da Final Public Examination for PPE […] Oxford University Thur. 16 Sept. 1996) Teorema ∀x ¬ Rxx, ∀x ∀ y ∀z [[Rxy ∧ Ryz] → Rxz], ∀x ∀y [¬ x = y → [Rxy ∨ Ryx]], ∃x ∃y ∀u [u = x ∨ u = y] |- ∃x ∀ y [Ryx ∨ x = y] Giallo = controesempio 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18.
∀x ¬ Rxx premessa ∀x ∀y ∀z [[Rxy ∧ Ryz] → Rxz] premessa ∀x ∀y [¬ x = y → [Rxy ∨ Ryx]] premessa ∃x ∃y ∀u [u = x ∨ u = y] premessa ¬ ∃x ∀y [Ryx ∨ x = y] negazione della conclusione | ∃y ∀u [u = a ∨ u = y] {4} PC , con a = nuova cost. | ∀u [u = a ∨ u = b] {6} PC , con b = nuova cost. | ∀x ¬ ∀y [Ryx ∨ x = y] {5} PC | ¬ ∀y [Ryb ∨ b = y] {8} PL, per liberare il ∃ | ∃y ¬ [Ryb ∨ b = y] {9} PC | ¬ [Rcb ∨ b = c] {10} PC, con c = nuova cost. | ¬ Rcb {11} PC ¬b=c | [c = a ∨ c = b] {7} PL ______|_____________________________________________ c = a {13} PC c = b {13} PC | | ∀ y ∀z [[Ray ∧ Ryz] → Raz] {2} PL ¬ b = b {12.2a½+14.2a½} | ∀z [[Rab ∧ Rbz] → Raz] {15} PL | [Rab ∧ Rba] → Raa] {16} PL ______|_____________________________________________ ¬ [Rab ∧ Rba] {17} PC Raa{17} PC
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
128
| | ¬ Raa {1+19} | | ____ _|_____________________________________________ ¬ Rab {18} PC ¬ Rba {18} PC 19. | | ∀y [¬ c = y → [Rcy ∨ Ryc]]{3} PL 20. ∀y [¬ x = b → [Rxb ∨ Rbx]] {3} PL | | [¬ a = b → [Rab ∨ Rba]] {20} PL [¬ c = b → [Rcb ∨ Rbc]]{20} PL 21. ________|___________________ _____________________|_______ [Rab ∨ Rba]{21} ¬¬ c = b{21}PC [Rcb∨Rbc]{21}PC 22. ¬¬ a = b{21} | ________|_________ | __________|_______ 23.
a = b{22}PC
Rab{22+19}PC
Rba{22}PC
c = b{22}PC
Rcb{22+12}PC
Rbc{22}PC
| | | | 24. c = b{14+23}PC ∀x ¬ ∀y [Ryx ∨ x = y]{8}PC ¬ b = c{12} Rba {14+19+23} | | | ¬ b = b{23+24} 25. ¬ b = b{12+24} ¬ ∀y [Rya ∨ a = y]{24} | ∃ y ¬ [Rya ∨ a = y]{25}PC 26. | ¬ [Rda ∨ a = d]{26} d = nuova cost. 27. | ¬ Rda {27} PC 28. ¬a=d | ∀u [u = a ∨ u = b]{7}(ripetizione) 29. | [d = a ∨ d = b]{29} 30. _______________|_____________________ d = a {30}PC d = b{30}PC 31. | | ¬ a = a {28+32} ¬ Rba {19+23+31} 32. Commento:
L’esercizio descrive una relazione irriflessiva, transitiva, connessa, in un dominio che contiene perlomeno due elementi. Il teorema, corretto, stabilisce che date quelle premesse, deve esserci almeno un elemento nel dominio tale che ogni altro elemento è relazionato ad esso oppure è identico ad esso. Un possibile modello del teorema è rappresentato dalla seguente interpretazione: D = {Giovanni, Mario} e R = “x il padre di y”. Il nuovo esercizio introduce quindi due nuove aree di studio: la teoria delle relazione e la teoria dei modelli.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
129
Tipi di relazione binarie: una descrizione logica
Per comprendere il concetto di relazione è necessario fare riferimento ad alcune nozioni base di teoria degli insiemi (insiemistica). Si vedano gli appunti per la parte introduttiva del corso. Possiamo ora definire una relazione R come una proprietà o predicato che identifica uno o più insiemi di elementi. R può essere soddisfatta da, o predicata correttamente di, o essere vera di n elementi, ad esempio: 2 è un numero più piccolo di 5. R può avere n posti (n-places), a seconda di quanti elementi sono necessari per soddisfarla. Ad esempio “... è a metà strada tra ... e ...” è una relazione a 3-posti. Le relazioni più importanti sono le relazioni a due posti, dette anche binarie. Si noti che, siccome le relazioni a tre-posti sono dette ternarie, quelle a quattro quaternarie e così via, si parla anche della “arietà” di una relazione quando si vuole indicare il numero di elementi necessari per soddisfarla, cioè il valore di n in “n-posti”. Ad esempio “è il padre di” è una relazione con arietà = 2. Una proprietà di un elemento (ad esempio, la mela [= a] è rossa [= R]) può essere modellata come una relazione a 1-posto, o unaria (Ra). In altre parole, il concetto di relazione è più forte del (cioè: ci permette di definire nei suoi termini il) concetto di proprietà o qualità. Una relazione binaria o a 2-posti è una relazione tra elementi di un insieme A e gli elementi di un altro insieme B (che può essere identico ad A), che può essere soddisfatta, ad esempio, “2 è un numero più piccolo di 5” (stesso insieme, oppure insieme dei numeri pari e insieme dei numeri dispari), oppure “la città x è la capitale della nazione y” (due insiemi, uno costituito da capitali e l’altro costituito da nazioni). In altre parole, dati due insiemi A e B, una relazione binaria tra A e B connette elementi di A con elementi di B. Una relazione tra due insiemi A e B è anche detta una relazione su (on) A × B, e A × B è detto il prodotto cartesiano dei due insiemi. Ad esempio, se A = {0,1} e B = {1,2,3}, allora A × B = {<0,1>, <0,2>, <0,3>, <1,1>, <1,2>, <1,3>}. Ovviamente, se A = B allora avremo una relazione su A × A, ad esempio essere minore di, simboleggiato da “<” è una relazione sui numeri naturali.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
130
Se R è una relazione su A × B, allora A è detto il dominio di R e B il codominio di R. Se R è una relazione su A × A, allora A è l’insieme che sottoscrive (underlying set) R. Una relazione R è nulla o vuota se nessun elemento dell’insieme soddisfa R. Ad esempio, “è il padre di” in un insieme costituito esclusivamente da donne. Si scrive in questo caso R = {} oppure ¬ ∃x ∃ y (Rxy). Una relazione non-vuota o non-nulla viene indicata così R ≠ {} oppure così ∃x ∃y (Rxy), dove x e y possono fare riferimento allo stesso individuo. Riassumendo
Dominio Codominio Prodotto cartesiano
A B AxB
Dominio vuoto/nullo
D = {} or ¬ ∃ x (x = x)
Esempio: A = {0,1} Esempio: B = {1,2,3} {<0,1>, <0,2>, <0,3>, <1,1>, <1,2>, <1,3>}.
Dominio non-vuoto/non-nullo D ≠ {} or ∃ x (x = x) Relazione vuota/nulla R = {} oppure ¬ ∃x ∃y (Rxy) Relazione non-vuoto/non-nulla R ≠ {} oppure così ∃x ∃y (Rxy), dove x e y possono fare riferimento allo stesso individuo Le relazioni possono essere rappresentate graficamente in vari modi: •
notazione infissa (infix notation), che è in linea con altre forme di annotazione in matematica, ad esempio aRb
•
notazione postfissa (postfix notation), ad esempio abR
•
notazione prefissa (prefix notation) con parentesi, ad esempio R(a,b). Questa è quella utilizzata più comunemente in logica.
Per indicare quale modello soddisfa una relazione, si utilizza la notazione già incontrata per il prodotto cartesiano. Ad esempio, se D = {1,2,3}, allora se una relazione è riflessiva, significa che ogni elemento nel dominio è relato a se stesso da R, cioè ∀x (Rxx), questo si indica anche elencando tutti gli elementi e mostrando che ciascuno è R-relato a se stesso: R = {<1,1>, <2,2>, <3,3>} Le relazioni binarie possono avere molte proprietà. Le più comuni sono elencate qui di seguito.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
131
Riflessiva ∀x [Rxx]
Esempio R = {<1,1>, <2,2>, <3,3>} se D = {1,2,3} In italiano: Ogni elemento è identico a se stesso. Irriflessiva ∀x ¬ [Rxx]
Esempio: R = {<1,2>}, se D = {1,2} In italiano: nessun elemento è diverso da se stesso. Non-riflessiva ¬ ∀x [Rxx] ∧ ¬ ∀x ¬ [Rxx] oppure ∃x [Rxx] ∧ ∃x ¬ [Rxx]
Esempio R = {<1,1>, <2,2>} se D = {1,2,3}. Notare l’assenza di <3,3> In italiano: solo alcune persone amano se stesse. Simmetrica ∀x ∀y [Rxy → Ryx]
Esempio R = {<1,2>, <2,1>} se D = {1,2} In italiano: Mario e Laura hanno la stessa età. Asimmetrica ∀x ∀y [Rxy → ¬ Ryx] (detta a volte anche Antisimmetrica)
Esempio R = {<1,2>} se D = {1,2} Giovanni è più anziano di Stefania. Anti-simmetrica ∀x ∀y [Rxy ∧ Ryx] → x = y]
Non-simmetrica ¬ ∀x ∀ y [Rxy → Ryx] ∧ ¬ ∀x ∀ y [Rxy → ¬ Ryx]
Esempio R = {<1,2>, <2,1>, <1,3>} se D = {1,2,3}, notare l’assenza di <3,1> In italiano: Giovanni è innamorato di Laura e Laura è innamorata di Giovanni mentre Marco è innamorato di Stefania ma Stefania non lo conosce neppure.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
132
Transitiva ∀x ∀y ∀z [[Rxy ∧ Ryz] → Rxz]
Esempio R = {<1,2>, <2,3>, <1,3>} se D = {1,2,3} In italiano: 7 è più grande di 5, 5 è più grande di 3, perciò 7 è più grande di 3 Intransitiva ∀x ∀y ∀z [[Rxy ∧ Ryz] → ¬ Rxz]]
Esempio R = {<1,2>, <2,3>} se D = {1,2,3}, notare l’assenza di <1,3> In italiano: Giovanni è il padre di Paolo, Paolo è il padre di Maria, ma Giovanni non è il padre di Maria Non-transitiva ¬∀x∀ y∀z[[Rxy∧Ryz]→Rxz] ∧ ¬∀x∀y∀z[[Rxy∧ Ryz]→¬Rxz]
Esempio R = {<1,2>, <2,3>, <1,3>, <3,1>} se D = {1,2,3}, notare l’assenza di <1,1> (che dovrebbe seguire da <1,3>, <3,1>), <3,3> (che dovrebbe seguire da <3,1>, <1,3>), e <2,1> (che dovrebbe seguire da <2,3>, <3,1>) In italiano: Paolo è amico di Luca, Luca è amico di Maria, ma Paolo può essere o non essere amico di Maria. Connessa ∀x ∀y [x ≠ y → [Rxy ∨ Ryx]]
Esempio: R = {<1,2>, <3,2>, <1,3>} In italiano: •
Un network telefonico in cui ogni telefono può comunicare con ogni altro telefono in entrambi le direzioni è fortemente connesso (strongly connected): non solo R è connessa ma è anche simmetrica.
•
Un network telefonico in cui alcuni telefoni possono solo ricevere da tutti gli altri telefoni ma non chiamare tutti gli altri telefoni è semplicemente connesso (simply connected) in quanto R è non-simmetrica.
•
Un network telefonico in cui almeno un telefono non può comunicare con almeno un altro telefono non è connesso, in quanto non è vero che, presi due telefoni
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
133
qualsiasi, ci sarà sempre la possibilità di comunicare tra di essi almeno in una direzione. Due importanti combinazioni di proprietà sono: Equivalenza Qualsiasi relazione R che sia riflessiva simmetrica e transitiva. Esempio R = {<1,1>, <2,2>, <3,3>, <1,2>, <2,1>, <1,3>, <3,1>, <2,3>, <3,2>} se D = {1,2,3} Ordine parziale Qualsiasi relazione R che sia riflessiva, anti-simmetrica e transitiva. Ad esempio x ≤ y Ecco la tavola delle proprietà principali delle relazioni binarie. 0 significa che la relazione non sussiste. 1 significa che la relazione sussiste. 0/1 significa che la relazione può sussistere o meno a seconda dei casi. Tutte le relazioni che hanno la proprietà non-... (terza colonna) sono ovviamente proprietà 0/1
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
134
Riflessiva (avere lo stesso nome di) a bc a 1 b 1 c 1
Irriflessiva (avere un nome diverso da) a bc a 0 b 0 c 0
Non-riflessiva (amare se stessi) A b c a 0/1 b 0/1 c 0/1
Simmetrica (avere la stessa età di = 1) (avere diversi genitori = 0) a b c a 0/1 b 0/1 c 0/1
Asimmetrica (essere più anziano di)
Non-simmetrica (essere il fratello di) (stimare) A b c a 0/1 b 0/1 c 0/1
Transitiva (essere più alto di = 0) (essere alto quanto = 1) a b c a 0/1 b 0/1 c 0/1
Intransitiva (essere la madre di)
a bc a 0 b 0 c 0
a bc a 0 b 0 c 0
Non-transitiva (essere amico di) A b c a 0/1 b 0/1 c 0/1
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
135
Unità 13
Argomenti •
Ancora su alcuni elementi di teoria delle relazioni
•
Dimostrazioni e teoria dei modelli
Oltre all’equivalenza e all’ordine parziale, esistono moltissime altre combinazioni di proprietà delle relazioni. La seguente tavola mostra quali combinazioni di tipi di relazioni sono possibili a seconda che il dominio sia vuoto (colonna 2), non sia vuoto ma la relazione sia vuota (colonna 3), né il dominio né relazione siano vuoti (colonna 4). La colonna 1 deve essere interpretata secondo la seguente tavola: Riflessiva Si A No B Dipende (a volte si a volte no) C
Simmetrica A B C
Transitiva A B C
Ad esempio: nella prima riga, ABC significa che la relazione è riflessiva (A nella prima posizione), simmetrica (B nella seconda posizione) e non-transitiva (C nella terza posizione). La colonna 5 indica il genere di dominio necessario e sufficiente, la colonna 6 esplicita la natura della relazione nella notazione estensionale.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
136
1
ABC ACB BCA CAB CBA CBB CBC CCB BAA AAB ABA ABB CAA ACA ACC BAC AAC BBC BCC BCB CAC CCA CCC AAA BAB BBA BBB
2 D = {} NO NO NO NO NO NO NO NO SI SI SI SI NO NO NO NO NO NO NO NO NO NO NO SI SI SI SI
3 D ≠ {} R = {} NO NO NO NO NO NO NO NO SI NO NO NO NO NO NO NO NO NO NO NO NO NO NO NO SI SI SI
4 D ≠ {} R ≠ {} NO NO NO NO NO NO NO NO NO NO NO NO SI SI SI SI SI SI SI SI SI SI SI SI SI SI SI
5 D
6 R
{a,b} {a,b} {a,b,c} {a,b,c} {a,b,c} {a,b,c,d} {a,b,c} {a,b,c} {a,b} {a,b} {a,b} {a} {a,b} {a,b,c} {a,b}
{<aa>} {<aa>, <ab>, <bb>} {<aa>, <ab>, <bb>, <bc>, <cc>} {<ab>, <ba>, <bc>, <cb>, <ac>, <ca>} {<ab>, <ba>, <bc>, <cb>, <aa>, <bb>, <cc>} {<bc>, <ac>, <bd>} {<ba>, <ab>, <ac>, <bc>} {<ab>, <ba>, <ac>} {<aa>, <ab>, <ba>} {<aa>, <ab>} {<aa>, <ab>} {<aa>} {<ab>, <ba>} {<ab>, <bc>, <ac>} {<ab>}
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
137
Le possibili combinazioni escluse nel caso più comune in cui D ≠ {} e R ≠ {} sono indicate dalle linee colorate nella seguente tavola. Si noti la incompatiblità tra i valori indicati in rosso. Esempio: la line che unisce una R riflessiva con una R asimmetrica significa che è’ impossibile avere la combinazione AB... dove i
Riflessiva
Irriflessiva abc A1 B 1 C 1
Simmetrica
Non-riflessiva a bc a 0 b 0 c 0
Asimmetrica
A b c a 0/1 b 0/1 c 0/1 Transitiva
a bc a 0 b 0 c 0 Intransitiva
A b c a 0/1 b 0/1 c 0/1
a bc a 0 b 0 c 0
a b c a 0/1 b 0/1 c 0/1 Non-simmetrica a b c a 0/1 b 0/1 c 0/1 Non-transitiva a b c a 0/1 b 0/1 c 0/1
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
138
Modelli controfattuali (controesempi)
Quando un’inferenza non è valida, possiamo dimostrarlo con sicurezza nel calcolo proposizionale mostrando che il tableau non può essere chiuso. Se si tratta di un sequente del calcolo dei predicati, tuttavia, non possiamo essere del tutto certi che il tableau non si sia chiuso solo perché non abbiamo trovato la strategia giusta. Possiamo però giustamente sospettare che, dato che non riusciamo a chiudere il tableau, il sequente corrispondente sia incorretto. In entrambi i casi, è utile saper generare una interpretazione delle formule in questione tale che essa dimostra che il sequente è incorretto. Questa interpretazione si chiama modello. E siccome il modello sta a dimostrare che il sequente è incorretto, si tratta di un modello controfattuale. L’idea è semplice. Se un sequente è incorretto, allora esiste un mondo possibile (una possibile situazione, o una struttura in una tavola di verità per il calcolo proposizionale) tale che in quel contesto la negazione del sequente è corretta. Tutto quello che dobbiamo fare è costruire questo modello controfattuale. Vediamo anzitutto come si costruisce un modello controfattuale nella logica proposizionale. Questo sequente è incorretto: (P → (Q → R)) |= ((P→ Q) → R) Come esercizio, si dimostri che a) la sua tavola di verità contiene una struttura in cui tutte le premesse sono vere e la conclusione è falsa b) il suo tableau non può essere chiuso. Vediamo ora come si può dimostrare la stessa cosa costruendo un modello controfattuale. 1. se (P → (Q → R)) |= ((P→ Q) → R) è incorretto, allora deve essere il caso che 1.1. la premessa è vera cioè (P → (Q → R)) = T 1.2. la conclusione è falsa, cioè ((P→ Q) → R) = F 2. ma se (1.2) allora deve essere il caso che 2.1. (P→ Q) = T 2.2. R = F. Ecco che sappiamo già che R dovrà essere falsa.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
139
3. A questo punto deve darsi uno dei seguenti casi 3.1. o P = T e Q = T 3.2. o P = T e Q = F 3.3. o P = F e Q = T 3.4. o P = F e Q = F 4. ma (3.1) non è possibile altrimenti non avremmo (1.1), visto che R = F 5. e (3.2) non è possibile, altrimenti non avremmo (1.2), visto che R = F 6. perciò o si da il caso che (3.3) 7. oppure si da il caso che (3.4) 8. ne consegue che abbiamo a disposizione solo due interpretazioni, la prima è: •
P = F = contraddizione
•
Q = T = tautologia
•
R = F = contraddizione
ad esempio P = Tutti gli scapoli hanno mogli antipatiche Q = Gli scapoli sono uomini non sposati R = Giovanni è uno scapolo e sua moglie è molto antipatica E la seconda è: •
P = contraddizione
•
Q = contraddizione
•
R = contraddizione
Ad esempio P = Tutti gli scapoli hanno mogli antipatiche Q = Gli scapoli non sono uomini R = Giovanni è uno scapolo e sua moglie è molto antipatica Le due interpretazioni forniscono due modelli controfattuali. L’esistenza di questi modelli dimostra l’incorrettezza del sequente (infatti ne basta uno solo). Si noti che abbiamo adottato la strategia più sicura, abbiamo cioè interpretato una proposizione falsa, ad esempio R, come se fosse una contraddizione, cioè una proposizione sempre falsa, e una proposizione vera, come Q nel primo modello, come
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
140
se fosse una proposizione sempre vera, cioè una tautologia. Strettamente parlando questo non è necessario. Domanda: se si utilizzano proposizioni contingentemente false oppure vera, qual è la differenza? Si immagini di creare un modello controfattuale e poi di negarne l’esistenza, che cosa avviene? Ecco una rappresentazione grafica dello stesso processo descritto sopra. 1
P → (Q → R)
2 3 4 5
vero
6 7
|=
(P→ Q) → R
Incorretto
falso P→ Q vero
da 1 →
R falso
P → (Q → R=F) P vero + Q falso = impossibile P falso + Q falso; oppure P falso + Q vero Per entrambe le alternative P → (Q → R) vero
da 2 da 4 da 4 da 4 + 1
Come è chiaro dallo schema, si tratta di ricostruire, muovendo a ritroso, l’interpretazione delle lettere proposizionali determinando prima il loro valore di verità dato il fatto che il sequente è incorretto. Si noti che, siccome un’inferenza può essere invalida soltanto quando le premesse sono vere e la conclusione falsa, è necessario partire dalla “coda” del sequente, che sappiamo essere sicuramente falsa. Lo stesso risultato può esser facilmente ottenuto utilizzando una tavola di verità. Passiamo ora al problema più difficile, l’individuazione di un modello controfattuale per un sequente del calcolo dei predicati. La strategia generale consiste nel considerare anzitutto la possibilità che sia il dominio sia qualsiasi relazione ρ siano vuoti, cioè: 1. D = {} e ρ = {}. Si procede poi “riempiendo” D e ρ progressivamente: 2. D = {a} e ρ = {} 3. D = {a} e ρ ≠ {}
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
141
4. D = {a, b} e ρ ≠ {} 5. D = {a, b, c} e ρ ≠ {} 6. D = {a, b, c, d} e ρ ≠ {} In genere, se (6) è insufficiente, c’è qualche cosa di sbagliato nel modello. Questo perché normalmente le relazioni con cui abbiamo a che fare sono binarie, e nella tavola precedente – quella in cui si illustrano le varie possibili combinazioni di tipi di relazioni – si può notare che il masimo richiesto, al fine di ottenere una relazione binaria BBC (non-riflessiva, non-simmetrica e intransitiva), è un dominio con cardinalità 4. Vediamo due esempi. (i) Dimostrare attraverso un modello controfattuale che il sequente è incorretto: ∀x (Fx → x = a) |= ∃x (Fx ∧ ∀y (Fy → (y = a ∨ y = x)))
1. se ∀x (Fx → x = a) |= ∃x (Fx ∧ ∀y (Fy → (y = a ∨ y = x))) è incorretto allora la premessa è vera e la conclusione è falsa, cioè 1.1. ∀x (Fx → x = a) = V 1.2. ∃x (Fx ∧ ∀y (Fy → (y = a ∨ y = x))) = F 2. Come possiamo formulare un modello che implementa 1.1 e 1.2? Molto spesso, quando le premesse sono universalmente quantificate e la conclusione è una formula quantificata esistenzialmente, possiamo provare che la premessa è vera e la conclusione è falsa selezionando il dominio vuoto (D = {}). In questo caso, tuttavia, sappiamo che D contiene perlomeno un elemento, cioè a, quindi dobbiamo adottare una strategia diversa. Vediamo se possiamo lavorare con una relazione vuota, cioè ρ = {} 3. Come nel caso del calcolo proposizionale, concentriamoci anzitutto su 1.2. Se si da il caso che 1.2, allora, data la tavola di verità di ∧ sappiamo che 3.1. o non è vero che ∃x Fx (...) 3.2. oppure (inclusivo) non è vero che ∃x (...)∀y (Fy → (y = a ∨ y = x) 4. 3.1 è l’opzione più semplice. Affinché si dia 3.1, è sufficiente scegliere un dominio D in cui nessun elemento soddisfa F, cioè un dominio in cui F = {} (F è vuota). Abbiamo dunque che ∀x ((x ∈ D) → ¬ Fx).
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
142
5. La nostra scelta in 4 rende la premessa vera? Si, perché, a prescindere dal numero di elementi in D, per definizione ora Fx è sempre falsa in 1.1, e ciò rende l’intera formula 1.1 sempre vera (si veda la tavola di verità di →). 6. Possiamo ora fornire una possibile interpretazione nel linguaggio naturale • Dominio = {a} • a=1 • Fx = x < 0
(ii) Dimostrare attraverso un modello controfattuale che il sequente è incorretto: (∀xFx → Ga) |= ∀z (Fz → Ga) 1. se (∀xFx → Ga) |= ∀z (Fz → Ga) è incorretto allora la premessa è vera e la conclusione è falsa, cioè 1.1. (∀xFx → Ga) = V 1.2. ∀z (Fz → Ga) = F 2. Come possiamo formulare un modello che implementa 1.1 e 1.2? Anche in questo caso non possiamo adottare la strategia del dominio vuoto, dato che 2.1. D contiene almeno un elemento, cioè a, 2.2. se D = {}, sia la premessa sia la conclusione sarebbero vere. 3. Purtroppo, in questo caso non possiamo adottare neppure la strategia della relazione vuota, dato che, se F = {} allora entrambe le formule sarebbero vere. 4. Assumiamo perciò che D ≠ {} e che F ≠ {}, e iniziamo con D = {a}. 5. Dalla 1.2 segue che Ga è falsa, ma se Ga è falsa, allora dalla 1.1 segue che 6. ∀xFx deve essere ugualmente falsa, cioè ∃x ¬ Fx 7. Potrebbe essere il caso che ∀x (a = x)? Cioè, potrebbe essere il caso che D contiene solo a? No, perché altrimenti a dovrebbe soddisfare sia la condizione (5), cioè ¬ Ga, sia la condizione (6), cioè ¬ Fa, e questo renderebbe vera sia la 1.1 sia la 1.2. 8. Dalla 7 segue perciò che D contiene perlomeno un altro elemento, che chiameremo b. Come possiamo qualificare a e b per soddisfare 1.1 e 1.2? 9. Non possono essere entrambe F, altrimenti non si darebbe il caso che 1.1. Assumiamo perciò che
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
143
9.1. Fa 9.2. ¬ Fb 10. Le condizioni 9.1 e 9.2 rendono la formula ∀xFx in 1.1 falsa. Non è vero infatti che tutti gli elementi nel dominio D hanno la proprietà F, visto che per definizione b non è F. Data la tavola di verità di →, segue che tutta la formula 1.1 è vera. 11. La condizione 9.1 rende la formula ∀z (Fz → Ga) in 1.1 falsa, perché esiste almeno un caso in cui possiamo selezionare una x tale che x sia F (quando z = a), rendendo Fz = T, e dato che abbiamo stabilito per definizione che non si da il caso che a sia G, data la tavola di verità di → segue che tutta la formula 1.2 è falsa. 12. Possibile interpretazioni: • Dominio = {a, b} • a=1 • b=2 • Fx = x < 2 • Gx = x > 1
La differenza tra le due formule è che una asserisce che “se tutte le x nel dominio sono F, a è G”, mentre l’altra, la conclusione, asserisce che “presa una z qualunque nel dominio, se z è F allora a è G” .
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
144
Introduzione alla logica matematica Quinta parte La logica modale
Mathematics is the only good metaphysics. Lord Kelvin
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 Š Luciano Floridi
145
Lezione 1
Argomenti •
Presentazione e organizzazione del corso
•
Introduzione
•
Che cos`è la logica modale
Introduzione
Ampliamento della logica classica di primo ordine studiata nel primo modulo. Quanto detto per la logica classica di primo ordine si applica anche alla logica modale che studieremo in questo modulo. La logica classica è 1. formale 2. deduttiva 3. monotona 4. standard (non-modale) 5. a due valori (booleana, binaria) 6. bivalente (prove indirette o per assurdo) 7. non costruzionista (terzo escluso, bivalenza, prove indirette o per assurdo) 8. di primo livello (quantificazione) In questo modulo modificheremo la restrizione n. 4, ampliando il nostro vocabolario con le due nozioni modali fondamentali: “è possibile che”, e “è necessario che”. Ci saranno quindi nuove regole di formazione e l’insieme di formule ben formulate si amplierà.
Vedremo
poi
quali
logiche
modali
sono
possibili a
seconda
dell’interpretazione data al nuovo vocabolario. Il sistema di dimostrazione resta quello dei tableaux, ma andrà ovviamente ampliato mediante nuove regole di derivazione. Contrariamente al primo modulo, non ci soffermeremo su questioni metateoriche (ad esempio la completezza), perché il fine di questa parte del corso è
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
146
quello di fornire la strumentazione necessaria per affrontare temi filosofici, cioè possibili aree applicative della logica modale. A seconda del tempo disponibile, dopo l’introduzione alla logica modale in generale, vedremo la logica aletica, epistemica, temporale, dinamica e deontica. Il testo adottato e che seguiremo da vicino è quello di Rod Girle, Modal Logics and Philosophy. Queste note possono essere lette come una lettura guidata del manuale. Differenze nella presentazione:
il manuale non parla di sequenti e non utilizza i turn-styles (si menziona il turn-style sintattico brevemente solo a p. 93) ma la grafica orizzontale. Riprendendo un esempio del primo modulo, invece di scrivere: P → Q, P |= Q oppure P → Q, P |- Q, il manuale divide le premesse dalla conclusione mediante una linea e la conclusione viene segnalata da tre punti: P→Q P _____ ...Q Per ragioni di uniformità e maggiore semplicità noi continueremo ad utilizzare i sequenti semantici, con un’avvertenza. Mentre nella logica del primo ordine è sempre chiaro che un tableau è uno strumento di dimostrazione sintattico (quello semantico è rappresentato dalla tavole i verità e dai controesempi), proprio a causa della natura semantica dell’approccio contemporaneo alla logica modale, cioè la SMP, il sistema dei tableaux avrà una natura semantica, nel senso che in esso si parlerà di formule vere in mondi possibili. Nel manuale si utilizzano i seguenti simbolo (meno standard di quelli utilizzati in queste dispense e in Hodges): & invece di ∧, ⊃ invece di →, ≡ invece di ↔, e ⇔ invece di ↔ quando si è in un contesto diverso da quello irreggimentato dalle regole di formazione (si può leggere ⇔ come equivalente a ϕ =||= ψ , cioè ϕ ⇔ ψ significa (ϕ |= ψ e ψ |= ϕ).
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
147
Che cos`è la logica modale (LM)
Abbiamo visto che il calcolo proposizionale deve essere ampliato mediate la teoria della quantificazione e delle relazioni per dar conto di alcune inferenze logiche. Allo stesso modo, la logica classica viene ampliata con degli operatori modali per dar conto di inferenze altrimenti non analizzabili. Esempio: se Mario può uscire di casa allora Mario deve andare a scuola, ma Mario può uscire di casa, perciò Mario deve andare a scuola. È chiaro che non stiamo dicendo che Mario esce di casa e che perciò va a scuola, ma che la possibilità di uscire implica la possibilità di andare a scuola. La logica modale ci permette di analizzare questo genere di inferenze. L’approccio che adotteremo per lavorare con le nozioni modali è quello semantico. Prima dell’introduzione della semantica dei mondi possibili (SMP), la logica modale era studiata come un sistema assiomatico, un approccio piuttosto laborioso. La SMP è diventato un approccio classico alla LM grazie al lavoro di Saul Kripke e altri logici a partire dagli anni ‘50. L’approccio semantico analizza le nozioni modali in termini di “mondi possibili”, una nozione leibniziana resa ormai standard dallo stesso Kripke. Una questione aperta è quanto le nozioni modali analizzate in termini di SMP siano vicine alle corrispondenti nozioni del linguaggio naturale. Questa questione ricorda la discussione già vista nel caso dei connettivi logici, ad esempio la natura non causale di ∧, o la natura puramente formale dell’implicazione. In questo modulo adotteremo la stessa strategia minimalista adottata nel precedente. La logica modale fornisce analisi molto utili per l’analisi concettuale e filosofica, ma non rappresenta necessariamente il nocciolo duro del corrispondente segmento del linguaggio naturale. Abbiamo già incontrato il concetto di “mondo possibile” nel primo modulo, in relazione alle strutture di una tavola di verità. Si prenda la tavola di verità della disgiunzione:
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
148
1 2 3 4
ϕ V V F F
ψ ϕ∨ψ V V F V V V F F
Essa consiste di 4 strutture (le linee orizzontali numerate). Ciascuna struttura rappresenta una situazione o mondo possibile per l’insieme {ϕ, ψ }. Molto semplicemente: esiste solo 1 mondo possibile su 4 in cui sia ϕ sia ψ sono vere, ed esistono 3 mondi possibili su 4 in cui ϕ ∨ ψ è vera. Questa semplice idea porta a considerare proposizioni modali, ad esempio P = “è possibile che gli unicorni siano animali simpatici”, come proposizioni asserenti l’esistenza di un mondo possibile che soddisfa P, cioè, se P è vera, allora si da un mondo possibile in cui esistono unicorni che sono simpatici animali. Un altro modo di esprimere la stessa idea è dire che una proposizione ϕ diventa ora vera o falsa relativamente ad un mondo possibile, cioè ϕ è “indicizzata”, dove il suo indice è il relativo mondo possibile. Le due nozioni fondamentali della logica modale sono la possibilità e la necessità. Linguaggio naturale È necessario che ϕ Necessariamente ϕ ϕ deve essere vera deve essere il caso che ϕ È possibile che ϕ Possibilmente ϕ ϕ potrebbe essere vera può darsi il caso che ϕ
Simboli ϕ
◊ϕ
Nomenclatura = box
◊ = diamante
Notazione alternativa Lϕ
Mϕ
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
149
Come nel caso dei quantificatori, se si combinano i due operatori logici modali con la negazione si ha la seguente tavola di equivalenze: Tavola di equivalenze modali ϕ ≡ ◊ ¬ ϕ Non è necessario che ϕ se e solo se è possibile che ¬ ϕ ϕ non è necessario se e solo se ¬ ϕ è possibile 2 ¬ ◊ ϕ ≡ ¬ ϕ Non è possibile che ϕ se e solo se è necessario che ¬ ϕ ϕ è impossibile se e solo se ¬ ϕ è necessario 3 ¬ ◊ ¬ ϕ ≡ ϕ Non è possibile che ¬ ϕ se e solo se è necessario che ϕ ¬ ϕ è impossibile se e solo se ϕ è necessario 4 ¬ ¬ ϕ ≡ ◊ ϕ Non è necessario che ¬ ϕ se e solo se è possibile che ϕ ¬ ϕ non è necessario se e solo se ϕ è possibile
1 ¬
Dalla precedente tavola risulta chiaro che potremmo esprimere tutte le combinazioni modali utilizzando solo una nozione primitiva, ad esempio quella di possibilità ◊, in quanto
ϕ≡¬◊¬ϕe¬
ϕ ≡ ◊ ¬ ϕ.
Attraverso i due operatori logici possiamo tradurre una serie di nozioni filosofiche classiche. La seguente tavola offre una visione panoramica: 1 ϕ è contingente 2 ϕ non è contingente 3 ϕ non è contingente 4 ϕ è analitica 5 ϕ non è contingente
6 ϕ e ψ sono consistenti
◊ ϕ ∧ ◊ ¬ ϕ, in simboli ∇ ϕ
(nota: il simbolo ∇ non è molto usato, lo menziono qui solo per completezza) ¬ (◊ ϕ ∧ ◊ ¬ ϕ) cioè ¬ ∇ ϕ (da 1) ¬ ◊ ϕ ∨ ¬ ◊ ¬ ϕ, cioè ¬ ∇ ϕ (da 2 per la legge di De Morgan o distribuzione di ¬ e ∧) ϕ∨ ¬ϕ (ϕ è necessariamente vera o nec. falsa) ¬∇ϕ≡ ¬ϕ∨ ϕ ϕ è analitica vera o analiticamente falsa ϕ è necess. vera o necess. falsa (da 3 e 4, secondo le precedenti equivalenze) ◊ (ϕ ∧ ψ ) ϕ e ψ sono compatibili, generano un insieme consistente, possono essere vere al contempo
Le due nozioni modali di possibilità e necessità sono utili per analizzare altre nozioni modali più complesse, permettendoci di formalizzare il discorso logico nel caso di molti altri concetti. Tra quelli più interessanti troviamo la conoscenza, la credenza, il tempo, il cambiamento e il dovere. Vedremo queste applicazioni nella seconda parte del corso. Nella prima parte affronteremo la teoria generale. Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
150
Lezione 2
Argomenti •
La logica modale S5
Esistono, come vedremo, moltissime logiche modali. C. I. Lewis è stato uno dei primi logici a studiare LM. Il suo lavoro è assiomatico e predata l’approccio semantico di Kripke (SMP). Lewis elaborò 5 sistemi di LM: S1, S2 , S3, S4 e S5. Se si analizzano questi 5 sistemi in termini di SMP, S5 risulta il sistema più semplice. Inoltre S5 è il più comunemente usato perché viene di solito considerato come il sistema che meglio coglie l’idea di possibilità logica. Per queste due ragioni la nostra esplorazione inizia da S5. Per introdurre S5 utilizzeremo la SMP e il sistema dei tableaux. Inoltre ci limiteremo a vedere S5 nel contesto della logica proposizionale. Vocabolario di S5: il vocabolario della logica proposizionale + 2 operatori logici modali
e ◊. Vediamolo.
Vocabolario •
lettere proposizionali {P, Q…Z}, oppure {P1,…Pn}. Per parlare in generale di qualsiasi lettera proposizionale utilizzeremo come al solito delle variabili proposizionali {ϕ, χ,…ψ }.
•
operatori logici o connettivi {¬, ∧, ∨, →, ↔}. Per parlare in generale di qualsiasi
connettivo binario utilizzeremo il simbolo ƒ o operatori logici modali
e◊
Sintassi: regole di formazione (RF)
Come nel calcolo proposizionale, le RF determinano la corretta costruzione di formule atomiche e complesse di un linguaggio formale per il calcolo proposizionale modale S5 . Sono equivalenti alle regole grammaticali del linguaggio naturale. Esse
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
151
stabiliscono esplicitatamene tutte e solo le combinazioni di simboli, appartenenti ai due insiemi dei 7 operatori logici {¬, ∧, ∨, →, ↔, , ◊} e delle lettere proposizionali {P1, ..., Pn}, che saranno considerate come aventi significato in S5 . Utilizzando la versione abbreviata, le RF per S5 sono in tutto 6 1. qualsiasi lettera proposizionale ϕ è una formula ben formulata (fbf) di S5 (formule atomiche). 2. se ϕ è una fbf di S5, allora anche ¬ ϕ è una fbf di S5 (negazione di una formula semplice o complessa). 3. se ϕ e ψ sono fbf di S5 , allora anche [ϕ ƒ ψ ] è una fbf di S5 (congiunzione, disgiunzione, inferenza e doppia inferenza). 4. se ϕ è una fbf di S5, allora anche
ϕ è una fbf di S5 (“necessitazione” di una
formula semplice o complessa). 5. se ϕ è una fbf di S5 , allora anche ◊ ϕ è una fbf di S5 (“possibilizzazione” di una formula semplice o complessa). 6. nessuna altra formula è una fbf di LCProp (clausola di chiusura) Le 6 RF sono presentate in modo leggermente diverso nel manuale ma hanno esattamente lo stesso significato e applicazione. Come nel caso della logica proposizionale, l’insieme {RF1, ..., RF6} funziona algoritmicamente, come un motore logico, il cui input consiste in n ≥ 1 elementi dei due insiemi finiti {¬, ∧, ∨, →, ↔,
, ◊} e {P1, ..., Pn} e il cui output consiste
nell’insieme infinito Φ di tutte le fbf ϕ di S5, cioè Φ = {ϕ: ϕ è una fbf di S5 }
{¬,
∧ , ∨ , →, ↔,
,
◊}
{RF1, ..., RF6}
Φ
= {ϕ:
ϕ
è una fbf}
{P1, ..., Pn}
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
152
Il nostro esempio: “se Mario può uscire di casa allora Mario deve andare a scuola, ma Mario può uscire di casa, perciò Mario deve andare a scuola” può ora essere tradotto così: ◊ P → Q, ◊ P |= Q Semantica La semantica del calcolo proposizionale è stabilita dalle tavole di verità. Nel caso di S5 utilizziamo invece la semantica dei mondi possibili (SMP). Nella logica proposizionale sappiamo che: ϕ = T ⇔ ¬ ϕ = F, e vice versa ¬ ϕ = T ⇔ ϕ = F questo perché è come se assumessimo un solo contesto complessivo, colto dalle tavole di verità. Se invece indicizziamo ϕ abbiamo che: ¬ ϕ = T in un mondo possibile ω ⇔ ϕ = F in un mondo possibile ω dove ω è una variabile utilizzata per fare riferimento ad uno dei mondi possibili. L’idea intuitiva di mondo possibile è assunta come basilare ed elementare. Come nel caso dei controesempi, si parte dal concetto base di verità di una negazione (¬ ϕ). L’insieme dei mondi possibili è di solito specificato a partire da n, {n, m, l, j, ...}. Le lettere n, m, l, j, sono i nostri indici “ontici”. La prima conseguenza importante è che, come è intuitivo aspettarsi, tutte le formule del calcolo proposizionale possono essere tradotte in formule di S5 indicizzandole. Invece di scrivere P → Q scriveremo P → Q (n) dove n è un mondo possibile a scelta. Torneremo su questo tra poco, per parlare delle regole di derivazione, ma questo principio generale può essere ampliato anche alle formule del calcolo dei predicati. Ciò significa che tutti i tableaux della logica classica di primo ordine, una volta onticamente indicizzati, sono anche tableaux della logica modale classica. La seconda conseguenza è che si può indicare la semantica dei due operatori modali: 1) ◊ ϕ = T in un mondo possibile ω ⇔ ϕ = T in almeno un mondo possibile, diciamo υ 2) ϕ = T in un mondo possibile ω ⇔ ϕ = T in tutti i mondi possibili Notare la somiglianza tra (1)-(2) e i quantificatori esistenziale e universale. Adottando la convenzione di scrivere ϕ(ω) per dire che ϕ è vera in ω, è come se dicessimo che
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
153
1) ◊ ϕ = T in un mondo possibile ω ⇔ ∃υ ϕ(υ) 2) ϕ = T in un mondo possibile ω ⇔ ∀υ ϕ(υ) Nel manuale e in quanto segue utilizzeremo le seguenti convenzioni, scriveremo •
“ϕ(ω) = 1” per indicare che ϕ è vera in ω
•
“ϕ(ω) = 0” per indicare che ϕ è falsa in ω
•
ϕ(ω) nei tableaux per indicare che ϕ è vera in ω
Regole di derivazione (RD) per i tableaux modali di S5 Il sistema di RD per S5 è intuitivo e basato su sistema delle 9 RD del calcolo proposizionale classico. Avremo anzitutto le 9 RD onticamente indicizzate:
Le 9 regole di derivazione di S5 per i connettivi lineari ϕ ∧ ψ (ω )
¬ (ϕ
ϕ (ω) ψ (ω )
¬(ϕ
∨ ψ ) (ω )
¬ (ϕ
¬ϕ (ω )
ϕ (ω)
¬ψ (ω)
ϕ ∨ ψ (ω)
¬ψ (ω)
ϕ (ω)
ϕ → ψ (ω)
ψ (ω)
¬ϕ (ω)
¬ψ (ω)
¬
¬(ϕ
ϕ ↔ ψ (ω )
ϕ (ω ) ψ (ω )
¬¬ϕ (ω)
ϕ (ω)
¬ψ (ω )
∧ ψ ) (ω )
¬ϕ (ω)
→ ψ ) (ω )
φ
(ω)
¬ψ (ω )
ϕ (ω)
ψ (ω )
↔ ψ ) (ω)
¬φ
(ω )
ψ (ω )
ramificanti
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
154
Abbiamo poi le 4 regole per l’eliminazione e la negazione degli operatori logici modali, come nel calcolo dei predicati abbiamo le quattro regole per i quantificatori, e quindi una quinta regola rappresentate un caso speciale:
Le 5 regole di derivazione di S5 per S5
◊S5
T
()
()
ϕ ω
ϕ ω
() ϕ (ω ) dove υ è un qualsiasi mondo possibile vecchio ϕ υ
e
◊ ¬
¬
◊ ϕ (ω )
¬
() dove υ è un mondo possibile nuovo
◊ ¬ ϕ (ω )
ϕ υ
()
ϕ ω
◊
¬ ◊ ϕ (ω) ¬ ϕ (ω)
Un breve commento sulle cinque regole: •
Le regole ¬ e ¬◊ sono delle banali trasformazioni basate sulle equivalenze viste in precedenza.
•
Le regole
S5 e
◊S5, invece, sono interessanti perché ci permettono
l’eliminazione degli operatori logici modali. Come nel caso dell’eliminazione di ∀, possiamo implementare ϕ scegliendo tra i mondi possibili già disponibili. Per l’operatore di possibilità, invece, è chiaro che, siccome la formula ◊ϕ(ω) asserisce che è possibile che ϕ sia vera in un mondo possibile qualsiasi ω, l’eliminazione di ◊ funziona come l’eliminazione di ∃, dobbiamo cioè scegliere un qualsiasi mondo
possibile υ che non sia già comparso nel tableau al fine di evitare possibili errori legati all’implementazione di ϕ in un mondo possibile in cui ¬ ϕ è già stato implementato. Scegliendo un mondo υ “nuovo” eliminiamo il rischio “a costo zero”. Infatti nulla toglie che alla fine dell’analisi si possa identificare il nuovo υ con un vecchio ω. •
Infine, la regola T è, nel caso di S5, del tutto ridondante, visto che si tratta di un caso particolare di S5 in cui ω = υ, ma la regola risulterà utile in seguito.
Nella terminologia introdotta nel secondo modulo, tutte le regole sono Cartesiane tranne la S5, che è non-cartesiana nel caso in cui ci siano più mondi tra cui poter
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
155
scegliere. Si noti che il problema della scelta non sussiste se è possibile analizzare tutte le alternative, ma che le alternative posso crescere senza limite perché ◊S5 può generare un illimitato numero di mondi possibili. Si ricordi che, come nel caso dei quantificatori, i due operatori modali possono essere eliminati più volte, cambiando le scelte di mondi possibili utilizzati. Infine, la regola di chiusura è come la regola di chiusura del calcolo proposizionale, indicizzata. Essa indica che un ramo del tableaux è chiuso sse in qualsiasi parte dello stesso ramo si trovano sia l’affermazione sia la negazione della stessa formula ϕ: Regola di chiusura
()
ϕ ω
¬ϕ (ω)
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
156
Due esempi Il nostro esempio elementare è: ◊ P → Q, ◊ P |= Q L’insieme di formule che costituisce il controesempio è: {(◊ P → Q) (n), ◊ P (n), ¬ Q (n)} cioè, si da un mondo possibile n tale che, in n tutte le premesse sono vere e la conclusione è falsa (cioè, la negazione della conclusione è vera). Testiamo la consistenza del controesempio attraverso il seguente tableau: 1. ◊ P → Q (n) (n) 2. ◊ P 3. ¬ Q (n) ___|_______________ 4. ¬ ◊ P (n) Q (n)
premessa indicizzata premessa indicizzata negazione della conclusione, indicizzata 1→
Vediamo un esempio leggermente più complesso preso dal manuale (p. 21 es. 2.3.1, 1.j): (P ∨ Q) ↔ ( P ∨ Q) Siccome questa formula non è un inferenza ma un teorema (manca il segno del turnstyle all’inizio, omesso per semplicità e uniformità con il manuale), provarlo significa dimostrare che la sua negazione porta sempre (in tutti i rami) a inevitabili contraddizioni. L’insieme di formule che costituisce il controesempio è quindi: {¬ ( (P ∨ Q) ↔ ( P ∨ Q)) (n)} cioè, si da un mondo possibile n tale che, in n la negazione del teorema è vera. Testiamo la consistenza del controesempio attraverso il seguente tableau:
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
157
1. ¬ ( (P ∨ Q) ↔ ( P ∨ Q)) (n) teorema negato _______________|________________________________ 2. ¬ (P ∨ Q) (n) 1¬↔ 2. (P ∨ Q) (n) ¬ ( P ∨ Q)) (n) ( P ∨ Q) (n) | | 3. ¬ P (n) 2b ¬∨ 3. ◊ ¬ (P ∨ Q) (n) 2a ¬ ¬ Q (n) | 3 ◊S5 | 4. ¬ (P ∨ Q) (k) 4. ◊ ¬ P (n) 3a ¬ | new world | 5. ¬ P (k) 4¬∨ 5. ◊ ¬ Q (n) 3b ¬ ◊ ¬ Q (k) | ______|__________ 6. ¬ P (k) 4 ◊S5 6. P (n) Q (n)* 2b ∨ | new world 7. P (k) 5 S5 | 7. ¬ Q (l) 5 ◊S5 8. ◊ ¬ Q (k) 5b ¬ | new world | 2a S5 9. ¬ Q (l) 8 ◊S5 8. (P ∨ Q) (k) _____|_______ old world | new world 9. P (k) Q (k) 9v Q (l) 6 S5 | old world 10. Q (l) 10 S5 old world * Questo ramo può essere chiuso immediatamente se accettiamo la seguente regola: Q (n) diventa Q (k).
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
158
Lezione 2 Argomenti •
Modelli controfattuali (controesempi) in S5
•
Le Logiche Modali Normali
Modelli controfattuali (controesempi) Anche in questo caso possiamo adattare quanto già appreso nel calcolo proposizionale. La differenza è che in S5 dobbiamo indicizzare i valori di verità. Esempio (adattato dal manuale): assumiamo due insiemi, uno di lettere proposizionali {P, Q} e l’altro un sistema di mondi possibili (tradotti in indici ontici) {n, k}. Supponiamo che P e Q generino la seguente tavola di verità:
P Q
mondi possibili n k 1 0 0 1
Le due colonne n e k corrispondono ciascuna ad un mondo possibile. Nel nostro caso abbiamo selezionato il sistema di mondi possibili = {n, k}. Quali valori di verità hanno le seguenti formule? P 0
Q 0
◊P
◊Q
(P → Q) 0
◊ (P ∧ Q)
¬ (P ∧ Q) 1
(P ∨ Q) 1
◊ (P → Q)
1
1
0
(P ∧ Q) 0
1
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
159
Si noti come: •
l’operatore funzioni alla stregua del segno di moltiplicazione: moltiplicare i valori di verità di P in ciascun mondo e si ottiene il valore di P (basta uno zero per rendere P = 0).
•
l’operatore ◊ funzioni alla stregua del segno di somma modulo 1 (modulo 1 significa che 1 + 1 = 1; si immagini l’orologio analogico; esso di solito è modulo 12, cioè quando si sommano due numeri il risultato è un numero progressivo fino a 12 e oltre il 12 si ricomincia da capo, ad esempio 7 + 3 = 10, ma 10 + 4 = 14 = 2).
Altri esempi:
P Q (P ∨ Q) (P ∨ Q) (P ∧ Q) (P ∧ Q) ¬ (P ∧ Q) (P ↔ Q)
mondi possibili n k 1 0 0 1 1 1 1 0 0 0 1 (fare come esercizio)
Un sistema di mondi possibili {n1...nk} è un modello controfattuale (un controesempio che dimostra l’incorrettezza) di un sequente (l’invalidità di un teorema o di una inferenza) ϕ di S5 sse ϕ è falsa in almeno uno dei mondi possibili n x ∈ {n 1...n k}. Nel nostro esempio, il sistema {n, k} è un modello controfattuale di tutte le formule che risultano avere valore 0, ad esempio ◊ (P ∧ Q). Non è un controesempio per tutte le formule che risultano avere valore 1, ad esempio ◊ Q. Abbiamo visto che i tableaux sono un modo grafico diverso, ma logicamente equivalente, di testare le formule per evidenziarne la consistenza logica dato un determinato sistema di mondi possibili. Vediamo un altro esempio.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
160
Sequente (incorretto): (P → Q) → (P → Q) Controesempio da testare: ¬ ( (P → Q) → (P → Q)) (n) Tableau 1. ¬ ( (P → Q) → (P → Q)) (n) | 2. (P → Q) (n) ¬ (P → Q) (n) | 3. P (n) ¬ Q (n) | 4. ◊¬Q (n) | 5. ¬Q (k) | 6. P → Q (n) ___________|_______________ 7. ¬ P (n) Q (n) | 8. P → Q (k) _____________|________ 9. ¬ P (k) Q (k) (resta aperto)
teorema negato 1¬→ 2b ¬ → 3b ¬ 4 ◊S5 2 S5 6→ 2 S5 8→
Per costruire il modello controfattuale si risale dal ramo aperto fino al teorema negato, attribuendo a ciascuna formula atomica il valore corrispondente all’interno del relativo mondo possibile. Ad esempio: ¬ P è vera in k (linea 9) perciò P sarà falsa (cioè 0) in k.
P Q (P → Q)
mondi possibili n k 1 0 1 0 1 1 (P → Q) → (P →
P (n) = 1 Q (n) = 0 (P → Q) (n) = 1 (P → Q) (n) = 0 Q) (n) = 0
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
161
Le Logiche Modali Normali Le LMN sono generate attraverso l’analisi della relazione di accessibilità che regola l’utilizzo della regola S5 . S5 ◊ è una regola di tipo generativo. L’eliminazione di ◊ funziona un po’ come l’eliminazione del quantificatore esistenziale, genera cioè nuovi mondi possibili (nuove costanti nel caso di ∃) a partire da precedenti mondi possibili. S5 è una regola di tipo qualificativo. L’eliminazione di funziona un po’ come l’eliminazione del quantificatore universale, cioè qualifica i mondi possibili (le vecchie costanti nel caso di ∀). Il manuale parla di regola riempitiva, ma è preferibile leggere P (n) come “P caratterizza (qualifica) il mondo n” piuttosto che come “P riempie il mondo n”. Quali nuovi mondi generati possiamo qualificare a partire dai vecchi mondi possibili? Se posso predicare P di n, posso anche predicare P di k? È chiaro che dipende dal rapporto tra n e k, cioè se k è accessibile a partire da n (si dice anche: se n vede/ha accesso a k). Iniziamo con il rendere le regole di derivazione di S5 il più deboli possibile. Le 4 nuove regole di derivazione per le LMN R
()
ϕ ω ω Aυ
()
ϕ υ
◊R ◊ ϕ (ω ) ωAυ
() dove υ è un mondo possibile nuovo ϕ υ
¬
¬
¬
()
ϕ ω
◊ ¬ ϕ (ω )
◊
¬ ◊ ϕ (ω) ¬ ϕ (ω)
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
162
L’indebolimento consiste in: •
assenza della regola T (non è detto che ω sia trasparente a se stesso)
•
assenza della dicitura “dove υ è un qualsiasi mondo possibile vecchio“ in R ora serve una esplicita disponibilità di una relazione i accessibilità
•
esplicita presenza di ωAυ in R e in ◊R
S5 non pone alcuna restrizione sulla relazione di accessibilità A. Questo spiega perché la specificazione ωAυ è ridondante in S5. Esempio. Sequente corretto (teorema): P → P Controesempio da testare: ¬ ( P → P) (n) Tableau N.B. Nel manuale si numerano tutte le righe, non tutti i passaggi logici, per cui le righe 2 e 3 sarebbero in realtà 2.a e 2.b. Inoltre, la relazione tra mondi possibili viene indicata con una lettera infissa, sebbene le relazioni siano sempre indicate in modo prefisso, e infissi siano soltanto i simboli dei connettivi binari. Per uniformità dovremmo o spostare la A a sinistra (così: A(n,k)) oppure adottare un simbolo per la accessibilità. 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
¬ ( P → P) P ¬ P ◊¬ P nAk ¬ P ◊¬P P kAl ¬P
(n) (n) (n) (n) (k) (k) (k) (l)
teorema negato 1¬→ 1¬→ 3¬ 4 ◊R 4 ◊R 6¬ 2, 5 R 6 ◊R 7 ◊R
La riga 5 indica che l’eliminazione di ◊ comporta l’assunzione di una relazione di accessibilità da n a l. Per dirla in altri termini: affermare che ◊P(n) significa affermare che da n si può accedere ad un mondo possibile k in cui P è vera. La linea 10 resta aperta perché non possiamo utilizzare k, dato che abbiamo solo le relazioni nAk e kAl, rappresentabili così: Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
163
n
k
l
La logica modale K Le logiche modali normali condividono tutte lo stesso vocabolario. Ciò che le diversifica è la natura della relazione di accessibilità, cioè la semantica. Questo può essere indicato chiaramente facendo riferimento alle regole di derivazione RD caratterizzanti ciascuna LM. Due LM sono identiche sse condividono le stesse RD. Alcune RD restano fisse per tutte le LM: le 9 regole derivate dal calcolo proposizionale e le 2 regole della negazione degli operatori modali. Facciamo riferimento a questi due insiemi come all’insieme XI. Il manuale è pedissequamente più dettagliato, ma la cosa è banale e cercheremo di usare le necessarie scorciatoie. Abbiamo quindi che: S5 = XI ∪ {◊S5, S5, T} K = XI ∪ {◊R, R} Vediamo come si applica K.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
164
Esempio importante: (P → ◊ P) Tableau 1. 2. 3. 4. 5. 6. 7.
¬ (P → ◊ P) P ¬ ◊ P ◊¬◊P nAk ¬◊P ¬P
(n) (n) (n) (n) (k) (k)
teorema negato 1¬→ 1¬→ 3 ¬ 4 ◊R 4 ◊R 6¬
Non possiamo chiudere il tableau, visto che abbiamo a disposizione solo nAk ma non kAn, senza la quale non possiamo generare ¬ P (n). Quindi: P → ◊P è un teorema di S5 ma non di K. K è una LMN estremamente debole, grazie alla quale è possibile dimostrare soltanto teoremi banali, ecco due esempi: Teorema: (◊P → ¬ ¬ P) Tableau 1. 2. 3. 4. 5. 6. 7.
¬ (◊ P → ¬ ¬ P) ◊P ¬¬ ¬P ¬P nAk P ¬P
(n) (n) (n) (n) (k) (k)
teorema negato 1¬→ 1¬→ 3¬¬ 2 ◊R 2 ◊R 4¬
Il teorema è banale perché ◊P = ¬ ¬ P. Lo stesso esercizio può essere svolto con ( P → P).
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
165
Una mappa delle logiche modali normali Quante LMN ci sono? Tante quante sono le possibili qualificazioni di A. Il numero è praticamente illimitato, ma ce ne sono alcune più importanti di altre. Abbiamo visto quella più inclusiva, S5, in cui A è una relazione di equivalenza (è riflessiva, simmetrica e transitiva), perciò tutte le altre LMN saranno più deboli (sono in grado di dimostrare un numero minore di teoremi). K è una logica molto debole. Quali altre LMN ci sono tra K e S5? Due strategie per generare LMN: 1. la strategia sintattica (Hintikka’s strategy nel manuale), che lavora sul genere di regole implementate da una LMN 2. la strategia classica (orthodox strategy nel manuale) che lavora direttamente sulla qualificazione della relazione di accessibilità. Entrambe le strategie lavorano sulla “necessità” cioè sulla eliminazione o trasformazione di formule del tipo ϕ La seconda è preferibile perché più trasparente. Conoscendo a priori le possibili combinazioni di qualificazioni di una relazione binaria di accessibilità possiamo avere una prima mappa delle varie LMN disponibili. Tuttavia, si tratta di due strategie alla fine equivalenti (generano logiche che provano gli stessi insiemi di teoremi). Seguiremo il manuale nella loro presentazione, iniziando quindi dalla strategia sintattica.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
166
La strategia sintattica (Hintikka’s strategy) K è non-riflessiva: ω non vede se stesso (non è T-rasparente a se stesso). Per renderla riflessiva basta aggiungere la regola (di trasparenza) T: (perciò chiameremo questa nuova LMN T): La nuova regola di derivazione di T T ϕ (ω) ωAω | ϕ (ω)
Notare che abbiamo aggiunto la specificazione ωAω solo per completezza, in realtà è ridondante. Aggiungendo T a K abbiamo: T = XI ∪ {◊R, R, T} Un teorema importante, perché traccia bene la soglia tra le due LMN è: ( P → P), che risulta essere un teorema in T ma non in K. 1. 2. 3. 4.
¬ ( P → P) P ¬P P
(n) (n) (n) (n)
teorema negato 1¬→ 1¬→ 2 T
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
167
Consideriamo ora una seconda nuova regola,
R, per cui se ϕ in ω e ω vede υ
allora ϕ anche in υ: La nuova regola di derivazione di S4 R ϕ (ω) ωAυ | ϕ (υ)
Se aggiungiamo
R a T otteniamo la nuova LMN:
S4 = XI ∪ {◊R, R, T,
R}
Un altro teorema importante (perché traccia bene la soglia tra T e S4): ( P → P) è un teorema in S4 ma non in T (e perciò non in K). 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
¬ ( P → P) P ¬ P ◊¬ P nAk ¬ P ◊¬P P kAl ¬P P P
(n) (n) (n) (n) (k) (k) (k) (l) (k) (l)
teorema negato 1¬→ 1¬→ 3¬ 4 ◊R 4 ◊R 6¬ 2, 5 R 6 ◊R 7 ◊R 2,5 R 9,1 R
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
168
La logica successiva è la nostra vecchia amica S5, che si ottiene da S4 aggiungendo una terza regola,
SymR, che ci permette di fare il percorso inverso a
R, cioè se
ϕ in υ e υ vede ω allora ϕ anche in ω:
La nuova regola di derivazione di S5 SymR ϕ (υ) υAω | ϕ (ω)
S5 = XI ∪ {◊R, R, T,
R,
SymR}
Si noti che la nuova regola ha senso solo se associata alla precedente regola R. In questo caso il teorema importante (perché traccia bene la soglia tra S4 e S5) è: (◊ P → ◊ P), un teorema in S5 ma non in S4 (e perciò neppure in T e in K):
1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
¬ (◊P → ◊ P) ◊P ¬ ◊P ◊¬◊P nAk ¬◊P ¬P nAl P ¬P ¬P
(n) (n) (n) (n) (k) (k) (l) (n) (l)
teorema negato 1¬→ 1¬→ 3¬ 4 ◊R 4 ◊R 5¬◊ 4 ◊R 2 ◊R 5,7 SymR 8,10 R
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
169
Ecco uno schema riassuntivo (il simbolo ⊃ significa che un insieme è un sottoinsieme di un altro): K ⊃ T ⊃ S4 ⊃ S5 Alcune Logiche Modali Normali
Teoremi di soglia ◊ P → ◊ P P → P P → P
S5 S4 T K
Esercizio: dimostrare a quale sottoinsieme (a quale LMN) appartiene il seguente teorema (dimostrato sopra): P → ◊P
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
170
La strategia classica (orthodox strategy) La strategia classica procede modificando le proprietà della relazione di accessibilità che lega diversi mondi possibili. Sappiamo dal Modulo 1 che, se l’insieme dei relata e la relazione non sono vuoti, abbiamo la seguente tavola di 15 possibili combinazioni di proprietà:
12 2 5 3 1 10 9 11 4 7 14 13 6 8 15
AAA ACA AAC ACC CAA CCA CAC CCC BAC BCC BBA BAB BBC BCB BBB
D ≠ {} A ≠ {} S5 S4 Br T
K
D
R
{a} {a,b} {a,b,c} {a,b,c} {a,b} {a,b} {a,b} {a,b} {a,b,c} {a,b,c} {a,b,c} {a,b} {a,b,c,d} {a,b,c} {a,b}
{<aa>} {<aa>, <ab>, <bb>} {<ab>, <ba>, <bc>, <cb>, <aa>, <bb>, <cc>} {<aa>, <ab>, <bb>, <bc>, <cc>} {<aa>} {<aa>, <ab>} {<aa>, <ab>, <ba>} {<aa>, <ab>} {<ab>, <ba>, <bc>, <cb>, <ac>, <ca>} {<ba>, <ab>, <ac>, <bc>} {<ab>, <bc>, <ac>} {<ab>, <ba>} {<bc>, <ac>, <bd>} {<ab>, <ba>, <ac>} {<ab>}
La colonna 1 riporta l’ordine in cui le relazioni appaiono nel modulo 1. La colonna 2 è ordinata per forza logica (quando possibile) e non alfabeticamente. Si ricordi che la colonna 2 deve essere interpretata secondo la seguente tavola: Riflessiva Si A No B Dipende (a volte si a volte no) C
Simmetrica A B C
Transitiva A B C
Ad esempio: nella prima riga, AAA significa che la relazione è riflessiva (A nella prima posizione), simmetrica (A nella seconda posizione) e transitiva (A nella terza posizione), cioè si tratta di una equivalenza.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
171
Ciascuna riga rappresenta una possibile logica modale normale. Nel caso delle LMN già viste abbiamo: K = 11 T=3 S4 = 5 S5 = 12 Si noti come l’analisi della natura della relazione di accessibilità sia molto più precisa. Ad esempio, sappiamo ora che una logica con A = ABB non è in realtà logicamente possibile. L’universo dei mondi possibili con le rispettive relazioni di accessibilità genera una gerarchia che contiene dei “buchi”. Vediamo le nostre 4 logiche alla luce della nuova strategia. Se A è riflessiva, cioè Refl(A), la nuova regola di derivazione Refl è: | ωAω per qualsiasi ω in questo ramo
Quindi la definizione di T sarà: T = XI ∪ {◊R, R, Refl} Si noti l’aspetto interessante per cui in realtà T non può essere riflessiva e non essere anche perlomeno non-simmetrica e non-transitiva. Vediamo di nuovo il teorema di soglia: P → P. 1. 2. 3. 4. 5.
¬ ( P → P) P ¬P nAn P
(n) (n) (n) (n)
teorema negato 1 ¬→ 1 ¬→ Refl 2,4 R
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
172
Se A è transitiva, cioè Trans(A), la nuova regola di derivazione Trans è: ωAυ υAτ | ωAτ Quindi la definizione di S4 sarà: S4 = XI ∪ {◊R, R, Refl, Trans} Esercizio: fare il test con il teorema di soglia: P → P. Si noti l’aspetto interessante per cui in realtà S4 non può essere riflessiva e transitiva e non essere anche perlomeno non-simmetrica. In fine, se A è simmetrica, cioè Sym(A), la nuova regola di derivazione Sym è: ωAυ | υAω Quindi la definizione di S5 sarà: S5 = XI ∪ {◊R, R, Refl, Trans, Sym} Esercizio: fare il test con il teorema di soglia: ◊P → ◊P. Si noti l’aspetto interessante per cui in realtà S4 non può essere riflessiva e transitiva e non essere anche perlomeno non-simmetrica.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
173
Si noti ora la presenza di una nuova LMN, la Br. Br è semplicemente definita dall’assenza della transitività di A: Br = XI ∪ {◊R, R, Refl, Sym} Br è un ottimo esempio di logica costruita a partire dalla conoscenza delle possibili combinazioni delle proprietà della relazione di accessibilità. Il suo teorema di soglia è: P → ◊ P, valido in Br ma non in S4. Mappa delle LMN viste fino ad ora:
Br
K
T
S5
S4
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
174
Modelli controfattuali (controesempi) per le Logiche Modali Normali Anche in questo caso possiamo adattare quanto già appreso nel calcolo proposizionale e nell’analisi dei modelli controfattuali per S5. In generale, abbiamo visto che un sistema di mondi possibili {n 1...n k} è un modello controfattuale (un controesempio che dimostra l’incorrettezza) di un sequente (cioè l’invalidità di un teorema o di una inferenza) ϕ in un logica modale normale Σ sse si può dimostrare in Σ che ϕ è falsa in almeno uno dei mondi possibili nx ∈ {n1...nk}. Controesempio in K. Consideriamo il seguente teorema di soglia: P → P. Il suo tableau in K è: 1. 2. 3.
¬ ( P → P) P ¬P (resta aperto)
(n) (n) (n)
teorema negato 1 ¬→ 1 ¬→
Dunque il sistema di mondi possibili costituito da {n} è già un controesempio. Possiamo analizzarlo in questo modo: P(n) F dalla linea 3 V dalla linea 2 P (n) ( P → P) (n) F Si noti che in una LMN in cui la relazione di accessibilità non è neppure riflessiva, cioè in K, qualsiasi proposizione qualificata come necessariamente vera è vera in n. Questo dovrebbe ricordare l’analoga caratteristica del quantificatore universale nella logica dei predicati, secondo cui una formula quantificata universalmente è sempre vera se nessun elemento soddisfa l’antecedente del condizionale. Ad esempio: ∀x (Fx → Gx) è vera se non esistono x che sono F o se il dominio è vuoto. In logica modale il principio è: ϕ(ω) = V ⇔ ∀υ (ωAυ ⇒ ϕ(υ) = V)
Chiaramente, se non si da il caso che ωAυ, il principio è soddisfatto.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
175
Consideriamo un altro esempio. La seguente formula è falsa in K: (◊P ∧ ◊Q) → ◊(P ∧ Q). Per confermalo, vediamone il tableau: 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
teorema negato ¬ ((◊P ∧ ◊Q) → ◊(P ∧ Q)) (n) (◊P ∧ ◊Q) (n) 1, ¬→ (n) 1, ¬→ ¬ ◊ (P ∧ Q) ¬ (P ∧ Q) (n) 3, ¬◊ ◊P (n) 2, ∧ ◊Q (n) 2, ∧ nAk P (k) 5,7 ◊R nAl Q (l) 6,9 ◊R ¬ (P ∧ Q) (k) 4, R ¬ (P ∧ Q) (l) 4, R ____________|_______________ ¬P(k) ¬Q(k) 11, ¬∧ ________________________|_____________ ¬ P (l) ¬Q(l) (resta aperto)
12, ¬∧
Il sistema che rappresenta il modello controfattuale è costituito dall’insieme dei mondi possibili {n, k, l} in cui n ha accesso a k e a l e nessuno dei mondi ha accesso a se stesso. In questo caso il principio in questione è: ◊ϕ(ω) = V ⇔ ∃υ (ωAυ & ϕ(υ) = V)
(Notare l’uso di & come ∧ metateorico). Se ω non ha accesso ad alcun altro mondo υ, allora ◊ϕ(ω) è falsa. Questo dovrebbe ricordare l’analoga caratteristica del quantificatore esistenziale nella logica dei predicati, secondo cui una formula quantificata esistenzialmente è sempre vera se e solo se entrambe le componenti congiunte sono vere. Ad esempio: ∃x (Fx ∧ Gx) è vera se non esiste perlomeno una x che soddisfa sia F sia G.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
176
Il risultato è che abbiamo un legame teorico molto stretto tra due famiglie di concetti: {∀, →, } e {∃, ∧, ◊}. Torniamo al precedente esempio. Mappiamo prima i valori di P e Q nei vari mondi derivandoli dal ramo aperto del tableau, procedendo come al solito a ritroso:
P Q
n k l V F F V
Aggiungiamo le relazioni di accessibilità tra di essi: nAk n k P V Q F
nAl l F V
Analizziamo quindi i valori di verità delle formule complesse e modalmente qualificate: nAk nAl n k l P V F Q F V F F P∧Q F ◊ (P ∧ Q) V ◊P V ◊Q V (◊P ∧ ◊Q) (◊P ∧ ◊Q) → ◊(P ∧ Q) F L’ultima riga della tavola è quanto volevamo dimostrare. Controesempio per T Il modo standard di procedere è dunque quello di svolgere il tableau, scoprire se la formula è falsa, individuare in questo caso il ramo o i rami aperti, attribuire i valori di verità adeguati alle formule atomiche in quel ramo, e ricostruire prima le formule più complesse e infine la formula originale mostrando che essa è in effetti falsa nell’interpretazione così elaborata. Ma c’è un modo più economico di ottenere lo Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
177
stesso risultato, un modo utile quando i mondi possibili sono molti. Si procede in questo caso a partire dalla formula stessa (come nel caso del calcolo proposizionale), individuando il modello sufficiente a renderla falsa. Vediamo il seguente esempio: ( ◊P → ◊ P) è falsa in T. Questo si può dimostrare attraverso il seguente tableau: 1. ¬ ( ◊P → ◊ P) (n) teorema negato ◊P (n) 1, ¬→ 2. 3. ¬◊ P (n) 1, ¬→ ¬ P (n) 3, ¬◊ 4. ________________________________________ Fin qui si può usare K 5. ◊P (n) 2, T 6. ¬ P (n) 4, T ◊¬P (n) 6, ¬ 7. 8. nAk 9. ¬P (k) 7,8 ◊R ◊P (k) 2,8 R 10. 11. ¬ P (k) 4,8 R 12. ◊¬P (k) 11, ¬ 13. kAl 14. ¬P (l) 12,13 ◊R 15. kAj 16. P (j) 10, ◊R 17. nAi 18. P (i) 5, ◊R 19. ◊P (i) 2,15 R (i) 4,15 R 20. ¬ P 21. ◊¬P (i) 18, ¬ 22. iAm 23. ¬P (m) 21, ◊R 24. iAx 25. P (x) 19, ◊R (resta aperto) Il tableau resta aperto. Il controesempio andrebbe ora costruito con 6 mondi possibili e altrettante relazioni di accessibilità: {n, k, l, j, i, m, x} e {nAk, kAl, kAj, nAi, iAm, iAx}. Se invece focalizziamo l’attenzione sulla formula di partenza possiamo procedere in modo più economico. Vogliamo ottenere: ◊P → ◊ P (n) = F Quindi vogliamo ottenere: ◊P(n) = V e ◊ P(n) = F
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
178
n ◊P V ◊ P F Ricordiamoci che in T tutti i mondi hanno la proprietà riflessiva ωAω. Ora una formula ϕ(ω) è vera sse ϕ è vera in tutti i mondi possibili accessibili a partire da ω, quindi, se prendiamo in considerazione solo la prima formula di accessibilità nAk abbiamo: nAk nAn kAk n k ◊P V ◊ P F V V ◊P Ma ◊ϕ(ω) è vera sse è vera in almeno un mondo possibile υ accessibile a partire da ω. E siccome sappiamo dal tableau che P(k) = F, allora P(n) = V: nAk nAn kAk n k ◊P V ◊ P F V V ◊P P V F Dal che segue che la formula P deve essere falsa sia in n sia in k: nAk nAn kAk N K ◊P V ◊ P F V V ◊P P V F F P F Il manuale fornisce una diversa analisi che discuteremo in classe.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
179
Modalità finite Si tratta solo di ricordare che in molti casi stringhe contenenti molti operatori modali di fatto sono molto ridondanti. La cosa interessante è che tanto più è potente una LMN tanto più la ridondanza è eliminabile. Due casi interessanti sono S4 e S5. Se si calcola anche ϕ come se fosse una modalità zero, abbiamo: S4
contiene 14 modalità: ϕ, ϕ, ◊ϕ, ◊ϕ, ◊ ϕ, ◊ ϕ, ◊ ◊ϕ, ¬ϕ, ¬ ϕ, ¬◊ϕ, ¬ ◊ϕ, ¬ ◊ ϕ, ¬ ◊ ϕ, ¬◊ ◊ϕ,
S5
contiene 6 modalità:
ϕ, ϕ, ◊ϕ, ¬ϕ, ¬ ϕ, ¬◊ϕ
Dunque in S5 abbiamo la regola generale che dice che, dato un numero z di operatori modali che precedono una formula ϕ, possiamo cancellarli tutti mantenendo solo l’ultimo. Ad esempio: ◊ ◊◊ ◊ϕ è equivalente a ◊ϕ. Per calcolare le modalità ridondanti per le altre logiche è sufficiente utilizzare il sistema dei tableau, come nel caso dei vari insiemi di connettivi.
Le LMN non-riflessive Le LMN non-riflessive si ottengono dalle LMN già viste eliminando la riflessività a favore della non-riflessività:
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
180
R D ≠ {} D A ≠ {} 12 AAA {a} {<aa>} S5 2 ACA {a,b} {<aa>, <ab>, <bb>} S4 5 AAC {a,b,c} {<ab>, <ba>, <bc>, <cb>, <aa>, <bb>, <cc>} Br 3 ACC {a,b,c} {<aa>, <ab>, <bb>, <bc>, <cc>} T CAA + S D5 CAC + S D4 CCA + S DB CCC + S DT logiche modali normali “seriali” ∀ω∃υ(ωAυ) 1 CAA K5 {a,b} {<aa>} 10 CCA K4 {a,b} {<aa>, <ab>} 9 CAC KB {a,b} {<aa>, <ab>, <ba>} 11 CCC K {a,b} {<aa>, <ab>} 4 BAC {a,b,c} {<ab>, <ba>, <bc>, <cb>, <ac>, <ca>} 7 BCC {a,b,c} {<ba>, <ab>, <ac>, <bc>} 14 BBA {a,b,c} {<ab>, <bc>, <ac>} 13 BAB {a,b} {<ab>, <ba>} 6 BBC {a,b,c, {<bc>, <ac>, <bd>} d} 8 BCB {a,b,c} {<ab>, <ba>, <ac>} 15 BBB {a,b} {<ab>}
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
181
Queste sono le logiche KB, K4 e K5. In queste logiche non è possibile provare una formula importante, cioè ( P → ◊P), che rappresenta un nuovo teorema di soglia. Vediamolo. Il tableau è: 1. 2. 3. 4.
¬ ( P → ◊P) P ¬ ◊P ¬P (resta aperto)
(n) (n) (n) (n)
teorema negato 1, ¬→ 1, ¬→ 3, ¬◊
Tuttavia, se queste logiche si potenziano con la proprietà della serialità, il precedente teorema può essere provato e otteniamo DT, DB, D4, D5. La serialità si definisce così: ∀ω∃υ(ωAυ), cioè ogni mondo possibile vede perlomeno un mondo possibile (possibilmente ma non necessariamente se stesso). Tradotto in regola di derivazione secondo la strategia di Hintikka, abbiamo: ( D)
ϕ (ω) | ◊ϕ (ω)
Con questa nuova regola abbiamo: 1. 2. 3. 4. 5. 6.
¬ ( P → ◊P) P ¬ ◊P ¬P ◊¬P ¬ P
(n) (n) (n) (n) (n) (n)
teorema negato 1, ¬→ 1, ¬→ 3, ¬◊ 4, D 5, ◊¬
Alternativamente, si può introdurre la serialità nel modo ortodosso, qualificando la nuova proprietà di Serial(A) così: (Serial) ϕ (ω)
ωAυ | ϕ (υ)
dove υ è un nuovo mondo possibile nel tableau.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
182
Br
S5
S4
T
DB
D5
D4
DT
KB
K
K5
K4
Schema riassuntivo delle interrelazioni tra alcune delle più importanti logiche modali normali. Il teorema di soglia è in questo caso un teorema provabile da tutte le logiche “seriali” ma non da quelle “sub-seriali”: ( P → ◊P). Questo non è valido in K ma è già valido in DT.
Modulo I: Introduzione alla Logica Matematica, Dispense, Versione 7.1 © Luciano Floridi
183