Logica. La teoria classica dell`Inferenza - LED

Capitolo 2
Strutture
2.1 Strutture e tipi
Una struttura A e costituita da un insieme A, il dominio della struttura, e da
una successione di relazioni su A, funzioni su A e individui di A detti costanti.
Il concetto di struttura e molto duttile e consente di rappresentare in modo
ecace diverse situazioni di carattere empirico e teorico. Ridurre una situazione
a una struttura signica ricondurla nell'ambito dell'algebra. Il passaggio da
una situazione \concreta" a una struttura \astratta" e un impoverimento, nel
senso che molti dettagli, molti aspetti specici vanno inevitabilmente perduti,
tuttavia non si deve concepire il sacricio dei particolari come un limite di
questo modo di procedere, dato che buona parte dell'attivita conoscitiva umana
consiste precisamente nella produzione di astrazioni che isolano, in una certa
realta, cio che si ritiene essenziale da cio che si ritiene contingente, gli aspetti
fondamentali da trasferire nella struttura, dagli aspetti che invece si ritengono
inessenziali.
Esaminiamo alcuni esempi di strutture che saranno utili in seguito. Consideriamo la porzione di realta costituita da tutti i sottoinsiemi di un dato insieme
A. E possibile organizzare questi oggetti in una struttura isolando la relazione
di inclusione fra insiemi come un aspetto fondamentale della realta: otteniamo
cos la struttura costituita dall'insieme ordinato (P(A); ). Nella stessa realta
insiemistica di base si possono invece considerare come fondamentali le operazioni insiemistiche di intersezione, unione e complemento e quegli insiemi molto
particolari che sono ; e A: otteniamo cos la struttura (P (A); \; [; ;; ;; A),
detta algebra dell'insieme potenza, che indicheremo con B(A). Scegliendo le relazioni, le funzioni e le costanti che fanno parte della struttura, dichiariamo cio
che riteniamo fondamentale nella realta in esame e a diverse scelte degli elementi
caratterizzanti corrispondono diverse strutture.
Una prima classicazione delle strutture si ottiene mediante la nozione di
tipo, ossia isolando il linguaggio necessario per nominare le relazioni, le funzioni
e le costanti presenti nella struttura: strutture dello stesso tipo sono descrivibili
34
Capitolo 2. Strutture
col medesimo linguaggio. Piu precisamente un tipo e una quadrupla
= (fRigi2I ; fFj gj 2J ; fck gk2K ; ar)
che soddisfa le condizioni seguenti. Le successioni fRigi2I , fFj gj 2J e fck gk2K
non contengono ripetizioni. Indicheremo con Rel, Fun e Cos le immagini di
queste funzioni. L'insieme Rel contiene i simboli di relazione, Fun i simboli di
funzione e Cos i simboli di costante : supporremo che questi insiemi di simboli
non abbiano elementi in comune. La funzione ar : Rel [ F un ! ! assegna
ad ogni simbolo di relazione e di funzione un numero naturale detto arieta del
simbolo e parleremo quindi di simboli funzionali e relazionali n-ari. I simboli di
relazione 1-ari sono detti anche simboli di predicato. Se e un tipo, deniamo
struttura di tipo una coppia A = (A; I ), dove A e un insieme non vuoto, detto
dominio della struttura, e I e una funzione, detta interpretazione , che assegna
ad ogni simbolo di relazione una relazione su A, ad ogni simbolo di funzione una
funzione su A e ad ogni simbolo di costante una costante di A, ossia un elemento
di A, in modo che le arieta dei simboli di relazione e di funzione corrispondano
a quelle delle relazioni e funzioni loro assegnate. In altri termini:
1. per ogni simbolo relazionale n-ario, I (Ri) An,
2. per ogni simbolo funzionale n-ario, I (Fj ) : An ! A,
3. per ogni simbolo di costante, I (ck ) 2 A.
La restrizione a strutture con dominio non vuoto e essenziale. Se ammettessimo
strutture con dominio vuoto dovremmo modicare la logica classica, nella quale
l'esistenza di almeno un oggetto e formalmente dimostrabile (si veda il paragrafo 4.6). In alcune trattazioni i simboli di costante sono eliminati a favore di
simboli di funzioni 0-arie, dato che una funzione 0-aria su A consiste nella scelta
di un individuo di A. Scriveremo RAi al posto di I (Ri) per semplicita e per
sottolineare il legame con la struttura A. Lo stesso dicasi per simboli di funzione e di costante. Adotteremo la notazione (A; fRAi gi2I ; fFjAgj 2J ; fcAk gk2K )
per denotare la struttura (A,I ), senza indicare il tipo e la funzione arieta in
modo esplicito. Quando relazioni, funzioni e costanti sono in numero nito, ci
limiteremo ad elencarle, dopo il dominio, in un'unica successione. A volte scriveremo semplicemente R invece di RA , quando non ci sia pericolo di confondere
il simbolo di relazione con la relazione stessa. Lo stesso dicasi per i simboli di
funzione e di costante. Puo accadere che il tipo di una struttura non contenga
del tutto simboli, in questo caso la struttura A si riduce a un semplice insieme
A. Se mancano i simboli di funzione e di costante, allora parliamo di struttura
relazionale, se mancano quelli di relazione, parliamo di struttura algebrica.
Ogni tipo da origine a innite strutture di quel tipo, sia perche e possibile
scegliere insiemi diversi come dominio dell'interpretazione, sia perche, una volta
scelto un insieme come dominio, esiste una varieta di modi distinti di interpretarvi i simboli del tipo. Sul dominio ! possiamo considerare sia la struttura
relazionale A = (!; A), dove A e la relazione di minore o uguale, sia la struttura relazionale B = (!; B ), dove B e la relazione \x divide y". Avremo
2.2. Iso e monomorsmi
35
dunque 2 A 3 e non 2 B 3. La scelta di adottare il simbolo invece di R
e dettata solo dal fatto che suggerisce l'idea di un ordine parziale, ma solo
A e la \vera" relazione di minore o uguale. Sempre su ! possiamo denire
sia la struttura algebrica A = (!; S A ; 0A), dove S A e la funzione successore
e 0A il numero zero, sia la struttura algebrica B = (!; S B ; 0B ), dove S B e la
funzione elevamento al quadrato e 0B il numero 2. Avremo dunque S A (0A) = 1
e S B (0B ) = 4. In linea di principio l'interpretazione di un simbolo del tipo non
e soggetta ad alcun vincolo, tranne il rispetto delle arieta, quindi non bisogna
lasciarsi fuorviare dall'aspetto di simboli come +, e 0, che possono ricevere
interpretazioni che nulla hanno da spartire con somma, minore o uguale e zero.
La distinzione tra R e RA, tra un simbolo e la sua interpretazione, e particolarmente utile quando il discorso verte su strutture dierenti in cui lo stesso
simbolo riceve interpretazioni diverse, altrimenti la distinzione puntigliosa tra
i simboli e le loro interpretazioni appesantisce eccessivamente il discorso. Ci
sara quindi consentito adottare la notazione (P (A); \; [; ;; ;; A) per quella
che formalmente e una struttura di tipo = (;; fFigi23; fck gk22; ar) dove
ar(F0 ) = ar(F1) = 2 e ar(F2 ) = 1. Il lettore dovrebbe essere in grado, ogni volta
che in seguito verra presentata una struttura in modo informale, di ricostruirne
la presentazione rigorosa e di individuarne il tipo.
Per convincersi della duttilita del concetto di struttura puo essere utile cercare di analizzare in termini di strutture varie realta concrete della nostra esperienza, individuando prima gli elementi dell'insieme coinvolto, quindi le funzioni
e le relazioni che li legano. E' sorprendente quanto di ogni specica situazione
possa essere travasato in una struttura: piu la nostra analisi sara dettagliata,
maggiore sara il numero delle costanti, delle funzioni e delle relazioni coinvolte
nella rappresentazione.
2.2 Iso e monomorsmi
Gli individui che appartengono al dominio di una struttura non sono tanto caratterizzati da una loro sostanza, quanto dai rapporti che li legano agli altri
individui: un individuo e cio che e solo in virtu delle relazioni che lo legano
agli altri. Quindi se una struttura e ottenuta da un'altra semplicemente sostituendo gli individui del dominio della prima con altri, e tuttavia mantenendo
inalterato il loro comportamento rispetto a relazioni e funzioni, non la si dovra
considerare come qualcosa di essenzialmente diverso dalla prima. Sulla base
di questa osservazione possiamo concepire l'essenza di una struttura come cio
che e invariante rispetto a questo tipo di sostituzione, ossia la forma generale
dei rapporti in cui entrano tali individui in virtu delle funzioni e delle relazioni
della struttura. La sostanza degli individui che la compongono diviene un fatto
accidentale, un aspetto del tutto marginale della realta. Questo punto di vista
da origine a un nuovo tipo di sostanza e porta in primo piano il linguaggio, mediante il quale vengono rappresentati i rapporti tra gli individui della struttura,
come strumento di individuazione della natura profonda degli oggetti.
Per chiarire questo punto di vista consideriamo la struttura A = (A; ) dove
36
Capitolo 2. Strutture
A = P(fa; b; cg) e e la relazione di inclusione, e la struttura B = (B; j) dove
B = f1; 2; 3; 5; 6; 10;15;30g e j la relazione \divide". Adottando la rappresentazione introdotta nel paragrafo 1.4 per gli insiemi parziali, le due strutture
possono essere ragurate nel modo seguente:
fa; b; cg
; @@
;
@
;
fa; bg fa; cg fb; cg
@@; @@;
;@ ;;@
;
fag
fbg
fcg
@@
;
;
@;;
30
; @@
;
; 10 @15
6
@@; @@;
;@ ;;@
;
2
3
5
@@
;
;
@1;
Deniamo ora una biiezione ' : A ! B che associ ad ogni punto di A il punto
omologo di B. E evidente allora che, per ogni x; y 2 A, x y sse '(x)j'(y):
due insiemi sono inclusi l'uno nell'altro sse il numero che e immagine del primo
divide il numero che e immagine del secondo. Comunque si scelga un oggetto in
A, le sue relazioni con gli oggetti di A si rispecchiano esattamente nelle relazioni
che la sua immagine in B intrattiene con le immagini in B degli altri oggetti di
A. Che cosa distingue le due strutture? Solo la natura degli oggetti del dominio,
ma non la forma dei rapporti che gli oggetti intrattengono fra di loro. Si osservi
che nel passaggio da A a B sono conservati anche i rapporti negativi, oltre a
quelli positivi: il fatto chefbg * fa; cg si riette in 3 - 10.
Consideriamo un altro esempio in cui le strutture in gioco contengono funzioni e costanti : sia C = (P (A); \; [; ;; A) dove A = fa; bg e \ e [ sono le
usuali operazioni di intersezione e unione, e sia D = (B; MCD; mcm; 1; 6) dove
B = f1; 2; 3; 6g e MCD e mcm sono rispettivamente le operazioni di \massimo
comun divisore" e \minimo comune multiplo". (Si noti che le due strutture
hanno lo stesso tipo dato che sono costituite entrambe da due funzioni binarie e
da due costanti.) Deniamo ora una biiezione : P(A) ! B ponendo (;) = 1,
(fag) = 2, (fbg) = 3, (fa; bg) = 6. Le due tabelle seguenti rappresentano
le funzioni \ e MCD:
MCD 6 3 2 1
\ fa; bg fag fbg ;
fa; bg fa; bg fag fbg ;
6
6 3 2 1
fag fag fag ; ;
3
3 3 1 1
fbg fbg ; fbg ;
2
2 1 2 1
;
;
; ; ;
1
1 1 1 1
Si noti che gli elementi della seconda tabella sono ottenuti dagli elementi omologhi della prima mediante l'applicazione di . Lo stesso si verica per le due
tabelle seguenti, che rappresentano rispettivamente [ e mcm:
2.2. Iso e monomorsmi
[
fa; bg
fag
fbg
;
fa; bg fag fbg
;
fa; bg fa; bg fa; bg fa; bg
fa; bg fag fa; bg fag
fa; bg fa; bg fbg fbg
fa; bg fag fbg
;
37
mcm 6 3 2 1
6 6 6 6 6
3 6 3 6 3
2 6 6 2 2
1 6 3 2 1
Cio signica che se si sostituiscono gli insiemi coi numeri, secondo il criterio
fornito da , intersecare e come calcolare il massimo comun divisore, riunire e
come calcolare il minimo comune multiplo. In altri termini, per ogni x; y 2 P (A)
(x \ y) = MCD( (x); (y)) e (x [ y) = mcm( (x); (y)):
Il tipo di rapporto tra strutture illustrato dagli esempi precedenti si puo vedere come un trasferimento di forma da una struttura all'altra, ossia come un
morsmo. In questo paragrafo studieremo alcuni dei principali tipi di morsmi: si tratta di relazioni fra strutture la cui importanza trascende l'algebra,
se si pensa a quante delle nostre modalita conoscitive siano catalogabili come
metafore, come \riconoscere che qualcosa e, sotto certi aspetti, anche qualcosa
d'altro", a quante conoscenze mirino a stabilire qualche tipo di \identita di
struttura". Per prima cosa sottolineiamo che si parla di morsmi solo fra strutture del medesimo tipo, infatti le strutture di tipo , per quanto diversi possano
essere i loro domini, sono accomunate dal fatto di contenere solo relazioni, funzioni e costanti descrivibili coi simboli di e cio ci permette di individuare in
esse le relazioni, le funzioni e le costanti corrispondenti, ossia denotate dal medesimo simbolo. Quindi, se A e B sono due strutture di tipo e R e un simbolo
relazionale di , le relazioni RA e RB sono corrispondenti. In modo analogo
parleremo di funzioni e di costanti corrispondenti. Gli oggetti corrispondenti,
per quanto diversi fra loro, avranno la stessa arieta. Ogni morsmo da A verso
B presenta le caratteristiche seguenti: a) esiste una funzione ' : A ! B che
crea un'immagine del dominio di A entro il dominio di B, b) le immagini degli
individui di A giocano i medesimi ruoli rispetto alle relazioni, alle funzioni e
alle costanti corrispondenti. Cio signica che, identicando RA con RB , F A
con F B , cA con cB e a 2 A con '(a) 2 B, possiamo trasferire la forma di A
entro B. Veniamo ora alla denizione formale. Date A e B dello stesso tipo
= (fRigi2I ; fFj gj 2J ; fck gk2K ), diremo che una biiezione ' : A ! B e un
isomorsmo se per ogni Ri , Fj e ck del tipo , per ogni a0; : : : ; an;1 2 A:
i) RAi (a0 ; : : : ; an;1) sse RBi ('(a0 ); : : : ; '(an;1)),
ii) '(FjA(a0; : : : ; an;1)) = FjB('(a0 ); : : : ; '(an;1)),
iii) '(cAk ) = cBk .
La struttura A e isomorfa a B se esiste un isomorsmo di A verso B. Se A
e isomorfa a B, lo indichiamo scrivendo A ' B. E' facile vericare che la
relazione di isomorsmo fra strutture di tipo e una relazione di equivalenza,
ossia e riessiva, simmetrica e transitiva, quindi l'insieme di tutte le strutture di
tipo puo essere ripartito in classi di equivalenza di strutture isomorfe tra loro.
38
Capitolo 2. Strutture
Ai ni del nostro discorso strutture isomorfe sono considerate come la stessa
struttura, quindi ogni volta che parleremo di A in realta il discorso varra per
tutte le strutture della classe di equivalenza di A rispetto a '. Il lettore dovrebbe
ritornare agli esempi precedenti e vericare che ' e sono eettivamente degli
isomorsmi, rispettivamente, tra A e B e tra C e D. Nel primo caso occorrera
vericare la i), mentre nel secondo caso occorrera vericare la ii) e la iii). (Lo
schema della ii) si riproduce in modo piu evidente, se scriviamo \(x; y) invece
di x \ y e [(x; y) invece di x [ y.) L'esempio seguente dovrebbe chiarire come le
costanti contribuiscano a costituire quella \forma" che deve essere conservata nei
morsmi. Se A = (!; <; cA) e B = (! ;f0g; <; cB ), l'esistenza di un isomorsmo
dipende dall'interpretazione della costante c. Se cA e cB sono il medesimo
oggetto, per esempio il numero 1, non esiste isomorsmo tra A e B. Se esistesse
dovrebbe valere '(cA ) = cB . Come scegliere ora '(0)? Comunque si ponga
'(0) = n, dovra essere n > 1 e questo impedisce che la relazione 0 <A cA sia
conservata da ', dato che non potra valere '(0) <B cB . Per avere isomorsmo
occorre che cA e cB giochino il medesimo ruolo rispetto alla relazione denotata
da <, quindi se interpretiamo cA come 1, cioe come secondo elemento di A,
occorre che cB sia 2, il secondo elemento di B. A questo punto la funzione
'(n) = n + 1 puo connettere gli elementi di A a quelli di B in modo che le
relazioni siano conservate.
Se nella denizione di isomorsmo richiediamo solo che ' sia iniettiva (e non
necessariamente suriettiva), otteniamo il concetto di monomorsmo . Diremo
che A e immergibile in B se esiste un monomorsmo di A verso B. Se ' : A
! B e un monomorsmo, possiamo utilizzare ' per creare una nuova struttura
C di dominio '[A] nel modo seguente: per ogni x0; : : : ; xn;1 2 '[A] deniamo
1. RC (x0; : : : ; xn;1) sse RA (';1 (x0); : : : ; ';1 (xn;1)),
2. F C (x0 ; : : : ; xn;1) = '(F A (';1 (x0); : : : ; ';1(xn;1))),
3. cC = '(cA ).
Talvolta indicheremo C con '[A] per sottolineare che si tratta di una struttura
indotta da '. E immediato vericare che C e dello stesso tipo di A e B, e che '
e un isomorsmo tra A e C : quindi ogni monomorsmo ' : A ! B permette di
ritagliare in B una struttura isomorfa ad A.
Date due strutture B e C del medesimo tipo, diremo che C e sottostruttura
di B, in simboli C B, se C B e per ogni simbolo di relazione R, di funzione
F e di costante c,
1. RC e la restrizione a C n di RB , ossia RC = C n \ RB ,
2. F C e la restrizione a C n di F B , ossia F C = F B C n,
3. cC = cB .
I due teoremi seguenti illustrano i rapporti tra monomorsmo, isomorsmo e
sottostruttura e permettono di concepire il concetto di monomorsmo come
generalizzazione di quello di sottostruttura.
2.2. Iso e monomorsmi
39
Teorema 2.2.1 La funzione ' : A ! B e un monomorsmo sse esiste una
struttura C tale che ' e un isomorsmo tra A e C e C B.
La prima implicazione si dimostra ponendo C = '[A], la struttura indotta
da ' tramite le 1)-3) precedenti. Si verica facilmente che C e sottostruttura di B. Per la seconda, osserviamo che se ' : A ! C e un isomorsmo
e C B, allora C B e ' e una funzione iniettiva da A verso B. Dimo-
striamo che e un monomorsmo. Abbiamo infatti RA(a0 ; : : : ; an;1) se e solo se
RC ('(a0 ); : : : ; '(an;1)), perche ' e un isomorsmo, e RC ('(a0); : : : ; '(an;1))
se e solo se RB ('(a0); : : : ; '(an;1)), perche RC e la restrizione di RB a '[A].
Per quanto riguarda le funzioni,
'(F A(a0 ; : : : ; an;1)) = F C ('(a0 ); : : : ; '(an;1))
= F B ('(a0 ); : : : ; '(an;1));
essendo ' un isomorsmo e F C la restrizione di F B a '[A]. Per quanto riguarda
le costanti, '(cA ) = cC = cB .
Corollario 2.2.2 A B sse iA : A ! B e un monomorsmo.
Per il teorema precedente, iA e un monomorsmo sse esiste una struttura C
tale che iA : A ! C e un isomorsmo e C B. Ma poiche il monomorsmo e
l'identita, C coincide con A.
Non tutti i sottoinsiemi del dominio di una struttura A costituiscono il dominio di una sottostruttura di A. Se B A pretende di essere il dominio di
una sottostruttura di A, allora B non deve essere vuoto e deve essere chiuso
rispetto alle funzioni di A. (Ricordiamo che un insieme B A e chiuso rispetto
a una funzione n-aria f se per ogni n-pla x0 ; :::; xn;1 di elementi di B vale
f(x0 ; :::; xn;1) 2 B:) Solo cos, infatti, possiamo denire F B come la restrizione
di F A alle n-ple di B. Mancando la chiusura, la restrizione risulterebbe indenita per qualche n-pla di elementi di B e non sarebbe quindi una funzione.
Inoltre B deve contenere tutte le costanti di A, perche solo cos possiamo denire cB = cA: Se consideriamo le costanti come funzioni 0-arie, quest'ultima
condizione si riduce alla chiusura.
Supponiamo, ad esempio, che A sia (Z; +A ; ;A) e che sia ! = X. E' chiaro
che X non puo essere il dominio di una sottostruttura di A dato che non e
chiuso rispetto a ;A . E' vero che possiamo sempre denire una funzione 2-aria
f simile alla sottrazione ponendo
A
n) se n m
f(m; n) = ; (m;
0
altrimenti.
Ma allora la struttura B = (!; +B ; ;B ), dove ;B e f, non e sottostruttura
di A perche ;B non coincide con la restrizione di ;A alle coppie di elementi di
!. Ad esempio, ;A (1; 2) = ;1 mentre ;B (1; 2) = 0. Se A e (Z; +A), allora !,
essendo chiuso rispetto alla somma,e il dominio di una sottostruttura. Problemi
analoghi possono sorgere con le costanti. Se A e (!; +A; 0A) allora ! ; f0g e
40
Capitolo 2. Strutture
chiuso rispetto alle funzioni di A, ma non ne contiene le costanti. Comunque si
denisca una struttura B = (! ; f0g; +B ; 0B ), possiamo ottenere che +B sia la
restrizione di +A a B, ma non possiamo avere 0B = 0A . Le relazioni, invece,
non pongono problemi di questo tipo: per ogni B A e ogni relazione n-aria
RA su A, e sempre possibile denire RB come la restrizione di RA a B n , dato
che RA \ B n e sempre una relazione su B. (Anche ; e una relazione su B.)
Tuttavia, se X A non e il dominio di una sottostruttura di A, e sempre
possibile estenderlo quanto basta per renderlo tale. Innanzitutto osserviamo che,
sotto opportune condizioni, possiamo introdurre il concetto di intersezione di
strutture. Data una famiglia non vuota di struttureTfAi gi2I , se le varie Ai sono
tutte sottostrutture
della stessa A di tipo e se fAig 6= ;, allora possiamo
T
denire fAigi2I come la struttura B di tipo tale che
T
1. B = fAigi2I ,
2. RB (b0; :::; bn;1) sse RA(b0 ; :::; bn;1),
3. F B (b0 ; :::; bn;1) = F A(b0 ; :::; bn;1),
4. cB = cA .
Verichiamo che le condizioni precedenti deniscono eettivamente una struttura. Il primo punto stabilisce il dominio, che risulta essere non vuoto, il secondo
stabilisce che le relazioni di B sono semplicemente la restrizione a B delle relazioni di A. Il terzo punto e piu delicato, perche occorre vericare che, per
ogni b0; : : : ; bn;1 2 B, il valore di F A per tale argomento sia ancora in B.
Poiche b0; : : : ; bn;1 appartengono a B, appartengono anche ad ogni Ai e quindi
ogni Ai contiene il valore di F A per l'argomento b0 ; : : : ; bn;1. D'altra parte
ogni Ai e sottostruttura di A e quindi F A (b0 ; : : : ; bn;1) coincide sempre con
F A (b0; : : : ; bn;1). Ne segue che quest'ultimo appartiene ad ogni Ai e quindi a
B. Le stesse considerazioni valgono per il quarto punto. E chiaro allora che B
e una struttura ed inoltre e sottostruttura di ogni Ai , e quindi di A.
Siamo ora in grado diTdenire, per ogni B A, B 6= ;, la sottostruttura
generata da B in A come fC : C A; B C g. La denizione e corretta, dato
che la famiglia di strutture in questione non e vuota, perche contiene almeno A,
e inoltre l'intersezione dei domini delle varie C non e vuota, poiche ognuno deve
includere B 6= ;. Dalla denizione risulta immediatamente che la sottostruttura
generata da B in A e anche la minima sottostruttura di A che includa B ed
e quindi ottenuta estendendo B quanto basta per ottenere un insieme chiuso
rispetto alle funzioni di A e contenente le costanti di A.
Ci sono due casi limite di sottostruttura generata da B in A. Nel primo, il
dominio della sottostruttura generata coincide con B: in questo caso B era il
sostegno adatto per una sottostruttura di A senza che fosse necessario aggiungere nulla. Nel secondo, il dominio della sottostruttura generata e A: in questo
caso si sono dovuti aggiungere tutti gli elementi di A ; B per ottenere una sottostruttura. In questo secondo caso diremo che B e un insieme di generatori
per A.
i
i
2.2. Iso e monomorsmi
41
Consideriamo, ad esempio, la struttura A = (!; S A ). Per ogni B !,
la sottostruttura generata da B in A ha come dominio l'insieme dei numeri
naturali maggiori o uguali al minimo di B. Se A = (!; S A ; 0A), per ogni B !
la sottostruttura generata da B coincide con A poiche dovra contenere lo zero
ed essere chiusa rispetto alla funzione successore. Quindi una struttura puo
avere diversi insiemi di generatori: in quest'ultimo esempio ogni sottoinsieme
del dominio e un insieme di generatori.
Esercizio 2.2.1 Si dimostri che ogni struttura (A; ), dove e un ordine parziale, e isomorfa a una struttura (B; ) dove e l'inclusione insiemistica. (Si
associ ad a 2 A l'insieme fb : b ag.)
Esercizio 2.2.2 Si determini se A e immergibile in B, se A ' B, se A B in
ognuno dei casi seguenti:
A = (!; ) e B = (Z; ),
A = (!; +; ) e B = (Z; +; ),
A = (!; +; ) e B = (Z; ; +);
A = (!; +; 0) e B = (!; ; 1).
Esercizio 2.2.3 Si determini se A e immergibile in B quando
1. A= (!; ; ; 1) e B= (!; ; +; 0).
2. A =(! ; f0g; ; ; 1) e B= (!; ; +; 0).
3. A =(! ; f0g; ; 1) e B =(!; +; 0).
Esercizio 2.2.4 Sia A = (P(fa; bg; \; [) e B = (P (fa; b; cg; \; [). Si dimostri
che A B. Supponiamo che A0 e B0 siano ottenute aggiungendo alle strutture
precedenti l'operazione di complemento: si dimostri che A0 6 B0 .
Esercizio 2.2.5 Si dimostri che la relazione A ' B e di equivalenza e che la
relazione A B e un ordine parziale.
Esercizio 2.2.6 Deniamo R(A; B) sse A e immergibile in B. Si dimostri che:
1.
2.
3.
4.
1. R e riessiva e transitiva ma non antisimmetrica;
2. R(A; B) e R(B; A) non implica A ' B. (Si considerino Q e Q+ con .)
Esercizio 2.2.7 (Questo esercizio richiede alcuni risultati di aritmetica cardi-
nale.) Sia A un insieme di cardinalita innita . Si determini il numero di
strutture distinte di dominio A (vale a dire strutture ottenute con dierenti
interpretazioni dei simboli del tipo) nei casi seguenti:
1. = (fcg)
[]
42
Capitolo 2. Strutture
2. = (fck gk2K )
3. = (fF0 g)
4. = (fFj gj 2J )
5. = (fR0g)
6. = (fRi gi2I )
[jK j ]
[2]
[2+jJ j ]
[2]
[2+jI j ]
Esercizio 2.2.8 Sia j j = supfjI j; jJ j; jK jg. Se e il cardinale di A ed e
innito, si dimostri che esistono al piu 2supf;j jg strutture non isomorfe di tipo
e dominio A.
2.3 Omomorsmi
Il concetto di omomorsmo si ottiene da quello di monomorsmo lasciando cadere la richiesta di iniettivita della funzione. Quindi l'uguaglianza '(x) = '(y)
e compatibile sia con x = y sia con x 6= y, mentre x = y implica necessariamente '(x) = '(y). Questo comportamento della relazione di identita, per
cui a punti identici devono corrispondere immagini identiche mentre immagini
identiche possono provenire da punti distinti, e esteso a tutte le relazioni della
struttura e si esprime nella prima condizione della denizione seguente che e
un indebolimento della corrispondente condizione nella denizione di monomorsmo. Date due strutture A e B dello stesso tipo, diremo che una funzione
' : A ! B e un omomorsmo se per ogni Ri, Fj e ck del tipo , per ogni
a0 ; : : : ; an;1 2 A:
i) se RAi (a0; : : : ; an;1) allora RBi ('(a0 ); : : : ; '(an;1)),
ii) '(FjA(a0; : : : ; an;1)) = FjB ('(a0); : : : ; '(an;1)),
iii) '(cAk ) = cBk .
Diremo che ' e un omomorsmo forte se e possibile sostituire la i) con la condizione seguente che coincide con la condizione corrispondente nella denizione
di monomorsmo:
i') RAi (a0; : : : ; an;1) sse RBi ('(a0); : : : ; '(an;1)).
Se A e B sono strutture algebriche, ossia sono prive di relazioni, la distinzione
tra omomorsmo e omomorsmo forte non ha piu luogo e diremo semplicemente
che ' e un omomorsmo se verica le condizioni ii) e iii). Se A e B sono ordini
parziali, un omomorsmodi A verso B e una funzione ' : A ! B tale che x A y
implica '(x) B '(y). Nella gura seguente ' e un esempio di omomorsmo
tra ordini parziali, ma non e un omomorsmo forte:
43
2.3. Omomorsmi
e
; @@
;
@d
;
c
@@
;
;
@b;
'(e)
'(c); '(d)
a
'(a); '(b)
Come esempio di omomorsmo tra strutture algebriche consideriamo le due
strutture A = (P(A); \; [; A; ;) e B = (P(B); \; [; B; ;) dove B A e la
funzione ' : P (A) ! P(B) denita ponendo '(X) = X \ B per ogni X A.
Verichiamo che ' conserva le operazioni e le costanti:
'(X \ Y ) = (X \ Y ) \ B = (X \ B) \ (Y \ B) = '(X) \ '(Y );
'(X [ Y ) = (X [ Y ) \ B = (X \ B) [ (Y \ B) = '(X) [ '(Y );
'(A) = A \ B = B;
'(;) = ; \ B = ;:
Mentre iso e monomorsmi forniscono immagini che sono copie esatte del
dominio, l'immagine fornita dall'omomorsmo, proprio perche fornita da una
semplice funzione, e costituita da oggetti che possono essere visti come rappresentanti di classi di equivalenza di individui del dominio. Nel paragrafo dedicato
alle relazioni di equivalenza abbiamo visto che ad ogni relazione di equivalenza
su A e associato un insieme quoziente A= i cui elementi sono esattamente
le classi di equivalenza degli elementi di A. Se immaginiamo che A sia l'insieme
degli esseri umani e la relazione \x e nato nello stesso anno di y", allora gli
elementi di A= sono le classi di tutti gli esseri umani nati nel medesimo anno.
Il passaggio da A a A= e del tipo molti-uno: molti individui vengono radunati
sotto un unico aspetto e da essi si astrae un nuovo tipo di individuo, la classe di
equivalenza. Supponiamo ora che A sia il dominio di una struttura A. Ci si puo
chiedere se i rapporti che valgono fra gli elementi di A, stabiliti dalle funzioni
e dalle relazioni di A, sono estendibili a rapporti tra le classi di equivalenza in
modo che la struttura A induca una struttura dello stesso tipo su A= . Ad
esempio, se A e l'insieme degli esseri umani e tra gli elementi di A e stabilita
la relazione \x e piu vecchio di y", e possibile estendere questa relazione a una
relazione R tra classi di equivalenza denita ponendo [x]R[y] sse x e piu vecchio
di y? La cosa e sensata, dato che se x e piu vecchio di y, allora anche tutti gli
elementi di [x] sono piu vecchi degli elementi di [y], quindi il comportamento
degli elementi delle classi di equivalenza e omogeneo rispetto alla relazione R.
D'altra parte non e sempre lecito questo passaggio alle classi di equivalenza.
Consideriamo la relazione \x ama y". Non e detto che, se x ama y, anche tutti
44
Capitolo 2. Strutture
gli esseri umani nati nello stesso anno di x amino tutti gli esseri umani nati
nello stesso anno di y, quindi questa relazione non e estendibile a A=. Analogo
discorso si puo fare per le funzioni. Cerchiamo ora di ssare le caratteristiche di
una relazione e di una funzione estendibile alle classi di equivalenza. Diremo che
una relazione binaria e una congruenza su A se e una relazione di equivalenza
su A e inoltre, per ogni funzione F A e ogni relazione RA , se ai bi per ogni
i < n, allora
1. F A(a0 ; : : : ; an;1) F A(b0 ; : : : ; bn;1),
2. RA (a0 ; : : : ; an;1) implica RA (b0; : : : ; bn;1).
Si osservi che, essendo simmetrica, nella 2) possiamo sostituire \implica" con
\sse". Ogni congruenza su A induce una struttura su A= nel modo seguente.
Deniamo struttura quoziente di A modulo la struttura B dello stesso tipo
di A avente dominio B = A= e tale che, per ogni simbolo di costante c, di
funzione F, di relazione R,
1.
2.
3.
cB = [cA],
F B ([a0 ]; : : : ; [an;1]) = [F A(a0; : : : ; a ; n ; 1)],
RB ([a0]; : : : ; [an;1]) sse RA(a0 ; : : : ; an;1).
E immediato vericare che le funzioni e le relazioni di B risultano ben denite
sulle classi di equivalenza proprio perche e una congruenza. Solitamente si
indica B con A=.
La caratteristica fondamentale della congruenza, vale a dire l'essere compatibile con le relazioni e le funzioni di A, rende possibile un trasferimento di
struttura da A verso la struttura quoziente A=. Per ogni congruenza su A
deniamo una funzione ' : A ! A= ponendo ' (a) = [a].
Teorema 2.3.1 Se e una congruenza su A, allora ' e un omomorsmo
forte suriettivo da A verso A=.
Semplichiamo la notazione ponendo A= = B. Per quanto riguarda le
relazioni,
RA(a0 ; : : : ; an;1) sse RB ([a0]; : : : ; [an;1])
sse RB (' (a0 ); : : : ; ' (an;1 )):
Per quanto riguarda le funzioni,
'(F A(a0 ; : : : ; an;1)) = [F A(a0 ; : : : ; an;1)]
= F B ([a0]; : : : ; [an;1])
= F B (' (a0 ); : : : ; ' (an;1 )):
Per quanto riguarda le costanti, ' (cA ) = [cA ] = cB .
2.3. Omomorsmi
45
Abbiamo visto che il risultato di una congruenza, cioe il passaggio a una
struttura quoziente, e sempre ottenibile come immagime omomorfa della struttura di partenza, poiche A= coincide con ' [A]. Mostriamo ora che ogni immagine omomorfa e ottenibile quozientando la struttura di partenza con un'opportuna congruenza. Ad ogni funzione ' : A ! B e associata una relazione
binaria ' su A denita ponendo x ' y sse '(x) = '(y).
Teorema 2.3.2 Se ' : A ! B e un omomorsmo forte, allora ' e una
congruenza su A.
Dato che = e una relazione di equivalenza, anche ' lo e. Supponiamo che
ai ' bi per ogni i < n, e quindi che '(ai ) = '(bi ). Poiche ' e un omomorsmo,
per ogni simbolo funzionale F
'(F A (a0 ; : : : ; an;1)) = F B ('(a0); : : : ; '(an;1))
= F B ('(b0); : : : ; '(bn;1))
= '(F A (b0; : : : ; bn;1)):
Quindi F A(a0; : : : ; an;1) ' F A(b0 ; : : : ; bn;1). Poiche ' e un omomorsmo
forte, per ogni simbolo relazionale R abbiamo
RA (a0; : : : ; an;1) implica RB ('(a0 ); : : : ; '(an;1))
implica RB ('(b0 ); : : : ; '(bn;1))
implica RA (b0; : : : ; bn;1):
Si osservi che l'ultimo passaggio richiede che ' sia forte.
Teorema 2.3.3 Se ' : A ! B e un omomorsmo forte suriettivo, esiste un
isomorsmo tra A=' e B.
Per il teorema precedente ' e una congruenza su A e quindi possiamo
considerare la struttura quoziente A= ' . Come abbiamo visto nel teorema
1.4.3, la funzione : A=' ! B denita ponendo ([a]) = '(a) e una biiezione.
Dimostriamo che e anche un isomorsmo. Per brevita poniamo C = A= ' ,
abbiamo allora
(F C ([a0]; : : : ; [an;1])) = ([F A(a0 ; : : : ; an;1)])
= '(F A(a0 ; : : : ; an;1))
= F B ('(a0 ); : : : ; '(an;1))
= F B ( [a0]; : : : ; [an;1])
Per quanto riguarda le relazioni abbiamo
RC ([a0 ]; : : : ; [an]) sse RA (a0 ; : : : ; an;1)
sse RB ('(a0 ); : : : ; '(an;1))
sse RB ( [a0 ]; : : : ; [an;1]):
La situazione e illustrata dalla gura seguente, dove indica la funzione da A
verso A=' che associa ad ogni a 2 A la sua classe [a] modulo ' .
46
Capitolo 2. Strutture
AQ
- A=R
QQ
'Q
QQs ?
B
' = Congruenze e omomorsmiforti sono due aspetti diversi di una medesima realta.
La congruenza eettua una costruzione col materiale fornito dalla struttura di
partenza, organizzandolo in classi di equivalenza in modo tale che si conservino
funzioni e relazioni della struttura, mentre l'omomorsmo produce un'immagine
\esterna" alla struttura data, ma i teoremi precedenti garantiscono l'equivalenza
tra queste due operazioni che riproducono, nelle sue linee fondamentali, la procedura di astrazione. Procedere per astrazione conduce alla formazione di nuovi
enti, le classi di individui identicabili rispetto alle caratteristiche da cui si
astrae, ma l'astrazione si rivela particolarmente feconda dal punto di vista conoscitivo quando la classicazione riproduce alcuni aspetti strutturali rilevanti
della realta da cui eravamo partiti, cioe quando funzioni e relazioni vigenti tra
le classi rispecchiano un'analoga strutturazione dei dati iniziali. E questo e, a
piacere, omomorsmo o congruenza.
Esercizio 2.3.1 Si dimostri che, nel caso degli ordini, un omomorsmo forte e
addirittura un monomorsmo.
2.4 Reticoli e algebre di Boole
In questo paragrafo presenteremo due classi di strutture particolarmente importanti nello studio della logica: i reticoli e le algebre di Boole. Gli assiomi che
le individuano sono ispirati dalle proprieta che caratterizzano le operazioni insiemistiche fondamentali e la genesi di tali assiomi fornisce un esempio di come
si costituiscano le moderne teorie assiomatiche. Se consideriamo i sottoinsiemi
di W come oggetti di studio, possiamo dapprima considerare fondamentali le
operazioni di unione e intersezione e quindi organizzare P(W) nella struttura
R(W ) = (P(W); \; [) di tipo (^; _), dove ^, _ sono simboli funzionali binari. Il
tipo permette una prima rozza classicazione delle strutture: scegliendo il tipo
dichiariamo con quale linguaggio intendiamo studiare la realta, quali rapporti
fra gli oggetti siamo disposti a considerare come fondamentali. Esistono tuttavia innite strutture di tipo (^; _) che nulla hanno a che vedere con gli insiemi,
ad esempio (Z; +; ). Se vogliamo caratterizzare meglio il nostro oggetto di studio, possiamo isolare alcune proprieta fondamentali delle funzioni di R(W). Si
ottiene cosi il seguente insieme L di assiomi:
i) x ^ y = y ^ x e x _ y = y _ x (commutativita),
ii) (x ^ y) ^ z = x ^ (y ^ z) e (x _ y) _ z = x _ (y _ z) (associativita),
iii) (x ^ y) _ y = y e (x _ y) ^ y = y (assorbimento),
2.4. Reticoli e algebre di Boole
47
Se A e una struttura di tipo , diremo che tali assiomi sono veri in A se,
interpretando ^ come ^A e _ come _A, otteniamo equazioni soddisfatte da ogni
possibile sostituzione delle variabili x, y, z con oggetti di A. Se tutti gli assiomi
di L sono veri in A, diremo che A e un modello degli assiomi L, ossia che A
e un reticolo . Si verica facilmente che R(W) e un reticolo: basta rimpiazzare
^ con \ e _ con [. Quando W = 1 otteniamo un reticolo particolarmente
importante, che indichiamo con 2, poiche il suo dominio e P (1), ossia P (f;g) =
f;; f;gg = f0; 1g = 2. Non tutti i reticoli hanno domini costituiti da insiemi
strutturati dalle usuali operazioni insiemistiche: basta considerare l'algebra A
in cui A = fx : x divide 30g, ^A = MCD, _A = mcm. Lasciamo al lettore il
compito di vericare che Z non e un modello dell'insieme di assiomi L.
Per ogni proposizione riguardante i reticoli, deniamo come la proposizione ottenuta sostituendo in i simboli ^ con _ e _ con ^. Diremo che
e la duale di . Si verica facilmente che se e un assioma di L anche
lo e. Cio signica che se A = (A; ^A; _A) e un reticolo, anche la struttura
A = (A; _A; ^A) lo e. Possiamo allora giusticare il seguente principio di dualita : ogni volta che abbiamo dimostrato che la proposizione e vera in ogni
reticolo, sappiamo che anche e vera in ogni reticolo. (Basta osservare che
per ipotesi a vera in ogni reticolo e quindi anche in A , ma allora e vera
in A = A.) Tale principio dimezza l'impegno dimostrativo: tutte le volte che
abbiamo dimostrato un teorema , vale anche il teorema duale .
E possibile esprimere la relazione X Y senza fare riferimento agli elementi
di X e di Y : infatti, se deniamo una relazione XRY sse X \ Y = X, si dimostra
facilmente che R coincide con . Se ora ci collochiamo in un reticolo qualsiasi,
che cosa possiamo dire in generale di una relazione denita ponendo x y
sse x ^ y = x? Il signicato di e legato a quello di ^ che a sua volta dipende
solamente dagli assiomi di reticolo, ma tali assiomi sono sucienti a dimostrare
che e un ordine.
Teorema 2.4.1 In ogni reticolo valgono le equazioni seguenti:
1. x ^ x = x e x _ x = x (idempotenza),
2. x ^ y = x sse x _ y = y.
1. Usando gli assiomi i) e iii): x ^ x = x ^ (x _ (y ^ x)) = x. L'altra equazione
si ottiene per dualita.
2. Usando l'assioma iii), se x ^ y = x allora x _ y = (x ^ y) _ y = y. Usando
gli assiomi i) e iii), se x _ y = y allora x ^ y = x ^ (x _ y) = (y _ x) ^ x = x.
Teorema 2.4.2 La relazione x y sse x ^ y = x e un ordine.
Per il punto 1) del teorema precedente e riessiva. Per l'assioma i) e
antisimmetrica: infatti da x y e y x segue x ^ y = x e y ^ x = y, ma per
la commutativita x ^ y = y ^ x. Per l'assioma ii) e transitiva. Infatti da x y
e y z otteniamo x ^ y = x e y ^ z = y. Sostituendo e usando l'associativita
otteniamo x z, dato che x = x ^ y = x ^ (y ^ z) = (x ^ y) ^ z = x ^ z:
48
Capitolo 2. Strutture
Teorema 2.4.3 Le operazioni ^ e _ sono monotone rispetto a , vale a dire
se x y allora x ^ z y ^ z e x _ z y _ z .
Se x y allora x ^ y = x e quindi (x ^ y) ^ z = x ^ z. Utilizzando
commutativita, associativita e idempotenza abbiamo allora (x ^ z) ^ (y ^ z) =
(x ^ y) ^ z = x ^ z, da cui x ^ z y ^ z. In modo analogo si procede con _.
Quindi a ogni reticolo possiamo associare un insieme ordinato avente lo stesso
dominio e strutturato da una relazione d'ordine x y che puo essere denita
indierentemente da x ^ y = x o da x _ y = y. Torniamo ora alla realta
insiemistica da cui siamo partiti per ricavarne altre signicative proprieta di \
e di [. Osserviamo che vale la distributivita di \ su [ e da essa ricaviamo
l'assioma
iv) x ^ (y _ z) = (x ^ y) _ (x ^ z) (distributivita di ^ su _).
Diremo che una struttura A e un reticolo distributivo se in essa valgono gli
assiomi i)-iv). Il teorema seguente mostra che non e necessario assumere anche
la distributivita duale.
Teorema 2.4.4 In ogni reticolo, se vale iv) allora vale anche iv) e viceversa.
Utilizzando iv), iii) e i) otteniamo
(x _ y) ^ (x _ z) =
=
=
=
((x _ y) ^ x) _ ((x _ y) ^ z)
x _ (z ^ (x _ y))
x _ (z ^ x) _ (z ^ y)
x _ (z ^ y):
Assumendo iv) si ottiene iv) con una dimostrazione duale.
Tutti gli esempi di reticolo introdotti nora sono distributivi, ma vedremo
in seguito che non tutti i reticoli lo sono. La distributivita e comunque una proprieta che caratterizza fortemente la realta insiemistica che ha ispirato i nostri
assiomi, e infatti possibile dimostrare il seguente teorema di rappresentazione:
ogni reticolo distributivo e isomorfo a una sottostruttura di R(W), per un'opportuna scelta di W (si veda, ad esempio, [Davey-Priestley 90, teorema 10.3]).
Un altro aspetto importante di P (W) che possiamo tradurre negli assiomi
e la presenza di un insieme massimo e di un insieme minimo rispetto a ,
rispettivamente W e ;. Per ogni X 2 P(W ) vale X W e ; X e tali
proprieta di W e di ; si esprimono in termini di [ e di \ mediante le equazioni
X [ W = W e X \ ; = ;. Se espandiamo il tipo dei reticoli con l'aggiunta di
due simboli di costante 1 e 0, possiamo riprodurle nei due assiomi seguenti:
M) x _ 1 = 1,
m) x ^ 0 = 0.
2.4. Reticoli e algebre di Boole
49
Chiameremo reticolo limitato ogni reticolo in cui valgano anche gli assiomi M) e
m). Si vede immediatamente che in ogni reticolo limitato A gli elementi 0A e 1A
sono rispettivamente il minimo e il massimo rispetto alla relazione associata
al reticolo. Tutti gli esempi di reticoli che abbiamo mostrato possono essere
espansi a reticoli limitati, con l'introduzione di due costanti denite in modo da
rendere veri gli assiomi di massimo e minimo, ma vedremo in seguito che non
tutti i reticoli sono limitati. Nel caso dei reticoli limitati, la duale di una
proposizione si ottiene scambiando ^ con _, _ con ^, 0 con 1 e 1 con 0.
L'ultimo aspetto di P(W) che vogliamo rispecchiare negli assiomi e l'esistenza del complemento. Se pensiamo P(W ) strutturato come l'algebra dell'insieme potenza B(W ), vediamo che per ogni X 2 P (W) esiste un elemento di
P(W ), indicato con ;X, tale che X \ ;X = ; e X [ ;X = W. Se espandiamo
il tipo dei reticoli limitati con l'aggiunta di un simbolo funzionale unario :,
possiamo tradurre le equazioni precedenti nei seguenti assiomi:
v) x ^ :x = 0 e x _ :x = 1.
Indichiamo con BA l'insieme degli assiomi i)-v) e chiamiamo algebra di Boole
una struttura A che sia modello degli assiomi BA. Quindi un'algebra di Boole
e un reticolo distributivo in cui vale l'assioma v). Si verica facilmente che
B(W ) e un'algebra di Boole: basta interpretare ^ su \, _ su [, : su ;, 0 su
;, 1 su W. Quando W = f;g otteniamo un'algebra di Boole particolarmente
importante, che indichiamo ancora con 2, come il reticolo di due elementi. Il
reticolo (A; MCD; mcm), dove A = fx 2 ! : x divide 30g, si puo espandere a
un'algebra di Boole denendo :A(x) = 30=x, 0A = 1, 1A = 30. Anche per
le algebre di Boole vale un teorema di rappresentazione analogo a quello dei
reticoli distributivi : ogni algebra di Boole e isomorfa a una sottostruttura di
B(W ), per un'opportuna scelta di W (si veda, ad esempio, [Davey-Priestley 90,
teorema 10.4]). Il primo punto del teorema seguente mostra che ogni algebra di
Boole e un reticolo limitato, poiche 0 e 1 soddisfano le condizioni poste dagli
assiomi m) e M). D'ora in poi daremo le dimostrazioni in forma abbreviata,
senza segnalare tutti gli assiomi o i teoremi precedenti utilizzati.
Teorema 2.4.5 Le proposizioni seguenti valgono in ogni algebra di Boole:
1. x ^ 0 = 0 e x _ 1 = 1, ossia 0 x e x 1,
2. x ^ 1 = x e x _ 0 = x,
3. x = :y sse x _ y = 1 e x ^ y = 0,
4. x = ::x,
5. :(x ^ y) = :x _ :y e :(x _ y) = :x ^ :y (leggi di De Morgan),
6. x ^ y z sse x :y _ z ,
7. x y sse :x _ y = 1.
50
Capitolo 2. Strutture
1. Usando gli assiomi v), ii) e l'idempotenza (teorema 2.4.1): x ^ 0 =
x ^ (x ^ :x) = (x ^ x) ^ :x = x ^ :x = 0. L'altra equazione si ottiene per
dualita.
2. Usando gli assiomi v), i) e iii): x ^ 1 = x ^ (x _ :x) = (:x _ x) ^ x = x.
L'altra equazione si ottiene per dualita.
3. Se x = :y allora x _ y = :y _ y = 1, utilizzando i) e v); x ^ y = 1 si ottiene
per dualita. Assumiamo ora x _ y = 1 e x ^ y = 0. Utilizzando gli assiomi v),
iv), i) e il punto 2):
x =
=
=
=
=
=
=
=
=
x^1
x ^ (y _ :y)
(x ^ y) _ (x ^ :y)
0 _ (x ^ :y)
(y ^ :y) _ (x ^ :y)
(:y ^ y) _ (:y ^ x)
:y ^ (y _ x)
:y ^ 1
:y:
4. Per il punto precedente, basta vericare che x _ :x = 1 e x ^ :x = 0, il
che segue da v).
5. Basta dimostrare la prima equazione, perche la seconda si ottiene per
dualita. Per dimostrare che :x _ :y = :(x ^ y) e suciente dimostrare, per il
punto 3), che (:x _ :y) _ (x ^ y) = 1 e (:x _ :y) ^ (x ^ y) = 0. La prima e
giusticata da
(:x _ :y) _ (x ^ y) = (:x _ :y _ x) ^ (:x _ :y _ y)
= 1^1
= 1
e la seconda e giusticata da
(:x _ :y) ^ (x ^ y) = (:x ^ x ^ y) ^ (:y _ x ^ y)
= 0^0
= 0:
6. Se x ^ y z allora (x ^ y) _ :y z _ :y per il teorema 2.4.3. Ma
x x _ :y = (x _ :y) ^ (y _ :y) = (x ^ y) _ :y
per la distributivita, l'assioma v) e il punto 2) e quindi x :y _ z. Se x :y _ z
allora x ^ y (:y _ z) ^ y per il teorema 2.4.3. Ma
(:y _ z) ^ y (:y ^ y) _ (z ^ y) = z ^ y y
2.4. Reticoli e algebre di Boole
51
per la distributivita, l'assioma v) e il punto 2).
7. Per il punto 2) l'asserzione x y equivale a 1 ^ x y, che equivale a
1 :x _ y per il punto 6), che inne equivale a 1 = :x _ y per il punto 1).
Consideriamo ora P(W ) sotto un altro punto di vista, isolando come fondamentale la relazione di inclusione tra insiemi: la struttura che si ottiene
e l'insieme ordinato (P (W); ). Ora il tipo contiene solo il simbolo relazionale
binario e nel linguaggio associato al tipo possiamo formulare gli assiomi che
caratterizzano la relazione di inclusione come ordine parziale:
a1 ) x x (riessivita),
a2 ) se x y e y x allora x = y (antisimmetria),
a3 ) se x y e y z allora x z (transitivita).
Indichiamo con OP l'insieme degli assiomi a1)-a3). Tali assiomi fanno si che
in ogni modello A di OP la relazione A sia un ordine e quindi A sia un
insieme ordinato. Anche per gli insiemi ordinati vale un principio di dualita
analogo a quello dei reticoli, denendo la duale di una proposizione come
la proposizione ottenuta da sostituendo con . Per giusticare questo
principio basta osservare che ogni insieme ordinato A = (A; ) si trasforma in
un altro insieme ordinato A = (A; ) tale che vale in A sse vale in A . Se
adottiamo la rappresentazione graca degli insiemi ordinati del paragrafo 1.4,
la rappresentazione di A si ottiene capovolgendo quella di A.
Gli assiomi OP non colgono pero un aspetto importante di P(W ): la possibilita di formare intersezioni e unioni. Il fatto che ora il linguaggio non disponga
di simboli funzionali binari per rappresentare \ e [ non signica che non si possano esprimere, nei termini di , le proprieta che caratterizzano X \ Y e X [ Y .
Iniziamo da \ e osserviamo che X \ Y X e X \ Y Y . Inoltre, tra gli
insiemi Z che sono simultaneamente inclusi in X e in Y , l'intersezione X \ Y
e il massimo. Per quanto riguarda [ valgono le proprieta duali: X X [ Y
e Y X [ Y e inoltre, tra gli insiemi Z che includono simultaneamente X e
Y , l'unione X [ Y e il minimo. Da questa analisi possiamo ricavare gli assiomi
seguenti:
a4 ) per ogni x, y esiste uno z tale che: z x e z y e per ogni w, se w x e
w y allora w z;
a5) per ogni x, y esiste uno z tale che: x z e y z e per ogni w, se x w e
y w allora z w.
Un insieme ordinato in cui valgano gli assiomi a4) e a5 ) e detto reticolo, per
ragioni che risulteranno chiare dal teorema seguente. Supponiamo che A sia
un insieme ordinato. Se X A, diremo che un elemento a di A e un conne
superiore di X se, per ogni x 2 X, vale x a. Sia X + l'insieme dei conni
superiori di X: se X + ha un minimo, tale elemento e detto minimo conne
superiore, o supremum, di X ed e denotato da sup X. Dualmente, deniamo
conne inferiore di X un elemento a di A tale che, per ogni x 2 X, valga a x.
52
Capitolo 2. Strutture
Indichiamo con X ; l'insieme dei conni inferiori di X: se X ; ha un massimo,
tale elemento e detto massimo conne inferiore, o inmum, di X ed e denotato
da inf X. Poiche il massimo e il minimo di un insieme, se esistono, sono unici,
ne segue che inf X e sup X, se esistono, sono unici. Quindi in una struttura che
renda veri gli assiomi a1)-a5 ) possiamo usare inf fx; yg e supfx; yg come funzioni
binarie: gli assiomi a4 ) e a5 ) garantiscono l'esistenza del valore, l'antisimmetria
l'unicita.
Teorema 2.4.6 Se A = (A; ) e modello degli assiomi a1 )-a5 ) allora possiamo
espandere il suo tipo con l'aggiunta di due simboli funzionali binari ^ e _
in modo tale che, interpretando ^ su inf fx; yg e _ su supfx; yg, la struttura
(A; ^A ,_A) soddis gli assiomi L.
La commutativita di ^ ossia inf fx; yg = inf fy; xg dipende dal fatto che
fx; yg = fy; xg. La commutativita di _ si ottiene per dualita. Per dimostrare
l'associativita di ^ ossia
inf fx; inffy; z gg = inf finf fx; yg; z g
osserviamo innanzitutto che inf fx; inffy; z gg = inf fx; y; z g: basta vericare che
fx; inf fy; z gg; = fx; y; z g;. Analogamente si dimostra che inf finf fx; yg; z g =
inf fx; y; z g. L'associativita di _ si ottiene per dualita. Dimostriamo che l'assioma (x ^ y) _ y = y e vero, ossia che supfinf fx; yg; yg = y. Osserviamo che
inf fx; yg y e quindi y appartiene a finf fx; yg; yg+ . D'altra parte, per ogni
z 2 finf fx; yg; yg+ vale y z e quindi y e il minimo tra i conni superiori di
finf fx; yg; yg.
Useremo quindi il termine reticolo per indicare sia una struttura per f^; _g
in cui valgano gli assiomi L, sia una struttura per fg in cui valgano gli assiomi
a1 )-a5), lasciando al contesto il compito di determinare quale delle due accezioni
del termine stiamo usando.
e
d
@
r
;@@
;
;
@@
;
a @ e
c
;
@@ ;;
@;
r
r
r
r
b
r
@
@@
d
J
JJ
c
;
JJ ;;
J;
r
a
r
r
r
b
Spesso conviene pensare un reticolo come un particolare insieme ordinato, perche
in tal modo possiamo darne una rappresentazione graca intuitiva. La gura
precedente presenta due reticoli nei quali non vale l'assioma di distributivita.
Nel primo e ^ (a _ c) 6= (e ^ a) _ (e ^ c) nel secondo d ^ (a _ c) 6= (d ^ a) _ (d ^ c).
2.5. Denizioni induttive
53
Esercizio 2.4.1 Si dimostri che ogni catena (insieme totalmente ordinato) e
un reticolo. Si fornisca quindi un esempio di reticolo non limitato.
Esercizio 2.4.2 Se A = (A; ^; _) e B = (B; ^; _) sono due reticoli e ':A ! B
e un omomorsmo, allora ' conserva anche la relazione d'ordine associata ai
reticoli. Se A = (A; ) e B = (B; ) sono due reticoli e ':A ! B e un
omomorsmo, allora ' in genere non conserva le operazioni inf e sup.
Esercizio 2.4.3 Espandiamo un reticolo con due costanti 0 e 1 che soddisno
i due assiomi seguenti: i) x ^ 1 = x, ii) x _ 0 = x. Si dimostri che il reticolo cosi
ottenuto e limitato. Viceversa, si dimostri che in ogni reticolo limitato valgono
i) e ii).
Esercizio 2.4.4 Sia 2 il reticolo R(1) = (f0; 1g; \; [). Si dimostri che tutti i
reticoli con due elementi sono isomor a 2. Si dimostri un risultato analogo per
le algebre di Boole.
Esercizio 2.4.5 Sia a un elemento ssato di A. Si dimostri che la funzione
f : P (A) ! 2 denita ponendo, per ogni X A,
a 2= X
f(X) = 01 se
se a 2 X
e un omomorsmo da B(A) verso 2, dove 2 e l'algebra di Boole con due elementi.
Esercizio 2.4.6 In ogni reticolo limitato A deniamo complemento di un elemento a un elemento a0 tale che a ^ a0 = 0 e a _ a0 = 1. Diremo che un reticolo
e complementato se e limitato e ogni elemento ha un complemento. Si dimostri
che in un reticolo complementato e distributivo ogni elemento ha un unico complemento. Quindi in ogni reticolo complementato e distributivo si puo espandere
a un'algebra di Boole.
2.5 Denizioni induttive
Tutti gli oggetti del nostro discorso sono insiemi, quindi ogni volta che si denisce un oggetto si tratta della denizione di un insieme. Fino a questo punto
le denizioni adottate sono state sempre del tipo seguente: dato un insieme A
e una proprieta P, deniamo fx : P(x)g come l'insieme degli elementi di A che
godono di P . Diremo che l'insieme in questione e denito esplicitamente sulla
base dell'insieme A dalla proprieta P . Ad esempio, l'insieme dei numeri pari
puo essere denito sulla base dell'insieme dei numeri naturali ! considerando
la proprieta \esiste un n 2 ! tale che n + n = x". Cerchiamo ora di immaginare l'insieme dei pari come il frutto di un processo generativo ne fornisca gli
elementi in successione. Non e dicile immaginare una legge di generazione che
operi all'interno di !: si parte da 0 e quindi si applica la funzione (x) = x + 2
ripetutamente ottenendo f0; (0); ( (0)); : : : g. E immediato riconoscere che
54
Capitolo 2. Strutture
abbiamo ottenuto l'insieme dei numeri pari, anche se non e altrettanto immediato giusticare questo tipo di denizione. Gli elementi dell'insieme possiedono
una descrizione uniforme, ma siamo ben lontani dall'avere una denizione esplicita, cioe una proprieta goduta da tutti e soli gli elementi dell'insieme.
Sottolineiamo che quando si parla di \processo generativo" non si intende
necessariamente che in virtu di questo processo si porti qualcosa all'esistenza.
Esistono infatti due modi profondamente diversi di considerare le denizioni
degli oggetti matematici: si puo ritenere che esse creino gli oggetti che deniscono, che nell'atto della denizione si conferisca ad essi l'esistenza, oppure si
puo pensare che le denizioni si limitino a segnare i conni di un insieme di
oggetti e che quindi abbiano un compito puramente descrittivo. Noi adottiamo
questo secondo punto di vista e quindi assumiamo che sia gli oggetti che verranno a costituire un insieme, sia l'insieme stesso di questi oggetti, preesistano
alla denizione e che quest'ultima sia solo un modo per individuare tale insieme
e sottoporlo all'attenzione. Nell'esempio precedente i numeri pari gia esistono
come elementi dell'insieme !. Se proprio vogliamo vedere qualcosa che si crea,
questo e il \bordo" dell'insieme dei pari che viene ritagliato in !, ma cio non e
strettamente necessario, dato che l'insieme dei pari esiste gia come elemento di
P (!), l'insieme potenza di ! che contiene tutti i sottoinsiemi di !. Alle denizioni non attribuiamo dunque alcuna facolta creatrice: tutto esiste n dall'inizio
ed e proprio nel momento iniziale, cioe negli assiomi della teoria degli insiemi,
che si stabilisce che cosa debba esistere.
Vediamo ora di cogliere gli aspetti piu generali di questo nuovo modo di
denire insiemi. Innanzitutto supponiamo che ogni denizione di questo tipo
sia formulata in riferimento a una data struttura A: cio signica che essa avra
il compito di denire un sottoinsieme del dominio A di A e che nel fare cio
potra utilizzare solo funzioni e costanti della struttura A. Vi sono inoltre due
elementi della denizione precedente che possono essere generalizzati: possiamo
ammettere come punto di partenza un sottoinsieme qualsiasi di A, senza necessariamente limitarci a quelli unitari, e possiamo ammettere che il processo
generativo sia sostenuto dall'insieme F delle funzioni e delle costanti di A, piuttosto che da un'unica funzione. Chiameremo allora denizione induttiva in A
una coppia (B; F ) tale che B A, B 6= ; e F e l'insieme delle funzioni e delle
costanti di A. Diremo che un insieme X A e (B; F )-chiuso se:
B X,
cA 2 X, per ogni cA 2 F ,
F A(x0 ; : : : ; xn;1) 2 X, per ogni F A 2 F e x0 ; : : : ; xn;1 2 X.
Diremo inne che l'insieme
\
IB;F = fX A : X e (B; F )-chiusog
1.
2.
3.
e l'insieme denito per induzione da (B; F ) in A. Gli insiemi (B; F )-chiusi
coincidono con le sottostrutture di A che includono B e quindi IB;F e il dominio
2.5. Denizioni induttive
55
della sottostruttura generata da B in A. Consideriamo, ad esempio, la struttura
A = (!; F A), dove F A (n) = n + 2, e poniamo B = f0g e F = fF Ag: l'insieme
IB;F denito per induzione dalla coppia (B; F ) e l'insieme dei pari.
L'insieme IB;F , proprio perche e denito induttivamente da (B; F ) in A,
possiede una particolare struttura alla quale possiamo fare appello quando vogliamo dimostrare che ogni suo elemento gode di una particolare proprieta P .
Il teorema seguente convalida un principio di induzione che garantisce la possibilita di dimostrare per induzione.
Teorema 2.5.1 Per ogni denizione induttiva (B; F ) in A e per ogni proprieta
P A, per dimostrare che IB;F P basta dimostrare che P e (B; F )-chiuso.
Poiche IB;F e l'intersezione di tutti gli insiemi (B; F )-chiusi, e incluso in
ogni insieme (B; F )-chiuso e quindi, in particolare, in P .
Se A = (!; ) allora A = IB;F , con B = f0g e F = fg, e in questo caso
il principio di induzione coincide con l'induzione sui naturali del paragrafo 1.5.
Come primo esempio di dimostrazione per induzione, presentiamo un teorema
che ci sara utile nel paragrafo seguente.
Teorema 2.5.2 Supponiamo che A sia generata da B A. Se D e una struttura dello stesso tipo di A e h e h0 sono due morsmi da A verso D che coincidono sui generatori, ossia tali che h(b) = h0(b) per ogni b 2 B , allora h = h0 .
Sia K = fx 2 A : h(x) = h0 (x)g. Se dimostriamo che K = A, allora
per ogni x 2 A avremo h(x) = h0(x) e quindi h = h0 . Poiche per ipotesi
A = IB;F , dove F e l'insieme delle funzioni e delle costanti di A, possiamo
procedere per induzione mostrando che K e (B; F )-chiuso. Verichiamo che
B K: cio deriva immediatamente dal fatto che h e h0 coincidono per ipotesi
sui generatori. Verichiamo che cA 2 K, per ogni costante di A. Poiche h e h0
sono morsmi
h(cA ) = cD = h0(cA ):
Supponiamo ora che F A sia una funzione n-aria di A e mostriamo che, se ogni
ai appartiene a K, per i < n, allora F A(a0 ; : : : ; an;1) 2 K. A tale scopo basta
vericare che, essendo h e h0 morsmi,
h(F A (a0; : : : ; an;1)) = F D (h(a0 ); : : : ; h(an;1))
= F D (h0 (a0 ); : : : ; h0(an;1))
= h0 (F A(a0 ; : : : ; an;1)):
La seconda riga deriva dal fatto che a0 ; : : : ; an;1 2 K.
Il punto piu delicato delle dimostrazioni per induzione e il passo induttivo,
ossia la dimostrazione dell'implicazione \se ai 2 P , per ogni i < n, allora
F A(a0 ; : : : ; an;1) 2 P " che garantisce l'estendibilita di P da B a tutto IB;F .
Per dimostrare che F A(a0 ; : : : ; an;1) appartiene a P puo accadere che occorra
assumere non solo che P sia goduta da ogni ai , ma che P sia goduta anche da
56
Capitolo 2. Strutture
tutti gli elementi di IB;F che sono \piu semplici" di F A(a0 ; : : : ; an;1), rispetto a
un criterio di semplicita pressato. Dimostriamo che questo modo di procedere
e lecito. Innanzitutto conveniamo di misurare la semplicita degli elementi di
un insieme qualsiasi A mediante una funzione ' : A ! !. Vedremo in seguito
che esistono diversi tipi di misure, per il momento chiameremo genericamente
livello il numero naturale assegnato da ' agli elementi di A. Deniamo Ai =
fx : '(x) ig per ogni i 2 !, l'insieme di tutti gli elementi di A aventi livello
i. Evidentemente gli insiemi Ai formano una catena.
Lemma 2.5.3 Sia ' : A ! ! e P A. Se A0 P e, per ogni i 2 !, Ai P
implica Ai+1 P , allora A = P .
Consideriamo l'insieme di numeri naturali N = fx : Ax P g. Per induzione
su ! possiamo concludere
S che N = ! e quindi, per ogni i 2 !, Ai P. Quindi
A P dato che A = fAi gi2! . Poiche P A possiamo concludere P = A.
Diremo che un elemento a 2 A e P; '-completo se, per ogni x 2 A, '(x) <
'(a) implica P(x). Diremo che una proprieta P e '-progressiva se ogni elemento
P; '-completo gode di P. In altri termini, se P e '-progressiva accade che
quando un elemento x di A e tale che tutti gli elementi piu semplici di x godono
di P, anche x gode di P , dove maggiore semplicita signica livello minore.
Possiamo allora convalidare il principio induttivo seguente.
Teorema 2.5.4 Se ' : A ! ! e P e '-progressiva, allora A = P .
Dimostriamo che A0 P. Se a 2 A0 allora '(a) = 0 e quindi '(x) < '(a)
e falsa per ogni x 2 A. Allora e banalmente vero che '(x) < '(a) implica
P (a). Cio dimostra che a e P; '-completo e poiche P e '-progressiva a 2 P.
Mostriamo ora che, per ogni i 2 !, Ai P implica Ai+1 P . Per il lemma
precedente potremo allora concludere che A = P . Sia Ai P e sia a 2 Ai+1 .
Poiche Ai Ai+1 si danno due casi. Caso 1), a 2 Ai e allora per ipotesi
induttiva a 2 P. Caso 2), a 2 Ai+1 ; Ai , allora '(a) = i + 1. Per ogni x 2 A,
'(x) < '(a) implica x 2 P, perche '(x) < '(a) implica '(x) i e quindi
x 2 Ai . Allora a e P; '-completo e poiche P e '-progressiva per ipotesi, a 2 P.
Quindi in entrambi i casi Ai+1 P.
Esercizio 2.5.1 Supponiamo che A abbia dominio !. Si verichi che IB;F e:
! ; f0g quando B = f1g e F = f+g, ! quando B = f0g e F = f; +g, f0g
quando B = f0g e F = f+g. Se F = fg, qual e il minimo B tale che IB;F = !?
2.6 Denizioni per recursione
Se A e generata da B e la struttura D e dello stesso tipo di A, potremmo
cercare di denire una funzione h : A ! D nel modo seguente. Fissiamo
il comportamento di h sugli elementi di B, vale a dire supponiamo data una
funzione g : B ! D e poniamo h(b) = g(b) per ogni b 2 B. Quanto agli
57
2.6. Denizioni per recursione
a 2 A ; B, poniamo
D
a = cA
h(a) = cF D (h(a0 ) : : :h(an;1)) se
se a = F A(a0 ; : : : ; an;1).
Diremo allora che h e denita per recursione. Che cosa garantisce che abbiamo
veramente denito una funzione da A verso D, ossia che ad ogni elemento di A
abbiamo associato un unico valore? Se a = cA e a 2 B abbiamo cD = h(a) =
g(a), e nulla garantisce che cD sia uguale a g(a). Inoltre h(F A(a0 ; : : : ; an;1))
sembra denito in modo circolare nei termini dei vari h(ai ): chi ci assicura che
abbiamo denito qualcosa? Il teorema di recursione che dimostreremo in questo
paragrafo mostra che e possibile denire per recursione, quando A soddisfa
particolari condizioni, ma prima di presentare la dimostrazione del teorema
conviene riesaminare le denizioni induttive.
Sia A una struttura, B A e F l'insieme delle funzioni e delle costanti di
A. (Non e necessario supporre che IB;F coincida con A.) Nel paragrafo precedente abbiamo sottolineato che le denizioni induttive non creano gli oggetti
che deniscono, e vero tuttavia che gli elementi di IB;F sono ottenuti da B con
un processo di generazione nel quale intervengono le funzioni e le costanti di F .
Il processo di generazione di un a 2 IB;F puo essere rappresentato mediante un
albero etichettato ' : ! A, ossia una funzione ' che assegna ad ogni nodo
dell'albero un oggetto di A come etichetta. Richiederemo che il vertice di sia etichettato da a e che i nodi terminali siano etichettati dagli elementi di B e
dalle costanti di F che intervengono nel processo. Se 2 non e un nodo terminale e se 0 ; : : : ; n;1 sono i suoi successori, allora ricevera come etichetta
F A(a0 ; : : : ; an;1), dove ai e l'etichetta di i per i < n. Un albero etichettato di
questo genere e detto (B; F )-costruzione di a, o semplicemente costruzione, se e
chiaro dal contesto qual e la coppia (B; F ) a cui si fa riferimento. Supponiamo,
ad esempio, che sia A = (!; GA; F A; cA), dove GA e il successore, F A la somma,
cA lo zero, e poniamo B = f1g. Possiamo visualizzare alcune costruzioni nel
modo seguente:
cA
GA (cA )
1
GA (1)
cA
@@ ;;
@;
1
1
@@ ;;
@;
GA(GA (cA )) F A(GA(1); cA )
F A(1; 1)
Nella gura precedente sono mostrate tre costruzioni di 2: e evidente, quindi,
che un elemento puo avere costruzioni dierenti. Tuttavia, se ci limitiamo a considerare strutture A in cui ogni elemento del dominio ha un'unica costruzione,
allora possiamo sfruttare questa caratteristica di A per denire h : A ! D
58
Capitolo 2. Strutture
per recursione. Dato a 2 A consideriamo l'unica costruzione che lo genera e la
trasformiamo modicandone sistematicamente le etichette nel modo seguente:
i) sostituendo nei nodi terminali b con g(b) e le costanti di A con quelle di D,
ii) utilizzando negli altri nodi le funzioni di D corrispondenti a quelle di A. La
gura seguente illustra questa trasformazione:
b
GA (b)
g(b)
cA
@@ ;;
@;
GD (g(b))
cD
@@ ;;
@;
F A(GA (b); cA)
F D (GD (g(b)); cD )
Deniamo h(a) come l'elemento nel vertice della costruzione trasformata. Nel
caso della gura precedente,
h(F A(GA (b); cA)) = F D (GD (g(b)); cD ):
E evidente che una h cosi denita e un morsmo, mentre il fatto che sia una funzione dipende essenzialmente dall'unicita della costruzione degli elementi della
struttura A.
Il processo mediante il quale si trasforma una (B; F )- costruzione in una
(g[B]; H)-costruzione, dove H e l'insieme di funzioni e costanti di D, e alla
base della dimostrazione del teorema di recursione. La condizione che ogni
elemento di A abbia un'unica costruzione e rimpiazzata dalla richiesta che A
sia generata liberamente da B, ossia che A sia generata da B e che (B; F )
soddis le condizioni seguenti:
1. cA 62 B, per ogni cA 2 F ,
2. cA 6= eA , per ogni cA , eA 2 F tali che c 6= e,
3. Im(F A ) \ B = ;, per ogni F A 2 F ,
4. Im(F A ) \ Im(GA ) = ;, per ogni F A, GA 2 F tali che F 6= G,
5. cA 62 Im(F A ), per ogni cA , F A 2 F ,
6. F A e iniettiva, per ogni F A 2 F .
(E possibile dimostrare che se A e generata liberamente, ogni suo elemento
possiede un'unica costruzione.)
Teorema 2.6.1 Se A e generata liberamente da B A allora, per ogni struttura D dello stesso tipo di A e ogni g : B ! D, esiste un'unico morsmo
h : A ! D che estende g.
2.6. Denizioni per recursione
59
La funzione h che deniremo e un insieme di coppie ordinate incluso in A
D.
Poiche h sara denita per induzione, penseremo A D come il dominio di una
struttura C = A D, detta prodotto cartesiamo di A per B e denita nel modo
seguente. La struttura C ha lo stesso tipo di A e D e inoltre cC =< cA ; cD >
per ogni simbolo di costante c e
F C (< x0; y0 >; : : : ; < xn;1; yn;1 >) =< F Ax; F Dy >
per ogni simbolo di funzione F, dove x 2 An e y 2 Dn . Consideriamo allora la
denizione induttiva (g; F ) in C , dove F e costituito da tutte le funzioni e le
costanti di C e poniamo h = Ig;F . La dimostrazione del fatto che h soddisfa le
condizioni del teorema si articola in quattro punti.
1. Dimostriamo che h e una funzione. Sia K l'insieme degli elementi di A
sui quali h, se e defnita, e univoca:
K = fx 2 A : < x; y >; < x; z >2 h implica y = z g:
Dimostreremo che K e B; F -chiuso e quindi K = A. Poiche per ogni < x; y >
e < x; z > in h vale sempre x 2 A, ne segue che y = z, quindi h e una funzione.
Passiamo ora alla dimostrazione di B; F -chiusura per K.
Dimostriamo che B K. Dobbiamo vericare che se < b; y > e < b; z >
sono in h allora y = z. Se < b; y > e in h si danno i tre casi seguenti: i)
< b; y >2 g e allora y = g(b); ii) < b; y >=< cA; cD >, per qualche simbolo di
costante c, ma allora b = cA , il che e impossibile per il punto 1) della denizione
di struttura generata liberamente; iii) < b; y >=< F Ax; F Dy >, per qualche
simbolo di funzione F e per x 2 An , y 2 Dn , ma allora b = F Ax, il che e
impossibile per il punto 3) della denizione. Analogamente se < b; z > e in h
possiamo dimostrare che z = g(b). Ma allora y = g(b) = z.
Dimostriamo che cA 2 K, per ogni simbolo di costante c. Dobbiamo vericare che se < cA ; y > e < cA ; z > sono in h allora y = z. Se < cA ; y > e in
h si danno i tre casi seguenti: i) < cA ; y >2 g e allora < cA; y >=< b; g(b) >
e quindi cA = b, per qualche b 2 B, ma cio e impossibile per il punto 1) della
denizione; ii) < cA ; y >=< eA ; eD >, per qualche simbolo di costante e, e
quindi cA = eA e y = eD , ma allora c = e per il punto 2) della denizione e
quindi y = eD = cD ; iii) < cA ; y >=< F Ax; F D y >, per qualche simbolo di
funzione F e per x 2 An , y 2 Dn , ma allora cA = F Ax, il che e impossibile per
il punto 5) della denizione. Quindi se < cA ; y > e in h deve essere y = cD .
Analogamente se < cA ; z > e in h deve essere z = cD . Quindi dalla nostra
ipotesi segue y = cD = z.
Dimostriamo che se a 2 K n allora F Aa 2 K. Dobbiamo vericare che
se < F Aa; y > e < F Aa; z > sono in h allora y = z. Se < F Aa; y > e
in h si danno i tre casi seguenti: i) < F A a; y >=< b; g(b) >, per qualche
b 2 B, ma allora F Aa = b e cio e impossibile per il punto 3) della denizione;
ii) < F Aa; y >=< eA ; eD >, per qualche simbolo di costante e, ma allora
F Aa = eA e y = eD , ma cio e impossibile per il punto 5) della denizione;
iii) < F Aa; y >=< GA q; GDr >, dove q 2 Am e r 2 Dm e dove < qi ; ri >
60
Capitolo 2. Strutture
appartiene a h. Allora
F A(a0 ; :::; an;1) = GA (q0; : : : ; qm;1)
da cui segue per il punto 4) della denizione sia F = G sia n = m. Quindi
F A(a0 ; :::; an;1) = F A(q0; : : : ; qn;1)
da cui segue ai = qi per il punto 6) della denizione. Allora anche < ai; ri >
appartiene a h. Poiche F = G e n = m, abbiamo
y = GD (r0 ; : : : ; rm;1) = F D (r0; : : : ; rn;1)
e poiche h(ai) = ri , vale F D (r0; : : : ; rn;1) = F D (h(a0); : : : ; h(an;1)). Abbiamo allora y = F D (h(a0); : : : ; h(an;1)). Se < F A(a); z > e in h otteniamo
analogamente z = F D (h(a0 ); : : : ; h(an;1)) e quindi y = z.
2. Dimostriamo che Dom(h) = A e Im(h) D. E evidente che Im(h)
e inclusa in D. Dimostriamo che A e il dominio di h. A tale scopo basta
dimostrare che Dom(h) e (B; F )-chiuso. Vale B Dom(h), dato che g h e
B = Dom(g). Vale cA 2 Dom(h), dato che < cA ; cD >2 h per ogni simbolo
di costante c. Supponiamo ora che a0 ; : : : ; an;1 2 Dom(h) e dimostriamo che
F A (a) 2 Dom(h). Per ipotesi esistono d0; : : : ; dn;1 2 D tali che ogni < ai ; di >
appartiene a h e quindi anche < F A(a); F A(d) > appartiene a h, poiche h e
(g; F )-chiuso. Ma allora F A (a) appartiene a Dom(h).
3. Dimostriamo h e un omomorsmo. Vale ovviamente h(cA ) = cD . Supponiamo ora che a0 ; : : : ; an;1 2 A, poiche Dom(h) = A esistono d0; : : : ; dn;1 2 D
tali che h(ai ) = di . Poiche h e un insieme (g; F )-chiuso deve contenere anche
< F A(a); F D(d) > e quindi
h(F A (a0; : : : ; an;1)) = F D (d0; : : : ; dn;1) = F D (h(a0) : : :h(an;1)):
4. Inne si dimostra facilmente, utilizzando il teorema 2.5.2, che h e l'unico
omomorsmo da A verso D che estende g.
Gli esempi piu semplici di denizioni per recursione si ottengono utilizzando
la struttura A = (!; A ), dove A = . E evidente che A e generata liberamente
da B = f0g. Se consideriamo la struttura D = (!; D ), dove D = , allora
il teorema 2.6.1 garantisce che per ogni funzione g : f0g ! ! esiste un'unica
funzione ' : ! ! ! tale che
'(0) = g(0) e '((n)) = ('(n)):
Diremo allora che ' e denita per iterazione a partire da e da g.
Il teorema 2.6.1 permette di giusticare anche denizioni piu complesse dell'iterazione, nelle quali il valore '(n+1) dipende non solo dal valore precedente
'(n), ma anche dal livello della recursione, ossia da n. Diremo che una funzione
' : ! ! ! e denita per recursione primitiva da k e : 2 ! ! ! se
'(0) = k e '((n)) = ('(n); n):
61
2.6. Denizioni per recursione
Mentre nell'iterazione abbiamo '(n + 1) = (: : : (0) : : :), dove la funzione
viene applicata n + 1-volte, nella recursione primitiva abbiamo la chiamata in
successione di diverse funzioni, tutte ottenibili come parametrizzazioni di .
Se parametrizziamo la seconda variabile di con dierenti numeri naturali,
otteniamo la successione di funzioni
0(x) = (x; 0); : : : ; n (x) = (x; n); : : :
e possiamo scrivere '(n + 1) = n(: : : 0 (0) : : :). Non si tratta quindi di un'iterazione, ma l'uniformita che sussiste nel passaggio dal calcolo del valore per n
al calcolo del valore per n+1 e suciente per poter aerrare la procedura come
un unico processo, detto recursione primitiva. Il teorema seguente giustica una
forma piu generale di recursione primitiva che ci sara utile in seguito.
Teorema 2.6.2 Per ogni c 2 C e : C ! ! C , esiste una funzione ' : ! ! C
tale che
'(0) = c e '((n)) = ('(n); n):
Diremo che ' e denita per recursione primitiva da c e .
Consideriamo una struttura A = (!; A), dove A = , e una struttura
D = (C !; D ) dove, per ogni x 2 C e ogni n 2 !, D (x; n) = ( (x; n); (n)).
Per il teorema 2.6.1 esiste una funzione : ! ! D tale che
(0) = (c; 0) e (A (n)) = D ((n)):
Osserviamo che (n) = (i20 ((n)); i21 ((n))), dove i20 e i21 sono le funzioni che
danno rispettivamente il primo e il secondo elemento di una 2-pla. Dimostriamo
per induzione su ! il seguente lemma:
i21 ((n)) = n:
Vale infatti i21 ((0)) = i21 (k; 0) = 0. Supponiamo che l'asserto valga per n,
abbiamo allora, ricordando che A = ,
i21 (((n)) = i21 (D ((n))
= i21 (D (i20 ((n)); i21 ((n)))
= i21 ( (i20 ((n)); i21 ((n))); (i21 ((n))))
= (i21 ((n)))
= (n):
A questo punto possiamo denire ' = i20 . Verichiamo che ' soddisfa le
condizioni poste dal teorema. Innanzitutto
'(0) = i20 ((0)) = i20 (c; 0) = c:
62
Capitolo 2. Strutture
Inoltre abbiamo
'((n)) = i20 (((n)))
= i20 (D ((n)))
= i20 (D (i20 ((n)); i21((n)))
= i20 ( (i20 ((n)); i21 ((n))); (i21 ((n))))
= (i20 ((n)); i21 ((n)))
= (i20 ((n)); n)
= ('(n); n);
dove la penultima equazione si ottiene per il lemma e l'ultima per la denizione
di '.
Corollario 2.6.3 Per ogni : C ! C e : C ! C ! C , esiste una funzione
' : ! C ! C tale che, per ogni c 2 C ,
'(0; c) = (c) e '((n); c) = ('(n; c); n; c):
Diremo che ' e denita per recursione primitiva da e .
Fissiamo un elemento qualsiasi c 2 C e con esso parametrizziamo l'ultimo
argomento di ottenendo una funzione c : C ! ! C tale che, per ogni x 2 C
e ogni n 2 !, c (x; n) = (x; n; c). Se siamo in grado di denire una funzione
'c : ! ! C tale che
'c (0) = (c) e 'c ((n)) = c('c (n); n);
allora possiamo dimostrare, per induzione su !, che 'c (n) = '(n; c) e quindi
possiamo usare quest'ultima equazione per denire, al variare di c 2 C, la
' richiesta dal teorema. Ma l'esistenza di 'c si ottiene immediatamente dal
teorema precedente.
Siamo ora in grado di giusticare la seguente denizione ricorsiva della funzione somma:
+(0; m) = m e + ((n); m) = (+(n; m)):
E suciente identicare la del corollario con l'identita i10 e la con i30 . Lasciamo al lettore come esercizio la giusticazione della denizione della funzione
prodotto,
(0; m) = 0 e ((n); m) = +((n; m); m)
assumendo data la funzione somma, e della funzione fattoriale
!(0) = 1 e !((n) = (!(n); (n))
assumendo data la funzione prodotto.
Esercizio 2.6.1 Si dimostri che se A e generata liberamente, allora ogni elemento ha un'unica costruzione.
2.7. Il lemma di Zorn
63
2.7 Il lemma di Zorn
Gli insiemi parzialmente ordinati sono strutture molto diuse ed e spesso importante stabilire se un dato insieme parzialmente ordinato contenga (almeno)
un elemento massimale. Il lemma di Zorn stablisce una condizione molto generale perche un insieme parzialmente ordinato non vuoto A = (A; ) contenga
elementi massimali: e suciente che, per ogni catena K A, valga sup K 2 A.
La condizione si puo anche indebolire a: A contiene un conne superiore, non
necessariamente sup K, per ogni catena K. (Si veda l'esercizio 2.7.1.) Il lemma
di Zorn e un esempio di matematica non costruttiva, poiche stabilisce l'esistenza
di un oggetto, l'elemento massimale, senza che dalla dimostrazione si possano
ricavare informazioni per identicarlo. In eetti il lemma di Zorn e dimostrato
sulla base dell'assioma di scelta della teoria degli insiemi (a cui risulta addirittura equivalente): tale assioma stabilisce che, per ogni insieme A, esiste una
funzione di scelta ' : P (A) ; f;g ! A che sceglie un elemento da ogni sottoinsieme non vuoto di A, ossia tale che, per ogni X A non vuoto, '(X) 2 X.
L'assioma di scelta fu al centro di molte discussioni nei primi decenni del XX
secolo, quando diversi matematici ne sottolinearono il carattere altamente non
costruttivo: quando X era innito, si poteva asserire l'esistenza di una funzione
di scelta senza fornire un criterio per compiere le scelte? In seguito l'assioma fu
accettato da gran parte dei matematici, anche perche si dimostro insostituibile
nella dimostrazione di alcuni importanti risultati tra cui citiamo soltanto, oltre
al lemma di Zorn, il teorema del buon ordinamento: ogni insieme puo essere
bene ordinato.
Diremo che una funzione f : A ! A ha un punto sso se esiste un a 2 A
tale che f(a) = a ed e progressiva se, per ogni a 2 A, a f(a). Deniamo cpo
(da complete partially ordered set ) una struttura A = (A; ; 0) costituita da un
insieme parzialmente ordinato dotato di minimo 0 e tale che, per ogni catena
K A, sup K 2 A. (Ricordiamo che una catena e un insieme totalmente
ordinato.) Otterremo il lemma di Zorn come corollario del seguente teorema
riguardante l'esistenza di punti ssi per funzioni progressive denite su cpo.
Teorema 2.7.1 Se A e un cpo e f : A ! A e progressiva, allora f ha un punto
sso.
Diremo che un insieme X A e f-chiuso se
i) 0 2 X,
ii) f[X] X,
iii) per ogni catena K X, sup K 2 X.
In altri termini, X e f-chiuso se e un sotto-cpo di A chiuso rispetto a f. In
analogia a quanto abbiamo visto a proposito delle denizioni induttive, diremo
che l'insieme
\
Z = fX A : X e f-chiusog
64
Capitolo 2. Strutture
e denito induttivamente da f in A. E facile vericare che Z stesso e f-chiuso e
quindi e il minimo f-chiuso incluso in A. Ogni volta che vorremo dimostrare che
una data proprieta P A e goduta da ogni elemento di Z, bastera dimostrare
che P e f-chiuso, perche in tal caso vale Z P . Se la proprieta sara tale
che P Z, avremo allora Z = P. In particolare dimostreremo che Z e una
catena. Supponiamo per il momento di averlo dimostrato: poiche Z soddisfa la
condizione iii) ed e una catena, sup Z 2 Z, poiche Z soddisfa la condizione ii),
f(sup Z) 2 Z e per la denizione di minimo conne superiore f(sup Z) sup Z.
D'altra parte f e progressiva, quindi sup Z f(sup Z). In conclusione, sup Z e
un punto sso di f.
Resta da dimostrare che Z e una catena ossia che, per ogni x, y 2 Z, vale
x y o y x. Poiche f e progressiva, bastera dimostrare che f(x) y o y x.
Per ogni elemento x 2 Z deniamo l'insieme
Cx = fy 2 Z : x y o y xg
degli elementi confrontabili con x e l'insieme
Zx = fy 2 Z : f(x) y o y xg:
Poiche f e progressiva, Zx Cx . Dimostreremo che Zx = Z, per ogni x 2 Z,
e quindi Z Cx. Da cio si ottiene immediatamente che ogni elemento di Z
e confrontabile con x, per ogni x 2 Z, e quindi Z risulta essere una catena.
Deniamo allora
C = fx 2 Z : per ogni y 2 Z, y < x implica f(y) xg
e dimostriamo in un primo tempo che Zx = Z quando x 2 C. In seguito
dimostreremo che C = Z.
Assumiamo quindi x 2 C. Per dimostrare che Zx = Z bastera dimostrare
che Zx e f-chiuso. i) Vale 0 2 Zx , infatti f(x) 0 o 0 x. ii) Assumiamo
y 2 Zx ossia f(x) y o y x, e dimostriamo che f(y) 2 Zx , ossia f(x) f(y)
o f(y) x. Caso a): f(x) y. Allora f(x) f(y), poiche f e progressiva.
Caso b): y = x. Allora f(x) f(y). Caso c): y < x. In questo caso sfruttiamo
l'ipotesi x 2 C, da cui scende f(y) x. iii) Sia K una catena tale che K Zx ,
allora per ogni k 2 K vale f(x) k o k x. Dobbiamo dimostrare che
sup K 2 Zx , ossia f(x) sup k o sup K x. Caso a): per ogni k 2 K vale
k x, allora sup K x. Caso b): esiste k 2 K tale che f(x) k, allora
f(x) sup K.
Resta dunque da dimostrare che C = Z e ancora una volta, sfruttando il
fatto che Z e denito induttivamente da f, bastera dimostrare che C e f-chiuso.
i) Vale 0 2 C dato che, per ogni y 2 Z, e banalmente vero che y < 0 implica
f(y) 0. (y < 0 e sempre falsa.) ii) Supponiamo w 2 C, ossia che per ogni
y 2 Z, y < w implichi f(y) w. Dobbiamo dimostrare che f(w) 2 C, ossia che,
per ogni y 2 Z, y < f(w) implica f(y) f(w). Assumiamo dunque y < f(w).
Per quanto abbiamo dimostrato in precedenza, sappiamo che se w 2 C, allora
Zw = Z, ossia per ogni y 2 Z, f(w) y o y w. La nostra ipotesi y < f(w)
2.7. Il lemma di Zorn
65
e incompatibile con f(w) y (poiche ne verrebbe y < y), quindi deve valere
l'altra alternativa: y w. Caso a): y = w, allora f(y) f(w). Caso b): y < w.
Poiche per ipotesi w 2 C, abbiamo f(y) f(w). iii) Sia K una catena tale che
K C. Dobbiamo dimostrare che sup K 2 C, ossia per ogni y 2 Z, y < sup K
implica f(y) sup K. Fissiamo dunque y 2 Z tale che y < sup K. Per quanto
abbiamo dimostrato in precedenza sappiamo che se x 2 C allora Zx = Z. Poiche
ogni elemento di K e in C, per ogni k 2 K vale Zk = Z e quindi in particolare
per y vale, per ogni k 2 K, f(k) y o y k. D'altra parte non puo vericarsi
f(k) y per ogni k 2 K, altrimenti avremmo anche k y per ogni k 2 K e
quindi sup K y, contro l'ipotesi y < sup K. Deve quindi esistere un k 2 K
tale che y k. Caso a): y = k. Poiche y < sup K, esistera un k0 2 K tale che
k < k0 (altrimenti, essendo K una catena, avremmo sup K = k = y). Poiche
k0 2 C, da y < k0 ricaviamo f(y) k0 sup K. Caso b): y < k. Poiche k 2 C
abbiamo f(y) k e quindi f(y) sup K.
Teorema 2.7.2 Se (A; ) e parzialmente ordinato non vuoto e per ogni catena
K A vale sup K 2 A, allora ogni funzione progressiva f : A ! A possiede un
punto sso.
Fissiamo un elemento a 2 A e consideriamo B = fx 2 A : a xg. E
immediato vericare che la struttura (B; ; a), ottenuta restringendo a B la
relazione d'ordine parziale denita su A, e un cpo. Deniamo ora una funzione
g : B ! B ponendo, per ogni b 2 B, g(b) = f(b). (Cio e possibile perche f e
progressiva e quindi f(b) 2 B.) Evidentemente g e progressiva anch'essa e, per
il teorema precedente, possiede un punto sso in B che sara anche punto sso
di f.
Corollario 2.7.3 (Zorn) Se (A; ) e parzialmente ordinato non vuoto e per
ogni catena K A vale sup K 2 A, allora A contiene un elemento massimale.
Se A non contiene un massimale, allora per l'assioma di scelta possiamo
denire nel modo seguente una funzione f : A ! A tale che, per ogni a 2 A,
a < f(a). Per ogni a 2 A consideriamo l'insieme Xa = fx 2 A : a < xg: se non
ci sono massimali Xa e sempre diverso dal vuoto. Se ' e una funzione di scelta
che associa ad ogni sottoinsieme di A non vuoto un suo elemento, possiamo
denire f(a) = '(Xa ), per ogni a 2 A. Chiaramente vale a < f(a), ma per il
teorema precedente, essendo f progressiva, f deve avere un punto sso, il che e
assurdo.
Esercizio 2.7.1
1. Si dimostri che ogni insieme parzialmente ordinato (A; ) contiene una
catena massimale. (Si consideri l'insieme (B; ) di tutte le catene in
(A; ) e si dimostri che per esso valgono le ipotesi del lemma di Zorn.)
2. Si dimostri la seguente versione del lemma di Zorn: se (A; ) e un insieme
parzialmente ordinato tale che, per ogni catena K A, A contiene un
66
Capitolo 2. Strutture
conne superiore di K, allora A contiene un elemento massimale. (Si consideri una catena massimale M in A, che esiste per il punto precedente, e si
dimostri che ogni conne superiore di tale catena e un elemento massimale
di A.)
Capitolo 3
Logica enunciativa
3.1 Linguaggio enunciativo
La logica puo essere denita come la teoria dell'inferenza corretta. Un'inferenza e costituita da un insieme di enunciati detti premesse o assunzioni e da
un enunciato detto conclusione. In un'inferenza corretta premesse e conclusione
sono unite dal legame di conseguenza logica: in ogni circostanza in cui accettiamo le premesse, ci sentiamo costretti ad accettare inevitabilmente anche la
conclusione. La logica non si limita a raccogliere e catalogare le inferenze che
sono considerate corrette, ma fornisce soprattutto un'analisi del legame di conseguenza logica, poiche e l'esistenza di questo legame cio che permette di riconoscere un'inferenza corretta. Per denire il concetto di conseguenza logica occorre
stabilire la semantica del linguaggio, ossia bisogna denire in cosa consista il signicato di un enunciato e come il signicato venga attribuito agli enunciati.
Sebbene il signicato sia l'elemento decisivo e si possa ritenere accidentale la sua
espressione linguistica, che puo avvenire in modi diversi in linguaggi diversi o
anche nello stesso linguaggio, inizieremo il nostro studio proprio dal linguaggio.
Quale che sia il mondo dei signicati, esso compare nell'inferenza inevitabilmente attraverso la mediazione del linguaggio: solo cio che viene rappresentato
nel linguaggio puo essere rilevante per l'inferenza.
Immaginiamo di isolare cinque modi fondamentali di connettere enunciati
del linguaggio naturale per formare enunciati piu complessi: \non", \e", \o",
\se : : : allora", \se e solo se". Ciascuno di essi puo essere considerato come
un'operazione avente enunciati come argomenti e valori: operando con \non"
su \Antonio ama Maria" otteniamo l'enunciato \Antonio non ama Maria", operando con \se : : : allora" su \Antonio ama Maria" e su \Antonio ama Sara"
otteniamo \Se Antonio ama Maria allora Antonio ama Sara", e cos via. Naturalmente ci sono nella nostra lingua altri modi di connettere enunciati fra di
loro, ma vedremo in seguito che quelli individuati sono piu che sucienti per il
discorso logico. Poiche sappiamo come costruire enunciati complessi a partire
da enunciati piu semplici, siamo anche in grado di analizzare enunciati com-
68
Capitolo 3. Logica enunciativa
plessi nei loro componenti. Questo processo di analisi si puo spingere no a
un certo punto oltre il quale non puo continuare, e precisamente no a quando
si incontra un enunciato che non e ne una negazione, ne una congiunzione, ne
una disgiunzione, ne una implicazione, ne una equivalenza: tali enunciati sono
detti elementari. La logica enunciativa e caratterizzata dal fatto che il potere
di risoluzione del suo linguaggio non va oltre gli enunciati elementari. Spettera
alla logica predicativa il compito di approfondire il livello dell'analisi valendosi
di un linguaggio che estende quello enunciativo e mette in gioco anche la costituzione interna degli enunciati elementari. L'introduzione di questi due livelli di
analisi logica, nell'ordine in cui vengono presentati, non rispecchia lo sviluppo
storico della logica, che ha seguito invece l'ordine inverso, ma assolve semplicemente una funzione didattica. Iniziamo dalla logica enunciativa perche e piu
semplice della logica predicativa, pur presentando la stessa architettura complessiva: un linguaggio formale, una semantica, un calcolo logico e un teorema
di completezza.
Il primo passo nella costruzione della logica enunciativa consiste nella denizione del linguaggio formale nel quale sara possibile tradurre gli enunciati del
linguaggio naturale. I modi di connettere enunciati che abbiamo isolato, \non",
\e", \o", \se : : : allora", \se e solo se" sono rappresentati nei linguaggi formali
dai simboli :, ^, _, ! e $, detti connettivi logici e denominati rispettivamente
negazione, congiunzione, disgiunzione, implicazione, equivalenza. Nel linguaggio formale che adotteremo ci limiteremo all'insieme di connettivi C = f:; ^; _g
e in seguito dimostreremo che cio non comporta nessuna limitazione delle nostre
facolta espressive. Deniamo quindi linguaggio enunciativo l'insieme L = C [ P,
dove P = fpi : i 2 !g e un insieme di simboli detti variabili enunciative . Linguaggi enunciativi diversi possono essere ottenuti variando C e P. Talvolta ci
si riferisce piu correttamente a L come all'alfabeto del linguaggio, e si riserva
il nome di linguaggio per l'insieme delle formule scritte con i simboli di L, che
intuitivamente corrispondono alle parole o agli enunciati dei linguaggi naturali:
questo abuso di linguaggio e frequente quanto innocuo, dato che nei linguaggi
formali l'insieme delle formule e univocamente determinato dall'alfabeto.
L'insieme delle formule di L e un insieme denito induttivamente, occorre
quindi stabilire la struttura entro cui si realizza la denizione induttiva. Sia E
l'insieme di tutte le successioni nite di elementi di L: gli elementi di E sono
detti espressioni di L. In corripondenza dei connettivi :, ^ e _ deniamo su E
tre funzioni O: , O^ e O_ nel modo seguente:
O: (e) = (:) e;
O^ (e0 ; e1) = (^) e0 e1 ;
O_ (e0 ; e1) = (_) e0 e1 :
Consideriamo inne la struttura E = (E; O^ ; O_ ; O: ) e la denizione induttiva
(B; F ), dove B = P e F = fO^ ; O_ ; O: g. Gli elementi dell'insieme denito
induttivamente F mL sono detti formule o enunciati di L. Ometteremo l'indice
L quando sia chiaro dal contesto. Per abbreviare scriveremo s0 s1 : : :sn invece
di (s0 ; s1 ; : : : ; sn ). Saranno quindi formule espressioni come pi , :pi, ^pi pj . Ad
69
3.1. Linguaggio enunciativo
ogni formula e associata una costruzione che la genera, per esempio
pi
pj
O: (pi)
pi
@ ;;
@@;
O_ (pj ; pi)
@@
;;
;
@@ ;
@;
O^ (O: (pi ); O_ (pj ; pi))
e associata a ^:pi _ pj pi . Vedremo nel paragrafo seguente che le formule sono
generate liberamente e quindi tale costruzione e unica. Espressioni come :, pi:,
pi _ pj non sono formule perche evidentemente non possono essere prodotte da
alcuna costruzione. E chiaro che a ogni nodo di una costruzione e associata una
formula: ciascuna di tali formule e detta sottoformula della formula associata
alla radice.
E tipico di questo linguaggio premettere il connettivo binario invece di interporlo, ottenendo espressioni come _pipj invece di pi _ pj . Questo modo
di procedere, per quanto sembri innaturale, permette di avere un linguaggio
senza parentesi. Infatti, mentre la notazione p0 ^ p1 _ p2 e ambigua, e solo con
le parentesi possiamo specicare se intendiamo parlare di (p0 ^ p1 ) _ p2 o di
p0 ^ (p1 _ p2 ), la notazione fornita dal nostro linguaggio consente di indicare
la prima con _ ^ p0 p1p2 e la seconda con ^p0 _ p1p2 . L'ordine in cui vanno
eettuate le operazioni e espresso dalla disposizione dei simboli, senza far uso
delle parentesi. Lo scopo dell'eliminazione delle parentesi e quello di ottenere un
linguaggio strutturalmente piu semplice, anche se meno facilmente decifrabile.
D'altra parte possiamo continuare a valerci dei servigi delle parentesi nella rappresentazione delle formule introducendo la seguente convenzione notazionale.
Se consideriamo le lettere greche ; ; ; ::: come variabili metalinguistiche per
formule, stabiliamo di rappresentare in generale la formula ^ mediante la
scrittura ( ^ ) e la formula _ mediante la scrittura ( _ ).
Esistono linguaggi enunciativi basati su altri connettivi logici: i connettivi
piu comuni e naturali, oltre a quelli da noi adottati, sono ! e $, rispettivamente
\se...allora...", e \...sse...". Se si vuole sviluppare un linguaggio enunciativo comprendente questi connettivi, basta introdurre tra le funzioni F della denizione
induttiva delle formule anche le operazioni O! e O$ denite in modo analogo
alle precedenti. La scelta di limitarsi a :, ^, e _ ha una duplice giusticazione.
In primo luogo e possibile dimostrare (si veda il teorema 3.4.8) che limitandoci a
loro non ci siamo privati di nulla, nel senso che il nostro linguaggio enunciativo
possiede gia il massimo di espressivita possibile. In secondo luogo, l'adozione di
questi connettivi facilita l'individuazione del rapporto che esiste tra la semantica
70
Capitolo 3. Logica enunciativa
del linguaggio enunciativo e le algebre di Boole. Un altro criterio frequentemente
adottato e quello di minimizzare il numero dei connettivi, in modo da ridurre
il numero dei casi da esaminare nelle dimostrazioni per induzione sulle formule:
in questo caso la scelta piu comune e quella di limitarsi a :, _ oppure a :, !.
D'altra parte, come nel caso delle parentesi, non vogliamo privarci dei servigi dei
connettivi che abbiamo tralasciato, quindi li introduciamo con una convenzione
notazionale, stabilendo di scrivere ( ! ) al posto di (: _ ) e ( $ ) al
posto di (( ! ) ^ ( ! )): Il senso di questa convenzione risultera chiaro
quando stabiliremo il signicato dei connettivi. Per ora ci limitiamo a considerare la scrittura (p0 ! p1 ) come un'abbreviazione per :p0 _ p1 che a sua volta
rende piu leggibile : _ p0p1 . Solo quest'ultima e veramente una formula del
nostro linguaggio.
Ora che abbiamo introdotto le parentesi per facilitare la lettura delle formule, ssiamo alcune convenzioni che permettono in alcuni casi di eliminarle,
dato che un eccesso di parentesi disturba la lettura quanto la loro mancanza
totale. Innanzitutto eliminiamo la coppia di parentesi piu esterna convenendo
di scrivere, ad esempio, ( _ ) ^ invece di (( _ ) ^ ). Stabiliamo quindi
un ordine di precedenza nell'applicazione dei connettivi, chiedendo che
1. : si applichi prima di ogni altro connettivo,
2. ^ e _ si applichino prima di ! e $, senza pero stabilire un ordine di
precedenza fra ^ e _ e fra ! e $,
3. in una formula del tipo di 0 ! : : : ! n le parentesi siano associate
a destra e che una convenzione analoga valga per ogni altro connettivo
binario.
Avremo quindi la possibilita di semplicare (:) _ ( _ ) in : _ _ (per le 1
e 3), mentre :( _ ) _ non e ulteriormente semplicabile. Analogamente ( ^
) ! ( ! ) si riduce a ^ ! ! (per le 2 e 3), mentre (( ^ ) ! ) ! si riduce solo a ( ^ ! ) ! (per la 2) e la formula (( ! ) ! ) ! non si riduce aatto. La formula ( ^ ) _ ( ^ ) non si riduce, perche tra ^
e _ non sono ssate regole di precedenza. Poiche eliminare le parentesi e una
facolta e non un obbligo, a volte non elimineremo tutte le parentesi eliminabili
in base a queste convenzioni.
Siamo ora in grado di stabilire un rapporto tra il linguaggio naturale e il
linguaggio enunciativo: ad ogni enunciato elementare del linguaggio naturale
associamo una variabile pi , a enunciati diversi variabili diverse, e alle operazioni
\non", \e", \o", \se : : : allora", \se e solo se" associamo ordinatamente i connettivi :, ^, _, !, $. Ad esempio, l'enunciato complesso \Se Antonio non ama
Maria, allora Antonio tradisce Sara o Antonio tradisce Maria", associando \Antonio ama Maria" a p0 , Antonio tradisce Sara" a p1 e \Antonio tradisce Maria"
a p2 , diventa :p0 ! (p1 _ p2). A prima vista sembra di aver ottenuto solo una
stenograa, una rappresentazione simbolica molto semplicata del linguaggio
naturale. Si osservi, tuttavia, che nel passaggio dall'enunciato del linguaggio
naturale \Se Antonio non ama Maria, allora Antonio tradisce Sara o Antonio
71
3.1. Linguaggio enunciativo
tradisce Maria" alla formula :p0 ! (p1 _ p2 ) c'e una perdita di specicita:
il primo parla di Antonio, di Maria, di amore e tradimento, la seconda fa lo
stesso discorso del primo solo tenendo presente la corrispondenza tra enunciati
elementari e variabili di P , corrispondenza che non risulta in alcun modo dalla
formula. Sarebbe ingiusto dire che la formula non parla di nulla solo perche p0 ,
p1 e p2 sono variabili, e quindi non ha un signicato determinato: la formula
non fa nessuna asserzione puntuale, ma esibisce un tipo di rapporto di natura
logica tra enunciati, e la forma da cui si possono ricavare inniti enunciati del
linguaggio naturale facendo variare in tutti i modi possibili la corrispondenza
tra enunciati elementari e P .
La situazione risulta piu chiara se partiamo dal linguaggio enunciativo. Fissata una corrispondenza tra variabili di P ed enunciati elementari del linguaggio
naturale, vediamo che ogni formula si traduce in un enunciato del linguaggio naturale semplicemente cambiando pi con l'enunciato elementare corrispondente e
rimpiazzando i connettivi logici con \non", \e", \o", \se : : : allora" e \se e solo
se". Variando la corrispondenza otterremo innite traduzioni di :p0 ! (p1 _ p2)
nel linguaggio naturale e nell'insieme di tutte le possibili traduzioni troveremo
anche \Se Antonio non ama Maria, allora Antonio tradisce Sara o Antonio tradisce Maria": in generale si trattera di enunciati del tipo di
se non ... allora ... o ... .
In conclusione possiamo dire che nel passaggio dal linguaggio naturale al linguaggio formale della logica enunciativa otteniamo una formula che costituisce
la forma logica dell'enunciato del linguaggio naturale. Da questa forma logica
possiamo riottenere l'enunciato di partenza tenendo presente la corrispondenza
ssata all'inizio della traduzione tra enunciati elementari e P , ma facendo variare
questa corrispondenza possiamo ottenere un'innita di enunciati del linguaggio
naturale che condividono la forma logica dell'enunciato di partenza.
Esercizio 3.1.1 Se p0 denota l'enunciato \Bruno va al cinema", p1 denota \la
sera e fredda" e p2 denota \I bar sono chiusi", si rappresentino con formule gli
enunciati seguenti:
1. Se Bruno va al cinema allora o la sera e fredda o i bar sono chiusi
2. Se Bruno va al cinema e i bar non sono chiusi, allora la sera e fredda
3. O Bruno va al cinema e i bar sono chiusi, oppure la sera e fredda.
Esercizio 3.1.2 In ognuno dei seguenti enunciati si individuino gli enunciati
elementari, assegnando a ciascuno una variabile pi in modo che a enunciati elementari diversi corrispondano variabili diverse. Si traducano quindi gli enunciati
in formule.
1. Anna e giovane e Bruno e vecchio
2. Bruno e vecchio ma e attivo
72
Capitolo 3. Logica enunciativa
3.
4.
5.
6.
7.
8.
9.
10.
Anna e Bruno sono amici
Anna e Bruno non sono felici
Anna o Bruno vengono bocciati
Anna sostiene l'esame gioved o venerd
Anna va al cinema ammesso che piova e Bruno non sia a Torino
Anna va al cinema solo se piove
Quando Anna ha sete e non c'e the, ma solo allora, beve vodka
Questo esercizio non e ne utile ne divertente.
Esercizio 3.1.3 Si verichi che le espressioni ai punti 2 e 4 sono formule esi-
bendo la loro costruzione, si verichi che quelle ai punti 1 e 3 non sono formule
mostrando che non possiedono una costruzione.
1.
2.
3.
4.
^p0p1 _ p0 p1,
_ ^ p0 p1 _ p0 p1,
: _ p0 p1p2 ,
: ^ _p0p1 :p2.
3.2 Induzione e recursione sulle formule
Il fatto che l'insieme delle formule Fm sia denito induttivamente rende lecito
dimostrare proprieta di formule per induzione sulle formule. Vale a dire, se Q
e una proprieta di formule, per dimostrare che ogni formula gode di Q basta
dimostrare che:
1. per ogni variabile pi , vale Q(pi ),
2. per ogni formula , se Q() allora Q(:),
3. per ogni coppia di formule , , se Q() e Q() allora Q( ^ ) e Q( _ ).
La giusticazione di questo principio induttivo e data dal teorema 2.5.1, tenendo
presente che Fm = IB;F e che le clausole 1)-3) precedenti equivalgono ad asserire
che Q e B; F -chiusa.
Talvolta e necessario utilizzare altri principi induttivi, basati sull'assegnamento di una funzione ' : Fm ! ! che esprime una misura di complessita delle
formule. Diremo che una formula e Q; '-completa se, per ogni formula ,
'() < '() implica Q(). Diremo che la proprieta Q e '-progressiva se, per
ogni formula , se e Q; '-completa allora Q(), in altri termini, se vale Q()
quando Q vale per tutte le formule di complessita minore di . Dal teorema
3.2. Induzione e recursione sulle formule
73
2.5.4 si ricava il seguente principio induttivo: per dimostrare che ogni formula
gode di Q basta dimostrare che Q e '-progressiva. Le misure di complessita
piu utilizzate sono quelle in cui '() rappresenta l'altezza della costruzione di
(vedremo tra breve che ogni formula ha un'unica costruzione), oppure '()
rappresenta la lunghezza di , ossia il numero dei simboli che la compongono.
Parleremo allora di induzione sull'altezza o di induzione sulla lunghezza di .
Nel seguito ci accadra spesso di denire per recursione funzioni dall'insieme
delle formule verso altri insiemi. Ad esempio, la lunghezza di una formula e
denita per recursione nel modo seguente:
1. l(pi ) = 1
2. l(:) = l() + 1
3. l( ^ ) = l( _ ) = l() + l() + 1.
Denire una funzione per recursione sulle formule signica applicare il teorema 2.6.1 che a sua volta puo essere applicato solo se le formule costituiscono una struttura generata liberamente da P . Consideriamo la struttura
FM = (Fm; O^ ; O_ ; O: ) detta algebra delle formule di L. E chiaro che FM
e generata da P, per dimostrare che e generata liberamente basta vericare che
soddisfa le condizioni 1)-6) del paragrafo 2.6, che e quanto stabilisce il teorema
seguente.
Teorema 3.2.1
1. Im(O: ) \ P = ;, Im(O^ ) \ P = ; e Im(O_ ) \ P = ;,
2. Im(O: ) \ Im(O^ ) = ;, Im(O: ) \ Im(O_ ) = ;, Im(O^ ) \ Im(O_ ) = ;,
3. O: , O^ e O_ ristrette a F m, sono iniettive.
I primi due punti sono evidenti. Quanto al terzo punto, si vede facilmente
che O: e iniettiva, dato che : = : implica = . L'iniettivita di O^ non
e altrettanto semplice da dimostrare. (Quella di O_ si dimostra nello stesso
modo.) Date le formule , , , , da ^ = ^ si ricava solo = :
come si puo arrivare ad = e = ? Ora, se pensiamo ad e come a
espressioni, successioni nite di simboli, da = si ricava che = , oppure
e un segmento iniziale proprio di oppure e un segmento iniziale proprio
di . Se riusciamo a dimostrare che ne puo essere segmento iniziale proprio
di , ne di , allora deve essere necessariamente = . A questo punto da
= si puo ricavare = e l'iniettivita della funzione O^ e dimostrata.
Resta allora da dimostrare il seguente lemma:
Per ogni formula di L, nessun suo segmento iniziale proprio e ancora una
formula di L.
Deniamo una funzione K 0 che assegna ad ogni simbolo di L un numero
intero in Z ponendo K 0 (:) = 0, K 0(^) = K 0 (_) = ;1 e K 0(pi ) = 1 per ogni
74
Capitolo 3. Logica enunciativa
i 2 !. Sulla base di K 0 , deniamo una funzione K : E ! Z come segue. Per
ogni espressione s0 ; : : : ; sn;1, dove si 2 L per ogni i < n, poniamo
K(s0 ; : : : ; sn;1) = K 0 (s0 ) + : : : + K 0 (sn;1 ):
Si dimostra facilmente per induzione che, per ogni formula , K() = 1. Se
= pi, allora
K(pi ) = K 0(pi ) = 1:
Se = :, allora per ipotesi induttiva K() = 1 e quindi
K(:) = K 0 (:) + K() = 1:
Se = ^, allora per ipotesi induttiva K() = K() = 1 e quindi
K(^) = K 0 (^) + K() + K() = 1:
Nello stesso modo si procede con = _. A questo punto possiamo dimostrare
che, per ogni formula , se 0 e un suo segmento iniziale proprio, K(0) < 1.
Procediamo anche qui per induzione. Se = pi l'asserto e vero a vuoto, perche
non vi sono segmenti iniziali propri. Supponiamo che sia = :. Allora 0 = :
oppure 0 = : 0 , dove 0 e un segmento iniziale proprio di . Nel primo caso
K 0 (0 ) = 0 mentre nel secondo, poiche per ipotesi induttiva K( 0) < 1, si ha
K(0) = K 0 (:) + K( 0 ) < 1. Nello stesso modo si trattano i casi di ^ e
di _. Abbiamo quindi dimostrato che ogni segmento iniziale proprio di una
formula assume in K un valore minore di 1, mentre ogni formula assume valore
1, quindi nessun segmento iniziale di una formula puo essere una formula.
3.3 Semantica enunciativa
Seguendo una distinzione dovuta originariamente a Gottlob Frege (1848-1925),
chiamiamo senso o intensione di un enunciato il pensiero espresso e signicato o
estensione di un enunciato il suo valore di verita. I caratteri distintivi della logica
classica, rintracciabili chiaramente gia nell'opera di Frege, sono l'estensionalita
e la bivalenza. L'estensionalita della logica stabilisce che nella valutazione della
correttezza di un'inferenza, sia rilevante solo il signicato degli enunciati, cioe il
valore di verita. La bivalenza stabilisce che i possibili signicati degli enunciati
sono solo due, il vero e il falso. D'ora in poi identicheremo i due valori di
verita della logica classica rispettivamente con 1 e 0, quindi l'insieme dei valori
di verita sara f0; 1g, ossia 2.
L'esclusione dalla semantica dell'intensione degli enunciati e un'assunzione
di portata molto vasta e dal carattere evidentemente riduttivo. L'identicazione
del signicato col valore di verita comporta che due enunciati come \7 e maggiore
di 5" e \Socrate e mortale" abbiano lo stesso signicato, vale a dire denotino lo
stesso oggetto: 1. Non ha alcuna importanza che il primo esprima un pensiero
che riguarda i numeri e il secondo un pensiero riguardante certi esseri umani,
75
3.3. Semantica enunciativa
perche nell'analisi delle inferenze conta solo il signicato e gli unici signicati
possibili sono 0 e 1. Vedremo in seguito che, pur rimanendo nell'ambito di
una logica estensionale, e possibile recuperare la dierenza tra i due enunciati
utilizzando l'analisi logica piu ranata fornita dalla logica predicativa, ma al
livello di analisi logica a cui ci muoviamo ora i signicati dei due enunciati sono
indistinguibili.
A queste due caratteristiche della logica occorre aggiungere un principio fondamentale, identicato sempre da Frege, che regola la semantica del linguaggio
enunciativo: la composizionalita del signicato. Tenendo presente che il compito
degli enunciati e rappresentare nel linguaggio i signicati, il principio di composizionalita stabilisce una modalita importante di questa rappresentazione: il
signicato di un enunciato composto mediante i connettivi e funzione del signicato degli enunciati componenti. Questo ci conduce ad associare ad ogni
connettivo una funzione di verita , ossia una funzione che assume argomenti e
valori in 2. Iniziamo dalla funzione di verita associata alla negazione, cioe dalla
funzione f: : 2 ! 2 tale che
x f: (x)
0
1
0
1
E chiaro che non essendoci altri signicati possibili per gli enunciati oltre a 0 e
1, la funzione f: , che commuta 0 in 1 e 1 in 0, cattura il signicato intuitivo
della negazione e permette di calcolare il signicato di : noto quello di .
La funzione di verita f^ : 22 ! 2 associata alla congiunzione e denita nel
modo seguente:
x
0
0
1
1
y f^ (x; y)
0
0
1
0
0
0
1
1
E intuitivo che una congiunzione ^ signichi il vero solo quando entrambi i
congiunti e signicano il vero e quindi f^ calcola correttamente il signicato
di ^ da quelli di e . Si osservi che l'ordine in cui vengono considerati
gli enunciati da congiungere non inuenza il risultato, quindi l'operazione f^
risulta essere commutativa.
La funzione di verita f_ : 22 ! 2 associata alla disgiunzione e denita nel
modo seguente:
x
0
0
1
1
y f_ (x; y)
0
0
1
1
0
1
1
1
76
Capitolo 3. Logica enunciativa
Le denizione precedente comporta che una disgiunzione _ signichi il vero
se almeno uno dei due disgiunti e signica il vero e sulla base di questa
concezione \inclusiva" della disgiunzione f_ calcola in modo intuitivo il signicato di _ , dati i signicati di e . Naturalmente si potrebbe concepire la
disgiunzione in modo tale che le due alternative debbano escludersi a vicenda,
come richiede in latino l'uso di aut. Se si adotta la disgiunzione in questa accezione \esclusiva" occorre modicare la funzione di verita precedente, ponendo
il valore 0 nell'ultima riga. Come vedremo in seguito, non e necessario adottare
come primitiva la funzione di verita per la disgiunzione esclusiva, dato che puo
essere ottenuta dalle altre per composizione. Poiche l'ordine in cui vengono considerati gli enunciati da disgiungere non inuenza il signicato, anche nel caso
della disgiunzione l'operazione f_ risulta essere commutativa.
La funzione di verita f! : 22 ! 2 associata all'implicazione e denita nel
modo seguente:
x y f! (x; y)
0 0
1
0 1
1
1 0
0
1 1
1
La funzione di verita f! e denita in modo tale che ! risulti falsa quando
l'antecedente dell'implicazione e vero e il conseguente falso, e vera in tutti i
casi restanti. La nozione intuitiva di implicazione non e catturata pienamente da
questa funzione di verita. Infatti sembra poco plausibile che un enunciato come
\Se 1 = 2 allora Parigi e in Francia" sia vero, anche se dobbiamo ammetterlo
in conseguenza del fatto che f! (0; 1) = 1. Una prima giusticazione della
denizione di f! si puo ottenere esaminando tutte le denizioni possibili. Se si
concede che il comportamento di f! e corretto nei casi in cui l'antecedente e
vero (gli ultimi due), le alternative possibili si riducono alle quattro seguenti:
0 0 1 1
0 1 0 1
0 0 0 0
1 1 1 1
Scegliendo la prima si ottiene f^ . Scegliendo la seconda si ottiene una funzione
f(x; y) = y in cui il valore e sempre identico al secondo argomento. In tal
modo asserire l'implicazione ! sarebbe equivalente ad asserire , il che non
rende certo il senso intuitivo dell'implicazione. Scegliendo la terza si ottiene la
funzione f$ descritta in seguito. In questo caso asserire l'implicazione ! sarebbe come asserire l'equivalenza di e , e anche cos non si renderebbe certo
il senso intuitivo dell'implicazione per cui esiste un'asimmetria tra antecedente e
conseguente. Non resta quindi che l'ultima colonna, quella di fatto adottata. Cio
non cancella il disagio provocato da implicazioni come \Se 1 = 2 allora Parigi e
in Francia", che dobbiamo considerare vere sebbene siano palesemente insensate,
data la mancanza di un legame tra il pensiero espresso dall'antecedente e quello
77
3.3. Semantica enunciativa
espresso dal conseguente, tuttavia di questo non possiamo piu lamentarci una
volta che abbiamo accettato di escludere l'intensione e di ridurre il signicato
di un enunciato al valore di verita. Mettere in discussione questa riduzione
signica mettere in discussione l'impostazione estensionale che abbiamo dato al
discorso logico, e non solo la specica tabella di calcolo della funzione f! .
La funzione di verita f$ : 22 ! 2 associata all'equivalenza e denita nel
modo seguente:
x
0
0
1
1
y f$ (x; y)
0
1
1
0
0
0
1
1
E chiaro che l'equivalenza $ deve risultare vera quando, e solo quando, e hanno lo stesso signicato, ossia denotano lo stesso valore di verita.
Sulla base di queste funzioni e possibile calcolare il valore di verita di qualsiasi formula una volta noti i valori di verita delle variabili che in essa occorrono.
Consideriamo, ad esempio, :p0 ! (p1 _ p2 ). Se associamo le tre variabili enunciative p0, p1 e p2 con tre variabili x, y e z che varino sui valori di verita,
e se rimpiazziamo ogni connettivo con la funzione di verita ad esso associata,
otteniamo la funzione di verita composta
f! (f: (x); f_ (y; z)):
Se, ad esempio, il valore di verita di p0 e 1, quello di p1 e 1 e quello di p2 e 0,
per ottenere il valore di verita di :p0 ! (p1 _ p2) basta sostituire nella funzione
precedente x con 1, y con 1 e z con 0 e calcolare il risultato:
f! (f: (1); f_ (1; 0)) = f! (0; 1) = 1:
E possibile analizzare sistematicamente tutti i possibili risultati a cui puo dar
luogo l'assegnamento di valori di verita alle lettere p0, p1 e p2. Questa analisi
sistematica si attua mediante la costruzione della tavola di verita , ossia la tabella
di calcolo della funzione di verita f! (f: (x); f_ (y; z)) associata alla formula in
questione:
p0 p1 p2 :p0 p1 _ p2 :p0 ! (p1 _ p2 )
0 0 0 1
0
0
0 0 1 1
1
1
0 1 0 1
1
1
0 1 1 1
1
1
1 0 0 0
0
1
1 0 1 0
1
1
1 1 0 0
1
1
1 1 1 0
1
1
78
Capitolo 3. Logica enunciativa
Le prime tre colonne contengono tutte le possibili triple di argomenti, la quarta
e la quinta i risultati di calcoli intermedi e l'ultima contiene il valore nale. E
chiaro che, in generale, la tavola di verita associata a un enunciato contenente n
lettere distinte, ossia la tabella di calcolo di una funzione di verita in n variabili
distinte, avra 2n righe. Tanti, infatti, sono i modi possibili di disporre due
oggetti, per esempio 0 e 1, in successioni di lunghezza n. Per convincersene
basta pensare che se la successione e di un solo elemento, vi sono solo 2 = 21
possibilita, 0 o 1. Supponiamo di avere a che fare con successioni di lunghezza
n + 1. Per ipotesi induttiva le successioni di lunghezza n sono 2n ; da ognuna di
esse si ottengono due successioni di lunghezza n + 1, aggiungendo 0 o 1. Quindi
in totale le successioni di lunghezza n + 1 sono 2n 2 = 2n+1.
Siamo ora in grado di giusticare la convenzione notazionale con cui abbiamo
introdotto ! e $ . E facile vericare, infatti, che le due equazioni
seguenti sono vere comunque si scelgano i valori di x e y:
f! (x; y) = f_ (f: (x); y))
f$ (x; y) = f^ (f! (x; y); f! (y; x)).
La prima equazione stabilisce che ! ha lo stesso signicato di : _ e la
seconda che $ ha lo stesso signicato di ( ! ) ^ ( ! ).
A questo punto dovrebbe essere chiaro che il signicato di una formula consiste non tanto in un valore di verita, quanto in una funzione che associa ad
ogni assegnamento di valori di verita alle variabili di , il valore di verita che
assume per tale assegnamento. Cio non contraddice l'idea che il signicato
di un enunciato sia un valore di verita dato che, come abbiamo osservato nel
paragrafo 3.1, una formula non rappresenta un singolo enunciato del linguaggio
naturale, ma uno schema per formare enunciati aventi in comune la medesima
forma logica isolata dalla formula in questione. Nella parte restante di questo
paragrafo svilupperemo la semantica del linguaggio enunciativo distinguendo
tra un signicato relativo delle formule e un signicato assoluto. Il signicato
relativo di una formula e il valore di verita che le viene attribuito sulla base
di una data valutazione : ! ! 2 che associa ad ogni variabile pi il valore di
verita (i). Il processo attraverso il quale si conferisce alle formule un signicato
relativo a una data valutazione si riduce al calcolo di funzioni di verita associate
ai connettivi e puo essere descritto come un morsmo fra strutture dello stesso
tipo. Da un lato abbiamo l'algebra delle formule FM e dall'altro i valori di
verita organizzati nell'algebra D = (2; f^ ; f_ ; f: ), la restrizione dall'algebra di
Boole con due elementi al linguaggio contenente solo f^; _; :g. Ogni valutazione
induce una funzione g : P ! 2, denita ponendo g (pi ) = (i), che attribuisce
un signicato relativo alle variabili enunciative. Dal teorema 3.2.1 sappiamo che
FM e generata liberamente da P e quindi, per il teorema 2.6.1, ogni g : P ! 2
si estende a un'unico morsmo V al : FM ! D. Cio signica che, scrivendo
: al posto di O: (), ^ al posto di O^ (; ) e _ al posto di O_ (; ),
avremo
1. V al (pn) = g (pn )
79
3.3. Semantica enunciativa
2. V al (:) = f: (V al ())
3. V al ( ^ ) = f^ (V al (); V al ()),
4. V al ( _ ) = f_ (V al (); V al ()).
L'indice serve a ricordare che il signicato attribuito alle formule da V al
e relativo a una data . Si vede facilmente che la funzione V al trasforma il
processo di generazione sintattico di una formula a partire dalle variabili, in un
processo di generazione semantico del valore della formula a partire dai valori
di verita associati alle variabili. I punti 2)-4) della recursione fanno in modo
che la \forma" del processo di generazione sintattico sia conservata dal processo
semantico, che ad ogni applicazione di un dato connettivo corrisponda quella
della funzione di verita ad esso associata. Si consideri, ad esempio, la formula
:pi ^ (pj _ pi ) di cui abbiamo visto la costruzione nel paragrafo 3.1. Presa una
qualsiasi valutazione , possiamo rappresentare il processo di attribuzione del
signicato relativo con l'albero
(i)
f: ((i))
(j)
(i)
@@ ;;
@;
f_ ((j); (i))
@
;;
@@
;
;
@@;
f^ (f :((i)); f_ ((j); (i)))
Si osservi che la forma di questo albero semantico riproduce esattamente quella
dell'albero sintattico del paragrafo 3.1 e che ai nodi generati da f: , f^ e f_
corrispondono rispettivamente i nodi generati con O: , O^ e O_ .
Mentre il signicato relativo di e il suo valore di verita rispetto a un
dato assetto del mondo espresso da una valutazione , il signicato assoluto
di e l'insieme degli assetti del mondo che rendono vera . Ogni formula
denota quindi l'insieme delle circostanze che la rendono vera, ossia un insieme
di valutazioni. L'attribuzione alle formule di un signicato assoluto sara allora
un morsmo M dall'algebra delle formule FM verso l'algebra
D(2! ) = (P(2! ); \; [; ;)
che e la restrizione dell'algebra di Boole dei sottoinsiemi di 2! al linguaggio
contenente solo f^; _; :g. La denizione di M avviene per recursione nel modo
seguente. Innanzitutto deniamo una funzione g : P ! P(2! ) ponendo g(pi ) =
f 2 2! : (i) = 1g: quindi g assegna ad ogni variabile enunciativa l'insieme
delle valutazioni che rendono vera tale variabile. Dal teorema 3.2.1 sappiamo
80
Capitolo 3. Logica enunciativa
che FM e generata liberamente da P e quindi, per il teorema 2.6.1, g si estende
a un'unico morsmo M : FM ! D(2! ) che verica le condizioni seguenti:
M( ^ ) = M() \ M();
M( _ ) = M() [ M();
M(:) = ;M():
Si osservi che essendo in realta la notazione ! un'abbreviazione per : _ ,
avremo M( ! ) = ;M() [ M(). Il teorema seguente mostra il rapporto
tra signicato assoluto e signicato relativo.
Teorema 3.3.1 Per ogni formula e ogni valutazione , V al () = 1 sse
2 M().
La dimostrazione e per induzione su . Se e pi, allora V al (pi ) = 1
sse g (pi) = 1 sse (i) = 1 sse 2 g(pi ) sse 2 M(pi). Se e : allora
V al (:) = 1 sse V al () 6= 1 sse 2= M() sse 2 ;M() sse 2 M(:).
Se e ^ allora V al ( ^ ) = 1 sse V al () = 1 e V al () = 1 sse 2 M()
e 2 M() sse 2 M() \ M() sse 2 M( ^ ). Il caso in cui e una
disgiunzione e trattato in modo analogo.
Signicato relativo e signicato assoluto sono interdenibili. Se assumiamo
come primitiva V al allora possiamo denire M() = f : V al () = 1g,
se assumiamo come primitiva M allora possiamo denire V al () = 1 se 2
M(), V al () = 0 altrimenti. Nel nostro discorso saremo portati a privilegiare
il signicato assoluto di una formula rispetto al suo signicato relativo: cio e
dovuto al fatto che il discorso logico, nella sua pretesa di universalita, tende a
considerare l'insieme delle circostanze in cui una formula e vera piuttosto che
speciche situazioni in cui tale formula risulti essere vera.
Il signicato assoluto di una formula puo anche essere concepito in termini funzionali, identicandolo con la funzione caratteristica di M(), ossia la
funzione f da valutazioni a valori di verita tale che
2 M()
f () = 10 se altrimenti.
Diremo che f e la funzione di verita innitaria associata ad . Si verica
facilmente che, per ogni , f () = V al ().
Diremo che e modello di sse 2 M(), in simboli . Diremo che
e soddisfacibile se possiede un modello. Quando e modello di diremo
che e vera nella valutazione . Quindi il signicato di una formula (d'ora
in poi sottointenderemo assoluto) e l'insieme delle valutazioni che la rendono
vera, l'insieme dei suoi modelli. Diremo che una formula e una tautologia se
M() = 2! , vale a dire se ogni valutazione e modello di . Scriveremo j= per
indicare che e una tautologia, sottolineando in tal modo con la notazione che
la sua verita non dipende dalla valutazione. Diremo che e una contraddizione
se M() = ;, ossia se nessuna valutazione e modello di . Mostriamo, ad
esempio, che _ : e una tautologia. A tale scopo basta vericare che M() [
3.3. Semantica enunciativa
81
;M() = 2! ossia che nell'algebra di Boole vale x _ :x = 1, il che e evidente.
Analogamente si dimostra che ^ : e una contraddizione. In generale, per
vericare che una formula e una tautologia siamo condotti a vericare la validita
di un'equazione booleana. Ad esempio, nel caso di :(^) ! :_: dobbiamo
vericare che
; ; (M() \ M()) [ (;M() [ ;M()) = 2!
ossia che nell'algebra di Boole vale ; ; (x ^ y) _ (;x _ ;y) = 1. Utilizzando le
leggi della doppia negazione, di De Morgan e del terzo escluso otteniamo
::(x ^ y) _ (:x _ :y) = (x ^ y) _ (:x _ :y) = (x ^ y) _ :(x ^ y) = 1:
Teorema 3.3.2 Le proposizioni seguenti sono equivalenti.
1. e una tautologia,
2. per ogni , f () = 1,
3. per ogni , V al () = 1.
1) sse 2): se M() = 2! allora f e la funzione costante 1 e viceversa. 2) sse
3): per il teorema 3.3.1.
Diremo che e equivalente a se M() = M(), quindi due formule sono
equivalenti se hanno lo stesso signicato. Il teorema seguente mostra che e sono equivalenti se e solo se la loro equivalenza e una tautologia.
Teorema 3.3.3 Per ogni e ,
1. j= ! sse M() M(),
2. j= $ sse M() = M().
Per quanto riguarda la prima proposizione, si osservi che j= ! sse
M( ! ) = 2! sse ;M() [ M() = 2! sse M() M(). L'ultimo
passaggio dipende dal fatto che nelle algebre di Boole :x _ y = 1 sse x y.
Per quanto riguarda la seconda, j= $ sse M( $ ) = 2! sse M( !
) \ M( ! ) = 2! sse M( ! ) = 2! e M( ! ) = 2! sse M() M()
e M() M() sse M() = M().
Il teorema precedente e particolarmente utile quando occorre dimostrare che
formule di tipo ! o $ sono tautologie. La formula :(^) $ :_: e
detta legge di De Morgan: verichiamo che si tratta di una tautologia mostrando
che, dati due insiemi X, Y 2! , ;(X \ Y ) = ;X [;Y . A tale scopo possiamo
vericare direttamente che, per ogni 2 2! , 2 ;(X \ Y ) sse 2= (X \ Y ) sse
2= X o 2= Y sse 2 ;X o 2 ;Y sse 2 ;X [ ;Y . Oppure e possibile
ricavare l'equazione :(x ^ y) = :x _ :y dagli assiomi booleani (teorema 2.4.5)
e concludere che la stessa equazione vale nell'algebra dei signicati D(2! ).
E possibile sviluppare la logica enunciativa utilizzando il linguaggio basato sui connettivi di negazione e implicazione. Innanzitutto poniamo L =
82
Capitolo 3. Logica enunciativa
P [ f:; !g e deniamo induttivamente l'insieme F m delle formule di L procedendo come nel paragrafo 3.1, otteniamo cos l'algebra delle formule FM =
(Fm ; O!; O: ). L'algebra dei signicati sara D = (2; f! ; f: ). Il signicato
relativo si ottiene con un morsmo V al da FM verso D indotto dalla valutazione , le cui proprieta fondamentali sono date dalle seguenti equazioni:
1. V al (:) = f: (V al (),
2. V al ( ! ) = f! (V al (); V al ()).
Il signicato assoluto si ottiene con un morsmo M da FM verso la struttura
(2! ; ); ;), dove ) e l'operazione binaria su insiemi tale che X ) Y = ;X [
Y . Come al solito poniamo M (pi ) = f 2 2! : (i) = 1g e le proprieta
fondamentali del morsmo indotto sono espresse dalle equazioni seguenti:
1. M (:) = ;M (),
2. M ( ! ) = M () ) M ().
A questo punto e possibile dimostrare un teorema che stabilisce i rapporti tra
signicato assoluto e signicato relativo, analogo al teorema 3.3.1. Lasciamo
questo compito al lettore e ci occupiamo invece della traducibilita fra i linguaggi
L e L , dalla quale otterremo come corollario tali rapporti. Deniamo per
recursione una funzione di traduzione da F m verso Fm, ponendo
1. (pi ) = pi ,
2. (:) = :(),
3. ( ! ) = :() _ ().
Lasciamo al lettore il compito di formulare correttamente le condizioni che rendono applicabile il teorema di recursione. Il teorema seguente mostra che la
traduzione associa ad ogni formula di L una formula di L dello stesso signicato.
Teorema 3.3.4 Per ogni di L,
1. M () = M(()),
2. V al () = V al (()).
1. La dimostrazione e per induzione sulle formule. Ovviamente M (pi ) =
M((pi )). Nel caso della negazione, poiche per ipotesi induttiva M () =
M(()), abbiamo
M (:) = ;M () = ;M(()) = M(:()) = M((:)):
3.3. Semantica enunciativa
83
Nel caso dell'implicazione, poiche per ipotesi induttiva vale M () = M(())
e M () = M(()), abbiamo
M (( ! )) = M(:() _ ())
= ;M(()) [ M(())
= ;M() [ M()
= M() ) M()
= M( ! ):
2. La dimostrazione e analoga alla precedente.
Siamo ora in grado di dimostrare il rapporto tra signicato assoluto e signicato relativo nel caso di L .
Corollario 3.3.5 Per ogni di L, V al () = 1 sse 2 M ().
Per il secondo punto del teorema precedente, V al () = 1 sse V al (()) =
1. Per il teorema 3.3.1, V al (()) = 1 sse 2 M(()). Inne 2 M(())
sse 2 M (), per il primo punto del teorema precedente.
In seguito si rivelera utile anche la traduzione da F m verso Fm denita
ponendo
1. (pi) = pi
2. (:) = : (),
3. ( ^ ) = :( () ! : ());
4. ( _ ) = : () ! ().
Tale traduzione assegna ad ogni formula di L una formula di L di signicato
identico, come mostra il teorema seguente.
Teorema 3.3.6 Per ogni di L, M() = M ( ()).
La dimostrazione e per induzione sulle formule. Il caso delle variabili enunciative e banale. Il caso della negazione segue immediatamente dall'ipotesi
induttiva. Supponiamo ora che sia ^ . Per ipotesi induttiva abbiamo
M() = M ( ()) e M() = M ( ()). Vale allora
M ( ( ^ )) = M (:( () ! : ()))
= ;(M ( ()) ) ;M ( ()))
= ;(;M ( ()) [ ;M ( ()))
= M ( ()) \ M ( ())
= M() \ M()
= M( ^ ):
In modo analogo si procede quando e _ .
84
Capitolo 3. Logica enunciativa
Esercizio 3.3.1 Utilizzando il teorema 3.3.3, si verichi che le formule seguenti
sono tautologie:
! (legge d'identita),
:: $ (legge della doppia negazione),
! ( ! ) (a fortiori),
:( _ ) $ (: ^ :) (legge di De Morgan),
( ! ) $ (: ! :) (legge di contrapposizione),
( ! ( ! )) $ ( ! ( ! )) (scambio di premesse),
( ! ( ! )) $ ( ^ ! ),
8. ! (: ! ) (ex falso sequitur quodlibet o legge di Duns Scoto).
1.
2.
3.
4.
5.
6.
7.
Esercizio 3.3.2 Si dimostri che, per ogni 2 F m e ogni 2 2!, f () =
V al ().
Esercizio 3.3.3 Si considerino i linguaggi L^ e L_ basati rispettivamente sui
connettivi f:; ^g e f:; _g. Dopo aver denito per essi una semantica nel modo
usuale, si deniscano traduzioni verso e da L in modo che a ogni formula di L^
e L_ sia associata una formula di L con lo stesso signicato e viceversa.
Esercizio 3.3.4 Diciamo che X 2! e n-completo se, per ogni , 2 2! , 2
X e n = n implica 2 X. Si dimostri che gli insiemi n-completi formano
un'algebra di Boole A che e sottoalgebra di B(2! ), l'algebra dei sottoinsiemi di
2! . Si consideri la funzione f : P (2! ) ! P (2n) denita ponendo f(X) = X n.
Si verichi che f non e un morsmo, mentre la restrizione di f ad A lo e. Si
dimostri che gli n-completi coincidono con le immagini delle formule n-arie in
M.
3.4 Signicato nitario
E possibile ricondurre la semantica a un ambito nitario e riconnettersi al discorso iniziale sulle tavole di verita introducendo il concetto di formula n-aria.
Per ogni n > 0, poniamo Pn = fp0 ; :::; pn;1g e quindi consideriamo la sottostruttura FMn generata in FM da Pn, ossia la minima sottostruttura dell'algebra delle formule contenente l'insieme Pn. Il dominio F mn di FMn e
l'insieme denito induttivamente in FM dalla coppia (B; F ), dove B = Pn e
F = fO^ ; O_ ; O: g. Deniamo formule n-arie gli elementi di Fmn: indicheremo con (p0 ; : : : ; pn;1) una generica formula n-aria per sottolineare che in
essa possono occorrere solo variabili di indice minore di n. Il teorema seguente
fornisce una denizione esplicita delle formule n-arie che permette di riconoscerle
facilmente in Fm.
3.4. Signicato nitario
85
Teorema 3.4.1 Fmn e l'insieme delle formule in cui occorrono solo variabili
di indice minore di n.
Sia X l'insieme delle formule in cui occorrono solo variabili di indice minore
di n. Per dimostrare che Fmn X basta osservare che X e il dominio di una
sottostruttura di FM contenente Pn: infatti ogni pi , con i < n, appartiene a X
e inoltre X e chiuso rispetto alle operazioni di FM. L'asserto segue allora dal
fatto che FMn e la minima sottostruttura di FM che include Pn. Dimostriamo
ora che X Fmn , ossia che per ogni formula 2 Fm, se 2 X allora
2 Fmn. La dimostrazione e per induzione sulle formule e quindi dobbiamo
provare che l'insieme Y = f 2 Fm : 2 X implica 2 F mng include Pn ed
e chiuso rispetto a O: , O^ e O_ . Evidentemente pi 2 X implica i < n e quindi
pi 2 Pn e pi 2 Fmn . Mostriamo ora che se e appartengono a Y allora anche
^ 2 Y : infatti se ^ 2 X allora anche e contengono solo variabili
di indice minore di n e quindi appartengono a X, ma allora appartengono a
Fmn per ipotesi e quindi anche ^ appartiene a Fmn, dato che quest'ultimo
e chiuso rispetto a O^ . Lo stesso discorso vale per i connettivi : e _.
Si osservi, ad esempio, che p0 ^ p1 e una formula 2-aria e quindi del tipo di
(p0 ; p1). La medesima formula, pero, e anche 3-aria, dato che le sue variabili
hanno indice minore di 3, e quindi e anche del tipo di (p0; p1; p2). La formula
p1 ^ p2 non e 2-aria, anche se contiene esattamente due variabili, e quindi non
e del tipo di (p0 ; p1). Essa e 3-aria, e in generale n-aria per ogni n > 2, quindi
possiamo pensarla come (p0 ; : : : ; pn;1), per ogni n > 2. Per le stesse ragioni,
ogni variabile pi e una formula j-aria, per ogni j > i. E quindi evidente che
una stessa formula puo essere considerata come formula n-aria per inniti valori
di n e che Fmi Fmj , per ogni i j. Il fatto che una formula possa avere
arieta diverse e che l'arieta non coincida col numero delle variabili che essa contiene e certamente poco intuitivo, tuttavia questa denizione di formula n-aria
permette di vedere l'insieme delle formule n-arie come un insieme denito induttivamente da Pn in FM. Se denissimo \formula n-aria" come \formula in cui
occorrono esattamente n variabili distinte" o come \formula in cui n e il massimo degli indici delle variabili eettivamente occorrenti in essa", otterremmo
che ogni formula sarebbe n-aria per un unico valore di n, ma non potremmo
piu dimostrare il teorema precedente e quindi non potremmo piu denire per
recursione sulle formule n-arie, come ci accingiamo a fare.
Associamo alle formule n-arie un signicato nitario nel modo seguente.
Innanzitutto osserviamo che come FM e generata liberamente da P, cos FMn
e generata liberamente da Pn: cio rende possibile denire per recursione un
morsmo M n da FMn verso l'algebra
D(2n) = (P(2n); \; [; ;)
facendolo indurre da una funzione g : Pn ! P(2n) tale che g(pi ) = fs 2 2n :
s(i) = 1g: per il teorema 2.6.1 g si estende a un unico morsmo M n dall'algebra
delle formule n-arie verso D( 2n ). Chiameremo M n() signicato n-ario di .
Il signicato n-ario puo anche essere pensato in termini funzionali, identicandolo con la funzione caratteristica di M n (), ossia con la funzione n-aria fn
86
Capitolo 3. Logica enunciativa
da 2n verso 2 tale che, per ogni s 2 2n,
2 M n()
n
f (s) = 10 se saltrimenti.
Diremo che fn e la funzione di verita n-aria associata ad : le tavole di verita,
dalle quali ha preso avvio il nostro discorso sulla semantica, non sono altro che
le tabelle di calcolo delle funzioni di verita n-arie associate alle formule.
Il signicato n-ario ha il vantaggio di essere un insieme nito, mentre M()
e in genere un insieme innito, addirittura piu che numerabile. Naturalmente
possiamo parlare di signicato n-ario solo per formule n-arie e cio costituisce
un limite quando si vogliono confrontare i signicati di un insieme innito di
formule. Infatti, mentre due formule e possono sempre essere considerate
n-arie per qualche n, un insieme innito di formule puo contenere formule di
arieta arbitrariamente grande e quindi puo non esistere un n tale che tutte
siano formule n-arie. In questo caso i signicati delle formule possono essere
confrontati solo come valori di M e quindi M non e sostituibile dalla totalita
delle M n .
I signicati M() e M n() sono stati deniti per recursione in modo indipendente, ma si tratta di due concetti correlati: il signicato nitario M n () si
ottiene troncando le valutazioni di M() al livello n. Ricordiamo che n =
((0); :::; (n ; 1)) e deniamo, per ogni X 2! , X n = f n : 2 X g.
Teorema 3.4.2 Se e n-aria e se e sono valutazioni tali che n = n
allora 2 M() sse 2 M().
La dimostrazione e per induzione su . Se = pi e certamente i < n e
poiche da n = n deriva (i) = (i) per i < n, abbiamo 2 (pi ) sse
(i) = 1 sse (i) = 1 sse 2 (pi ). Se = :, allora e n-aria e per ipotesi
induttiva abbiamo 2 M() sse 2 M(), quindi
2 M(:) sse 2= M() sse 2= M() sse 2 M(:):
Se = ^ allora e sono n-arie, quindi 2 M() sse 2 M() e 2 M()
sse 2 M(). Abbiamo allora
2 M( ^ ) sse 2 M() e 2 M()
sse 2 M() e 2 M()
sse
2 M( ^ ).
Il caso della disgiunzione e trattato in modo analogo.
Teorema 3.4.3 Per ogni formula n-aria , M n() = M() n.
La dimostrazione e per induzione su . Evidentemente, essendo i < n,
M n (pi ) = fs 2 2n : s(i) = 1g = M(pi ) n.
Se = : allora M n (:) = ;M n () = ;M() n per ipotesi induttiva.
Resta da dimostrare che ;M() n = M(:) n. Assumiamo s 2 ;M() n,
3.4. Signicato nitario
87
allora s 2= M() n e quindi per ogni tale che n = s, 2= M() e percio
2 M(:), ma allora s 2 M(:) n. Viceversa, se s 2 M(:) n allora
esiste tale che n = s e 2 M(:). Quindi 2 ;M() e 2= M().
Se valesse s 2 M() n allora esisterebbe tale che n = s e 2 M(),
ma per il teorema precedente allora anche 2 M(), il che e assurdo. Quindi
s 2= M() n e s 2 ;M() n.
Se = ^ allora M n( ^ ) = M n() \ M n() = M() n \ M() n per
ipotesi induttiva. Resta da dimostrare che M() n \ M() n = M( ^ ) n.
Assumiamo s 2 M() n e s 2 M() n. Allora esiste tale che n = s e
2 M() ed esiste tale che n = s e 2 M(). Per il teorema precedente
2 M() e quindi, poiche 2 M(), 2 M( ^ ) e s 2 M( ^ ) n.
Viceversa, se s 2 M( ^ ) n allora esiste tale che n = s e 2 M( ^ ),
ma allora 2 M() e 2 M() e quindi s 2 M() n e s 2 M() n, percio
s 2 M() n \ M() n.
Se e _ la dimostrazione e analoga.
Possiamo ora ricondurre il concetto di tautologia all'ambito nitario e alle tavole
di verita dimostrando che, se e n-aria, allora e una tautologia sse M n () =
2n . Infatti e una tautologia sse M() = 2! sse M() n = 2! n, usando il
teorema 3.4.2, sse M n () = 2n, usando il teorema 3.4.3.
Corollario 3.4.4 Per ogni 2 F mn e ogni 2 2! , f() = fn ( n).
Per le denizioni di fn e di f e per il teorema precedente, fn ( n) = 1
sse n 2 M n () sse n 2 M() n sse 2 M() sse f () = 1.
Anche per L , il linguaggio basato sui connettivi : e !, possiamo parlare
di formule n-arie e possiamo denire il signicato signicato nitario come un
morsmo Mn che assegna a ogni formula n-aria un insieme di n-ple di valori di
verita. Lasciamo al lettore il compito di formulare le denizioni dell'algebra delle
formule n-arie nel caso di L e dell'algebra in cui tali formule assumono i loro
signicati. Come abbiamo gia dimostrato per L, il signicato nitario di una
formula si puo ottenere con una restrizione delle valutazioni che ne costituiscono
il signicato. Osserviamo innanzitutto che la traduzione , denita nel paragrafo
3.3, porta formule n-arie su formule n-arie: cio permette di dimostrare il teorema
seguente.
Teorema 3.4.5 Per ogni formula n-aria di L , Mn() = M n(()).
La dimostrazione, per induzione sulle formule, ricalca quella del teorema
3.3.4 ed e lasciata al lettore.
Corollario 3.4.6 Per ogni formula n-aria di L , Mn () = M () n.
Vale s 2 Mn () sse s 2 M n(()), per il teorema precedente, sse s 2
M(()) n per il teorema 3.4.3, sse s 2 M () n, per il teorema 3.3.4.
Ogni formula del linguaggio enunciativo esprime un signicato costituito da
un sottoinsieme di 2! . Per ragioni di cardinalita non tutti i sottoinsiemi di 2!
sono il signicato di qualche formula, tuttavia e possibile dimostrare che ogni
88
Capitolo 3. Logica enunciativa
sottoinsieme di 2n e il signicato di una formula n-aria e che per ogni funzione
f : 2n ! 2 esiste una formula n-aria tale che f = fn , vale a dire f e la
funzione di verita n-aria associata ad .
Innanzitutto introduciamo una notazione che permetta di rappresentare in
modo abbreviato le congiunzioni e le disgiunzioni nite di formule. Poniamo
quindi, per ogni n > 0 e ogni 0 ; :::; n;1,
^
_
i = 0 ^ ::: ^ an;1 e i = 0 _ ::: _ an;1:
i<n
i<n
V
Diremo allora che una congiunzione i<n i e una congiunzione fondamentale
n-aria se, per ogni i < n, Vi = pi oppure i = :pi . Osserviamo che ad ogni
n
congiunzione fondamentale
i<n i e associata esattamente una n-pla s 2 2
V
n
tale che M ( i<n i) = fsg, e precisamente la n-pla s tale che si = 1 se
i = pi e si = 0 se i = V:pi . Viceversa, per Vogni s 2 2n esiste un'unica
congiunzione fondamentale i<n i tale che M n ( i<n i) = fsg. Diremo che
una formula n-aria e in forma normale disgiuntiva se e una disgiunzione di
congiunzioni fondamentali. Supponiamo, ad esempio, che sia n = 3: esistono
allora 23 congiunzioni fondamentali 3-arie:
0 = p0 ^ p1 ^ p2
1 = p0 ^ p1 ^ :p2
2 = p0 ^ :p1 ^ p2
..
..
.
.
7 = :p0 ^ :p1 ^ :p2
W
Ogni disgiunzione j<k j di formule i scelte tra le 0; :::; 7 e una forma
normale disgiuntiva 3-aria. Una forma normale disgiuntiva n-aria conterra al
massimo 2n disgiunti, scelti tra le 2n possibili congiunzioni fondamentali n-arie.
Teorema 3.4.7 Per ogni X 2n esiste una forma normale disgiuntiva n-aria
tale che M n() = X .
Per ogni s 2 X esiste una congiunzione fondamentale sWtale che M n( s ) =
fsg e quindi consideriamo la forma normale disgiuntiva s2X s. Abbiamo
allora
_
[
M n ( s ) = M n( s) = X;
s2X
s2X
dato che M n( s ) = fsg per ogni s 2 X.
Corollario 3.4.8 Per ogni formula n-aria esiste una formula in forma
normale disgiuntiva n-aria equivalente ad , ossia tale che M() = M().
Dal teorema 3.4.3 sappiamo che M() n = M n(). D'altra parte M n ()
e un sottoinsieme di 2n e quindi, per il teorema precedente, esiste una formula
n-aria in forma normale disgiuntiva tale che M n () = M n(). Sempre per il
3.5. Sostituzione
89
teorema 3.4.3 abbiamo M n() = M() n e quindi M() n = M() n. Per
il teorema 3.4.2 possiamo concludere che M() = M().
Il signicato nitario puo essere pensato come una funzione di verita da
2n verso 2: il corollario seguente mostra che anche da questo punto vista ogni
signicato nitario e esprimibile mediante una formula.
Corollario 3.4.9 Per ogni n > 0 e ogni f : 2n ! 2 esiste una formula n-aria
tale che f = fn .
Ogni funzione f : 2n ! 2 e la funzione caratteristica di un insieme X 2n.
Per il teorema precedente X = M n () per qualche formula n-aria e quindi,
per denizione, f e la funzione di verita n-aria associata ad ossia f = fn .
Come abbiamo visto alla ne del paragrafo 3.3, i linguaggi L e L sono equivalenti, nel senso che e possibile tradurre ogni formula dell'uno in una formula
dell'altro avente lo stesso signicato. Quindi anche L e in grado di esprimere tutti i possibili signicati nitari: se X 2n dal teorema precedente
sappiamo che esiste una formula di L tale che X = M n(), per il teorema
3.4.3 M n () = M() n, per il teorema 3.3.6 M() = M ( ()) e quindi
M() n = M ( ()) n, inne M ( ()) n = Mn ( ()) per il corollario
3.4.6.
Esercizio 3.4.1 Si dimostri che per ogni , 2 F mn,
1. M() M() sse M n() M n(),
2. M() = M() sse M n() = M n().
3.5 Sostituzione
Consideriamo l'insieme E delle espressioni di un linguaggio L strutturato dall'operazione di concatenazione di successioni nite. Intuitivamente un'espressione b occorre in un'espressione a se esistono due espressioni x e y tali che
a = x b y. (E possibile che x o y o entrambe siano la successione vuota.)
Ad esempio, :p0 occorre in ^:p0:p1, ponendo x uguale a ^ e y a :p1. Tuttavia a puo occorrere in luoghi diversi di b. Ad esempio, :p0 occorre due volte in
^:p0 ^:p0: la prima occorrenza si ottiene ponendo x uguale a ^ e y a ^:p0 e la
seconda ponendo x uguale a ^:p0^ e y alla successione vuota. Per individuare
le varie occorrenze di a in b possiamo numerarle da sinistra a destra; nel caso
precedente, quindi, parleremo della prima e della seconda occorrenza di :p0 in
^:p0 ^ :p0. Se in a vi sono n occorrenze di b, allora esistono delle espressioni
x1 ; : : : ; xn+1 tali che
a = x1 b x2 b : : : xn b xn+1:
Se a contiene n occorrenze di b, deniamo sezione determinata dalla i-esima
occorrenza di b, (0 i n), la coppia di espressioni (y; z) dove
y = x1 b x2 : : : xi;1 b xi
90
Capitolo 3. Logica enunciativa
e
z = xi+1 b xi+2 : : : xn b xn+1 :
Evidentemente vale a = y b z. Diremo inne che a0 e ottenuta da a per
rimpiazzamento dell'n-esima occorrenza di b con c se (y; z) e la sezione determinata in a dall'n-esima occorrenza di b e a0 = y c z. Quindi se nell'espressione
^:p0 ^:p0 rimpiazziamo la prima occorrenza di :p0 con p1 otterremo ^p1 ^:p0,
se rimpiazziamo la seconda otterremo ^:p0 ^ p1.
A dierenza del rimpiazzamento, che e un'operazione di tipo locale che agisce su singole occorrenze di una data espressione, l'operazione di sostituzione
e di tipo globale ed agisce simultaneamente su tutte le occorrenze di una data
variabile. Potremmo denire l'operazione di sostituzione nei termini dell'operazione di rimpiazzamento nel modo seguente: per ogni coppia di formule ,
e ogni variabile pi , il risultato della sostituzione di pi con in si ottiene
rimpiazzando simultaneamente con ogni occorrenza di pi in . In tal modo
rimarrebbe tuttavia da dimostrare che il risultato della sostituzione di una variabile con una formula sia ancora una formula, e non un'espressione qualsiasi.
Preferiamo quindi presentare la sostituzione come un morsmo dell'algebra delle
formule in se stessa. Deniamo sostituzione una funzione : P ! Fm. Poiche
l'algebra delle formule e generata liberamente da P , e possibile estendere ogni
sostituzione ad un'unico morsmo So : FM ! FM. Avremo quindi
1.
2.
3.
4.
So (pi) = (pi )
So (:) = :So ()
So ( ^ ) = So () ^ So (),
So ( _ ) = So () _ So ().
Se e una formula n-aria e (pi ) = i , indicheremo spesso So (a) con la
notazione piu intuitiva
(p0 = 0 ; :::; pn;1= n;1) o ( 0 ; :::; n;1);
poiche So compie sulle formule una trasformazione che dipende unicamente
dai valori di relativi alle variabili pi di indice i < n, esattamente come V al
assegna un signicato che dipende solo dai valori di per i < n. Possiamo
visualizzare il processo di sostituzione operato da So sulla formula generando
la costruzione ad albero di , cambiando nei nodi terminali ogni variabile pi
con la formula (pi ), e quindi procedendo verso il basso applicando nello stesso
ordine le operazioni O: , O^ e O_ . Al termine di questo processo la formula
che occupa la radice sara So (). La sostituzione puo operare anche tra due
linguaggi diversi. Se L0 = C [P0 e L1 = C [P1, possiamo estendere il concetto di
sostituzione al caso di una funzione : P0 ! F m1 , dato che anche in questo caso
e possibile estendere a un'unica funzione So : Fm0 ! Fm1 . Se supponiamo
che P0 sia l'insieme delle variabili metalinguistiche , ; : : :, diremo che una
91
3.5. Sostituzione
formula di L0 e uno schema perche puo dare origine a una innita di formule
di L1 al variare di : P0 ! F m1 .
Concludiamo osservando che l'ordine in cui si compiono le sostituzioni e
essenziale. Supponiamo ad esempio che valga 0(pi ) = pj e che 0 sia l'identita
per ogni altro argomento. Supponiamo inoltre che valga 1(pj ) = pk e che 1
sia l'identita in ogni altro caso. Abbiamo allora
So 1 (So 0 (pi ^ pj )) = pk ^ pk
e
So 0 (So 1 (pi ^ pj )) = pj ^ pk :
Possiamo ora dimostrare un teorema che considera l'azione combinata di So e
V al . Data una sostituzione e una valutazione , deniamo una valutazione
ponendo (i) = V al ((pi )). Potremmo dire che con viene rappresentata sul piano semantico la sostituzione che compie sul piano sintattico: attribuisce a pi il signicato che attribuisce alla formula che sostituisce a pi .
Teorema 3.5.1 Per ogni sostituzione , valutazione e formula ,
V al (So ()) = V al ():
Dobbiamo dimostrare che i due morsmi V al So e V al coincidono,
come mostra la gura seguente:
FM
So
QQ - FM
V alQ
Q
QQs ?V al
D
V al = V al So
Poiche entrambi sono morsmi dalla struttura FM verso D e poiche FM e
generata da P , per il teorema 2.5.2 e suciente dimostrare che i due morsmi
coincidono sui generatori, ossia V al (So (pi )) = V al (pi ) per ogni i 2 !. Vale
infatti V al (So (pi )) = V al ((pi )) = (i) = V al (pi ).
E anche possibile dimostrare il teorema procedendo per induzione sulle formule, senza ricorrere al teorema 2.5.2: la facile dimostrazione e lasciata al lettore. Il corollario seguente permette di concepire ogni tautologia come una forma
da cui e possibile ricavare per sostituzione un numero innito di tautologie.
Corollario 3.5.2 Per ogni formula e ogni sostituzione , se e una tautologia allora anche So () lo e.
Basta osservare che, al variare di , V al () = 1, poiche e una tautologia
e quindi, per il teorema, anche V al (So ()) = 1.
92
Capitolo 3. Logica enunciativa
Teorema 3.5.3 Siano , e tali che V al () = V al (). Se 0 e 1 sono
due sostituzioni tali che 0 (pi) = e 1 (pi ) = e per ogni j =
6 i, 0 (pj ) =
1(pj ), allora per ogni formula ,
V al (So 0 ()) = V al (So 1 ()).
Occorre dimostrare che V al So 0 = V al So 1 e, come nel teorema
precedente, possiamo ridurci a dimostrare che, per ogni j 2 !,
V al (So 0 (pj ) = V al (So 1 (pj ):
Se j 6= i allora So 0 (pj ) = So 1 (pj ), perche per ipotesi 0 (pj ) = 1 (pj ), e da
cio segue subito l'asserto. Se j = i allora So 0 (pj ) = e So 1 (pj ) = , ma
allora per ipotesi V al () = V al ().
Corollario 3.5.4 Se e sono equivalenti e se le sostituzioni 0 e 1 sono
come nel teorema precedente, allora anche So 0 () e So 1 () sono equivalenti.
E chiaro che se e sono equivalenti allora M() = M() e quindi, per
il teorema 3.3.1, V al () = V al () per ogni , ma allora, per il teorema
precedente, anche So 0 () e So 1 () sono equivalenti.
Il corollario seguente e di importanza fondamentale perche garantisce che il
rimpiazzamento di formule equivalenti non muta il signicato della formula al
cui interno il rimpiazzamento viene compiuto.
Corollario 3.5.5 Se occorre in , 0 e una formula equivalente ad e 0
e ottenuta da rimpiazzando in essa un'occorrenza di con 0 , allora e
equivalente a 0 .
Sia (x; y) la sezione relativa alla data occorrenza di in e quindi sia
= x y. Consideriamo = x pk y, dove pk e una variabile che non
occorre in . Possiamo descrivere il risultato 0 del rimpiazzamento di quella
occorrenza di in mediante 0 in termini di sostituzioni nel modo seguente.
Deniamo 0 e 1 in modo tale che siano l'identita su tutte le variabili diverse
da pk , mentre porremo
0(pk ) = e 1 (pk ) = 0 .
Abbiamo sia So 0 () = sia So 1 () = 0, quindi, per il corollario precedente,
se e equivalente ad 0 allora e equivalente a 0.
Il teorema seguente illustra i rapporti tra l'operazione di sostituzione sul
piano sintattico e l'operazione di composizione di funzioni sul piano semantico.
Teorema 3.5.6 Se e una formula k-aria e 0; :::; k;1 sono formule n-arie,
allora
fn(0 ;:::;n;1 ) = Compnk (fk ; gn0 ; :::; gnn;1 ).
93
3.6. Conseguenza logica
Sia s 2 2n e sia una valutazione coincidente con s sui primi n posti, ossia
n = s. Sia una sostituzione tale che (pi ) = i per i < k. Abbiamo allora
(i) = V al ((pi)) = V al ( i ) = fi () = fni ( n);
dove l'ultimo passaggio deriva dal corollario 3.4.4. Abbiamo allora
Compnk (fk ; gn0 ; : : : ; gnk;1 )(s) =
=
=
=
=
Compnk(fk ; gn0 ; : : : ; gnk;1 )( n)
fk (fn0 ( n); : : : ; fnk;1 ( n))
fk ( (0); : : : ; (k ; 1))
fk ( k)
f ( ):
Ricordando che V al () = V al (( 0 ; : : : ; k;1)) per il teorema 3.5.1, abbiamo che 2 M() sse 2 M(( 0; : : : ; k;1)), per il teorema 3.3.1, e
quindi
f ( ) = f(0 ;::: ;k;1 ) ()
= fn(0 ;::: ;k;1 ) ( n)
= fn(0 ;::: ;k;1 ) (s):
Da questo teorema si ottiene immediatamente un'altra dimostrazione del fatto
che la sostituzione trasforma tautologie in tautologie.
Esercizio 3.5.1 Elencare le formule e le sostituzioni tali che So () =
p0 ^ (:p1 _ p0 ).
Esercizio 3.5.2 Il rimpiazzamento trasforma sempre tautologie in tautologie?
3.6 Conseguenza logica
A questo punto possiamo ritornare al tema fondamentale del nostro discorso:
la teoria dell'inferenza e la nozione di conseguenza logica. In prima istanza abbiamo denito un'inferenza corretta quando tra premesse e conclusione dell'inferenza sussiste una relazione di conseguenza logica, ossia se in ogni circostanza
in cui le premesse sono vere anche la conclusione risulta vera. Se identichiamo
l'insieme delle circostanze in cui una formula e vera con l'insieme delle valutazioni per cui risulta vera, ossia con il suo signicato, possiamo allora dire che e
conseguenza logica di , in simboli j= , se M() M(). Vale a dire, j= sse ogni valutazione che rende vera rende vera anche , ossia ogni modello di
e anche modello di . Ad esempio, si verica facilmente che p0 j= p0 _ p1 ,
dato che M(p0 ) M(p0 ) [ M(p1 ).
Se vogliamo estendere il concetto di conseguenza logica al caso in cui vi siano
piu premesse, occorre estendere la funzione M a insiemi di formule: poniamo
94
Capitolo 3. Logica enunciativa
T
allora, per ogni ; Fm, M(;) = fM() : 2 ;g. Quindi il signicato di
un insieme di formule e l'intersezione dei signicati delle formule che lo compongono, l'insieme dei modelli comuni. In particolare, quando ; e l'insieme
nito f0 ; : : : ; n;1g abbiamo M(;) = M(0) \ ::: \ M(n;1). Diremo che
una valutazione e modello di ;, indicandolo con j= ;, quando 2 M(;):
quindi una valutazione e modello di un insieme di formule quando e modello di
ogni formula dell'insieme. Diremo che un insieme di formule ; e soddisfacibile
se esiste un tale che j= ;. (La notazione j= introdotta nel paragrafo
precedente puo essere vista come un'abbreviazione di j= fg.)
Possiamo ora denire la nozione generale di conseguenza logica nel modo
seguente: e conseguenza logica dell'insieme di premesse ;, in simboli ; j= ,
se M(;) M(). (Quando ; e un insieme nito, scriveremo semplicemente
0 ; : : : ; n;1 j= invece di f0 ; : : : ; n;1g j= .) In altri termini, e conseguenza logica di ; sse ogni valutazione che renda vera simultaneamente ogni formula 2 ; rende vera anche , ossia ogni modello di ; e modello di . In particolare, e conseguenza logica di 0 ; : : : ; n;1 sse M(0 )\:::\M(n;1) M()
e nel caso di n = 1 riotteniamo la nozione iniziale. Il concetto di conseguenza
logica e di importanza fondamentale e richiede alcune osservazioni.
1) Non bisogna confondere l'uso del simbolo j= nell'esprimere la relazione tra
valutazioni e formule, j= , ossia e modello di , con l'uso appena introdotto
per indicare la relazione di conseguenza logica tra insiemi di formule e singole
formule.
2) Non bisogna confondere i signicati di j= e !. Il simbolo ! serve per
costruire formule del linguaggio oggetto, ossia del linguaggio formale L, come
! . Il simbolo j= fa parte del metalinguaggio, ossia del linguaggio naturale,
e serve per costruire asserzioni dotate di un signicato intuitivo come j= ,
che semplicemente abbrevia \ e conseguenza logica di ".
3) Bisogna considerare attentamente la struttura della denizione di conseguenza logica ; j= : per ogni (se per ogni 2 ; accade che j= , allora
j= ). Si osservi che il primo \per ogni" riguarda tutta l'implicazione tra
parentesi ed e una quanticazione su valutazioni, mentre il secondo riguarda
solo l'antecedente dell'implicazione ed e una quanticazione sulle formule di ;.
Quando ; = fg il secondo \per ogni" scompare e asserire j= signica
semplicemente asserire che, per ogni valutazione , se j= allora j= .
Quando ; = f0; : : : ; n;1g possiamo leggere il secondo \per ogni" come una
congiunzione nita e asserire 0 ; : : : ; n;1 j= signica asserire che, per ogni
, se ( j= 1 e : : : e j= n;1) allora j= .
4) Per quanto riguarda il primo \per ogni", non bisogna commettere l'errore
di distribuirlo sull'antecedente e il conseguente dell'implicazione, leggendo j=
come se fosse: se per ogni , j= , allora per ogni , j= . Cio equivarrebbe
ed asserire: se j= allora j= , ossia se e una tautologia allora e una
tautologia. E facile vedere che se j= allora \se e una tautologia allora e una tautologia": infatti se e una tautologia abbiamo M() = 2! e quindi,
essendo M() M(), anche M() = 2! , quindi anche e una tautologia.
Non vale invece l'implicazione inversa: ad esempio, se p0 e una tautologia allora
anche p1 e una tautologia, ma non vale p0 j= p1 .
95
3.6. Conseguenza logica
5) Per quanto riguarda il secondo \per ogni", se per una data valutazione accade che non tutte le premesse 2 ; sono vere in , allora l'implicazione (se
per ogni 2 ; accade che j= allora j= ) e vera. Se cio accade per tutte
le valutazioni, ossia se M(;) e vuoto, ad esempio perche ; contiene sia che
:, allora ; j= qualunque sia .
Illustriamo la nozione di conseguenza logica con un esempio. Si verica
facilmente che
p0 _ p1 ; p2 ! :p1; p2 j= p0 ;
poiche M(p0 _ p1) \ M(p2 ! :p1 ) \ M(p2), vale a dire (M(p0) [ M(p1)) \
(;M(p2 ) [ ;M(p1 )) \ M(p2), e incluso in M(p0). Per vericarlo basta dimostrare che nell'algebra Boole vale (x _ y) ^ (:z _ :y) ^ z x. Infatti
(x _ y) ^ (:z _ :y) ^ z =
=
=
=
(x _ y) ^ ((:z ^ z) _ (:y ^ z))
(x _ y) ^ (:y ^ z)
(x ^ :y ^ z) _ (y ^ :y ^ z)
x ^ :y ^ z
x:
Quando l'insieme delle premesse e nito si puo vericare se sussiste la relazione
di conseguenza utilizzando il signicato nitario delle formule: per vericare
se 0; : : : ; n;1 j= possiamo considerare il minimo n tale che le formule
coinvolte nella conseguenza logica siano tutte n-arie e limitarci a vericare se
M n (0) \ ::: \ M n(n;1) M n(). Infatti M(0 ) \ ::: \ M(n;1) M()
sse M(0 ^ ::: ^ n;1) M(), d'altra parte per l'esercizio 3.4.1 quest'ultima
inclusione equivale a M n (0 ^ ::: ^ n;1) M n() che a sua volta equivale a
M n (0) \ ::: \ M n (n;1) M n().
p0 _ p1 p2 ! :p1
111
110
110
101
101
100
100
011
010
010
001
000
p2 p0
111 111
110
101 101
100
011
001
La tabella precedente riporta sotto a ogni formula i suoi modelli e si vede chiaramente che l'insieme dei modelli delle premesse e incluso nell'insieme dei modelli
della conclusione. Il teorema seguente mostra il fondamentale rapporto che
esiste tra conseguenza logica e implicazione.
Teorema 3.6.1 ;; j= sse ; j= ! .
96
Capitolo 3. Logica enunciativa
Valgono le equivalenze
;; j= sse M(;) \ M() M()
sse M(;) ;M() [ M()
sse M(;) M(: _ )
sse ; j= ! ,
dove il passaggio dalla prima alla seconda riga e giusticato dal punto 6) del
teorema 2.4.5.
Il teorema seguente mostra che la verica della correttezza di un'inferenza
con un numero nito di premesse si riduce a controllare se una certa formula sia
una tautologia. E quindi fondamentale saper riconoscere le tautologie, perche
in esse sono condensate tutte le forme di inferenze corrette. (Nel paragrafo 3.11
dimostreremo che ogni inferenza corretta da un insieme innito di premesse e
riducibile a un'inferenza corretta da un sottoinsieme nito di tali premesse.)
Teorema 3.6.2 Le asserzioni seguenti sono equivalenti:
1. 0 ; : : : ; n;1 j= ,
2. 0 ^ : : : ^ n;1 j= ,
3. j= 0 ^ : : : ^ n;1 ! ,
4. j= 0 ! (1 ! : : :(n;1 ! ) : : :).
La 1) equivale alla 2) perche M(f0; : : : ; n;1g) = M(0 ) \ : : : \ M(n;1).
La 2) equivale alla 3) per il teorema precedente: basta porre ; = ;. Per vericare
che la 3) equivale alla 4) basta dimostrare che le due formule sono equivalenti e
a tale scopo basta vericare che ;(X0 \ : : : \ Xn;1) [ Y = ;X0 [ (;X1 [ : : : [
(;Xn;1 [ Y ) : : :), cio si ottiene dalla legge di De Morgan.
Si osservi che ; j= sse e una tautologia. Infatti le premesse i , quando
sono presenti, restringono le valutazioni che devono rendere vera a quelle
che rendono vere tutte le i: se l'insieme delle premesse e vuoto, non si opera
alcuna limitazione e ogni valutazione deve rendere vera , che quindi risulta
essere
Allo stesso risultato arriviamo osservando che M(;) =
T una tautologia.
fM() : 2 ;g = T ; = 2! .
Proponiamo di analizzare il concetto intuitivo di inferenza corretta in questi
termini: se rappresentiamo con 0; : : : ; n;1 le premesse di un'inferenza e con la conclusione, diremo che l'inferenza e corretta se la conclusione e conseguenza
logica delle premesse. Vediamo ora all'opera questa analisi in un caso concreto.
Consideriamo i seguenti quattro enunciati:
Antonio ama Maria o Antonio ama Sara
Se Antonio ama Maria allora Antonio tradisce Sara
Se Antonio ama Sara allora Antonio tradisce Maria
Antonio tradisce Sara o Antonio tradisce Maria
p0 _ p1
p0 ! p2
p1 ! p3
p2 _ p3
3.6. Conseguenza logica
97
Possiamo rappresentare il legame inferenziale che sussiste tra l'insieme dei primi
tre enunciati, le premesse, e il quarto, la conclusione, con
p0 _ p1 ; p0 ! p2 ; p1 ! p3 j= p2 _ p3 :
Per vericare l'esistenza di questo legame inferenziale possiamo controllare se
nell'algebra di Boole valga
(x _ y) ^ (:x _ z) ^ (:y _ w) z _ w;
oppure possiamo applicare il teorema precedente e vericare se
(p0 _ p1 ) ^ (p0 ! p2 ) ^ (p1 ! p3 ) ! (p2 _ p3 )
sia una tautologia. Lasciamo al lettore queste veriche che in ogni caso confermano la correttezza dell'inferenza. (Si veda l'esercizio 3.6.1.) Quello che ci
preme sottolineare e la natura logica del legame individuato tra premesse e conclusioni. L'inferenza risulta corretta indipendentemente dal fatto che si tratti
di Antonio, di Maria, di amore e tradimento. Non solo questi contenuti sono
indierenti, ma la stessa verita o falsita delle asserzioni coinvolte e irrilevante
per la correttezza dell'inferenza. Infatti un'inferenza corretta stabilisce un legame tra premesse e conclusione che e indipendente da come va il mondo e
indipendente dal signicato relativo a una particolare valutazione delle formule
coinvolte. Il legame tra premesse e conclusione deve essere di natura logica e
quindi deve sussistere in ogni possibile circostanza, deve essere compatibile con
ogni signicato relativo. Le formule del linguaggio formale sono particolarmente
adatte ad esprimere cio che rimane dopo questo processo di astrazione, perche
in esse non c'e piu traccia dei contenuti specici degli enunciati del linguaggio
naturale. Una volta rappresentata nel linguaggio formale, l'inferenza perde la
sua specicita e diventa uno schema d'inferenza, poiche le variabili enunciative
che vi compaiono possono essere sostituite con enunciati qualsiasi del linguaggio
naturale, ottenendo in ogni caso un'inferenza corretta.
Passiamo ora a studiare la relazione di conseguenza logica all'interno di un discorso piu generale riguardante il rapporto tra linguaggio e realta. Tale rapporto
puo presentarsi in due modi opposti e complementari. Se lo assumiamo nella
direzione dal linguaggio verso la realta, utilizziamo le formule del linguaggio per
imporre condizioni a cui la realta deve conformarsi, per caratterizzare un certo
ambito di realta. Agiamo in questo modo quando ssiamo un insieme di leggi
a cui deve sottostare un insieme di oggetti, per congurare una situazione che
potremmo chiamare un \modello" di tali leggi. Se lo assumiamo nella direzione
opposta, immaginiamo che vi sia anzitutto una realta che vogliamo descrivere
nei termini delle formule del nostro linguaggio e quindi consideriamo come questa realta si rietta in tali formule. Quindi in un caso le formule hanno funzione
normativa nei confronti della realta, nell'altro sono utilizzate per rispecchiare
una realta che si e gia costituita in modo indipendente: in un caso il modello
e qualcosa da sintetizzare a partire dal linguaggio di cui si dispone, nell'altro il
modello e all'origine di una serie di asserzioni formulate entro il linguaggio. Lo
98
Capitolo 3. Logica enunciativa
studio di questo rapporto e uno degli aspetti fondamentali della logica e si puo
presentare a diversi livelli di complessita, secondo il tipo di linguaggio adottato.
In questo paragrafo esamineremo il caso del linguaggio enunciativo L e intenderemo come \realta descrivibile da L" una qualsiasi valutazione : P ! 2 o un
insieme di tali valutazioni.
Consideriamo dapprima il rapporto nella direzione dalla realta verso il linguaggio denendo una funzione T h : P( 2! ) ! P(Fm) tale che, per ogni
X 2! ,
Th(X) = f : j= , per ogni 2 X g:
Diremo che Th(X) e la teoria di X, una descrizione che si attaglia ad ogni
particolare 2 X, anzi, la piu esauriente di tali descrizioni. In particolare,
quando X = f g scriveremo Th() per indicare l'insieme delle formule vere in
. E facile vericare che Th e una funzione antitona, ossia che X Y implica
Th(Y ) Th(X): se si dilata l'insieme delle valutazioni, l'insieme delle realta
prese in esame, si contrae l'insieme delle verita comuni ad ogni valutazione, la
teoria corrispondente alle realta considerate. Nei casi limite, quando X e ;,
Th(X) e F m, la teoria banale che contiene ogni formula, e quando X e 2! ,
Th(X) e l'insieme delle tautologie, la teoria minima.
Per quanto riguarda il rapporto nell'altra direzione, dal linguaggio verso la
realta, disponiamo gia della funzione M : P (F m) ! P ( 2! ) tale che, per ogni
; F m,
M(;) = f : j= , per ogni 2 ;g:
Diremo che M(;) e la classe assiomatica di ;, l'insieme delle realta descritte
da ;. Quando ; contiene un unico enunciato parleremo di classe elementare .
Si verica facilmente che M e una funzione antitona, ossia che ; implica
M() M(;): se si dilata l'insieme delle realta, si contrae l'insieme delle verita
condivise da tali realta. E facile stabilire una condizione necessaria e suciente
perche sia M(;) = 2! : basta richiedere che ; sia ; o un insieme di tautologie.
Piu dicile e stabilire un'analoga condizione per M(;) = ;. Potremo ottenerne una dal teorema di completezza, per ora possiamo accontentarci di una
condizione suciente: esiste una formula tale che , : 2 ;.
Vi sono dunque formule che non hanno alcun eetto di caratterizzazione
sulla realta: le tautologie e le contraddizioni. In secondo luogo osserviamo che
nessuna formula puo caratterizzare un unico modello, anzi, per ogni formula ,
se l'insieme dei modelli di non e vuoto, allora e innito. Cio accade perche
le variabili occorrenti in una formula sono sempre in numero nito e per il
teorema 3.4.2 tutte le valutazioni coincidenti sulle variabili di sono equivalenti
rispetto alla soddisfacibilita di . Un discorso analogo vale anche per gli insiemi
niti. Infatti e chiaro che e modello dell'insieme f0; : : : ; n;1g sse e modello
della formula 0 ^ : : : ^ n;1, quindi la capacita di caratterizzare di un insieme
nito equivale a quella di una singola formula. Con un ; innito e evidentemente
possibile forzare la scelta di un'unica realta. Ad esempio, ; = P caratterizza il
modello costituito dalla funzione costante 1. E facile stabilire una condizione
3.6. Conseguenza logica
99
su ; che garantisca l'unicita della realta descritta. Diremo che un insieme ; di
formule e completo se, per ogni formula , 2 ; o : 2 ;. Un esempio di
insieme completo e T h(), per ogni . Si verica facilmente che se ; e completo
allora, se ha un modello, ne ha uno solo. Supponiamo infatti che ; abbia due
modelli e 0 . Poiche ; e completo, per ogni variabile avremo pi 2 ; o :pi 2 ;.
Se pi 2 ; avremo (i) = 1 = 0 (i) e se :pi 2 ; avremo (i) = 0 = 0 (i), quindi
= 0. Si osservi che un insieme completo puo non avere modelli, ad esempio
quando contiene sia pi che :pi..
Le funzioni Th e M mettono dunque in relazione la realta con il linguaggio e
il linguaggio con la realta. Se consideriamo le funzioni composte M Th e Th M
otteniamo rispettivamente una funzione da P ( 2! ) in se stesso e da P (Fm) in
se stesso. Innanzitutto osserviamo che, essendo T h e M antitone, le funzioni
composte M Th e Th M sono monotone. Inoltre M Th e Th M sono
evidentemente progressive, ossia X M(Th(X)) e ; T h(M(;)). Il teorema
seguente dimostra che ogni M(;) e un punto sso della funzione M Th e ogni
Th(X) e un punto sso della funzione T h M.
Teorema 3.6.3 Per ogni ; Fm e per ogni X ! 2,
1. M(Th(M(;))) = M(;),
2. Th(M(Th(X))) = Th(X).
Dimostriamo la 1). Poiche M T h e progressiva, M(;) M(Th(M(;))).
Poiche Th M e progressiva, ; Th(M(;)) e quindi M(Th(M(;))) M(;)
poiche M e antitona. La 2) si dimostra in modo analogo.
Se ora restringiamo P(2! ) all'insieme A = fM(;) : ; Fmg contenente solo
le classi di modelli che sono classi assiomatiche, e parallelamente restringiamo
P(Fm) all'insieme B = fTh(X) : X 2! g, contenente solo gli insiemi di
formule che sono teorie di qualche classe di modelli, si vede facilmente che Th e
M sono l'una inversa dell'altra e che tali funzioni stabiliscono una biiezione tra
A e B.
Vediamo ora come si inserisce in questo discorso la relazione di conseguenza
logica. Innanzitutto deniamo una funzione Cn : P(F m) ! P(F m) ponendo,
per ogni ; Fm, Cn(;) = f : ; j= g. Possiamo considerare Cn(;) come
l'insieme di tutte le conoscenze che sono ricavabili dalle (o riconducibili alle)
formule ;, l'esplicitazione di tutto cio che e implicito in ;. E possibile denire
Cn nei termini di Th e M.
Teorema 3.6.4
Cn(;) = Th(M(;)):
Se 2 Cn(;) allora M(;) M() e quindi Th(M()) Th(M(;)),
essendo T h antitona. Ma 2 Th(M()) e quindi 2 Th(M(;)). Supponiamo
ora 2 Th(M(;)), allora fg T h(M(;)) e quindi, poiche M e antitona vale
M(T h(M(;))) M(). Per il teorema precedente M(T h(M(;))) = M(;) e
quindi M(;) M() da cui si ricava ; j= .
100
Capitolo 3. Logica enunciativa
Da questo teorema e dalle proprieta di T h M messe in luce in precedenza si ricava immediatamente che Cn e una funzione progressiva e monotona. Cio collima con la nozione intuitiva di conseguenza logica, infatti aumentando l'insieme delle premesse l'insieme delle conseguenze non puo diminuire
e ogni premessa e sempre ottenibile come conseguenza. Inoltre risulta chiaro
che e inutile iterare Cn nella speranza di ottenere nuove conseguenze, perche
Cn(Cn(;)) = Cn(;), ossia ogni insieme di formule Cn(;) e un punto sso di
Cn: infatti dal teorema precedente e dal teorema 3.6.3 si ricava immediatamente Th(M(Th(M(;)))) = T h(M(;)).
Possiamo concepire una teoria come un sistema di conoscenze che contiene
tutto cio che e ricavabile con strumenti puramente logici da un insieme di enunciati considerati come assiomi della teoria. Da questo punto di vista una teoria
non e caratterizzata dai suoi assiomi, di fatto la stessa teoria si puo ottenere da
dierenti insiemi di assiomi, ma dal costituire un insieme di conoscenze che ha
raggiunto una condizione di equilibrio, che non ammette crescite ulteriori. Cio
non signica che una teoria non possa essere estesa con ulteriori conoscenze, ma
che queste estensioni, ove possibili, non sono piu un fatto logico. Diremo allora
che un insieme di formule T e una teoria se e chiuso rispetto alla conseguenza
logica, ossia per ogni formula , se T j= , allora 2 T. In altri termini, T e
una teoria se e un punto sso di Cn, ovvero se T = Cn(T).
L'insieme Cn(;) e sempre una teoria, per ogni ;, dato che e un punto sso
di Cn. La piu piccola delle teorie e Cn(;), l'insieme delle tautologie, e la piu
grande Cn(Fm) = Fm, la teoria banale che contiene ogni possibile asserzione.
Si osservi che quando per qualche formula vale sia 2 Cn(;) sia : 2 Cn(;),
allora Cn(;) = Fm. Infatti se accade che ; j= e ; j= :, allora ; non ha
modelli. (Se vi fosse un modello di ;, dovrebbe essere sia modello di sia
modello di :, ma cio e impossibile.) Se ; non ha modelli, allora e banalmente
vero che ; j= , per ogni 2 F m.
Non bisogna confondere questa nozione di teoria come punto sso di Cn,
con Th(X), la teoria di X, l'insieme degli enunciati veri in ogni valutazione di
X. Tuttavia i due concetti di teoria sono strettamente legati. Da un lato, se
; e una teoria, ossia Cn(;) = ;, allora esiste un insieme di valutazioni X tale
che ; = Th(X). Infatti, per il teorema precedente, basta porre X = M(;).
Dall'altro, la teoria di X e un punto sso di Cn e quindi e una teoria. Infatti
per il teorema precedente e il teorema 3.6.3,
Cn(T h(X)) = Th(M(Th(X))) = Th(X):
Se T e una teoria possiamo porci il problema dell'individuazione di un insieme di
formule ; che generi T mediante conseguenze logiche, ossia tale che T = Cn(;):
diremo che un ; siatto e un insieme di assiomi per T, ovvero assiomatizza
T . E chiaro che si puo sempre assiomatizzare in modo banale una teoria T
adottando T stessa come insieme di assiomi, poiche vale Cn(T) = T. Diremo
che T e nitamente assiomatizzabile se e assiomatizzata da un ; nito. A
questo proposito osserviamo che, se T e assiomatizzabile da ; = f0; : : : ; n;1g,
allora T e assiomatizzabile dalla singola formula 0 ^ : : : ^ n;1 : infatti ; e
3.6. Conseguenza logica
101
0 ^ : : : ^ n;1 hanno le stesse conseguenze. Questo discorso non e estendibile
agli insiemi inniti di assiomi, perche il nostro linguaggio non ammette formule
innite.
Esercizio 3.6.1 Si dimostri che nell'algebra di Boole vale:
1. (x _ y) ^ (:x _ z) z _ y;
2. (z _ y) ^ (:y _ w) z _ w;
3. ((x _ y) ^ (:x _ z)) ^ (:y _ w) (z _ y) ^ (:y _ w) z _ w:
Si concluda che p0 _ p1 ; p0 ! p2 ; p1 ! p3 j= p2 _ p3 .
Esercizio 3.6.2 Si dimostri che
1. ^ : j= ,
2. j= _ : ,
3. se _ : j= allora e una tautologia e se j= ^ : allora e una
contraddizione.
Esercizio 3.6.3 Vericare se la conseguenza logica sussiste:
1. p0 ! p1 j= p0 ^ p1
2. p0 ! (p1 ! p2 ); p0 ! p1 j= p0 ! p2
3. p0 ! :p1; :p2; p1 ! (p0 _ p2 ) j= :p1
4. (p0 ! p1 ) _ (p0 ^ :p1) j= p0
5. p0 _ p1; p2 $ p3; :p0 ^ p3 j= :p3 _ :p1
6. :p0 ^ p1 ; p0 _ :p2; p3 ! :p1 j= p2 ^ :p3 .
Esercizio 3.6.4 Tradurre le seguenti inferenze nel linguaggio formale individuando un insieme 0; : : : ; n;1 di premesse e una conclusione . Vericare se
l'inferenza e corretta.
1. Se c'e una perdita nel radiatore, allora l'olio si surriscalda e la pressione
dell'olio si abbassa. Se la pressione dell'olio si abbassa i cuscinetti possono
essere danneggiati. Quindi se c'e una perdita nel radiatore i cuscinetti
possono essere danneggiati.
2. Se fossi colpevole sarei stato a New York al momento del delitto. Se cio
fosse vero, sul mio passaporto dovrebbe esserci un visto d'ingresso negli
Stati Uniti. Ma non e cos, quindi non sono colpevole.