You are on page 1of 233

Logica Matematica

Corso A
Corso di Laurea in Informatica
Anno 2005-06

Indice

Indice

Introduzione

Dal linguaggio naturale alla logica


2.1 Predicati e relazioni
2.1.1 Termini
2.2 Connettivi
2.2.1 Esercizi
2.3 Variabili
2.4 Quantificatori
2.5 Esempi
2.5.1 dal linguaggio naturale
2.5.2 dalla matematica
2.6 Esercizi

3
3
5
6
10
12
15
18
18
22
27

Logica proposizionale
3.1 Sintassi
3.1.1 Il linguaggio proposizionale
3.1.2 Analisi sintattica
3.1.3 Esercizi
3.2 Semantica
3.2.1 Tavole di verit`a
3.2.2 Esercizi
3.2.3 Validit`a e conseguenza
3.2.4 Esercizi
3.3 Sull0 implicazione

28
28
29
31
39
41
42
44
45
50
52

Insiemi e algebre di Boole


4.1 Algebra degli insiemi

56
57

4.2

Algebre di Boole
4.2.1 Esercizi
4.3 Algebra delle proposizioni
4.4 Rapporti tra proposizioni e insiemi

67
70
71
76

Relazioni
5.1 Prodotto cartesiano
5.2 Relazioni
5.2.1 Esercizi
5.3 Relazioni d0 ordine
5.4 Relazioni di equivalenza
5.5 Funzioni

81
81
82
85
86
90
93

Forme normali
6.1 Definibilit`a dei connettivi
6.1.1 Esercizi
6.2 Forme normali disgiuntive
6.3 Forme normali congiuntive
6.4 Esercizi

97
97
99
100
101
106

Alberi di refutazione
7.1 Il metodo
7.2 Correttezza e completezza
7.3 Forme normali
7.4 Esercizi

108
108
115
119
120

Linguaggi predicativi

122

ii

8.1
8.2
8.3
8.4
8.5

Alfabeto
Termini e formule
Variabili libere e vincolate
Interpretazioni
Esercizi

124
124
128
131
134

Leggi logiche
9.1 Esercizi
9.2 Quantificatori e dimostrazioni

136
145
145

10

Sillogismi
10.1 Sillogismi categorici
10.2 Diagrammi di Venn

155
156
165

11

Alberi di refutazione
11.1 Regole per i quantificatori
11.1.1 Esercizi
11.2 Applicazione ai sillogismi
11.2.1 Esercizi

170
170
177
177
180

12

Il principio di induzione
12.1
I numeri naturali
12.2
Il principio di induzione
12.3
L0 induzione empirica
12.4
Il ragionamento induttivo
12.5
Esercizi
12.6
Definizioni ricorsive
12.6.1 Esercizi
12.7
Il principio del minimo
12.8
Varianti dell0 induzione
12.9
Errori e paradossi
12.10 Definizioni induttive
12.10.1 Esercizi

181
181
185
191
195
197
200
206
207
214
219
221
229

iii

Introduzione

Lo scopo di questo corso `e quello di rendere familiari con le forme di ragionamento tipiche degli argomenti matematici; in informatica in particolare interessano soprattutto quelli che mirano a trovare la soluzione di un problema,
a dimostrare che `e una soluzione e a presentarla come un algoritmo.
Un algoritmo `e un insieme articolato e connesso di istruzioni per risolvere
un problema; gli algoritmi non sono scritti in un linguaggio di programmazione, ma inizialmente nel linguaggio matematico o addirittura in quello
naturale, e in questo devono essere formulati e riconosciuti tali, prima che la
loro descrizione guidi alla traduzione nei relativi programmi.
La maggior parte degli algoritmi che sostengono le prestazioni dei calcolatori non sono numerici ma riguardano manipolazioni di simboli (ad esempio
lordinamento di una lista, o la fusione di due liste in una), quindi la prima
consapevolezza - e competenza - da acquisire `e che il linguaggio matematico
non `e solo quello dei numeri, ma abbraccia qualsiasi argomento che si possa
riferire ad elementi strutturati.
I ragionamenti relativi devono avere ed hanno lo stesso rigore di quelli
numerici, e si svolgono con lausilio di un simbolismo appropriato, che `e
quello della logica matematica (= logica formale moderna).
In vista della precisione richiesta, che non ammette rilassamenti ne licenze, `e bene realizzare che ogni ragionamento si pu`o rappresentare in forme
standardizzate di passaggi, e imparare a farlo, usando regole logiche e la
propriet`a fondamentale dei numeri naturali che `e il principio di induzione.
Il corso `e lequivalente di quelli che nelle universit`a americane si chiamano
di Introduction to Proofs, che contengono in genere anche elementi di matematica discreta (strutture finite, combinatoria). Tali corsi sono concepiti
come ponte tra la scuola secondaria e il college, rivolti a studenti che hanno
appreso la matematica come un insieme di ricette e di calcoli, senza aver mai
imparato a seguire e tanto meno a fare una dimostrazione. Soprattutto non
hanno coscienza del fatto che le dimostrazioni sono presenti ovunque, `
a la
Moli`ere, in particolare ogni volta che si stabilisce in modo giusto e preciso
cosa fa e cosa deve fare un algoritmo.
Nella scuola italiana qualche esperienza con le dimostrazioni si acquisisce
con la geometria, ma limitatamente alle sue costruzioni, nulla relativamente
allaritmetica o ad altre strutture simboliche e senza approfondire le ragioni di tale forma di ragionamento tipicamente matematica. Ne tale problema
sar`a indagato in questo corso introduttivo: lo studio delle dimostrazioni e lo1

biettivo della familiarit`a con esse sono perseguiti qui non in vista di spiegare
il senso dellimpostazione deduttiva delle teorie, ma solo per abituare a vedere le connessioni tra i vari risultati, la loro mutua dipendenza e derivabilit`a,
il che aiuta anche a ricordarli meglio.
Capire le dimostrazioni presuppone comunque la comprensione degli argomenti trattati, e costituisce quindi unoccasione di ripasso di nozioni elementari di aritmetica che sono alla base del pensiero informatico.
Nel testo, il segno !!! a margine segnala che si deve prestare particolare
attenzione.
!!!
Gli esercizi sono di due tipi; alcuni ripetitivi, per soddisfare le richieste di
studenti che vogliono tanti esempi sui quali applicare le tecniche o verificare
i concetti imparati; gli altri servono per approfondimento e non sono meno
importanti, anzi; tutti sono parte del programma.
I riferimenti in nota del tipo Horstmann, p. 186 rimandano al testo del
corso di Programmazione C. S. Horstmann, Java 2 .
Le parti scritte in corpo minore sono letture con informazioni integrative.
Il segno 2 `e usato per indicare la fine di una dimostrazione, al posto del
tradizionale QED.

Dal linguaggio naturale alla logica

La prima competenza che bisogna acquisire `e quella della formalizzazione,


ovvero della traduzione di frasi della lingua naturale o del gergo matematico
- che `e un misto di formule e di parole - in espressioni di un linguaggio
semplificato, schematico e dalla sintassi precisa.
Le frasi che si prendono in cosiderazione formano un sottoinsieme della
totalit`a delle frasi. Non si considerano espressioni di interrogazione, esclamazione o comando, ma solo frasi dichiarative. Ci si riduce, come primo livello di
semplificazione, a frasi elementari che esprimono fatti, e a loro combinazioni
mediante particelle logiche.
Non si considerano inoltre frasi con indicatori di tempo e luogo (tempi
dei verbi, avverbi di tempo, luogo e modo).
La semplificazione `e guidata dalla volont`a di restringersi ad espressioni
matematiche o comunque preparate alla loro traduzione in programmi (nei
linguaggi imperativi si usano comandi, ma questi sono rivolti alla macchina,
non costituiscono le frasi da elaborare).
Si devono evitare ambiguit`a e ridondanze, non per sfizio ma con lobiettivo
di capire e far emergere la struttura logica. Una frase come
La vecchia porta la sbarra
`e ambigua perche non `e chiara la sua struttura sintattica: se vecchia sia un
aggettivo sostantivato o un aggettivo, se porta e sbarra siano sostantivi
(nomi) o forme verbali.
Una frase come
Giovanni vede Mario che `e malato e piange
e ambigua per ragioni di scansione, occorrono delimitatori come le virgole.

2.1

Predicati e relazioni

Le frasi elementari nel linguaggio naturale sono di diverso tipo, ma in tutte si


pu`o individuare un soggetto, un verbo e un complemento (eventualmente pi`
u
soggetti e pi`
u complementi, o nessuno). I verbi possono essere intransitivi o
transitivi, ed esprimere stati o azioni.

Nella terminologia logica si introducono predicati (o propriet`a) e relazioni; i primi corrispondono ai verbi intransitivi e alla copula essere, le
seconde ai verbi transitivi.
Si dice che una propriet`a `e goduta da un soggetto, o che un soggetto ha
una determinata propriet`a o che soddisfa un predicato. Si dice anche che
una propriet`a `e predicata di un soggetto, espressione dalla quale si vede il
collegamento tra i due termini.
Con la rosa `e profumata o la rosa profuma si esprime il fatto che
la rosa ha una propriet`a, quella di essere profumata. La frase la rosa ha
profumo invece usa il verbo avere, che ha un soggetto e un complemento
oggetto; in logica si dice che sussiste una relazione tra la rosa e il profumo, o
che rosa e profumo stanno in una relazione, che `e la relazione di possesso.
Tutti i verbi si potrebbero standardizzare nella forma della attribuzione
di uno stato a uno o pi`
u termini, e questo corrisponderebbe ad avere un solo verbo, la copula essere, nelle due versioni essere qualcosa per i verbi
intransitivi e essere nella relazione . . . con per i verbi transitivi. Questo
`e il motivo per cui nella trattazione formale successiva (cap. 8) si user`a la
dizione unica predicati per propriet`a e relazioni, distinguendo quelli a un
argomento (propriet`a) da quelli a pi`
u argomenti (relazioni). Il numero di argomenti `e il numero di entit`a a cui si applica il predicato. Ma informalmente
si preferisce distinguere tra predicati in senso stretto (a un solo argomento),
o predicati monadici, e relazioni (a pi`
u argomenti).
La frase Giovanni dorme pu`o diventare Giovanni ha la propriet`a di
stare dormendo (o Giovanni `e dormiente, Giovanni sta dormendo, Giovanni `e nello stato di sonno).
Giovanni possiede un Piaggio 50 diventa la relazione di possesso sussiste tra Giovanni e un Piaggio 50, o meglio come vedremo la relazione di possesso sussiste tra Giovanni e una cosa, e questa cosa `e un Piaggio 50; Giovanni ama Maria, cos` come Maria `e amata da Giovanni1 , vuol dire che
la relazione di amore sussiste tra Giovanni e Maria (ma non necessariamente
tra Maria e Giovanni, perche la relazione di amore non `e simmetrica).
Le frasi matematiche elementari, uguaglianze e disuguaglianze, `e uguale
a, `e minore di, rientrano in questa tipologia. Cos` quelle insiemistiche con
appartiene a, cio`e `e un elemento di.
1
La distinzione tra forma attiva e passiva `e inessenziale, salvo dal punto di vista
psicologico.

Alcune frasi possono essere rese sia mediante relazioni che mediante predicati; dipende da come si definiscono le relazioni e i predicati. In Giovanni
`e amico di Mario si pu`o considerare la propriet`a essere amico di Mario e
attribuirla a Giovanni, oppure la relazione essere amico di e affermare che
sussiste tra Giovanni e Mario.
Non si pu`o dire che una sia giusta e laltra no; dipende dal contesto; se
dopo la prima osservazione si vuole aggiungere che Giovanni piange perche
Mario `e malato, e bisogna quindi citare di nuovo Mario, si deve usare il
nome Mario e allora `e meglio la versione relazionale, perche in quella con il
predicato in nome Mario scompare, nella versione formalizzata, assorbito
dal simbolo per il predicato: essere amico di Mario in quanto predicato,
nellanalisi logica, `e una unit`a linguistica non scomponibile, anche se espressa
in italiano da una successione di parole tra le quali compare Mario.
Le relazioni a due argomenti, come quelle viste negli esempi, si chiamano
binarie. Le relazioni non sono solo binarie: il punto C giace tra A e B `e
un esempio di una relazione ternaria, o tra tre termini.
2.1.1

Termini

I soggetti o gli oggetti, pi`


u in generale i termini tra cui sussiste una relazione,
sono indicati da vari costrutti linguistici. Il pi`
u semplice `e il nome proprio,
come Giovanni e Maria. Gli altri sono le descrizioni e i nomi comuni.
In Maria ama il padre di Giovanni, padre di Giovanni `e una descrizione, ben precisa, di una persona. Analogamente il quadrato di 2 `e una
descrizione di un numero; entrambe le descrizioni sono ottenute applicando
una funzione2 , nel primo caso padre di nel secondo il quadrato di, a
descrizioni pi`
u semplici, che in questi esempi sono nomi. Si possono dare
descrizioni pi`
u complesse, come la madre del padre di Giovanni o meno
il quadrato di 2.
I nomi comuni richiedono una trattazione indiretta. Nella frase Giovanni
possiede un Piaggio 50, il Piaggio 50 di Giovanni `e uno di una categoria di
cose simili; Piaggio 50 non `e un nome proprio, ma un nome comune; `e
in effetti un predicato, ragione della versione sopra proposta per la frase,
che Giovanni possiede una cosa che ha la propriet`a di essere un Piaggio 50.
Questa frase non `e pi`
u tuttavia elementare, `e in effetti la congiunzione di due
frasi: Giovanni possiede una cosa e questa cosa `e un Piaggio 50.
2

Preciseremo in seguito cosa sono le funzioni dal punto di vista matematico.

Da questo esempio si vede la necessit`a di chiarire ancora almeno tre aspetti: come rendere cosa, come rendere la congiunzione delle due frasi, e come
rendere questa cosa, che nella seconda frase stabilisce un collegamento con
la prima.

2.2

Connettivi

Le particelle logiche della lingua italiana sono parole come e, oppure,


se e altre, che collegano frasi di senso compiuto. Nella lingua italiana
queste parole da una parte sono polivalenti e ambigue, hanno diversi sensi
- in generale discriminati dal contesto - e dallaltra si presentano in tante
versioni equivalenti.
La congiunzione e pu`o ad esempio essere resa da una virgola, da e
anche, da ma e ancora altre espressioni. Il senso avversativo di ma `e
uno degli aspetti che vengono lasciati cadere nel passaggio ad un linguaggio
formalizzato, in quanto esprime unaspettativa soggettiva. La congiunzione
`e resa anche da costrutti pi`
u complicati, come sia . . . sia: parto sia che
piova sia che faccia bel tempo significa se fa bel tempo parto, e se piove
parto, magari con laggiunta di un ugualmente che di nuovo esprime una
determinazione soggettiva.
La stessa congiunzione talvolta esprime qualcosa di pi`
u o di diverso dalla
semplice affermazione di entrambe le proposizioni congiunte; talvolta pu`o
significare e poi, come in si sposarono e vissero felici; talvolta significa
e quindi, come in si immerge una cartina di tornasole, e diventa rossa (se
questa frase `e intesa non come una descrizione di avvenimenti, nel qual caso
e significa e dopo, ma come come una caratterizzazione di particolari
sostanze).
La disgiunzione, o o oppure, talvolta ha un senso debole (uno o
laltro o tutte due), talvolta un senso esclusivo (uno o laltro ma non tutte
due). Laffermazione piove o c`e il sole `e compatibile con la situazione in
cui piove da una nuvola anche se c`e il sole. Il latino aveva due parole diverse
vel e aut, ma la distinzione non `e rimasta nelle lingue moderne. La differenza
qualche volta `e espressa dalla semplice ripetizione di o (o piove o c`e il
sole) ma pi`
u spesso dallenfasi della pronuncia; il tono e il contesto devono
essere tenuti presenti per capire il significato inteso. C`e voluto del tempo per
tornare a riconoscere due particelle diverse, e anche per accettare vel come
disgiunzione:

Alcuni dicono che per la verit`a di una disgiunzione si richiede


sempre che uno dei disgiunti sia falso, perche se entrambi fossero
veri non sarebbe una vera disgiunzione, come dice Boezio. Questo
per`o non mi piace. In realt`a io dico che se entrambe le parti di
una disgiunzione sono vere, lintera disgiunzione `e vera (Walter
Burleigh, De Puritate, XCI, 3-19, XIV sec .)
La disgiunzione in italiano talvolta `e resa con ovvero, ma questa parola
significa anche cio`e, vale a dire, cio`e una precisazione, non unalternativa.
La o si esprime anche con altrimenti come in Lasciate un messaggio,
altrimenti non sarete richiamati, solo apparentemente pi`
u ingiuntiva della
versione con la o (si vedano gli esercizi).
Qualche volta la stessa frase pu`o essere espressa sia con la e che con
la o. Si pu`o dire equivalentemente sia Tutti, bianchi o neri, hanno unanima, sia Tutti, bianchi e neri hanno unanima. Laffermazione mele e
pere sono frutti vuole anche dire che una cosa che sia una mela o una pera
`e un frutto.
La negazione di una frase si realizza in diversi modi, di solito con la
particella non, inserita per`o (o soppressa) in vari modi nella frase da negare,
con diversi costrutti che coinvolgono altre parole, in particolare i verbi. Da
piove a non piove, o non `e vero che piove; da qualche volta piove a
non piove mai; da piove sempre a qualche volta non piove; da non
ama nessuno a ama qualcuno, da `e bello a `e brutto, e cos` via. Per
negare non piove non si dice non non piove ma piove o non `e vero
che non piove.
Per mettere in evidenza propriet`a delle particelle logiche, che non dipendono dal significato delle frasi che connettono, negli esempi proposti useremo
dora in avanti le lettere A, B, . . . per indicare frasi imprecisate, e scriveremo:
A e B, A oppure B e simili.
La parola se `e unaltra particella dai molteplici sensi, e dalle molteplici
rese, ad esempio con B, se A, A solo se B, se A allora B, A implica !!!
B, A, quindi B - ma quindi ha anche un significato temporale, come
poi.
Quando si afferma se A allora B, A `e detta condizione sufficiente per
B, e B condizione necessaria per A. A `e condizione sufficiente per B e B
condizione necessaria per A sono altri modi di esprimere se A allora B.
Al se . . . allora sar`a dedicata una discussione speciale per la sua importanza rispetto allinferenza logica.
7

Spesso se . . . allora non `e presente in frasi che tuttavia esprimono quel


tipo di collegamento: un numero primo maggiore di 2 `e dispari significa se un numero `e primo e maggiore di 2 allora `e dispari. Torneremo
sullargomento.
In considerazione delle ambiguit`a e molteplicit`a di espressione messe in
luce, un primo passo `e quello di introdurre una sola versione fissa delle particelle logiche, sia come simboli che come significati; fatto questo tuttavia,
la competenza pi`
u importante consiste poi nel saper tradurre le frasi della
lingua naturale, disambiguandole quando necessario e possibile, e trovando
la versione formale corrispondente.
La precedente discussione non esaurisce certo la complessit`a della lingua,
ma `e stata proposta a titolo esemplificativo. Solo una costante (auto)analisi
delle varie forme espressive (leggi: tanti esercizi) aiuta a riconoscere le varie
insidie.
La standardizzazione `e necessaria per poter comunicare con le macchine;
ma prima di parlare alle macchine occorre parlare ad altre persone e a se
stessi per costruire gli algoritmi. Nellapprendere a formalizzare si deve anche
raffinare la propria logica naturale.
Tuttavia non esiste un elenco completo di quelle che nei linguaggi naturali
si riconoscono come particelle logiche. Non abbiamo menzionato ad esempio ne . . . ne, o a meno che3 . Qualche volta, parole che non sembrano
particelle logiche possono essere usate in questo modo, e lo si riconosce nella formalizzazione: quando `e di solito una determinazione temporale, ma
quando piove, prendo lombrello viene resa quasi necessariamente da se
piove, prendo lombrello.
Nellottica della formalizzazione, chiedere cosa significa quando piove,
prendo lombrello non `e altro che la richiesta di tradurre la frase in unaltra in cui compaia una delle particelle logiche riconosciute tali e scompaia
quando, se non `e tra quelle; cos` si vede a quale delle particelle note la
parola `e equivalente; ma non sempre `e evidente una possibile riduzione di
una frase ad unaltra, ne sempre una sola.
Esistono peraltro parole anche di difficile catalogazione, che sembrano particelle
3

Si noti luso della o nella nostra frase, di nuovo scambiabile con e: si voleva
dire che non abbiamo menzionato ne . . . ne e non abbiamo menzionato a meno che;
avremmo potuto dire che non abbiamo menzionato ne ne . . . ne ne a meno che, usando
proprio ne . . . ne; luso di o suggerisce unaltra versione equivalente: una particella
che sia ne . . . ne o a meno che non labbiamo menzionata.

logiche in quanto legano due frasi, ma hanno sfumature importanti che si perdono
nella formalizzazione: ad esempio siccome piove, prendo lombrello, o prendo
lombrello perche piove potrebbero essere espresse dallasserzione unica la pioggia
`e la causa del mio prendere lombrello, che coinvolge peraltro la delicata parola
causa; le frasi contengono tuttavia una determinazione temporale implicita (sta
piovendo), o anche una qualitativa (un riferimento forse a un particolare tipo di
pioggia - a dirotto) che non le rende del tutto equivalenti a quando piove, prendo
lombrello o a la pioggia `e la causa del mio prendere lombrello.
Esistono parimenti frasi che ne assommano diverse; la stessa siccome piove,
prendo lombrello invece che una frase pu`o essere considerata un argomento, poiche in essa si afferma un fatto, che piove, oltre a un legame condizionale. Potrebbe
corrispondere ad un esempio di modus ponens (si vedr`a a suo tempo): Se piove,
prendo lombrello. Piove. Quindi prendo lombrello.

Useremo simboli speciali per rappresentare alcune particelle logiche che


sembrano di uso pi`
u comune, almeno nei discorsi meno sofisticati. Per queste
si potrebbero usare parole della lingua italiana - o comunque di una lingua
naturale - fissando per convenzione in modo rigido il loro significato, come
si fa ad esempio quando per la congiunzione si usa and, in informatica.
Quando si usano and e simili, si vuole che il linguaggio sia friendly perche
ci si deve concentrare su altro; noi invece vogliamo concentrarci proprio su
quelle parole, per cui sono meglio simboli nuovi, insoliti, che sorprendano.
Useremo per le particelle logiche i simboli:

per
per
per
per
per
per

la negazione
la congiunzione
la disgiunzione inclusiva
la disgiunzione esclusiva
il condizionale se . . . allora
il bicondizionale se e solo se

senza escluderne a priori altri, e li chiameremo connettivi proposizionali. La


negazione `e un connettivo unario (cio`e agisce su una proposizione), gli altri
indicati sono connettivi binari (cio`e connettono due proposizioni).
La scelta di simboli artificiali `e pi`
u vantaggiosa anche perche, procedendo, questi simboli non saranno soltanto abbreviazioni, ma insieme ad altri
diventeranno una struttura che `e essa stessa, se si vuole, oggetto di una teoria
matematica, con suoi problemi specifici.
Ad esempio una prima questione, comprensibile anche solo sulla base di
quanto detto finora, `e se le particelle sopra scelte sono anche fondamentali,
9

e in che senso, o se sono sufficienti, o quante ce ne potrebbero essere. Unaltra riguarda lequivalenza, affermata per alcuni esempi precedenti, tra frasi
diverse espresse con particelle diverse.
Queste strutture forniranno inoltre un ricco campo di scrittura di algoritmi non numerici ma simbolici, applicati a liste o alberi o altre strutture di
dati.
Il significato delle particelle logiche `e lo stesso a prescindere dal lessico, e
per studiarlo occorre non fissarsi su un linguaggio particolare; la trattazione
deve valere per tutti, quindi useremo lo stesso artificio matematico di usare lettere per indicare entit`a non precisate, che nelle applicazioni dovranno
essere asserzioni sensate.
La formalizzazione del linguaggio naturale non `e qualcosa di meccanico e di
compiuto per lintera gamma delle potenzialit`a espressive. Esistono argomenti
controversi e ancora oggetto di discussioni e di proposte per una formalizzazione
soddisfacente - che rientrano in studi pi`
u avanzati.
La restrizione alle frasi dichiarative `e uno di questi, dal momento che i comandi
ad esempio hanno un ruolo apparentemente importante nella programmazione.
Abbiamo visto qualche difficolt`a con siccome e il suo significato causale. Allo
stesso modo `e discutibile se `e necessario che . . . sia da considerare una particella
logica: `e necessario che al giorno segua la notte (o al giorno segue necessariamente la notte) non sembra equivalente a al giorno segue la notte e neanche
a al giorno segue sempre la notte, che `e equivalente alla precedente se segue,
privo di determinazioni temporali, assorbe il sempre; anche necessariamente 2
+ 2 = 4 forse dice di pi`
u di 2 + 2 = 4, ma non `e del tutto chiaro che cosa.
Ancora, `e possibile sostenere che il costrutto `e vero che . . . `e pleonastico,
in quanto `e vero che piove `e equivalente a piove, ma `e altrettanto possibile
sostenere che non `e possibile farne a meno.
Altre locuzioni della lingua naturale non formalizzabili le vedremo in seguito.

2.2.1

Esercizi

1. Esaminare i seguenti discorsi (e altri tratti a scelta da fonti letterarie


o giornalistiche) ed individuare le particelle logiche e le frasi elementari (racchiudendole tra parentesi e se necessario riformulando in modo
equivalente i discorsi e le loro frasi).
Se non `e possibile prevedere tutte le azioni delle persone allora o luniverso non `e deterministico o le persone non sono perfettamente razionali. Chi sostiene il determinismo deve dun10

que sostenere che se le azioni delle persone sono prevedibili


allora le persone sono perfettamente razionali.
Svolgimento. Introdurre abbreviazioni per le frasi che si ripetono, in
modo da arrivare, nel caso del primo brano, a
Se non Prev allora o non Det o non Raz. Chi sostiene Det
allora deve sostenere che se Prev allora Raz
e ancora, togliendo il chi sostiene, a
Se non Prev allora o non Det o non Raz. Se Det allora si ha
che se Prev allora Raz.
Le abbreviazioni aprono la strada alluso delle lettere per indicare proposizioni; quando si saranno viste alcune leggi logiche, sar`a si potr`a tornare a esprimere un giudizio sulla correttezza o meno dellargomento,
che per ora non interessa.
Altri esercizi:
Se non `e possibile prevedere tutte le azioni delle persone allora o luniverso non `e deterministico o le persone non sono perfettamente razionali. Chi sostiene il determinismo deve dunque sostenere che se le azioni delle persone non sono
prevedibili allora le persone non sono perfettamente razionali.
Se le persone sono interamente razionali, allora o tutte le
azioni di una persona possono essere previste in anticipo o
luniverso `e essenzialmente deterministico. Non tutte le azioni di una persona possono essere previste in anticipo. Dunque, se luniverso non `e essenzialmente deterministico, allora
le persone non sono interamente razionali.
Il numero di queste e di tutte le altre frasi supera il numero
dei neuroni del cervello, per cui, anche ammettendo - che non
`e - che ogni frase richieda un neurone o una combinazione di
neuroni per la memorizzazione, non si pu`o pensare che tutte
11

le frasi della competenza linguistica siano immagazzinate in


memoria.
2. Con il costrutto se . . . allora e le frasi dico x e x `e una verit`a
esprimere: dico tutta la verit`a e solo la verit`a.
3. Scrivere con le giuste particelle logiche:
a) non c`e fumo senza arrosto
b) fumo vuol dire fuoco.
4. Come si pu`o esprimere (in almeno due modi) Lasciate un messaggio,
o non sarete richiamati usando il condizionale?
5. Trasformare la frase
Gli studenti che hanno sostenuto la prima o la seconda prova
di esonero devono . . .
nella congiunzione di due frasi.
6. Trovare altre particelle logiche della lingua italiana, oltre a quelle menzionate nel testo.
7. Discutere se cio`e `e una particella logica o no, e a quali altre `e
eventualmente equivalente, in diversi contesti.
8. Cosa significa per voi necessariamente 2 + 2 = 4?

2.3

Variabili

Gli esempi dellesercizio 1 mostrano che le semplificazioni sono troppo drastiche se si vogliono usare solo i connettivi tra frasi complete; quelle collegate
restano complesse e non analizzate. Torniamo perci`o a quanto lasciato in
sospeso, a come rappresentare una cosa e questa cosa. Nella grammatica, un ruolo fondamentale `e svolto dai pronomi, che si presentano in grande
variet`a, come uno, chiunque, ogni, qualche e simili.
I pronomi servono a formare nuove frasi collegandone alcune che hanno
un riferimento in comune; nella frase se uno ha un amico, `e fortunato si
individuano due proposizioni componenti uno ha un amico e `e fortunato.
12

La seconda frase non presenta il soggetto, ma sintende che `e lo stesso della


prima; si pu`o ripetere (uno `e fortunato) oppure pi`
u spesso, in altri casi,
si deve precisare, con un indicatore che faccia capire esplicitamente che il
soggetto `e lo stesso (ad esempio egli, costui e simili).
Nella seconda di due frasi collegate, il soggetto della prima pu`o essere
presente come oggetto, ad esempio in se uno `e generoso, tutti ne dicono
bene, dove ne significa di lui.
Anche per questo tipo di parti del discorso, si hanno molte versioni equivalenti, ciascuna con i suoi vantaggi e la sua convenienza, ad esempio chiunque
abbia un amico `e fortunato, coloro che hanno un amico sono fortunati;
talvolta addirittura basta ununica frase indecomponibile, come i generosi
sono lodati per coloro che sono generosi sono lodati4 .
` necessario comunque mettere in rilievo il fatto che entrambe le frasi
E
hanno un riferimento comune; se si formalizza la frase se uno ha un amico,
uno `e fortunato introducendo una lettera A per la prima e una lettera B
per la seconda, si ottiene A B che non mostra la struttura fine della frase,
e non permette quindi di indagare se sia vera o no.
Il simbolismo deve essere arricchito. Luso dei pronomi `e standardizzato
per mezzo di simboli che si chiamano variabili: x, y, . . .. Il simbolo x sta per
una cosa, uno, una persona se il discorso si riferisce a esseri umani,
un numero se il discorso si riferisce ai numeri e cos` via.
La variabile `e creduta un elemento alieno del linguaggio, che compare solo
nei simbolismi matematici, ma non `e cos`.
Se uno ha un amico, `e fortunato equivale nella semiformalizzazione se
x ha un amico, x `e fortunato.
Avendo introdotto questi simboli speciali, come peraltro abbiamo gi`a
fatto con i connettivi, tanto vale utilizzare anche altre schematizzazioni e
completare il distacco del lessico naturale.
Introduciamo perci`o simboli per designare predicati, e altri per costruire
termini, che corrispondono alle descrizioni.
Useremo preferibilmente
le lettere P , Q, R, . . .
le lettere f , g, . . .

per predicati e relazioni


per funzioni

4
La possibilit`
a di questa espressione `e allorigine di una diversa analisi del linguaggio,
che ha portato alla prima logica formale della storia, nellopera di Aristotele, come vedremo
trattando i sillogismi.

13

le lettere a, b, c, . . .
le lettere x, y, . . .

per costanti (nomi propri)


per variabili, con o senza indici.

La struttura di una frase del tipo Giovanni dorme `e rappresentata da


dorme(Giovanni), o
P (a).
Giovanni ama Maria da ama(Giovanni, Maria), o
R(a, b),
Pi`
u in generale, i termini a cui si applica la relazione non sono necessariamente costanti, o nomi, ma anche descrizioni, come Il padre di Giovanni
ama Maria, che diventa
R(f (a), b),
o descrizioni incomplete, cio`e contenenti variabili, come
Uno dorme:

P (x).

Tuttavia la rappresentazione grafica scelta per i simboli non `e essenziale,


per comodit`a di traduzione si possono anche usare altre lettere, come le
iniziali delle parole italiane (A per essere amici), o addirittura complessi
di lettere o parole intere, magari in caratteri particolari, come amici(x, y).
Anche la particolare forma R(a, b) non `e rigida, talvolta pu`o essere sostituita da aRb. Questo succede in particolare con i simboli per tradizionali
relazioni matematiche che hanno adottato tale notazione: 1 < x, x = y.
Possiamo ora volgerci alla formalizzazione della frase Giovanni possiede
un Piaggio 50: con una costante g per Giovanni, un simbolo di relazione R
per possedere, un simbolo di predicato P per Piaggio 50, si pu`o provare
a scrivere
R(g, x) P (x),
ma non `e sufficiente.

14

2.4

Quantificatori

Luso delle variabili o della loro versione con pronomi presenta aspetti delicati per trattare i quali il formalismo finora introdotto non `e abbastanza
discriminante.
Se si dice A Giovanni piace il Piaggio 50 si intende che a Giovanni
piacciono tutti i Piaggio 50, anche se probabilmente desidera averne solo
uno; se si usa R(y, x) per la relazione a y piace x la frase diventerebbe
uguale alla precedente, pur avendo un altro senso (in particolare pu`o essere
vera, mentre la precedente falsa).
Nella frase se uno ha un amico, `e fortunato ci sono due tipi di uno,
il primo uno `e il soggetto, presente tacitamente anche come soggetto di
`e fortunato, e il secondo `e lun di ha un amico5 . Il primo uno
significa chi, nel senso di chiunque, il secondo significa qualche. La
stessa parola uno, e le corrispondenti variabili x e y possono cio`e avere sia
un senso universale che uno particolare.
Anche se il senso della frase `e ovvio, per chiarezza `e meglio dire chiunque
abbia qualche amico `e fortunato. Cos` si potrebbe dire A Giovanni piace
un qualunque Piaggio 50 o A Giovanni piacciono tutti i Piaggio 50 o A
Giovanni piacciono i Piaggio 50. La variet`a di costrutti linguistici disponibili nelle lingue naturali ha la funzione di evitare possibili ambiguit`a in altre
frasi di non immediata decifrazione.
Un esempio di frase ambigua, se presa isolatamente, `e uno che segue il
corso di Logica si addormenta. Il professore spera che voglia solo dire che
si conosce uno studente che tende ad addormentarsi, ma magari gli studenti
intendono che tutti si addormentano sempre.
Luso delle variabili da sole non risolve le ambiguit`a, anzi le potrebbe
accrescere, se vengono a mancare le differenze di significato dei pronomi
specifici; in se x ha y come amico, x `e fortunato, se y fosse presa in senso
universale, come la x, allora la frase significherebbe che chi `e amico di tutti
`e fortunato, che `e discutibile, piuttosto `e un santo.
Un altro esempio `e il seguente: nelle due frasi di argomento aritmetico
un numero moltiplicato per se stesso d`a 1
e
5

Non c`e differenza tra uno e un; si potrebbe dire in entrambi i casi una persona,
ristabilendo luniformit`
a.

15

un numero sommato al suo opposto d`a 0


un numero `e da intendersi in modo diverso; nel primo caso lunico numero
con quella propriet`a `e 1, e la frase potrebbe essere una sua descrizione estrapolata dal contesto, o un indovinello: quale `e . . . ?; nel secondo caso un
numero significa qualunque numero.
La differenza non si coglie neanche se si formalizza, la prima frase con
x x = 1 e la seconda con x + (x) = 0; per capire la differenza si deve
pensare a quali specifici numeri soddisfano le formule, 1 e 1 in un caso,
tutti i numeri nellaltro. Nella terminologia usuale, la prima `e unequazione,
la seconda unidentit`a.
Le variabili da sole non rendono la duttilit`a delle parole che indicano se
si parla di uno, qualcuno o tutti.
Si introducono due simboli che si chiamano quantificatori,

quantificatore universale

quantificatore esistenziale

e
e questi segni si premettono alle formule con variabili per segnalare che, nel
loro raggio dazione determinato dalle parentesi, le variabili stesse devono
essere intese nel senso di tutti ovvero nel senso di qualcuno.
La frase uno che ha un amico `e fortunato diventa, schematizzata,
x(yA(x, y) F (x)).
Luso delle parentesi sar`a codificato quando si studier`a il formalismo. Per
ora basti osservare che quando un quantificatore si riferisce a una variabile
fissandone il senso, universale o particolare, in una frase, tutta la frase che
contiene quelle occorrenze della variabile, nellesempio yA(x, y) F (x), va
racchiusa tra parentesi.
Quando si leggono frasi gi`a formalizzate, i quantificatori x e x si leggono
usualmente sempre nello stesso modo: per tutti gli x (o per ogni x) e
esiste un x tale che (o esistono x tali che), anche quando non `e la lettura
pi`
u elegante. Invece in italiano ci sono diversi modi di esprimersi.
Alcune espressioni della lingua naturale hanno tuttavia significati colloquiali che non hanno interesse logico e che comunque non sono esprimibili
nel formalismo. Anzi bisogna fare attenzione a non lasciarsi influenzare. Ad
esempio qualche viene spesso usato per dire pochi, per indicare un certo
numero ma non grande, e spesso maggiore di uno, che se `e uno si dice uno.
16

Invece x vuol sempre dire esiste almeno un . . . , e possono essere uno,


dieci o centomila, o anche tutti.
Quando si usa qualche talvolta in italiano si sottintende non tutti6 ;
invece x . . . `e compatibile col fatto che tutti soddisfino la condizione; `e
solo unaffermazione pi`
u debole: se si sa che tutti i gamberi sono rossi, si
pu`o affermare x(gambero(x) rosso(x)) come vero; naturalmente cos` non
si afferma che tutti i gamberi sono rossi (che sarebbe x(gambero(x)
rosso(x))) ma che esiste un gambero rosso.
In molte frasi i quantificatori apparentemente non si riferiscono a tutti gli
elementi delluniverso di discorso ma a parti pi`
u ristrette; le frasi aritmetiche
per esempio raramente iniziano con tutti i numeri, piuttosto con tutti i
numeri positivi, o tutti i numeri primi; e raramente si parla di tutti gli
esseri viventi, ma piuttosto di tutti gli uomini, o di tutte le donne, o di tutti
gli italiani e cos` via restringendo.
Nel formalismo logico la restrizione dei quantificatori avviene nel seguente
modo. La frase tutti i tedeschi sono biondi si rappresenta con due predicati, !!!
tedesco e biondo, e la forma
x(T (x) B(x)),
dove il quantificatore x `e letto per tutte le persone, cio`e con la x che varia
su tutto luniverso del discorso (la specie umana): per ogni x, se x `e tedesco
allora x `e biondo.
Questa forma `e corretta grazie alle propriet`a del condizionale, che vedremo meglio in seguito. Se T (x) B(x) `e vero per tutte le persone, allora
ogni tedesco rende vero il condizionale, lantecedente e quindi vero il conseguente, ed `e vero che tutti i tedeschi sono biondi; se viceversa `e vero che
tutti i tedeschi sono biondi, anche lenunciato di sopra che si riferisce con
x non ai tedeschi ma a tutte le persone `e vero: se uno `e tedesco, allora `e
biondo e il condizionale `e vero; se Giovanni `e brutto ma non `e tedesco, lo
si vorr`a considerare un controesempio che falsifica laffermazione? Non sembra ragionevole; si assume che T (Giovanni) B(Giovanni) sia vero, e cos`
T (x) B(x) `e vera per tutte le persone.
In pratica, gli aggettivi sono resi da predicati con lausilio del condizionale:
in tutte le persone tedesche sono bionde laggettivo tedesco diventa il
predicato essere tedesco e la frase tutte le persone, se sono tedesche, sono
bionde.
6

Da un compito in classe: Se qualche triangolo isocele `e equilatero, di conseguenza


qualche triangolo isocele non lo `e. La conclusione `e vera, ma di conseguenza no.

17

Tutti i P sono . . . e qualche P `e . . . , dove P delimita il campo di


variabilit`a del riferimento, si realizzano dunque introducendo un predicato
unario P e scrivendo rispettivamente x(P (x) . . .) e x(P (x) . . .). Si
noti ovviamente la differenza nel caso del quantificatore esistenziale, dove !!!
la restrizione `e realizzata con la congiunzione, che viene dalla traduzione di
esiste uno che `e P e che . . . .

2.5

Esempi

2.5.1

dal linguaggio naturale

1. Maria ama il padre di Giovanni `e formalizzata da


A(m, f (g))
dove m e g sono costanti, m per Maria e g per Giovanni, ed f un
simbolo funzionale per il padre di . . . .
2. Per formalizzare Maria ama il figlio di Giovanni non si pu`o usare
un simbolo f per il figlio di, perch`e figlio di non `e una funzione
univoca: a una persona possono corrispondere diversi figli, o nessuno.
Allora Maria ama il figlio di Giovanni si formalizza come sotto Maria
ama un figlio di Giovanni e a parte si afferma che Giovanni ha un solo
figlio (vedremo come).
3. Maria ama un figlio di Giovanni `e formalizzata da
x(A(m, x) F (x, g))
letta
esiste un x tale che Maria ama x e x `e figlio di Giovanni,
dove F `e un simbolo relazionale a due posti, e F (x, y) sta per x `e figlio
di y.
Si potrebbe anche dire Maria ama uno, che `e figlio di Giovanni o
Maria ama un tizio che `e figlio di Giovanni.
In questo caso figlio di Giovanni ha la funzione di nome comune,
come Piaggio 50 in Giovanni possiede in Piaggio 50, e infatti si
formalizza nello stesso modo.
18

4. Maria ama i figli di Giovanni, che significa che Maria ama tutti i figli
di Giovanni, si formalizza con
x(F (x, g) A(m, x))
e non con x(A(m, x) F (x, g)); questa significa che tutti sono figli di
Giovanni, e che Maria li ama tutti; il che implica che Giovanni sia Dio,
e forse Maria la Madonna.
Per la formalizzazione corretta, pu`o essere utile vedere nella frase un caso di quantificatore ristretto, ai figli di Giovanni, leggendola al passivo:
Tutti i figli di Giovanni sono amati da Maria.
5. Non tutte le ciambelle riescono col buco.
Si scelga un predicato C per essere una ciambella e una relazione
B(x, y) per x `e un buco di y. Quindi si trasforma la frase eliminando non tutte a favore di qualche ciambella non riesce col buco.
Riuscire con buco o avere il buco possono essere trattate come
equivalenti: la prima versione allude al processo di fabbricazione che
finisce male, la seconda al risultato. Allora
y(C(y) xB(x, y)).
6. Ogni rosa ha le sue spine.
Sia R il predicato essere una rosa e S(x, y) la relazione x `e una spina
di y.
x(R(x) yS(y, x)).
Si noti che se S(x, y) `e la relazione x `e una spina di y, S(y, x) si
legge y `e una spina di x. C`e grande libert`a nelluso delle variabili:
yS(y, x) si potrebbe scrivere anche zS(z, x); in italiano hanno la
stessa traduzione x ha qualche spina. Quello che importa `e non usare
la stessa variabile quando devono essere distinte: se si scrive xS(x, x)
si dice che c`e una rosa che `e una spina.

19

7. Ogni rosa ha qualche spina.


la frase `e la stessa di prima, perche se una rosa ha delle spine queste
sono sue. Entrambe possono comunque essere formalizzate anche in un
altro modo, con un predicato per essere una spina e una relazione
binaria H di possesso:
x(R(x) y(S(y) H(x, y))).
8. Chi rompe paga e i cocci sono suoi.
Rompere `e verbo transitivo, salvo che in usi metaforici, quindi bisogna pensare che si dica chi rompe qualcosa, una qualunque cosa;
sia R(x, y) la relazione x rompe y; sia quindi C(x, y) la relazione che
intercorre tra due pezzi di materia se il primo `e un coccio dellaltro, cio`e
un pezzo che risulta dalla sua rottura; scegliamo la relazione S(x, y) a
indicare che x paga il valore di y, e sia infine H(x, y) la relazione x
assume il possesso di y. Allora
xy(R(x, y) S(x, y) z(C(z, y) H(x, z))).
` anche !!!
Il complesso xy . . . si legge per ogni x e per ogni y . . . . E
lecito abbreviare con x, y . . ., cos` come xy . . . con x, y . . ..
Chiunque rompa qualunque cosa . . . o Qualunque cosa uno rompa
. . . sono equivalenti: in base a questa lettura `e evidente che risulter`a
che xy . . . `e equivalente a yx . . . e che xy . . . `e equivalente a
yx . . .
La precedente formula `e tuttavia ambigua, e deve essere corretta in
xy(R(x, y) (S(x, y) z(C(z, y) H(x, z))))
in modo che entrambe le conseguenze (pagare e tenere i cocci) dipendano da R(x, y). Altrimenti se si pensasse a (R(x, y) S(x, y)) . . .
la frase z(C(z, y) H(x, z)) significherebbe che x si prende i cocci di
ogni cosa, che labbia rotta lui o no.

20

9. Un regalo conquista un amico.


Cominciamo a riformulare la frase spogliandola di significati metaforici
(un regalo `e una cosa e non conquista nulla). Si intende ovviamente
dire che chi fa un regalo acquista un amico, e pi`
u dettagliatamente
che se una persona fa un regalo a unaltra persona, questa diventa suo
amico. Usiamo una relazione ternaria R(x, y, z) per x regala y a z e
una relazione binaria per A(x, y) x diventa amico di y.
xy(zR(x, z, y) A(y, x)).
10. A Natale si fanno regali agli amici.
Si intende che a Natale ognuno fa un regalo a ciascuno dei suoi amici.
Non `e il caso di mettere in evidenza Natale, che non `e rilevante per
la struttura logica della frase. Usiamo una relazione ternaria R(x, y, z)
per x a Natale regala y a z e una relazione binaria A(x, y) per y `e
un amico di x.
xy(A(x, y) zR(x, z, y)).
11. Chi non risica non rosica.
Risicare `e verbo intransitivo (anche se qualche volta si dice ha rischiato qualcosa, ma si intende ha rischiato un po ). Rosicare
`e transitivo, anche se nella frase non compare il complemento oggetto,
ma si intende non rosica nulla. Usiamo un predicato R per risicare
e una relazione S(x, y) per x rosica y.
x(R(x) yS(x, y)).
12. Sono eligibili tutti e soli gli studenti in corso.
Non interessa a cosa siano eligibili; serve un predicato per essere
eligibile, uno per essere studente e uno per essere in corso.
x(E(x) S(x) C(x)).
La dizione tutti e soli `e strettamente legata a se e solo se. Tutti !!!
gli studenti in corso sono eligibili `e formalizzata da
21

x(S(x) C(x) E(x)),


mentre solo gli studenti in corso sono eligibili da
x(E(x) S(x) C(x)).
La congiunzionne di queste due ultime frasi `e equivalente, come vedremo, alla prima.
2.5.2

dalla matematica

1. La frase dati due numeri, uno minore dellaltro, esiste un terzo numero
compreso tra i due, vera nel campo dei razionali e in quello dei reali,
falsa negli interi, pu`o essere resa da
xy(x < y z(x < z z < y)).
La congiunzione x < z z < y si pu`o abbreviare, secondo luso
matematico, con x < z < y.
Non esiste un quantificatore che quantifichi sulle coppie; ci si comporta
come se la frase fosse dato un primo numero e dato un secondo numero
. . . . Ma un primo e un secondo servono solo a facilitare lespressione, si sarebbe potuto dire anche dato un numero e dato un numero
. . . , con qualche difficolt`a nel seguito per i riferimenti appropriati.
Si faccia attenzione che neanche la presenza di due vuol dire che i
numeri devono essere considerati diversi; tale forma comune di espressione distingue il modo, il momento in cui i numeri sono presentati, o
pensati, ma non `e escluso in generale che si presenti lo stesso numero
due volte.
Nellesempio 10 precedente, a Natale uno fa anche regali a se stesso, se
si vuole bene.
Dati due numeri significa fatta due volte la scelta di un numero, e
le scelte possono cadere sullo stesso numero. In termini probabilistici,
si tratta di scelte con reimmissione; oppure si deve considerare che la
scelta di un numero non lo toglie certo dallinsieme. Dati due numeri,
esiste la loro somma si pu`o scrivere
22

xyz(z = x + y)
ma esiste anche la somma di ogni numero con se stesso; x e y possono
prendere tutti i valori in tutte le combinazioni possibili, quindi anche
valori uguali.
Quando tuttavia si mette come sopra la condizione uno minore dellaltro - come nella frase proposta - allora si esclude che possano essere
uguali perch`e la relazione minore di non `e riflessiva. Tuttavia lo si
esclude solo attraverso una deduzione, non con la semplice scrittura:
se x e y denotano lo stesso numero, e bisogna considerare anche questo
caso per verificare se la frase `e vera, in x < y z(x < z z < y)
lantecedente x < y risulta falso (come nellesempio dei tedeschi).
Con un terzo di nuovo si vuol dire semplicemente un numero, e che
sia diverso dai primi due segue automaticamente se compreso significa strettamente compreso; altrimenti, se la relazione dordine fosse
intesa come allora potrebbe anche essere uguale a uno dei due; non
`e questo il senso della frase, che vuole esprimere la densit`a dellordine
dei numeri reali - e anche dei razionali.
Se nella stessa formula il segno di relazione `e interpretato su di una
relazione riflessiva, come
xy(x y z(x z z y)),
o pi`
u in generale se R `e riflessiva allora . . . , ovvero
xR(x, x) xy(R(x, y) z(R(x, z) R(z, y))),
allora la formula `e banalmente vera per ogni relazione7 .
2. La relazione R `e riflessiva, che significa che ogni elemento sta nella
relazione R con se stesso, si scrive
xR(x, x),
come abbiamo fatto sopra.
7

Con banalmente sintende che dati x e y come z si pu`o prendere o x o y, e la formula


non ci d`
a veramente informazioni.

23

3. La relazione R `e simmetrica, che significa che se la relazione R sussiste tra uno primo e un secondo elemento allora sussiste anche tra il
secondo e il primo, si scrive
xy(R(x, y) R(y, x)).
4. La relazione R `e transitiva, che significa che se R sussiste tra un
primo elemento e un secondo, e tra questo e un terzo, allora sussiste
anche tra il primo e il terzo, si scrive,
xyz(R(x, y) R(y, z) R(x, z)).
5. Come non esiste un quantificatore sulle coppie, cos` non esiste un quantificatore che esprima esiste esattamente un . . . , o esiste un solo . . . . Tale locuzione si realizza mediante luguaglianza come nel
seguente esempio.
La frase dati due numeri, esiste un solo numero che `e la loro somma
si formalizza come
xyz(z = x + y u(u = x + y u = z)).
6. In generale Esiste un solo x tale che P (x) si formalizza come
x(P (x) y(P (y) x = y)).
7. In modo analogo si pu`o esprimere la locuzione esistono esattamente
due elementi tali che . . . (esercizio).
8. Non si riesce invece con nessun giro di formule del formalismo che
stiamo usando ad esprimere la maggior parte degli elementi . . . o
quasi tutti . . . .
9. Analogamente non si riesce ad esprimere tanti.
10. La frase dati due numeri diversi tra loro, esiste un numero che `e
propriamente compreso tra i due numeri dati si rappresenta con
xy(x 6= y z(x < z < y y < z < x)).
24

11. La frase ogni numero positivo ha una radice quadrata, vera nei reali,
falsa nei razionali, si rappresenta come
x(0 < x y(x = y 2 )),
dove con y 2 si indica la funzione di elevamento al quadrato.
12. un numero `e divisibile per un altro numero se e solo se esiste un terzo
numero che moltiplicato per il secondo d`a il primo.
Scriviamo x|y per y `e divisibile per x o x divide y e usiamo il solito
segno di moltiplicazione:
xy(x|y z(y = x z)).
13. Esistono due numeri primi consecutivi.
Per questa frase complicata procediamo in due passi; usiamo unabbreviazione pr(x) per x `e primo e scriviamo
xy(x = y + 1 pr(x) pr(y))
riservandoci di sostituire pr(x) con la sua scrittura corretta data nel
prossimo esercizio.
Che i numeri siano due non risulta dallo scrivere xy ma da x = y + 1
che implica x 6= y (vedremo che lo si deduce facilmente dagli assiomi
dei numeri naturali); si potrebbe anche scrivere:
x(pr(x) pr(x + 1)),
dando per scontato, come sopra, che x 6= x + 1.
14. Un numero `e primo se e solo se `e maggiore di 1 ed `e divisibile solo per
1 e per se stesso.
Per esprimere questa che `e la definizione di un nuovo predicato usiamo
un nuovo simbolo pr(x) e scriviamo
x(pr(x) x > 1 z(z|x z = 1 z = x)).
25

15. 2 `e lunico numero primo pari.


Numero pari significa divisibile per 2. La frase si pu`o trasformare
in 2 `e primo e pari e se un numero `e primo e pari allora `e uguale a 2.
Quindi
pr(2) 2|2 x(pr(x) 2|x x = 2).
16. Esistono numeri pari arbitrariamente grandi.
La locuzione arbitrariamente grandi o grandi quanto si vuole significa che comunque si dia un numero, ne esiste uno pi`
u grande con
la propriet`a in oggetto - non che un numero `e grande quanto si vuole,
un numero `e quello che `e. Quindi
xy(x < y 2|y).
17. Ci sono almeno due quadrati minori di 10.
Consideriamo 10 una costante. x `e un quadrato significa che x `e il
quadrato di qualche numero, e si formalizza come u(x = u2 ). Quindi
xy(x 6= y x < 10 y < 10 u(x = u2 ) u(y = u2 )),
dove x 6= y `e unabbreviazione per (x = y).
Si noti che da u(x = u2 ) u(y = u2 )) non segue che la u sia la
stessa, e quindi x e y uguali; le due frasi sono indipendenti; `e come se
si dicesse: esiste un numero il cui quadrato `e x ed esiste un numero
il cui quadrato `e y; non vuol dire che sia lo stesso numero. Ma si
sarebbe potuto anche scrivere u(x = u2 ) v(y = v 2 )).
Dagli esempi si traggono diverse regole euristiche: riformulare la frase !!!
in un italiano semplice, con soggetto, verbo e complementi; trasformare i
pronomi quantitativi come ognuno, alcuni, nessuno, uno . . . usando
sempre solo per tutti . . . ed esiste un . . . , anche se la frase diventa
barocca; guardare i verbi, se sono intransitivi o transitivi, e sostituire le
frasi elementari con le dizioni ha la propriet`a . . . e sussiste la relazione
. . . ; non prendere relazioni troppo inglobanti che nascondano la sintassi
informale, immaginando possibili proseguimenti della frase che richiedono
di riprendere certi elementi; invece lasciare cadere particolari empirici; nelle
frasi matematiche, risalire sempre alle definizioni dei termini coinvolti.
26

2.6

Esercizi

1. Formalizzare frasi del linguaggio comune come le seguenti e altre a


piacere:
Il mio cellulare `e migliore del tuo ma costa di pi`
u.
Chi `e senza peccato scagli la prima pietra.
Senza soldi si vive male.
Senza amici si `e soli.
I supermercati abbondano di ogni ben di Dio.
Maria ama il figlio di Giovanni.
Il 33,3% circa degli italiani possiede due macchine.
Chi ha superato solo una delle due prove di esonero, allesame porta
solo la parte non superata.
Chi lascia la via vecchia per la nuova sa quel che lascia ma non sa quel
che trova.
2. Formalizzare A Giovanni piacciono i Piaggio 50; trasformarla prima
in italiano in modo da far comparire un quantificatore ristretto.
3. Formalizzare I professori premiano gli studenti meritevoli.
4. In unassemblea di politici, questi si dividono in onesti e disonesti, e si
sa che a) esiste almeno un politico onesto; b) presi due politici a caso,
uno almeno `e disonesto. Si formalizzino le condizioni sui politici.
Se nellassemblea ci sono cento politici, si pu`o decidere (dedurre) quanti
sono gli onesti e quanti i disonesti? Formalizzare anche la risposta.

27

Logica proposizionale

La logica proposizionale studia quello che si pu`o dire sulle frasi considerando
solo la struttura determinata dai connettivi; si considerano cio`e frasi formate
da frasi pi`
u semplici per mezzo dei connettivi.
Introdotti i simboli per i connettivi, occorre dare le loro precise regole
duso - alcune delle quali abbiamo gi`a anticipato negli esempi - sia dal punto
di vista sintattico (dove scriviamo ad esempio per formare la negazione
di unasserzione?), sia dal punto di vista semantico (come interpretiamo il
significato delle frasi composte, in funzione delle frasi componenti?).

3.1

Sintassi

La necessit`a di fornire regole rigide per la formazione delle frasi `e data dalla
volont`a di evitare le ambiguit`a possibili nelle lingue naturali. Alcune ambiguit`a si riferiscono proprio alla distribuzione dei connettivi; supponiamo
ad esempio di leggere un problema rappresentato dallinsieme delle seguenti
disequazioni:
x2 + 4x + 3 < 0

e x < 3 o x > 2.

Lo studente tende a rispondere risolvo la prima, poi interseco con x < 3


e unisco con x > 2, ma `e lordine di queste operazioni che conta, che non
sempre `e quello del first come, first served , con la scrittura da sinistra a
destra.
Si pu`o intendere che si chieda quali siano i valori per cui si ha che
x2 + 4x + 3 < 0 e x < 3
oppure si ha che
x > 2;
si pu`o anche intendere che si chieda quali siano i valori per cui si ha
x2 + 4x + 3 < 0
ma ristretti ad essere
x < 3 o x > 2.
28

Nel primo caso la risposta `e (2, +), nel secondo caso `e (2, 1).
Naturalmente lambiguit`a, che nel parlato si risolve con le pause, nella
scrittura matematica si risolve con le parentesi, il primo caso essendo
(x2 + 4x + 3 < 0 e x < 3) o x > 2
e il secondo caso
x2 + 4x + 3 < 0 e (x < 3 o x > 2).
La stessa soluzione delle parentesi1 adotteremo per le formule logiche.
3.1.1

Il linguaggio proposizionale

Le frasi di ogni linguaggio sono stringhe2 di simboli dellalfabeto. Lalfabeto


del linguaggio proposizionale contiene, oltre ai connettivi, le parentesi sinistra
( e destra ), e un insieme L di lettere, dette lettere proposizionali.
Tali lettere si chiamiamo anche variabili proposizionali, ma preferiamo
non seguire questo uso perche il loro dominio di variabilit`a (le frasi) `e per
ora troppo indefinito3 .
Le parole accettabili di questo alfabeto si chiameranno proposizioni, un
termine tecnico per distinguerle dalle asserzioni dei linguaggi dotati di senso.
Quello che importa delle proposizioni `e solo la loro struttura formale, che poi
si dovr`a riconoscere nelle frasi dei linguaggi naturali o matematici, quando
il linguaggio proposizionale sar`a interpretato sostituendo alle lettere frasi
relative ad un precisato argomento.
Non tutte le stringhe di simboli dellalfabeto sono ammesse come proposizioni. Una generica stringa, anche illecita, `e chiamata parola.
La definizione dellinsieme P delle proposizioni stipula innanzi tutto che:
Per ogni lettera p L, (p) `e una proposizione atomica
1

Le parentesi sono state anche aggiunte al linguaggio naturale - almeno nella saggistica,
meno in letteratura - con unaltra funzione, quella di racchiudere un inciso (una frase
parentetica appunto) non di articolare una frase complessa.
2
Con stringa sintende una lista o una successione finita. Non `e necessario entrare nei particolari del tipo di rappresentazione dei dati che si sceglie, finche non si deve
implementare.
3
Quando introdurremo la semantica formale diventer`a preciso.

29

(cio`e non ulteriormente analizzata e scomposta nel contesto della trattazione).


Per il resto della definizione, occorre parlare di proposizioni qualunque e
della loro composizione; `e quindi necessario avere delle variabili che variano
sullinsieme delle proposizioni, e che si chiamano metavariabili 4 ; useremo le
lettere A, B, . . .
Si danno quindi le seguenti clausole:
1 Se A `e una proposizione, anche (A) lo `e.
2 Se `e un connettivo binario, e se A e B sono proposizioni, anche (A B)
lo `e.
Le clausole della definizione sono anche regole di costruzione. Sintende che
ogni proposizione si ottiene applicando un numero finito di volte le clausole
della definizione.
Esempi
1. (p q) non `e una proposizione perche non `e un elemento dellalfabeto5 .
2. p q non `e una proposizione, perche:
Ogni proposizione contiene almeno una parentesi6 .
3. )p( non `e una proposizione, come non lo sono p o )p), perche:
Ogni proposizione inizia con una parentesi ( e termina con una parentesi
).
4

La ragione di questo termine, non usato altrove in matematica, se non in logica, `e che
queste variabili indicano elementi di una struttura che `e anchessa un linguaggio, e che
contiene a sua volta variabili (le lettere) che devono essere interpretate su frasi; meta
significa sopra, oltre, e deriva dal greco, dove significava piuttosto dopo; ma da che
sono stati chiamati metafisica i libri di Aristotele che seguivano quelli di fisca, `e venuta
questa variante di significato.
5
Per i linguaggi formali si chiede sempre che lalfabeto e le sue diverse categorie di
simboli siano insiemi decidibili , cio`e tali che lappartenenza o meno ad essi di un simbolo
possa essere decisa da un algoritmo.
6
Tutte queste propriet`
a diventeranno esercizi sul principio di induzione nel paragrafo
12.

30

4. ((p) (q)) `e una proposizione perche ottenuta dalle proposizioni atomiche (p) e (q) con una applicazione della clausola induttiva relativa a
.
5. (((p) (q))) `e una proposizione perche ottenuta dalle proposizioni
atomiche (p) e (q) con una prima applicazione della clausola induttiva
relativa a e una seconda applicazione della clausola relativa a .
6. ((p) non `e una proposizione perche:
In ogni proposizione il numero di parentesi sinistre `e uguale al numero
di parentesi destre.
7. (pq) non `e una proposizione perche non `e atomica e non contiene nessun
connettivo.
Se una proposizione `e della forma (A) o della forma (A B), e sono
rispettivamente il suo connettivo principale, e A e B le sottoproposizioni
immediate.
Si dice che (A) `e una negazione, citando il suo connettivo principale, la
negazione di A - e si legge non A; si dice che (A B) `e una congiunzione,
la congiunzione di A e B - e si legge A e B; A e B sono le proposizioni
congiunte in (AB); analogamente per la disgiunzione7 (AB) - che si legge
A o B; (AB) si pu`o leggere o A o B; (A B) si dice un condizionale e si legge di solito se A allora B; A si chiama antecedente, e B conseguente;
(A B) si dice bicondizionale - e si legge A se e solo se B.
3.1.2

Analisi sintattica

Una proposizione `e una lista di simboli, ma `e anche passibile di una rappresentazione con una diversa struttura. A ogni proposizione `e associato
un albero di costruzione, o di analisi sintattica 8 , che `e un albero etichettato
finito binario.
Un albero binario9 `e un insieme parzialmente ordinato10 X con una relazione  con le seguenti propriet`a.  `e una relazione riflessiva, transitiva
7

Chiameremo semplicemente disgiunzione, e disgiunzione esclusiva o forte.


In inglese parsing.
9
Esistono definizioni leggermente diverse, pi`
u o meno generali, ad esempio con una o
pi`
u radici; diamo quella che serve ai nostri scopi.
10
Presenteremo in seguito la definizione di relazione dordine e della terminologia
connessa; per ora `e sufficiente la rappresentazione grafica data sotto.
8

31

e antisimmetrica11 . Gli elementi dellalbero si chiamano nodi . Se x  y, si


dice che y `e un successore, o un discendente di x. Esiste un nodo minimo
r tale che r  x per ogni nodo di X, e si chiama radice. I nodi a tali che
non esiste b 6= a per cui a  b si chiamano foglie12 . Ogni nodo che non sia
una foglia ha uno o al massimo due successori immediati13 , dove si dice che
b `e un successore immediato di a se a  b, a 6= b e non esiste un c tale che
a  c  b, con c 6= a e c 6= b.
La rappresentazione usuale di un albero binario `e di questo tipo:

.&

.&

dove con la freccia si indica il successore immediato, la radice `e in alto e


lalbero cresce verso il basso.
Un ramo `e un insieme totalmente ordinato14 di nodi che va dalla radice
a una foglia. La sua lunghezza `e il numero di nodi che vi appartengono.
Laltezza dellalbero `e la massima lunghezza dei suoi nodi.
Un albero si dice etichettato se ad ogni nodo `e associato un elemento di
qualche insieme prefissato, che si chiama etichetta (label ). Le etichette si
possono sovrapporre ed identificare con i nodi.
Lalbero sintattico di una proposizione `e definito in questo modo:
la radice `e (etichettata con) la proposizione data
11

Questo significa come vedremo che: a) x  x, b) se x  y e y  z allora x  z e c) se


x  y e y  x allora x = y.
12
Esistono sempre se lalbero, ovvero linsieme dei nodi X, `e finito.
13
Unaltra terminologia `e figli. Se ci sono due figli, sintende che sono esplicitamente
distinti il primo e il secondo - sulla pagina, a sinistra e a destra.
14
Per ora basti intendere che ogni nodo del ramo salvo lultimo ha esattamente un
successore immediato, e con ogni nodo ci sono i precedenti.

32

ogni nodo ha nessuno, uno o due successori immediati a seconda che


la proposizione etichetta del nodo sia atomica, o della forma (A), o
della forma (A B). Nel secondo caso il successore `e etichettato con
A, nel terzo caso i due successori sono etichettati rispettivamente con
A e con B.
Si chiama altezza della proposizione laltezza del suo albero di costruzione.
Esempio Lalbero per (((p) ((q))) ((p))) `e il seguente:
(((p) ((q))) ((p)))
.&
((p) ((q)))
((p))
.&

(p)
((q))
(p)

(q)
La sua altezza `e quattro.
Le etichette dei nodi dellalbero di costruzione di una proposizione sono le
sue sottoproposizioni. Le lettere che compaiono nelle (proposizioni atomiche
nelle) foglie sono le lettere che occorrono nella proposizione; si dice che un
simbolo occorre in una proposizione se `e un elemento della lista (che `e la
proposizione); le occorrenze di un simbolo in una proposizione sono i vari
posti della lista in cui il simbolo si presenta. Se p, . . . , q sono le lettere che
occorrono nella proposizione A, si scrive anche A[p, . . . , q]. Qualche volta
si usa questa notazione anche se p, . . . , q sono solo alcune delle lettere che
occorrono in A, o viceversa se le lettere che occorrono in A sono incluse tra
le p, . . . , q; invece di introdurre notazioni distinte apposite, la differenza sar`a
chiarita dal contesto o da esplicite precisazioni.
Le parentesi sono essenziali per individuare il connettivo principale di una
proposizione, e quindi per costruire il suo albero sintattico. Per individuare
il connettivo principale, si usa un contatore di parentesi15 .
Il contatore scansisce la lista da sinistra verso destra, e scatta di +1
quando incontra una parentesi sinistra, di 1 quando incontra una parentesi
destra. Condizione necessaria affinche una parola sia una proposizione `e che

33

il contatore, inizializzato a 0, torni a 0 solo alla fine della parola. Perche poi !!!
la parola sia una proposizione bisogna che gli altri simboli siano distribuiti
in mezzo alle parentesi in modo corretto.
Ad esempio per
(((p) ((q))) ((p)))
il contatore assume i valori:
0 1 2 3 2 3 4 3 2 1 2 3 2 1 0.
Per individuare il suo possibile connettivo principale, si elimina la coppia di
parentesi esterne, e si mette di nuovo in funzione il contatore su
((p) ((q))) ((p))
notando che esso assume questa volta i valori
0 1 2 1 2 3 2 1 0 1 2 1 0
tornando a 0 la prima volta quando arriva alla fine di
((p) ((q))),
e a destra c`e un connettivo binario.
(Siccome il contatore `e stato applicato ad una parola che non `e una proposizione - se anche quella originaria lo `e, per leliminazione delle due parentesi
- non sorprende il suo comportamento16 .)
La parola ((p) ((q))) `e candidata ad essere una sottoproposizione; il
connettivo che compare nel prossimo posto a destra `e candidato a essere
il connettivo principale; lipotesi cio`e `e che se il procedimento va a buon fine
la proposizione sia della forma (A B). Se anche la parte restante
((p))
`e una proposizione si sar`a trovato che la parola data `e la disgiunzione di
((p) ((q)) e di ((p)).
Poiche questultima si vede facilmente che `e una proposizione, proseguiamo lanalisi di
15

Horstmann, p. 76.
Invece di prendere nota di dove il contatore torna a 0 sulla parola ridotta, si pu`o
ovviamente prendere nota di dove torna a 1 in quella originaria.
16

34

((p) ((q))).
Il contatore applicato a questa assume i valori
0 1 2 1 2 3 2 1 0
e applicato a
(p) ((q))
i valori
0 1 0 1 2 1 0
tornando la prima volta a 0 alla fine di (p), individuando a destra il connettivo , che lega (p) e ((q)). In questo modo si arriva a costruire lalbero
sintattico.
Invece
(((p) (q())) ((p)))
non `e una proposizione, nonostante il contatore si comporti come nel caso
precedente (esercizio).
Oltre ai casi che si presentano nel precedente esempio, un altro possibile
`e il seguente. Data la parola
(((p) ((p) (q))))
il contatore assume i valori
0 1 2 3 2 3 4 3 4 3 2 1 0
ma se si tolgono le parentesi esterne e si riapplica il contatore, esso torna a 0
solo alla fine. In questo caso il connettivo, che deve esserci perche `e ovvio che
non si tratta di formula atomica, non pu`o che essere la negazione, allinizio.
Infatti in questo caso c`e. Se non ci fosse, la parola sarebbe della forma ((A)),
che non `e una proposizione.
Alcune parentesi sono sovrabbondanti, ma solo quelle della coppia pi`
u
esterna e quelle nelle proposizioni atomiche, dove sono usate sia per uniformit`a sia per sottolineare la differenza tra una lettera come elemento dellalfabeto e la lettera come proposizione17 . Ma ora per comodit`a di scrittura e
17

Tra simboli dellalfabeto e parole c`e una differenza di tipo logico. Nei linguaggi
naturali si presentano alcune eccezioni, ma solo le vocali a, e, i, o sono usate
come parole; tuttavia `e raro che si parli dellalfabeto; quando lo si fa, si scrive appunto
e e non e.

35

lettura `e meglio ridurre il numero di parentesi con le seguenti convenzioni:


non si scrivono le parentesi intorno alle lettere nelle proposizioni atomiche,
non si scrivono le parentesi pi`
u esterne, e si eliminano alcune coppie di parentesi intorno ad alcune sottoproposizioni, con un criterio sufficiente a farle
ripristinare in modo corretto e univoco che `e formulato nel seguente modo.
Si ordinano per priorit`a i connettivi secondo le seguente graduatoria:

Data quindi una parola le cui parentesi non rispettano le condizioni per
essere una proposizione (s` per`o la parit`a, il fatto che il numero di parentesi
sinistre sia uguale a quello delle parentesi destre, il fatto che in ogni punto
che non sia lultimo il numero di sinistre `e maggiore o uguale di quello delle
destre, e tutte le propriet`a che si mantengono quando si eliminano alcune
coppie di parentesi corrispondenti) le parentesi si rimettono secondo questo
procedimento: prima si rimettono le parentesi a sinistra e a destra delle
lettere18 ; quindi si prende in esame la negazione, se occorre nella parola; si
esamina unoccorrenza della negazione che non abbia immediatamente alla
sua destra unaltra negazione19 . Alla sua destra c`e una parentesi sinistra altrimenti si pu`o dire che quella parola non proviene dalla eliminazione di
coppie di parentesi da una genuina proposizione (brevemente, che non `e una
proposizione). Sia la parola alla sua destra che termina con la parentesi
destra che chiude la parentesi sinistra. Per trovare la parentesi destra che
chiude la parentesi sinistra si usa di nuovo il contatore in modo ovvio. !!!
Allora si rimette una parentesi sinistra alla sinistra della negazione, se non
18

Questo praticamente si pu`


o fare anche alla fine, per non appesantire la scrittura,
ma si faccia attenzione che in questo caso, nel procedimento sotto descritto, adiacenti ai
connettivi si possono trovare anche lettere, oltre a parole che sono delimitate da parentesi.
In particolare la negazione che non abbia alla sua destra unaltra negazione pu`o avere o
una parentesi, e si procede come nel testo, oppure una lettera p e allora si introducono le
parentesi (p) se non ci sono gi`
a. Si veda oltre lesempio.
19
A parte questa condizione, lordine in cui si lavora sulle eventuali diverse occorrenze
della negazione, se ce ne `e pi`
u di una, non `e rilevante; lo si pu`o anche (immaginare di)
fare in simultanea. Un calcolatore lo pu`o fare in parallelo. Lo stesso vale per gli altri
connettivi.

36

c`e gi`a, e una parentesi destra a destra di , se non c`e gi`a, ottenendo ();
si ripete per ogni occorrenza di , quindi si passa ai connettivi binari e per
ciascuno di essi, indicato con , nellordine di priorit`a, si considerano le pi`
u
corte sottoparole e a sinistra e a destra di che sono chiuse tra due
parentesi sinistre e destre, e si introduce una parentesi ( a sinistra di e ) a
destra di , se non ci sono gi`a, ottenendo ( ), e cos` via.
Per occorrenze dello stesso connettivo si conviene lassociazione a destra,
cio`e ad esempio con A B C si intende A (B C).
Esempi
Data p q p, la reintroduzione delle parentesi avviene attraverso
questa successione di passi:
1

(p) (q) (p)

(p) (q) ((p))

(p) ((q)) ((p))

((p) ((q))) ((p))

(((p) ((q))) ((p))).

I passi 2 e 3 si possono naturalmente fare in parallelo.


Data p (q r)
1

(p) ((q) (r))

(p) ((q) ((r)))

(p) ((q) (((r))))

(p) (((q) (((r)))))

((p) (((q) (((r))))))

oppure, per rendere pi`


u chiara la lettura
1

p (q (r))

p (q ((r)))
37

p ((q ((r))))

(p ((q ((r)))))

rimettendo infine le parentesi intorno alle lettere.


Si noti che se fosse stata data p q r la reintroduzione delle
parentesi avrebbe portato a una diversa proposizione:
((p) (((q)) (((r)))))
(esercizio, e si confrontino i due alberi sintattici), per cui le due parentesi lasciate in p (q r) sono essenziali, se si vuole parlare della proposizione !!!
((p) (((q) (((r))))) .
Non `e comunque necessario ne obbligatorio togliere tutte le parentesi;
per agevolare la lettura, o allinizio quando non si `e ancora fatta esperienza,
pu`o essere conveniente lasciarne alcune, che pure grazie alle convenzioni si
potrebbero eliminare. Cos` ad esempio si potr`a scrivere p (q r) invece
di p q r oppure (p q) r invece di p q r.
Le parentesi si rimettono solo se si ha necessit`a di capire quale `e il connettivo principale, per svolgere lanalisi sintattica. Le parentesi esterne possono tranquillamente essere tralasciate, finche la proposizione non deve essere
combinata con altre mediante qualche connettivo - allora si devono rimettere.
Lalbero sintattico si pu`o costruire direttamente anche per le espressioni
prive di tutte le parentesi, se si tiene presente la priorit`a dei connettivi. Il
connettivo principale `e sempre quello di priorit`a pi`
u bassa.
!!!
Esempio Lalbero per p q p `e il seguente, essendo il connettivo
principale:
p q p
.&
p q
p
.&

p
q
p

q.

38

Le etichette sono diverse, ma lalbero `e lo stesso della proposizione analizzata


in precedenza.
Dal prossimo paragrafo, chiameremo proposizioni anche le parole ottenute da proposizioni per eliminazione di parentesi.
3.1.3

Esercizi

1. Discutere se le seguenti parole sono proposizioni:


(p (q)
(p)) q)
((p) q)
((p) ((q)))
((p) )
p
((p)).
2. Verificare quali delle seguenti parole sono proposizioni - secondo la definizione originaria - e quali no, costruendo lalbero sintattico e spiegando
dove eventualmente la costruzione fallisce e per quale ragione:
((p))
((p) ((q) ((r))))
(((p) (q)))
((((p) (q)) (p)) (q))
(((p)) (q)) (r))
((((p)) (q)) (r))
((p) (q) (r)).
3. Dare ragioni per le seguenti propriet`a (e si vedano poi gli esercizi in
12.10.1):
Ogni proposizione ha lunghezza maggiore o uguale a 3.
In ogni proposizione non atomica occorre un connettivo.
In nessuna proposizione occorrono due connettivi consecutivi.
In nessuna proposizione occorre la sottosequenza (), ne )p.
39

In ogni proposizione la sua lunghezza (come lista) `e maggiore della sua


altezza.
4. Una misura di complessit`a delle proposizioni `e una funzione dalle proposizioni nei numeri naturali che soddisfa la condizione che la misura
di una proposizione `e maggiore delle misure delle proposizioni componenti, e le atomiche hanno tutte la stessa misura minima. Il numero (di
occorrenze) dei connettivi `e una misura di complessit`a, come lo sono la
lunghezza (della stringa) e laltezza (dellalbero sintattico).
Trovare la relazione tra il numero di occorrenze di connettivi e laltezza.
Dimostrare con un controesempio che il numero di connettivi diversi
non `e una misura di complessit`a.
5. Eliminare le parentesi, applicando le convenzioni sulla priorit`a dei connettivi, dalle seguenti proposizioni:
((p) (((q)) ((p))))
(((((p)))) ((p) (q)))
((((p)) ((q))) (((p)) (q)))
(((p) ((q))) ((p) ((q)))).
6. Reintrodurre le parentesi nelle seguenti parole in modo da ottenere, se
possibile, proposizioni, o se no spiegare il perche:
p
p q r
p q r
(p q) p q
pqpq
p q r p
p q r r
p ( r q)
p q p q
p q r.

40

7. Definire le proposizioni nel seguente modo: Ogni lettera p `e una proposizione; se A `e una proposizione, anche (A) `e una proposizione; se
`e un connettivo binario e A e B sono proposizioni, anche (A) (B) `e
una proposizione.
Definire il nuovo procedimento per decidere se una parola `e una proposizione e costruire lalbero sintattico.
Discutere eventuali vantaggi e svantaggi della definizione alternativa.

3.2

Semantica

La semantica ha a che fare con le interpretazioni, grazie alle quali le proposizioni, con la sostituzione di frasi alle lettere, vengono ad assumere un senso
(che a noi non interessa, lo bypassiamo) e diventano vere o false. Tale attribuzione finale di valori di verit`a `e per noi loperazione di interpretazione, che
viene studiata in astratto per vedere se abbia propriet`a generali, indipendenti
dalle interpretazioni concrete.
I valori di verit`a saranno rappresentati dallinsieme20 {0, 1}. Ci si colloca
con tale scelta nellottica della logica classica a due valori.
Nellinsieme {0, 1} `e necessario introdurre un minimo di struttura21 : la
pi`
u semplice consiste in convenire che 0 < 1 e usare la sottrazione come se 0
e 1 fossero numeri interi, con | x | a indicare il valore assoluto.
Uninterpretazione `e una funzione22 i : L {0, 1}; una valutazione `e
una funzione v : P {0, 1} che soddisfa le seguenti condizioni23 :
v((A))
v((A B))
v((A B))
v((A B))
v((A B))
v((A B))

=
=
=
=
=
=

1 v(A)
min{v(A), v(B)}
max{v(A), v(B)}
| v(A) v(B) |
max{1 v(A), v(B)}
1 | v(A) v(B) | .

20

Altre notazioni per i valori di verit`a sono {V, F }, {T, F }, {>, }, {True, False}.
Vedremo in seguito che si pu`
o considerare unalgebra di Boole.
22
La notazione con la freccia sar`a spiegata in seguito; per ora si intenda che a ogni lettera
corrisponde un valore di verit`
a, e per la valutazione v che a ogni proposizione corrisponde
o 0 o 1.
23
Si noti che in v((A)) e in altre espressioni analoghe ci sono due tipi di parentesi, che
andrebbero tipograficamente distinte; quelle interne sono le parentesi della proposizione,
quelle esterne servono per la notazione funzionale v(x).
21

41

In alternativa, si considerano 0 e 1 come interi modulo24 2, {0, 1} = Z2 , e si


scrivono le condizioni:
v((A))
v((A B))
v((A B))
v((A B))
v((A B))
v((A B))

=
=
=
=
=
=

1 + v(A)
v(A) v(B)
v(A) + v(B) + v(A) v(B)
v(A) + v(B)
1 + v(A) (1 + v(B))
1 + (v(A) + v(B)).

Ogni interpretazione i si estende a una valutazione i ponendo


i ((p)) = i(p)
e definendo i sulle proposizioni composte in modo da soddisfare le condizioni
della definizione di valutazione.
Per ogni valutazione v il valore di verit`a di una proposizione A si ottiene
applicando ai valori delle sottoproposizioni immediate di A una funzione, che
dipende dal connettivo principale di A.
3.2.1

Tavole di verit`
a

Ad ogni connettivo `e associata una funzione di verit`


a , cio`e una funzione da
{0, 1}n in {0, 1}, dove n `e il numero di argomenti del connettivo ({0, 1}n `e
linsieme delle n-uple di 0 e 1). Per il loro carattere finito queste funzioni
sono rappresentate da tabelle, che sono dette tavole di verit`
a.
La tavola di verit`a della negazione `e:
A
1
0

A
0
1
la tavola di verit`a della congiunzione:
A
0
0
1
1
24

B
0
1
0
1

AB
0
0
0
1

Per chi non sa cosa significa, sar`a spiegato in seguito, limportante `e che 1 + 1 = 0.

42

la tavola di verit`a della disgiunzione:


A
0
0
1
1

AB
0
1
1
1

B
0
1
0
1

la tavola di verit`a della disgiunzione esclusiva:


A
0
0
1
1

B
0
1
0
1

AB
0
1
1
0

la tavola di verit`a del condizionale:


A
0
0
1
1

B
0
1
0
1

AB
1
1
0
1

e la tavola di verit`a del bicondizionale:


A
0
0
1
1

B
0
1
0
1

AB
1
0
0
1

Quando si deve trovare il valore di verit`a di una proposizione, o di un numero finito di esse, sotto uninterpretazione, `e sufficiente considerare i valori
assunti dalle lettere che vi compaiono, quindi le interpretazioni diventano
assegnazioni di valori 0 o 1 ad un numero finito di lettere, e per ogni proposizione ce ne `e un numero finito. Data una proposizione, il calcolo dei suoi
valori di verit`a per ogni possibile interpretazione si pu`o organizzare in una
tabella con i valori progressivi attribuiti alle sottoproposizioni (individuate
dallanalisi sintattica), come nei seguenti esempi:
43

Se A `e p p q:
p
0
0
1
1

q p p p
0 1
0
1 1
0
0 0
0
1 0
0

p p q
1
1
1
1

Se A `e p r p (q r):
p
0
0
0
0
1
1
1
1

q
0
0
1
1
0
0
1
1

r p q r p (q r) p r
0 1
1
1
0
1 1
1
1
1
0 1
0
0
0
1 1
1
1
1
0 0
1
0
1
1 0
1
0
1
0 0
0
0
1
1 0
1
0
1

A
1
1
1
1
0
0
0
0

Tali tabelle si chiamano tavole di verit`a delle proposizioni.


Come si vede dagli esempi, ci sono proposizioni che per ogni interpretazione hanno il valore 1, altre che per alcune interpretazioni hanno il valore 0
e per altre interpretazioni il valore 1. Si possono dare esempi di proposizioni
che per ogni interpretazione assumono il valore 0 (esercizio).
Si ricordi che una proposizione, in quanto schema, non `e ne vera ne falsa; !!!
solo la sua tavola di verit`a completa spiega tutti i possibili modi in cui lo
schema pu`o realizzarsi nelle diverse interpretazioni.
3.2.2

Esercizi

1. Costruire la tavola di verit`a delle proposizioni:


(p p) p
p (p p)
pq pq

44

pqr prs
(p q) r p (r s)
p (q p).
2. Spiegare quale `e la disgiunzione usata nella programmazione, in considerazione del fatto che ivi si adotta la valutazione pigra: quando viene valutata una disgiunzione, e la prima condizione `e vera, la seconda
condizione non viene esaminata25 .
3. Trovare le tavole di verit`a corrispondenti a a meno che, anche se.
4. Scrivere la tavola di verit`a per le particelle logiche ne . . . ne e non
(`e vero che) sia . . . sia . . . .
5. Costruire la tavola di verit`a per se . . . allora . . . , altrimenti . . . .
Avvertenza. Si faccia attenzione che il costrutto if . . . then nei linguaggi di programmazione `e usato piuttosto come ; se lo statement
`e falso listruzione non viene eseguita: ad esempio se si esegue
if importo saldo then saldo := saldo - importo,
lenunciato dellassegnazione verr`a eseguito solo se limporto da prelevare `e minore o uguale al saldo26 .
3.2.3

Validit`
a e conseguenza

Se i (A) = 1, si dice che A `e vera nellinterpretazione i, o che i soddisfa A,


o che i `e un modello di A, e si scrive anche
!!!
i |= A.
Se esiste almeno una i tale che i |= A, si dice che A `e soddisfacibile, o
(semanticamente) consistente. Se non esiste alcun modello di A, si dice che
A `e insoddisfacibile, o (semanticamente) inconsistente, o contraddittoria, o
una contraddizione. Se per ogni i si ha i |= A, si dice che A `e logicamente
valida, o logicamente vera, o una tautologia, e si scrive
|= A.
25
26

Horstmann, p. 212.
Horstmann, p. 186.

45

Si dice che B `e conseguenza logica di A, o che A implica B, e si scrive


A |= B
se per ogni i, se i |= A allora i |= B. Si noti che, grazie alla tavola di verit`a
del condizionale,
Osservazione 3.2.1 Per ogni A e B,
A |= B se e solo se |= A B.
Se A `e27 A1 . . .An , invece di A1 . . .An |= B si scrive A1 , . . . , An |= B.
Se T = {A1 , . . . , An }, allora si dice che i soddisfa T se e solo se i |= A1
. . . An .
Se A |= B e B |= A, si dice che A e B sono logicamente equivalenti , o
anche solo equivalenti, e si scrive A B.
Osservazione 3.2.2 Per ogni A e B,
A B se e solo se |= A B.
Si noti che |= e sono segni metalinguistici, non connettivi.
Le tautologie, in particolare quelle che sono nella forma di equivalenze o
implicazioni, sono dette anche leggi logiche.
Un elenco di leggi logiche notevoli `e presentato nella pagina successiva.

27

Si veda fra due pagine per la notazione.

46

Leggi logiche notevoli 1


AA
legge dell0 identit`
a
A A
legge della doppia negazione
AB BA
commutativit`
a di
(A B) C A (B C)
associativit`
a di
AB BA
commutativit`
a di
(A B) C A (B C)
associativit`
a di
AAA
idempotenza di
AAA
idempotenza di
AB A
eliminazione di
AAB
introduzione di
A (B C) (A B) (A C)
distributivit`
a
A (B C) (A B) (A C)
distributivit`
a
A (A B) A
legge di assorbimento
A (A B) A
legge di assorbimento
(A B) (A B)
legge di De M organ
(A B) (A B)
legge di De M organ
A A
legge del terzo escluso
(A A)
legge di non contraddizione
A B B A
legge di contrapposizione
A A B
Lewis, o ex falso quodlibet
A (B A)
aff ermazione del conseguente
A (A B)
negazione dell 0 antecedente
(A B B) A
legge di riduzione all0 assurdo
(A A) A
riduzione all0 assurdo debole
(A A) A
consequentia mirabilis
((A B) A) A
legge di P eirce
(A B) (B A)
legge di Dummett
A ((A B) B)
modus ponens
A (B C) B (A C)
scambio antecedenti
(A C) (B C) A B C
distinzione di casi
(A B) (A B) B
distinzione di casi
(A (B C)) ((A B) (A C))
distributivit`
a di
(A B) (B C) (A C)
transitivit`
a di
A (B C) (A B) C
importazione/esportazione
delle premesse

47

Per verificare queste leggi, dove A, B, . . . sono qualunque, si devono prima verificare le stesse nel caso particolare che A, B, . . . siano atomiche (ad
esempio p p per la legge dellidentit`a), e poi sfruttare il fatto che se A[p]
`e una tautologia e B `e qualunque, allora anche il risultato della sostituzione
di B a p in A `e una tautologia (vedi esercizi).
Per le leggi che nella tabella sono scritte come condizionali e non bicondizionali, si vedr`a in seguito che limplicazione inversa in generale non sussiste
(salvo alcuni casi, ad esempio per linverso della riduzione allassurdo debole
A (A A), che rientra nellaffermazione del conseguente).
Lassociativit`a della congiunzione giustifica che si possa scrivere senza
ambiguit`a, indipendentemente dalle convenzioni sulle parentesi, A B C
per (indifferentemente) A (B C) o (A B) C, o in generale A1 . . . An
(e lo stesso per la disgiunzione). A (B C) e (A B) C sono diverse
(si disegni il loro albero sintattico) ma si dice che sono uguali a meno di
equivalenza logica.
Anche le seguenti sono leggi logiche:
A B A B
(A B) (A B) (B A)
A B (A B) (B A)
A B (A B) (A B).
Si noti che le due leggi per forniscono un esempio di come una particella
logica possa essere espressa con diversi giri di frase equivalenti; queste equivalenze in genere mostrano cosa significa che frasi diverse vogliono dire la
stessa cosa.
Per mezzo di esse, dalle leggi elencate sopra se ne derivano altre; ad
esempio dal modus ponens e dallesportazione, con la prima, si ricava
A (A B) B

sillogismo disgiuntivo.

Ma queste leggi soprattutto permettono di vedere che i connettivi , ,


sono definibili in termini di , e .
Alcune leggi sono spesso presentate in forma di regole di inferenza; ad
esempio il modus ponens, invece che da A, A B |= B, da

48

A, A B
,
B
il sillogismo disgiuntivo da

A, A B
B
o da

A, A B
,
B
leliminazione della congiunzione da

AB
AB
e
A
B
e lintroduzione della disgiunzione da

A
B
e
AB
AB
e altre ancora possibili.
Le regole e la loro rappresentazione grafica si interpretano nel seguente
modo. Le leggi corrispondenti permettono di asserire che se sono vere le
proposizioni sopra la riga, o premesse della regola, allora `e vera anche la
proposizione sotto la riga, o conclusione. Regole dinferenza di questo genere
si dicono corrette se le premesse implicano logicamente la conclusione - quindi
le regole sopra elencate sono corrette.
Per mezzo delle regole di inferenza si deduce una proposizione da unaltra,
o da altre date, che si chiamano assunzioni; si dice che una proposizione B si
deduce da unaltra A se A |= B e se questo fatto `e riconosciuto e certificato
da una spiegazione.
49

Un modo per riconoscere la sussistenza di A |= B `e quello di inserire tra A


e B altre proposizioni legate tra loro dalla relazione di premesse-conclusione
di regole corrette.
Ad esempio per stabilire
(r p q) r p |= q
si pu`o eseguire la seguente deduzione:
(r p q) r p
r pq
r
p
pq
q
usando leliminazione della congiunzione, il modus ponens e il sillogismo
disgiuntivo.
La relazione di conseguenza logica `e evidentemente transitiva: se A |= C
e C |= B allora A |= B (esercizio).
3.2.4

Esercizi

1. Verificare con le tavole di verit`a le precedenti leggi logiche.


2. Spiegare perche
Se |= A allora B |= A per ogni B.
Se |= A allora |= A B per ogni B.
Se |= A e |= A B allora |= B.
3. Spiegare perche se A[p] `e una tautologia, anche la proposizione che si
ottiene sostituendo p con una B qualunque `e una tautologia.
4. Verificare la seguente generalizzazione delle leggi di assorbimento, che
A A C se C |= A, e che A A C se A |= C.
!!!
5. Verificare che A T A se T `e una tautologia e che A F A se F
`e una contraddizione, e dedurlo dal risultato del precedente esercizio.
50

6. Verificare che A B (A B) (sia con le tavole, sia in base alla


definizione di interpretazione).
7. Verificare che A B `e equivalente a (A B), in base alla definizione
di interpretazione.
8. Verificare che |= A A.
9. Verificare che |= A B A B ma non viceversa.
10. Spiegare perche A A B non `e logicamente vera.
11. Verificare che p q `e equivalente a p (q p) ed a p (q p).
12. Verificare che la regola del sillogismo disgiuntivo `e corretta anche con
al posto di .
13. Notare che (A B) A B (provare a trovare frasi in italiano che
si possono dire bene in entrambi i modi).
14. Verificare se valgono le distributive tra e .
15. Verificare se A (B C) (A B) C.
16. In base al precedente esercizio, discutere quando A1 . . . An `e vera.
17. Verificare che A A e che A A. Generalizzare.
18. Si consideri il problema del merging di due liste List1 e List2 in una
terza lista List3 (ad esempio nomi, in ordine alfabetico).
Una prima formulazione dellalgoritmo `e la seguente: nello scorrere le
due liste, se List1 non `e esaurita e List2 `e esaurita oppure lelemento
in considerazione di List1 precede il primo non ancora inserito di List2,
allora lelemento di List1 `e inserito in List3.
Unaltra formulazione potrebbe essere la seguente: il prossimo elemento
in List3 `e preso da List1, ed `e il primo elemento di List1 non ancora
inserito, quando List1 non `e esaurita e List2 s`, oppure quando List1
non `e esaurita e lelemento in considerazione di List1 precede il primo
non ancora inserito di List2.
Usando lettere p, q, r per rappresentare rispettivamente List1 non `e
esaurita, List2 `e esaurita e lelemento di List1 precede quello di
51

List2, scrivere le proposizioni corrispondenti alle due versioni delle


condizioni (che portano entrambe a mettere in List3 lelemento in esame
di List1), e discutere se siano o no equivalenti, in base a quali leggi.
Si noti che ovviamente nella prima versione c`e unambiguit`a dovuta
alla presenza di congiunzione e disgiunzione; discutere le due versioni
e scegliere quella giusta.
19. Si distribuiscono carte da gioco, pi`
u di una per giocatore, e si sa che
un giocatore ha in mano un Asso o un Re. Si considerino le seguenti
due proposizioni:
A: se in mano ha un Asso, ha un 2
B: se in mano ha un Re, ha un 2.
Che cosa si pu`o dedurre da A B, cio`e se esattamente una tra le
proposizioni A e B `e vera?
Che cosa si pu`o dedurre se entrambe le proposizioni A e B sono vere?
20. Per conquistare la principessa, Aladino deve scegliere di aprire una di
due scatole A e B; sa che in una c`e un anello di fidanzamento, nellaltra
un serpente velenoso. Sulla scatola A `e scritto: Almeno una di queste
scatole contiene un anello; sulla scatola B `e scritto: Nella scatola
A c`e un serpente velenoso che uccide allistante. Ad Aladino viene
detto che o entrambe le scritte sono vere, o entrambe false. Quale
scatola apre?
21. Se io ho ragione, tu hai torto; se tu hai ragione, io ho torto; quindi
uno di noi ha ragione. Corretto o no? Perche?
22. La storia insegna che non si impara niente dalla storia. Vero o falso?
Perche?
Suggerimento. Riduzione allassurdo debole.

3.3

Sullimplicazione

Abbiamo distinto il condizionale, che `e un connettivo, o il nome di una proposizione della forma A B, dallimplicazione, che `e una relazione tra
proposizioni, e non si scrive A B ma |= A B. A implica B significa
il condizionale A B `e una tautologia.

52

La terminologia `e qualche volta ambigua perche per leggere ad esempio


una regola come il sillogismo disgiuntivo si trova anche detto se A e A B
allora B, in alternativa a A e A B implicano B. Se si `e in un contesto
deduttivo si capisce forse che si sta parlando dellimplicazione e non leggendo
semplicemente la forma di una proposizione. Limportante ad ogni modo non
`e la terminologia quanto capire la differenza.
Il soggetto di A implica B non `e A ma A B. Qualche volta, in
analogia al caso dellequivalenza, si introduce un simbolo speciale per limplicazione, che assomigli a un connettivo, ad esempio A B; il nostro
simbolo `e |=.
Si dice ad esempio il condizionale p p q ha cinque simboli, non
limplicazione p p q ha cinque simboli, perche limplicazione `e un
fatto che sussiste o no, e un fatto non `e formato da simboli. Al massimo `e
un predicato, sotto cui cadono alcuni condizionali, come in il condizionale
p p q `e unimplicazione. Oppure si pu`o dire che vale limplicazione
p p q, ma non si parler`a ad esempio dellimplicazione p q r, che non
`e una tautologia.
Siccome purtroppo la terminologia non `e uniforme, e si possono trovare
usate entrambe le parole, bisogna fare attenzione al contesto.
Nella tradizione logica, il condizionale era anche chiamato implicazione materiale, per distinguere la relazione di conseguenza da altre forme di implicazione,
o da altri sensi del costrutto se . . . allora.
In effetti, il significato di se . . . allora `e polimorfo:
significato logico (o inferenziale):
Se tutti gli uomini sono mortali e Socrate `e un uomo, allora Socrate `e
mortale.
significato definitorio:
Se `e scapolo, allora non `e sposato.
significato causale:
Se si immerge una cartina di tornasole e diventa rossa, allora il liquido `e un
acido.
significato materiale:
Se la Terra vola, allora la Terra `e piatta.

53

` difficile trovare qualcosa di positivo in comune tra queste diverse accezioni del
E
se . . . allora. In particolare il caso che ha sollevato maggiori discussioni `e lultimo,
come considerare il condizionale se antecedente e conseguente sono entrambe false.
Una cosa in comune ce lhanno, ed `e che in tutte le accezioni lunico modo
per dichiarare il condizionale falso `e quello di riscontrare antecedente vera e conseguente falsa, anche per il significato materiale: se la Terra `e rotonda, allora il
Sole `e freddo si considera falso.
Allora il significato parziale comune si pu`o esprimere riempiendo la tavola di
verit`a con i valori che sono di fatto quelli di (A B):
!!!
Un condizionale `e corretto [secondo Crisippo] se la negazione della
sua conclusione `e incompatibile con la sua premessa (Sesto Empirico,
Schizzi pirroniani , II, 110-2).
Si ottiene cos` quella che gli antichi chiamavano implicazione materiale:
Secondo lui [Filone di Megara] ci sono tre modi in cui un condizionale
pu`o essere vero, e uno in cui pu`o essere falso. Perche un condizionale `e vero quando inizia con una verit`a e termina con una verit`a,
come se `e giorno, `e chiaro. Ed `e vero anche quando inizia con una
falsit`a e termina con una falsit`a, come se la terra vola, la terra ha
ali. Analogamente, `e vero un condizionale che inizia con una falsit`a
e termina con una verit`a, come se la terra vola, la terra esiste. Un
condizionale `e falso soltanto quando inizia con una verit`a e termina
con una falsit`a, come se `e giorno, `e notte (Sesto Empirico, Contro i
matematici , VIII, 113).
Con questa scelta per la tavola di si giustifica la regola del modus ponens, che
`e quello che interessa, per luso che se ne fa nei discorsi con se . . . allora.
Il motivo per cui il condizionale `e difficile e controverso `e che non gli si pu`o
associare una rappresentazione mentale immediata di quello che descrive. Quando
si ascolta A B, le rappresentazioni nella mente del fatto descritto da A e di quello
descritto da B vengono fuse in ununica rappresentazione, del fatto descritto da A
B, affiancandole o integrandole; anche con A B le due rappresentazioni possono
essere compresenti, con lattenzione che si sposta dalluna allaltra e viceversa,
come se si guardassero alternativamente due quadri vicini. Con il condizionale non
`e possibile avere una rappresentazione del fatto descritto da A B, combinando
quelle relative ad A e B. Non esiste una rappresentazione unica della falsit`a di
A. Vengono meno perci`o gli ausili dellimmaginazione e della sensibilit`a; lunico
modo per dominare il condizionale `e quello di imparare bene fino a interiorizzarle

54

le sue condizioni duso, sia il calcolo dei valori di verit`a sia le leggi e le regole che
lo concernono.
La definizione del condizionale tuttavia non `e solo adeguata per svolgere le
dimostrazioni, grazie alla giustificazione del modus ponens, ma `e anche comoda
(nella scelta di dare il valore vero quando lantecedente `e falsa) per la costruzione
generale dei linguaggi formali, e la trattazione dei quantificatori universali ristretti,
come abbiamo visto.

55

Insiemi e algebre di Boole

Esempi di proposizioni a cui si applicano utilmente le nozioni e le tecniche


logiche sono le formule matematiche; consideriamo dapprima formule senza
quantificatori, che sono quelle a cui gli studenti sono abituati, anzi le uniche
che sono abituati a chiamare formule. In esse compaiono le variabili x, y, . . .
Le variabili che occorrono in una formula, ad esempio x in 1 < x <
3, si chiamano anche variabili individuali, perch`e prendono come valori gli
elementi delluniverso del discorso. In generale, unasserzione in cui compare
la variabile x sar`a indicata con p(x).
Una formula del genere, ad esempio 1 < x < 3, non si pu`o dire ne vera
ne falsa, in quanto non `e precisato se la variabile della essere intesa in senso
universale o particolare. Non la si riesce neanche a leggere in italiano: un
numero compreso tra 1 e 3? i numeri compresi tra 1 e 3? ma manca il
verbo. Non si pu`o leggere un numero `e compreso tra 1 e 3 perche allora
come leggere 3 < x < 1? Di fronte a questa si dice non esiste un numero
maggiore di 3 e minore di 1, ma allora si introducono i quantificatori.
Di solito la si legge tuttavia come una proposizione che afferma qualcosa
a proposito di x, dove x denota un elemento non precisato delluniverso: x
`e compreso tra 1 e 3; `e come se fosse presente un numero incappucciato, che
dice io sono compreso tra 1 e 3. Se si toglie il cappuccio ed appare 2 ha
detto il vero, se appare 0, o 3 o 5 ha detto il falso.
Supponiamo che luniverso sia costituito dai numeri naturali. Se il numero incappucciato continua dicendo quindi io sono il numero 2, bisogna
ammettere che linferenza `e corretta, anche senza togliergli il cappuccio. La
formula 1 < x < 3 `e soddisfatta dal solo elemento 2, e possiamo affermare
1 < x < 3 x = 2.
Se invece luniverso di discorso, che dalla formula in se non si evince, `e !!!
quello
dei numeri reali, la formula `e soddisfatta anche da 1.1, da 1.9, da 2.5,
da 2 e da tutti gli infiniti elementi dellintervallo (1, 3).
Le formule p(x) senza quantificatori sono usate in matematica per studiare
da quali elementi sono soddisfatte: innanzi tutto se xp(x) `e vero o falso,
e se xp(x) `e vero o falso; ma soprattutto, quando xp(x) `e vero, quale `e
linsieme dei valori che soddisfano p(x).
La formula 1 < x < 3 daltra parte `e unabbreviazione per 1 < x x < 3;
perche un valore di x la soddisfi, questo valore deve soddisfare sia 1 < x sia
x < 3.
Abbiamo dunque formule che assomigliano a quelle le linguaggio propo56

sizionale, in quanto sono composizione mediante connettivi di formule atomiche, solo che queste ultime invece di lettere sono espressioni che contengono
anche x. Si potrebbe dire che si tratta di un linguaggio proposizionale applicato. Ogni volta che si d`a a x un valore, nelluniverso fissato, `e come
assegnare il valore vero o falso alle componenti atomiche. Parleremo per
semplicit`a anche in questo caso per ora di proposizioni, per non complicare
la terminologia, quando applicheremo risultati della logica proposizionale,
oppure le chiameremo formule, in analogia alle formule matematiche.

4.1

Algebra degli insiemi

Se le proposizioni si riferiscono a un dominio di discorso costituito da un


insieme U , U per universo, ad ognuna di queste proposizioni p(x) `e
associato un insieme, che si pu`o chiamare insieme di verit`
a di p(x):
Vp(x) = {x U | p(x) `e vero in U }.
Nel linguaggio insiemistico, x X significa che x `e un elemento di X,
o che x appartiene a X; x 6 X significa che x non appartiene a X, `e
unabbreviazione per (x X).
Con la notazione {x U | p(x) `e vero in U }, si indica linsieme degli
elementi di U per cui p(x) `e vero in U , o che soddisfano la condizione p(x)
in U . Talvolta si scrive anche {x U | p(x)} o addirittura {x | p(x)} se `e
chiaro linsieme ambiente U .
Con la notazione {x1 , . . . , xn } si indica linsieme i cui elementi sono x1 ,
. . . , xn .
Linsieme {x, y} si chiama coppia (non ordinata) di x e y, che sono gli
unici elementi di {x, y}: x {x, y} e y {x, y}1 , e inoltre z {x, y} z =
x z = y. La coppia {x, y} ha due elementi se x 6= y; altrimenti se x = y ne
ha uno solo, si indica {x} e si chiama anche insieme unitario, o singoletto di
x.
Linsieme di verit`a di p(x) `e anche linsieme definito da p(x) in U . Ad
esempio, se U = {a, b, c, d} e p(x) `e x = a x = b, linsieme definito da p(x)
in U `e {a, b}.
1

Talvolta si scrive x, y X per x X e y X, quindi x, y {x, y}.

57

Se U `e linsieme dei numeri naturali e p(x) `e la condizione x `e divisibile


per 2, linsieme di verit`a di p(x) `e linsieme dei numeri pari, e tale insieme
`e definito dalla condizione x `e divisibile per 2.
Un insieme di verit`a `e un sottoinsieme di U ; si dice che X `e un sottoinsieme di Y , o che `e contenuto2 in Y , in simboli X Y , se ogni elemento di
X `e anche elemento di Y : per ogni x, se x X allora x Y .
Qualche volta, raramente, si scrive Y X per X Y .
Si dice che X `e un sottoinsieme proprio di Y , e si scrive X Y , se X Y
ma X 6= Y .
Se X Y e Y X allora X e Y hanno gli stessi elementi; questo
per definizione significa che X = Y . Quello che caratterizza gli insiemi non
sono le loro eventuali definizioni ma i loro elementi; ad esempio linsieme dei
triangoli con tre lati uguali e linsieme dei triangoli con tre angoli uguali sono
lo stesso insieme. Cos` pure {x, y} = {y, x}, da cui la dizione non ordinata
per la coppia.
Le operazioni insiemistiche principali, sui sottoinsiemi di un insieme U ,
sono le seguenti:
Complemento. Il complemento di X (rispetto a U ) `e linsieme degli elementi
di U che non appartengono a X:
X = {x U | x 6 X}.
Differenza. La differenza di X meno Y `e linsieme degli elementi di U che
appartengono a X e non a Y :
X \ Y = {x U | x X x 6 Y }.
Differenza simmetrica. La differenza simmetrica di X e Y `e linsieme degli
elementi di U che appartengono a X e non a Y o a Y e non a X:
X4Y = {x U | x X x Y }.
Intersezione. Lintersezione di X e Y `e linsieme degli elementi di U che
appartengono sia a X sia a Y :
2

Si distingue tra essere contenuto, che si riferisce a sottoinsiemi, ed appartenere,


che si riferisce ad elementi.

58

X Y = {x U | x X x Y }.
X Y si legge: X intersezione Y o X intersecato con Y o lintersezione
di X e Y .
Unione. Lunione di X e Y `e linsieme degli elementi di U che appartengono
ad almeno uno dei due insiemi X e Y :
X Y = {x U | x X x Y }
X Y si legge: X unione Y o X unito a Y o lunione di X e Y .
Lintersezione di X e Y `e il pi`
u grande insieme che `e contenuto sia in X
sia in Y , nel senso che
X Y X3
X Y Y
e
se Z X e Z Y allora Z X Y
mentre lunione di X e Y `e il pi`
u piccolo insieme che contiene sia X sia Y ,
nel senso che
X X Y
Y X Y
e
se Y X e Z X allora Y Z X.
Per dimostrare X Y X ad esempio, si osservi che se x X Y allora
x X x Y , ma x X x Y x X, quindi x X. Inoltre
x X x Y x Y , quindi X Y Y . In modo analogo per le altre.
Si faccia attenzione che in italiano lunione `e descritta anche con la congiunzione: lunione di X e di Y contiene gli elementi di X e di Y .
3

Si noti che non occorrono parentesi perche non `e possibile interpretare questa formula
come X (Y X) in quanto si avrebbe unoperazione tra un insieme e una proposizione
- un errore di tipo, si dice in logica. Qualche volta le parentesi di mettono per agevolare
la lettura.

59

Nella propriet`a di minimalit`a dellunione troviamo la spiegazione dello


scambio di e ed o osservato in precedenza in certe frasi. Se si indica
con Y linsieme delle mele, con Z linsieme delle pere, e con X linsieme dei
frutti, allora la frase mele e pere sono frutti, intesa come le mele sono
frutti e le pere sono frutti significa che Y X Z X, ma questa implica
Y Z X, cio`e che mele o pere sono frutti.
Viceversa, se Y Z X, allora siccome Y Y Z si ha, per la transitivit`a
di - vedi oltre - che Y X e analogamente Z X, cio`e mele o pere sono
frutti implica a sua volta le mele sono frutti e le pere sono frutti.
Le operazioni insiemistiche corrispondono ai connettivi: lappartenenza al
complemento `e definita mediante la negazione, lappartenenza allintersezione
mediante la congiunzione, e cos` via. In analogia, si possono usare le stesse
convenzioni sullordine di priorit`a dei simboli di operazione (, , ) per !!!
ridurre il numero di parentesi.
Viceversa, ai connettivi proposizionali corrispondono le operazioni insiemistiche sugli insiemi di verit`a delle proposizioni componenti.
Vp(x)
Vp(x)q(x)
Vp(x)q(x)

=
=
=

Vp(x)
Vp(x) Vq(x)
Vp(x) Vq(x) .

In particolare si ha VxX = X.
Si pu`o osservare allora che le operazioni non sono tutte indipendenti, ad
esempio:
X \ Y = X ( Y ).
Infatti
X \Y

= {x | x X x 6 Y }
= {x | x X x Y }
= {x | x X ( Y )}
= X ( Y ).

Ma le mutue relazioni delle operazioni le vedremo meglio pi`


u avanti.
Linsieme vuoto `e linsieme che non ha alcun elemento, ed `e un sottoinsieme di qualsiasi U , definito da una condizione contraddittoria qualunque:
60

= {x U |p(x) p(x)},
o
= {x U |x 6= x}.
Se si denotasse questo insieme U e si definisse V = {x V | x 6= x} si
avrebbe U = V perche i due insiemi hanno gli stessi elementi, nessuno per
entrambi.
Caratteristica dellinsieme vuoto `e che per ogni x, in qualunque U , x 6 .
Due insiemi X e Y la cui intersezione sia vuota, X Y = , cio`e non
abbiano alcun elemento in comune, si dicono disgiunti .
Le relazioni tra le operazioni insiemistiche sono espresse da un gruppo di
leggi.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21

X X =X
idempotenza dell0 intersezione
X X =X
idempotenza dell0 unione
X Y =Y X
commutativit`
a dell0 intersezione
X Y =Y X
commutativit`
a dell0 unione
X (Y Z) = (X Y ) Z
associativit`
a dell0 intersezione
X (Y Z) = (X Y ) Z
associativit`
a dell0 unione
X (Y Z) = (X Y ) (X Z)
distributivit`
a di rispetto a
X (Y Z) = (X Y ) (X Z)
distributivit`
a di rispetto a
X (X Y ) = X
assorbimento
X (X Y ) = X
assorbimento
( X) = X
doppio complemento
(X Y ) = ( X) ( Y )
legge di De M organ
(X Y ) = ( X) ( Y )
legge di De M organ
=U
U =
X ( X) =
legge dell0 inverso per
X ( X) = U
legge dell0 inverso per
X U =X
legge dell0 elemento neutro per
X U =U
X =
X =X
legge dell0 elemento neutro per .

61

Esistono altre leggi che riguardano la relazione (alcune gi`a menzionate),


come
22
23
24
25
26

XX
X
XU
X X Y
X Y X

e propriet`a come
27
28
29
30
31
32
33

se X Y e Y Z allora X Z
X Y se e solo se X Y = X
X Y se e solo se X Y = Y
X Y se e solo se X ( Y ) =
X Y se e solo se X Y = U
se X Y e X Z allora X (Y Z)
se Y X e Z X allora (Y Z) X.

Ma non tutte sono indipendenti. La loro dimostrazione pu`o consistere nel


mostrare direttamente che i due insiemi implicati hanno gli stessi elementi.
Esempi
3

X Y = Y X.
Dimostrazione Se x X Y , allora x X x Y ; ma per la
commutativit`a della congiunzione si ha allora x Y x X, quindi
x Y X. Il viceversa, partendo da x Y X, `e analogo.

X Y = Y X.
Dimostrazione Se x X Y allora x X x Y . La conclusione
segue come sopra per la commutativit`a della disgiunzione. Oppure
usiamo la distinzione di casi: se x X, allora x Y x X per la
tautologia A B A. Se x Y allora per la tautologia A A B
62

si ha x Y x X. Quindi x X x Y x Y x X e
X Y Y X. Il viceversa `e analogo.
X (Y Z) = (X Y ) (X Z).

Dimostrazione Mostriamo prima che X (Y Z) (X Y ) (X Z).


Se x X (Y Z) allora x X e x Y Z. Ci sono due casi: o x Y
o x Z. Nel primo caso, x X e x Y , quindi x X Y , e quindi
x (X Y ) (X Z) per la 25, che supponiamo dimostrata4 . Nel
secondo caso, x X e x Z, quindi x X Z e quindi x appartiene
a (X Y ) (X Z), per la 25 e la 4.
Si mostri ora nello stesso modo (esercizio) che (X Y ) (X Z)
X (Y Z), e luguaglianza `e provata.
21

X = X.
Dimostrazione Se x X , allora x X x , ma x 6 quindi
per il sillogismo disgiuntivo x X. Il viceversa segue dalla 25.

24

X U.
Dimostrazione x U (x X x U ) - quale legge logica
interviene?

23

X.
Dimostrazione Per ogni x, x x X `e vera, qualunque sia X,
perche lantecedente `e falso.

17

X ( X) = U .
Dimostrazione Per ogni x, x X (x X) `e vera per la legge del
terzo escluso. Cos` si dimostra , il viceversa `e 24.

30

X Y se e solo se X ( Y ) = .
Dimostrazione Da sinistra a destra. Se x X allora x Y ; se ora
esistesse un x X ( Y ) si avrebbe una contraddizione x Y e x
Y . La dimostrazione `e per assurdo, ma di questa forma particolare:
per dimostrare A B si assume A B. Da questa si deriva una
contradizione, quindi (A B), cio`e A B.
Il viceversa per esercizio.

La dimostrazione `e implicita nella precedente dimostrazione di 4.

63

Come si vede dagli esempi, alcune propriet`a delle operazioni sono diretta conseguenza delle omonime propriet`a dei connettivi corrispondenti; dal
terzo esempio relativo alla 5 si vede anche che in dimostrazioni di questo
tipo fa comodo, per saltare qualche passaggio, fare appello ad altre delle
leggi elencate - pi`
u semplici, o intuitive o gi`a dimostrate. Pi`
u in generale,
una volta dimostrate alcune delle suddette leggi in modo diretto, `e possibile
derivare le altre in stile algebrico, usando quelle gi`a dimostrate e le leggi
delluguaglianza.
Con leggi delluguaglianza si intendono le propriet`a riflessiva, simmetrica
e transitiva di =, rappresentate dalle formule
x=x
x=yy=x
x = y y = z x = z,
e le propriet`a di sostituzione, che sono di due tipi:
t = s f (t) = f (s),
dove t ed s sono termini del linguaggio in uso, e f (x) un altro termine contenente la x, e
t = s (p(t) p(s)),
dove p(x) sta per una proposizione qualunque contenente x.
Queste leggi sono tacitamente usate nei passaggi di trasformazione di
formule algebriche, o di proposizioni di qualunque linguaggio che contenga
luguaglianza. I passaggi da unuguaglianza ad unaltra presuppongono il
modus ponens: da t = s a f (t) = f (s) grazie a t = s f (t) = f (s).
Nel caso delle leggi insiemistiche in esame le variabili sono X, Y, . . . invece
che x, y . . ., perche tali leggi non si riferiscono agli elementi ma ai sottoinsiemi.
Esempi
1. La 15 segue dalla 14 e dalla 11 con i passaggi
=U
( ) = U
= U
U = .
64

2. La 17 segue dalla 16 e dalle 12, 14, 11, 4, nellordine, con i seguenti


passaggi
X ( X) =
(X ( X)) =
( X) ( ( X)) = U
( X) X = U
X ( X) = U .
3. La 18 segue da 17, 7, 1, 16 e 21 con i seguenti passaggi
X ( X) = U
U = X ( X)
X U = X (X ( X))
X U = (X X) (X ( X))
X U =X
X U = X.
4. La 31: X Y se e solo se X Y = U , segue dalla 30 e da De
Morgan con 11 e 14.
Grazie alla validit`a delle leggi associative per unione e intersezione, queste
operazioni possono essere generalizzate a pi`
u di due insiemi.
Se A1 , . . . , An sono n sottoinsiemi di U , la loro unione `e linsieme i cui
elementi sono gli elementi di U che appartengono a qualche Ai , in simboli:

n
[

Ai = {x U | per qualche i, 1 i n, x Ai }

i=1

o anche
Sn

i=1

Ai , o semplicemente

65

Ai .

Lintersezione generalizzata degli n insiemi `e linsieme degli elementi che


appartengono a tutti gli Ai , in simboli:
n
\

Ai = {x U | per ogni i, 1 i n, x Ai }

i=1

o anche
Tn

i=1

Ai , o semplicemente

Ai .

Per queste operazioni generalizzate valgono molte delle leggi dellunione


e intersezione, opportunamente riformulate, ad esempio le propriet`a commutativa, associativa e di assorbimento; valgono le leggi di De Morgan:
T
S
( ni=1 Ai ) = ni=1 ( Ai )
e
T
S
( ni=1 Ai ) = ni=1 ( Ai ).
Valgono le leggi distributive di una operazione generalizzata rispetto a una
normale (non con entrambe generalizzate):

n
\

Ai ) B =

i=1

n
\

(Ai B)

i=1

n
[

Ai ) B =

i=1

n
[

(Ai B).

i=1

Pi`
u in generale ancora, si definisce lunione
S
S
{Ai | i I}
iI Ai o
per una famiglia di insiemi indiciata5 da I ponendo che
S
x iI Ai se e solo se esiste un i I per cui x Ai ,
e analogamente per lintersezione. La definizione come si vede `e la stessa,
con i I al posto di 1 i n.
5

Si chiama cos` e si indica anche con {Ai }iI un insieme i cui elementi corrispondono
ciascuno ad un elemento di un insieme I, detto insieme degli indici. Si veda alla fine del
paragrafo 5.

66

4.2

Algebre di Boole

Indagando la reciproca derivabilit`a delle varie leggi, ci si accorge che tutte


(sia quelle elencate che altre, quelle che sono valide per ogni famiglia di
sottoinsiemi di un insieme) sono derivabili dalle seguenti:

3
4
5
6
7
8
16
17
18
21

X Y =Y X
X Y =Y X
X (Y Z) = (X
X (Y Z) = (X
X (Y Z) = (X
X (Y Z) = (X
X X =
X X = U
X U =X
X =X

Y)Z
Y)Z
Y ) (X
Y ) (X

commutativit`
a dell0 intersezione
commutativit`
a dell0 unione
associativit`
a dell0 intersezione
associativit`
a dell0 unione
Z)
distributivit`
a di rispetto a
Z)
distributivit`
a di rispetto a
legge dell0 inverso per
legge dell0 inverso per
legge dell0 elemento neutro per
legge dell0 elemento neutro per .

Queste leggi si chiamano assiomi delle algebre di Boole. La scelta degli


assiomi non `e arbitraria (ci sono ragioni di analogia con altri sistemi di assiomi per altre strutture) ma non `e univoca. Abbiamo visto ad esempio che
se ci fosse la 1, la 18 sarebbe superflua. Limportante `e la mutua e varia interderivabilit`a delle leggi tra loro, e che tutte le leggi valide per i sottoinsiemi
di un insieme non vuoto U siano derivabili da quelle scelte come assiomi. La
raccolta di queste negli assiomi `e solo, inizialmente, una comodit`a mnemonica.
Linsieme dei sottoinsiemi di un insieme non vuoto U , con le operazioni
, , e gli elementi speciali e U `e un particolare esempio di algebra di
Boole, che si chiama algebra di insiemi; ne vedremo altre.
Vediamo come si derivano dagli assiomi alcune delle altre leggi prima
elencate.
1

X =X X
X
X
X
X
X

=X U
= X (X X)
= (X X) (X X)
= (X X)
=X X
67

per la 18
per la 17
per la 7
per la 16
per la 21.

X =X X

20

X =

(esercizio)

X
X
X
X
19

X U =U

= X (X X)
= (X X) X
= X X
=

per la 16
per la 5
per la 1
per la 16.

(esercizio).

Prima di considerare altre leggi, occorre dimostrare lunicit`


a degli elementi neutri e del complemento. Per quello dellintersezione, questo significa:
34

Se X Y = Y per ogni Y , allora X = U .


Dimostrazione Sostituendo U a Y si ha X U = U ma X U = X per
la 18, quindi X = U .

Per lelemento neutro dellunione, lunicit`a significa:


35

Se X Y = Y per ogni Y , allora X = (esercizio).

Lunicit`a del complemento, o dellinverso, `e la propriet`a che:


36

Se X Y = e X Y = U allora X = Y .
Dimostrazione
X =X U
= X (Y Y )
= (X Y ) (X Y )
= (X Y )
= (Y Y ) (X Y )
= (Y X) Y
= U Y
= Y
usando anche la 3.

11

per la 18
per la 17
per la 7
per l0 ipotesi
per la 16
per la 7
per l0 ipotesi
per la 18,

X = X
Dimostrazione Siccome X X = e X X = U , per la 36 ora
vista con X al posto di Y da 16 e 17 si ha X = X.
68

13

(X Y ) = X Y
Dimostrazione Per applicare la 36, facciamo vedere che
( X Y ) (X Y ) = U
e
( X Y ) (X Y ) = .
La prima segue da questi passaggi (abbreviati, esplicitarli tutti per
esercizio, serve anche la 19 di sopra):
( X Y ) (X Y ) = ( X X Y ) ( Y X Y )
=U U =U
e la seconda (utilizzando 20) da:
( X Y ) (X Y ) = ( X Y X) ( X Y Y )
= = .

37 X Y = X se e solo se X Y =
Dimostrazione
X =X U
per la 18
= X (Y Y )
per la 17
= (X Y ) (X Y ) per la 5
quindi se X Y = allora X = X Y .
Viceversa se X = X Y
U = X X
per la 17
= X (X Y )
= ( X X) ( X Y ) per la 6
= U ( X Y )
per la 17
= X Y
per la 18
Quindi = X Y per la 13 e la 15 (esercizio).

69

9 X (X Y ) = X
Dimostrazione Si noti che
X (X Y ) = (X X) (X Y ) = X (X Y )
per la 1 e la 5, per cui la 9 e la 10 si dimostrano insieme.
Per la 37 e la 13
X (X Y ) = X se e solo se X ( X Y ) =
ma X ( X Y ) = (X X) Y = Y = , per
lassociativit`a, la commutativit`a e la 20.
4.2.1

Esercizi

1. Dimostrare
A (B (C \ A)) = A B
A B (A B) = A B
A (C (A B)) = A (C B)
(A \ B) (B A) = A
(A (B C)) ( B A) = (A B) (A C).
2. Dimostrare le propriet`a 22 - 33 della relazione , a partire dagli assiomi,
usando 28 come definizione di 6 .
3. Lo stesso, usando una volta 29, una volta 30 e una volta 31 come
definizione di
4. Dimostrare, a partire dagli assiomi delle algebre di Boole, tutte le altre
leggi sopra elencate per le operazioni di unalgebra di insiemi.
6

La 22 e la 27, insieme a X = Y se e solo se X Y e Y X stabiliscono che `e


una relazione di ordine parziale, secondo la definizione che sar`a data nel paragrafo 5.

70

4.3

Algebra delle proposizioni

Due altre notevoli algebre di Boole sono importanti, lalgebra 2 e lalgebra


delle proposizioni.
Quando si dice che gli assiomi sopra elencati sono gli assiomi delle algebre
di Boole, non si intende che i simboli di operazioni usati nella formulazione
degli assiomi denotino le operazioni insiemistiche di unione, intersezione e
complemento; altrimenti le uniche algebre di Boole sarebbero le algebre di
insiemi. Sintende solo che siano operazioni rispettivamente binarie (le prime
due) e unaria (la terza), e che soddisfino le propriet`a espresse dagli assiomi.
Pu`o essere utile addirittura riscrivere gli assiomi con altri simboli che non
abbiamo un significato gi`a consolidato7 :
x y =yx
commutativit`
a
x+y =y+x
commutativit`
a
x (y z) = (x y) z
associativit`
a
x + (y + z) = (x + y) + z
associativit`
a
x (y + z) = (x y) + (x z)
distributivit`
a
x + (y z) = (x + y) (x + z)
distributivit`
a
x (x) = 0
inverso
x + (x) = 1
inverso
x 1=x
elemento neutro
x+0=x
elemento neutro
e indicare la relazione definita da x y = x con .
Si ha 0 x 1 per ogni x (esercizio). La relazione `e un ordine parziale
per lesercizio 1 di 4.3.1.
Lalgebra 2 `e lalgebra il cui universo `e {0, 1} con 0 < 1, rappresentata
dal diagramma
1

0
dove `e < e x + y = max{x, y} e x y = min{x, y}.
7

Con lordine di priorit`


a , , +. `e una pallina e non un punto, per distinguerla dalla
moltiplicazione.

71

Lalgebra 2 `e lalgebra dei valori di verit`a. Le sue tre operazioni sono


quelle che intervengono nel calcolo dei valori di verit`a di negazioni, disgiunzioni e congiunzioni.
Esistono altre algebre di Boole finite, come ad esempio lalgebra 4
1
%

b
-

%
0

dove a e b sono inconfrontabili rispetto a ; `e proprio parziale.


Esercizio: definire le operazioni in modo che questa struttura diventi
unalgebra di Boole.
Esercizio. Dimostrare che `e lalgebra dei sottoinsiemi di un universo con
due elementi.
Lalgebra delle proposizioni si ottiene nel seguente modo; gi`a si sono dimostrate (considerando anche gli esercizi) quasi tutte le leggi logiche che
hanno lo stesso nome degli assiomi delle algebre di Boole:
AB BA
commutativit`
a
AB BA
commutativit`
a
A (B C) (A B) C
associativit`
a
A (B C) (A B) C
associativit`
a
A (B C) (A B) (A C) distributivit`
a
A (B C) (A B) (A C) distributivit`
a.
Le equivalenze non sono uguaglianze ma si possono trasformare in vere
uguaglianze tra (nuovi) oggetti con la seguente costruzione.
La relazione `e una relazione di equivalenza, vale a dire soddisfa le
propriet`a:
AA
se A B allora B A
se A B e B C allora A C

rif lessiva
simmetrica
transitiva.

Si definisce allora per ogni A la classe di equivalenza di A come


72

[A] = {B | A B}
e si ha che
[A] = [B] se e solo se A B
(esercizio).
Date due proposizioni A e B, esse o sono logicamente equivalenti o no.
Nel primo caso, [A] = [B]. Nel secondo caso le due classi [A] e [B] sono
disgiunte: se infatti ci fosse un elemento C in comune, vorrebbe dire che
A C e che B C, ma allora per la transitivit`a si avrebbe A B e
[A] = [B].
A si dice un rappresentante della classe [A]; ogni classe ha pi`
u rappresentanti, anzi infiniti. Se B [A] allora B A quindi [A] = [B] e B `e un altro
rappresentante di [A]. In particolare ad esempio [A] = [AA] = [AAA] . . .
Si possono definire tra queste classi le seguenti operazioni:
[A]
= [A]
[A] [B] = [A B]
[A] + [B] = [A B].
Le definizioni sono ben poste, in questo senso. Si tratta di operazioni sulle
classi, ma la loro definizione fa riferimento ad un particolare rappresentante
delle classi. Ad esempio [A] `e definita con A e non ad esempio con A.
Se si cambia il rappresentante di una classe, si vuole che il risultato, che `e
una classe, sia lo stesso.
In effetti `e cos` per le operazioni sopra definite. Ad esempio se A1 A
e B1 B, siccome A1 B1 A B (esercizio - si veda anche paragrafo
6.1) si ha [A1 ] [B1 ] = [A B], cos` come [A] [B] = [A B], quindi
[A1 ] [B1 ] = [A] [B].
Si giustifica in questo modo la dizione a meno di equivalenza con cui una
proposizione `e considerata uguale ad ogni altra ad essa logicamente equivalente, o almeno indistinguibile da quelle, ai fini della trattazione semantica.
Date queste definizioni, le precedenti equivalenze danno allora origine alle
uguaglianze:

73

[A] [B] = [B] [A]


commutativit`
a di
[A] + [B] = [B] + [A]
commutativit`
a di +
[A] ([B] [C]) = ([A] [B]) [C]
associativit`
a di
[A] + ([B] + [C]) = ([A] + [B]) + [C]
associativit`
a di +
[A] ([B] + [C]) = ([A] [B]) + ([A] [C])
distributivit`
a
[A] + ([B] [C]) = ([A] + [B]) ([A] + [C])
distributivit`
a.
Tutte le tautologie sono tra loro equivalenti, e non equivalenti a nessuna
proposizione non logicamente valida; lo stesso per le contraddizioni; denotiamo con 1 la classe delle tautologie, e con 0 la classe delle contraddizioni.
Allora [A] ([A]) = [A A] = 0 e [A] + ([A]) = [A A] = 1 e
possiamo quindi aggiungere:
[A] ([A]) = 0
[A] + ([A]) = 1
[A] 1 = [A]
[A] + 0 = [A]

inverso
inverso
elemento neutro
elemento neutro

completando la lista degli assiomi delle algebre di Boole.


Le ultime due leggi seguono dal fatto (o lo esprimono in altra forma) che
se T `e una tautologia AT A e se F `e una contraddizione allora AF A.
La relazione [A] [B] `e definita da [A][B] = [A], oppure dallequivalente
[A] [B] = 08 .
Inseriamo qui una dimostrazione dellequivalenza tra due definizioni di
, dove si noter`a lanalogia formale con quella fatta per 37.
Se
xy =x
allora
1 = x + (x)
1 = (x y) + (x)
1 = (x + (x)) (y + (x))
1 = y + (x)
0 = x (y).
8

O anche da [A]+[B] = [B]; a seconda dei casi converr`a usare luna o laltra definizione.

74

Viceversa se
x (y) = 0
allora
x=x1
x = x (y + (y))
x = (x y) + (x (y))
x = x y.
Esercizio. Dimostrare lequivalenza con la (versione corrispondente della) 29.
Dallequivalenza booleana delle due definizioni di si deriva la seguente
propriet`a logica, che
A A B se e solo se |= A B.
Una dimostrazione logica di questo fatto ricalca la dimostrazione algebrica
di sopra.
Allora la seguente `e una deduzione del fatto che |= A B segue da
A A B:
A A
(A B) A
(A A) (B A
B A
A B.
Ogni proposizione di questa lista o `e una tautologia o segue logicamente dalle
precedenti e da A A B, quindi lultima `e una tautologia.
Viceversa, se |= A B, quindi A B `e una contraddizione
A A (B B)
A (A B) (A B)
A A B.
Esercizio. Dimostrare in modo analogo che A A B se e solo se |= B A.
La corrispondenza tra le deduzioni algebriche e quelle logiche `e fondata
sulla corrispondenza tra [A] [B] e |= A B.
75

Il fatto che per ogni A, 0 [A] 1 corrisponde al fatto che una contraddizione implica qualsiasi proposizione, e una tautologia `e implicata da
qualsiasi proposizione.
La relazione booleana ha le seguenti propriet`a, che se a b allora
b a e per ogni c, c a c b e c + a c + b (esercizio).
Queste propriet`a corrispondono per limplicazione al fatto che se |= A
B allora |= B A e per ogni C, |= C A C B e |= C A C B
(esercizio).
La propriet`a transitiva di corrisponde alla transitivit`a del condizionale,
mentre la propriet`a di sostituzione t = s f (t) = f (s) corrisponde ad
unanaloga propriet`a logica: se in una proposizione si sostituisce una sottoproposizione con una equivalente, il risultato `e una proposizione equivalente
a quella iniziale.
Conviene indicare loperazione di rimpiazzamento di una sottoproposizione B con C in una proposizione A, con la notazione: A[B//C].
Si ha allora che
se B C allora A A[B//C].
Nellesempio di sopra A A (A B) A poiche A A B.
Nella dimostrazione, per trattare i vari casi, si fa uso dei seguenti fatti
Per ogni A e B,
se A B, allora
se A1 A2 e B1 B2 , allora

A B
A1 B1 A2 B2

che si dimostrano facilmente con le tavole di verit`a per i vari connettivi.

4.4

Rapporti tra proposizioni e insiemi

I rapporti tra algebra degli insiemi con operazioni insiemistiche, logica proposizionale con connettivi e algebra boleana sono molteplici e bidirezionali.
Sostanzialmente largomento `e sempre lo stesso, con varianti formali, e a seconda delle preferenze si pu`o adottare luno o laltro dei tipi di simbolismo
coinvolti; la familiarit`a con luno aiuta anche nello svolgimento dellaltro, ma
il ragionamento `e identico.
Abbiamo visto come, per dimostrare le leggi dellalgebra degli insiemi
(cio`e identit`a valide per tutti i sottinsiemi di un qualunque insieme non vuoto
76

U ), procedendo direttamente in base alla definizione di uguaglianza tra insiemi (X = Y se e solo se X Y e Y X) ci si riconduca ad applicare leggi
logiche a proposizioni costruite su atomiche della forma x X, x Y, . . .
Si possono anche al contrario derivare le leggi logiche dalle leggi dellalgebra
degli insiemi.
In generale due proposizioni (con o senza la x) logicamente equivalenti9
hanno lo stesso insieme di verit`a in ogni U .
Supponiamo infatti che p(x) sia equivalente a q(x). Allora siccome p(x)
q(x) e q(x) p(x) sono sempre vere, Vp(x)q(x) e Vq(x)p(x) sono entrambi
uguali a U ; ma siccome Vp(x)q(x) = ( Vp(x) ) Vq(x) , se questo `e uguale a
U allora Vp(x) Vq(x) ; stabilito nello stesso modo il viceversa, partendo da
Vq(x)p(x) , si ha Vp(x) = Vq(x) .
Vale anche il viceversa; diciamo che una proposizione p(x) `e valida in U
se Vp(x) = U ; allora se Vp(x) = Vq(x) in U si ha che p(x) q(x) `e valida in U .
Basta ripercorrere allindietro i precedenti passaggi.
Supponiamo allora di voler dimostrare |= (p q) p q.
Pensiamo ad un insieme qualunque U (che non c`e bisogno di precisare,
in accordo col fatto che usiamo leggi valide per insiemi qualunque). Consideriamo i sottoinsiemi Vp = {x U | p } e Vq = {x U | q }. Per definizione di
insieme di verit`a, x Vp p, cio`e Vp `e definito ponendo che x Vp `e vero se
e solo se p `e vero. Se p non contiene x, p o `e vera o `e falsa, indipendentemente
da x. In tal caso Vp = {x U | p } o `e o `e U .
Dalla definizione di insieme di verit`a e dalla legge insiemistica
(Vp Vq ) = ( Vp ) ( Vq ),
cio`e
x (Vp Vq ) se e solo se x ( Vp ) ( Vq ),
segue, siccome x (Vp Vq ) se e solo se (p q), e analogamente per
x ( Vp ) ( Vq ), che
(p q) p q
9

Nel senso che p(x) e q(x) hanno sempre lo stesso valore di verit`a calcolato a partire
dalla attribuzione di 0 e 1 alle loro componenti atomiche, anche se contengono x.

77

`e vero qualsiasi siano p e q, la cui verit`a o falsit`a non gioca alcun ruolo nella
dimostrazione10 .
Un altro modo pi`
u semantico `e il seguente. Siccome p e q non contengono
la x, gli insiemi Vp = {x U | p } e Vq = {x U | q } come abbiamo detto
sono o o U .
Possiamo interpretare allora (Vp Vq ) = ( Vp ) ( Vq ) o direttamente
(p q) p q nellalgebra 2, riscrivendola formalmente come
(x + y) = x y,
che `e una legge valida in 2. Questo significa che comunque si sostituiscano i
valori 0 o 1 a x e y luguaglianza vale, e questo `e un altro modo di dire che
comunque si diano a p e q i valori 0 o 1 si ottiene che (p q) e p q
hanno lo stesso valore, cio`e la tavola del bicondizionale (p q) p q
ha tutti 1 nella colonna finale.
Un ragionamento semantico del genere pu`o sostituire il modo di procedere
formale diretto, in cui una deduzione algebrica viene trasformata in una logica,
come negli esempi visti sopra; occorre prestare attenzione alle insidie delle analogie
formali quando `e coinvolta la relazione .
Consideriamo la seguente dimostrazione booleana di una propriet`a di x y che
formalmente corrisponde alla massimalit`a dellintersezione:
se z x e z y allora z x y.
Algebricamente, nel senso delle algebre di Boole, se
z (x) = 0
e
z (y) = 0
allora
z (x) + z (y) = 0
z (x + y) = 0
z (x y) = 0
z x y.
10
Si vede in particolare che le leggi logiche dimostrate per il linguaggio proposizionale
costruito astrattamente sulle lettere, valgono anche per proposizioni contententi variabili.

78

Si conclude quindi correttamente che


z xz y z xy
vale in tutte le algebre di Boole.
Poiche sappiamo che corrisponde a , siamo tentati di scrivere
|= (C A) (C B) (C A B),
ottenendo in tal modo la versione corrispondente della massimalit`a della congiunzione.
Ma questo passaggio non `e corretto. Infatti se interpretiamo direttamente la
legge booleana z x z y z x y nellalgebra delle proposizioni dobbiamo
scrivere
[C] [A] [C] [B] [C] [A B],
che equivale a
se [C A] = 1 e [C B] = 1 allora [C A B] = 1,
o
se |= C A e |= C B allora |= C A B.
Questa affermazione `e diversa e pi`
u debole di quella voluta (spiegare perche).
Per ricavare booleanamente la legge della massimalit`a della congiunzione ci
sono due strade. Bisogna dimostrare che `e uguale a 1 lelemento booleano corrispondente alla proposizione in questione; siccome essa contiene il condizionale,
una possibilit`a `e quella di eliminare il condizionale a favore di altri connettivi
booleani, quindi ad esempio di dimostrare che
((z + x) (z + y)) + (z + x y) = 1;
ma
(z + x) (z + y)) = z + x y
per la propriet`a distributiva, quindi ci si riduce a a + a = 1, che `e vero.
Altrimenti, si pu`o associare anche al connettivo unoperazione booleana
(non unasserzione quale `e x (y) = 0), come per negazione, congiunzione e !!!
disgiunzione. Loperazione binaria x y associata11 a `e introdotta come ci si
aspetta con la definizione
11

Questo `e il motivo per cui non usiamo questo segno per indicare limplicazione |= A
B, che booleanamente corrisponde allasserzione x y.

79

x y = x + y.
Si ha che x y = 1 se e solo se x y (esercizio).
La legge proposizionale |= (C A) (C B) (C A B) si ottiene
dimostrando che
((z x) (z y)) (z (x y)) = 1
nel seguente modo:
(z x) (z y) = (z + x) (z + y)
= z + (x y)
=z xy
quindi
(z x) (z y) = z (x y).
Ma si noti che se a = b allora a b e quindi a b = 1, e anche b a = 1.
Quindi risulta dalla dimostrazione anche il viceversa, e in effetti
|= (C A) (C B) (C A B).

Le mutue relazioni illustrate tra insiemi, algebre di Boole e proposizioni


che secondo gli assiomi valgono per le proposizioni scritte con i connettivi
, , si estendono a tutte le proposizioni che contengono gli altri connettivi
che sono definibili in termini di questi, come , , .

80

Relazioni

5.1

Prodotto cartesiano

Unoperazione su insiemi diversa, e in un certo senso pi`


u importante di quelle
booleane `e il prodotto cartesiano di due insiemi.
Si indica hx, yi la coppia ordinata di x e y, e x e y si chiamano rispettivamente prima e seconda componente di hx, yi, o proiezioni. La coppia ordinata
`e ben diversa dalla coppia non ordinata {x, y}, per cui vale {x, y} = {y, x}
e non ha senso parlare di primo o secondo elemento. Invece hx, yi =
6 hy, xi
a meno che non sia x = y; inoltre hx, yi = hz, ui se e solo se x = z e y = u,
cio`e se le due coppie hanno uguali rispettivamente le prime e le seconde
proiezioni1 .
Il prodotto cartesiano di X e Y `e
X Y = {hx, yi | x X e y Y }.
Loperazione `e diversa da quelle booleane in quanto se anche X U
e Y U , X Y non `e un sottoinsieme di U ; `e un insieme di elementi
strutturati, in generale un insieme pi`
u ricco; se ad esempio U `e la retta
numerica2 , U U `e il piano (cartesiano), dove ogni punto `e individuato dalle
sue due coordinate, che sono le due componenti della coppia, e sono dette
ascissa la prima componente, ordinata la seconda. Le coppie hx, xi formano
la diagonale di U .
Esempio Se X `e {a, b, c, . . . , h} e Y `e {1, 2, 3, . . . , 8}, X Y si pu`o
identificare con la scacchiera.
Se X e Y sono due insiemi finiti, il numero di elementi di X Y `e il
prodotto del numero di elementi di X e del numero di elementi di Y , da cui
il nome.
Il prodotto cartesiano di due insiemi non `e commutativo3 .
1

Non spieghiamo lartificio con cui si definisce la coppia ordinata; risulta tuttavia che
x e y non sono elementi di hx, yi, e infatti si chiamano componenti, o proiezioni.
2
Con retta numerica si intende di solito linsieme dei numeri reali; tuttavia a seconda
del contesto pu`
o anche significare un altro sistema numerico. Ricordiamo che gli insiemi
dei numeri naturali, interi, razionali e reali si indicano usualmente con N, Z, Q, R. Se
la retta numerica `e N o Z, il piano `e il reticolo infinito dei punti a coordinate naturali, o
intere.
3
Non `e neanche associativo, anche se X (Y Z) e (X Y ) Z possono essere messi
in corrispondeza biunivoca e identificati; quindi con una opportuna definizione delle terne

81

Il prodotto X X si indica anche con X 2 , e |X {z


X} con X n , insieme
n

delle n-uple di elementi non necessariamente distinti di X.

5.2

Relazioni

Un sottoinsieme di un insieme X Y si chiama anche relazione tra X e Y . !!!


Se X = Y una relazione R X X si dice anche relazione in X.
La rappresentazione grafica usuale delle relazioni `e quella per mezzo di
un diagramma cartesiano, come il seguente:

YO

/ X

dove X = {0, . . . , 8} e Y = {0, . . . 9} e la relazione `e {hx, yi | y = 2x} =


{h0, 0i, h1, 2i, h2, 4i, h3, 6i, h4, 8i}.
Se gli insiemi sono infiniti, se ne pu`o indicare solo una porzione; ad esempio la diagonale

ZO

/Z

hx, y, zi si pu`
o definire il prodotto a tre fattori X Y Z, e anche quello a n fattori con
le n-uple come elementi.

82

rappresenta la relazione {hx, yi Z Z | x = y } solo in una regione limitata


del piano a coordinate intere, ma si intende che va estesa uniformemente
allinfinito.
Esempi
La relazione di paternit`a `e una relazione nellinsieme del genere umano,
linsieme di tutte le coppie hx, yi dove x `e un maschio che ha generato, e y
uno dei suoi figli.
La relazione di discendenza genealogica nellinsieme del genere umano `e
linsieme di tutte le coppie hx, yi dove x `e un antenato (maschile o femminile)
di y.
La relazione di divisibilit`a4 {hx, yi N N | x | y } tra numeri naturali
`e rappresentata, nellarea limitata disegnata, dal diagramma:

NO

/N

La relazione {hx, yi Z Z | x = y 2 } `e parzialmente rappresentata da


4

Con x | y indichiamo che esiste uno z tale che xz = y, e diciamo che x divide y o `e un
divisore di y o che y `e divisibile per x, o y `e un multiplo di x. Con questa definizione x | 0
perche x0 = 0, mentre escludiamo 0 | 0, che pure rientrerebbe nella definizione, perche
quando si introduce la divisione si vuole lunicit`a del quoziente z in xz = y, mentre 0z = 0
per ogni z.

83

ZO

/Z

La relazione {hx, yi Z Z | xy = 4} `e un insieme finito i cui elementi


sono tutti indicati nel grafico:

ZO

/Z

mentre {hx, yi Q Q | xy = 4} `e un insieme infinito; alcuni suoi punti5


sono indicati nel grafico:
5

Le coppie ordinate che sono elementi di una relazione si chiamano anche punti, in
analogia ai punti del piano.

84

QO

/Q

Si dice talvolta che {hx, yi Q Q | xy = 4} e {hx, yi Z Z | xy =


4} sono la stessa relazione, {hx, yi | xy = 4} considerata una volta in Q
e una volta in Z. Tale modo di esprimersi non `e corretto (al massimo, la !!!
seconda `e una restrizione della prima), ancorche diffuso e innocuo, una volta
che si abbiano le idee chiare: uguale `e la formula xy = 4 che definisce le
due relazioni, ma le relazioni in se sono due insiemi diversi. Spesso, negli
insiemi finiti soprattutto, perche gli insiemi infiniti trattabili sono solo quelli
definibili, non c`e alcuna formula definitoria.
Ad esempio, se U = {0, 1, . . . , 9}, linsieme {h2, 4i, h2, 6i, h2, 8i} `e una
relazione in U . Lunico modo di caratterizzarla `e quella di elencare le sue
coppie.
Considerare una relazione solo come linsieme delle coppie di individui
che stanno nella relazione stessa, e non la definizione (la propriet`a che lega
le componenti delle coppie), significa trattare le relazioni dal punto di vista
estensionale.
Talvolta come notazione invece di scrivere che hx, yi R si scrive anche
R(x, y), o anche x R y.
5.2.1

Esercizi

1. Disegnare in un diagramma cartesiano le relazioni (o parte di esse):


{hx, yi N N | x2 + y 2 < 20}
{hx, yi Z Z | x2 + y 2 < 20}
{hx, yi N N | x < 6 y < 4}.
2. Abbiamo visto esempi di relazioni finite e infinite; come `e {hx, yi
85

Z Z | xy = 12 }?

5.3

Relazioni dordine

Data una relazione R X Y si chiama dominio di R linsieme


dom(R) = {x X | esiste un y Y tale che hx, yi R } X
e si chiama immagine linsieme
im(R) = {y Y | esiste un x X tale che hx, yi R } Y .
Se R `e una relazione in U si ha sia dom(R) U sia im(R) U . Lunione
dom(R) im(R) si chiama anche campo di R e si denota campo(R)6 .
Esempio Nella relazione di paternit`a il dominio `e linsieme di tutti gli
uomini che hanno generato, limmagine linsieme di tutti gli uomini e tutte
le donne7 .
Le relazioni si distinguono e si classificano in base ad alcune propriet`a di
cui possono o no godere.
Una relazione R in un insieme U soddisfa la propriet`a riflessiva se per
ogni x campo(R) hx, xi R. Invece si dice antiriflessiva se per ogni
x campo(R) hx, xi 6 R.
Una relazione R in un insieme U soddisfa la propriet`a transitiva se per
ogni x, y, z campo(R), se succede che hx, yi R e hy, zi R allora anche
hx, zi R.
Una relazione R in un insieme U soddisfa la propriet`a simmetrica se per
ogni x, y campo(R), se succede che hx, yi R allora anche hy, xi R. Una
relazione `e simmetrica se `e uguale alla sua simmetrica (nel piano, rispetto
alla diagonale) che si ottiene scambiando ogni coppia hx, yi con hy, xi.
Invece una relazione R si dice antisimmetrica se hx, yi R e x 6= y
implicano hy, xi 6 R, o in modo equivalente, per contrapposizione, se hx, yi
R e hy, xi R implicano x = y.
Esempi
La relazione di paternit`a `e antiriflessiva e non `e transitiva, ed `e antisimmetrica. La relazione di discendenza `e transitiva.
6

La notazione non `e del tutto standard.


Qualcuno pu`
o non essere daccordo sul caso critico di Adamo ed Eva, se ci crede; non
consideriamo i problemi della clonazione.
7

86

Le relazioni {hx, yi | xy = 4} e {hx, yi | x = y} sono simmetriche8 . La


prima non `e riflessiva, ma neanche antiriflessiva. La seconda `e riflessiva. La
relazione {hx, yi | x = y 2 } non `e simmetrica.
La relazione di conseguenza logica, nellinsieme delle proposizioni, `e riflessiva (legge dellidentit`a) e transitiva (transitivit`a del condizionale).
Un tipo importante di relazioni `e quello costituito dalle relazioni dordine. !!!
Una relazione R in un insieme U si chiama relazione dordine se soddisfa le
propriet`a riflessiva, transitiva e antisimmetrica per gli elementi nel campo(R).
Si dice anche che R `e un ordine in U , un ordine del campo(R).
Per le relazioni dordine si suole usare il simbolo ; le condizioni a cui
deve soddisfare  sono dunque
xx
xyy z xz
x  y y  x x = y.
Se a queste si aggiunge la condizione che due elementi qualunque siano confrontabili:
xyy x
per ogni x, y campo(), che si chiama anche condizione di connessione,
allora  `e un ordine totale di campo().
Altrimenti, se non `e verificata la condizione di connessione, si parla di
ordine parziale.
Un insieme U si dice totalmente, o parzialmente ordinato, se esiste una
relazione  in U con campo() = U che `e un ordine totale o rispettivamente
parziale. Un insieme ordinato si indica spesso con la coppia hU, i, che mette
in evidenza la relazione dordine.
Esempi
Linsieme N con la relazione `e totalmente ordinato.
Linsieme {0, 1, . . . n} con la relazione `e totalmente ordinato.
La relazione nellinsieme dei sottoinsiemi di U `e un ordine parziale.
Un albero `e un insieme parzialmente ordinato.
Un ramo di un albero `e un insieme totalmente ordinato, e chiuso verso il
basso9 .
8
9

In un insieme numerico qualunque.


Questo significa che se x appartiene al ramo e y  x anche y appartiene al ramo.

87

Dato un ordine  si pu`o sempre introdurre una nuova relazione con la


definizione x y x  y x 6= y, che risulta antiriflessiva, antisimmetrica
e transitiva.
Osservazione. Lantiriflessivit`a vale in generale per una relazione R tale
che hx, yi R x 6= y.
Viceversa, data una relazione antisimmetrica e transitiva, si pu`o definire
x  y x y x = y e si ha una relazione dordine.
Un minorante di x - rispetto a un ordine hU, i - `e un elemento y U
tale che y  x. Il minorante `e stretto, o proprio, se x 6= y.
Un maggiorante di x `e un elemento y U tale che x  y. Il maggiorante
`e stretto, o proprio, se x 6= y.
Dato un insieme totalmente o parzialmente ordinato hU, i, un elemento
x U si dice minimo - rispetto allordine - se x  y per ogni y U . Si dice
massimo se y  x per ogni y U .
Dato X U , un minimo di X `e un elemento x X tale che x  y per
ogni y X; simmetricamente per il massimo.
Il minimo di un insieme X `e unico; analogamente il massimo.
Dato un insieme parzialmente ordinato hU, i, un elemento x U si dice
minimale - rispetto allordine - se non ha minoranti propri. Si dice massimale
se non ha maggioranti propri.
Se X U , un elemento minimale di X `e un elemento x X tale che
per nessun y X, y 6= x si ha y  x, cio`e che non ha minoranti propri
appartenenti a X; simmetricamente per un elemento massimale. Gli elementi
minimali o massimali non sono necessariamente unici.
Esempi
La relazione dordine totale nellinsieme dei numeri naturali ha un minimo, nessun massimo. Negli altri insiemi numerici degli interi, dei razionali
e dei reali10 `e un ordine totale senza ne minimo ne massimo.
La relazione dordine parziale nellinsieme dei sottinsiemi di un insieme
U ha un massimo U e un minimo . Nellinsieme dei sottoinsiemi non vuoti di
U esistono tanti elementi minimali, gli {x}, quanti sono gli elementi x U .
Nellinsieme di tutti gli insiemi contenuti sia in X sia in Y lintersezione
X Y `e il massimo.
10

I numeri complessi invece non possono essere ordinati in modo che la relazione dordine
sia compatibile con le operazioni, ad esempio nel senso che se x  y allora x + z  y + z.

88

In generale, in unalgebra di Boole, la relazione {hx, yi | x y = 0} `e un


ordine parziale con minimo 0 e massimo 1.
Dato un insieme X campo(), un elemento x U , anche non appartenente a X, si dice minorante di X se x  y per ogni y X; simmetricamente
per il maggiorante.
Se un insieme ha un minorante, si dice che `e limitato inferiormente. Se
ha un maggiorante, si dice che `e limitato superiormente.
Se esiste il minimo dellinsieme dei maggioranti di X, questo elemento di
U si chiama estremo superiore di X; il massimo dellinsieme dei minoranti,
se esiste, si chiama estremo inferiore di X.

Esempio 2 `e in R lestremo superiore dellinsieme {x Q | x2 < 2}.


Tale insieme non ha estremo superiore in Q.
Un ordine si dice discreto se per ogni elemento x che abbia maggioranti
propri esiste un elemento z, che si pu`o chiamare successore immediato, tale
che x z e per nessun v sia x v z, e per ogni elemento x che abbia minoranti propri esiste un elemento y, che si pu`o chiamare predecessore
immediato, tale che y x e per nessun u sia y u x.
t

ty

x
t

zt

Esempio Lordine dei numeri naturali e quello dei numeri interi sono
ordini discreti.
Un ordine si dice denso se dati due qualunque elementi distinti x e y, con
x y, esiste uno z tale che x z y.
Esempio Lordine dei razionali e quello dei reali sono ordini densi.
Una relazione dordine totale  di un insieme U si dice un buon ordine
se ogni X U non vuoto ha minimo. Un insieme con un buon ordine si dice
bene ordinato.
Esempi
Tipici insiemi bene ordinati sono {0, . . . , n} con la relazione e linsieme
N = {0, . . . , n, . . .} con la stessa relazione.
Linsieme degli interi non `e bene ordinato da . Linsieme dei razionali
non `e bene ordinato da .

89

Il fatto che linsieme dei naturali sia bene ordinato significa che al di l`a
della catena formata da 0 e dal successore di 0, e dal successore del successore
di 0 e cos` via, non ci sono altri elementi, come sarebbe ad esempio in una
struttura del genere:
t0

s s

s s r qq

e questo `e importante per le propriet`a dei naturali che studieremo nel paragrafo 12.
La struttura ordinata disegnata sopra ha un massimo, e certo non pu`o
essere fatta cos` una struttura con le propriet`a dei numeri naturali. Ogni
elemento deve avere un successore e ogni elemento diverso da 0 un predecessore. Al di l`a di tutti i numeri raggiungibili da 0 ci potrebbe essere ancora
ad esempio una struttura ordinata come quella degli interi; ma se ci fossero
elementi non standard ci sarebbe una catena discendente
0
t t t
t t
t
t
s s s s r qq q q q r r s
linsieme non sarebbe bene ordinato; il sottoinsieme formato dalla catena
discendente da destra non avrebbe minimo.

5.4

Relazioni di equivalenza

Lessenziale sulle relazioni di equivalenza `e stato detto a proposito dellalgebra


delle proposizioni. Ricordiamo che una relazione R in un insieme U si dice
una equivalenza se essa `e riflessiva, simmetrica a transitiva, vale a dire, per
gli elementi di campo(R):
xR x
xR y yR x
xR y yR z xR z.
Non ci sarebbe bisogno di richiedere la riflessivit`a in quanto essa `e conseguenza delle altre due: infatti
xR y yR x xR x,
quindi basta che x sia in relazione R con un elemento qualsiasi11 , xRy o yRx,
e lo `e se x `e nel campo, perche xR x. Tuttavia si menziona la riflessivit`a per
la sua importanza.
11

Se c`e solo x nel campo di R, allora deve gi`a essere xR x.

90

Esempi
1. La relazione di uguaglianza `e una equivalenza.
2. Nellinsieme U = {a, b, c, d, e} la relazione
R = {ha, ai, hb, bi, hc, ci, hd, di, he, ei,
ha, bi, hb, ai, ha, ci, hc, ai, hb, ci, hc, bi,
hd, ei, he, di}
`e una relazione di equivalenza, rappresentata dal seguente diagramma.

UO
e
d
c
b
a





c e/ U
b
d

3. Nel dominio degli interi, la relazione di congruenza x y (mod p),


p 2, che vale se la differenza x y `e divisibile per p, `e una relazione
di equivalenza12 .
4. La relazione di parallelismo tra rette in un piano `e una relazione di
equivalenza.
5. La relazione di similitudine tra triangoli `e una equivalenza.
6. La relazione di equivalenza logica `e una equivalenza.
Data una relazione di equivalenza R in un insieme U = campo(R), si
definisce per ogni x U la classe di equivalenza di x come
[x] = {y U | xR y }
12

x y (mod p) si leggex congruo a y modulo p.

91

e x si chiama rappresentante della classe [x].


Date due classi [x] e [y ], queste o sono uguali (hanno gli stessi elementi)
o sono disgiunte. Se xR y, allora ogni z [x], essendo xR z, `e anche zR y,
quindi z [y], e viceversa. Allora x e y sono due diversi rappresentanti della
stessa classe.
Se x non sta nella relazione R con y, allora non ci pu`o essere uno z
[x] [y ], altrimenti si avrebbe zR x e zR y, e quindi xR y.
Linsieme U `e ripartito dalla relazione di equivalenza R in una famiglia
di insiemi disgiunti, di cui U `e lunione. Una tale famiglia si chiama appunto
partizione di U .
Esempi
Per la relazione dellesempio 2 di sopra, [a] = [b] = [c] = {a, b, c} e
[d] = [e] = {d, e}. Nel grafico si vedono i due agglomerati di punti che
formano le due classi disgiunte.
Per la relazione di congruenza x y (mod 2) ci sono due classi, quella
dei numeri pari e quella dei numeri dispari.
Linsieme {[x] | x U } delle classi di equivalenza di un insieme U ,
rispetto alla relazione R, `e detto il quoziente di U rispetto ad R, ed `e indicato
con U/R .
Il quoziente dellinsieme dei numeri naturali rispetto a x y (mod 2) `e
linsieme {0, 1}.
Se si definiscono operazioni e relazioni nel quoziente, a partire da operazioni e relazioni tra gli elementi di U , occorre sempre fare attenzione che
siano bene definite, vale a dire che, nel caso di operazioni ad esempio, la classe
risultante non dipenda dalla scelta dei rappresentanti delle classi argomento.
Esempio Nel quoziente degli interi rispetto alla relazione x y (mod p),
che si indica Zp , si definisce la somma +p con13
[x] +p [y] = [x + y],
e analogamente il prodotto, rendendo possibile la cosiddetta aritmetica modulare.
Loperazione +p `e ben definita perche se [x1 ] = [x] e [y1 ] = [y ], allora
x = mp+r, y = np+s e x1 = m1 p+r e y1 = n1 p+s; quindi (x+y)(x1 +y1 ) =
13

Usiamo questo segno per distinguere la somma delle classi dalla somma degli interi.

92

(m + n m1 n1 )p `e divisibile per p e x + y e x1 + y1 appartengono alla


stessa classe.
Nella congruenza (mod 2), in Z2 , 1 +2 1 = 0 corrisponde al fatto che la
somma di due dispari qualunque `e pari.

5.5

Funzioni

Una relazione R si dice funzionale se per ogni x dom(R) esiste un solo y


tale che hx, yi R.
Una relazione funzionale R tra X e Y si dice anche una funzione tra X
e Y , o una funzione da dom(R) in Y . Se si parla di una funzione da X in Y
sintende che il suo dominio `e tutto X.
Per le funzioni si usano di solito i simboli f, g, . . .. Se f `e una funzione
da X in Y si scrive anche
f : X Y .
Se hx, yi f , si scrive y = f (x) e si dice che y `e il valore di f per largomento
x, o limmagine di x mediante f .
Sinonimi per funzione sono applicazione, mappa o corrispondenza.
Si dice pure che y corrisponde a x o che `e il valore associato allargomento
x, e talvolta si scrive f : x 7 y per y = f (x).
Se Z X, limmagine di Z mediante f `e linsieme delle immagini f (y),
per ogni y Z: {f (y) | x Z}.
Tale insieme si indica anche con f Z, non con f (Z), che Z 6 dom(f ).
!!!
Se y im(f ), linsieme {x X | f (x) = y} si chiama controimmagine
di y e si indica f 1 (y). f 1 (y) `e un insieme, e in generale con pi`
u di un
elemento.
Un modo abbreviato di presentare una funzione `e quello di scrivere la
formula che definisce la relazione, ad esempio si parla della funzione y = x2 ,
ma occorre allora precisare a parte il dominio e limmagine della funzione.
Una funzione f : X Y si dice iniettiva o uno-uno se a elementi diversi
corrispondono valori diversi: x 6= y f (x) 6= f (y).
Una funzione iniettiva si indica talvolta con la notazione:
f : X , Y .

93

Se una funzione f `e iniettiva, per ogni y im(f ) f 1 (y) ha un solo elemento


x che si chiama lui controimmagine di y. Quindi f 1 `e una funzione, con
dominio im(f ).
Viceversa, se ogni f 1 (y) ha un solo elemento, per y im(f ), f `e iniettiva.
Una funzione f : X Y si dice suriettiva, o sopra se Y = im(f ),
ovvero se per ogni y Y esiste almeno un x X tale che y = f (x).
Esempi
La funzione
f : Z Z
x 7 2x
`e iniettiva, non suriettiva.
La funzione
f : Q Q
x 7 2x
`e iniettiva e suriettiva.
La funzione
f : Q Q
x 7 x2
non `e iniettiva e non `e suriettiva, cos` come14
f :Rp
R
x 7 |x|.
La funzione
f : R R
x 7 x3 x.
invece non `e iniettiva ma `e suriettiva.
La corrispondenza definita da x 7 x1 , o dalla formula y =
una funzione tra Q e Q il cui dominio `e Q \ {0}:

1
,
x

definisce

f : Q \ {0} Q
x 7 x1
14

Se

x `e presa col segno positivo; altrimenti {hx, yi | y =

94

p
|x|} non `e una funzione.

`e iniettiva e non `e suriettiva.


La funzione
f : Q \ {0} Q \ {0}
x 7 x1
`e iniettiva e suriettiva.
Una funzione f : X Y che sia iniettiva e suriettiva si dice biiettiva, o
una biiezione tra X e Y o una corrispondenza biunivoca tra X e Y .
Se X = Y si parla di una biiezione di X in se.
Esempi
La funzione
f : Q Q
x 7 2x
`e una biiezione di Q in se stesso.
La funzione
f : Z Z
x 7 2x
`e invece solo una iniezione di Z in se.
La funzione
f : Q \ {0} Q \ {0}
x 7 x1
`e una biiezione di Q \ {0} in se..
La funzione che a ogni i < n associa i + 1 e a n associa 0 `e una biiezione
di {0, 1, . . . , n} in se.
Le biiezioni di un insieme finito in se si chiamano permutazioni dellinsieme.
Il concetto di funzione `e molto comodo per definire o collegare diversi
altri concetti matematici; abbiamo visto quello di permutazione; le sequenze ha0 , . . . , an i di elementi di X si possono definire come funzioni da
{0, 1, . . . , n} in X; le disposizioni di X a n elementi, se X ha pi`
u di n elementi, sono le funzioni iniettive da {0, 1, . . . , n} in X; un insieme {ai }iI
indiciato da I `e limmagine di una funzione da I nellinsieme cui appartengono gli ai ; un sottoinsieme X U `e anche uguale a c1
e la
X (1), dove cX `
funzione caratteristica di X, cio`e la funzione U {0, 1} definita da
95


cX (x) =

se x X
se x
6 X,

1
0

e cos` via, tutte le nozioni matematiche si possono esprimere in termini insiemistici.


Se per una funzione f : X Y il dominio `e un prodotto cartesiano
X = V W , allora si dice che la f `e una funzione di due variabili, o di due
argomenti, e per ogni hv, wi V W il valore di f si indica con f (v, w).
Analogamente se il dominio `e un prodotto di pi`
u di due fattori. Per una
funzione f di n argomenti il valore della funzione per la n-upla hx1 , . . . , xn i
si indica con f (x1 , . . . , xn ).

96

Forme normali

Dopo aver imparato le definizioni riguardanti la semantica delle proposizioni,


e alcune prime tecniche per stabilire in particolare se sono tautologie, sia direttamente con il calcolo del valori di verit`a sia deducendole da altre con
passaggi logici o algebrici booleani, passiamo a porci alcuni problemi metateorici sul linguaggio proposizionale.

6.1

Definibilit`
a dei connettivi

Ad ogni proposizione `e associata una tavola di verit`a, come abbiamo visto


negli esempi di 3.3.1. Viceversa, data una qualunque tavola di verit`a, come
ad esempio
p
0
0
0
0
1
1
1
1

q
0
0
1
1
0
0
1
1

r
0
1
0
1
0
1
0
1

?
1
1
1
1
0
0
0
0

esiste una proposizione scritta utilizzando soltanto i connettivi , , che


ha quella data come sua tavola di verit`a associata.
La proposizione si costruisce nel seguente modo, appoggiandosi come esempio alla tavola di sopra. Sar`a una disgiunzione con tanti disgiunti quante
sono nella tavola le righe che hanno il valore 1, quindi A1 A2 A3 A4 ;
ogni disgiunto Ai dovr`a essere vero solo per linterpretazione della riga corrispondente; la riga assegna valori 0,1 alle lettere, quindi 1 a certe lettere e
1 alle negazioni di certe altre lettere; una congiunzione `e vera se e solo se
tutti i congiunti sono veri; Ai potr`a quindi essere una congiunzione di tante
proposizioni quante sono le colonne di entrata della tavola, nellesempio 3,
e ciascuna di queste proposizioni sar`a una lettera o la negazione di quella
lettera a seconda che nella riga corrispondente la lettera abbia il valore 1
oppure 0. Quindi
(p q r) (p q r) (p q r) (p q r).
97

Per le propriet`a della valutazione della disgiunzione e congiunzione - che una


disgiunzione `e vera se e solo se almeno un disgiunto `e vero, e una congiunzione
se e solo se tutti i congiunti sono veri - e della negazione, si pu`o facilmente
vedere procedendo al contrario che la tavola associata a questa proposizione
`e uguale alla tavola data, che era la tavola di p q p (q r). 2
Il risultato si esprime anche dicendo che tutte le funzioni di verit`a sono
definibili in termini dellinsieme di connettivi {, , }, o che questo `e un
insieme adeguato di connettivi. Questo significa che non si `e perso nulla, !!!
quanto a capacit`a espressiva, non ammettendo nellalfabeto altri connettivi,
ad esempio quello per la duplice negazione ne . . . ne; se avessimo introdotto
un connettivo o nor per questa combinazione di proposizioni, con la tavola
A
0
0
1
1

B
0
1
0
1

AB
1
0
0
0

a posteriori potremmo ora sostituire ogni occorrenza della proposizione p q


con lequivalente p q 1 .
Si faccia attenzione a cosa significa che un simbolo `e definibile, a differenza !!!
ad esempio dalla definibilit`a di un insieme.
Un insieme X U `e definibile in U se X `e linsieme di verit`a in U di una
formula.
Un simbolo di operatore binario si dice definibile (in termini di altri) se
p q A(p, q) oppure p q = A(p, q), a seconda che p q sia una formula
oppure un termine, dove A `e unespressione che non contiene e contiene
solo gli altri simboli o nozioni nei termini dei quali si dice definito.
Sintende che il bicondizionale o luguaglianza definitorie devono essere
valide nel contesto in esame: in logica sar`a |= p q A(p, q), mentre una
uguaglianza p q = A(p, q) deve essere dimostrata nella relativa teoria, aritmetica o algebra o altro.
Analogamente se il numero di argomenti `e diverso da 2.
1

Se c`e una sola riga con valore 1, la proposizione costruita come detto sopra `e della
forma A1 , dove A1 `e una congiunzione. Si pu`o dire tuttavia che anche in questo caso la
proposizione associata alla tavola `e una disgiunzione, pensando che A1 A1 A1 .

98

Ad esempio in geometria piana per due rette r//s r e s non si


intersecano, in aritmetica x | y esiste uno z per cui xz = y, o
il simbolo di potenza al quadrato x2 = x x, nellalgebra degli insiemi
X \ Y = X Y .
Ma il precedente risultato dice anche che gli stessi connettivi del linguaggio proposizionale sono sovrabbondanti, perche {, , } `e adeguato, e
neanche il pi`
u ridotto possibile. Quando un sistema adeguato `e minimale,
nel senso che nessun suo sottoinsieme proprio `e ancora adeguato, si chiama
una base, in analogia con le basi degli spazi vettoriali (si vedano gli esercizi).
Si ha che p q risulta equivalente a (p q) (p q), e p q
(p q) (p q) (p q) e analogamente p q (esercizio).
Ognuna di queste equivalenze comporta leliminabilit`a del connettivo
definito, cio`e che allinterno di una proposizione una sottoproposizione, ad
esempio della forma A B, pu`o essere rimpiazzata dalla proposizione equivalente (A B) (A B) (A B).
6.1.1

Esercizi

1. Dimostrare che {, } e {, } sono due basi di connettivi, definendo


la disgiunzione nel primo e la congiunzione nel secondo.
2. Dimostrare che {, } `e una base di connettivi.
3. Dimostrare che il connettivo ne . . . ne da solo costituisce una base,
definendo in termini di esso la negazione e la congiunzione.
4. Scrivere la funzione di verit`a del connettivo o nand, non entrambe,
o non sia . . . sia, e dimostrare che costituisce da solo una base di
connettivi.
5. Esaminare tutte le tavole di verit`a a una entrata, e spiegare perche non
esiste un connettivo per `e necessario che.
6. Discutere se `e possibile ripetere la trattazione di questo paragrafo con
al posto di (cio`e associare a ogni tavola una proposizione con , ,
che abbia quella data come sua tavola di verit`a).
Linsieme {, , } `e adeguato? E {, }? E {, }?

99

6.2

Forme normali disgiuntive

La proposizione costruita a partire da una tavola di verit`a nel modo sopra


descritto ha una forma particolare. Si chiami letterale una proposizione che
sia o una lettera p, letterale positivo, o la negazione di una lettera p, letterale
negativo.
La proposizione associata alla tavola ha dunque la forma di una disgiunzione di congiunzioni di letterali. Una tale forma di chiama forma normale
disgiuntiva. Poiche `e evidente che
Osservazione 6.2.1 Per ogni A e B che contengano le stesse lettere,
A B se e solo se A e B hanno la stessa tavola di verit`
a
si pu`o concludere che
Teorema 6.2.1 Per ogni proposizione A esiste una proposizione con le stesse
lettere che `e in forma normale disgiuntiva ed `e logicamente equivalente ad A.
Dimostrazione. Come nellesempio di sopra, data A si calcoli la sua tavola,
quindi si costruisca la proposizione in forma normale disgiuntiva associata
alla tavola.
Nel caso che la tavola di A non abbia alcun 1 nella colonna dei valori,
quindi che A sia una contraddizione, la proposizione equivalente in forma
normale disgiuntiva si pu`o scrivere nella forma (p p) . . . (q q) come
disgiunzione di contraddizioni elementari, una per ogni lettera di A. 2
Anche una proposizione come p q `e in forma normale disgiuntiva,
perch`e il concetto di congiunzione e disgiunzione `e usato ovviamente in senso
generalizzato, ammettendo due o pi`
u componenti, o anche una sola2 . Le
proposizioni in forma normale disgiuntiva associate a tavole di proposizioni
non contraddittorie hanno lulteriore propriet`a che in ogni disgiunto compaiono le stesse lettere, e che in ogni congiunzione ogni lettera compare una
sola volta, o positiva o negata3 . Qualche volta si usa laggettivo regolare per
indicare questa caratteristica delle forme normali. Una proposizione in forma
normale disgiuntiva regolare permette di leggere direttamente i modelli della
proposizioni, uno per ogni disgiunto:
2
3

Vedi anche la nota 1 del paragrafo.


Questa disgiunzione nel testo `e esclusiva.

100

(p q) (p q)
ha due modelli, i1 (p) = 0 e i1 (q) = 1, e i2 (p) = 1 e i2 (q) = 0.
Tale possibilit`a di lettura dei modelli sussiste peraltro anche per le forme
normali disgiuntive non regolari, considerando per`o le interpretazioni come
definite in modo arbitrario sulle lettere che non occorrono in alcuni disgiunti:
(p q) p
ha tre modelli: da p q viene i1 (p) = 0 e i1 (q) = 1, e da p viene i(p) = 1,
che per`o ne riassume due: i2 (p) = 1 e i2 (q) = 1, e i3 (p) = 1 e i3 (q) = 0.
Qualche volta, sempre per le forme non regolari, disgiunti diversi hanno
modelli in comune; e ovviamente se in una congiunzione occorre sia una
lettera sia la sua negazione quella congiunzione non ha modelli.

6.3

Forme normali congiuntive

Un altro modo di associare a una tavola una proposizione scritta solo con
i connettivi , e `e il seguente, dove sono scambiati i ruoli di 0 e 1 e
di congiunzione e disgiunzione: si cerca ora una proposizione che sia falsa
esattamente nei casi prescritti dalla tavola data. In riferimento allo stesso
esempio di prima, la proposizione deve essere falsa solo ed esattamente in
corrispondenza alle ultime quattro righe della tavola, sar`a perci`o una congiunzione A5 A6 A7 A8 , e ogni Ai sar`a la disgiunzione di tre letterali,
ogni letterale positivo o negativo a seconda che nella riga in questione la !!!
lettera abbia il valore 0 oppure 1. Quindi:
(p q r) (p q r) (p q r) (p q r).
Per confermare che questa proposizione ha la tavola data come sua tavola di
verit`a occorre questa volta ricordare che una congiunzione `e falsa se e solo
se una delle proposizioni congiunte `e falsa, e che una disgiunzione `e falsa se
e solo se tutte le proposizioni disgiunte sono false.
Una proposizione che sia una congiunzione di disgiunzioni di letterali si
dice in forma normale congiuntiva.
Esempio La forma normale congiuntiva di p q, applicando il procedimento descritto, `e p q, che `e forma congiuntiva, se si considera, come si
considera, la congiunzione in senso generalizzato; p q `e dunque in forma
sia congiuntiva sia disgiuntiva.
101

Come sopra, risolvendo a parte anche il caso in cui nella tavola non ci
siano 0, si ha:
Teorema 6.3.1 Per ogni proposizione A esiste una proposizione con le stesse
lettere che `e in forma normale congiuntiva ed `e equivalente ad A.
Le forme normali, non necessariamente regolari, sono convenienti per verificare in modo efficiente (alla sola scansione e ispezione della lista) la validit`a !!!
logica o linsoddisfacibilit`a, ma ciascuna forma `e adeguata solo per una delle
due propriet`a.
Teorema 6.3.2 Una proposizione in forma normale congiuntiva `e una tautologia se e solo se in ogni sua clausola c`e una lettera che occorre sia positiva
sia negata.
Una proposizione in forma normale disgiuntiva `e insoddisfacibile se e solo
se in ogni suo disgiunto c`e una lettera che occorre sia positiva sia negata.
Dimostrazione. Per le forme congiuntive, una clausola in cui occorra una
lettera e la negazione della stessa lettera `e una tautologia, e una congiunzione
`e una tautologia se e solo se lo sono le sue componenti. Una clausola in cui
non si verifichi la presenza di una lettera e della sua negazione pu`o assumere
il valore 1 se a tutti i letterali si assegna il valore 1 interpretando a 1 le lettere
dei letterali positivi e a 0 le lettere dei letterali negativi.
Un ragionamento analogo vale per le forme disgiuntive. 2
Si noti che due proposizioni equivalenti non debbono necessariamente
avere le stesse lettere, ad esempio q (p p) `e equivalente a q, e p
p `e equivalente a q q (sono tutte due tautologie); quando si controlla
che per ogni interpretazione le due proposizioni hanno lo stesso valore si
considerano interpretazioni definite sullinsieme pi`
u ampio di lettere, ma si
possono trascurare in una proposizione i valori delle lettere non occorrenti.
Le proposizioni in forma normale che si ottengono da una tavola non sono
sempre le pi`
u semplici possibili. Se ad esempio il criterio che interessa `e quello
della lunghezza, la forma p q, `e preferibile alla forma normale disgiuntiva
regolare che si ottiene dalla tavola del condizionale. A p q si pu`o passare
dalla forma normale disgiuntiva regolare (p q) (p q) (p q) con i
seguenti passaggi:

102

(p q) (p q) (p q)
(p (q q)) (p q)
p (p q)
(p p) (p q)
p q
applicando le leggi distributive e la semplificazione delle tautologie (si noti
che la seconda proposizione non `e in forma normale).
Come mostra lesempio, esistono quindi diverse forme normali disgiuntive
(e lo stesso per le congiuntive) equivalenti a una data proposizione; si parler`a
perci`o solo impropriamente della forma normale disgiuntiva (o congiuntiva)
di una proposizione A, ma si user`a ugualmente tale dizione, intendendola a
meno di equivalenza logica; si chiamer`a in tal modo una qualunque forma
normale disgiuntiva (o congiuntiva) che sia equivalente ad A4 , e si potr`a
anche scrivere, se conveniente, dnf(A) (rispettivamente cnf(A)).
Il risultato generale che ogni proposizione `e equivalente a una proposizione in forma normale disgiuntiva o congiuntiva si pu`o ottenere anche applicando un algoritmo forma normale di trasformazioni successive come
nellesempio di sopra per il condizionale.
Il procedimento `e il seguente:
eliminare , e
spostare verso linterno con le leggi di De Morgan
cancellare le doppie negazioni, con la legge della doppia negazione
cancellare le ripetizioni, con le leggi di idempotenza
applicare ripetutamente le leggi distributive.
Lultima indicazione pu`o sembrare vaga, ma si pu`o rendere pi`
u precisa e
deterministica. Con i passi precedenti si `e ottenuta una proposizione equivalente che `e formata a partire da letterali con applicazioni ripetute di
e , anche se non necessariamente nellordine che produce una forma normale. Supponiamo di volerla trasformare in forma normale congiuntiva (per
4

Non necessariamente con le stesse lettere, come mostra lesempio delle due forme
normali disgiuntive p (q q) p.

103

la forma normale disgiuntiva il procedimento `e lo stesso con scambiati i ruoli


di e ).
Consideriamo il connettivo principale della proposizione; se `e , passiamo
alle due sottoproposizioni immediate trasformandole separatamente con il
procedimento sotto descritto5 e facendo alla fine la congiunzione delle due
forme congiuntive cos` ottenute; se `e , e la proposizione `e della forma A B,
`e necessaria qualche preparazione.
Se in A non occorresse per nulla , potremmo lavorare su B come detto
sotto, dopo aver fatto, per la precisione, lo scambio con B A. Possiamo
allora supporre che A sia della forma C D, perche se A a sua volta fosse
una disgiunzione C D, potremmo considerare al suo posto lequivalente
C (D B) e andare a cercare in C, oppure in D dopo aver fatto lo
scambio con lequivalente D (C B).
La proposizione data si trasforma allora nella equivalente (C B)(DB)
e possiamo applicare ricorsivamente il procedimento alle due proposizioni pi`
u
corte C B e D B. Quando procedendo in questo modo si `e portato il
connettivo a legare solo letterali a sinistra di B, si passa a lavorare nello
stesso modo su B.
Esempio Da
(p q) (r p)
(p q) (r p)
(p q) (r p)
(p q) (r p)
(p q) (r p),
che `e in forma normale disgiuntiva
(p q) r p
con due disgiunti unitari r e p. Se invece si vuole la forma normale congiuntiva, si continua con
(p (r p)) (q (r p))
(p r p) (q r p).
Esempio Trasformare la forma normale disgiuntiva (p q) (p q)
in forma normale congiuntiva:
5

Lalgoritmo che stiamo presentando `e ricorsivo - si veda il paragrafo 12.

104

(p q) (p q)
(p (p q)) (q (p q)).
Il primo congiunto si trasforma in
(p p) (p q),
il secondo in
(q p) (q q),
quindi la proposizione in
(p p) (p q) (q p) (q q),
da cui si possono ancora eliminare le tautologie, ottenendo
(p q) (q p).
Non `e detto che questo procedimento, che ha il merito di far vedere
la terminazione del compito, se lo si segue come filo dArianna, sia sempre il pi`
u efficiente; pu`o essere utilmente integrato con lapplicazione in
itinere delleliminazione delle ripetizioni, e con leliminazione delle tautologie dalle congiunzioni, e della contraddizioni dalle disgiunzioni, ogni volta
che sia possibile; sono utili le leggi di assorbimento ed equivalenze come !!!
(A B) A B; oppure ci sono scorciatoie come quando, volendo mirare a una forma congiuntiva, si incontra una sottoproposizione della forma
(A B) (C B) che conviene rimpiazzare direttamente con (A C) B.
Esempio Trasformare (p q) (q p) in forma normale congiuntiva.
Con la distributivit`a (e la commutativit`a) si ottiene subito
p (q q)
e quindi p.
Applicando invece lalgoritmo forma normale si ottiene
((p q) q) ((p q) p).
Il secondo congiunto `e equivalente a p per assorbimento; il primo `e equivalente a (p q) (q q), quindi a p q, e in definitiva
(p q) p,
105

che per lassorbimento `e equivalente a p. Questa seconda strada `e pi`


u lunga,
ma `e proposta solo per illustrare leffetto delle varie mosse possibili.
Le forme normali disgiuntive e congiuntive si trovano ai poli estremi di
uno spettro su cui si immagini di collocare le proposizioni misurando la loro
distanza con il numero di applicazioni delle propriet`a distributive necessarie
per passare dalluna allaltra. Se si pensasse di decidere se una proposizione
in forma normale disgiuntiva `e una tautologia applicando il teorema 6.3.2,
dovendola prima trasformare in forma congiuntiva, si affronterebbe un compito non inferiore come complessit`a a quello di costruire la tavola di verit`a
completa (e forse pi`
u rischioso, se fatto a mano).

6.4

Esercizi

1. Scrivere la forma normale congiuntiva e disgiuntiva, usando le tavole


di verit`a, delle seguenti proposizioni:
(p q r) p r
p (q p)
((p q) q) p.
2. Per le proposizioni del precedente esercizio, trasformare la forma normale disgiuntiva in quella congiuntiva e viceversa con lalgoritmo forma
normale.
3. Scrivere la forma normale disgiuntiva e congiuntiva, usando lalgoritmo
forma normale, delle seguenti proposizioni:
(p q) (p (q r))
(p q) (p (q r))
p (q p (r p))
p (p q) q.
4. Trasformare le leggi logiche del paragrafo 3.3.3 in forma normale congiuntiva e disgiuntiva.
5. Osservare che la tavola della proposizione p q p (q r) di 3.3.1
`e uguale a quella di p (se questa `e estesa a una tavola a tre entrate
p, q, r indipendente da q e r) e trasformare in p la sua forma normale
disgiuntiva ottenuta dalla tavola.
106

6. Scrivere p q p q in forma normale disgiuntiva e leggerne i


modelli. Discutere le relazioni con p q.
7. Verificare, ai fini dellapplicazione delle trasformazioni con le leggi distributive, che `e
(A B) (C D) (A C) (A D) (B C) (B D)
e analogamente
(A B) (C D) (A C) (A D) (B C) (B D).
8. Verificare come si trasforma, applicando le leggi di De Morgan, la
negazione di una forma normale congiuntiva (rispettivamente disgiuntiva) in una forma normale disgiuntiva (rispettivamente congiuntiva).
9. Spiegare, utilizzando le leggi di De Morgan e la legge della doppia
negazione, perche cnf(A) dnf(A) e dnf(A) cnf(A).
Losservazione fornisce un altro modo per ottenere la forma normale
disgiuntiva, o congiuntiva, di una proposizione. Se si vuole ad esempio
la forma normale disgiuntiva di A, si pu`o provare a vedere se non sia
relativamente facile ottenere cnf(A); ottenuta questa, la si nega e
si applica De Morgan; spesso si evita cos` lapplicazione ripetuta delle
leggi distributive.
Errore frequente: lo studente ha trovato dnf(A) e per ottenere cnf(A) !!!
nega dnf(A) e applica De Morgan, ricordando malamente lesercizio 8,
perche ottiene s` una forma congiuntiva, ma quella della negazione:
` forse il residuo dellidea di premettere due negazioni, uscnf(A). E
andone una per trasformare dnf in cnf con De Morgan: dnf(A),
(dnf(A)), cnf(A). Di quella esterna per`o ci si dimentica - se si
tenesse conto dellaltra negazione, una nuova applicazione di De Morgan riporterebbe a dnf(A). Due negazioni consecutive non possono
creare nulla di nuovo.
10. In riferimento alle osservazioni del precedente esercizio, trovare la forma
normale disgiuntiva e congiuntiva e confrontare i diversi modi per ottenerle, per le proposizioni
(p q) (r p)
p q p q
p (q r) (r p).
107

Alberi di refutazione

7.1

Il metodo

La risposta alle domande semantiche, sulla verit`a logica o sulla insoddisfacibilit`a delle proposizioni, si pu`o dare con metodi pi`
u efficienti della ricerca
esaustiva offerta dalla costruzione delle tavole di verit`a, che `e di complessit`a
esponenziale. Uno di questi `e il metodo degli alberi di refutazione 1 . Il nome
deriva dal fatto che sono impostati, per rispondere alla domanda sulla verit`a
logica, secondo la ricerca del controesempio: si cerca di scoprire se esiste
uninterpretazione che falsifichi la proposizione. Il metodo ha la propriet`a che
o la trova, se esiste, e quindi fornisce uninterpretazione in cui la negazione
della proposizione `e vera (controesempio: la proposizione `e falsa) oppure !!!
mostra che non `e possibile che esista, e quindi la proposizione `e una tautologia.
Pi`
u in generale, il metodo serve a stabilire se esista o no uninterpretazione
che soddisfa una proposizione composta, non partendo dal basso dalle possibili interpretazioni delle lettere (bottom up) ma dallalto, dalla proposizione
data, scendendo verso le sottoproposizioni componenti (top down); nel processo, si accumulano condizioni necessarie che lipotetica interpretazione, se
esiste e soddisfa la radice, dovrebbe pure soddisfare - nel senso di quali
altre proposizioni essa dovrebbe soddisfare o no - fino alle condizioni necessarie riguardanti le proposizioni atomiche; queste, se non sono incompatibili tra di loro, si traducono in condizioni sufficienti per la definizione
dellinterpretazione.
Gli alberi di refutazione possono dunque essere usati anche per rispondere
alle altre domande semantiche, ad esempio quella sulla soddisfacibilit`a.
Si chiamano in generale calcoli logici i metodi per rispondere ai quesiti
logici sulla verit`a, linsoddisfacibilit`a, la conseguenza, metodi che sono procedure guidate dalla sintassi, e che si articolano in applicazioni iterate di
regole che producono strutture come sequenze o alberi di proposizioni, che si
chiamano derivazioni o dimostrazioni.
Gli alberi di refutazione sono alberi etichettati con proposizioni. Identifichiamo per comodit`a di scrittura i nodi con le loro etichette. Nella radice
`e una proposizione, di cui si vuole sapere se esiste un modello. Lalbero `e
1

Altri nomi usati, insieme a qualche variante di presentazione, sono quelli di alberi
semantici , oppure di tableaux semantici.

108

sviluppato secondo la seguente procedura.


Ad ogni stadio, si saranno gi`a prese in considerazione alcune proposizioni,
messe tra parentesi quadre o segnate con un asterisco, e ne resteranno da
considerare altre. Se sono gi`a state considerate tutte, lalbero `e terminato;
se no, si prende in esame una proposizione A non ancora considerata, e a
seconda della sua forma si prolunga lalbero nel modo seguente, dopo aver
segnato A e aver notato quali sono i rami non chiusi che passano per A, dove
un ramo si dice chiuso se su di esso occorre sia una proposizone sia la sua
negazione:
Se A `e una proposizione senza connettivi, non si fa nulla (si va al passo
successivo).
Se A `e B C, alla fine di ogni ramo non chiuso passante per A si
appendono alla foglia due nodi in serie etichettati con B e C, come
nello schema:
[B C]
..
.

C
Se A `e B C, alla fine di ogni ramo non chiuso passante per A si
aggiunge alla foglia una diramazione con due nodi B e C, come nello
schema:
[B C]
..
.

F
. &
B

con lovvia generalizzazione (qui e nella prececente regola) che se si


tratta di congiunzioni o disgiunzioni generalizzate si appendono in serie
o rispettivamente si fanno diramazioni con tanti nodi quante sono le
sottoproposizioni immediate.
109

Se A `e B C, alla fine di ogni ramo non chiuso passante per A si


aggiunge alla foglia una diramazione con due nodi B e C, come nello
schema:
[B C]
..
.

F
. &
B
C
Se A `e B e B non ha connettivi, non si fa nulla.
Se A `e della forma B e B `e C, al fondo di ogni ramo non chiuso
passante per A si appende alla foglia il successore C, come nello schema:
[C]
..
.

C
Se A `e della forma B e B `e B1 B2 , alla fine di ogni ramo non chiuso
passante per A si aggiungono alla foglia due nodi in serie B1 e B2 ,
come nello schema:
[(B1 B2 )]
..
.

B1

B2
con lovvia generalizzazione se B `e una disgiunzione generalizzata.
Se A `e della forma B e B `e B1 B2 , alla fine di ogni ramo non
chiuso passante per A si appendono alla foglia due successori in serie
110

B1 e B2 , come nello schema:


[(B1 B2 )]
..
.

B1

B2
Se A `e della forma B e B `e B1 B2 , alla fine di ogni ramo non chiuso
passante per A si aggiunge alla foglia una diramazione con due nodi
B1 e B2 , come nello schema:
[(B1 B2 )]
..
.

F
. &
B1
B2
Ovviamente se per il nodo in considerazione non passa alcun ramo non chiuso,
non si fa nulla. Dalla formulazione `e chiaro che quando tutti i rami sono
chiusi il procedimento termina, anche se non tutte le proposizioni sono state
considerate, e in tal caso lalbero si considera terminato e si dice chiuso.
Non diamo le regole per il bicondizionale (esercizio) perche non sarebbero altro che ladattamento di quelle che derivano dal fatto che p q `e
equivalente a (p q) (q p). Lo stesso per , ma si preferisce eliminare
prima questi connettivi (comunque, si diano le regole per - esercizio), e
questa `e lunica preparazione o trasformazione che si fa sulle proposizioni;
altrimenti si prendono cos` come sono, e questo `e un vantaggio del metodo, !!!
nessun preprocessing.
Si leggano con attenzione le regole, cogliendone tutte le informazioni e i
vincoli: ad esempio, quando si lavora su di un nodo, si aggiungono proposizioni su tutti i rami passanti per quel nodo, ma non sugli altri.
!!!
111

Esempio
1. Consideriamo la proposizione ((p q) p q) che mettiamo nella
radice dellalbero
((p q) p q)
2. Lavorando su di esso, che `e la negazione di un condizionale, otteniamo
[((p q) p q)]

(p q) p

q
3. Lavorando su (p q) p otteniamo
[((p q) p q)]

[(p q) p]

p q

p
4. Lavorando prima su q, senza alcun effetto, e poi su p q
[((p q) p q)]

[(p q) p]

[q]

[p q]

p
. &
p
q.
112

Non `e neanche necessario indicare che si sono presi in considerazione le


restanti proposizioni, perche il loro effetto `e nullo. Lalbero `e chiuso, perche
su uno dei sue due rami occorrono p e p, e sullaltro occorrono q e q.
Se si deve interpretare come `e stato ottenuto un albero sviluppato, `e di
aiuto che sia segnato a fianco di ogni proposizione lordine in cui `e stata presa
in considerazione, come in
[((p q) p q)]1

[(p q) p]2

[q]3

[p q]4

p
. &
p
q.
Esempio
((p q) (p q) q)1

(p q)3

(p q)4

q2

q
.&
p
q
.&
chiuso
p
q
chiuso

113

dove il ramo di destra con foglia q non `e sviluppato con


q
. &
p q
come dovrebbe essere per il lavoro su (p q), perche il ramo `e gi`a chiuso;
il ramo di sinistra non `e prolungato con
p

p
perche anchesso chiuso.
Avvertenza Non si confondano gli alberi di refutazione con gli alberi !!!
sintattici. Lalbero sintattico si una proposizione contiene solo le sottoproposizioni di quella data, lalbero di refutazione anche altre. Ad esempio
pq pq
.&
pq
pq
.&
.&
p
q
p
q
`e lalbero sintattico di p q p q. Il suo albero di refutazione `e invece
pq pq
.&
(p q)
pq

p
p

q
q
dove, oltre a una struttura diversa, compaiono proposizioni come p, q,
(p q).
In alcune presentazioni gli alberi di refutazione sono alberi i cui nodi
sono proposizioni etichettate con i simboli V ed F , per vero e falso. La
114

corrispondenza con la presente versione si ottiene sostituendo V A con A e


F A con A, e viceversa.
Ad esempio le due regole per la congiunzione sono:
V : Quando si lavora su V (A B) (al fondo di ogni ramo . . . ) si appendono in serie V A e V B.
F : Quando si lavora su A F (A B) (al fondo di ogni ramo . . . ) si
appende una diramazione con con F A e F B.

7.2

Correttezza e completezza

Il primo problema con ogni algoritmo `e quello della terminazione, in particolare per gli algoritmi di decisione; se lalgoritmo non si ferma sempre, con
una risposta, dopo un numero finito di passi, non ci si pu`o affidare ad esso
per decidere le questioni che interessano (nel senso di lanciarlo e stare ad
aspettare).
Lemma 7.2.1 (Terminazione) La costruzione dellalbero di refutazione inizializzato con una proposizione termina sempre in un numero finito di passi.
Dimostrazione. Se ad ogni stadio si lavora su una proposizione di quelle che
hanno altezza massima n tra quelle non ancora considerate, lapplicazione
delle regole fa s` che dopo un numero finito di passi tutte quelle di altezza
n siano state considerate, e laltezza massima delle proposizioni non ancora
considerate sia quindi < n. Infatti le proposizioni introdotte nellalbero con
le regole hanno tutte altezza minore della proposizione che governa la regola,
salvo il caso di B C, per cui si introducono B e C, e B pu`o avere la
stessa altezza di B C (quando? esercizio); ma la successiva applicazione
di una delle regole per proposizioni negate a B, che si pu`o eseguire subito,
la sostituisce con proposizioni di altezza minore.
Anche se dunque nel corso del procedimento il numero di proposizioni
nei nodi dellalbero cresce con il crescere dellalbero, diminuisce quello delle
proposizioni di altezza massima, e dopo un numero finito di passi ci saranno
solo proposizioni di altezza minima, senza connettivi, non ancora considerate,
e a quel punto il processo termina, se non `e terminato prima per la chiusura
dellalbero. 2

115

Quando si d`a un metodo sintattico per rispondere a quesiti di natura


semantica (o un calcolo per risolvere un problema), si pone la questione, e la
richiesta, della correttezza e completezza del metodo. Correttezza significa
che le risposte che d`a il metodo sono giuste, completezza significa che quando
la risposta c`e il metodo la d`a, quella giusta.
Qualche ambiguit`a pu`o sussistere quando le domande possibili sono diverse, e tuttavia collegate. Ad esempio per il fatto che
Osservazione 7.2.2 Per ogni p,
A `e una tautologia se e solo se A `e insoddisfacibile
ci si pu`o porre come problema semantico sia il problema della verit`a logica sia il problema dellinsoddisfacibilit`a. Un calcolo si pu`o pensare sia
come calcolo per stabilire la verit`a logica sia come un calcolo per stabilire
linsoddisfacibilit`a. Scegliamo il metodo degli alberi di refutazione per il
problema dellinsoddisfacibilit`a, e come risposta preferenziale affermativa la
chiusura dellalbero (un esito in generale pi`
u rapido e che non richiede ulteriori elaborazioni); abbiamo allora
Teorema 7.2.3 (Correttezza) Se lalbero di refutazione con radice A si
chiude, allora A `e insoddisfacibile.
Dimostrazione 2 . Procediamo per contrapposizione dimostrando che se esiste
uninterpretazione i che soddisfa A, allora a ogni stadio di sviluppo dellalbero
esiste almeno un ramo tale che i soddisfa tutti le proposizioni del ramo.
Allora lalbero non `e mai chiuso, perche se un ramo `e chiuso non tutte le sue
proposizioni possono essere vere in una stessa interpretazione.
Allo stadio n, consideriamo un ramo le cui proposizioni siano tutte
soddisfatte da i, e una proposizione B su di esso, quindi vera in i, e non
ancora considerata (se non ce ne sono, il lavoro su quel ramo `e terminato
senza che esso sia chiuso, e tale rimane alla fine, e lalbero finale non `e
chiuso). Se B `e una congiunzione, al ramo sono aggiunti due nodi che sono
anchessi etichettati con proposizioni vere in i, e il ramo prolungato soddisfa,
allo stadio successivo, la propriet`a richiesta. Se B `e una disgiunzione B1 B2 ,
2
Per questo e per il successivo teorema diamo dimostrazioni complete, anche se, essendo per induzione, si potranno apprezzare solo in seguito. Si pu`o tuttavia gi`a cogliere
ugualmente lessenza del ragionamento e la ragione della validit`a del risultato.

116

o il ramo3 _ B1 o il ramo _ B2 soddisfano la propriet`a richiesta, a seconda


che B1 o B2 siano vere in i. Lo stesso vale per gli altri casi (esercizio). 2
Viceversa
Teorema 7.2.4 (Completezza) Se A `e insoddisfacibile, lalbero di refutazione con radice p si chiude.
Dimostrazione. Dimostriamo che
Lemma 7.2.5 Se lalbero non si chiude, allora per ogni ramo non chiuso
e terminato esiste uninterpretazione i che soddisfa tutti le proposizioni del
ramo, inclusa la radice.
Dimostrazione del lemma. Sia un ramo non chiuso dellalbero terminato.
Si definisca uninterpretazione i ponendo i(p) = 1 per ogni proposizione
atomica p che occorre come nodo nel ramo , e i(p) = 0 per ogni proposizione
atomica tale che p occorre come nodo nel ramo . Si dimostra ora che ogni
proposizione di `e vera in i. Supponiamo questo verificato per tutte le
proposizioni sul ramo che hanno unaltezza minore di un numero fissato n,
e facciamo vedere che lo stesso vale per quelle di altezza n. Se B `e una
congiunzione B1 B2 , quando `e stata presa in considerazione B si sono
aggiunti come nodi del ramo sia B1 che B2 , che sono quindi in e hanno
altezza minore di n e quindi si suppongono vere in i; dunque anche B `e vera
in i. Se B `e una disgiunzione B1 B2 , quando `e stata presa in considerazione
B si sono aggiunti a tutti i rami passanti per B, incluso (quello che sarebbe
diventato) , o B1 o B2 ; quindi una delle due `e su , e vera in i, quindi anche
B `e vera. Gli altri casi si trattano nello stesso modo. 2 2
Se in un ramo terminato non chiuso manca una lettera che occorre nella
radice, nel definire linterpretazione si pu`o dare ad essa il valore che si vuole;
ci`o significa che al ramo `e associata pi`
u di una interpretazione.
Lesito complessivo dei teoremi di correttezza e completezza `e che il
metodo degli alberi prende in esame tutte le possibili strade per provare
a definire interpretazioni, e se ce ne sono le fornisce tutte, e se non ce ne sono
lo rivela.
3 _

B1 `e il ramo prolungato con B1 ; la notazione `e quella della concatenazione di liste.

117

La dimostrazione delle propriet`a di correttezza e completezza non prende


in considerazione lordine in cui si sviluppa lalbero. Il procedimento degli
alberi di refutazione si pu`o rendere deterministico fissando un ordine progressivo per le proposizioni introdotte e quelle da prendere in considerazione ma
proprio il fatto che la dimostrazione `e indipendente dallordine permette di
vedere che la risposta dellalbero e le sue propriet`a non dipendono dallordine
eventualmente fissato; lavorare su una proposizione prima che su di unaltra
pu`o modificare lalbero ma non la risposta finale; ogni mossa dipende solo
dalla proposizione in considerazione e non dalle altre presenti in altri nodi.
Si pu`o sfruttare questa circostanza (oltre che come si `e fatto nella dimostrazione della terminazione) per formulare utili regole euristiche, come
quella di prendere in esame prima le proposizioni che si limitano ad allungare !!!
i rami e non introducono diramazioni.
Riassumendo
Corollario 7.2.6 Per ogni A,
A `e soddisfacibile se e solo se lalbero di refutazione con radice A non si
chiude
mentre, nello spirito del controesempio,
Corollario 7.2.7 Per ogni A,
A `e una tautologia se e solo se lalbero di refutazione con radice A si chiude.
Per la nozione di conseguenza logica, serve infine il
Corollario 7.2.8 Per ogni A e B,
|= A B se e solo se lalbero di refutazione con radice (A B), o con
radice A B, si chiude.
Si noti che `e indifferente avere nella radice (A B) oppure lequivalente
A B perche in entrambi i casi lapplicazione delle regole per la negazione
di un condizionale o per la congiunzione portano ad aggiungere alla radice

B
118

dopo di che si continua lavorando solo su A e su B e loro sottoproposizioni.


Si pu`o addirittura partire con
A

B
se interessa la domanda A |= B.

7.3

Forme normali

Gli alberi di refutazione permettono di ottenere altre informazioni sulle proposizioni a cui si applicano. Se A `e una proposizione soddisfacibile, e quindi
lalbero di refutazione con radice A non si chiude, una forma normale disgiuntiva di A si pu`o ottenere nel seguente modo: per ogni ramo terminato
e non chiuso, si faccia la congiunzione di tutti i letterali che sono nodi del !!!
ramo, quindi si faccia la disgiunzione di queste congiunzioni. Le propriet`a
dimostrate della correttezza e della completezza garantiscono che questa disgiunzione `e proprio equivalente a A (esercizio).
Esempio
(p q) q (p q)
. &
(p q) q (p q)

p
p

q
q

q.
Lalbero non `e chiuso e la forma normale disgiuntiva della radice `e (p q)
q (p q); i tre modelli dati dai tre rami non chiusi sono
i1 (p) = 0, i1 (q) = 1,
i2 (q) = 1,
i3 (p) = 1, i3 (q) = 0
dove il secondo sta per due interpretazioni, di cui una per`o coincide con la
119

prima; rami diversi non danno necessariamente interpretazioni diverse. La !!!


proposizione non `e una tautologia in quanto manca linterpretazione i(p) =
i(q) = 0 tra i suoi modelli.
Se lalbero per A si chiude, si sa che A `e una contraddizione e una forma
normale disgiuntiva si scrive direttamente.
Dallalbero di A non si legge invece la forma normale congiuntiva di A;
per ottenere questa, una via indiretta `e la seguente: si mette nella radice A, !!!
si sviluppa lalbero per A e si trova una forma normale disgiuntiva di A.
Quindi si nega questa premettendo una negazione, e si applicano le leggi di
De Morgan.
Poiche lalbero terminato e non chiuso permette di leggere i modelli della
radice, per verificare che A `e una tautologia si pu`o anche sviluppare lalbero
con radice A, e controllare che ci siano alla fine 2n interpretazioni associate ai
rami non chiusi, se A ha n lettere. Ma se la domanda `e se A sia una tautologia,
`e pi`
u conveniente impostare lalbero con A, perche se la risposta `e positiva !!!
essa arriva dalla chiusura dellalbero, in generale pi`
u in fretta dello sviluppo
integrale dellalbero con radice A e del conteggio dei modelli.

7.4

Esercizi

1. Verificare con gli alberi di refutazione le leggi logiche del paragrafo


3.3.3.
2. Verificare con gli alberi di refutazione se le seguenti proposizioni sono
tautologie, e se no indicare i controesempi:
(p q) (r p) (r q)
((p p) (q p)) q
(p q) (p q) q
(p q) (p q) q.
3. Verificare con gli alberi di refutazione che le seguenti proposizioni sono
insoddisfacibili:
((p q) (p q) q) q
(p q) (p q)
120

(p q) p q
(p q) p q
(p q r) r (p q) p.
4. Trovare con gli alberi di refutazione la forma normale disgiuntiva e i
modelli delle seguenti proposizioni:
p q (p q)
p q (p q r)
(p (q (p r))) (p (q p)).
5. Con gli alberi di refutazione trovare la forma normale congiuntiva delle
seguenti proposizioni:
p q (p q r)
(p q r) p (p r)
(p (q (p r))) (p (q p)).

121

Linguaggi predicativi

Finora abbiamo considerato, nellalgebra degli insiemi, solo formule contenenti una variabile x, a cui abbiamo associato, in ogni universo U , un insieme
di verit`a.
Gli insiemi di verit`a si incontrano invero quasi solo in matematica, dove `e
proprio tipico lo studio di insiemi definibili. Ad esempio dopo aver introdotto
la definizione dei numeri primi ci si chiede come `e linsieme dei numeri primi
(se finito o infinito), si elaborano algoritmi per trovare i suoi elementi, se
ne studiano sottoinsiemi. Studiare il concetto di numero primo significa
studiare linsieme dei numeri definiti dal concetto primo.
Tuttavia la definizione dei numeri primi richiede i quantificatori. Le
definizioni riguardanti le propriet`a delle relazioni coinvolgono quantificatori.
In generale tutte le frasi che intervengono in matematica coinvolgono quantificatori che devono essere padroneggiati correttamente per fare dimostrazioni
corrette.
Supponiamo di stare ragionando su questioni di aritmetica, e di voler ad
esempio dimostrare che
il successore di un numero pari `e dispari.
Il primo passo della versione aritmetica `e quello di scrivere:
se x `e pari, allora x + 1 `e dispari.
Questa abbiamo visto che `e una delle funzioni delle variabili, quella di indicare
un elemento generico. Quindi occorre sostituire i termini tecnici con le loro
definizioni, continuando con
se x `e divisibile per 2, allora x + 1 non `e divisibile per 2.
La frase x `e divisibile per 2 si formalizza con y(x = 2 y), che traduce:
esiste un numero che moltiplicato per 2 d`a x; tale numero `e indicato con
y, perche non lo conosciamo, e non possiamo conoscerlo se non conosciamo
x, o finche non conosciamo x; non possiamo dire che y `e x/2 perche a rigore
non abbiamo loperazione di divisione, se stiamo considerando solo i numeri
naturali (la si introduce proprio cos`, come inversa della moltiplicazione, ma
in generale insieme a un resto)1 .
1

Naturalmente una possibilit`


a di espressione esplicita con un termine del linguaggio `e
comoda, quando `e disponibile; in generale per`o y non `e una funzione esplicita di x con un
simbolo dellalfabeto.

122

La frase successiva x + 1 `e dispari significa che tutti i numeri z moltiplicati per 2 sono diversi da x + 1.
In italiano, si direbbe correttamente:
se per qualche y si ha x = 2y, allora per nessun z si ha x + 1 = 2z.
Nel gergo matematico, si scrive soltanto
se x = 2y, allora x + 1 6= 2z,
ma la scrittura precisa `e
y(x = 2y) z(x + 1 6= 2z).
Vero `e che i quantificatori devono essere eliminati per svolgere le dimostrazioni
che richiedono manipolazioni algebriche di formule, e si dovr`a arrivare, come
vedremo, a
x = 2y x + 1 6= 2z,
ma laver scritto i quantificatori aiuta a ricordare come devono essere trattate
le variabili.
In questo caso, dato x, anche y `e determinato e fissato; invece x+1 6= 2z `e
unaffermazione relativa a tutti gli z (a tutti i numeri da pensare presi come
valori di z) e va dimostrato come si dimostrano le affermazioni universali,
riferite a z. Ad esempio per assurdo, oppure per induzione, tecnica che
vedremo in seguito.
Si noti che anche in italiano si passa spesso, nei ragionamenti, da frasi
che contengono i quantificatori qualche, tutti, o equivalenti, a frasi con
uno, o equivalenti, vale a dire di quelle che prese isolatamente sarebbero
ambigue. Ad esempio, per giustificare laffermazione chi segue il corso di
Logica non impara niente si potrebbe argomentare nel seguente modo, prima
eliminando un quantificatore universale e infine ripristinandolo: chiunque
segue il corso di Logica (prima o poi) si addormenta; uno che segue il corso di
Logica si addormenta; uno che si addormenta perde qualche spiegazione; uno
che perde una spiegazione non capisce neanche il resto; quindi uno che segue
il corso di Logica non capisce la materia, quindi, come volevasi dimostrare,
tutti quelli che seguono il corso di Logica non imparano niente. Vedremo in
seguito lorganizzazione in un formato standard di queste mosse logiche.
I quantificatori si tolgono nel corso di un argomento per poter lavorare
solo a livello proposizionale o algebrico; tale eliminazione `e soggetta a precisi
123

vincoli che vedremo. Nelle definizioni invece occorre scrivere tutti i necessari
quantificatori nel modo corretto; non `e lecito ometterne alcuni.
Per una trattazione rigorosa dei quantificatori occorrono altre precisazioni,
che si possono dare meglio nel contesto di un linguaggio formale, adatto alla
formalizzazione di tutte le frasi, che presentiamo in maniera analoga a quanto
fatto per il linguaggio proposizionale.

8.1

Alfabeto

Lalfabeto `e stato gi`a descritto informalmente nel capitolo 1.


Per ottenere i linguaggi predicativi, allalfabeto costituito dai connettivi e
dalle parentesi si aggiungono le variabili, con i due quantificatori, e simboli di
predicato, di funzione e di costante. Le variabili sono disponibili in quantit`a
illimitata, anche se ogni volta se ne utilizzeranno solo un numero finito. Gli
altri simboli differiscono da linguaggio a linguaggio, possono anche mancare,
anche se almeno un simbolo di predicato deve sempre essere presente.
I simboli di predicato, di funzione e di costante costituiscono la parte
extralogica dellalfabeto di un linguaggio.

8.2

Termini e formule

La struttura di base di unaffermazione atomica `e lattribuzione di un predicato a uno o pi`


u termini. Se t1 , . . . , tn sono termini, non necessariamente
2
distinti , si scriver`a
P (t1 , . . . , tn )
a indicare che il predicato P (o pi`
u precisamente la propriet`a P se n = 1, o
la relazione P se n > 1) sussiste per gli individui denotati dagli n termini.
I termini sono le costanti, le variabili e, se f `e un simbolo di funzione a n
posti, e t1 , . . . , tn sono n termini, non necessariamente distinti, f (t1 , . . . , tn )
`e un termine.
La scrittura f (t1 , . . . , tn ), come abbiamo detto parlando delle funzioni,
`e quella usuale per indicare il valore di f in corrispondenza agli argomenti
t1 , . . . , tn . Ma le virgole non appartengono al linguaggio predicativo; le parole
2

Si potrebbe anche dire: data una n-upla di termini, dove le componenti di una
n-upla non sono necessariamente distinte.

124

sono liste di simboli dellalfabeto e quella che costituisce in effetti il termine


in questione `e semplicemente la concatenazione f t1 . . . tn .
Si pu`o dimostrare che non esiste ambiguit`a nel ricostruire come `e composto il termine a partire da quali argomenti e quale simbolo funzionale,
anche senza parentesi (e tanto meno virgole). Si deve solo supporre che nel
dare lalfabeto a ogni simbolo f sia associato in modo esplicito il numero
di argomenti di f . Questo fatto mostra i vantaggi della notazione prefissa
rispetto a quella infissa nella manipolazione meccanica.
Lo stesso vale per la scrittura P (t1 , . . . , tn ), che useremo ma che corrisponde alla parola P t1 . . . tn .
I termini chiusi sono i termini che non contengono variabili.
!!!
Quando si trattano argomenti matematici, si usano le convenzioni a cui
si `e abituati, di scrivere i simboli delle operazioni usuali3 in mezzo ai termini,
laddove la notazione funzionale preferisce mettere il simbolo di funzione davanti; la stessa notazione infissa si adotta per le relazioni =, < e .
Esempio Supponiamo di avere una costante 0 e un simbolo funzionale a
un argomento, indicato con 0 ; scriveremo x0 per 0 (x) e quindi x00 per 0 (0 (x)), . . .
I termini sono
0, x, y, . . .
per tutte le variabili
0
0
0
0 , x , y , ...
000 , x00 , y 00 , . . .
...
Linsieme degli infiniti termini pu`o essere enumerato in una successione unica,
ad esempio
0, 00 , x, 000 , x0 , y, 0000 , x00 , y 0 , z, . . .
Il criterio che guida lenumerazione `e quello, dopo il primo passo iniziale 0, 00 ,
di introdurre una nuova variabile, aggiungere un apice ai termini precedenti,
e ricominciare con una nuova variabile.
Linsieme dei termini distribuito in una matrice infinita viene percorso
secondo le diagonali:
3

In aritmetica e algebra si parla preferibilmente di operazioni, ma sono la stessa cosa


delle funzioni. Qualche volta il segno di moltiplicazione non si scrive.

125

...

 
7
7
?
 

00 x0 y 0 . . .
7



000 x00 y 00 . . .
7



0000
..
.

Se le variabili sono indicate con t2 , t3 , . . ., e 0 con t1 , si pu`o determinare


m
z}|{
00
0
esplicitamente con operazioni aritmetiche il posto di tn . . . , in funzione di n
ed m4 .
Lenumerazione per diagonali della matrice infinita i cui posti sono individuati dalla riga n-esima e dalla colonna m-esima dimostra che N N `e in !!!
corrispondenza biunivoca con N.
I termini 0, 00 , 000 , . . . sono quelli che denotano i numeri naturali. Talvolta
si pensa che ci sia a disposizione una costante diversa per ogni numero naturale, perche si pensa a 0, 1, 2, 3, . . ., ma le cifre distinte sono solo dieci. Gli
altri numeri sono denotati da termini chiusi, quelli che si possono formare
con la rappresentazione posizionale. Pensare di disporre di infinite costanti
`e possibile teoricamente, ma non `e realizzabile in concreto.
Se `e presente anche un solo simbolo di funzione a due argomenti linsieme
dei termini `e molto pi`
u complicato.
Le versioni formali delle frasi saranno chiamate formule, in analogia alle
formule matematiche.
Le formule sono definite nel seguente modo:
1 Se P `e un predicato a n posti e t1 , . . . , tn termini, (P (t1 , . . . , tn )) `e una
formula.
2 Se A `e una formula, anche (A) lo `e.
4

Esercizio, dopo il principio di induzione.

126

3 Se A e B sono formule e un connettivo binario, anche (A B) `e una


formula.
4 Se A `e una formula, e x una variabile, anche (xA) e (xA) sono formule.
Le parentesi si riducono con le stesse convenzioni viste per le proposizioni,
dove ora i quantificatori sono al primo posto nellordine di priorit`a, insieme !!!
alla negazione (se adiacenti, si procede prima dallinterno, o da destra verso
sinistra, come gi`a per la negazione nel linguaggio proposizionale).
Esempio xP (x) yQ(y) xyR(x, y) rimettendo le parentesi,
non intorno alle formule atomiche e la coppia esterna, diventa
xP (x) yQ(y) x(yR(x, y))
xP (x) yQ(y) (x(yR(x, y)))
xP (x) yQ(y) ((x(yR(x, y))))
xP (x) y(Q(y)) ((x(yR(x, y))))
xP (x) (y(Q(y))) ((x(yR(x, y))))
(xP (x)) (y(Q(y))) ((x(yR(x, y))))
((xP (x)) (y(Q(y)))) ((x(yR(x, y))))
da cui si vede la struttura, che `e quella di un condizionale con lantecedente
che `e una congiunzione e il conseguente che `e una negazione; , e collegano tra loro formule quantificate (cio`e che iniziano con un quantificatore).
Per le formule si possono costruire gli alberi sintattici individuando il
segno logico principale, che ora pu`o essere un connettivo oppure un quantificatore, per le formule del tipo (xA) e (xA).
Nei nodi dellalbero sintattico di una formula occorrono le sottoformule
della formula stessa.
Lalbero sintattico per xP (x) yQ(y) xyR(x, y) `e il seguente:

xP (x) yQ(y) xyR(x, y)


.&
xP (x) yQ(y)
xyR(x, y)
.&

xP (x)
yQ(y)
xyR(x, y)

127

P (x)

Q(y)

Q(y)

yR(x, y)

R(x, y).

Esempi
1. Tipiche formule atomiche di argomenti aritmetici e algebrici sono x
1 = 0, x y + x = x (y + 1), x + (y + z) = (x + y + z), x < x + 1, e in
generale t1 = t2 e t1 t2 o t1 < t2 dove t1 e t2 sono termini.
2. Le identit`a booleane sono altri esempi di formule atomiche, ma si sono
anche incontrate altre formule pi`
u complesse del linguaggio insiemistico,
ad esempio le definizioni
x(x X Y x X x Y )
X Y x(x X x Y )
o teoremi come
x(x X x X x Y ),
che prima avevamo scritto senza quantificatori universali per labitudine
che c`e nellesposizione matematica di ometterli quando si tratta di
identit`a (cio`e di formule valide per ogni x).
In queste formule X, Y, . . . non sono variabili, ma simboli predicativi a
un posto; x X `e una scrittura alternativa per la notazione predicativa
X(x)5 .
3. La funzione y = x3 `e iniettiva e suriettiva.
x1 x2 (x1 6= x2 x31 6= x32 ) yx(y = x3 )
4. Un enunciato del linguaggio aritmetico che afferma che la relazione
y = 2 x `e una relazione funzionale e iniettiva `e il seguente:
xy(y = 2xz(z = 2x z = y))x1 x2 (x1 6= x2 2x1 6= 2x2 ).
5

Si pu`
o anche considerare come un simbolo di relazione tra insiemi, quando si studiano
questioni pi`
u avanzate che coinvolgono insiemi di insiemi, insiemi i cui elementi sono
insiemi, e non si fa una distinzione logica tra individui ed insiemi; tutte le variabili variano
su insiemi e si possono trovare formule come x y y z.

128

8.3

Variabili libere e vincolate

La clausola 4 della definizione del linguaggio predicativo6 `e la clausola nuova,


rispetto al linguaggio proposizionale.
In una formula del tipo (xA), o (xA), A si chiama raggio dazione
del primo quantificatore universale, o rispettivamente esistenziale. Tutte
le occorrenze di x allinterno del raggio dazione vanno intese in senso o
universale, o rispettivamente esistenziale (con una riserva che vedremo).
Naturalmente in (xA) fuori dal raggio dazione del primo quantificatore
non c`e nulla, ma si potrebbe pensare a (xA) come parte di unaltra formula,
ad esempio (xA) B.
Per le occorrenze di x al di fuori del raggio dazione del quantificatore, se
non cadono dentro al raggio dazione di un altro quantificatore, il senso in cui
vanno interpretate non `e determinato. Linterpretazione di tutta la formula
allora `e ambigua, o necessita di ulteriori precisazioni per essere compresa.
Ad esempio x(x2 + 1 > 0), che si legge per tutti gli x, x2 + 1 > 0,
ha un senso compiuto, `e laffermazione di un fatto, e in particolare `e vera in
tutti i domini numerici usuali ordinati; nella formula
(x(x2 + 1 > 0)) x < 0
invece lultima x `e indeterminata, non cadendo nel raggio dazione di nessun
quantificatore7 . Si pu`o studiare linsieme di verit`a associato; nelluniverso dei
reali, per esempio, tale insieme `e linsieme dei numeri negativi; nelluniverso
dei naturali, `e vuoto. La prima parte x(x2 + 1 > 0) della congiunzione `e
vera in entrambi i casi e non contribuisce nulla alla delimitazione dellinsieme
di verit`a.
In x(x2 + 1 > 0) x(x < 0) lultima occorrenza di x cade nel raggio
dazione di x, e si ha la congiunzione di due formule che corrispondono
entrambe ad affermazioni di senso compiuto, vere negli interi, razionali o
reali, mentre la seconda `e falsa nei naturali.
Le occorrenze di una variabile entro il raggio dazione di un quantificatore
relativo a quella variabile si dicono vincolate dal quantificatore nella formula
6

Con linguaggio sintende talvolta il complesso di alfabeto, regole sintattiche e nozioni


semantiche, altre volte semplicemente linsieme delle formule (o delle proposizioni nel caso
del linguaggio proposizionale).
7
Abbiamo messo ancora le parentesi esterne a (x(x2 + 1 > 0)) perche fosse chiaro dove
finisce il raggio dazione del quantificatore universale.

129

(e cos` pure la x adiacente a in x o a in x, che spesso non viene neanche


menzionata); le altre si dicono libere.
Se si vuole mettere in evidenza che la formula A contiene occorrenze libere
di x si scrive A(x), se contiene occorrenze libere di x e di y A(x, y).
Qualche volta si dice brevemente che x `e libera in A per dire che in
A vi sono occorrenze libere di x, o che x `e vincolata per dire che vi sono
occorrenze vincolate, ma bisogna fare attenzione che allora come abbiamo
visto una variabile pu`o essere sia libera sia vincolata in una formula.
Le formule in cui non ci sono occorrenze libere di variabili si dicono enunciati . Sono le formule per cui ha senso chiedere se sono vere o false (una volta
fissata linterpretazione con il dominio di discorso).
Le formule che non sono enunciati saranno anche chiamate, per sottolineare la differenza, formule aperte; esse non esprimono frasi, piuttosto definiscono insiemi, o relazioni, a seconda di quante variabili libere hanno.
Unaltra loro funzione `e quella di intervenire nel procedimento per decidere se gli enunciati sono veri o falsi.
Esempi
In x(x2 + 1 > 0) x < 0 le prime due occorrenze di x sono vincolate; la
terza `e libera.
In x(x2 + 1 > 0) x(x < 0) tutte le occorrenze della x sono vincolate, ma le prime due dal quantificatore universale, le altre dal quantificatore
esistenziale.
Un quantificatore pu`o cadere entro il raggio dazione di un altro quantificatore, come si `e visto in diversi esempi.
Ma un quantificatore relativo a una variabile x pu`o anche cadere entro il !!!
raggio dazione di un altro quantificatore relativo alla stessa x. Ad esempio,
dopo aver considerato la formula del tipo p(x), con una variabile x che occorre
libera:
x(x2 + 1 > 0) x < 0
nel dominio degli interi, e aver verificato che il suo insieme di verit`a non `e
vuoto, si ottiene un enunciato vero premettendo x. Infatti
Vp(x) 6= se e solo se x(x Vp(x) ) se e solo se xp(x).
Ma allora si ottiene lenunciato
x(x(x2 + 1 > 0) x < 0),
130

che richiede di essere letto con attenzione. Quando nella costruzione di una
formula si premette ad A un quantificatore con la variabile x, questo quantificatore vincola tutte le occorrenze di x che sono libere in A, e solo quelle. !!!
Proprio per come `e stato ottenuto, `e chiaro che il quantificatore esistenziale
nellesempio vincola loccorrenza di x che prima era libera, cio`e lultima, e
solo quella. Lazione del quantificatore esistenziale premesso x scavalca la !!!
parte d. . .e in
dx(x2 + 1 > 0)ex < 0,
dove non ci sono occorrenze libere di x, per agire su x < 0 dove x occorre
libera. Le occorrenze vincolate di x in d. . .e, essendo gi`a vincolate, sono
insensibili allazione di un altro quantificatore. In effetti, `e come se fosse
scritto ad esempio
z(z 2 + 1 > 0) x < 0,
e si ottenesse perci`o
x(z(z 2 + 1 > 0) x < 0),
che `e un modo di scrivere lenunciato pi`
u chiaro, ed equivalente. Se si legge la
frase in italiano si vede bene che non c`e interferenza tra le occorrenze libere
e vincolate di x, perche si possono usare locuzioni diverse; esiste un numero
tale che, mentre ogni numero elevato al quadrato e aumentato di 1 `e maggiore
di 0, lui `e negativo8 . Ancor meglio, conviene leggere: mentre ogni numero
elevato al quadrato e aumentato di 1 `e maggiore di 0, esiste un numero che
`e negativo. Infatti un altro modo di evitare difficolt`a interpretative `e quello
di andare a piazzare il nuovo x dove `e richiesto, cio`e scrivendo
x(x2 + 1 > 0) x(x < 0).
Vedremo in seguito che tali trasformazioni equivalenti sono legittime.
Infine un quantificatore relativo ad una variabile x si pu`o premettere
anche a una formula che non contenga alcuna occorrenza di x libera, ad
esempio xy(y 2 + 1 > 0) o x(y < 0). La definizione di formula non
lo esclude9 . In questi casi leffetto del primo quantificatore `e nullo, la sua
presenza superflua, e la formula ottenuta equivalente a quella originaria.
8

Si `e usato qui mentre come congiunzione, per sottolineare la non connessione tra le
due parti della frase.
9
Non lo esclude perche sarebbe stato complicato inserire la condizione sulle occorrenze
libere nella definizione stessa iniziale.

131

8.4

Interpretazioni

Le formule matematiche presentate negli esempi visti finora possono essere


interpretate in diversi domini numerici; alcune sono vere negli uni e false
negli altri. La possibilit`a di diverse interpretazioni `e ancora pi`
u evidente in
formule del tipo x(yA(x, y) F (x)), dove ci sono simboli predicativi A
e F che non hanno uninterpretazione nemmeno nelluso comune (come `e il
caso dei simboli matematici), e questa `e la caratteristica della logica formale.
x(yA(x, y) F (x)) pu`o essere interpretato nelluniverso delle persone,
e significare che chi ha un amico `e felice, e solo se ha un amico - se A e F
sono interpretati in questo modo10 ; potrebbe significare che uno `e felice se e
solo se ha un lavoro, o ancora avere altri significati; ma lo stesso enunciato
pu`o essere interpretato nei numeri naturali, usando A(x, y) per x `e divisibile
per y con quoziente maggiore di 1 e minore di x e F (x) per x `e un numero
composto, e lenunciato `e vero in questa intepretazione.
Prima di chiedersi se un enunciato `e vero o no occorre precisare quale
interpretazione si ha in mente, vale a dire innanzi tutto quale sia luniverso del
discorso, che deve essere un insieme non vuoto U ; quindi si devono stabilire le
relazioni e funzioni su questo insieme che corrispondono ai simboli predicativi
e funzionali che occorrono nellenunciato. Se ci sono costanti, bisogna fissare
gli elementi di U di cui le costanti sono nomi.
Dare uninterpretazione significa conoscere gli insiemi definiti dalle loro !!!
formule atomiche, o i loro insiemi di verit`a11
Dare uninterpretazione comporta anche in particolare di determinare
quali elementi denotano le costanti e tutti i termini chiusi, e se questi elementi stanno o no nelle relazioni in esame, e quindi se gli enunciati atomici
sono veri o no.
Un enunciato privo di quantificatori, ma contenente connettivi, ad esempio 1 = 1 + 0 1 6= 1 `e vero in uninterpretazione U se assume il valore 1
quando sia considerato come una proposizione costruita a partire dagli enunciati atomici, ai quali sono assegnati 1 o 0 a seconda che siano veri o no
nellinterpretazione U .
10

Qualcuno potrebbe non essere daccordo che lenunciato `e vero, perche il suo amico
`e un cane, e se luniverso `e luniverso delle persone, ly non `e verificato dal cane; se si
vuole inserire anche gli animali nel discorso, allora luniverso deve essere modificato di
conseguenza a tutti gli esseri viventi.
11
Non si intende che queste conoscenze siano effettive, ma solo determinate in linea di
principio.

132

Un enunciato che inizia con un quantificatore universale xA `e vero in !!!


uninterpretazione U se linsieme di verit`a di A `e tutto U . Si dice anche in
tal caso che la formula A `e valida nellinterpretazione.
Un enunciato che inizia con un quantificatore universale xA `e vero in
uninterpretazione U se linsieme di verit`a di A non `e vuoto. Si dice anche
che la formula A `e soddisfacibile nellinterpretazione U .
Linsieme di verit`a di una formula composta si ottiene, a partire dagli
insiemi corrispondenti alle formule atomiche, ricordando la corrispondenza
tra i connettivi e le operazioni insiemistiche.
Tuttavia linterrelazione tra quantificatori e connettivi nella valutazione12
di una formula `e resa complicata dal fatto che i quantificatori possono trovarsi
non solo allinizio di una formula, e quindi occorre saper trovare anche gli
insiemi di verit`a di formule che contengono quantificatori.
Ad esempio nellinsieme dei numeri interi Z, linsieme di verit`a di
x > 0 y(x = 2y)
`e lintersezione dellinsieme dei numeri positivi {x | x > 0} e dellinsieme
{x | y(x = 2y)}.
Per determinare questo insieme, occorre prima considerare linsieme di
coppie {hx, yi | x = 2y }, che `e una relazione, ed `e linsieme di verit`a della
formula x = 2 y nellinsieme Z Z (esercizio: rappresentare questo insieme
in un sistema di assi cartesiani xy nel piano), e quindi prendere le ascisse x di
queste coppie. Questo `e in generale leffetto di un quantificatore esistenziale
, quello di eseguire una proiezione secondo lasse della sua variabile.
Per quel che riguarda , linsieme {x | yA(x, y)} si ottiene dallinsieme
{hx, yi | A(x, y)} considerando tutti e soli gli x tali che tutti i punti della
retta parallela allasse y passante per lascissa x stanno nella relazione definita
da A. Per questo leffetto di una quantificatore universale si chiama anche
cilindrificazione.
La definizione di verit`a in U di un enunciato A `e allora la seguente:
siccome se un enunciato A `e vero in uninterpretazione su U , linsieme {x
U | A vero in U } `e U , e se A `e falso `e , possiamo dire in generale che un
enunciato `e vero in U se il suo insieme di verit`a `e tutto U .
In particolare ritroviamo che xA `e vero in U se e solo se A `e valida in
U . Si giustifica cos` labitudine delle esposizioni di matematica di omettere
12

Si chiama anche qui valutazione lestensione dellinterpretazione a tutte le formule.

133

i quantificatori universali, ad esempio davanti agli assiomi, presentati come


formule valide.
La verifica della verit`a di un enunciato si riduce dunque al calcolo del
suo insieme di verit`a, o U , calcolo che pu`o richiedere, come si `e visto
nellesempio di sopra, la considerazioni di sottoinsiemi di U U o di spazi di
maggiori dimensioni.
Linsieme di verit`a di una formula soddisfa le seguenti condizioni:
se A `e della forma xB, linsieme di verit`a di A `e la cilindrificazione
dellinsieme di verit`a di B; se A `e un enunciato, il suo insieme di verit`a `e U
se linsieme di verit`a di B `e U , altrimenti `e ;
se A `e della forma xB, linsieme di verit`a di A `e la proiezione dellinsieme
di verit`a di B; se A `e un enunciato, il suo insieme di verit`a `e U se linsieme
di verit`a di B non `e vuoto, altrimenti `e ;
se A `e della forma B, linsieme di verit`a di A `e il complemento dellinsieme
di verit`a di B;
se A `e della forma B C, linsieme di verit`a di A `e lintersezione degli
insiemi di verit`a di B e di C;
se A `e della forma B C, linsieme di verit`a di A `e lunione degli insiemi
di verit`a di B e di C;
se A `e atomica, il suo insieme di verit`a `e dato dalla relazione corrispondente al suo simbolo relazionale.
` palese la maggiore complessit`a della valutazione delle formule rispetto
E
alle valutazioni proposizionali, e tanto pi`
u `e auspicabile trovare un riduzione
meccanica di tale compito.
Per lo studio di questioni logiche, si cercher`a di usare ove possibile interpretazioni costruite su insiemi finiti, ovviamente pi`
u maneggevoli; ma non
sar`a sempre possibile, perche esistono enunciati che hanno solo modelli in- !!!
finiti, ad esempio lenunciato xyR(x, y) xR(x, x).
Ricordiamo infine le abbreviazioni che si adottano per i quantificatori
ristretti (si veda il capitolo 1) del tipo x < 0 . . . per x(x < 0 . . .), x
X . . . per x(x X . . .) e rispettivamente x < 0 . . . per x(x < 0 . . .)
o x X . . . per x(x X . . .)

134

8.5

Esercizi

1. Scrivere in linguaggio predicativo tutte le definizioni relative alle relazioni dordine del paragrafo 5.3 (massimo, maggiorante, . . . ).
2. Quali sono gli insiemi di verit`a in N di
y(2y = x z(2z = y))
e
y(2y = x y(2y = x)) ?
3. Quali sono gli insiemi di verit`a in N di
y(xy = 2 z(yz = 2))
e
y(xy = 2 y(xy = 2)) ?

135

Leggi logiche

La terminologia semantica introdotta per i linguaggi proposizionali si estende


agli enunciati predicativi. Uninterpretazione (del linguaggio) dellenunciato
A si dice modello di A se A `e vero nellinterpretazione.
Un enunciato A si dice logicamente vero se `e vero in ogni interpretazione,
e si scriver`a |= A.
Un enunciato B si dice conseguenza logica di A se in ogni interpretazione
in cui A `e vero anche B `e vero, e si scriver`a A |= B.
Un enunciato B si dice logicamente equivalente a un enunciato A se A |=
B e B |= A.
Un enunciato A si dice insoddisfacibile o contraddittorio o inconsistente
se non `e vero in nessuna interpretazione.
Vale ancora che per ogni A e B, A |= B se e solo se |= A B se e solo
se A B `e insoddisfacibile.
Qualche volta, poiche gli enunciati sono pur sempre formule, si dice anche
A logicamente valida per |= A.
Ma inoltre si estendono le definizioni in modo da applicarle proprio anche
a formule aperte. Se A `e una formula in cui occorre x libera, A si dice
logicamente valida se xA `e logicamente vero, cos` come si dice valida in
uninterpretazione se xA `e vero in quellinterpretazione. Una formula si
dice soddisfacibile se esiste uninterpretazione in cui essa `e valida1 .
Le formule logicamente valide continuano a chiamarsi anche leggi logiche.
Esempi di leggi logiche si ottengono facilmente partendo da tautologie proposizionali e rimpiazzando le lettere che vi compaiono con formule
qualunque di un linguaggio predicativo, la stessa formula a tutte le occorrenze della stessa lettera.
Ad esempio da |= p p segue |= xP (x) xP (x). Infatti, data una
qualunque intepretazione, con un qualunque predicato per P , in essa xP (x)
risulter`a o vero o falso. Se risulta vero, `e come se si assegnasse il valore 1
a p nella proposizione; se risulta falso, `e come se si assegnasse 0 a p nella
proposizione; ma questa `e una tautologia, per cui risulta vera in entrambi
i casi, e i calcoli che si fanno a partire dai valori di p per arrivare al valore
dalla proposizione p p sono gli stessi che si fanno a partire dal fatto che
xP (x) `e vero o no per arrivare a dire se xP (x) xP (x) `e vero o no. Non
1
Si ricordi che invece una formula A si dice soddisfacibile in uninterpretazione U se
xA `e vero in U ; e generalizzando, se A `e del tipo A(x, y), sintende xyA(x, y) vero.

136

c`e bisogno di considerare alcuna interpretazione e vedere se in essa xP (x)


`e vero o falso, perche comunque essa sia, e comunque sia linterpretazione di
P , e quindi il valore di xP (x), in essa xP (x) xP (x) risulter`a vero.
Lo stesso succede con qualsiasi altra tautologia, e con la sostituzione di
una qualunque formula.
Quindi tutte le leggi logiche proposizionali restano tali considerando ora
le lettere A, B, . . . che vi compaiono come formule di un qualunque linguaggio
predicativo.
Ma esistono anche altre leggi logiche per formule con quantificatori che
non si ottengono in questo modo e dipendono proprio dal significato dei
quantificatori. Ad esempio
xA xA
`e una di queste2 .
Per verificarlo si ragiona nel seguente modo: in una qualunque interpretazione, se xA `e vero, linsieme di verit`a di A `e tutto luniverso, quindi
linsieme di verit`a di A `e vuoto; allora xA `e falso, e quindi xA `e vero.
Analogamente nellaltra direzione (esercizio)3 . 2
La legge si pu`o considerare una generalizzazione di quelle di De Morgan,
se si pensa che affermare xA(x) sia come fare una grande congiunzione per
tutte le A(x), al variare di x nelluniverso, e affermare xA(x), cio`e che A
vale per almeno un x, sia come fare una grande disgiunzione.
Si `e visto gi`a nella definizione di unione e intersezione generalizzate come
i quantificatori esistenziale ed universale siano usati come generalizzazione
della disgiunzione e della congiunzione.
Se si combina questa legge logica con quella della doppia negazione si
ottengono altre versioni, come
xA xA
o
xA xA
2

Nella verifica di questa e delle successive leggi logiche, come gi`a nella precedente della
forma A A, supporremo per semplicit`a che si tratti di enunciati, solo per mostrare in
modo pi`
u facile lidea soggiacente.
3
La legge vale naturalmente anche se x non occorre libera in A, ma in tal caso non dice
nulla, si riduce a A A.

137

che mostrano come i due quantificatori non siano indipendenti, ma luno


definibile in termini dellaltro, e della negazione. Si chiamano anche leggi
della interdefinibilit`a dei quantificatori.
La legge tipica del quantificatore universale `e la legge di particolarizzazione
xA(x) A(t),
dove A(t) si ottiene sostituendo il termine t a tutte le occorrenze libere di x
in A4 .
Questa legge intuitivamente esprime il fatto che, se in una qualunque
interpretazione vale xA(x), allora A vale per un qualsiasi individuo, in particolare quello descritto da t; ma occorre prestare attenzione alle insidie linguistiche non percepibili in una trattazione formale. La lettura della legge `e
corretta se affermando che vale A(t) si intende che la propriet`a espressa da
A vale per lindividuo rappresentato da t, sempre la stessa propriet`a applicata a diversi individui. Alcune sostituzioni sintatticamente lecite tuttavia
modificano il senso di A(t).
Se ad esempio A(x) `e la formula y(x 6= y), allora `e vero che, poniamo
nei naturali, ma qualsiasi interpretazione con almeno due elementi andrebbe
ugualmente bene, xy(x 6= y) e in particolare y(0 6= y), y(1 6= y), y(1 +
1 6= y), come pure y(x2 6= y) o y(z 6= y).
Se per`o si sostituisce a x la variabile y allora non si ha pi`
u la stessa
propriet`a affermata per y, come prima lo era per x, o per z o per x2 , ma si
ha y(y 6= y), che a parte che `e falsa, non ha pi`
u lo stesso significato.
Un esempio tratto, forzosamente, dal linguaggio comune potrebbe essere
il seguente, dove si suppone di usare Tizio e Caio come variabili: invece
di dire che ognuno ha un padre, si dica ogni Tizio ha un Caio per padre;
particolarizzando, non si pu`o dedurre Caio ha Caio per padre.
Le sostituzioni richiedono cautela anche al di fuori del contesto della particolarizzazione; ad esempio, posto che x|y z(y = x z) significa che x
4
In verit`
a una notazione corretta per il risultato della sostituzione di t a tutte le occorrenze libere di x in A sarebbe A[t/x], perche altrimenti con la scomparsa di x non si
capisce a quale variabile sia stato sostituito t. Ma nei contesti come quello della legge di
particolarizzazione non c`e rischio di confusione.
Si noti che A[t/x] ha senso anche se x non ha occorrenze libere in A e il risultato allora
`e A stesso. Anche la legge di particolarizzazione vale inquesto caso, ma xA A[t/x] si
riduce a A A.

138

divide y, allora (2x)|y significa che 2x divide y, 1|y che 1 divide y, 0|y che
0 divide y, u|y che u divide y, ma z(y = z z) significherebbe che y `e un
quadrato.
Quando si applica la legge di particolarizzazione per dedurre A(t) da !!!
xA(x) perci`o, t per essere ammissibile non deve essere e non deve contenere
variabili quantificate in A e tali che qualche occorrenza libera di x cade nel
raggio dazione dei loro quantificatori. I termini chiusi sono sempre ammissibili.
Le applicazioni della legge sono frequenti; gli assiomi di una teoria sono in
genere enunciati che iniziano con un quantificatore universale (oppure sono
presentati come formule valide, supponendo tacitamente una possibilit`a di
sostituzione di termini qualsiasi alle variabili che `e di fatto unapplicazione
della particolarizzazione).
Si trovano sia esempi di applicazioni in cui t `e chiuso sia esempi in cui
contiene variabili.
Esempio
La legge boleana dellunicit`a dellelemento neutro delladdizione
x(x + y = x) y = 0
si pu`o dimostrare in questi due modi.
Applicando a x(x+y = x) la particolarizzazione con 0 si ottiene 0+y = 0
da cui con trasformazioni algebriche, utilizzando y + 0 = y, si arriva a y = 0.
Applicando invece a x(x+y = x) la particolarizzazione con y si ottiene
y + y = y, quindi 1 = y e y = 0.
Nellesempio la formula quantificata universalmente `e del tipo xA(x, y),
e y `e ovviamente ammissibile perche A(x, y) non contiene quantificatori.
Una legge simmetrica rispetto a quella di particolarizzazione, che si chiama
anche di generalizzazione esistenziale, o di indebolimento esistenziale, afferma che `e logicamente valida
A(t) xA(x),
con le stesse restrizioni su t.
Ad esempio, siccome y + (y) = 0 vale negli interi, si pu`o dedurre x(y +
x = 0); qui bisogna pensare che A(t) `e y + (y) = 0, con y per t, e che
`e ottenuta da y + x = 0 per sostituzione di y a x. Ma potrebbe essere
139

stata ottenuta per sostituzione di y a z in y + z = 0 e si pu`o altrettanto


correttamente dedurre z(y + z = 0).
Unapplicazione di questa regola appare nella dimostrazione che se due
numeri sono divisibili per 3 anche la loro somma lo `e: dato due numeri n ed
m, per ipotesi esistono i e j tali che n = 3i e m = 3j, quindi n + m = 3(i + j)
da cui k(n + m = 3k).
Se si combinano in serie particolarizzazione e generalizzazione esistenziale
si ottiene
xA(x) xA(x),
che `e valida in quanto si considerano solo sempre interpretazioni in cui
luniverso non `e vuoto5 .
Sono leggi logiche anche le leggi di rinomina delle variabili vincolate,
xA(x) yA(y)
e
xA(x) yA(y),
` come se in italiano una
dove y `e una variabile che non occorre in A(x)6 . E
frase venisse espressa una volta con un tutti una volta con chiunque o
altro costrutto, una volta come Ogni Tizio . . . e una volta come Ogni
Caio . . . .
Le leggi di rinomina seguono dalla legge di particolarizzazione e dalle
prossime leggi riguardanti condizionale e quantificatori (esercizio).
Altre leggi stabiliscono dei rapporti tra connettivi e quantificatori che
permettono di trasformare le formule in altre equivalenti con un diverso segno
logico principale:
x(A B) xA xB
x(A B) xA xB

distributivit`
a di su
distributivit`
a di su

Se si scegliesse come U linsieme di tutte le creature della fantasia, non si potrebbe


pretendere, come non si pretende, che ivi valgano tutte le leggi della logica. Lo stesso
nelluniverso di quei filosofi che dicono che tutto `e apparenza.
6
Sarebbero possibili condizioni meno forti sulleventuale presenza di y in A(x), che
tuttavia devono sempre evitare che si verifichi il fenomeno di stravolgimento di senso
illustrato a proposito della particolarizzazione, e che non `e il caso di approfondire.

140

sono immediate conseguenze del significato dei simboli logici.


Mentre `e pure ovvio che siano logicamente valide
xA xB x(A B)
x(A B) xA xB,
non valgono le implicazioni inverse.
Se ad esempio U `e un insieme con due elementi {a, b} e linterpretazione
di P `e {a} e linterpretazione di Q `e {b}, allora in questa interpretazione
x(P (x) Q(x)) `e vero, mentre sono falsi sia xP (x) (linsieme di verit`a di
P (x) non `e tutto U ) sia xQ(x).
Esercizio. Si trovi uninterpretazione in cui xAxB `e vero e x(AB)
`e falso.
Sono particolarmente importanti le leggi che regolano i rapporti tra quantificatori e condizionale. Mentre `e facile convincersi che la distributivit`a di
su
x(A B) (xA xB)
`e logicamente valida, linversa non lo `e. Per trovare un controesempio, si
deve pensare ad uninterpretazione in cui xP (x) xQ(x) sia vero semplicemente perche xP (x) `e falso, mentre non `e vero x(P (x) Q(x)).
Linsieme U = {a, b, c} con {a, b} per linsieme di verit`a di P (x) e {b, c} per
linsieme di verit`a di Q(x) risponde allo scopo.
La non validit`a di
(xA xB) x(A B)
`e il motivo per cui A |= B non equivale a |= A B se A e B sono formule !!!
aperte, ma solo se sono enunciati.
Se A non contiene x libera, allora
x(A B(x)) A xB(x)
e
x(A B(x)) A xB(x).

141

Per verificare la prima, dato un U qualsiasi e supposto per semplicit`a che A


sia un enunciato, distinguiamo due casi. Se A `e falso, A xB(x) `e vero,
ma daltra parte anche x(A B(x)) `e vero perche linsieme di verit`a di
A B(x), che `e sempre soddisfatta se A `e falso, `e tutto U .
Se A `e vero, linsieme di verit`a di A B(x) `e uguale allinsieme di verit`a
di B(x). Se `e uguale a U , x(A B(x)) `e vero, ma anche xB(x) lo `e, e
cos` pure A xB(x). Se non `e uguale a U si ha falso da entrambi i lati. 2
Queste leggi esprimono un caso particolare della possibilit`a di mettere il
quantificatore nella posizione in cui il suo raggio dazione esplica la sua funzione effettiva, sulle occorrenze libere della variabile (spostarlo allindentro).
Altri casi analoghi, e non indipendenti dai precedenti, sono le leggi
x(A B(x)) A xB(x)
e
x(A B(x)) A xB(x)
se x non occorre libera in A.
Ovviamente, per la commutativit`a di e , la formula senza la variabile
libera pu`o essere sia la prima sia la seconda della congiunzione e rispettivamente disgiunzione. Invece il condizionale non `e commutativo. Tuttavia
esistono leggi riguardanti i quantificatori nellantecedente, ma forse pi`
u sor- !!!
prendenti:
x(A(x) B) xA(x) B
e
x(A(x) B) xA(x) B
se x non occorre libera in B.
La prima legge corrisponde al seguente uso linguistico: quando si dice
che qualche cosa, espressa da B, dipende solo dal fatto che (linsieme di
verit`a di) A non sia vuoto, e non da un particolare elemento (come sarebbe
se x occorresse in B e dovesse soddisfarla), allora si pu`o enfatizzare che
qualunque elemento va bene. Se si afferma se uno ha un amico `e felice xA(x, y) F (y) - si vuol dire che qualunque sia lamico, anche un cane,
porta felicit`a (a y).
142

Per la dimostrazione, si supponga xA(x) B vero, quindi B vero o


xA(x) falso. Se B `e vero, allora linsieme di verit`a di A(x) B `e tutto
luniverso, perche per ogni elemento il condizionale ha il conseguente vero. Se
xA(x) `e falso, di nuovo linsieme di verit`a di A(x) B `e tutto luniverso,
perche per ogni elemento il condizionale ha lantecedente falso.
Se invece xA(x) B `e falso, allora B `e falso e xA(x) `e vero, quindi
almeno un elemento soddisfa A. Quando si esamina la formula A(x) B,
per questo elemento si ha vero-falso per il condizionale, che risulta falso, e
quindi linsieme di verit`a di A(x) B non `e tutto luniverso e x(A(x) B)
`e falso. 2
Laltra analoga legge si ricava nello stesso modo; se x(A(x) B) `e vero
in U , allora qualche elemento di U soddisfa A(x) B; se B `e vero, anche
xA(x) B lo `e; se A(x) non `e soddisfatto da questo elemento, allora
xA(x) `e falso e xA(x) B `e vero.
Se x(A(x) B) `e falso, per qualunque elemento A(x) B non `e
soddisfatta, quindi il calcolo del condizionale porta a un vero-falso, e A(x)
deve essere soddisfatta e B deve essere falso; ma allora xA(x) `e vero e B `e
falso e xA(x) B falso. 2
Le equivalenze che permettono di spostare allinterno i quantificatori per- !!!
mettono anche di spostarli allesterno; si ottiene cos` che ogni formula `e
equivalente ad una formula in cui tutti i quantificatori sono allinizio - e
formano il cosiddetto prefisso - seguiti da una formula senza quantificatori detta matrice; una formula scritta in questo modo di dice in forma prenessa 7 .
Ad esempio
xP (x) xQ(x) x(P (x) Q(x))
`e equivalente (esercizio) a
xyz(P (x) Q(y) P (z) Q(z))
ma anche a
zxy(P (x) Q(y) P (z) Q(z))
ed esistono altre forme prenesse della stessa formula, a seconda dellordine
in cui si esportano i quantificatori.
7

Linteresse di tale trasformazione sta nel suo essere il passo preliminare di


unelaborazione su cui si basano i dimostratori automatici pi`
u efficienti.

143

Si noti lo scambio dei quantificatori universali ed esistenziali nei due prefissi; lo scambio di solito non `e permesso, non `e valido in generale, ma capita
con prefissi diversi di due forme premesse equivalenti di una stessa formula.
Le regole viste, ed elencate nella tabella di sotto, sono sufficienti a trasformare ogni formula in forma prenessa.

Leggi logiche notevoli 2


xA xA
De M organ generalizzata
xA xA

xA xA

xA(x) A(t)
particolarizzazione (t ammissibile)
A(t) xA(x)
generalizzazione esistenziale
xA(x) yA(y)
rinomina
xA(x) yA(y)
rinomina
x(A B) xA xB
distributivit`
a di su
x(A B) xA xB
distributivit`
a di su
xA xB x(A B)
distributivit`
a parziale di su
x(A B) xA xB
distributivit`
a parziale di su
x(A B) xA xB
distributivit`
a parziale di su
x(A B(x)) A xB(x)
(x non libera in A)
x(A B(x)) A xB(x)
(x non libera in A)
x(A B(x)) A xB(x)
(x non libera in A)
x(A B(x)) A xB(x)
(x non libera in A)
x(A(x) B) xA(x) B
(x non libera in B)
x(A(x) B) xA(x) B
(x non libera in B)
xyA(x, y) yxA(x, y)
scambio dei quantif icatori
xyA(x, y) yxA(x, y)
scambio dei quantif icatori
Tuttavia alcune ulteriori leggi utili si derivano da esse con luso della
rinomina delle variabili vincolate. Ad esempio dalla distributivit`a di su
segue xA B x(A B) se x non libera in B, e analogamente dalla
distributivit`a di su segue xA B x(A B) se x non libera in B.
Per trasformare in forma prenessa xA(x) xB(x) si pu`o allora ottenere prima x(xA(x) B(x)); quindi poiche x `e libera in B(x) si sostitu144

isce xA(x) B(x) con lequivalente z(A(z) B(x)), dopo la rinomina di


xA(x) B(x) in zA(z) B(x);
Si ottiene infine xA(x) xB(x) xz(A(z) B(x)), oppure in altro
modo (esercizio) xA(x) xB(x) xz(A(x) B(z)).

9.1

Esercizi

1. Dedurre la generalizzazione esistenziale dalla particolarizzazione universale e da De Morgan generalizzata.


2. Dedurre le leggi di rinomina dalla legge di particolarizzazione e dalle
leggi relative a condizionale e quantificatori.
3. Dedurre le une dalle altre le leggi riguardanti e , e , e .
4. Trasformare in forma prenessa le seguenti formule:
xyR(x, y) (xP (x) xQ(x))
xyR(x, y) (xP (x) xQ(x))
xP (x) x(Q(x) zR(x, z))
x(P (x) xQ(x)) x(P (x) Q(x)).

9.2

Quantificatori e dimostrazioni

Completata la presentazione del linguaggio dei predicati e delle principali


leggi logiche, possiamo vedere come intervengono nelle dimostrazioni; di
solito in queste si glissa sulla gestione delle variabili.
Le frasi matematiche presenti nelle premesse e conclusioni di una dimostrazione sono rappresentate da enunciati di linguaggi predicativi, mentre
i passaggi intermedi di solito sono formule, formule algebriche8 o loro combinazioni proposizionali, con variabili libere; si tratta di vedere come si fa a
togliere e (ri)mettere i quantificatori.
Queste mosse sono le sole da aggiungere; per il resto restano valide tutte
le regole logiche e le strategie proposizionali, visto che le regole di inferenza
8

Una definizione generale di formula algebrica potrebbe essere formula atomica con
predicato = o < e termini complessi.

145

che rispettano la relazione di conseguenza logica valgono anche quando le


lettere indicano formule di linguaggi predicativi.
Consideriamo lesempio gi`a menzionato di
il successore di un numero pari `e dispari,
che in simboli diventa
x(y(x = 2 y) y(x + 1 = 2 y)).
Per dimostrare questo enunciato, dimostriamo la formula
y(x = 2 y) y(x + 1 = 2 y),
quantificando alla fine universalmente la variabile x trattata in senso universale nel corso della dimostrazione.
Per dimostrare un condizionale, assumiamo come premessa lantecedente
e deduciamo il conseguente.
Data y(x = 2 y), diciamo sia c un elemento tale che x = 2 c e
scriviamo
x = 2 c,
dove c `e una nuova costante.
Si dice che x = 2 c `e ottenuta per esemplificazione esistenziale. La mossa
riassume il ragionamento introduciamo un nome temporaneo per uno9 di
questi elementi che soddisfano la formula x = 2 y, nome che non pu`o
essere uno di quelli disponibili nellalfabeto perche non si sa quale sia questo
elemento10 .
Ora da x = 2 c occorre dedurre y(x + 1 = 2 y). La forma negativa
suggerisce di fare una dimostrazione per assurdo; si assume quindi
y(x + 1 = 2 y).
9
In questo esempio particolare ce ne pu`o essere solo uno, ma in generale, col quantificatore esistenziale, non si sa quanti 1 ce ne sono.
10
Siccome c dipende da x, si dovrebbe piuttosto avere una funzione di x, o una notazione
del tipo cx , che per`
o sarebbe inutilmente pesante.

146

Di nuovo, sia d una nuova costante, per cui x + 1 = 2 d. d non solo


deve essere nuova non solo rispetto a quelle del linguaggio originario, ma
anche rispetto a quelle introdotte nel corso dellargomentazione; in attesa di
ulteriori elaborazioni non si sa infatti e non si pu`o dire se lelemento sia lo
stesso o diverso11 .
Ora occorre svolgere le conseguenze di x = 2 c x + 1 = 2 d. c e d
vengono da due mosse indipendenti che non permettono di sapere come sono
fra loro i due elementi cos` denotati; si devono quindi considerare tutte le
possibilit`a, che c = d, che c < d, che d < c.
c = d porta a una contraddizione x = x + 1; d < c porta a una contraddizione x + 1 < x; c < d porta, per sottrazione, a 1 = 2 (d c) 2; in ogni
caso una contraddizione, a partire da y(x + 1 = 2 y), e da x = 2 c, quindi
y(x + 1 = 2 y), come si voleva dimostrare12 .
y(x + 1 = 2 y) `e stata dedotta da x = 2 c, ma nella conclusione non si
parla di c, utilizzata come appoggio nel ragionamento; il che `e bene, perche
non sarebbe opportuno concludere un teorema con una formula in cui occorre
un elemento sconosciuto. Daltra parte lobiettivo della dimostrazione, fissato
allinizio, non contemplava elementi sconosciuti, ma enunciati determinati.
E infine nella dimostrazione non si `e usata alcuna propriet`a di c, se non il
fatto che x = 2 c.
Si conclude allora che y(x + 1 = 2 y) `e stata in realt`a dedotta da
y(x = 2 y). 213
Questultimo passaggio tecnicamente chiude lapplicazione della regola
dellesemplificazione esistenziale, che copre tutti i passi dal momento in cui
si dice sia c un elemento tale che x = 2c fino a quando scompare la c. Esso
pu`o sembrare diverso da una meccanica applicazione di una regola sintattica
(che ha una o due premesse e una conclusione immediata).
11

Se alla fine dovesse risultare che d `e uguale a c, vuol dire che si sono attributi due
nomi allo stesso elemento, che non `e inusuale, sia nella vita comune sia in matematica,
ogni volta che si dimostra che due termini sono uguali, ad esempio 0 = 0 + 0.
12
Ripasso di logica proposizonale: se da p e q segue una contraddizione C, p q C,
ne segue (p q), le due proposizioni sono incompatibili, ma quale salvare? (p q) `e
equivalente sia a p q sia a q p. Tuttavia dallo svolgimento della dimostrazione si
vede che in realt`
a si `e dimostrato lequivalente, per importazione/esportazione, p (q
C), da cui p (C q) e quindi p q (perche?), e la scelta `e dunque implicita
nellimpostazione della dimostrazione.
13
La dimostrazione termina poi scrivendo prima y(x = 2 y) y(x + 1 = 2 y) e
quindi poiche x era qualunque, x(y(x = 2 y) y(x + 1 = 2 y)).

147

Prima di discutere questo fatto, vediamo un altro caso di esemplificazione


esistenziale: dimostriamo che se un numero `e divisibile per 4 allora `e divisibile
per 2. In questo caso lelemento sconosciuto apparentemente si mantiene
fino alla fine, nella conclusione, ed allora deve essere eliminato da questa con
unapplicazione della generalizzazione esistenziale.
Da
y(x = 4 y)
si passa a
x=4c
x = (2 2) c
x = 2 (2 c)
Di qui si vede che x `e divisibile per 2, ma non si pu`o terminare con questa
formula. Per generalizzazione esistenziale invece, considerata la formula x =
2 (2 c) come formula del tipo A[2 c/y], con A(y) uguale a x = 2 y, si pu`o
allora dedurre
y(x = 2 y),
per concludere
y(x = 4 y) y(x = 2 y)
e quindi
x(y(x = 4 y) y(x = 2 y)). 2
Il problema logico della regola di esemplificazione esistenziale consiste nel
fatto che A(c) non `e conseguenza logica di yA(y), e quindi nella successione
di formule che costituiscono la proposta dimostrazione non `e pi`
u vero che
ogni formula `e conseguenza logica delle precedenti (o un assioma del dominio
in oggetto o una legge logica).
A(c) non `e conseguenza logica di yA(y) perche pu`o succedere che in
uninterpretazione yA(y) sia vero ma c non sia uno degli elementi che soddisfano A. Ad esempio y(0 < y) `e vero in N, ma se c denota 0 allora 0 < c
` vero che noi affermiamo A(c), ma questa si presenta come una
`e falso. E
nuova assunzione su c, non come una conseguenza di yA(y).
148

Si pu`o tuttavia dimostrare che, nelle condizioni della regola applicata a !!!
yA(y), se B `e una formula che non contiene c, e se B `e conseguenza logica
di A(c) allora B `e conseguenza logica di yA(y) - nonostante A(c) non sia
conseguenza logica di yA(y).
La spiegazione, in breve, `e la seguente. Posto che B segua da A(c), dove
c non occorre in B, si ha
A(c) B.
Ma di c non si sa nulla, a parte il fatto A(c). Qualunque elemento denoti c
va bene, e soddisfa A(c) B. Questo sembra potersi esprimere come
c(A(c) B)
a parte lerrore sintattico di quantificare un simbolo che abbiamo chiamato costante. Ma se lavessimo chiamato variabile, se avessimo usato una
variabile w della nostra disponibilit`a illimitata di variabili, una che non occorresse altrimenti nella dimostrazione (in modo da non avere vincoli che non
ci devono essere, salvo A(w)), avremmo concluso
A(w) B
con w non in B, quindi
w(A(w) B)
e infine
wA(w) B.
Torneremo in seguito sul problema.
Ora ci limitiamo a far vedere che la regola di esemplificazione esistenziale
si pu`o giustificare con una serie di regole logiche usuali, nel senso che le sue
applicazioni possono essere sostituite da altri ragionamenti che non ne fanno
uso.
Consideriamo di nuovo lesempio di
y(x = 2 y) y(x + 1 = 2 y).
Poiche y non `e libera nel conseguente, si pu`o scrivere in modo equivalente
y(x = 2 y y(x + 1 = 2 y));
149

come nellesempio dellamico che rende felici, che pu`o essere qualunque, anche
ora si dice che y pu`o essere qualunque, purche soddisfi poi lantecedente
x = 2 y.
Allora la y di x = 2 y `e trattata in questa versione della dimostrazione
come una variabile universale. Data una y qualunque, occorre dimostrare
che
x = 2 y y(x + 1 = 2 y),
ovvero
x = 2 y y(x + 1 6= 2 y).
Il quantificatore del conseguente pu`o essere spostato nel prefisso, dopo aver
eseguito unopportuna rinomina, e la formula da dimostrare `e equivalente a
z(x = 2 y x + 1 6= 2 z);
quindi possiamo provare a dimostrare
x = 2 y x + 1 6= 2 z,
con tutte le variabili intese in senso universale.
Per assurdo, assumiamo la negazione del condizionale, quindi
x = 2 y x + 1 = 2 z,
e con gli stessi calcoli fatti sopra, con y e z al posto rispettivamente di c e d,
arriviamo a una contraddizione.
Abbiamo quindi
x = 2 y x + 1 6= 2 z,
e quantificando universalmente
xyz(x = 2 y x + 1 6= 2 z),
da cui con le leggi logiche pertinenti
x(y(x = 2 y) z(x + 1 6= 2 z)). 2
Si noti che di solito nel gergo matematico, dove non si usa indicare i
quantificatori, attraverso uninterpretazione (corretta) dellenunciato da dimostrare si imposta direttamente proprio
150

se x = 2 y, allora x + 1 6= 2 z.
Altro esempio. Per dimostrare
y(x = 4 y) y(x = 2 y)
si trasformi la formula nellequivalente
y(x = 4 y y(x = 2 y))
e si provi a dimostrare
x = 4 y y(x = 2 y).
Partendo da x = 4 y si fanno gli stessi passaggi di prima, x = (2 2) y,
x = 2 (2 y) e quindi con la generalizzazione esistenziale y(x = 2 y). 2
Un problema delle esemplificazioni esistenziali, non logico ma pratico, `e che non
c`e labitudine di usare coerentemente costanti, ma spesso si utilizzano le variabili.
In riferimento allesempio precedente, dato y(x = 2 y) si propone: sia y un
elemento tale che x = 2 y.
Luso di variabili `e legittimo, ma richiede diverse cautele.
La variabile y di sia y tale che A(y), a seguito di yA(y), non deve comparire
libera in eventuali altre formule gi`a utilizzate nella dimostrazione, e che pongono
vincoli sullelemento denotato da y, mentre di questo si sa solo, e si vuole usare solo
il fatto che soddisfa A(y). Nel caso in esame, y(x = 2y) `e la prima assunzione da
cui si parte, quindi non si presenta questo problema, altrimenti si deve usare una
nuova variabile e dire sia w tale che A(w) - o fare prima una rinomina di yA(y).
Questo ha anche il vantaggio, se la variabile `e insolita, di ricordare il suo status
speciale. Il termine usato per lesemplificazione esistenziale deve essere appunto un
termine, vale a dire unespressione che denota un elemento (sconosciuto salvo per
il fatto che deve soddisfare A) delle interpretazioni. Che il simbolo nuovo sia un
c non presente nellalfabeto, o un simbolo w presente nellalfabeto ma mai usato,
e si chiami di conseguenza costante o variabile non fa nessuna differenza, se lo si
gestisce in modo corretto. Se `e una variabile, questa variabile libera ha un senso
particolare, non universale, condizione che deve essere tenuta presente nel corso di
tutta la dimostrazione, finche essa non scompare.
La variabile introdotta in unesemplificazione esistenziale scompare nello stesso
modo come abbiamo visto scomparire la c, ad esempio per generalizzazione esistenziale14 .
14 `

E in genere il destino pi`


u comune delle variabili introdotte a partire da un quantificatore esistenziale.

151

Da sia y un elemento tale che x = 2y la dimostrazione prosegue come sopra:


si deve dimostrare che da x = 2 y segue y(x + 1 = 2 y).
Per assurdo, si assume x = 2 y e y(x + 1 = 2 y) e di nuovo si applica
lesemplificazione esistenziale. La regola richiede che si utilizzi una variabile diversa
da quelle che occorrono libere nella parte precedente, in questo caso da y.
Si perviene cos` a x = 2 y x + 1 = 2 z da cui segue una contraddizione con
gli stessi calcoli di sopra, con y e z al posto rispettivamente di c e d. 2
Altro esempio. La dimostrazione di y(x = 4 y) y(x = 2 y) si svolge
come sopra assumendo y(x = 4 y) ed esemplifcando: sia y uno di questi, per cui
x=4y
x = (2 2) y
x = 2 (2 y)
y(x = 2 y),
questultima per generalizzazione esistenziale. 2
` come se il quantificatore y, staccato dallipotesi, restasse a seguire dallalto
E
i vari passi e trasformazioni della sua y, in questo caso in 2 y, per poi alla fine
ripiombare nella posizione dovuta.
Luso delle variabili faciliterebbe, come abbiamo visto sopra, la giustificazione
logica della regola di esemplificazione esistenziale.
Noi useremo sempre le costanti per le esemplificazioni esistenziali, ma si deve
essere avvertiti della possibilit`a di incontrare luso di variabili. Talvolta si incontrano soluzioni intermedie, ad esempio simboli come x0 , k che sembrano diversi
dalle variabili15 .

La regola relativa alleliminazione temporanea del quantificatore esistenziale afferma dunque che si pu`o esemplificare unaffermazione esistenziale
yA(y) con A(c) o A(w) se per questa via si perviene a una conclusione
che non contiene la costante o non contiene libera la variabile usata per
lesemplificazione.
Tuttavia le cautele e le restrizioni per questa regola non sono ancora finite.
Finche la costante o la variabile introdotte come esemplificazione di un
quantificatore esistenziale non sono scomparse, largomento `e incompleto, e
non terminato, come in sospeso, per il riferimento a questo elemento sconosciuto. La costante o variabile pu`o scomparire o per passaggi proposizionali
15

Teorema: se esiste un massimo interno al dominio, esiste un punto in cui la derivata


si annulla. Dimostrazione: sia x0 un punto di massimo . . . . Teorema: se x `e pari allora
. . . Dimostrazione: sia x = 2 k . . . .

152

(come sopra, una dimostrazione per assurdo di un altro enunciato, oppure


per il taglio di un modus ponens), o per generalizzazione esistenziale16 .
Quello che bisogna assolutamente evitare `e di quantificare universalmente !!!
una variabile che sia stata introdotta come esemplificazione di un quantificatore esistenziale (in questo luso di una costante ha ovvi vantaggi).
Un esempio di errore clamoroso dovuto a una simile disattenzione `e la
seguente dimostrazione di xy(x < y) a partire da xy(x < y).
Assunto xy(x < y), per particolarizzazione si ha y(x < y); per esemplificazione esistenziale, sia y tale che x < y. Se ora dimenticandosi della
natura esistenziale di y si affermasse y(x < y) si potrebbe concludere per
generalizzazione esistenziale che xy(x < y).
Ma questa conclusione non `e conseguenza della premessa, come si vede
dal fatto che la premessa `e ad esempio vera negli interi, mentre la conclusione
non lo `e.
Anche la gestione della introduzione del quantificatore universale `e pi`
u
delicata di quanto finora abbiamo lasciato intendere. Si possono legittimamente (ri)quantificare universalmente le variabili libere che derivano per particolarizzazione da un quantificatore universale, ma non `e questa tutta la
storia. A volte sembra di lavorare con varibili libere che non derivano da
una particolarizzazione, e che pure hanno un significato universale. La vera
condizione `e che le variabili non occorrano libere nelle premesse.
!!!
Ad esempio, se si parte da 0 < x e con un argomento corretto, utilizzando
le propriet`a dei numeri reali, si conclude y(x = y 2 ), non si pu`o affermare
xy(x = y 2 ) - c`e una condizione restrittiva su x stabilita dalla premessa.
In realt`a largomento che porta da 0 < x a y(x = y 2 ) stabilisce 0 < x
y(x = y 2 ) per x qualunque, senza alcuna premessa (salvo le propriet`a dei
numeri reali espresse da enunciati, senza variabili libere). Quindi x non `e
libera nelle premesse della derivazione di questultima formula, che non ci
sono, e si pu`o correttamente quantificarla in x(0 < x y(x = y 2 )).
Un altro caso del genere si ha nellesempio precedente se x `e pari allora
x + 1 `e dispari. La dimostrazione che da x `e pari porta a x + 1 `e dispari
stabilisce x `e pari x + 1 `e dispari senza premesse che non siano gli
16
Laffermazione yA(y) introdotta per generalizzazione esistenziale comporta
unaffermazione apparentemente pi`
u debole, generica, rispetto a A(t), che sembra indicare esplicitamente un elemento con la propriet`a A, ma nelle applicazioni come si `e visto,
se t deriva da unesemplificazione esistenziale, allora in realt`a anche la sua denotazione `e
vaga.

153

assiomi dei numeri naturali, espressi da enunciati. Quindi si pu`o quantificare


universalmente la x.
Infine esiste un problema con la generalizzazione universale allinterno
della esemplificazione esistenziale.
Un esempio di errore dovuto a cattiva gestione della quantificazione universale `e il seguente. Da xy(x < y) per particolarizzazione si ha y(x < y)
e per esemplificazione, sia c tale che x < c. Se ora si quantifica universalmente
x si ottiene x(x < c) e per generalizzazione esistenziale yx(x < y). La
conclusione, che afferma lesistenza di un massimo per <, `e palesemente falsa
nei naturali, dove invece la premessa `e vera. Ma la premessa `e un enunciato, e
sembrerebbe quindi che non vi fossero variabili libere nelle premesse e tutte
le regole fossero applicate correttamente. La spiegazione sta nel fatto che !!!
quanto si dice sia c tale che x < c inizia, come abbiamo detto sopra, un argomento particolare, una sorta di dimostrazione a parte che non si considera
conclusa finche tale c non sparisce legittimamente. In questa dimostrazione
subordinata, x < c `e una premessa, e x `e libera in x < c, e non `e lecito perci`o
quantificare universalmente la x.
Due altre possibili spiegazioni della restrizione sono le seguenti. Si immagini di
non usare la regola di esemplificazione esistenziale, quindi di provare a dimostrare
xy(x < y) yx(x < y)
come
xy(x < y yx(x < y)).
Dopo i preliminari sia x tale che . . . si deve cercare di dedurre partendo da x < y
prima x(x < y) e quindi yx(x < y). Ma lassunzione x < y non pu`o essere
quantificata universalmente, `e una premessa della derivazione del condizionale.
Oppure si pu`o pensare che quando si passa da y(x < y) a x < c il termine c
dipenda da x (si scriva cx per ricordarlo, potrebbe essere addirittura proprio un
termine c(x), c nuovo simbolo funzionale). Allora lapplicazione della regola di
generalizzazione esistenziale per ottenere zx(x < z) da x(x < cx ) non sarebbe
lecita in quanto cc non sarebbe ammissibile per x(x < z).

Queste sottigliezze sono precisate e rese di agevole applicazione nei sistemi di regole che costituiscono i calcoli logici per i linguaggi predicativi, ad
esempio il calcolo della deduzione naturale, che rientrano negli argomenti non
propedeutici.
154

10

Sillogismi

I sillogismi sono forme di ragionamento studiate fin dallantichit`a che coinvolgono enunciati di linguaggi predicativi, ancorche di un tipo semplificato;
molti argomenti del linguaggio comune si presentano in tale forma, e rappresentano perci`o un utile esercizio, sia di formalizzazione sia di deduzione,
anche al di fuori della matematica.
Gli enunciati che intervengono nei sillogismi contengono solo predicati
monadici, a un posto, e inoltre sono di una forma particolare.
Gli enunciati presi in considerazione e combinati tra loro affermano sempre una delle seguenti circostanze: che tutti quelli che hanno una propriet`a
P hanno anche la propriet`a Q; che nessuno di quelli che hanno una propriet`a
P hanno la propriet`a Q; oppure che qualcuno che ha la propriet`a P ha anche
Q, o infine che qualcuno con la propriet`a P non ha Q.
Enunciati di questa forma si chiamano, nella tradizione logica, proposizioni categoriche1 .
A prima vista si direbbe che il loro studio costituisca unanalisi dei quantificatori, ma `e forse pi`
u corretto dire che mette in evidenza e sfrutta alcune
relazioni insiemistiche della sola intersezione, e precisamente
A B = A,
A B = ,
A B 6= ,

AB
A e B sono disgiunti
A e B non sono disgiunti.

ovvero
ovvero
ovvero

Le proposizioni categoriche venivano scritte e lette nel seguente modo,


dove a fianco mettiamo la versione insiemistica e quella logica moderna:
A
E
I
O

Tutti i P sono Q
Nessun P `e Q
Qualche P `e Q
Qualche P non `e Q

P
P
P
P

Q
Q=
Q 6=
6 Q

x(P (x) Q(x))


x(P (x) Q(x))
x(P (x) Q(x))
x(P (x) Q(x)).

Le lettere a sinistra sono la sigla con cui venivano indicate le corrispondenti


1

Si ammetteva unestensione a proposizioni contenenti termini singolari come Socrate


introducendo un predicato S per socraticit`a, con un unico elemento, e traducendo
Socrate `e mortale con Tutti quelli che hanno la propriet`a S sono mortali.

155

proposizioni2 : A ed E sono proposizioni affermative, rispettivamente universale ed esistenziale; I e O sono negative, rispettivamente universale ed
esistenziale.
Le parole tutti, nessuno, qualche diventavano superflue, sostituite
dalla sigla prefissa; scrivendo A : P Q si intendeva la frase tutti i P sono
Q, con I : P Q la frase qualche P `e Q, e cos` via. Il simbolismo logico
come si vede ha una lunga storia.
Siccome cera sempre solo una variabile individuale, non si `e sentita
lesigenza di indicarla. Il verbo era sempre il verbo essere; noi dobbiamo
distinguere i casi universali che richiedono condizionale e quelli particolari,
resi da una congiunzione.

10.1

Sillogismi categorici

I sillogismi categorici3 sono inferenze in cui occorrono due premesse e una


conclusione, tutte e tre proposizioni categoriche, costruite con tre predicati,
di cui uno inevitabilmente occorre due volte nelle premesse, per stabilire un
legame, e si possono presentare ad esempio nel seguente modo:
I :
E:
O:

P
S
S

M
M
P.

Il predicato S si chiama di solito soggetto, il predicato P predicato e il


predicato M termine medio.
Un sillogismo `e valido se la conclusione `e conseguenza logica delle pre- !!!
messe.
Tutti i possibili sillogismi si caratterizzano per due aspetti; il primo `e
il tipo di proposizioni categoriche che nellordine lo costituiscono, si chiama
modo, ed `e rappresentato da tre lettere; ad esempio il modo del sillogismo di
sopra `e I E O.
Il secondo parametro `e la disposizione dei tre predicati nelle tre proposizioni, e si chiama figura. Se si standardizza le presentazione, ad esempio
chiedendo che la conclusione contenga sempre la coppia S P nellordine - da
2

I simboli per i quantificatori vengono probabilmente da questa tradizione di usare le


lettere per indicare il tipo di quantificazione. In tutte le lingue dei logici moderni, italiano,
inglese, tedesco, esiste inizia con e, mentre tutti inizia con a in tedesco e inglese.
Le lettere A e I sono le prime vocali di affirmo, E e O quelle di nego.
3
Dora in avanti diremo soltanto sillogismi.

156

cui il nome di questi due predicati4 -, osservando che il termine medio deve
sempre comparire in entrambe le premesse - altrimenti si vede facilmente che
il sillogismo non `e valido5 - e che lordine delle premesse non `e rilevante (per
la terminologia, si chiama premessa maggiore quella che contiene S, e minore
laltra) si ottengono in tutto quattro figure:
SM
P M

SM
MP

MS
MP

MS
P M.

I sillogismi possibili sono 256 (esercizio), ma quelli validi solo6 15.


Dimostrare la validit`a di un sillogismo equivale a dimostrare che la conclusione `e conseguenza logica delle premesse, e questo si pu`o fare con la
derivazione della conclusione dalle premesse con passaggi che conservano la
conseguenza logica. Per dimostrare che un sillogismo non `e valido, quando
non lo `e, non basta non riuscire a costruire la derivazione dalle premesse,
occorre trovare un controesempio.
Per svolgere le dimostrazioni, occorre usare solo, sulle premesse, la regola
di particolarizzazione sugli enunciati universali e quella di esemplificazione
esistenziale sugli enunciati esistenziali; questa conviene applicarla prima della
particolarizzazione. Quindi si applicano leggi proposizionali e infine i quantificatori si reintroducono o con la generalizzazione esistenziale, se la conclusione `e esistenziale, o con quella universale, se la conclusione `e universale.
Esempi
Derivazione della conclusione dalle premesse del sillogismo valido
E:
I :
O:

P
S
S

M
M
P,

ovvero
4

Sono grammaticalmente il soggetto e il predicato della conclusione.


A meno che la conclusione non coincida con una premessa.
6
Una lunga controversia ha riguardato il fatto di considerare o no predicati vuoti,
decisione che influenza la validit`
a o meno di certi sillogismi. Nellantichit`a si preferiva evitarli; nella trattazione moderna prevale linterpretazione cosiddetta booleana, che ammette
predicati vuoti. Sono 15 i sillogismi validi nellinterpretazione booleana.
5

157

x(P (x) M (x))


x(S(x) M (x))
x(S(x) P (x)).
Presentiamo la dimostrazione nella seguente tabella, in una colonna in
versione formale, con la successione di formule, nellaltra con la loro lettura
in linguaggio naturale.

Linguaggio predicativo Linguaggio naturale


x(S(x) M (x))
Qualche S e` un M.
S(c) M (c)

Sia c un S che e` anche un M.

S(c)

Allora c e` un S e

M (c)

c e` un M.

x(P (x) M (x))


P (c) M (c)

N essun P e` M.
Se c e` un P allora c non e` un M, o
Se c fosse un P non sarebbe un M.

per contrapposizione
M (c) P (c)

Se c e` un M allora non e` un P.

da questo e da M (c)
P (c)

M a siccome c e` un M,
allora c non e` un P.

da questo e da S(c)
S(c) P (c)

Siccome c e` un S,
c e` un S che non e` un P.

x(S(x) P (x))

Qualche S non e` un P.

158

In modo del tutto analogo, si dimostri (esercizio) la validit`a del sillogismo:

A:
O :
O:

P
S
S

M
M
P,

ovvero

x(P (x) M (x))


x(S(x) M (x))
x(S(x) P (x)).

Un altro esempio di sillogismo valido `e il seguente:

A:
I :
I:

M S
M P
S P,

ovvero

x(M (x) S(x))


x(M (x) P (x))
x(S(x) P (x)).

con la dimostrazione:

159

Dimostrazione
Linguaggio predicativo Linguaggio naturale
x(M (x) P (x))
Qualche M e` P.
M (c) P (c)

Sia c un M che e` anche un P.

M (c)

c e` un M.

P (c)

c e` un P.

x(M (x) S(x))

T utti gli M sono S.

M (c) S(c)

Se c e` un M allora c e` un S.

S(c)

Siccome c e` un M,
c e` un S.

S(c) P (c)

Siccome c e` un P
c e` un S che e` anche un P.

x(S(x) P (x))

Qualche S e` un P.

Valido `e anche il sillogismo


A:
A :
A:

S M
M P
S P,

ovvero

x(S(x) M (x))
x(M (x) P (x))
x(S(x) P (x)),

160

con la seguente dimostrazione:


Dimostrazione

Linguaggio predicativo
x(S(x) M (x))
S(x) M (x)

Linguaggio naturale
T utti gli S sono M.
U no che sia un S e` anche un M.

x(M (x) P (x))


M (x) P (x)

T utti gli M sono P.


U no che sia un M e` anche un P.

per transitivit`
a da 2 e 4
S(x) P (x)
U no che sia un S e` anche un P.
x(S(x) P (x))

T utti gli S sono P.

Si noti che Qualche S `e P sembra pi`


u debole di Tutti gli S sono P , e
quindi si potrebbe pensare che sia conseguenza delle stesse premesse. Invece
il sillogismo
A:
A :
I:

S M
M P
S P,

ovvero

x(S(x) M (x))
x(M (x) P (x))
x(S(x) P (x)),

non `e valido in quanto, se S `e vuoto x(S(x) P (x)) `e falso, nonostante


161

x(S(x) P (x)) sia vero (da x(S(x) P (x)) segue x(S(x) P (x)) verificato da un elemento non appartenente a S - non x(S(x) P (x)))7 .
Per verificare che un sillogismo non `e valido occorre trovare un controesempio, vale a dire uninterpretazione in cui le premesse sono vere e la conclusione falsa.
Ad esempio il sillogismo
x(S(x) M (x))
x(M (x) P (x))
x(S(x) P (x))
`e falsificato dalla seguente interpretazione: U = {a, b, c}, S = {a}, M =
{a, c}, P = {b, c}.
Un argomento in linguaggio naturale8 si dice corretto se `e un caso particolare di un sillogismo formale valido.
Si consideri il seguente argomento:
I progressisti sono sostenitori dello stato sociale
Alcuni ministri del governo sono sostenitori dello stato sociale
Quindi alcuni ministri sono progressisti.
Si chiede se `e corretto. Prima di proseguire, si prenda tempo (non troppo)
e si dia una risposta.
La maggior parte delle persone risponde s`. Un modo tradizionale di
convincere che invece non `e corretto `e quello di osservare: sarebbe come dire
che
siccome
I cavalli sono veloci
e
Alcuni asini sono veloci
allora
Alcuni asini sono cavalli.
7

Questo `e un esempio di un sillogismo non valido nellinterpretazione booleana, mentre


sarebbe valido se non fossero ammessi predicati vuoti.
8
O in un formalismo interpretato, ad esempio una dimostrazione aritmetica.

162

Sarebbe come dire significa che se il primo argomento fosse corretto


allora il sillogismo
A:
I :
I:

P
S
S

M
M
P

sarebbe valido e allora anche il nuovo argomento, della stessa struttura formale, dovrebbe essere corretto. Ma questultimo ovviamente non lo `e.
Che non lo sia, e quindi che si sia esibito un controesempio, non `e mai del
tutto chiaro se gli esempi sono fatti in linguaggio naturale. Nessun insieme
definito nel linguaggio naturale ha i confini esattamente delimitati senza ambiguit`a. Per questo i controesempi devono essere insiemi astratti, dove gli
elementi e i non elementi sono individuati in maniera precisa e indiscutibile.
Nel caso in oggetto, un controesempio `e fornito da U = {a, b, c, d} con
S = {c, d}, P = {a, b} e M = {a, b, c}.
Un esempio dello stesso tipo `e il seguente. Linferenza
Nessun triangolo rettangolo `e equilatero
Qualche triangolo isoscele `e equilatero
Quindi qualche triangolo rettangolo non `e isoscele
`e corretta?
Dopo aver risposto . . . , si consideri che sarebbe come dire
Nessun cerchio quadrato `e equilatero
Qualche triangolo `e equilatero
Quindi qualche cerchio quadrato non `e un triangolo
conclusione che implica che esiste un cerchio quadrato. Oppure
Nessun cane `e un ruminante
Qualche quadrupede `e un ruminante
Quindi qualche cane non `e un quadrupede.
Il sillogismo
E:
I :
O:

S
P
S

M
M
P

163

non `e valido se S `e vuoto oppure se S P .


Nel valutare la correttezza logica di un argomento, non bisogna utilizzare
nessuna conoscenza non esplicitata relativa ai predicati concreti che vi sono !!!
coinvolti.
Avevamo presentato a suo tempo un argomento di Lewis Carroll:
a) I bambini sono illogici
b) Le persone che sanno come trattare i coccodrilli non sono disprezzate
c) Le persone illogiche sono disprezzate
d) Quindi i bambini non sanno trattare i coccodrilli.
Questo argomento non `e in verit`a un sillogismo perche `e formato da quattro proposizioni categoriche; tuttavia si pu`o spezzare in due sillogismi concatenati; gli argomenti riducibili a catene di sillogismi si chiamano soriti.
Largomento di Carroll si pu`o dimostrare corretto con la seguente scomposizione. Consideriamo prima largomento:
b) Le persone che sanno come trattare i coccodrilli non sono disprezzate
c) Le persone illogiche sono disprezzate
e) Quindi le persone illogiche non sanno trattare i coccodrilli
che `e un sillogismo di modo EAE, figura
P M
S M
valido, con M uguale a essere disprezzato, S uguale a persone illogiche
e P uguale a saper trattare i coccodrilli.
Combiniamo ora la conclusione e con a:
a) I bambini sono illogici
e) Le persone illogiche non sanno trattare i coccodrilli
d) Quindi i bambini non sanno trattare i coccodrilli
ottenendo sillogismo di modo AAA valido, e si ha la conclusione d.
Dimostriamo che il sillogismo sopra considerato
164

E:
A :
E:

P
S
S

M
M
P

ovvero
x(P (x) M (x))
x(S(x) M (x))
x(S(x) P (x))
`e valido:
Dimostrazione

Linguaggio predicativo Linguaggio naturale


x(P (x) M (x))
N essun P e` M.
P (x) M (x)
per contrapposizione
M (x) P (x)
x(S(x) M (x))
S(x) M (x)
per transitivit`
a di
S(x) P (x)
x(S(x) P (x))

U no che sia P non e` M.


Allora uno che sia M non e` P.
Ogni S e` M.
U no che sia un S e` M.
Quindi uno che sia un S non e` P.
N essun S e` P.

Esercizio. Si mostri che il sorite di Lewis Carroll si pu`o anche spezzare in


due sillogismi di cui il primo ha come premesse b) e c). Quale `e la conclusione
intermedia?

10.2

Diagrammi di Venn

I tre predicati che intervengono in ogni sillogismo sono rappresentati da tre


insiemi, come in figura, senza escludere a priori nessuna possibilit`a per quanto
165

riguarda le loro intersezioni (i loro complementi sono le regioni esterne ai


cerchi).

'$
'$

'$
&%
&%
&%

Nel disegno sono presenti diverse aree: S, S P , S M , S P M , S \ P ,


S \ M , S \ (P M ), . . . (completare per esercizio; quante sono e perche?).
Alcune possono essere vuote, altre no, a seconda degli insiemi, e di quanto
su di essi stipulano le premesse.
Le premesse dei sillogismi si riferiscono solo ad alcune delle aree e sono
equivalenti allasserzione che certe intersezioni sono vuote o non vuote:
A:S
E:S
I: S
O:S

S ( M ) =
SM =
S M 6=
S ( M ) 6=

M
M
M
M

e cos` le proposizioni categoriche che coinvolgono altre coppie di predicati.


Dato un sillogismo, se le aree corrispondenti ad una sua premessa risultano vuote le tratteggiamo, se risultano non vuote mettiamo una crocetta !!!
allinterno.
Esempi
Consideriamo il sillogismo:
A: P
O: S
O: S
ovvero
166

M
M
P

x(P (x) M (x))


x(S(x) M (x))
x(S(x) P (x)).
La prima premessa ci fa tratteggiare P ( M ), che deve essere vuota.
La seconda premessa ci fa mettere una crocetta in S ( M ). Questarea
sarebbe composta di due parti, quella che interseca P e quella che non lo
interseca; ma la prima `e tratteggiata, in quanto S ( M ) P P ( M ),
gi`a considerata; quindi la crocetta si mette in S ( M ) ( P ).

'$
'$
P

'$
 


&%
&%
&%

Ora si interpreta quello che dice la figura, come conseguenza delle due premesse, confrontandolo con quello che afferma la conclusione. La conclusione
afferma che deve esserci una crocetta in S ( P ) e infatti la crocetta `e stata
disegnata in quellarea, come conseguenza delle due premesse; `e stata messa !!!
prima di guardare la conclusione.
Un altro sillogismo valido `e
E: P
I: S
O: S

M
M
P

ovvero
x(P (x) M (x))
x(S(x) M (x))
x(S(x) P (x)).
La prima premessa ci fa tratteggiare larea P M che deve essere vuota
167

perche P M . La seconda premessa ci fa mettere una crocetta nellarea


S M , ma di fatto nellarea S M ( P ) perche S M P = .

'$
'$

'$

&%
&%
&%

Come conseguenza si ha una crocetta in S ( P ), che `e quello che afferma


la conclusione: S ( P ) 6= .

Consideriamo ora un sillogismo non valido:


A: S
I: M
I: S

M
P
P

ovvero
x(S(x) M (x))
x(M (x) P (x))
x(S(x) P (x)).
La prima premessa fa tratteggiare S ( M ) che `e vuota essendo S M .
La seconda premessa ci fa mettere una crocetta in M P , ma questa `e divisa
in due sottoaree M P S e M P ( S), e non sappiamo dove mettere
la crocetta. La si mette sulla linea di divisione delle due sottoaree, proprio !!!
per indicare che non si sa in quale parte metterla.

168

'$
'$

S 
P









'$





 +

&%
&%
&%

Ma la conclusione dice che dovrebbe esserci una crocetta in S P e questa


indicazione precisa non `e conseguenza delle premesse; la crocetta `e sul bordo,
non `e comunque nellinterno dellarea S P , potrebbe essere in ( S) P .
Per certe esemplificazioni particolari dei predicati in gioco risulta in effetti
cos`, esiste un controesempio, anche se i diagrammi di Venn non lo esibiscono.
Esercizio. Si usino i diagrammi di Venn per verificare che il sillogismo
E:
I :
O:

S
P
S

M
M
P

non `e valido e trovare se possibile un controesempio in base a quanto suggerito


dal diagramma.
Per riuscire non solo a dimostrare la validit`a dei sillogismi, ma a trovare i
controesempi in modo meccanico, soccorre un metodo che estende gli alberi
di refutazione a enunciati predicativi.

169

11
11.1

Alberi di refutazione
Regole per i quantificatori

La tecnica degli alberi di refutazione si estende agli enunciati dei linguaggi


predicativi aggiungendo le seguenti regole per i quantificatori, una per e
una per , mentre quelle per e per si riducono alle prime due grazie
alle leggi di De Morgan generalizzate:
Se A `e xB, si introduce una nuova costante c e alla fine di ogni ramo
non chiuso passante per A si appende alla foglia il successore B(c)1 ,
come nello schema
[xB]
..
.

B(c)
Se A Se A `e xB, allora alla fine di ogni ramo non chiuso passante per
A, per tutti i termini chiusi t1 , . . . , tn che occorrono in qualche enunciato
del ramo, e tali che B(ti ) non occorre gi`a nel ramo, si appendono alla
foglia n + 1 nodi in serie, prima B(t1 ), . . . , B(tn ) e poi ancora xB, !!!
come nello schema
[xB]
..
.

B(t1 )

Sintende che se B non contiene la x libera B(c) `e B.

170

..
.

B(tn )

xB
Se A `e xB, alla fine di ogni ramo non chiuso passante per A si
appende alla foglia il successore xB(x), come nello schema
[xB]
..
.

xB(x)
Se A Se A `e xB, alla fine di ogni ramo non chiuso passante per A si
appende alla foglia xB, come nello schema
[xB]
..
.

xB
Se lalbero `e inizializzato con un enunciato, tutti i nodi dellalbero sono
etichettati con enunciati, di un linguaggio possibilmente arricchito con nuove
costanti. Il ruolo dei letterali `e ora svolto dagli enunciati atomici e dalle
negazioni degli enunciati atomici.
La prima regola corrisponde allesemplificazione esistenziale, la seconda
alla particolarizzazione.
171

Nellapplicazione della regola per xB la costante deve essere diversa da


quelle che occorrono gi`a in enunciati del ramo - nuova perche le informazioni !!!
disponibili non permettono di dire se lelemento che esemplifica B sia uno gi`a
noto o no - ma non necessariamente diversa da quelle che sono solo su altri
rami. Ogni ramo `e una strada indipendente dalle altre; tuttavia per evitare
confusioni `e bene ogni volta prendere una costante che sia diversa da tutte
quelle che occorrono in tutto lalbero.
Il senso della regola per `e il seguente; si vorrebbe sostituire a x tutti i
termini chiusi; ma questi sono in generale infiniti, e neppure ben determinati,
per il fatto che successive applicazioni delle altre regole ad altri nodi possono
introdurre nuove costanti sui rami considerati; allora sincominciano a sostituire i termini esplicitamente esistenti, ma si riscrive lenunciato xB in
modo che quando eventualmente (se il ramo non si `e nel frattempo chiuso) si
torna a considerare lenunciato, se nel frattempo si sono creati nuovi termini
chiusi anche i nuovi vengano sostituiti (si veda lesempio qui sotto).
Se in una prima applicazione della e regola per non esistono termini
chiusi negli enunciati dellalbero, si introduce una nuova costante c e si sostituisce quella (ma si tratta di uneccezione, da non confondere con la regola !!!
per ; `e come se ci fosse sempre una costante iniziale, ad esempio in c = c
congiunta alla radice; oppure `e come pensare che luniverso non `e mai vuoto,
e c `e un suo elemento).
In pratica, non c`e bisogno di riscrivere xB, basta non marcarlo come
gi`a considerato e ricordarsi di tornare periodicamente a visitarlo. E quando
tutti gli altri enunciati siano stati considerati e non ci siano altri termini da
sostituire, lo si marca definitivamente per terminare.
La regola per fa scattare in un secondo momento la regola per
(e analogamente per la regola relativa a ). Dato xA, si pu`o allora
applicare direttamente la particolarizzazione a A, vale a dire, aggiungere
A(t1 ), . . . , A(tn ) e riscrivere A.
Esempi
Lalbero:
(x(P (x) Q(x)) (xP (x) xQ(x)))1

x(P (x) Q(x))5


172


(xP (x) xQ(x))2

xP (x)4

xQ(x)3

Q(c)

P (c)

P (c) Q(c)
.
&
P (c)
Q(c)
chiuso

chiuso

`e chiuso.
Lalbero:
xP (x) x(P (x) yQ(y)) yQ(y)1

xP (x)2

x(P (x) yQ(y))3,7

yQ(y)4,8

P (c)

P (c) yQ(y)5

Q(c)
.&
P (c)
yQ(y)6
chiuso

Q(d)

173

P (d) yQ(y)

Q(d)
chiuso

`e chiuso. Sono state eseguite due applicazioni della regola per e a


x(P (x) yQ(y)) e a yQ(y); la seconda scatta dopo che yQ(y) ha
prodotto Q(d), introducendo la nuova d.
` quasi superfluo dire che, come si `e fatto nei due esempi, conviene ap- !!!
E
plicare prima le regole per e e dopo le regole per e .
Applicheremo il metodo degli alberi di refutazione solo a enunciati che non
contengono simboli funzionali, sicche i termini chiusi potenziali si riducono !!!
alle costanti.
Anche con questa restrizione tuttavia non vale pi`
u la propriet`a di terminazione, come mostra lalbero per lenunciato xyR(x, y)
xyR(x, y)

yR(c, y)

R(c, c1 )

yR(c1 , y)

R(c1 , c2 )

yR(c2 , y)

..
.
Valgono per`o le propriet`a fondamentali di correttezza e completezza.
Teorema 11.1.1 (Correttezza) Se lalbero di refutazione con radice A si
chiude, allora A `e insoddisfacibile. 2
I precendenti esempi di alberi chiusi verificano il primo che x(P (x)
Q(x)) |= xP (x) xQ(x) e il secondo che xP (x)x(P (x) yQ(y)) |=
yQ(y).
174

Teorema 11.1.2 (Completezza) Se A `e insoddisfacibile, lalbero con radice


A si chiude.
La dimostrazione come nel caso proposizionale segue dal
Lemma 11.1.1 Se lalbero di refutazione con radice A non si chiude, allora
per ogni ramo non chiuso, finito e terminato, o infinito, esiste un modello di
A. 2
Considereremo solo alcuni esempi per mostrare come si definiscono le interpretazioni per i rami non chiusi, per enunciati che non contengono simboli
funzionali.
Esempio
Lalbero
P (c) (xP (x) xQ(x)

P (c)

xP (x) xQ(x)
.
&
xP (x)
xQ(x)

P (c)
Q(d)
chiuso

mostra che lenunciato P (c) (xP (x) xQ(x)) `e soddisfacibile con


un modello, dato dal ramo di destra, perche quello di sinistra `e chiuso.
Linterpretazione `e definita nel seguente modo: luniverso `e linsieme delle
costanti che occorrono in enunciati del ramo, in questo caso U = {c, d}; !!!
quindi i predicati sono definiti in base a quali enunciati atomici occorrono
sul ramo, in questo caso P = {c}, che deve rendere vero P (c), e Q = {d},
che rende vero Q(d).
Le propriet`a di correttezza e completezza assicurano che quando lalbero
termina, la risposta `e quella giusta; inoltre, poiche se un albero si chiude
esso si chiude dopo un numero finito di passi, in tutti i casi in cui la radice `e
insoddisfacibile lalbero lo rivela chiudendosi; quando la radice `e soddisfacibile, pu`o darsi che lalbero termini, e lo riveli, come pu`o darsi che continui
175

allinfinito, e non `e detto che ci sia mai uno stadio in cui ci accorgiamo che
lalbero andr`a avanti a crescere allinfinito (altrimenti `e come se sapessimo
che non si chiude).
Un metodo con queste caratteristiche si dice metodo di semidecidibilit`a
e linsieme degli enunciati insoddisfacibili `e semidecidibile.
11.1.1

Esercizi

1. Verificare con gli alberi di refutazione tutte le leggi logiche finora incontrate.
2. Verificare con gli alberi di refutazione che xP (x)xQ(x) x(P (x)
Q(x)) e x(P (x) Q(x)) x(P (x) xQ(x)) non sono logicamente
veri.
3. Trovare con gli alberi di refutazione un controesempio a xP (x)
xQ(x) |= x(P (x) Q(x)).

11.2

Applicazione ai sillogismi

Gli enunciati che contengono solo predicati monadici e non contengono simboli funzionali formano un linguaggio monadico.
Rientrano in questa categoria le proposizioni categoriche che intervengono
nei sillogismi, ma anche molti altri enunciati pi`
u complicati.
Si pu`o dimostrare che lalbero con un enunciato monadico nella radice
termina sempre in un numero finito di passi.
Gli alberi di refutazione costituiscono perci`o un metodo effettivo per de- !!!
cidere se un enunciato monadico `e logicamente vero o no. Quindi la logica dei
linguaggi monadici `e decidibile, come quella proposizionale. In particolare
gli alberi permettono di decidere se un sillogismo `e valido o no.
Che un albero con un enunciato monadico nella radice termini sempre lo si
pu`o vedere nel seguente modo. Innanzi tutto bisogna preparare lenunciato,
se non `e ancora nella forma voluta, in modo che non presenti quantificatori incapsulati, o nidificati, cio`e nessun quantificatore cada dentro al raggio
dazione di un altro. Questa trasformazione `e possibile applicando le leggi
logiche sui quantificatori.
Ad esempio
xy(P (x) zQ(z) Q(y))
176

diventa
x(P (x) zQ(z) yQ(y))
quindi
x(P (x) zQ(z)) yQ(y)
e
xP (x) zQ(z) yQ(y).
Un esempio pi`
u difficile2 `e il seguente
xy(P (x) zQ(z) P (x) Q(y))
che diventa
x(P (x) zQ(z) y(P (x) Q(y)))
x(P (x) zQ(z) P (x) yQ(y))
x((P (x) zQ(z)) P (x) yQ(y))
x((P (x) zQ(z)) P (x) yQ(y))
x(((P (x) P (x)) (zQ(z) P (x))) yQ(y))
x((zQ(z) P (x)) yQ(y))
(x(zQ(z) P (x))) yQ(y)
(zQ(z) xP (x)) yQ(y)
zQ(z) xP (x) yQ(y).
Eseguita la trasformazione si adotta la seguente euristica di sviluppo !!!
dellalbero. Se alcuni enunciati inseriti nellalbero hanno un connettivo come
segno logico principale, si applicano ad essi e ai loro eventuali risultati le
regole proposizionali relative, finche si perviene alla situazione in cui tutti gli
enunciati non ancora considerati, se non sono atomici o negazioni di atomici,
iniziano con un quantificatore o con la negazione di un quantificatore.
2

Non vogliamo nascondere che il risultato non `e banale; per la dimostrazione occorre
sfruttare, come sintravvede dallesempio, le forme normali disgiuntive e congiuntive della
matrice, dopo aver messo lenunciato in forma prenessa.

177

A questo punto si lavora prima sugli enunciati che iniziano con un o un


, il cui effetto `e quello di introdurre nuove costanti - e sono i soli che introducono nuove costanti. Essi danno origine a enunciati privi di quantificatori,
per lassenza di quantificatori incapsulati.
Ora si applicano le regole agli enunciati che iniziano con o , eseguendo
tutte le sostituzioni possibili delle costanti, che danno di nuovo origine a
enunciati privi di quantificatori. Tali enunciati non devono essere riscritti,
perche il seguito del lavoro non costringer`a pi`
u a tornare su di essi; non si
generano pi`
u altri enunciati che iniziano con o . Ai nuovi enunciati
privi di quantificatori si applicano eventualmente le regole proposizionali del
caso, ma lapplicazione di regole proposizionali dopo un numero finito di passi
termina.
Esempi
Il sillogismo
x(S(x) M (x))
x(M (x) P (x))
x(S(x) P (x))
equivalente allaffermazione che
x(S(x) M (x)) x(M (x) P (x)) |= x(S(x) P (x))
`e controllato per mezzo del seguente albero:
x(S(x) M (x))3

x(M (x) P (x))1

x(S(x) P (x))4

M (c) P (c)2

M (c)

P (c)

178

S(c) M (c)5

(S(c) P (c))6
.&
S(c)
M (c)
.&
.&
S(c) P (c) S(c) P (c)
chiuso

chiuso

Due rami sono chiusi; gli altri due danno le stesse informazioni, in quanto
contengono entrambi M (c), P (c), S(c). Il controesempio fornito da questo
albero `e U = {c} con M = {c}, P = {c} e S = .
Questa non `e linterpretazione proposta a suo tempo come controesempio,
che era stata U = {a, b, c}, S = {a}, M = {a, c}, P = {b, c}, ma quesultima
si ottiene dalla presente aggiungendo a e b alluniverso; linterpretazione fornita dallalbero `e minimale, e lo `e sempre3 .
` raro che si trovi un solo modello di un enunciato, in realt`a non ce ne `e
E
mai uno solo, ma la dimostrazione di questo fatto `e complicata4 .

Il sillogismo:
x(M (x) S(x))
x(M (x) P (x))
x(S(x) P (x))
`e valido.
Lalbero:
x(M (x) S(x))2

Si potrebbe dire che `e minima, a meno di biiezioni che rispettano i predicati in gioco,
e si chiamano isomorfismi.
4
Viene in mente x(c = x), che sembrerebbe avere solo un tipo di modello, con un solo
elemento, ma non `e cos` perche linterpretazione di =, le cui propriet`a necessarie ma anche
sufficienti, se si esplicitano, sono le propriet`a riflessiva, simmetrica e transitiva, oltre alla
sostitutivit`
a, potrebbe essere solo una relazione di equivalenza.

179

x(M (x) P (x))1

x(S(x) P (x))3

M (c) P (c)

M (c)

P (c)

M (c) S(c)4

(S(c) P (c))5
.&
M (c)
S(c)
chiuso
.&
S(c) P (c)
chiuso

chiuso

`e chiuso.
11.2.1

Esercizi

Verificare con gli alberi di refutazione la validit`a o meno dei 256 sillogismi.

180

12

Il principio di induzione

Come si fa a dimostrare che un enunciato universale1 xA(x) vale in un


universo infinito? Non si possono certo passare in rassegna tutti gli elementi
delluniverso. Alcune regole logiche sembrano utilizzabili, in particolare la
riduzione allassurdo o quelle che permettono di derivare enunciati universali
da altri, gi`a per`o noti, come la distributivit`a di su :
x(B(x) A(x))
xA(x).

xB(x)

Con le sole regole logiche si dimostrano solo enunciati veri in tutte le interpretazioni, non in una particolare.
Un insieme infinito peraltro non pu`o essere dato se non attraverso una
definizione, che ne mette in evidenza alcune propriet`a caratteristiche. Queste
sono assunte in genere come assiomi della struttura, e a partire da essi si
deducono altre propriet`a vere nella struttura stessa (e in tutte le eventuali
altre che soddisfano gli assiomi).
!!!
Le strutture numeriche classiche, che sono insiemi infiniti, hanno poi ciascuna qualche caratteristica particolare che permette di svolgere ragionamenti
tipici ed esclusivi2 , ad esempio la continuit`a per i numeri reali. La pi`
u semplice struttura numerica `e quella dei numeri naturali N.

12.1

I numeri naturali

I numeri naturali3
0, 1, 2, . . . , n, n0 , . . .
sono descrivibili in modo compatto e uniforme come se fossero tutti generati
da un primo che `e lo 0. Non `e raccomandabile usare allinizio le cifre 0, 1, . . . , 9
perche esse presuppongono la rappresentazione in una base, che `e argomento
di l`a da venire. Meglio scrivere:
1

Diciamo brevemente cos` per un enunciato che inizia con un quantificatore universale,
anche se non `e corretto; gli enunciati universali sono quelli che in forma prenessa hanno
solo quantificatori universali nel prefisso.
2
E questo vale anche per strutture finite, per cui sono pure disponibili tecniche particolari. Si veda ad esempio 12.7.
3
Consideriamo anche 0 tra i numeri naturali, benche non sia molto naturale rispetto
alla prima funzione dei numeri, quella di contare; talvolta i numeri naturali senza lo 0 sono
anche detti numeri di conto.

181

0, 00 , 000 , . . . , n, n0 , . . .
che rappresenta visivamente il fatto che ogni numero4 n, salvo lo 0, ha un successore indicato con n0 , e iterando il successore non si ottiene mai un numero
gi`a considerato, perche i successori di due numeri diversi sono diversi5 .
Queste propriet`a sono esprimibili con enunciati predicativi:
x(0 6= x0 )
xy(x 6= y x0 6= y 0 )
che costituiscono i primi assiomi dei numeri naturali6 .
Si `e abituati a dire che ogni numero si ottiene dal precedente con + 1,
ma loperazione di addizione compare, `e definita, solo nella pi`
u ricca struttura
che si ottiene sulla base della definizione fondamentale.
Quando si parte da zero7 per introdurre N, si vuol dire innanzi tutto che
N `e un insieme infinito; la definizione `e la seguente: un insieme X `e infinito
se esiste una iniezione di X su un sottoinsieme proprio di se stesso.
I tre assiomi sopra presentati esprimono questo fatto, con la funzione
iniettiva (terzo assioma) successore che manda tutto linsieme N (primo
assioma) nel suo sottoinsieme proprio N \ {0} (secondo assioma)8 .
Ora per`o N non `e solo un insieme infinito: ogni suo elemento si ottiene
da 0 iterando un numero finito di volte loperazione di successore. Non ci
sono altri elementi al di fuori di questa catena senza fine. La condizione non
sembra facile da esprimere, perche per parlare di iterare un numero finito
di volte il successore parrebbe necessario avere gi`a la nozione di numero
naturale.
4

Il fatto che n nella successione venga dopo i puntini, non significa che `e un numero
grande; n `e una variabile che indica un numero qualunque, e pu`o assumere anche i valori
0, 1,. . .
5
E lo 0 non ha nulla di magico ma `e solo il primo. Meglio ancora indicare la serie con
|, ||, |||, . . .
con la cosidetta rappresentazione unaria, usata ad esempio nelle macchine di Turing.
6
Vale anche xy(y = x0 ), che non scriviamo perche nei linguaggi predicativi si intende
che le funzioni sono totali, e quelle non ovunque definite si trattano con speciali artifici.
7
In tutti i sensi.
8
Dopo si vede che `e sopra: x(x 6= 0 y(x = y 0 )).

182

Tuttavia soccorre questa idea, derivata dalla precedente intuizione, che


se una propriet`a, espressa da una formula A(x), `e tale che si trasporta nel
passaggio da n a n0 , o che `e invariante rispetto al successore, cio`e `e tale
che se vale per un generico n allora vale per n0 , in simboli A(n) A(n0 ),
allora come ogni numero si ottiene da 0 passando attraverso una catena di
successori, cos` se A vale per 0 allora A vale per tutti i numeri.
Unimmagine comoda per rappresentarsi la situazione `e quella di una
successione di pezzi di domino messi in piedi in equilibrio precario, distanti
tra loro meno della loro altezza. Cos` se un pezzo cade verso destra fa cadere
verso destra quello adiacente. Se cade il primo, fa cadere il secondo, che fa
cadere il terzo, e tutti cadono.
-






In alternativa, si pu`o esprimere in termini insiemistici lidea che N deve


essere il pi`
u piccolo insieme infinito con laffermazione
0 X x(x X x0 X) N X,
che N `e il pi`
u piccolo insieme che contiene 0 ed `e chiuso rispetto al successore9 .
Da questa condizione, pensando a X come allinsieme di verit`a di una
formula A(x), o dalle precedenti considerazioni intuitive, si ricava lassioma
di induzione
A(0) x(A(x) A(x0 )) xA(x),
dove A `e una formula qualsiasi del linguaggio aritmetico, che allinizio contiene solo 0 e 0 , oltre a =.
Non sviluppiamo la costruzione sistematica dellaritmetica a partire da
questi assiomi, che tuttavia sono sufficienti, perche tale trattazione non fa
9

N `e contenuto in ogni insieme che sia infinito grazie alla stessa iniezione successore
e con lo stesso elemento non appartenente allimmagine delliniezione

183

parte del programma. Nel seguito ci limiteremo a familiarizzarci con le conseguenze dellassioma di induzione in una variet`a di esempi, e per far questo
daremo per note alcune propriet`a aritmetiche, algebriche e geometriche elementari.
In particolare useremo subito il fatto che dalla definizione delladdizione
(che daremo in seguito) segue che n0 = n + 1 e adotteremo questa notazione
per il successore.
Supporremo anche definita10 la relazione dordine totale con minimo 0.

12.2

Il principio di induzione

Dallassioma di induzione segue una regola dimostrativa che si chiama propriamente principio di induzione e che si pu`o schematizzare nel seguente
modo:
A(0)
x(A(x) A(x + 1))
xA(x).

Base
P asso induttivo

Per dimostrare xA(x) sono sufficienti due mosse: la prima consiste nel dimostrare A(0), e la seconda nel dimostrare x(A(x) A(x + 1)).
Si dice allora che xA(x) `e stata dimostrata per induzione su x, e A(x)
si chiama la formula dinduzione.
La base non si riferisce necessariamente solo a 0. Se a cadere verso destra
non `e il primo domino, ma il sesto

@
@
R
@






a cadere saranno tutti i domino dal sesto in poi.


10

Per mezzo delladdizione la definizione sar`a: x y z(x + z = y). Per ora la


possiamo pensare postulata come relazione dordine, per poter fare esercizi con formule
familiari e per scrivere alcune formule in modo pi`
u comodo.

184

In corrispondenza a questa idea si ha una formulazione pi`


u generale del
principio di induzione:
A(k)
x k (A(x) A(x + 1))
x kA(x).

Base
P asso induttivo

Se si deve dimostrare ad esempio x > 0 A(x) si dimostra come base A(1).


La dimostrazione del passo induttivo `e la parte pi`
u importante e delicata;
la base di solito si riduce a calcoli di verifica. Trattandosi di un enunciato
universale, la dimostrazione di solito si imposta come dimostrazione di
A(x) A(x + 1)
per un x generico.
Si assume quindi A(x), chiamandola ipotesi induttiva e si cerca di dedurre
A(x + 1):
A(x)
..
.

Ipotesi induttiva

A(x + 1).
Come abbiamo osservato in precedenza, se si riesce a dedurre A(x + 1)
dallassunzione A(x) si stabilisce A(x) A(x + 1) senza alcuna assunzione
particolare, a parte gli assiomi che sono enunciati, e quindi si pu`o quantificare
universalmente x(A(x) A(x + 1)).
Una volta dimostrato il passo induttivo - e la base - la conclusione xA(x)
segue come bonus.
Errori umoristici non infrequenti:
da A(x), per sostituzione, A(x + 1)
oppure
da A(x), direttamente per generalizzazione xA(x).
Qualcuno giustifica questi errori alludendo a difficolt`a immaginarie dovute
a una pericolosa somiglianza tra quello che si deve dimostrare e quello che
si assume. Ma nella dimostrazione del passo induttivo la tesi xA(x) non
interviene per nulla. Quello che si assume nel passo induttivo, A(x), `e che A
valga per un elemento, ancorche non precisato; quello che si vuole dimostrare
185

!!!

in grande `e xA(x), cio`e che A vale per tutti gli elementi; in piccolo, nel passo
induttivo, si vuole solo dimostrare che A vale per un altro elemento, una bella
differenza, anche sintatticamente visibile, se si usassero i quantificatori.
Se ci sono difficolt`a, sono le difficolt`a tipiche della manipolazione di variabili e quantificatori.
Esempio Dimostrare per induzione11 che
1 + 2 + ... + n =

n(n+1)
.
2

Sintende, poiche lespressione di sinistra ha senso solo per n 1, che si deve


), ma useremo la variabile n come
dimostrare x 1 (1 + 2 + ... + x = x(x+1)
2
duso12 .
Altrimenti, si considera la formula con 0 + 1 + . . . + n a sinistra e allora
la base `e 0.
Chiamiamo P (n) la formula di induzione13 .
La dimostrazione per induzione della formula si svolge nel seguente modo:
, e lespressione di destra si riduce a 1,
Base: per n = 1, P (1) `e 1 = 1(1+1)
2
quindi P (1) `e dimostrata;
Passo induttivo: ammesso
1 + 2 + ... + n =

n(n+1)
,
2

cio`e P (n), aggiungendo n + 1 ad ambo i membri si ha


1 + 2 + ... + n + (n + 1) =

n(n+1)
2

+ (n + 1)

n(n+1)+2(n+1)
2

(n+1)(n+2)
2

che `e P (n + 1). 2
11

Uno dei primi algoritmi che si chiede di scrivere (Horstmann, p. 45) e quello per la
somma 1 + 2 + . . . + n.
12
Luso di n come variabile libera universale per i numeri naturali `e tipica della scrittura
matematica; se si usano i quantificatori introducendo la notazione logica `e meglio tornare
alla x. Il passo induttivo pu`
o comunque essere sempre presentato come dimostrazione di
A(n) A(n + 1).
13
Usiamo P perche `e una formula atomica.

186

Sono possibili diversi sviluppi del passo induttivo, in avanti o allindietro;


in avanti si procede come nellesempio, si scrive lipotesi induttiva P (n) e poi
la si manipola cercando di arrivare a P (n + 1).
Nel procedimento allindietro si pu`o affrontare direttamente quello che si
deve dimostrare, P (n + 1), impostando lespressione
1 + 2 + ... + n + (n + 1) = ?,
di cui si vuole trovare il valore che confermi P (n + 1).
Un primo passo `e quello di riempire lignoto ? con qualcosa di noto, ad
esempio
1 + 2 + ... + n + (n + 1) = (1 + 2 + ... + n) + (n + 1),
valida per la propriet`a associativa, quindi si osserva che `e comparsa una
sottoespressione presente nellipotesi induttiva
1 + 2 + ... + n + (n + 1) = (1 + 2 + ... + n) + (n + 1),
e allora per ipotesi induttiva, cio`e facendo giocare a questo punto un ruolo
a P (n),
1 + 2 + ... + n + (n + 1) =

n(n+1)
2

+ (n + 1),

e sviluppando i calcoli a destra del segno = si arriva a


(n+1)(n+2)
.
2

1 + 2 + ... + n + (n + 1) =

La formula P (n + 1) `e stata cos` dimostrata ma assumendo a un certo punto


P (n), quindi si `e stabilito P (n) P (n + 1). 2
Da sconsigliare ai principianti il procedimento allindietro che consiste nel par- !!!
tire da
1 + 2 + . . . + n + (n + 1) =

(n+1)(n+2)
,
2

riscrivere questa somma come


(1 + 2 + . . . + n) + (n + 1) =

(n+1)(n+2)
,
2

facendo emergere lespressione 1 + 2 + . . . + n, quindi per ipotesi induttiva


n(n+1)
2

+ (n + 1) =

187

(n+1)(n+2)
.
2

Verificato che questultima uguaglianza `e valida, perche diventa


(n+1)(n+2)
2

(n+1)(n+2)
,
2

P (n + 1) `e dimostrato. 2
Avvertenza P (n + 1) `e dimostrato dai passaggi di sopra non perche da essa !!!
segua unidentit`a; lo studente di logica sa che dal fatto che A B sia vero e B
sia vero non segue la verit`a di A.
I passaggi di sopra vanno letti allindietro partendo dallultima uguaglianza, e
tutte le uguaglianze scritte sono tra loro equivalenti (se si assume P (n)). P (n+1) `e
+(n+1) = (n+1)(n+2)
, che `e unidentit`a aritmetica.
conseguenza di P (n) e di n(n+1)
2
2
In questa impostazione, ci sono due movimenti logici allindietro: innanzi
tutto si parte dalla tesi da dimostrare P (n + 1), quindi si sviluppa una serie di
uguaglianze, che tuttavia, essendo collegate da equivalenza, vanno lette nellordine
inverso, dallultima identit`a fino a P (n + 1).

Nella dimostrazione del passo induttivo possono intervenire tutte le strategie dimostrative. Illustriamo un problema in cui interviene la distinzione dei
casi.
Esempio Dimostrare che
1 12 + 13 + . . . + (1)n1 n1
`e sempre strettamente positivo.
Sintende che si deve dimostrare che per ogni n 1
1 12 + 31 + . . . + (1)n1 n1 > 0.
Dimostrazione
Base: Per n = 1 la somma `e 1 e 1 > 0.
Passo induttivo: Consideriamo
1
1 21 + 31 + . . . + (1)n n+1

e distinguiamo due casi.


Se n + 1 `e dispari, allora la somma fino a n + 1, riscritta come
(1 12 + 13 + . . . n1 ) +
188

1
n+1

1
, una quantit`a positiva.
si ottiene da quella fino a n sommando n+1
1
1
Siccome per ipotesi induttiva anche (1 2 + 3 + . . . n1 ) > 0, si ha la
conclusione voluta.

Se n + 1 `e pari, la somma
1 12 + 13 + . . . +

1
n

1
n+1

si pu`o riscrivere
(1 21 ) + ( 13 14 ) + . . . + ( n1

1
)
n+1

per la propriet`a associativa, e quindi osservare che `e la somma di quantit`a tutte positive. 2
Si noti che lipotesi induttiva interviene solo in uno dei due casi in cui `e
distinta la dimostrazione del passo induttivo, ma comunque interviene.
Se si fosse voluto dimostrare che
1 12 + 13 + . . . + (1)i1 1i + . . .

1
2n

>0

non ci sarebbe stato bisogno dellinduzione e si sarebbe potuto procedere


come nel precedente caso pari con la sola propriet`a associativa.
In verit`a anche questa propriet`a dipende dallinduzione, perche in una
trattazione sistematica lassociativit`a della somma, come anche il fatto che
la somma di un numero finito di addendi positivi `e positiva, si dimostrano a
loro volta per induzione, e lo vedremo pi`
u avanti quando discuteremo della
somma generalizzata.
Tutti i risultati aritmetici dipendono dallinduzione, perch`e questo `e il solo
assioma dellaritmetica, a parte quelli riguardanti 0 e successore. Tuttavia
c`e un uso prossimo e uno remoto dellinduzione; se si conoscono dei risultati
(comunque a loro volta siano stati dimostrati) e li si usa in modo diretto
in una dimostrazione, questa per parte sua non `e una dimostrazione per
induzione.
Esistono casi in cui invece si ha una scelta tra due metodi dimostrativi,
uno per induzione e uno no. Ad esempio si pu`o dimostrare per induzione che
n3 n `e multiplo di 3: partendo da (n + 1)3 (n + 1)
(n + 1)3 (n + 1) = n3 + 3n2 + 3n + 1 n 1 = (n3 n) + 3n2 + 3n
189

che `e divisibile per 3 in quanto somma di addendi tutti divisibili per 3 (il
primo per ipotesi induttiva). 2
Ma si pu`o anche fattorizzare n3 n in (n 1)n(n + 1) e osservare che uno
dei tre consecutivi deve essere divisibile per 3. 2
Di solito quando sono disponibili due vie, una per induzione e una che
potremmo chiamare algebrica, la seconda d`a maggiori informazioni, in quanto
lega il problema dato con altri.
Nellultimo esempio abbiamo commesso un errore nellesposizione della
dimostrazione per induzione, un errore che lo studente non deve commettere, !!!
quello di aver trascurato di dimostrare la base.
La leggerezza in questo caso `e innocua, perche subito rimediabile: per
n = 0 n3 n vale 0 che `e divisibile per 3. Ma in altri casi pu`o essere fatale.
Si consideri ad esempio la seguente dimostrazione sul valore della somma
dei primi n pari:
2 + 4 + + 2n = n(n + 1) + 5.
Se indichiamo la somma con Sn = 2 + 4 + + 2n, `e facile verificare che
Sn = n(n + 1) + 5 Sn+1 = (n + 1)(n + 2) + 5
ma la formula `e falsa. Lo si vede subito per n = 0 ed n = 1. Si potrebbe
pensare che valga solo da un certo punto in poi, e si pu`o provare con altri
valori, ma sempre con esito negativo.
Viene il dubbio che sia sempre falsa, e cos` `e, ma questa affermazione
richiede a sua volta una dimostrazione (trattandosi di unaffermazione universale infinita: sempre, per ogni n, Sn 6= . . .)14 .
Una facile dimostrazione si trova se viene in mente di osservare che n(n +
1) + 5 `e sempre dispari, come somma di un pari e di un dispari, mentre
la somma di pari `e pari (ma le stesse considerazioni si potrebbero fare con
n(n + 1) + k, k > 0 qualunque).

12.3

Linduzione empirica

Come non si deve trascurare la base, cos` non si deve trascurare il passo induttivo. Se non si dimostra il passo induttivo, non c`e traccia di dimostrazione
14

E quindi si pu`
o dimostrare per induzione (esercizio).

190

per unasserzione del tipo xA(x). Al massimo si possono verificare alcuni


casi particolari iniziali, per numeri piccoli. Questa verifica `e talvolta detta
induzione empirica.
Con induzione empirica si intende il passaggio da un numero finito, limitato,
di osservazioni, alla formulazione di una legge generale; dal fatto che tutti i cigni
osservati sono bianchi alla affermazione che tutti i cigni sono bianchi. Lesempio,
classico nei testi di filosofia della scienza, `e stupido, ma `e difficile trovarne di scientifici, nonostante si pensi che linduzione caratterizzi le scienze empiriche, perche
forme di induzione di questo genere sono in verit`a del tutto estranee alla ricerca scientifica. La parola `e usata comunque in contrasto con deduzione, a indicare un
passaggio dal particolare alluniversale (come se la deduzione fosse, cosa che non `e,
se non raramente, un passaggio dalluniversale al particolare15 ). Linduzione empirica `e anche detta induzione per enumerazione, dizione che suggeriamo di evitare
perche non faccia venire in mente i numeri.
Quando allinizio dellet`a moderna si ebbe una ripresa della ricerca matematica,
la parola induzione era usata nella scienza per indicare la formulazione di leggi
generali suggerite e verificate da un certo numero di casi particolari. Anche i
matematici, figli del loro tempo, usavano la parola in questo modo e per essere
scienziati pretendevano di usare anchessi linduzione. Lo si riscontra soprattutto
in quegli autori, come Eulero, che basavano le loro congetture su molti calcoli ed
esplorazioni delle propriet`a dei numeri. Il primo autore che formul`o e propose
il principio dinduzione matematica nella forma moderna fu Pascal, ed egli volle
chiamare cos` questo principio, che implicitamente era stato usato gi`a da Euclide
e da Fermat in altra versione16 , considerandolo la vera forma dinduzione adatta
a, o tipica della matematica . In verit`a non v`e alcun rapporto; `e vero che con
linduzione matematica si arriva a una conclusione valida per linfinit`a dei numeri
con due soli passaggi, ma si tratta di due dimostrazioni, non di due osservazioni.

Lesplorazione di un piccolo numero di casi non `e mai sufficiente a dimostrare xA(x); al massimo pu`o servire a trovare un controesempio, se si
`e fortunati. Linduzione empirica addirittura pu`o essere ingannevole quando
sono tanti i casi confermati; tanti `e sempre relativo; ad esempio il polinomio
f (n) = n2 + n + 41
`e tale che f (n) `e un numero primo per n = 0, 1, 2, . . . , 39 (verificare qualche
15
16

Lo `e solo nelle applicazioni della particolarizzazione universale.


Il principio della discesa finita, discusso pi`
u avanti.

191

caso). La congettura che si potrebbe indurre che f (n) sia sempre primo `e
tuttavia smentita dal controesempio
f (40) = 402 + 40 + 41 = 402 + 80 + 1 = (40 + 1)2 = 412 .
Di fronte alla congettura che f (n) sia sempre primo, naturalmente viene
naturale lidea di controllare gli eventuali zeri e scomporre il polinomio (se
si sa che gli zeri permettono una scomposizione). Il tentativo di dimostrare
il passo induttivo invece fallisce per mancanza di idee.
Lesplorazione empirica `e utile tuttavia e raccomandabile quando non !!!
viene proposta una formula da dimostrare, ma la si deve trovare, quando
cio`e bisogna formulare una congettura - e poi dimostrarla.
Ad esempio se si vuole trovare una formula per
1
2

1
23

1
34

+ ... +

1
,
n(n+1)

se si calcolano i primi valori dellespressione


n=1

1
2

1
2

n=2

1
2

1
23

2
3

n=3

1
2

1
23

1
34

3
4

n
si pu`o arrivare alla congettura che la risposta in generale sia n+1
, quindi
provare a dimostrarla (esercizio, e come ulteriore esercizio trovare e dimostrare
la formula in modo algebrico senza induzione).

Quando come in questo caso si esegue uninduzione empirica, conviene


fare attenzione che i calcoli possono dire di pi`
u che suggerire solo la congettura, possono anche suggerire la traccia della dimostrazione del passo
induttivo.
Consideriamo ad esempio come si possa valutare e dimostrare lespressione
per la somma dei primi dispari
1 + 3 + ... + (2n + 1)

192

I primi calcoli mostrano come risultato dei quadrati,


n=0
n=1
n=2
n=3

1=1
1+3=4
1+3+5=9
1 + 3 + 5 + 7 = 16

ed `e semplice forse il riconoscimento puro e semplice della legge, ma si pu`o


fare di meglio: se si riporta nella riga sottostante il valore ottenuto, per la
somma dei primi termini, e se si indica sempre lultimo addendo con 2i + 1,
come suggerisce lespressione iniziale, si ottiene:
1 + (2 1 + 1) = 4
22 + (2 2 + 1) = 9
32 + (2 3 + 1) = (3 + 1)2 .

n=2
n=3
n=4

Allinizio si possono avere dubbi: 4 = 22 pu`o essere 4 = 2 2, anzi lo `e,


ovviamente; il problema `e quale scrittura sia pi`
u suggestiva della direzione
giusta da prendere; qui diventa presto trasparente la formula del quadrato
(n + 1)2 = n2 + 2n + 1.
Un ulteriore passo di conferma d`a
42 + (2 4 + 1) = (4 + 1)5

n=5

e quello che si intravvede `e lo schema del passo induttivo:


1 + 3 + + (2n 1) + (2n + 1) =
n2 + (2n + 1) = (n + 1)2 .
Luso dellipotesi induttiva 1 + 3 + . . . + (2n 1) = n2 per sostituire
1 + 3 + . . . + (2n 1) con n2 in 1 + 3 + . . . + (2n 1) + (2n + 1) corrisponde
nei calcoli precedenti ai successivi rimpiazzamenti di 1 + 3 con 4 = 22 , di
1 + 3 + 5 con 9 = 32 , di 1 + 3 + 5 + 7 con 16 = 42 .
La dimostrazione per induzione non `e diversa dai calcoli che hanno fatto
intravvedere la risposta; sono gli stessi calcoli che si ripetono (non i risultati
parziali, o non solo quelli), e che passando alle variabili si trasformano nel
passo induttivo.
Per riuscire a vedere lo schema bisogna che si facciano s` i calcoli con i
numeri piccoli, ma non guardando solo al risultato, bens` allo spiegamento
delle operazioni aritmetiche implicate; si ottiene il tal modo il collegamento
193

o il passaggio dallaritmetica allalgebra; lalgebra, rispetto allaritmetica,


non `e altro che questa attenzione non al risultato numerico - che non pu`o
esserci, in presenza delle variabili - ma alla struttura e allorganizzazione
delle operazioni da eseguire, e il loro trasporto alle variabili. Limportante `e
lasciare indicate sempre le espressioni dei calcoli eseguiti.

12.4

Il ragionamento induttivo

Linduzione non `e solo una tecnica di dimostrazione, ma una tecnica di ragionamento, che porta a trovare il risultato. Bisogna imparare a ragionare !!!
per induzione.
Il ragionamento induttivo `e il ragionamento che costruisce una situazione
dinamica: simmagina un insieme di n elementi e ci si chiede: cosa succede
se se ne aggiunge un altro?
Consideriamo lesempio del numero di sottoinsiemi di un insieme; se U
ha 0 elementi, U = , lunico sottoinsieme di U `e U , che quindi ha un
sottoinsieme; se U = {a} ha un elemento, i suoi sottoinsiemi sono e {a} =
U ; se U = {a, b} ha due elementi, i suoi sottoinsiemi sono , {a}, {b}, {a, b}.
I conti empirici sono abbastanza complicati, da 2 in avanti; per essere
sicuri di avere elencato tutti i sottoinsiemi, occorre in pratica fare il ragionamento che presentiamo sotto, e che consiste nel considerare il passaggio da
un insieme con n elementi ad uno con n + 1; il ragionamento si pu`o e si deve
fare prima di avere la risposta; questa pu`o essere lasciata indicata, come
incognita funzionale, con la scrittura f (n) per il numero di sottoinsiemi di
un insieme con n elementi.
Il ragionamento necessario `e il seguente: supponiamo che un insieme con n
elementi abbia f (n) sottoinsiemi; se a un insieme U di n elementi si aggiunge
un a 6 U , tra i sottoinsiemi di U {a} ci sono quelli che non contengono a,
che sono quindi tutti i sottoinsiemi di U , e quelli che contengono a. Questi
tuttavia si ottengono tutti da sottoinsiemi di U aggiungendo a a ciascuno
di essi; o detto in altro modo, se a ciascuno di questi si sottrae a si ottengono tutti i sottoinsiemi di U . Quindi anche i sottoinsiemi di U {a} del
secondo tipo sono tanti quanti i sottoinsiemi di U . In formule linsieme dei
sottoinsiemi di U {a} `e dato da
{X | X U } {X {a} | X U },
e la cardinalit`a di questo insieme `e f (n) + f (n). Ne segue ovviamente che
194

f (n + 1) = 2f (n).
Una funzione definita in questo modo, per cui il suo valore per un numero
qualsiasi si ottiene eseguendo operazioni note sul valore della funzione per il
numero precedente, si dice che `e definita ricorsivamente. Funzioni di questo
genere si ottengono di solito quando si esegue un ragionemento induttivo.
Largomento delle funzioni definite ricorsivamente sar`a affrontato tra breve.
In alcuni casi casi, come lattuale, da equazioni ricorsive come quella di
sopra, che definiscono implicitamente una funzione, si ricava unespressione
esplicita.
Il ragionamento `e di nuovo induttivo; tenendo conto anche della condizione di base, f (0) = 1, si ricavano i seguenti valori
n=0
n=1
n=2
n=3
n=4

f (0) = 1
f (1) = 2
f (2) = 2 f (1) = 2 2
f (3) = 2 f (2) = 2 2 2 = 23
f (4) = 2 f (3) = 2 23 = 24

e quindi si pu`o non solo congetturare la risposta f (n) = 2n ma dimostrarla,


con il passo induttivo
f (n + 1) = 2f (n) = 2 2n = 2n+1 .
In alcuni casi di definizioni ricorsive lespressione esplicita si ricava con
particolari manipolazioni algebriche. Ad esempio, se si vuole valutare la
somma della progressione geometrica di ragione 2:
1 + 2 + 22 + 23 + ... + 2n = f (n)
si pu`o osservare che
1 + 2 + 22 + 23 + ... + 2n = 1 + 2(1 + 2 + 22 + 23 + . . . + 2n1 )
trovando la relazione ricorsiva
f (n) = 1 + 2f (n 1);
ma se il primo membro si scrive f (n 1) + 2n si ha
f (n 1) + 2n = 1 + 2f (n 1)
195

e quindi
f (n 1) = 2n 1,
da cui
1 + 2 + 22 + 23 + ... + 2n = 2n+1 1,
caso particolare della somma della progressione geometrica di ragione r
1 + r + r2 + . . . + rn =

12.5

r n+1 1
.
r1

Esercizi

Sono diversi i campi in cui linduzione si rivela utile. Il pi`


u ricco di applicazioni naturalmente `e quello della

Aritmetica
Si dimostri per induzione, e anche in altro modo se possibile:
1.

1
2

1
23

1
34

+ ... +

1
n(n+1)

2. 1 + 4 + 9 + . . . + n2 =

n
n+1

n(n+1)(2n+1)
6

3. 2 + 4 + . . . + 2n = ?
4. 2 + 6 + 12 + . . . + (n2 n) =

n3 n
3

5. 2 + 2 3 + 3 4 + . . . + n(n + 1) =

n(n+1)(n+2)
3

6. n3 + 3n2 + 2n `e divisibile per 6


7. n5 + 4n + 10 `e divisibile per 5
8. n 3 (n + 1)2 < 2n2
9. n > 0 2n | (n + 1)(n + 2) (2n)
10. 1 + r + r2 + . . . + rn =

r n+1 1
.
r1
m

z}|{
00
0
11. Calcolare il posto del termine tn . . . nellenumerazione dei termini vista
nellesempio del paragrafo 8.2
196

Problemi divertenti
12. Ammettiamo di avere francobolli da 3 e da 5 centesimi. Far vedere che
qualsiasi tassa postale maggiore di 7 pu`o essere pagata con bolli da 3
e 5.
Suggerimento: prima si suppone che per n si sia usato almeno un bollo
da 5; poi, se si sono usati solo bolli da 3, si osserva che n deve essere
almeno 9.
Alternativa: distinguere i tre casi: n = 3k, n = 3k + 1, n = 3k + 2.
13. Lo stesso con
bolli da 2 e 3, tutti gli n maggiori di 1,
bolli da 3 e 7, tutti quelli maggiori di 11,
bolli da 2 e da 2k + 1, tutti quelli maggiori di 2k 1.

Esercizi di geometria
14. Quante rette passano per n punti (di cui mai tre allineati)?
Suggerimento: impostare un ragionamento induttivo se si aggiunge
un punto . . . .
15. Quante sono le diagonali di un poligono convesso di n lati?
16. Quante diagonali non intersecantesi occorrono per dividere un poligono
convesso di n lati in triangoli disgiunti?
17. La somma degli angoli interni di un poligono convesso con n lati `e
(n 2).

Argomenti di analisi
18. Se n intervalli su una retta sono a due a due non disgiunti, la loro
intersezione non `e vuota.
Suggerimento: anche se la base `e n = 2, nella dimostrazione del passo
induttivo occorre (almeno nellimpostazione in mente a chi scrive) utilizzare il caso n = 3, che va dimostrato a parte, sfruttando propriet`a di
connessione degli intervalli (se due punti appartengono a un intervallo,
tutti i punti intermedi anche vi appartengono).
197

Combinatoria
19. Quante sono le funzioni da un insieme con n elementi in un insieme con
m elementi?
Suggerimento. Per induzione su n, con un ragionamento induttivo.
Supposto di conoscere quante sono le funzioni da un insieme X con n
elementi in un insieme Y con m elementi, si aggiunga a X un elemento
a 6 X. Le funzioni di dominio X {a} si ottengono da quelle di
dominio X aggiungendo una coppia ha, yi con y Y .
20. Quanti sono i sottoinsiemi di un insieme con n elementi?
21. Quante sono le relazioni tra un insieme con m elementi e un insieme
con n elementi?
22. Quante sono le permutazioni di un insieme con n elementi?
23. In una festa, le buone maniere richiedono che ogni persona saluti con un
Buona sera ogni altra persona, una sola volta; se ci sono n persone,
quanti Buona sera sono pronunciati? E se ci si d`a la mano, quante
strette di mano occorrono?
24. Con quale degli esercizi precedenti si `e gi`a risolto il problema 23?
Facciamo osservare che molti problemi in cui il passo induttivo, se
simposta un ragionamento per induzione, consiste in un +n, come alcuni di quelli di sopra, si possono risolvere anche direttamente con un
conto del numero di eventi rilevanti, che porta non a caso a risultati
in forma di prodotto; `e unapplicazione del cosiddetto principio fondamentale del conteggio che vedremo pi`
u avanti.

Teoria degli algoritmi


25. La Torre di Hanoi. Ci sono tre aste verticali; allinizio su di una sono
infilzati n dischi con un buco nel centro, di raggio decrescente dal basso
verso lalto. Bisogna spostare la pila in unaltra asta, muovendo un
disco alla volta da una pila e infilzandolo in unaltra, servendosi anche
della terza asta come passaggio. La condizione `e che in nessun momento
su nessuna pila ci sia un disco al di sotto del quale ce ne `e uno di raggio
minore.
198

Dimostrare che lo spostamento `e possibile, per induzione su n, risolvendo prima n = 3, e calcolare quante mosse (ogni mossa `e lo spostamento di un disco) sono necessarie.

Fondamenti
26. Dimostrare che la funzione successore N N \ {0} `e suriettiva, o
sopra N \ {0}.
Osservazione. Questo equivale a dimostrare che x(x = 0y(x = y 0 )).

12.6

Definizioni ricorsive

Supponiamo di conoscere due funzioni numeriche17 e consideriamo la seguente


coppia di equazioni:

f (x1 , 0) = g(x1 )
f (x1 , x0 ) = h(x1 , f (x1 , x)).
Per ogni m ed n il valore f (m, n) pu`o essere calcolato in modo effettivo
attraverso la seguente successione di valori:
f (m, 0) = g(m)
f (m, 1) = h(m, f (m, 0))
f (m, 2) = h(m, f (m, 1))
e cos` via fino a f (m, n).
Lo abbiamo gi`a visto in un paragrafo precedente a proposito della funzione
definita da

f (0) = 1
f (n0 ) = 2f (n).
17

Con funzione numerica intendiamo ora una funzione f : N N, o f : N N N,


o anche a pi`
u argomenti.

199

Qui abbiamo considerato il caso di una funzione a due argomenti, di cui uno
funge da parametro.
Pi`
u in generale, se sono date due funzioni: g(x1 , . . . , xr ) a r argomenti
e h(x1 , . . . , xr , x, y) a r + 2 argomenti18 , dove r pu`o essere 0, la coppia di
equazioni

f (x1 , . . . , xr , 0) = g(x1 , . . . , xr )
f (x1 , . . . , xr , x0 ) = h(x1 , . . . , xr , x, f (x1 , . . . , xr , x))
definisce ricorsivamente f (x1 , . . . , xr , x) a partire da g e h.
Questa forma di ricorsione si chiama propriamente ricorsione primitiva,
ma noi non cosidereremo le forme pi`
u generali di ricorsione19 .
In una ricorsione primitiva, il valore di f ( con valori fissati dei parametri)
per ogni numero x0 maggiore di 0 dipende, attraverso operazioni note, dal
valore di f per il predecessore x. x si chiama anche variabile di ricorsione.
` ovvia la differenza rispetto alle definizioni esplicite; lequazione di riE
corsione f (x1 , . . . , xr , x0 ) = h(x1 , . . . , xr , x, f (x1 , . . . , xr , x)) non `e del tipo
f (~x) = . . . 20 dove . . . non contiene f , come richiesto dalla definibilit`a esplicita, al contrario la definizione appare circolare.
Un teorema generale, che dipende solo dalla struttura fondamentale di
N, cio`e dagli assiomi che abbiamo proposto, afferma tuttavia che questo tipo
di definizione individua una e una sola funzione che soddisfa le equazioni di
ricorsione per tutti i possibili argomenti.
Dal precedente esempio, `e chiaro come si possa ottenere ogni valore con
un numero finito di passi.
Lunicit`a della funzione si dimostra nel seguente modo. Supponiamo che
due funzioni f1 ed f2 soddisfino entrambe le equazioni. Dimostriamo per
induzione su x che f1 e f2 hanno sempre lo stesso valore:
Base: f1 (x1 , . . . , xr , 0) = g(x1 , . . . , xr ) = f2 (x1 , . . . , xr , 0).
Passo induttivo: Se f1 (x1 , . . . , xr , x) = f2 (x1 , . . . , xr , x), allora
f1 (x1 , . . . , xr , x0 ) = h((x1 , . . . , xr , x, f1 (x1 , . . . , xr , x))
= h((x1 , . . . , xr , x, f2 (x1 , . . . , xr , x))
= f2 ((x1 , . . . , xr , x0 ).2
18

In verit`
a, per considerare tutti i casi possibili, g ed h non devono avere necessariamente
lo stesso numero di parametri, e h pu`o non dipendere da x.
19
Largomento rientra in unintroduzione alla teoria della calcolabilit`a.
20
~x sta per una n-upla di elementi, n imprecisato.

200

Con ovvie modifiche si definiscono ricorsivamente funzioni il cui dominio


`e linsieme dei numeri k, f : N \ {0, . . . , k 1} N, con equazioni del
tipo

f (k) = n0
f (x0 ) = h(x, f (x))
x k.
Con una semplice ricorsione primitiva si definisce laddizione:


x+0 = x
x + y 0 = (x + y)0 .

In queste equazioni + `e il nuovo simbolo per la funzione da definire, a due


argomenti; x funge da parametro e y da variabile di ricorsione. Le funzioni
date sono per la prima equazione la funzione identit`a x 7 x e per la seconda
la funzione successore.
Si vede che, se con 1 si indica 00 , allora x + 1 = x + 00 = (x + 0)0 = x0 .
!!!
Con laddizione a disposizione si definisce ricorsivamente la moltiplicazione
come una iterazione delladdizione con le equazioni:

x0 = 0
x y 0 = x y + x.
In modo analogo si definiscono la potenza, come iterazione del prodotto,
e altre operazioni aritmetiche. Ad esempio il fattoriale

0! = 1
x0 ! = x! x0 .
La definizione del prodotto permette di dimostrare che la cardinalit`a21
c(X Y ) del prodotto cartesiano di due insiemi X e Y `e c(X) c(Y ).
Siano X e Y due insiemi di cardinalit`a rispettivamente n ed m. Se a Y
si aggiunge un elemento a 6 Y , allora
X (Y {a}) = (X Y ) {hx, ai | x X}.
Ma ovviamente c({hx, ai | x X}) = c(X) = n, ed inoltre X Y e {hx, ai |
x X} sono disgiunti; allora la cardinalit`a dellunione `e la somma delle
cardinalit`a (vedi esercizio 1 di 12.6.1), per cui
21

Il numero di elementi.

201

c(X (Y {a})) = n m + n = n (m + 1). 2


A questo risultato si d`a addirittura il nome di Fundamental Counting Principle per la sua utilit`a in combinatoria, gi`a menzionata.
Quando una funzione `e definita per ricorsione, la dimostrazione delle sue
propriet`a `e svolta nel modo pi`
u naturale per induzione. Ad esempio dimostriamo la propriet`a associativa delladdizione:
(x + y) + z = x + (y + z),
per induzione su z.
Base: (x + y) + 0 = x + y = x + (y + 0).
Passo induttivo: Se (x + y) + z = (x + (y + z), allora
(x + y) + z 0 = ((x + y) + z)0
= (x + (y + z))0
= x + (y + z)0
= x + (y + z 0 ).2
Con la ricorsione non si definiscono solo funzioni numeriche, ma anche
funzioni non numeriche che dipendono da un parametro numerico. Ad esempio lunione e lintersezione generalizzata di n insiemi A1 , . . . , An si possono
definire con
S1
i=1 Ai = A1
Sn+1
i=1

S
Ai = ( ni=1 Ai ) An+1

e rispettivamente
T1
i=1 Ai
Tn+1
i=1

= A1

T
Ai = ( ni=1 Ai ) An+1 .

Se gli insiemi sono dati come A0 , . . . , An lunione si definisce come


S0
i=0 Ai = A0
Sn

i=0

Sn1
Ai = ( i=0
Ai ) An
202

e analogamente per lintersezione.


Se invece si vuole definire ununione generalizzata su infiniti insiemi
S
iN Xi ,
o
S

i=0

Xi ,

si ricorre
come si `e visto alla generalizzazione della definizione originaria:
S
x iN Xi se e solo se esiste un i N tale che x Xi .
Analogamente per lintersezione.
In modo ricorsivo si definisce anche la somma generalizzata, o sommatoria
da 1 a n (per la sommatoria da 0 a n si applicano agli indici le stesse modifiche
di sopra per lunione):
P1
i=1 ai = a1
Pn+1
i=1

o pi`
u in generale

P
ai = ( ni=1 ai ) + an+1 ,

Pn

ai , per n k 0, con
Pk
i=k ai = ak

i=k

Pn+1
i=k

La sommatoria infinita
ate in Analisi.

P
ai = ( ni=k ai ) + an+1 .

i=0

ai rientra negllargomento delle serie, studi-

Anche le relazioni possono essere definite per ricorsione, sostituendo bicondizionali alle uguaglianze, ad esempio

x < 0 x 6= x
x < y 0 x < y x = y,
o con un altro metodo che vedremo in seguito e che utilizza anche nella
notazione la definizione di relazione come insieme di coppie ordinate.
203

La ricorsione primitiva pu`o essere combinata con altre forme di definizione,


come la definizione per casi, o essere usata per definire simultaneamente due
funzioni.
Un esempio `e la seguente definizione di quoziente e resto per la divisione
di m per n, con m n > 0 (n `e fissato, la ricorsione `e su m).


qm
se rm < n 1

qm+1 =

q
+
1
se
rm = n 1

m


rm + 1

rm+1 =
0

se rm < n 1
se rm = n 1

(qm `e unaltra notazione per q(m); si dovrebbe scrivere q(m, n) o qm,n , ma


non `e il caso di appesantire la notazione).
Come base della ricorsione si pone, per m = n, qn = 1 e rn = 0. Si
dimostra (esercizio) per induzione su m, con base m = n, che
m = nqm + rm

con 0 rm < n,

ottenendo quindi il teorema fondamentale della divisione


qr(m = nq + r 0 r < n).
Alcune forme frequenti di ricorsione non hanno apparentemente il formato
della ricorsione primitiva; ad esempio la successione22 dei numeri di Fibonacci
`e definita in modo che, a parte i primi due, arbitrari, ogni elemento dipende
dai due immediati predecessori23 :

= 1
a0
a1
= 1

an+2 = an + an+1 .
Tali forme di ricorsione sono di fatto riconducibili alla ricorsione primitiva,
e le propriet`a di una successione come quella di Fibonacci possono essere
meglio dimostrate con uninduzione appropriata, come vedremo, oltre che
con quella normale.
22

Una successione a0 , a1 , . . . di elementi di un insieme U non `e altro che una funzione


N U tale che n 7 an , e si indica {an | n N} o brevemente {an }.
23
Horstmann, p. 273 e p. 646.

204

12.6.1

Esercizi

1. Dimostrare per induzione che se due insiemi finiti X e Y sono disgiunti,


c(X Y ) = c(X) + c(Y ).
Suggerimento: linduzione `e su c(Y ), ma occorre dimostrare a parte il
caso in cui c(Y ) = 1, cio`e che se a X si aggiunge un elemento a 6 X
allora c(X {a}) = c(X) + 1 (e questo `e lunico momento della dimostrazione in cui interviene la condizione che gli insiemi siano disgiunti). La dimostrazione richiede il teorema 12.7.1, ne `e un immediato
corollario.
2. Dimostrare la propriet`a distributiva x(y+z) = xy+xz per induzione
su z.
3. Dimostrare per induzione la propriet`a associativa della moltiplicazione.
4. Definire ricorsivamente mn (vedi esercizio 19 di 12.5) e dimostrare
mp+q = mp mq .
5. Dimostrare per induzione che n > 3 n2 < n!.
6. Dimostrare per induzione che n > ? n3 < n!.
7. Dimostrare per induzione che n > ? 2n < n!.
S
8. Dimostrare per induzione che x ni=1 Ai se e solo se x appartiene ad
almeno uno degli Ai (lunione generalizzata era stata introdotta proprio
con questa definizione, che ora va dimenticata a favore di quella ricorsiva; oppure si veda lesercizio come una dimostrazione dellequivalenza
delle due definizioni).
T
9. Dimostrare per induzione che x ni=1 Ai se e solo se x appartiene a
tutti gli Ai .
P
P
P
10. Dimostrare che ni=1 m = m n, dove ni=1 m significa ni=1 ai con
tutti gli ai = m.
11. Trovare e dimostrare per induzione la formula per la
dei primi
Psomma
n
termini della progressione aritmetica di ragione k: i=0 (a + ik).
Suggerimento: le somme, gi`a considerate, dei primi n numeri, dei primi
n pari e dei primi n dispari sono casi di somme di progressioni aritmetiche, le pi`
u semplici, di ragione 1 e 2 a partire da a = 0 o a = 1.
205

Qn
12. Definire ricorsivamente il prodotto generalizzato
i=1 ai e dimostrare
Qn
che se gli ai sono numeri interi allora i=1 ai = 1 se e solo se ai = 1
per ogni i = 1, . . . , n.
13. P
Dimostrare per induzione che se ai 0 per ogni i = 1, . . . , n, allora
n
i=1 ai 0.
P
14. Dimostrare per induzione che ni=1 a2i = 0 se e solo se ai = 0 per ogni
i = 1, . . . , n.
P
P
P
15. Dimostrare che ni=1 ai = ki=1 ai + ni=k+1 ai per ogni 1 k < n.
16. Data la definizione ricorsiva di < del testo, dimostrare che x < y `e
equivalente a z 6= 0(x + z = y).
17. Definire ricorsivamente e dimostrare che x y z(x + z = y).
18. Dimostrare che per la successione di Fibonacci, per ogni n > 0
Pn

i=0

12.7

ai = an+2 1.

Il principio del minimo

Abbiamo detto che un insieme X `e infinito se esiste una iniezione di X su


un sottinsieme proprio di se stesso. Il motivo per cui questa propriet`a, che si
chiama anche riflessivit`a di X, `e stata assunta come definizione di infinito
`e che essa `e intuitivamente falsa per gli insiemi finiti.
La sua negazione `e una caratteristica positiva degli insiemi finiti, che `e
utile nelle dimostrazioni che li riguardano, e in combinatoria24 `e nota come
il principio dei cassetti (in inglese Pigeonhole Principle):
se si distribuiscono m oggetti in n cassetti, con m > n, in almeno un
cassetto c`e pi`
u di un oggetto.
In altre parole, non esiste una iniezione di un insieme con m elementi in
un insieme con n < m elementi, o ancora: ogni funzione da un insieme con
m elementi in un insieme con n < m elementi non `e iniettiva.
24

La combinatoria `e proprio lo studio degli insiemi finiti.

206

In una sistemazione rigorosa dei concetti di finito ed infinito, una volta


scelta la riflessivit`a come definizione fondamentale di infinito, ed aver formulato gli assiomi per N, il principio dei cassetti diventa dimostrabile.
Consideriamo come tipici insiemi finiti gli insiemi Nn = {0, 1, . . . , n 1},
con N0 = . Un insieme si dice finito se esiste una biiezione tra di esso e un
Nn .
Abbiamo allora
Teorema 12.7.1 Se m > n, non esiste una iniezione di Nm in Nn .
Dimostrazione La dimostrazione `e per induzione su n. Si noti che la formula
di induzione questa volta non `e atomica, ma inizia a sua volta con un .
Base: N0 `e e non esiste nessuna funzione da un insieme non vuoto
nellinsieme vuoto25 .
Passo induttivo: Supponiamo vero per n che per ogni m > n non esista
uniniezione di Nm in Nn ; supponiamo per assurdo che esista invece un
m > n + 1 con uniniezione di Nm in Nn+1 , chiamiamola g.
Siccome Nn+1 = Nn {n}, deve essere n = g(i) per qualche i < m,
altrimenti g sarebbe una iniezione di Nm in Nn .
Se i = m 1 eliminiamo la coppia hm 1, ni; altrimenti prima scambiamo tra di loro i valori attribuiti da g a i e a m 1, ed eliminiamo m 1 col suo nuovo valore n; consideriamo cio`e g1 cos` definita:
g1 (i) = g(m 1), e g1 (j) = g(j) per ogni altro j < m 1, j 6= i.
g1 risulta uniniezione di Nm1 in Nn , con m 1 > n, contro lipotesi
induttiva. 2
La caratteristica del finito di non essere iniettabile propriamente in se
stesso `e collegata a propriet`a intuitive, come il fatto che in qualunque modo
si conti un insieme finito si arriva sempre allo stesso numero. Se esistesse una
iniezione g di Nm in Nn , con m > n, e se contando gli elementi di un insieme
si fosse arrivati a m 1, usando tutto Nm , si potrebbe contarli assegnando a
ogni oggetto il numero i < n tale che g(j) = i dove j `e il numero attribuito
25
Poiche X = esiste solo una relazione tra X e , la relazione vuota - `e un insieme
di coppie ordinate (e di ogni altra cosa) perche `e vero che per ogni x, se x x `e una
coppia - ma il dominio di `e , non X.

207

alloggetto nel precedente conteggio, e si arriverebbe a contare al massimo


solo fino a n 1.
Nonostante finito e infinito siano luno la negazione dellaltro, ci sono
molte analogie strutturali tra N e gli insiemi Nn . Sono insiemi totalmente
ordinati e per di pi`
u bene ordinati.
La propriet`a di buon ordine per N si esprime con il principio del minimo:
=
6 X N x(x X y X(x y))
o equivalentemente:
=
6 X N x(x X y < x(y 6 X)).
Il principio del minimo giustifica linduzione: se linduzione fallisse per qualche
propriet`a A(x), allora si avrebbe A(0) e x(A(x) A(x0 )) ma xA(x) e
quindi A(c) per qualche c. Ora c 6= 0 e quindi ha un predecessore c1 tale
che c01 = c. Deve essere A(c1 ) perche A(c1 ) A(c). A sua volta c1 6= 0
deve avere un predecessore c2 tale che c02 = c1 e per cui A(c2 ), perche
A(c2 ) A(c1 ), e cos` via. Allora linsieme {. . . , c2 , c1 , c}
t0

s s

s s r qq

q q q r r sc

non avrebbe un minimo. 2


Dal principio del minimo si ricava anche unaltro principio di induzione.
Se A(x) `e una qualunque formula aritmetica, considerando come X il suo
insieme di verit`a {x N | A(x)} se ne deduce un analogo principio del
minimo per formule, vale a dire che
xA(x) x(A(x) y < xA(y)).
Poiche questo vale per ogni formula, possiamo considerare una formula che
inizi con una negazione, che scriveremo A, e abbiamo
xA(x) x(A(x) y < xA(y)).
Di qui, contrapponendo
x(A(x) y < xA(y)) xA(x),
ovvero
208

x(A(x) y < xA(y)) xA(x),


e infine
x(y < xA(y) A(x)) xA(x)26 .
La validit`a di questo schema giustifica unaltra forma di dimostrazione per
induzione, che si chiama induzione forte, o induzione completa o pi`
u correttamente induzione sul decorso dei valori .
Per dimostrare xA(x) `e sufficiente dimostrare che x(y < xA(y)
A(x)), ovvero, a parole, che per ogni x la validit`a di A(x) segue dal fatto che
A valga per tutti gli y < x:
x(y < xA(y) A(x))
xA(x).

P asso induttivo

y < xA(y) si pu`o considerare lipotesi induttiva, nel passo induttivo, e non
c`e pi`
u bisogno della base.
Questo non significa che lo 0 sia trascurato; il fatto `e che se si dimostra
il passo induttivo nella sua generalit`a, cio`e per ogni x, la dimostrazione vale
anche per 0, per particolarizzazione, e quindi y < 0A(y) A(0). Ora
tuttavia y < 0A(y) `e sempre vero, essendo y(y < 0 A(y)), ed essendo
limplicazione soddisfatta da ogni y per lantecedente falso y < 0. Quindi si
`e dimostrato (qualcosa che implica) A(0).
Bisogna fare attenzione che la dimostrazione del passo induttivo non sta- !!!
bilisca la validit`a di y < xA(y) A(x) solo per x da un certo punto in
poi, ad esempio diverso da 0, eventualit`a che si pu`o presentare, e allora i
primi casi restanti vanno trattati e dimostrati a parte. Ma non `e la base
dellinduzione, `e una distinzione di casi allinterno del passo induttivo (si
veda il terzo esempio sotto).
Se interessa dimostrare x > kA(x) naturalmente `e sufficiente dimostrare
come passo induttivo x > k(y(k < y < x A(y)) A(x)). La giustificazione consiste nel fatto che N \ Nk+1 (la catena che si ottiene cominciando
da k + 1 invece che da 0) `e anchesso bene ordinato e anche per esso vale il
principio del minimo.
Oppure formalmente si consideri la formula B(x) (x > k A(x)); si
mostri che dal passo induttivo per A
26

Si faccia attenzione che qui e nel seguito y < xA(y) sta per (y < xA(y)).

209

x > k(y(k < y < x A(y)) A(x))


segue
x(y < xB(y) B(x))
e quindi si applichi linduzione forte a B per concludere da questo xB(x),
vale a dire x > kA(x).
Nei dettagli: da x > k(y(k < y < x A(y)) A(x)), per importazione delle premesse, portando allinterno x > k,
x(y(k < y < x A(y)) (x > k A(x))),
che si pu`o riscrivere, utilizzando di nuovo limportazione delle premesse,
x(y(y < x (y > k A(y))) (x > k A(x))),
cio`e proprio
x(y < xB(y) B(x)).2
Esempio Il teorema che ogni numero naturale > 1 ammette una scomposizione in fattori primi27 si dimostra per induzione forte nel seguente modo:
dato un numero n, o n `e primo, oppure `e il prodotto di due numeri minori
di n e maggiori di 1. Se la propriet`a vale per tutti i numeri minori di n e
maggiori di 1, per ipotesi induttiva, questi due o sono primi o ammettono
una scomposizione in fattori primi, e allora anche il loro prodotto n ammette
una scomposizione in fattori primi. 2
Esempio Nella dimostrazione del passo induttivo per
1 21 + 13 + . . . + (1)n1 n1 > 0
si erano distinti due casi, a seconda che n fosse pari o dispari. Con linduzione
forte la distinzione rimane ma non porta a due dimostrazioni diverse. Si pu`o
ragionare nel seguente modo: se la disuguaglianza vale per ogni m < n allora
se n `e pari vale
1 12 + 31 + . . .
27

1
n2

>0

La formulazione concisa significa che ogni numero > 1 o `e primo o `e un prodotto di


numeri primi. Vale anche lunicit`
a della scomposizione, che non dimostriamo.

210

e quindi
1 12 + 13 + . . .

1
n2

1
+ ( n1
n1 ) > 0

1
n1 ) > 0, mentre se n `e dispari
perche ( n1

1 12 + 31 + . . .

1
n1

>0

e quindi
1 12 + 13 + . . .

1
n1

1
n

> 0. 2

Esempio Consideriamo di nuovo il problema di pagare qualsiasi tassa


postale maggiore di 7 con francobolli da 3 e da 5 centesimi. La dimostrazione
`e gi`a stata fatta per induzione, ma si pu`o fare in modo pi`
u rapido con
linduzione forte.
Dato un numero qualunque n > 7, ammesso che la possibilit`a di affrancare
con bolli da 3 e 5 valga per tutti i numeri minori di n e maggiori di 7, si
consideri n 3. Questa cifra pu`o essere realizzata con bolli da 3 e 5, per cui
basta aggiungere un bollo da 3.
Tuttavia il ragionamento funziona per gli n tali che n 3 sia maggiore
di 7, quindi non per 8, 9, 10. Quindi il passo induttivo come svolto sopra
non copre tutti i numeri, e questi tre casi devono essere trattati a parte per
completare il passo induttivo. 2
Come si vede dal confronto, rispetto alle dimostrazioni per induzione
normale con linduzione forte si riduce la parte prettamente aritmetica. Tale
possibilit`a `e forse la ragione della attribuzione di forte a questo tipo di
induzione.
Da un punto di vista logico, la giustificazione dellappellativo forte `e
che la stessa conclusione xA(x) si ottiene nellinduzione forte da unipotesi
x(y < xA(y) A(x)) pi`
u debole di A(0)x(A(x) A(x+1)). Questa ultima affermazione sulla forza delle rispettive ipotesi a sua volta si giustifica col
fatto che una stessa conclusione A(x) si ottiene una volta con unassunzione
forte come y < xA(y) e una volta con lassunzione pi`
u debole che A valga
solo per il predecessore.
Si tratta tuttavia di impressioni psicologiche. Il motivo per cui la dizione
forte non `e del tutto appropriata `e che linduzione forte `e equivalente a
quella normale.
La conclusione xA(x) a partire da x(y < xA(y) A(x)) si pu`o giustificare infatti formalmente nel seguente modo. Si considera la formula
211

B(x) y < xA(y)


e si dimostra xB(x) (da cui segue ovviamente xA(x)) per induzione su x,
utilizzando anche x(y < xA(y) A(x)) nel corso della dimostrazione:
Base: B(0) `e immediato perche y < 0 `e falso.
Passo induttivo: Ammesso B(x), cio`e y < xA(y), da questa segue A(x), e
quindi y < x0 A(y) che `e B(x0 ). 2
Viceversa linduzione normale si giustifica in base a quella forte in questo
modo. Supponiamo A(0) x(A(x) A(x0 )); per ottenere xA(x), in base
allinduzione forte `e sufficiente dimostrare x(y < xA(y) A(x)).
Distinguiamo due casi; un numero o `e 0, e allora abbiamo A(0) e quindi
y < 0A(y) A(0), oppure se `e diverso da 0 `e un successore e possiamo
indicarlo x0 , e dobbiamo dimostrare y < x0 A(y) A(x0 ).
Ma y < x0 A(y) implica A(x), e con x(A(x) A(x0 )) anche A(x0 ). 228
Il principio del minimo `e anche equivalente allaffermazione che non esistono catene discendenti infinite; se una successione {an } fosse tale che
. . . < an+1 < an < . . . < a0 , linsieme {an | n N } non avrebbe minimo. Viceversa, dato un insieme non vuoto X, preso un suo elemento a0 ,
se non `e il minimo di X si pu`o trovare un altro suo elemento a1 < a0 , e se
neanche a1 `e il minimo si continua, ma siccome la successione cos` generata
non pu`o essere infinita, si trova un ak che `e il minimo di X. 2
Al principio del minimo si d`a ancora unaltra formulazione nota come
principio della discesa finita. Esso afferma che se una propriet`a P vale per
un k > 0, e quando vale per un n > 0 qualunque allora vale anche per un
numero minore di n, allora P vale per 0.
Infatti in queste ipotesi, in cui linsieme degli n che soddisfa P non `e
vuoto, il minimo deve essere 0, perche un n > 0, non sarebbe il minimo, in
quanto anche qualche numero minore soddisferebbe P .
Viceversa, ammesso il principio della discesa finita, e dato un insieme X
non vuoto, consideriamo la propriet`a P di appartenere a X. O la propriet`a
P vale per 0, e 0 `e allora ovviamente il minimo di X, oppure 0 non ha la
28

La dimostrazione formale dellequivalenza tra induzione e induzione forte si trasporta


alla dimostrazione dellequivalenza tra il fatto che N sia bene ordinato e il fatto che N sia
il pi`
u piccolo insieme che contiene 0 ed `e chiuso rispetto al successore.

212

propriet`a P . In questo caso, non `e vero per P che per ogni n che ha la
propriet`a P anche uno minore ha la propriet`a P . Quindi esiste un n che
soddisfa P ma tale che nessun suo predecessore soddisfa P , ed n `e il minimo
di X. 2
Unovvia variante `e che se una propriet`a P vale per un h > k e quando
vale per un n qualunque > k allora vale anche per un numero < n e k,
allora P vale per k.
Il principio della discesa finita `e alla base delle dimostrazioni di terminazione degli algoritmi, quando ad un algoritmo si associa una propriet`a P !!!
che decresce ad ogni esecuzione di un passo dellalgoritmo. Un esempio `e la
dimostrazione di terminazione per lalgoritmo di costruzione degli alberi di
refutazione proposizionali, nel Lemma 7.2.1.
Il principio del minimo fornisce un comodo e utile metodo di definizione
di funzioni: a ogni x (o a pi`
u elementi se si tratta di funzione a pi`
u argomenti)
si associa il minimo y tale che A(x, y), ammesso di sapere che esistono degli
y tali che A(x, y), dove A(x, y) `e una formula.
La definizione di minimo comune multiplo di due numeri `e un esempio
ovvio del ricorso a tale possibilit`a, che `e molto frequente in aritmetica, e si pu`o
combinare con la ricorsione per definire funzioni effettivamente calcolabili.
Ad esempio si definisce per ricorsione la successione dei numeri primi
{pn | n N } ponendo innanzi tutto p0 = 2, quindi osservando che se `e noto
pn allora esiste (teorema di Euclide) un numero primo maggiore di pn , e uno
che dalla dimostrazione dellinfinit`a dei primi si sa che `e minore o uguale a
2 3 4 . . . pn + 1.
Si definisce allora pn+1 come il minimo numero primo maggiore di pn .
La definizione `e corretta in base solo al principio del minimo, ma lesistenza
di un confine superiore la rende anche effettivamente calcolabile in modo
elementare (eseguendo una ricerca limitata a priori).
A ricorsione primitiva e operatore di minimo corrispondono nei linguaggi
di programmazione strutturata i costrutti repeat (for i = 0 to n) e while
. . . do.

12.8

Varianti dellinduzione

Tra linduzione normale e quella forte esistono varianti intermedie, in cui per
ogni x la validit`a di A(x) `e dimostrata a partire da quella di A per alcuni

213

specificati predecessori. Ad esempio


A(0)
A(1)
x(A(x) A(x0 ) A(x00 ))
xA(x).

Base
Base
P asso induttivo

Questa forma di induzione si giustifica, come quella forte, con linduzione


normale, considerando la formula
B(x) A(x) A(x0 )
e dimostrando xB(x) (da cui ovviamente xA(x)) per induzione, utilizzando
le assunzioni relative ad A:
Base: B(0) segue da A(0) e A(1).
Passo induttivo: Ammesso B(x), quindi A(x) A(x0 ), dal passo induttivo
per A si deduce A(x00 ), quindi A(x0 ) A(x00 ), cio`e B(x0 ). 2
Varianti di questo genere corrispondono ad analoghe varianti della ricorsione primitiva, e permettono di dimostrare le propriet`a della funzioni cos`
definite. Ad esempio la forma di induzione di sopra `e quella adatta a dimostrare propriet`a della successione di Fibonacci29
0, 1, 1, 2, 3, 5, 8, 13, . . .
Esempio Mostriamo un legame inaspettato dei numeri di Fibonacci con
numeri irrazionali, in particolare con la sezione aurea.
Indicate con

= 12 (1 + 5)
e
= 12 (1 5)
le radici dellequazione x2 x 1 = 0, o
x2 = x + 1,
dove `e la cosiddetta sezione aurea, si ha
29

Nella precedente definizione si era posto a0 = a1 = 1; con questa, altrettanto usata,


si premette uno 0 e gli altri valori sono solo slittati di un posto.

214

an =

1 (n
5

n ).

Dimostrazione
Base: Per n = 0 la formula si riduce a a0 = 0 e per n = 1 a a1 = 1.
Passo induttivo: Poiche
an = an1 + an2
per ipotesi induttiva si ha
an =

1 (n1
5

an =

1 (n2 (
5

n1 + n2 n2 )

quindi
+ 1) n2 ( + 1)).

Ma + 1 = 2 e + 1 = 2 , per cui
an =

1 (n
5

n ). 2

Linduzione doppia `e unaltra variante dellinduzione.


Quando la formula da dimostrare `e del tipo xyB(x, y), se si esegue
uninduzione su x la formula di induzione `e yB(x, y) e nel passo induttivo,
quando si deve derivare
yB(x, y)
..
.

Ipotesi induttiva

yB(x0 , y)
pu`o darsi che yB(x0 , y) richieda di essere derivata a sua volta per induzione
(anche con lutilizzo di yB(x, y) che `e lipotesi induttiva dellinduzione su
x).
Si parla allora di induzione doppia, anche se si tratta di due applicazioni di uninduzione normale, solo che una `e allinterno del passo induttivo
dellaltra; bisogna fare attenzione a indicare con pulizia le varie tappe della
215

dimostrazione, perche nel passo induttivo dellinduzione su y si avr`a a disposizione lipotesi induttiva relativa allinduzione su y e lipotesi induttiva
relativa allinduzione pi`
u esterna su x.
Non `e facile trovare esempi elementari in cui il ricorso allinduzione doppia
`e proprio necessario30 . Diamo un esempio per mostrare come si organizzano
i passi della dimostrazione, scegliendo la commutativit`a delladdizione, anche se per questa propriet`a linduzione doppia si potrebbe evitare (e dopo
mostreremo come).
Dimostriamo quindi
xy(x + y = y + x),
e iniziamo con uninduzione su x.
Basex : Dobbiamo dimostrare
y(0 + y = y + 0).
ovvero
y(0 + y = y).
e lo dimostriamo per induzione su y:
Basey : 0 + 0 = 0.
Passo induttivoy : Ammesso 0 + y = y, si ha
0 + y 0 = (0 + y)0
= y0.
Passo induttivox : Assumiamo, come ipotesi induttivax , che y(x+y = y+x)
e dimostriamo
y(x0 + y = y + x0 )
per induzione su y.
30

Nel primo teorema del paragrafo 14.7 abbiamo visto un esempio in cui la formula
dinduzione era universale ma non ha richiesto linduzione doppia.

216

Basey : Da dimostrare `e
x0 + 0 = 0 + x0 .
Ma
0 + x0 = (0 + x)0
= (x + 0)0
(il precedente passaggio per lipotesi induttivax particolarizzando
y a 0)
= x0
= x0 + 0 .
Passo induttivoy : Assumiamo lipotesi induttivay che x0 + y = y + x0
e dimostriamo x0 + y 0 = y 0 + x0 .
x0 + y 0 = (x0 + y)0
= (y + x0 )0
= (y + x)00
dove si `e usata lipotesi induttivay .
Daltra parte
y 0 + x0 =
=
=
=

(y 0 + x)0
(x + y 0 )0
(x + y)00
(y + x)00

dove si `e usata prima lipotesi induttivax particolarizzando y a


y 0 , e infine di nuovo lipotesi induttivax particolarizzando y a y.
Naturalmente si sono anche usate le equazioni della definizione
ricorsiva delladdizione, in particolare la seconda.
Quindi il passo induttivoy `e dimostrato 2
e con la sua conclusione y(x0 + y = y + x0 ) anche il passo induttivox .
2
Vediamo ora come si dimostra pi`
u facilmente xy(x + y = y + x). Occorrono pi`
u applicazioni dellinduzione, ma nessuna induzione doppia.
217

Abbiamo gi`a dimostrato per induzione la propriet`a associativa della somma,


e che x(x + 0 = 0 + x), nel corso della precedente dimostrazione.
Dimostriamo ora per induzione su x che x(x + 1 = 1 + x). Si ricordi che
in base alla definizione di addizione x0 = x + 1.
Base: 0 + 1 = (0 + 00 ) = (0 + 0)0 = 00 = 1 = 1 + 0.
Passo induttivo: Ammesso x + 1 = 1 + x,
1 + x0 =
=
=
=

(1 + x)0
(x + 1)0
(x + 1) + 1
x0 + 1.2

Ora infine, usando questi risultati, dimostriamo per un x generico che


y(x + y = y + x)
per induzione su y:
Base: x + 0 = 0 + x.
Passo induttivo: Ammesso x + y = y + x, abbiamo
x + y 0 = (x + y)0 =
=
=
=
=
=

12.9

(y + x)0
(y + x) + 1
y + (x + 1)
y + (1 + x)
(y + 1) + x
y 0 + x.2

Errori e paradossi

Alcuni errori delle dimostrazioni, come il dimenticare la base, sono stati gi`a
segnalati. Altri possono essere pi`
u difficili da scoprire, e alcuni portano a
divertenti paradossi.
Si consideri il seguente
Teorema 12.9.1 Tutte le mele hanno lo stesso colore.
218

Dimostrazione Basta dimostrare che, comunque si prendano n mele, queste


hanno tutte lo stesso colore. Se prendiamo una mela, tutte le mele nellinsieme
hanno lo stesso colore. Sia dato un insieme di n + 1 mele. Se togliamo una
mela a, otteniamo un insieme di n mele che per ipotesi induttiva hanno lo
stesso colore. Ma se rimettiamo a nel mucchio e ne togliamo unaltra b, abbiamo un altro insieme di n mele che devono avere tutte lo stesso colore;
quindi b ha il colore di mele che hanno lo stesso colore di a, quindi a ha lo
stesso colore delle altre. 2
Mentre nella precedente dimostrazione `e presente un vero errore, diverso `e
il caso di ragionamenti come i seguenti, che lo studente `e invitato a discutere.
Sul primo non sarebbero daccordo i sollevatori di pesi.
Teorema 12.9.2 Chiunque `e in grado di sollevare un mucchio di sabbia pesante quanto si vuole.
Dimostrazione Dato un granello di sabbia, chiunque `e in grado di sollevarlo. Se una persona `e in grado si sollevare un mucchio di sabbia, e al
mucchio si aggiunge un granello, la stessa persona `e in grado di sollevare il
nuovo mucchio. Qualunque mucchio di sabbia, di qualsiasi peso, si ottiene
accumulando un numero sufficiente di granelli di sabbia. 2
Sul prossimo sarebbero daccordo i matematici, e non si pu`o dire che sia
un errore, ne un paradosso, sembra solo paradossale.
Teorema 12.9.3 Ogni numero `e interessante.
Dimostrazione Iniziamo con uninduzione empirica. 0 `e interessante, al punto
che si continuano a scrivere libri su di esso, rappresenta il vuoto, il nulla
. . . 1 `e molto interessante, genera tutti gli altri. 2 `e il primo numero pari, e
rappresenta tutte le dicotomie che danno origine alla vita, la divisione nella
coppia, maschio e femmina, il bene e il male . . . , 3 `e la trinit`a, il primo
numero primo dispari, somma dei suoi predecessori . . . , 4 `e il primo numero
composto, ci sono i quattro cavalieri dellApocalisse . . . , 5 in effetti non
sembra avere nessuna caratteristica unica; beh, questo `e interessante di 5,
che `e il primo numero non interessante . . .
Si vede ora come svolgere la dimostrazione, nella forma del principio del
minimo: linsieme dei numeri non interessanti `e vuoto, perche se no avrebbe
un primo elemento, e questo sarebbe interessante, come primo numero non
interessante. 2
Non sembra invece accettabile
219

Teorema 12.9.4 Ogni numero `e piccolo.


Dimostrazione 0 `e piccolo, e se n `e piccolo anche n + 1 `e piccolo. 2
Una dimostrazione per induzione forte che contiene evidentemente un
errore `e la seguente, secondo cui le derivate di una qualunque potenza xn
sarebbero tutte nulle, cos` come Dx0 = 0, la derivata di una costante:
Per la regola del prodotto, e usando lipotesi induttiva che la derivata di
x sia identicamente 0 per ogni i < n + 1,
i

Dxn+1 = (Dx1 ) xn + x (Dxn ) = 0 xn + x 0 = 0.

12.10

Definizioni induttive

Le definizioni induttive sono quelle che si appoggiano ai numeri naturali,


ma si riferiscono ad altri enti; definiscono funzioni con dominio N ma valori
diversi dai numeri, in generale insiemi, relazioni. La formulazione pi`
u generale quindi si d`a in termini insiemistici; una tipica definizione induttiva si
presenta nella forma seguente.
Dato un insieme B e una funzione F che manda insiemi in insiemi, si
pone

I0
= B
In+1 = F (In ),
oppure, nella forma cumulativa, che garantisce che In In+1 per ogni n,

I0
= B
In+1 = In F (In ).
Quindi si pone
I=

{In | n N}

o
I=

i=0 {In }

e si dice che I `e definito induttivamente, o per induzione, mediante F , con


base B.
I pu`o risultare un insieme qualunque, dipende da B e F , pu`o anche essere
un insieme di coppie, o un insieme di altre strutture.
220

F anche `e una funzione qualunque, ma in generale si prende crescente,


rispetto allinclusione, nel senso che se X Y allora F (X) F (Y ), e
continua, rispetto allunione, nel senso che F della unione uguale unione
degli F :
S
S
F ( {Xj | j J }) = {F (Xj ) | j J }.
Si pu`o sempre fare in modo che la funzione sia crescente utilizzando F 0 (X) =
X F (X) invece della data F .
Se F `e continua, e F () = B, la definizione cumulativa si pu`o anche
esprimere con la sola
S
In = F ( i<n Ii )
avendo posto
S

i<n

Xi =

Sn1
i=0 Xi

se

n>0

se

n = 0.

Esempi
Linsieme dei polinomi in x a coefficienti reali si pu`o definire con

P0
=R
Pn+1 = {x p + c | p Pn , c R}
e
P =

{Pn | n N }.

(Esercizio: Esaminare quali siano gli elementi di P1 e P2 .)


Come si vede dallesempio, la base B non `e necessariamente un insieme
finito. La funzione F in questo caso `e
F (X) = {x p + c | p X, c R},
che si vede facilmente essere crescente e continua, come sar`a anche negli
esempi successivi.
Linsieme dei termini T costruiti con 0, 1, x, + e si pu`o definire con

T0
= {0, 1, x}
Tn+1 = Tn {t1 + t2 | t1 , t2 Tn } {t1 t2 | t1 , t2 Tn }
e
221

T =

{Tn | n N }.

Linsieme I definito induttivamente mediante F , con base B, `e caratterizzato dalla seguente propriet`a:
I `e il pi`
u piccolo insieme che contiene B ed `e chiuso rispetto a F ,

!!!

dove si dice che un insieme X `e chiuso rispetto a F se per ogni Y se Y X


allora F (Y ) X; con pi`
u piccolo sintende che se J `e un insieme che
contiene B ed `e chiuso rispetto a F allora I J.
I due tipi di definizione si dicono anche definizione dal basso (quella induttiva con lunione) e dallalto, per intersezione.
Un modo di esprimere in simboli il fatto che un insieme X `e il pi`
u piccolo insieme che ha una certa propriet`a P `e infatti quello di dire che X `e
lintersezione (generalizzata) di tutti gli Y tali che P (Y ), quando lintersezione
ha ancora la propriet`a P .
!!!
Questo succede ad esempio se la propriet`a P consiste, come nel caso
attuale, nel contenere un dato insieme o nellessere chiusi rispetto a una
funzione. Non `e sempre cos`, ad esempio nel campo reale lintersezione di tutti
gli intervalli che contengono propriamente lintervallo (1, 1) `e lintervallo
chiuso [1, 1] (estremi inclusi), che ha ancora la stessa propriet`a; invece
lintersezione di tutti gli intervalli aperti (x, x) `e linsieme {0}, che non `e
un intervallo aperto31 .
Facciamo vedere che le due definizioni di I sono equivalenti, se si usa
linduzione cumulativa ed F `e crescente e continua, e a questo scopo chiamiamo J linsieme definito dallalto:
T
J = {X | B X Y (Y X F (Y ) X)}.
Dobbiamo dimostrare che I = J.
Per I J basta far vedere che per ogni n In J, cio`e che se X `e tale che
B X Y (Y X F (Y ) X) allora In X. Lo si verifica facilmente
per induzione (esercizio). Ne segue che I J per la propriet`a di minimalit`a
dellunione.
31

Con intervallo aperto (x, x) intendiamo {y | x < y < x}.

222

Per J I basta far vedere che I `e uno degli insiemi di cui J `e lintersezione,
quindi che B I e I `e chiuso rispetto a F . B I `e ovvio.
` sufficiente controllare la propriet`a di chiusura per sottoinsiemi finiti
E
di I. InfattiSogni Y I, ogni Y in verit`a, `e lunione dei suoi
S sottoinsiemi
finiti, Y = {Z Y | Z finito}, e se F `e continua F (Y ) = {F (Z) | Z
Y e Z finito}.
Ora se Z I e Z `e finito, allora Z In per qualche n32 , e F (Z)
F (In ) In+1 , quindi F (Z) I. 2
Questo `e il motivo per cui si sceglie la forma cumulativa dellinduzione
anche quando non sarebbe necessario; in tal modo si garantiscono le propriet`a
richieste dalla dimostrazione, e le supporremo sempre verificate anche se la
presentazione della definizione induttiva non lo mostra esplicitamente.
Di solito infatti la funzione F `e precisata da una serie di operazioni da
compiere sugli elementi dellinsieme In per ottenere In+1 e allora per ogni
operazione si ha una clausola induttiva separata.
La definizione del precedente insieme di termini T si presenta nel seguente
modo:

0, 1, x sono termini
Base:
Clausola induttiva 1: Se t1 e t2 sono termini, anche t1 + t2 `e un termine.

Clausola induttiva 2: Se t1 e t2 sono termini, anche t1 t2 `e un termine.


Qualche volta si aggiunge, ma pi`
u spesso si trascura, una
Clausola di chiusura: Nullaltro `e un termine.
Per dare una definizione induttiva di un insieme I in sostanza, prima si
dice esplicitamente che certi elementi appartengono a I; quindi si afferma che
se certi elementi, di una determinata forma, appartengono a I, anche altri,
di altra forma collegata, appartengono a I.
La clausola di chiusura `e da intendersi nel senso che non solo I contiene gli
elementi della base ed `e chiuso rispetto alle operazioni indicate dalle clausole
induttive,
ma `e il pi`
u piccolo insieme del genere. Quindi `e uguale allinsieme
S
{In | n N } e qualcosa `e in I se e soltanto se `e in un In , cio`e lo `e in
base allapplicazione iterata un numero finito di volte delle clausole di base
e induttive.
32

Perch`e Ir Ir+1 : allora ogni elemento di Z `e in qualche Ir , e tutti sono quindi nel
massimo di questi.

223

Esempi
La definizione delle proposizioni P aveva la forma induttiva
Base: Una proposizione atomica `e una proposizione.
Clausola induttiva 1: Se A `e una proposizione, anche (A) lo `e.
Clausola induttiva 2: Se `e un connettivo binario, e se A e B sono proposizioni, anche (A B) lo `e.
Si tratta di una definizione per induzione cumulativa: quando (A B) `e
inserito in In+1 , A e B non sono necessariamente entrambe in In , ma in uno
qualsiasi dei livelli precedenti.
Definiamo linsieme A degli alberi binari finiti (qui brevemente alberi),
intesi come insiemi finiti con un ordine parziale:
Base: Un singoletto {} `e un albero, che `e radice, in quanto non ha predecessori immediati, ed `e foglia in quanto non ha successori immediati (o
figli).
Clausola induttiva: Dato un albero, se ad alcune sue foglie si aggiungono
uno o due successori immediati si ha un albero.
Vediamo come sono formati alcuni primi livelli di A.
La base A0 contiene solo lalbero

mentre A1 contiene

.&

e A2 oltre a quelli di A1

224

.&

.&

.&

.&

.&

.&

.&

.&

.&

.&

.&

.&

.& .&

Infine mostriamo come si definisce una relazione, come insieme di coppie,


anche se spesso per le relazioni si adottano equivalenze di tipo ricorsivo, come
abbiamo visto per <. Proprio la relazione < si pu`o definire con

I0
= {hx, x0 i | x N }
In+1 = In {hx, y 0 i | hx, yi In },
e I = <, che mostra come < sia literazione della relazione successore (che
`e la base I0 ).
La definizione ricorsiva che abbiamo visto in precedenza, da cui segue
x < y z 6= 0(x + z = y),
mostra anchessa come < sia literazione del successore, dal momento che
laddizione `e literazione del successore; questultima equivalenza peraltro `e
piuttosto la definizione di una formula, che a sua volta definisce la relazione,
che non la definizione della relazione come insieme.
225

Un altro modo di presentare la relazione < `e quello di definirla come la


chiusura transitiva della relazione successore S = {hx, x0 i | x N }.
La chiusura transitiva di una relazione S `e la pi`
u piccola relazione che
estende S ed `e transitiva; se scriviamo
T rans(R) per x, y, z(hx, yi R hy, zi R hx, zi R),
e T C(S) per chiusura transitiva di S allora
T
T C(S) = {R | S R e T rans(R) }.
Lintersezione non `e fatta sullinsieme vuoto, perche esiste sempre almeno
una R soddisfacente le condizioni richieste, ad esempio la relazione totale.
Anche la chiusura transitiva di S ammette in generale una definizione
induttiva dal basso (come quella vista sopra per <), data da

I0
= S
In+1 = In {hx, yi | z(hx, zi In hz, yi S)},
S
e T C(S) =
i=0 {In }.
Esempi
La relazione dordine parziale negli alberi `e la chiusura transitiva della
relazione di successore immediato che `e inclusa nella definizione ricorsiva
degli alberi.
La relazione B `e una sottoproposizione di A `e la chiusura transitiva
della relazione B `e una sottoproposizione immediata di A della definizione
del paragrafo 3.2.1.
Quando un insieme I `e definito induttivamente, per dimostrare che ogni
elemento di I ha una propriet`a P si pu`o usare linduzione.
Ad ogni elemento x I `e associato un numero, il pi`
u piccolo n tale che
x In . Chiamiamo altezza di x questo numero33 .
33

Nella definizione delle proposizioni del paragrafo 3.2.1 le proposizioni atomiche avevano
altezza 1, mentre nella terminologia attuale hanno altezza 0; lo stesso per gli alberi, secondo
la definizione del paragrafo 3.2.2 lalbero aveva altezza 1, mentre ora ha altezza 0; non
ci sarebbe alcuna difficolt`
a ad adattare la notazione delle definizioni induttive in modo
da ristabilire laccordo, usando N \ {0} o N \ Nk invece di N.Tuttavia nella trattazione
generale delle definizioni induttive, non c`e motivo per non usare tutti i numeri, incluso 0.
La precedente definizione di altezza di un albero si giustificava intuitivamente in base alla
nozione di lunghezza dei rami.

226

Esempio Laltezza di un polinomio rispetto alla definizione induttiva di


P `e il grado del polinomio.
Uninduzione sullaltezza di x `e uninduzione su n, che tuttavia prende in !!!
esame non solo tutti i numeri naturali, ma tutti gli elementi di tutti i livelli In
della gerarchia in cui `e strutturato I. Essa si presenta nella seguente forma:
Base: Ogni elemento di altezza 0, cio`e ogni elemento di I0 , ha la propriet`a
P.
Passo induttivo: Ammesso che ogni elemento di altezza n abbia la propriet`a
P , si dimostra che ogni elemento di altezza n + 1 ha la propriet`a P .
Sn1
Gli elementi di altezza n sono gli elementi di In \ i=0
Ii . Se si vuole che
lipotesi induttiva riguardi tutto In occorre utilizzare linduzione forte:
Passo induttivo: Ammesso che ogni elemento di altezza minore di n abbia la
propriet`a P , si dimostra che ogni elemento di altezza n ha la propriet`a
P.
Esempio Dimostriamo che :
Ogni proposizione ha un numero pari di parentesi.
Dimostrazione Per induzione forte. Supponiamo che tutte le proposizioni di
altezza minore di n abbiano un numero pari di parentesi. Indichiamo con ]A
il numero di parentesi di A.
Sia A una proposizione di altezza n. Se n = 0, la proposizione `e atomica,
della forma (p), e ha due parentesi.
Se n > 0, A `e una proposizione composta, e il fatto cruciale `e che le sue
componenti hanno altezza minore di quella di A. Si danno due casi.
Se A `e (B), per ipotesi induttiva ]B `e un numero pari e ]A = ]B + 2 `e
anchesso pari.
Se A `e (B C) composta con un connettivo binario, per ipotesi induttiva
]B e ]C sono pari e ]A = ]B + ]C + 2 `e anchesso pari. 2
Insieme alle dimostrazioni induttive, anche le definizioni ricorsive si estendono agli insiemi definiti induttivamente. Lestensione di uninterpretazione
i a una valutazione i del linguaggio proposizionale (paragrafo 3.3) `e una !!!
definizione ricorsiva sullaltezza delle proposizioni.
Altre volte si usano misure di complessit`a diverse dallaltezza. Per poter
fare dimostrazioni induttive per tutti gli elementi di un insieme X, quello che
227

importa `e che X si possa rappresentare come


come `e stato originariamente definito.

i=k

Xi , indipendentemente da

Esempio Lalgoritmo di trasformazione di una proposizione in forma normale congiuntiva (o disgiuntiva) del paragrafo 6.3 presentava una ricorsione
sulla lunghezza delle proposizioni. Lesecuzione delle operazioni sintattiche
da compiere su una proposizione era riportata, attraverso lapplicazione delle
leggi distributive, a proposizioni di lunghezza minore: da AB (C D)B
via (C B) (D B) a C B e D B. Data una forma normale congiuntiva
per queste ultime, si ha una forma normale congiuntiva anche per A B.
Si noti che C B e D B potrebbero avere invece la stessa altezza di
A B, se prevale laltezza di B.
La misura di complessit`a associata in modo naturale alla definizione delle
proposizioni `e laltezza dellalbero di parsing, ma vale anche
S
P=
i=3 Li
dove Li `e linsieme delle proposizioni che hanno (come liste) lunghezza i
(alcuni Li sono vuoti, vedi esercizi), o la gerarchia cumulativa
S

P=
i=3 Li
e linsieme delle proposizioni che hanno lunghezza i.
dove L
i `
12.10.1

Esercizi

1. Dimostrare per induzione doppia che per ogni m esiste un punto f (m)
tale che n(n > f (m) nm < n!).
2. Dimostrare per induzione:
(a) Ogni proposizione contiene almeno una parentesi.
(b) Ogni proposizione inizia con una parentesi sinistra e termina con
una parentesi destra.
(c) In ogni proposizione il numero di parentesi sinistre `e uguale al
numero di parentesi destre.
(d) Se si considera una sottosequenza iniziale propria di una proposizione, in essa il numero di parentesi sinistre `e maggiore di quello
delle parentesi destre.
Questo risultato `e quello che giustifica il fatto che il contatore di !!!
parentesi torna a zero solo alla fine di una formula.
228

(e) Ogni proposizione ha lunghezza (come lista) maggiore o uguale a


3.
(f) In nessuna proposizione occorrono due connettivi consecutivi.
(g) In ogni proposizione non atomica occorre almeno un connettivo.
(h) In nessuna proposizione occorre la sottosequenza (), ne )p.
(i) In ogni proposizione la sua lunghezza `e maggiore della sua altezza.
3. Se Li `e linsieme delle proposizioni di lunghezza i, trovare quali sono
gli i che sono lunghezze di proposizioni (per cui cio`e Li 6= ).
4. Dimostrare per induzione sul numero di lettere che il numero delle
interpretazioni delle proposizioni A[p1 , . . . , pn ] `e 2n .
5. Determinare e dimostrare quanti sono gli alberi di altezza n.
6. Determinare e dimostrare quante sono, al massimo, le foglie e i rami di
un albero di altezza n.

229