Sei sulla pagina 1di 74

LOGICA MATEMATICA

Mauro Di Nasso

N.B. Questa è una prima versione, ancora incompleta


e con diverse parti da rivedere. Ogni suggerimento su
eventuali correzioni/integrazioni è il benvenuto.
CAPITOLO 1

Calcolo Proposizionale

1. Introduzione ai connettivi
In questa parte preliminare preciseremo il significato dell’avverbio
“non”, delle congiunzioni “e” ed “o”, delle espressioni del tipo “se ...
allora” e “se e solo se”.
Nel linguaggio comune di tutti i giorni – cioè nel cosiddetto lin-
guaggio naturale – il loro significato non è univocamente stabilito. Ad
esempio, a seconda del contesto, la particella “o” può assumere sia si-
gnificato congiuntivo che disgiuntivo. Chiariamo un esempio. Quando
chiediamo “un panino con prosciutto o con salame”, la “o” assume
significato disgiuntivo. Infatti, la nostra richiesta sarà soddisfatta se
riceviamo un panino con prosciutto, sarà soddisfatta se riceviamo un
panino con salame, ma certamente non sarà soddisfatta nel caso in cui
ricevessimo un panino con prosciutto e salame insieme. Invece, quando
un regolamento stabilisce che per partecipare ad un concorso occorre
“essere laureati in matematica o in fisica”, certamente può fare do-
manda anche chi sia in possesso di una doppia laurea in matematica ed
in fisica (significato congiuntivo). Per riuscire a dare una trattazione
matematica del ragionamento e della nozione di linguaggio, sarà neces-
sario fare una scelta precisa, definendo senza ambiguità ed una volta
per tutte il significato da attribuire alla congiunzione “o”, cosı̀ come
alle altre espressioni considerate. Lo faremo seguendo il comune uso
che ne viene fatto nel linguaggio matematico.
Come primo passo verso una formalizzazione del concetto di lin-
guaggio, introduciamo i seguenti simboli, chiamati connettivi logici :
• Simbolo di negazione ¬ “non” ;
• Simbolo di congiunzione ∧ “e” ;
• Simbolo di disgiunzione ∨ “o” ;
• Simbolo di implicazione → “se ... allora” ;
• Simbolo di doppia implicazione ↔ “se e solo se”.
I connettivi permettono di formare nuove proposizion a partire da
proposizioni date. Ad esempio se P denota la proposizione “c’è il sole”
3
4 1. CALCOLO PROPOSIZIONALE

e Q la proposizione “vado al mare”, ¬P denoterà la proposizione “non


c’è il sole”, P → Q la proposizione “se c’è il sole allora vado al mare”,
e cosı̀ via. Il simbolo di negazione ¬ è un connettivo unario perché
si applica ad una singola proposizione, mentre gli altri connettivi si
dicono binari perché connettono coppie di proposizioni.
Qui per proposizione intendiamo un qualunque enunciato cui sia
attribuito – in un fissato contesto – uno ed uno solo tra i due valori
di verità: vero oppure falso. Naturalmente, questa è una semplifica-
zione rispetto al linguaggio naturale, in cui si hanno spesso enunciati
il cui valore di verità appare più sfumato e non riducibile a due sole
possibilità. Tuttavia, nel comune uso matematico, ogni proprietà “ben
formulata” viene effettivamente pensata come proposizione nel senso
indicato sopra, cioè come enunciato che è o vero o falso.
Il grande logico matematico (e filosofo) Bertrand Russell scrisse
che in matematica non conosciamo mai ciò di cui stiamo parlando.1 In
effetti, più che l’essenza degli oggetti presentati, ciò che compete al ma-
tematico è capire come funzionano (tipico esempio: i numeri). Anche
qui faremo qualcosa di simile. Allo scopo di attribuire un significato
preciso ai vari connettivi, stabiliamo come si comportano rispetto ai
valori di verità delle proposizioni coinvolte. Precisamente, per tutte le
proposizioni P e Q, richiediamo quanto segue.

• ¬P è vera quando P è falsa, ed è falsa quando P è vera;


• P ∧Q è vera quando sia P che Q sono vere, ed è falsa altrimenti;
• P ∨ Q è falsa quando sia P che Q sono false, ed è vera altri-
menti;
• P → Q è falsa quando l’ipotesi (o antecedente) P è vera e la
tesi (o conseguente) Q è falsa, ed è vera negli altri casi;
• P ↔ Q è vera quando P e Q hanno lo stesso valore di verità,
ed è falsa altrimenti.
Tutte queste richieste sono schematizzate nella tabella qua sotto,
dove è indicato il valore di verità V (vero) o F (falso) che intendiamo
attribuire alle proposizioni formate usando i vari connettivi, in funzione
dei possibili valori di verità delle proposizioni di partenza.

1 “Mathematics may be defined as the subject where we never know what we


are talking about” (dal libro: Recent Work on the Principles of Mathematics).
1. INTRODUZIONE AI CONNETTIVI 5

P Q P ∧Q P ∨Q P →Q P ↔Q
P ¬P V V V V V V
V F V F F V F F
F V F V F V V F
F F F F V V

Per giungere a definizioni precise abbiamo dovuto necessariamente


compiere delle scelte, non sempre corrispondenti al significato che i vari
connettivi hanno nel linguaggio naturale. Ad esempio, la disgiunzione
∨ corrisponde alla “o” nel suo significato inclusivo: richiediamo infatti
che la proposizione P ∨ Q sia vera nel caso in cui P e Q siano en-
trambe vere. È interessante il fatto che questa ambiguità di significato
che la disgiunzione ha in italiano, non sussisteva invece nel latino. In
quella lingua si usavano infatti due particelle diverse: “vel ” per deno-
tare la “o” inclusiva (quella corrispondente al nostro connettivo ∨), e
“aut” per la disgiunzione esclusiva (come nell’esempio del “panino al
prosciutto o al salame”).
Un caso particolarmente delicato è quello dell’implicazione P → Q.
Pensare alla proposizione P → Q come vera quando P e Q sono vere,
e come falsa quando P è vera ma Q è falsa, sembra in accordo con
l’uso comune. Infatti, con un ragionamento corretto, da premesse vere
si ottengono soltanto conseguenze vere.2 Un po’ strano sembra invece
accettare come valida l’implicazione P → Q ogni volta che P è falsa.
Questo è però in accordo con la pratica matematica.
Un esempio tipico è dato dalla fondamentale nozione di sottoinsie-
me. Per definizione, un insieme A è sottoinsieme di un insieme B se la
seguente implicazione è vera per ogni x:
(x ∈ A) −→ (x ∈ B).
Nel caso in cui l’elemento scelto x appartenga ad A, cioè quando “x ∈
A” è vera, richiediamo che anche “x ∈ B” sia vera. Se invece l’elemento
x non appartiene ad A, l’implicazione di sopra è considerata comunque
vera, sia nel caso che “x ∈ B” sia vera, sia nel caso che “x ∈ / B” sia
falsa.
Un altro possibile argomento a favore della tavola di verità che ab-
biamo dato per il connettivo →, è il seguente. Indipendentemente dal
2 In realtà, nel linguaggio naturale, si considerano implicazioni P → Q solo nel-
l’eventualità che possa esistere un preciso rapporto causale tra P e Q. Ad esempio,
comunemente non si attribuisce alcun valore di verità ad implicazioni del tipo: “se
i multipli di 12 sono pari allora Pisa è in Toscana”.
6 1. CALCOLO PROPOSIZIONALE

valore di verità di P e di Q, sembra ragionevole accettare come vera


l’implicazione (P ∧ Q) → P . Infatti, sembra corretta che la congiun-
zione di due ipotesi implichi ognuna della due. Osserviamo che se P è
vera e Q è falsa, abbiamo la validità di “F → V”; mentre se P è falso,
abbiamo la validità di “F → F”.

2. Le formule proposizionali
Dopo questa introduzione un po’ euristica sul significato dei con-
nettivi logici, spostiamoci ora su un livello più formale, introducendo il
cosiddetto calcolo proposizionale. Lo scopo è quello di matematizzare
l’uso delle proposizioni e dei connettivi, cosı̀ da poter trattare quelle
nozioni logiche mediante un vero e proprio calcolo. Naturalmente, il
passo iniziale è quello di dare definizioni matematiche, cioè precise e
rigorose.
Definizione 1.1. Un linguaggio proposizionale è un insieme infi-
nito di simboli L, chiamati L-variabili proposizionali.
Seguendo l’uso comune, denotiamo con lettere latine maiuscole le
variabili proposizionali, eventualmente con indici.
A, B, C, . . . , X, Y, Z, . . . , A1 , A2 , A3 , . . . , X1 , X2 , X3 , . . .
Intuitivamente, possiamo pensare alle variabili proposizionali come
a generiche proposizioni primitive, a partire dalle quali si ottengono –
usando i connettivi – tutte le altre proposizioni che stiamo studiando.
Naturalmente, devono essere stabilite regole precise per la formazione
di nuove proposizioni a partire da proposizioni date.
Definizione 1.2. L’insieme Form(L) delle L-formule proposizio-
nali è il più piccolo insieme che soddisfa le seguenti proprietà:
(1) Le L-variabili proposizionali sono L-formule proposizionali,
dette L-formule atomiche ;
(2) Se A e B sono L-formule proposizionali, allora anche
(¬A), (A ∧ B), (A ∨ B), (A → B), (A ↔ B)
sono L-formule proposizionali.
Questa definizione ha bisogno di una giustificazione, perché dobbia-
mo garantire che effettivamente esiste il più piccolo tra gli insiemi che
soddisfano le proprietà (1) e (2) di sopra. A questo scopo, definiamo
la sequenza di insiemi h Fn | n ∈ N i, ponendo induttivamente:
• F0 = L ;
2. LE FORMULE PROPOSIZIONALI 7

• Fn+1 = Fn S {(¬A) | A ∈ Fn }
S S
{(AS∧ B) | A, B ∈ Fn }
S {(A ∨ B) | A, B ∈ Fn } {(A → B) | A, B ∈ Fn }
{(A ↔ B) | A, B ∈ Fn (L)}.
Proposizione 1.3. L’insieme di tutte le L-formule proposizionali
è dato dall’unione [
Form(L) = Fn .
n∈N
S
Dim. Vediamo intanto che l’unione n Fn soddisfa S le proprietà (1)
e (2) della Definizione
S 1.2. Banalmente L = F0 ⊆ n Fn . Supponiamo
ora che A, B ∈ n Fn , cioè che A ∈ Fn1 e B ∈ Fn2 per opportuni
n1 , n2 . Visto che la successione degli Fn è crescente, cioè Fn ⊆ Fn0
per n ≤ n0 , entrambe le formule A, B ∈ Fm , dove m = max{n1 , n2 }.
Perciò (¬A), (A ∧ B), (AS∨ B), (A → B), e (A ↔ B) appartengono
tutte a Fm+1 , e quindi a n Fn . Resta da vedere che qualunque altro
insieme Λ che soddisfi le proprietà (1) e (2) della S
Definizione 1.2 include
necessariamente tutti gli insiemi Fn , cioè che n Fn è il più piccolo
insieme con quelle proprietà. Questo è immediato per induzione su n.
Infatti, per la (1), F0 = L ⊆ Λ. Inoltre, per la (2), se Fn ⊆ Λ, anche
Fn+1 ⊆ Λ. 

Le formule proposizionali sono dunque particolari stringhe finite di


variabili proposizionali, connettivi, e parentesi. L’uso delle parentesi è
necessario per evitare ambiguità. Ad esempio, la scrittura “¬A ∧ B”
avrebbe due possibili interpretazioni: la prima consiste nel negare A
e poi nel congiungere con B, cioè “((¬A) ∧ B)”; la seconda consiste
nel negare la congiunzione di A e B, cioè “(¬(A ∧ B))”. Tuttavia, per
comodità, alcune delle parentesi verranno omesse nella scrittura delle
formule, quando ciò non provochi confusione. Lo faremo attenendoci
alle seguenti convenzioni nella lettura di una stringa:
• Il connettivo ¬ ha la precedenza su ∧ e ∨, i quali, a loro volta,
hanno la precedenza su → e ↔.
Ad esempio, scriviamo “¬A ∧ B → C” per intendere la formula
“(((¬A) ∧ B) → C)”.
Sull’insieme Form(L) vale una particolare forma di induzione, detta
induzione sulla costruzione delle formule che useremo ripetutamente
durante il corso.
Proposizione 1.4. Sia Φ una proprietà, e supponiamo che valga-
no:
• Base di induzione: Φ vale per tutte le formule atomiche ;
8 1. CALCOLO PROPOSIZIONALE

• Passo induttivo: Se Φ vale per le formule A e B, allora Φ


vale anche per le formule (¬A), (A ∧ B), (A ∨ B), (A → B),
e (A ↔ B).
Allora la proprietà Φ vale per tutte le L-formule.
Dim. Procedendo per induzione su n e usando le ipotesi di sopra,
è immediato dimostrare che la proprietà Φ vale per
S tutte le formule in
Fn . La tesi segue allora dal fatto che Form(L) = n Fn . 
Oltre a dimostrare proprietà per induzione sulle formule, si possono
anche dare definizioni per induzione sulle formule.3 Un primo esempio
è la seguente nozione di sottoformula.
Definizione 1.5. Definiamo per induzione sulla costruzione delle
formule l’insieme SF(A) delle sottoformule di una formula A in questo
modo:
• Se A ∈ L è una formula atomica, allora SF(A) = {A}, cioè A
è l’unica sottoformula di se stessa.
• Se A = ¬B allora SF(A) = {A} ∪ SF(B) ;
• Se A = B ∨ C o se A = B ∧ C o se A = B → C o se A = B ↔ C,
allora SF(A) = {A} ∪ SF(B) ∪ SF(C).
Definizione 1.6. Definiamo per induzione sulla costruzione delle
formule il rango ρ(A) come segue:


 0 se A è una variabile ;

ρ(B) + 1 se A = ¬B ;
ρ(A) =

 max{ρ(B), ρ(C)} + 1 se A = B ∨ C , o se A = B ∨ C ,

o se A = B → C , o se A = B ↔ C .

Procedere per induzione sulla costruzione delle formule equivale a


procedere per induzione sul rango. Vale infatti la seguente proprietà,
la cui facile dimostrazione è lasciata per esercizio.
Esercizio 1.7. Per ogni formula A, dimostrare che
ρ(A) = min{n | A ∈ Fn }.
Notiamo che il rango di una formula è diverso dal numero dei
connettivi che vi compaiono.
Esercizio 1.8. Sia A è una formula di rango n. Dimostrare che se
k è il numero di connettivi che compaiono in A allora n ≤ k ≤ 2n − 1.
3 In realtà in questo caso sarebbe più corretto parlare di definizioni per
ricorsione.
3. LE INTERPRETAZIONI 9

È importante chiarire che le formule proposizionali sono oggetti


puramente sintattici. Sono infatti semplici stringhe finite di simboli, e
quindi non hanno di per sé alcun valore di verità.
Le formule possono essere pensate come strutture di proposizioni,
nel senso che rimpiazzando le variabili con proposizioni arbitrarie, ne ri-
sultano nuove proposizioni. Ad esempio, se nella formula “A → B ∨ C”
sostituiamo la variabile A con la proposizione “c’è il sole”, la variabile
B con la proposizione “vado al mare” e infine C con “vado a fare shop-
ping”, otteniamo la proposizione “se c’è il sole, allora vado al mare o
vado a fare shopping”.

3. Le interpretazioni
Dopo i primi aspetti sintattici della logica proposizionale, occupia-
moci ora della semantica, cioè del possibile significato delle formule.
Da questo punto di vista, la forza espressiva della logica proposizionale
appare limitata, perché la semantica si riduce ad un’attribuzione dei
valori di verità F o V.

Definizione 1.9. Si dice L-interpretazione l’attribuzione di un


valore di verità a ciascuna L-formula che sia coerente con le tavole
di verità dei connettivi; dunque una L-interpretazione è una funzione
I : Form(L) → {F, V} tale che
(
V se I(A) = F ;
I(¬A) =
F se I(A) = V.
(
V se I(A) = I(B) = V ;
I(A ∧ B) =
F altrimenti.
(
F se I(A) = I(B) = F ;
I(A ∨ B) =
V altrimenti.
(
F se I(A) = V e I(B) = F ;
I(A → B) =
V altrimenti.
(
V se I(A) = I(B) ;
I(A ↔ B) =
F altrimenti.

Le interpretazioni sono univocamente determinate dai valori di ve-


rità che assegnano alle variabili.
10 1. CALCOLO PROPOSIZIONALE

Definizione 1.10. Si dice L-assegnamento l’attribuzione di un va-


lore di verità a ciascuna variabile in L; dunque, un L-assegnamento è
una funzione α : L → {F, V}.
È facile verificare che ogni assegnamento α : L → {F, V} si estende
in modo unico ad un’interpretazione
b : Form(L) → {F, V}.
α
Infatti, per definire α
b si procede per induzione sulla lunghezza n
delle formule. Quando n = 0, cioè per le variabili proposizionali A ∈ L,
poniamo α b(A) = α(A). Al passo induttivo, poniamo:
(
V se αb(A) = F ;
α
b(¬A) =
F se αb(A) = V.
(
V se αb(A) = α b(B) = V ;
b(A ∧ B) =
α
F altrimenti.
(
F se αb(A) = α b(B) = F ;
b(A ∨ B) =
α
V altrimenti.
(
F se αb(A) = V e α b(B) = F ;
b(A → B) =
α
V altrimenti.
(
V se αb(A) = α b(B) ;
b(A ↔ B) =
α
F altrimenti.

Dunque, data un’interpretazione I : Form(L) → {F, V}, se deno-


tiamo con α = IL : L → {F, V} l’assegnamento ottenuto restringendo
I ad L, deve essere αb = I. Per questo, le due nozioni di assegnamento
e di interpretazione sono essenzialmente equivalenti.
Definizione 1.11. Una L-formula proposizionale A si dice vera
nell’interpretazione I se I(A) = V, e si dice falsa nell’interpretazione
I se I(A) = F.
Sia ora A una formula assegnata, e siano X1 , . . . , Xn le variabili
proposizionali che vi occorrono. Dato un qualunque assegnamento I, è
facile verificare che il valore di verità I(A) dipende soltanto dai valori di
verità delle sue variabili: I(X1 ), . . . , I(Xn ). Dunque, per determinare
completamente la semantica di una formula assegnata al variare di tutti
i possibili assegnamenti, è sufficiente considerare soltanto un numero
3. LE INTERPRETAZIONI 11

finito di casi, che possono essere visualizzati mediante le cosidette tavole


di verità.
In generale, se una formula contiene n variabili, la sua tavola di
verità consisterà di 2n righe, una per ognuno dei possibili assegnamenti
di valori di verità alle sue variabili. Vediamo un esempio per illustrare
come si procede in pratica.
Consideriamo la formula “(X → Y ) ∧ ¬Z”. Ci sono 23 = 8 modi
possibili di assegnare valori di verità alle 3 variabili X, Y e Z. Per
ciascuno di questi 8 casi, determiniamo il valore di verità delle sotto-
formule “X → Y ” e “¬Z” e infine, a partire da questi, otteniamo il
valore di verità della formula assegnata.

X Y Z X→Y ¬Z (X → Y ) ∧ (¬Z)
V V V V F F
V V F V V V
V F V F F F
V F F F V F
F V V V F F
F V F V V V
F F V V F F
F F F V V V

Più formalmente, se A è una formula nella quale occorrono le va-


riabili X1 , . . . , Xn , allora la sua tavola di verità può essere vista come
una funzione

τA : Fun ({1, . . . , n}, {F, V}) −→ {F, V}.

Infatti, ogni assegnamento α dei valori di verità alle variabili di A


può essere visto come una funzione χα : {1, . . . , n} → {F, V} do-
ve intendiamo che χα (i) = α(Xi ). Nella tavola di verità, ad ognuno
di questi assegnamenti α ∈ Fun ({1, . . . , n}, {F, V}) viene associato il
corrispondente valore di verità.

Esercizio 1.12. Dimostrare che per ogni funzione

f : Fun ({1, . . . , n}, {F, V}) −→ {F, V}

esiste una formula A nella quale compaiono le variabili X1 , . . . , Xn tale


che la corrispondente tavola di verità τA = f .
12 1. CALCOLO PROPOSIZIONALE

4. Formule soddisfacibili, tautologie, contraddizioni


Definizione 1.13. Sia A una L-formula proposizionale.
• A si dice soddisfacibile se è vera in almeno una interpretazione.
• A si dice tautologia se è vera in ogni interpretazione.
• A si dice contraddizione se è falsa in ogni interpretazione.
Dunque A è soddisfacibile se e solo se A non è una contraddizione
se e solo se ¬A non è una tautologia. Notiamo che una formula è
soddisfacibile se e solo se nella sua tabella di verità compare almeno
un valore V. Analogamente, una formula è una tautologia (o una
contraddizione) se e solo se nella sua tabella di verità compaiono solo
V (o solo F, rispettivamente).
Per quanto osservato sopra, verificare se una formula assegnata è
soddisfacibile oppure no, è una tautologia oppure no, è una contraddi-
zione oppure no, richiede una semplice procedura meccanica, e cioè la
scrittura della corrispondente tavola di verità. Tuttavia tale procedura
ha il difetto di richiedere molto “tempo” per essere eseguita. Ad esem-
pio, supponiamo di voler stabilire se la formula seguente, che contiene
le 10 variabili proposizionali A, B, . . . , L, è una tautologia o meno.4
h  i
A∧B →C → ( D ∧ E → (F → G) ) ↔ ( ¬H → I ∧ L ) ↔
h  i
(¬A ∨ (¬B ∨ C)) → (D ∧ F → (E → G)) ↔ (A → (B → C)) → (H ∨ (I ∧ L))

Nonostante si tratti di una formula che occupa lo spazio di due so-


le righe, non è consigliabile scriverne esplicitamente la tavola di verità.
Questa consiste infatti di oltre 1.000 righe e vi compaiono più di 36.000
valori di verità! 5 Esistono altri metodi per controllare se una formula
è una tautologia, che in molti casi pratici sono molto veloci. Tutta-
via nei casi generali tutte le procedure note richiedono una quantità
di passaggi che cresce in modo esponenziale rispetto al numero delle
variabili. Il problema di stabilire se esistano metodi essenzialmente più
efficienti, cioè che permettano cioè di riconoscere le tautologie in tempo
polinomiale anziché esponenziale, è tuttora irrisolto.6
Esercizio 1.14 (Modus Ponens). Se le formule A e A → B sono
tautologie, allora anche B è una tautologia.
4Per i curiosi: è una tautologia!
5
Precisamente ci sono 210 = 1.024 righe, e un totale di 1.024·(10+26) = 36.864
valori di verità, in corrispondenza di ognuna delle 10 variabili e di ognuna delle 26
sottoformule che si considerano.
6
Lo studio matematico di questo tipo di problemi rientra nell’ambito della
teoria della complessità, una delle intersezioni tra logica matematica e informatica
teorica.
4. FORMULE SODDISFACIBILI, TAUTOLOGIE, CONTRADDIZIONI 13

Esercizio 1.15. Se la formula A è una tautologia, allora anche le


formule A ∨ ¬A, A → A, A ↔ ¬¬A lo sono.
Esercizio 1.16 (Assiomi di Mendelson). Per ogni scelta delle for-
mule A, B e C, verificare che le seguenti formule sono tautologie:
(1) A → (B → A) ;
(2) (A → (B → C)) → ((A → B) → (A → C)) ;
(3) (¬A → ¬B) → ((¬A → B) → A).

Siano X1 , . . . , Xn variabili che occorrono nella formula A, e siano


B1 , . . . , Bn formule arbitrarie. Denotiamo con
A(B1 /X1 , . . . , Bn /Xn )
la formula ottenuta rimpiazzando in A tutte le occorrenze di Xi con Bi ,
per i = 1, . . . , n. Ad esempio, se A = (X → Y ) → ¬Z, B = Z → X,
C = ¬W e D = Y → Z, allora
A(B/X, C/Y, D/Z) = ((Z → X) → ¬W ) → ¬(Y → Z).
Più in generale, se A è una formula e A1 , . . . , An sono sue sottofor-
mule, allora denotiamo con
A(B1 /A1 , . . . , Bn /An )
la formula ottenuta rimpiazzando in A tutte le occorrenze di A1 con
B1 , poi rimpiazzando nella formula cosı̀ ottenuta tutte le occorrenze di
A2 con B2 , e cosı̀ via.7
Esercizio 1.17. Siano X1 , . . . , Xn variabili che occorrono nella for-
mula A. Dimostrare che A è una tautologia se e solo se la formula
A(B1 /X1 , . . . , Bn /Xn ) è una tautologia per tutte le formule B1 , . . . Bn .
Esercizio 1.18. Siano A1 , . . . , An sottoformule della formula A
dove Ai non è sottoformula di Aj per ogni i 6= j. È vero che se A è
una tautologia allora A(B1 /A1 , . . . , Bn /An ) è una tautologia per tut-
te le formule B1 , . . . Bn ? È vero che se A(B1 /A1 , . . . , Bn /An ) è una
tautologia per tutte le formule B1 , . . . , Bn allora A è una tautologia?

7 Specificare l’ordine con cui si effettuano le sostituzioni è necessario affinché


la definizione sia ben posta. Ad esempio, se A è la formula X ∨ (X → Y ), la sosti-
tuzione A ((X → Y )/X, Y /(X → Y )) determina la formula Y ∨ (Y → Y ), mentre
la sostituzione A (Y /(X → Y ), (X → Y )/X) produce (X → Y ) ∨ Y , come è facile
verificare. Notiamo che questi problemi non si presentano quando si sostituiscono
formule a variabili.
14 1. CALCOLO PROPOSIZIONALE

5. Equivalenze logiche
Due formule sono logicamente equivalenti se sono equivalenti dal
punto di vista semantico, cioè se non sono distinguibili da alcuna
interpretazione. Precisamente:
Definizione 1.19. Diciamo che due formule A e B sono logicamen-
te equivalenti, e scriviamo A ≡ B, se per ogni interpretazione I si ha
che I(A) = I(B).
Date due formule che contengono le stesse variabili, per vedere se
sono logicamente equivalenti o no, si compilano le rispettive tavole di
verità e si controlla se i corrispondenti valori di verità sono uguali o
meno. Ad esempio, l’equivalenza logica (¬X ∨ Y ) ≡ (X → Y ) è
dimostrata dalla seguente tavola di verità:

X Y ¬X ¬X ∨ Y X→Y
V V F V V
V F F F F
F V V V V
F F V V V
È immediato verificare la seguente
Osservazione 1.20. Due formule A e B sono logicamente equiva-
lenti se e solo se la formula A ↔ B è una tautologia.
Qua sotto sono elencate alcune equivalenze logiche notevoli.
Esercizio 1.21. Verificare che le seguenti equivalenze logiche val-
gono per ogni scelta delle formule A, B e C.
(1) Proprietà associative:
• A ∧ (B ∧ C) ≡ (A ∧ B) ∧ C ;
• A ∨ (B ∨ C) ≡ (A ∨ B) ∨ C ;
(2) Proprietà distributive:
• A ∧ (B ∨ C) ≡ (A ∧ B) ∨ (A ∧ C) ;
• A ∨ (B ∧ C) ≡ (A ∨ B) ∧ (A ∨ C) ;
(3) Leggi di De Morgan:
• ¬(A ∧ B) ≡ ¬A ∨ ¬B ;
• ¬(A ∨ B) ≡ ¬A ∧ ¬B ;
(4) Contronominale: A → B ≡ ¬B → ¬A ;
(5) A → B ≡ ¬A ∨ B ;
(6) A ↔ B ≡ (A → B) ∧ (B → A) ≡ (A ∨ B) ∧ ¬(A ∧ B) ;
5. EQUIVALENZE LOGICHE 15

(7) A ∨ B ≡ ¬A → B ;
(8) A ∧ B ≡ ¬(A → ¬B).
Vista l’associatività (a meno di equivalenza logica) della congiun-
zione e della disgiunzione, è consuetudine scrivere A1 ∧ . . . ∧ An o
A1 ∨ . . . ∨ An senza uso di parentesi, perché tutte le possibili diverse
scritture sono comunque formule logicamente equivalenti.
Teorema 1.22 (di sostituzione). Siano A1 , . . . , An sottoformule
della formula A. Se Ai ≡ Bi per ogni i, allora A(B1 /A1 , . . . , Bn /An ) ≡
A.
Dim. FARE 
Esercizio 1.23. Utilizzando le equivalenze logiche dell’Esercizio
1.21 e il Teorema di sostituzione 1.22, dimostrare che la formula
h  i
A∧B →C → ( D ∧ E → (F → G) ) ↔ ( ¬H → I ∧ L ) ↔
h  i
(¬A ∨ (¬B ∨ C)) → (D ∧ F → (E → G)) ↔ (A → (B → C)) → (H ∨ (I ∧ L))

menzionata a pagina 15 è una tautologia.


Nel nostro linguaggio abbiamo considerato 5 connettivi, cioè il con-
nettivo unario ¬, e i connettivi binari ∨, ∧, →, ↔. Viste le equivalenze
(5) e (6) dell’esercizio precedente, avremmo potuto restringerci a consi-
derare i soli connettivi ¬, ∨, e tutti gli altri sarebbero stati “definibili”
a partire da quei due. Precisamente, vale la seguente proprietà, la cui
verifica è lasciata per esercizio.
Osservazione 1.24. Per ogni formula A esiste una formula B ≡ A
nella quale compaiono i soli connettivi ¬, ∨.
Dim. FARE 
Esercizio 1.25. Dimostrare che la proprietà di sopra vale se al
posto dei due connettivi ¬, ∨ consideriamo ¬, ∧ oppure ¬, → ; ma non
vale se consideriamo i due connettivi ∨, → oppure ∧, ∨ oppure →, ↔,
oppure ¬, ↔.
In realtà avremmo potuto ridurci a considerare addirittura un unico
connettivo, ma a questo scopo avremmo dovuto definirne uno nuovo.
Definizione 1.26. Il connettivo binario “entrambe false” l è de-
terminato dalla seguente tavola di verità:

P Q P lQ
V V F
V F F
F V F
F F V
16 1. CALCOLO PROPOSIZIONALE

Esercizio 1.27. Per ogni formula A esiste una formula B ≡ A


nella quale compare soltanto il connettivo l.
Definizione 1.28. Si dice letterale una variabile proposizionale
X o la sua negazione ¬X. Una formula si dice in forma normale
disgiuntiva (DNF) se è una disgiunzione di congiunzione di letterali;
si dice in forma normale congiuntiva (CNF) se è una congiunzione di
disgiunzioni di letterali.
Ad esempio, la formula A qua sotto è DNF, la formula B è CNF,
ma la formula C non è né DNF né CNF:
A = (¬X1 ∧X2 )∨X3 ; B = X1 ∧(¬X2 ∨X2 ) ; C = (X1 ∨¬X2 )∨(X3 ∧X4 ) .
Esercizio 1.29. Dimostrare che ogni formula è logicamente equi-
valente ad una formula DNF e ad una formula CNF.
Esercizio 1.30. Denotiamo con A∗ la formula che si ottiene da A
sostituendo simultaneamente ogni simbolo ∧ con ∨, e ogni simbolo ∨
con ∧. Dimostrare che A ≡ B se e solo se A∗ ≡ B ∗ .

6. Implicazione logica
Un altro fondamentale concetto semantico è quello di implicazione
logica. Una formula ne implica logicamente un’altra se ogni volta che
è vera la prima è vera anche la seconda.
Definizione 1.31. Diciamo che la formula A implica logicamente
la formula B, o che B è conseguenza logica di A, se per ogni interpre-
tazione I dove I(A) = V, si ha anche I(B) = V. In questo caso si usa
la notazione A |= B.
Supponiamo di avere compilato la tavola di verità di due formule
A e B contenenti le stesse variabili. Avremo allora che A |= B se e solo
se in ogni riga dove compare V per la formula A compare V anche per
la formula B. Ad esempio, consideriamo le formule A = ¬X ↔ Y e
B = X ∨Y . Nella seconda e terza riga, che sono le uniche dove compare
il valore V per la formula A, c’è il valore V anche per la formula B.
Dunque concludiamo che A |= B.

X Y ¬X ¬X ↔ Y X ∨Y
V V F F V
V F F V V
F V V V V
F F V F F
6. IMPLICAZIONE LOGICA 17

È immediato verificare che vale la:


Osservazione 1.32. A |= B se e solo se la formula A → B è una
tautologia.
È importante osservare che l’implicazione → (chiamata anche im-
plicazione materiale) e l’implicazione logica |= sono sostanzialmente
diverse. La prima è un simbolo che fa parte del linguaggio formale, dun-
que è un oggetto puramente sintattico. La seconda invece è di natura
semantica, ed è una relazione “metalinguistica” (cioè non appartenente
al linguaggio formale) che può sussistere tra formule proposizionali.
Una considerazione può aiutare a chiarire la differenza. Assegnate
due formule qualunque A e B, almeno una delle due implicazioni
A → B, B → A
risulta vera in una qualunque interpretazione. Infatti, A → B è falsa
soltanto quando A è vera e B è falsa, ma in questo caso è l’altra im-
plicazione B → A ad essere vera. Tuttavia, non necessariamente una
delle due formule implica logicamente l’altra. In altri termini, mentre
(A → B) ∨ (B → A) è una tautologia, non si ha necessariamente che
una tra le due formule A → B, B → A, lo sia. Ad esempio, se X e Y
sono due variabili, nè la formula X → Y nè la formula Y → X è una
tautologia, mentre la formula (X → Y ) ∨ (Y → X) lo è.
Esercizio 1.33. Verificare le seguenti implicazioni logiche, dove A
e B sono formule qualunque:
(1) (A ∧ B) |= A ;
(2) A |= (A ∨ B) ;
(3) Se A |= B e B |= C, allora A |= C ;
(4) A |= B se e solo se ¬B |= ¬A.
Esercizio 1.34. Stabilire se ciascuna delle seguenti proprietà è vera
per ogni scelta delle formule A, B e C.
(1) Se A |= B e A |= C, allora A |= (B ∧ C) ;
(2) Se A |= (B ∧ C), allora A |= B e A |= C ;
(3) Se A |= C o B |= C, allora (A ∨ B) |= C ;
(4) Se (A ∨ B) |= C, allora A |= C o B |= C ;
(5) Se A |= B e A |= C, allora B |= C .
(6) Se A |= B e A |= (B → C), allora A |= C.
CAPITOLO 2

Teorie proposizionali e modelli

1. Teorie proposizionali
Definizione 2.1. Per teoria del calcolo proposizionale si intende
un qualunque insieme (eventualmente vuoto) di L-formule.
Introduciamo ora alcune importanti nozioni semantiche.
Definizione 2.2. Si dice che l’interpretazione I è un modello della
teoria T , e si scrive I |= T , se I rende vera T , cioè se I(A) = V per
tutte le formule A ∈ T .
Diamo ora una generalizzazione della nozione di implicazione logica
A |= B vista nel paragrafo precedente.
Definizione 2.3. Diciamo che la teoria T implica logicamente la
formula B, o che B è conseguenza logica di T , se B è vera in ogni
modello di T . In questo caso scriviamo T |= B.
Esercizio 2.4. Dimostrare che:
(1) T |= A e T |= B se e solo se T |= A ∧ B ;
(2) Se T |= A o T |= B allora T |= A ∧ B ;
(3) Se T |= A e T |= A → B allora T |= B.
Dimostrare con un controesempio che non vale l’implicazione:
(4) Se T |= A ∨ B allora T |= A o T |= B.
Proposizione 2.5 (Procedimento per casi). Sia T una teoria e
A, B formule. Se T ∪ {B} |= A e T ∪ {¬B} |= A allora T |= A.
Dim. Dimostriamo la contronominale, e supponiamo che T 6|= A,
cioè che esista un modello I di T dove A è falsa. Si hanno due possibi-
lità. Se B è vera in I, allora I è un modello di T ∪ {B}, e concludiamo
che T ∪ {B} 6|= A; se B è falsa in I, allora I è un modello di T ∪ {¬B},
e abbiamo che T ∪ {¬B} 6|= A. 

Vale la seguente proprietà.


19
20 2. TEORIE PROPOSIZIONALI E MODELLI

Teorema 2.6 (Deduzione semantica). Sia T una teoria e siano


A1 , . . . , An , B formule. Allora 1
T, A1 , . . . , An |= B ⇐⇒ T |= A1 ∧ . . . ∧ An → B .
Notiamo che quando T = ∅ e n = 1, ritroviamo la nozione di
implicazione logica A1 |= B introdotta nella Definizione 1.31.
Dim. ⇒ Fissato un modello I |= T , distinguiamo due casi. Se
ogni Ai è vera in I, allora A1 ∧ . . . ∧ An è vera in I, e dunque I è un
modello di T ∪{A1 , . . . , An }. Dall’ipotesi segue che B è vera in I. Visto
che A1 ∧ . . . ∧ An e B sono entrambe vere in I, anche l’implicazione
A1 ∧ . . . ∧ An → B è vera in I. Se invece c’è una formula Ai che è
falsa in I, allora A1 ∧ . . . ∧ An è falsa in I e dunque l’implicazione
A1 ∧ . . . ∧ An → B è vera in I a prescindere dalla verità o falsità di B.
⇐ Sia I è un modello di T ∪ {A1 , . . . , An }. Visto che A1 , . . . An
sono tutte vere in I, anche A1 ∧ . . . ∧ An è vera in I. Visto che I è in
particolare un modello di T , per ipotesi l’implicazione A1 ∧. . .∧An → B
è vera in I. Ne segue che necessariamente B è vera in I. 
Definizione 2.7. Una teoria T si dice soddisfacibile se ammette
un modello; si dice insoddisfacibile in caso contrario.
Osservazione 2.8. Sia T una teoria. Le seguenti proprietà sono
equivalenti:
(1) T è soddisfacibile ;
(2) Per ogni formula A, se T |= A allora T 6|= ¬A ;
(3) Esiste almeno una formula B con T 6|= B.
Dim. (1) ⇒ (2). Sia I un modello di T . Se T |= A, allora A è vera
in I e dunque ¬A è falsa in I. Concludiamo che T 6|= ¬A.
(2) ⇒ (3). Se per assurdo la tesi non valesse, per ogni formula A si
avrebbe sia T |= A che T |= ¬A, contro l’ipotesi.
(3) ⇒ (1). Per ipotesi deve esistere un’interpretazione I che è
modello di T e dove B è falsa. In particolare T è soddisfacibile. 
Dunque T è contraddittoria se e solo se esiste una formula A tale
che T |= A e T |= ¬A, se e solo se tutte le formule sono conseguenza
logica di T .
Proposizione 2.9 (Reductio ad absurdum). Sia T una teoria e A
una formula. Allora T |= A ⇔ T ∪ {¬A} è insoddisfacibile.
1 Con abuso di notazione, in accordo con la consuetudine, abbiamo scritto
T, A1 , . . . , An |= B per intendere T ∪ {A1 , . . . , An } |= B.
1. TEORIE PROPOSIZIONALI 21

Dim. ⇒. Se T ∪ {¬A} fosse soddisfacibile, esisterebbe un suo mo-


dello I. Un tale I sarebbe un modello di T dove ¬A è falsa, e quindi
dove A è vera. Concludiamo che T 6|= A.
⇐. Sia I un modello di T . Per l’ipotesi, I non è un modello di
T ∪ {¬A}, dunque ¬A è falsa in I, e quindi A è vera in I. Abbiamo
mostrato che ogni modello di T è anche modello di A, cioè la tesi.2 
Esercizio 2.10. Supponiamo che T |= A → B.
(1) Dimostrare che se la teoria T ∪ {B} è insoddisfacibile, allora
anche T ∪ {A} è insoddisfacibile.
(2) È vera l’implicazione inversa della (1)?
Proposizione 2.11. Sia T una teoria soddisfacibile e A una for-
mula. Allora T ∪ {A} è soddisfacibile o T ∪ {¬A} soddisfacibile.
Dim. Se T ∪ {¬A} è contraddittoria, allora abbiamo visto che ne-
cessariamente T |= A. In questo caso, se I è un modello di T allora I
è anche un modello di T ∪ {A}. 
Definizione 2.12. Una teoria T si dice semanticamente completa
se per ogni formula A vale una ed una sola delle due proprietà: T |= A,
T |= ¬A.
Esercizio 2.13. Sia T una teoria. Verificare che sono proprietà
equivalenti:
(1) T è semanticamente completa ;
(2) Per ogni formula A, vale T |= A ⇔ T 6|= ¬A ;
(3) T è soddisfacibile e per ogni formula A, T 6|= A ⇒ T |= ¬A ;
(4) T ha un unico modello .
Esercizio 2.14. Sia T una teoria soddisfacibile. Dimostrare che
sono proprietà equivalenti:
(1) T è completa ;
(2) Per tutte le formule A, B, vale T |= A ∨ B ⇔ T |= A o T |= B ;
(3) Per tutte le formule A, B, vale T 6|= A → B ⇔ T |= A e
T |= ¬B .
L’insieme delle conseguenze logiche di una teoria T è denotato con
Con(T ) = {A | T |= A}.
2 Notiamo che non stiamo assumendo che T abbia modelli. Nel caso in cui T
fosse contraddittoria, avremmo che T |= A per ogni formula A.
22 2. TEORIE PROPOSIZIONALI E MODELLI

Con questa terminologia, Con(∅) è l’insieme delle tautologie. Infat-


ti, banalmente, tutte le interpretazioni sono modelli della teoria vuota
T = ∅.
Definizione 2.15. Una teoria T si dice semanticamente chiusa se
T = Con(T ), cioè se T |= A ⇒ A ∈ T .
Proposizione 2.16. Sia T una teoria. Allora:
(1) T è soddisfacibile se e solo se Con(T ) è soddisfacibile ;
(2) Con(T ) è una teoria semanticamente chiusa.
Dim. (1). Banalmente T ⊆ Con(T ), e dunque se Con(T ) è sod-
disfacibile, anche T lo è. Viceversa, se I è modello di T allora I è
anche modello di Con(T ), perché se B ∈ Con(T ), cioè se T |= B, per
definizione di conseguenza logica abbiamo che B è vera in I.
(2). Una inclusione è immediata perché T ⊆ Con(T ) ⇒ Con(T ) ⊆
Con(Con(T )). Per l’altra inclusione, supponiamo che B ∈/ Con(T ), cioè
che T 6|= B, e prendiamo un modello I |= T dove B è falsa. Abbiamo
notato sopra che una tale interpretazione I è anche modello di Con(T ),
e quindi Con(T ) 6|= B, cioè B ∈
/ Con(Con(T )). 
Proposizione 2.17. Sia T una teoria. Sono proprietà equivalenti:
(1) T è semanticamente chiusa e completa ;
(2) T è massimale rispetto all’inclusione tra le teorie soddisfacibili.
Dim. (1) ⇒ (2). Supponiamo per assurdo che esista un teoria
soddisfacibile T 0 che estende propriamente T , e prendiamo A ∈ T 0 \ T .
Per ipotesi esiste un modello I di T 0 ; in particolare, I è un modello di
T dove A è vera, e dunque dove ¬A è falsa. Di conseguenza, T 6|= ¬A.
Abbiamo quindi che A ∈ / T e ¬A ∈ / Con(T ) = T , visto che T è
semanticamente chiusa. Questo contraddice l’ipotesi di T completa.
(2) ⇒ (1). Supponiamo che T |= A. Prendiamo un modello I di T .
La formula A è vera in I, e dunque I è anche un modello di T ∪ {A},
che è quindi una teoria consistente. Per la massimalità di T deve essere
T ∪ {A} = T , cioè A ∈ T . Questo mostra che T è chiusa. Visto che T
è soddisfacibile, per mostrare la completezza resta da vedere che vale
l’implicazione T 6|= A ⇒ T |= ¬A. Se T 6|= A, per la Proposizione 2.9,
la teoria T ∪{¬A} è soddisfacibile, e per la massimalità di T deve essere
allora T ∪ {¬A} = T , quindi ¬A ∈ T , e banalmente T |= ¬A. 

Il prossimo esempio illustra come il concetto di modello di una teoria


proposizionale possa catturare le strutture matematiche.
2. IL TEOREMA DI COMPATTEZZA SEMANTICO 23

Esempio 2.18. Dato un insieme A, consideriamo il linguaggio pro-


posizionale
L = {Xab | a, b ∈ A}
contenente una variabile per ogni coppia ordinata di elementi di A. Sia
T la teoria che consiste delle seguenti formule:
• ¬Xaa per ogni a ∈ A ;
• Xab → ¬Xba per ogni a, b ∈ A ;
• (Xab ∧ Xbc ) → Xac per ogni a, b, c ∈ A ;
• Xab ∨ Xba per ogni a, b ∈ A con a 6= b.
Per ogni L-interpretazione I, definiamo la corrispondente relazione
binaria ≺I su A ponendo a ≺I b ⇔ I(Xab ) = V. Come si verifica
direttamente, I |= T se e solo ≺I è un ordine totale stretto su A.

2. Il Teorema di compattezza semantico


Definizione 2.19. Una teoria T si dice finitamente soddisfacibile
(FS) se ogni suo sottoinsieme finito T 0 ⊆ T è soddisfacibile.
Proposizione 2.20. Sia T una teoria finitamente soddisfacibile
(FS). Allora per ogni formula A, T ∪ {A} è FS o T ∪ {¬A} è FS.
Dim. Supponiamo per assurdo che esistano insiemi finiti contrad-
dittori
{B1 , . . . , Bn } ⊆ S ∪ {A} e {C1 , . . . , Cm } ⊆ S ∪ {¬A}.
Visto che T è FS, necessariamente {B1 , . . . , Bn } * T e {C1 , . . . , Cm } *
T , e quindi A ∈ {B1 , . . . , Bn } e ¬A ∈ {C1 , . . . , Cm }. Senza perdita
di generalità, supponiamo che Bn = A e Cm = ¬A. Prendiamo un
modello I dell’insieme finito {B1 , . . . , Bn−1 , C1 , . . . , Cm−1 } ⊆ T . Se A
è vera in I, allora B1 , . . . , Bn = A sono tutte vere in I, contro l’as-
sunzione di {B1 , . . . , Bn } contraddittorio; analogamente, se A è falsa
in I, allora C1 , . . . , Cm = ¬A sono tutte vere in I, contro l’assunzio-
ne di {C1 , . . . , Cm } contraddittorio. Abbiamo cosı̀ ottenuto l’assurdo
cercato. 
Un risultato fondamentale, che mette in evidenza la natura finiti-
stica del concetto di conseguenza logica, è il seguente:
Teorema 2.21 (Compattezza semantica).
Sia T una teoria proposizionale. Valgono le due seguenti proprietà
equivalenti:
24 2. TEORIE PROPOSIZIONALI E MODELLI

(1) Per ogni formula A, T |= A se e solo se esiste una quantità


finita di formule B1 , . . . , Bn ∈ T tali che B1 , . . . , Bn |= A ;
(2) Se T è finitamente soddisfacibile allora T è soddisfacibile.
Dim. Dimostriamo anzitutto l’equivalenza delle due proprietà.
(1) ⇒ (2). Se T non è soddisfacibile allora, per l’Osservazione 2.8,
esiste una formula A tale che T |= A e T |= ¬A. Per l’ipotesi, esiste
allora una quantità finita di formule B1 , . . . , Bn , C1 , . . . , Cm in T tali
che B1 , . . . , Bn |= A e C1 , . . . , Cm |= ¬A. Di nuovo per l’Osservazione
2.8, concludiamo che la teoria finita {B1 , . . . , Bn , C1 , . . . , Cm } ⊆ T è
contraddittoria, e quindi T non è finitamente soddisfacibile.
(2) ⇒ (1). Se B1 , . . . , Bn ∈ T , banalmente B1 , . . . , Bn |= A ⇒ T |=
A. Viceversa, supponiamo che per ogni scelta di B1 , . . . , Bn ∈ T sia
B1 , . . . , Bn 6|= A, cioè esista un’interpretazione I dove B1 , . . . , Bn sono
vere e A è falsa. Questo mostra che la teoria T ∪ {¬A} è finitamente
soddisfacibile e dunque, per l’ipotesi, esiste un modello I |= T ∪ {¬A}.
Concludiamo che T 6|= A.
Mostriamo ora che vale la proprietà (2). Consideriamo la seguente
famiglia, parzialmente ordinata per inclusione:
T = {S ⊇ T | S finitamente soddisfacibile (f.s.) }.
Banalmente T = 6 ∅ perché T ∈ T per ipotesi. Data hS Si | i ∈ Ii
una catena crescente in T , consideriamo l’unione S = i∈I Si . Se
S 0 = {A1 , . . . , An } ⊆ S è un suo sottoinsieme finito, per ogni t =
1, . . . , n prendiamo it ∈ I tale che At ∈ Sit . Chiaramente S 0 ⊆ Sj
dove j = max{i1 , . . . , in }, e quindi S 0 ha un modello, visto che Sj è
f.s. Questo mostra che S ∈ T è f.s., ed è un elemento maggiorante
della catena. Possiamo allora applicare il Lemma di Zorn, ed ottenere
l’esistenza di un elemento massimale Smax ∈ T . Mostreremo che Smax
(e quindi T ) ha un modello. Ci occorrono le seguenti proprietà:
(a) A ∈ Smax ⇔ ¬A ∈ / Smax .
(b) Se A ∈ Smax e A |= A0 allora A0 ∈ Smax .3 Di conseguenza, se
A ≡ A0 , allora A ∈ Smax ⇔ A0 ∈ Smax .
(a). Se per assurdo fosse A ∈ Smax e ¬A ∈ Smax , allora {A, ¬A} ⊆
Smax sarebbe un sottoinsieme finito di Smax insoddisfacibile. Inoltre,
anche assumere ¬A ∈ / Smax e A ∈ / Smax porta ad un assurdo. Infatti,
3Notiamo che questa proprietà è più debole della proprietà di Smax semanti-
camente chiusa. In realtà, una volta dimostrato questa teorema di compattezza,
si potrà concludere che Smax è in effetti una teoria semanticamente chiusa perchè
soddisfacibile massimale (cf. Proposizione 2.17). Per il momento però, possiamo
solo assumere che Smax è finitamente soddisfacibile.
2. IL TEOREMA DI COMPATTEZZA SEMANTICO 25

per la Proposizione 2.20, sappiamo che almeno una tra le teorie Smax ∪
{A} ! Smax e Smax ∪ {¬A} ! Smax è FS, contro la massimalità di
Smax .
Per dimostrare (b), supponiamo per assurdo che A0 ∈ / Smax . Allo-
ra, per la (a), deve essere ¬A0 ∈ Smax . Notiamo che l’insieme finito
{A, ¬A0 } ⊆ Smax è insoddisfacibile, perché per l’ipotesi, in ogni inter-
pretazione dove A è vera, anche A0 è vera, e quindi ¬A0 è falsa. Questo
contraddice l’ipotesi di finita soddisfacibilità di Smax .
Siamo finalmente pronti a costruire un modello di Smax , e quindi di
T . Lo facciamo prendendo la seguente interpretazione:
(
V se A ∈ Smax ;
I(A) =
F se A ∈ / Smax .

Dobbiamo verificare verificare che I è effettivamente un’interpreta-


zione, cioè che I soddisfa le seguenti proprietà.
(1) I(¬A) = V se I(A) = F, e I(¬A) = F se I(A) = V ;
(2) I(A∧B) = V se I(A) = I(B) = V, e I(A∧B) = F altrimenti ;
(3) I(A∨B) = F se I(A) = I(B) = F, e I(A∨B) = V altrimenti ;
(4) I(A → B) = F se I(A) = V e I(B) = F, e I(A → B) = F
altrimenti ;
(5) I(A ↔ B) = V se I(A) = I(B), e I(A ↔ B) = F altrimenti.
La (1) segue direttamente dalla proprietà (a) di sopra.
La proprietà (2) equivale a mostrare l’equivalenza A ∧ B ∈ Smax ⇔
A ∈ Smax e B ∈ Smax . Visto che A∧B |= A e A∧B |= B, l’implicazione
⇒ segue dalla proprietà (b) di sopra. Viceversa, se fosse A ∧ B ∈
/ Smax ,
allora ¬(A ∧ B) ∈ Smax , e si avrebbe l’insieme finito insoddisfacibile
{A, B, ¬(A ∧ B)} ⊆ Smax .
Gli altri casi (3), (4), e (5), seguono da (1) e (2) usando rispettiva-
mente le equivalenze logiche:
• A ∨ B ≡ ¬(¬A ∧ ¬B) ;
• A → B ≡ ¬(A ∧ ¬B) ;
• A ↔ B ≡ ¬(A ∧ ¬B) ∧ ¬(¬A ∧ B).
A titolo di esempio vediamo la (3); per le altre si procede in modo
del tutto simile. I(A ∨ B) = F ⇔ (per definizione) A ∨ B ∈ / Smax ⇔
(per la (b)) ¬(¬A∧¬B) ∈ / Smax ⇔ (per la (1)) ¬A∧¬B ∈ Smax ⇔ (per
la (2)) ¬A ∈ Smax e ¬B ∈ Smax ⇔ (per la (1)) A ∈ / Smax e B ∈ / Smax ,
cioè I(A) = I(B) = F. 
26 2. TEORIE PROPOSIZIONALI E MODELLI

In molte applicazioni, il Teorema di compattezza permette di dimo-


strare proprietà generali a partire dai soli casi finiti. Vediamo subito
un esempio.
Teorema 2.22. Ogni ordinamento parziale si può estendere ad un
ordinamento totale; cioè, per ogni insieme parzialmente ordinato (A, <)
esiste un ordinamento totale (A, ≺) tale che a < b ⇒ a ≺ b.
Dim. Dimostriamo prima il caso finito:
• L’enunciato del teorema è vero se A è un insieme finito.
Procediamo per induzione sulla cardinalità n = |A|. La base n = 1
è banale. Se |A| = n + 1, fissiamo un elemento a∗ ∈ A. Per ipotesi
induttiva su B = A\{a∗ }, esiste un ordine totale (B, ≺) dove ≺ estende
<. Finalmente definiamo:
• a∗ ≺0 b se a∗ < b ;
• b ≺0 a∗ se b < a∗ o se a e b non sono confrontabili in (A, <) ;
• b ≺0 c se b, c ∈ B e b ≺ c.
È facile verificare che (A, ≺0 ) è un ordine totale che estende (A, <).
Occupiamoci ora del caso generale usando gli strumenti del calcolo
proposizionale. Sia L = {Xab | a, b ∈ A} il linguaggio proposizio-
nale contenente una variabile per ogni coppia ordinata di elementi di
A, e sia S la teoria ottenuta aggiungendo alla teoria T come definita
nell’Esempio 2.18, le seguenti formule:
• Xab per ogni a, b ∈ A con a < b.
Notiamo che la tesi equivale a trovare un modello I della teoria S;
infatti, in questo caso, basta porre a ≺ b ⇔ I(Xab ) = V.
Per il teorema di compattezza, trovare un modello di S equivale a
trovare un modello per ogni sottoinsieme finito S 0 ⊂ S. Sia
A0 = {a, b | Xab occorre in una formula A ∈ S 0 }.
Denotiamo con (A0 , <) la restrizione dell’ordine parziale (A, <) al sot-
toinsieme A0 . Visto che S 0 è finito, e visto che in ogni formula occorrono
solo un numero finito di variabili Xab , anche A0 è finito. Per quanto
visto sopra, esiste allora un ordine totale (A0 , ≺) che estende (A0 , <).
Prendiamo una qualunque interpretazione I tale che, per ogni a, b ∈ A0 ,
(
V se a ≺ b
I(Xab ) =
F altrimenti.
Si verifica direttamente che I è un modello di S 0 . 
Sia (P, ≤) un insieme parzialmente ordinato. Ricordiamo che due
elementi a, b ∈ P si dicono confrontabili se a ≤ b o b ≤ a; altrimenti,
2. IL TEOREMA DI COMPATTEZZA SEMANTICO 27

si dicono inconfrontabili. Una catena di P è un sottoinsieme C ⊆ P


le cui coppie sono tutte confrontabili. Un’anticatena è un sottoinsieme
C ⊆ P le cui coppie di elementi distinti sono tutte inconfrontabili.
Esercizio 2.23. Sia (P, ≤) un insieme parzialmente ordinato e
k ∈ N. Usando il Teorema di compattezza, dimostrare che se ogni
sottoinsieme finito di P è unione di k catene, allora anche P è unione
di k catene.
Ricordiamo il seguente risultato combinatorio:
• Teorema di Dilworth. Sia (P, ≤) un insieme parzialmente or-
dinato. P è l’unione di k catene se e solo se ogni anticatena
ha cardinalità ≤ k.
Esercizio 2.24.∗ Usando il Teorema di compattezza, dimostrare
che il Teorema di Dilworth segue dalla sua validità per i soli insiemi
parzialmente ordinati finiti.
Ricordiamo che un grafo Γ su V è una coppia Γ = hV, Li dove
V è un insieme di elementi detti vertici, e L è un insieme di coppie
di elementi distinti di V , detti lati. Un grafo Γ0 = hV 0 , L0 i si dice
sottografo di Γ se V 0 ⊆ V e L0 ⊆ L.
Un grafo Γ = hV, Li si dice k-colorabile se si possono colorare i
vertici con k colori, in modo che nessun lato abbia vertici dello stesso
colore; più formalmente, se esiste una funzione f : V → {1, . . . , k} tale
che f (a) 6= f (b) per ogni {a, b} ∈ L.
Un grafo si dice connesso se ogni coppia di vertici distinti è collegata
da un “percorso” sui lati, cioè se per ogni a, b ∈ V con a 6= b esiste
una sequenza finita hx1 , . . . , xn i dove x1 = a e xn = b, e tale che
{xi , xi+1 } ∈ L per ogni 1 ≤ i < n.
Sia µ un cardinale, e sia Lµ il linguaggio proposizionale avente una
variabile Xa,b per ogni coppia ordinata (a, b) ∈ µ × µ. Denotiamo con
TGµ la seguente Lµ -teoria:
TGµ = {¬Xa,a | a ∈ µ} ∪ {Xa,b ↔ Xb,a | (a, b) ∈ µ × µ}.
Esercizio 2.25. Verificare che se I è un modello di TGµ , allora
ΓI = hµ, LI i dove LI = {{a, b} | Xa,b è vera in I} è un grafo. Verificare
inoltre che la corrispondenza I 7→ ΓI determina una funzione biunivoca
tra l’insieme dei modelli di TGµ e l’insieme dei grafi su µ.
Esercizio 2.26. Per ogni cardinale µ e per ogni k ∈ N, trovare una
teoria proposizionale con la proprietà che I è modello di T se e solo se
ΓI è un grafo k-colorabile.
28 2. TEORIE PROPOSIZIONALI E MODELLI

Esercizio 2.27. Usando il Teorema di compattezza, dimostrare


che se ogni sottografo finito di un grafo Γ è k-colorabile, allora anche
Γ è k-colorabile.
Mentre il concetto di grafo k-colorabile è formalizzabile nel linguag-
gio proposizionale, la nozione di grafo connesso non lo è, come mostra
il seguente
Esercizio 2.28.∗ Per ogni µ infinito, dimostrare che non esiste
alcuna teoria proposizionale T con la proprietà che I è un modello di
T se e solo se ΓI è un grafo connesso su µ.
Esercizio 2.29.∗ Senza usare alcuna forma dell’assioma di scelta,
dimostrare l’equivalenza delle seguenti proprietà:
(1) Teorema semantico di compattezza (Teorema 2.21) ;
(2) Compattezza dei prodotti dello spazio topologico 2 = {0, 1}:
“Tutti i prodotti topologici 2Y sono compatti”.4

3. Sistemi dimostrativi
Torniamo ora sul versante sintattico, e introduciamo la nozione for-
male di dimostrazione. Si tratta di un concetto generale della logica che
useremo – oltre che per il calcolo proposizionale – anche per il calcolo
dei predicati del primo ordine.
Definizione 2.30. Un sistema dimostrativo S consiste di:
(1) un insieme “effettivo” di formule AX, chiamate assiomi logici ;
(2) un numero finito di regole deduttive o regole di inferenza che
sono relazioni “effettive” tra formule e formule (regole unarie)
o fra coppie ordinate di formule e formule (regole binarie).5
Se R è una regola deduttiva unaria e vale R(A, B), diciamo che A
deduce B o che B si deduce da A applicando la regola R, e scriviamo:
A R
B
Analogamente, se R è una regola binaria, diciamo che la coppia or-
dinata (A, A0 ) deduce B o che B si deduce dalla coppia ordinata (A, A0 ),
applicando la regola R, quando vale R((A, A0 ), B). In questo caso
scriviamo:
4Quando Y = N, il prodotto infinito 2Y è noto come spazio di Cantor.
5Più in generale, si potrebbero considerare anche regole n-arie con n ∈ N
qualunque, cioè relazioni tra n-uple ordinate di formule e formule. Tuttavia nei
sistemi formali che vedremo, ci basteranno le regole unarie e binarie.
3. SISTEMI DIMOSTRATIVI 29

A A0 R
B
Possiamo finalmente definire una nozione generale di dimostrazione.
Definizione 2.31. Sia S un sistema dimostrativo, T una teoria e
A una formula. Diciamo che T dimostra A col sistema dimostrativo
S, e scriviamo
T `S A ,
se esiste una sequenza finita di formule hB0 , . . . , Bn i dove l’ultima for-
mula Bn = A e dove per ogni k ≤ n:
• Bk appartiene a T o è un assioma logico (cioè Bk ∈ T ∪ AX);
oppure
• esiste una regola di inferenza unaria R del sistema S, ed esiste
i < k tale che
Bi
R
Bk
oppure
• esiste una regola di inferenza binaria R del sistema S, ed esi-
stono formule Bi , Bj con i, j < k tali che
Bi Bj
R
Bk
In tal caso, A si dice teorema di T (col sistema dimostrativo S), e
la sequenza hB0 , . . . , Bn = Ai si dice dimostrazione di A nella teoria T
(col sistema dimostrativo S).

È immediato dalle definizioni che valgono le seguenti proprietà


fondamentali:
Proposizione 2.32. Sia S un sistema dimostrativo. Allora:
(1) (Compattezza sintattica) T `S A se e solo se esiste una quan-
tità finita di formule B1 , . . . , Bn ∈ T tali che B1 , . . . , Bn `S
A.
(2) (Monotonicità) Se T `S A e T 0 ⊇ T allora anche T 0 `S A.
Notiamo che (1) afferma il carattere di finitista del concetto di di-
mostrazione, mentre (2) afferma che se una certa proposizione si deduce
da insieme di assunzioni, allora si continua a dedurla anche aggiungen-
do ulteriori assunzioni.6 Supponiamo che la teoria T sia “effettiva”. È
6 Quest’ultima proprietà non è in accordo con la nozione di deduzione nel
linguaggio naturale; infatti può capitare che aggiungendo nuove conoscenze, si
debbano rivedere precedenti deduzioni.
30 2. TEORIE PROPOSIZIONALI E MODELLI

importante osservare che in questo caso anche la nozione di dimostra-


zione nella teoria T è un concetto “effettivo”, cioè esiste una procedura
calcolabile per verificare se una data stringa finita di formule è una di-
mostrazione nella teoria T oppure no. Tuttavia, in genere, la nozione
di teorema di T non è “effettiva”, cioè potrebbe non esistere una pro-
cedura calcolabile che consenta di verificare se una formula assegnata è
teorema di T oppure no (nel fissato sistema dimostrativo S). Come ve-
dremo più avanti, ci sono comunque alcuni importanti esempi di teorie
per cui questo tipo di verifica è possibile (tali teorie si chiamano teorie
decidibili ).
Denotiamo ora con
TeorS (T ) = {A | T `S A}
l’insieme dei teoremi di T col sistema dimostrativo S.
Teorema 2.33. Per ogni sistema dimostrativo S e per ogni teoria
T si ha TeorS (TeorS (T )) = TeorS (T ).
Dim. FARE 
La seguente nozione di coerenza è il corrispettivo sintattico della
nozione semantica di soddisfacibilità.
Definizione 2.34. Una teoria T si dice coerente nel sistema S se
esiste almeno una formula B con T 6`S B; si dice contraddittoria in caso
contrario.
Segue immediatamente dal Teorema 2.33 che una teoria è coerente
nel sistema S se e solo se T eorS (T ) è coerente.

4. Completezza del calcolo proposizionale


Definizione 2.35. Sia S0 il sistema dimostrativo del calcolo pro-
posizionale dove:
• Gli assiomi logici AX sono tutte e sole le tautologie ;
• L’unica regola di inferenza (binaria) è il modus ponens MP:
A A→B MP
B
Notiamo che S0 ha le proprietà di “effettività” richieste. Ricordiamo
infatti che, data una formula A, esiste una procedura “effettiva” per
verificare se si tratta di una tautologia oppure no (si compila la sua
tavola di verità e si controlla se compaiono solo V nell’ultima colonna
oppure no).
4. COMPLETEZZA DEL CALCOLO PROPOSIZIONALE 31

Un’utile regola di inferenza che può essere derivata dagli assiomi


logici e dalle regola di modus ponens è la seguente.
Proposizione 2.36 (Regola di congiunzione C).
A B C
A∧B
Dim. Si applica due volte modus ponens a partire dalla seguente
tautologia:
A → (B → (A ∧ B)) .

Il sistema S0 è “corretto”, cioè permette di dimostrare solo conse-
guenze logiche.
Teorema 2.37 (Correttezza di S0 ). Se T `S0 A allora T |= A.
Dim. Sia hB0 , . . . , Bn = Ai una dimostrazione di A nella teoria T
con il sistema dimostrativo S0 . Verifichiamo per induzione che T |= Bk
per ogni k ≤ n. Se k = 0, allora B0 ∈ T o B0 è una tautologia. In
entrambi i casi, banalmente T |= B0 . Al passo induttivo 0 < k ≤ n,
distinguiamo due casi. Se Bk ∈ T o Bk è una tautologia, di nuovo
banalmente T |= Bk . Se invece Bk segue dalla coppia (Bi , Bj ) dove
i, j < k applicando la regola di modus ponens, allora deve essere Bj =
Bi → Bk . Per ipotesi induttiva, T |= Bi e T |= Bj = Bi → Bk , e quindi
anche T |= Bk . 
Il prossimo risultato va nella direzione opposta, e mostra che ogni
formula conseguenza logica di T è dimostrabile col sistema S0 .
Teorema 2.38 (Completezza di S0 ). Se T |= A allora T `S0 A.
Dim. Se T |= A, per il Teorema di compattezza semantica esiste
una quantità finita di formule B1 , . . . Bn ∈ T tali che B1 , . . . , Bn |= A.
Per il Teorema di deduzione semantica 2.6, quest’ultima proprietà vale
se e solo se l’implicazione (B1 ∧. . .∧Bn ) → A è una tautologia. Adesso,
banalmente T `S0 B1 , . . . , T `S0 Bn e quindi, con ripetute applicazioni
della regola derivata di congiunzione (vedi Proposizione 2.36), si deduce
che T `S0 B1 ∧ . . . ∧ Bn . Infine, trattandosi di una tautologia, T `S0
(B1 ∧ . . . ∧ Bn ) → A, e applicando la regola modus ponens si conclude
che T `S0 A. 
Dunque la nozione semantica di conseguenza logica T |= A è equi-
valente alla nozione sintattica di dimostrazione T `S0 A.
Vista l’equivalenza tra |= e `S0 , si ha che
Teor(T ) = {A | T `S0 A} = {A | T |= A} = Con(T ).
32 2. TEORIE PROPOSIZIONALI E MODELLI

Dunque le nozioni semantiche di soddisfacibilità e di insoddisfaci-


bilità coincidono rispettivamente con le nozioni sintattiche di coerenza
e di contraddittorietà.
Per semplicità, da qui in avanti ometteremo il sottoindice S0 e
scriveremo semplicemente `.
Grazie ai risultati già visti per la conseguenza logica, abbiamo le
seguenti proprietà:
• T è contraddittoria ⇔ T ` B per ogni formula B ;
• Deduzione sintattica:
T, A ` B ⇔ T ` A → B ;
• Dimostrazione per casi:
Se T ∪ {A} ` B e T ∪ {¬A} ` B allora T ` B ;
• Reductio ad absurdum:
– T ` A ⇔ T ∪ {¬A} è contraddittoria;
– T ` ¬A ⇔ T ∪ {A} è contraddittoria.
• Sia T coerente e sia A una formula. Allora T ∪ {A} è coerente
o T ∪ {¬A} è coerente.
Esercizio 2.39.∗ Dimostrare le cinque proprietà di sopra usando
soltanto nozioni sintattiche.
Il sistema dimostrativo S0 è stato introdotto qui per motivi di sem-
plicità, ma certamente non è l’unico equivalente alla deduzione logica,
cioè che abbia le proprietà di correttezza e completezza. Ad esempio,
il sistema dimostrativo per il calcolo proposizionale che più frequente-
mente appare in letteratura è quello che si trova nel classico libro di E.
Mendelson “Introduction to Mathematical Logic”.7 Si tratta di una re-
strizione del sistema S0 dove si considerano solo i due connettivi ¬, →,
e gli altri sono introdotti come semplici abbreviazioni metalinguistiche.
Precisamente:
• A ∧ B è una abbreviazione di ¬(A → ¬B) ;
• A ∨ B è una abbreviazione di ¬A → B ,

• A ↔ B è una abbreviazione di ¬ (A → B) → ¬(B → A) .
Inoltre, la lista di assiomi logici è limitata a tre soli schemi di
tautologie, e l’unica regola di inferenza considerata è il modus ponens.
Definizione 2.40. Il sistema dimostrativo di Mendelson M è il
sistema dimostrativo dove:
7È in realtà una semplice modifica di un sistema precedentemente introdotto
da Hilbert e Ackermann.
4. COMPLETEZZA DEL CALCOLO PROPOSIZIONALE 33

• Gli assiomi logici AX sono i seguenti tre schemi di tautologie:


(1) A → (B → A) ;
(2) (A → (B → C)) → ((A → B) → (A → C)) ;
(3) (¬A → ¬B) → ((¬A → B) → A).
• L’unica regola di inferenza (binaria) è il modus ponens MP:
A A → B MP
B
Richiede un lungo e accurato lavoro dimostrare che il sistema M
ha le proprietà richieste di correttezza e completezza.8
Teorema 2.41 (Correttezza e completezza di M). T `M A se e
solo se T |= A.
Gli appassionati di riduzionismo estremo saranno lieti di sapere
che si può ulteriormente restringere il sistema dimostrativo del calcolo
proposizionale considerando un unico schema di tautologie.
Esercizio 2.42. Il sistema dimostrativo di Meredith M0 è una
restrizione del sistema di Mendelson, dove i tre schemi di assiomi logici
sono sostituiti dall’unico schema seguente:
h   i h i
(A → B) → (¬C → ¬D) → C → E → (E → A) → (D → A)
Dimostrare che il sistema M0 dimostra tutti gli assiomi logici di M, e
quindi anche M0 è corretto e completo.

8Per la dimostrazione di questo fatto, si veda il primo capitolo del manuale di


E. Mendelson citato sopra.
CAPITOLO 3

Il calcolo dei predicati

1. Sintassi: il linguaggio e le formule


Definizione 3.1. Il linguaggio puro della logica del primo ordine
consiste dei seguenti simboli:
• I connettivi logici:
– Negazione: ¬ (“non”) ;
– Congiunzione: ∧ (“e”) ;
– Disgiunzione: ∨ (“o”) ;
– Implicazione materiale: → (“se . . . allora”) ;
– Doppia implicazione materiale: ⇔ (“se e solo se”).
• Un insieme numerabile di variabili : x, y, z, . . . , x1 , x2 , . . . , xn , . . .
• I quantificatori :
– Quantificatore esistenziale: ∃ (“esiste”) ;
– Quantificatore universale: ∀ (“per ogni ”).
• Il simbolo di uguaglianza: =.
Definizione 3.2. Un linguaggio L della logica del primo ordine
consiste del linguaggio puro e di:
• Un insieme di simboli di costante {ci | i ∈ I} ;
• Un insieme di simboli di funzione {Fj | j ∈ J} ;
• Un insieme di simboli di relazione {Rk | k ∈ K}.
Ad ogni simbolo di funzione e di relazione è associato un numero
naturale, detto arietà.
Più avanti, quando passeremo al versante semantico e daremo un
significato ai simboli del linguaggio, vedremo che i simboli di costante
saranno interpretati da singoli elementi (costanti); i simboli di funzione
di arietà n saranno interpretati come funzioni in n variabili; e i simboli
di relazione di arietà n saranno interpretati come relazioni n-arie.
Seguiremo l’uso comune, e nello specificare i simboli di un linguaggio
L considereremo soltanto i simboli non puri:
L = {ci | i ∈ I} ∪ {Fj | j ∈ J} ∪ {Rk | k ∈ K} .
35
36 3. IL CALCOLO DEI PREDICATI

Ad esempio:
• Il linguaggio puro è il linguaggio vuoto L = ∅ ;
• il linguaggio della teoria degli insiemi L = { ∈ } consiste in un
unico simbolo di relazione di arietà 2, che verrà interpretato
dalla relazione binaria di “appartenenza” ;
• il linguaggio della teoria dei gruppi L = { e , · } consiste in un
simbolo di costante e, che verrà interpretato come l’elemento
neutro, e di un simbolo di funzione · di arietà 2, che verrà
interpretato dall’operazione di gruppo (che è una funzione in
2 variabili); ecc.
Adesso che abbiamo introdotto i simboli del linguaggio, dobbiamo
specificare le regole con cui devono essere disposti per formare le “for-
mule” (le quali verranno interpretate come affermazioni relative a certi
elementi). A questo scopo, è necessario specificare prima la classe dei
“termini” (la cui interpretazione saranno proprio quegli elementi cui le
formule si riferiscono).
Definizione 3.3. L’insieme Term(L) dei termini nel linguaggio
L o insieme degli L-termini, è il più piccolo insieme che soddisfa le
seguenti proprietà:
(1) Se x è una variabile, allora x è un termine la cui unica variabile
libera è se stessa, cioè VL(x) = {x} ;
(2) Se c è un simbolo di costante, allora c è un termine senza
variabili libere, cioè VL(c) = ∅ ;
(3) Se F è un simbolo di funzione di arietà n e t1 , . . . , tn sono
termini, allora anche F(t1 , . . . , tn ) è un termine, il cui insieme
di variabili libere è VL(F(t1 , . . . , tn )) = ni=1 VL(ti ).
S

I termini t senza variabili libere si dicono termini chiusi.


Notiamo che esistono L-termini chiusi se e solo se il linguaggio L
contiene simboli di costante.
Definizione 3.4. L’insieme Form(L) delle formule nel linguaggio
del primo ordine L o insieme delle L-formule è il più piccolo insieme
che soddisfa le seguenti proprietà:
(1) Se t1 , t2 sono termini, allora
(t1 = t2 )
è una formula, il cui insieme di variabili libere è VL(t1 ) ∪
VL(t2 ) ;
1. SINTASSI: IL LINGUAGGIO E LE FORMULE 37

(2) Se R è un simbolo di relazione di arietà n e se t1 , . . . , tn sono


termini, allora
R(t1 , . . . , tn )
è una formula, il cui insieme di variabili libere è ni=1 VL(ti ) ;
S

(3) Se ϕ e ψ sono formule, allora anche


(¬ϕ), (ϕ ∧ ψ), (ϕ ∨ ψ), (ϕ → ψ), (ϕ ↔ ψ)
sono formule, i cui insiemi di variabili libere sono
• VL(¬ϕ) = VL(ϕ),
• VL(ϕ ∧ ψ) = VL(ϕ ∨ ψ) = VL(ϕ → ψ) = VL(ϕ ↔ ψ) =
VL(ϕ) ∪ VL(ψ) ;
(4) Se ϕ è una formula e x è una sua variabile libera, allora anche
(∃x ϕ) e (∀x ϕ)
sono formule, le cui variabili libere sono tutte e sole le variabili
libere di ϕ tranne x, cioè VL(∃x ϕ) = VL(∀x ϕ) = VL(ϕ)\{x}.
Le formule del tipo (1) e (2) in cui non compaiono connettivi né
quantificatori, si dicono formule atomiche.
Le formule senza variabili libere si dicono enunciati.
Le variabili che compaiono in una formula ma che non sono variabili
libere, si dicono variabili legate.
Le occorrenze di una variabile x nelle formule del tipo (∃x ϕ) e
(∀x ϕ) si dicono occorrenze legate.
Dunque, per definizione, se una variabile che compare in una for-
mula è legata allora tutte le sue occorrenze sono occorrenze legate.
Tuttavia non vale il viceversa, cioè possono esistere variabili libere di
una formula che hanno anche occorrenze legate, come mostrato dalla
formula (5) nell’Esempio 3.5 qua sotto.
Per semplificare il formalismo ed arrivare ad una maggiore leggi-
bilità delle formule, adottiamo le usuali semplificazioni per ridurre il
numero di parentesi usate. Come nel calcolo proposizionale, convenia-
mo che la negazione ¬ abbia la precedenza sulla congiunzione ∧ e sulla
disgiunzione ∨, le quali a loro volta hanno la precedenza sull’impli-
cazione → e la doppia implicazione ↔. Inoltre, seguendo un comune
abuso di notazione, scriveremo “t1 6= t2 ” per intendere “¬(t1 = t2 )”.
Esempio 3.5. Sia L = {c1 , c2 , R} il linguaggio che contiene due
simboli di costante c1 , c2 e un simbolo di relazione R di arietà 2.
(1) “c1 = x” è una formula atomica che ha x come unica variabile
libera ;
38 3. IL CALCOLO DEI PREDICATI

(2) “R(c1 , c2 )” è una formula atomica, ed è banalmente un enun-


ciato perché non vi compare alcuna variabile ;
(3) “∃x (c1 = x)” è un enunciato perché le occorrenze dell’unica
variabile x che vi compare sono occorrenze legate ;
(4) “∀x R(x, y)” è una formula dove la variabile y è libera, e dove
la variabile x non è libera, perché le sue occorrenze sono legate ;
(5) “∃x ∀y R(x, y)” è un enunciato perché entrambe le variabili
x, y che compaiono sono legate.
(6) “(x = c) ∧ ∀x R(x, x)” è una formula dove x è l’unica variabile
libera. Notiamo però che x occorre legata nella sotto-formula
“∀x R(x, x)”, la quale è un enunciato.
Vedremo più avanti quando introdurremo le nozioni semantiche, che
la verità o falsità di una formula in una data interpretazione dipende
da quali elementi si fanno corrispondere alle variabili libere. Il valore di
verità degli enunciati sarà invece univocamente determinato, visto che
non contengono alcuna variabile libera. Per questo motivo, gli enun-
ciati rivestiranno una particolare importanza; essi sono, in un senso
preciso, il corrispettivo nei linguaggi del primo ordine delle formule
proposizionali.
Definizione 3.6. Una teoria del primo ordine è un qualunque
insieme di enunciati in un linguaggio del primo ordine.
Notazione 3.7. Se ϕ è una formula, scriviamo ϕ(x1 , . . . , xn ) per
intendere che x1 , . . . , xn sono variabili libere di ϕ, cioè {x1 , . . . , xn } ⊆
VL(ϕ). Adottiamo lo stesso tipo di notazione anche per i termini t,
cioè scriviamo t(x1 , . . . , xn ) per intendere che {x1 , . . . , xn } ⊆ VL(t).
Notazione 3.8. Se ϕ(x1 , . . . , xn ) è una formula, e t1 , . . . , tn sono
termini, scriviamo ϕ(t1 /x1 , . . . , tn /xn ) per intendere la formula che si
ottiene sostituendo in ϕ tutte le occorrenze non legate di xi con il
termine ti , per i = 1, . . . , n.

2. L-strutture e relazione di soddisfazione


Una struttura per un linguaggio del primo ordine è un insieme sul
quale viene definito un significato ad ognuno dei simboli del lingauggio.
Precisamente:
Definizione 3.9. Sia L un linguaggio della logica del primo ordine.
Una L-struttura M consiste di:
• Un insieme non vuoto M , detto universo o dominio ;
2. L-STRUTTURE E RELAZIONE DI SODDISFAZIONE 39

• Un elemento cM ∈ M per ogni c ∈ L simbolo di costante ;


• Una funzione in n variabili FM : M n → M per ogni F ∈ L
simbolo di funzione di arietà n ;
• Una relazione n-aria RM ⊆ M n per ogni R ∈ L simbolo di
relazione di arietà n.
cM , FM , RM si dicono interpretazioni rispettivamente dei simboli
c, F, R nella struttura M.
Useremo lettere gotiche maiuscole M, N, . . . , A, B, C, . . . per deno-
tare L-strutture, e le corrispondenti lettere latine maiuscole M, N, . . . ,
A, B, C, . . . per denotare i relativi universi.
Definizione 3.10. Siano M e N due L-strutture. Diciamo che M è
una sottostruttura di N o che N è una sovrastruttura di M, e scriviamo
M ⊆ N, se valgono le seguenti condizioni:
• cM = cN per ogni simbolo di costante c ∈ L ;
• FM = FN |M n per ogni simbolo di funzione F ∈ L di arietà n ;
• RM = RN ∩ M n per ogni simbolo di relazione R ∈ L di arietà
n.
A partire dalle definizioni, è immediato verificare che vale la se-
guente
Osservazione 3.11. Se N è una L-struttura, allora un sottoin-
sieme M ⊆ N è universo di una sottostruttura M ⊆ N se e solo
se:
(1) cN ∈ M per ogni simbolo di costante c ∈ L ;
(2) FN (m1 , . . . , mn ) ∈ M per ogni simbolo di funzione F di arietà
n, e per ogni m1 , . . . , mn ∈ M .
Chiaramente in questo caso i simboli di relazione sono definiti su
M per restrizione, cioè si pone RM = RN ∩ M n per ogni simbolo di
relazione R di arietà n.
Esempio 3.12. FARE
Una volta attribuito un significato ai simboli del linguaggio in una
fissata struttura, vogliamo dare un significato a tutte le formule. A
questo scopo, occorrerà però prima specificare quale particolari valori
devo essere attribuiti alle variabili libere. Ad esempio, una volta in-
terpretato il simbolo di costante c, per poter dare un significato alla
formula “c = x” è necessario specificare a quale elemento dell’universo
far corrispondere la variabile x.
40 3. IL CALCOLO DEI PREDICATI

Definizione 3.13. Un assegnamento sulla struttura M è una fun-


zione ρ : Var → M che assegna un elemento dell’universo ad ogni
variabile.

Fissato un assegnamento, possiamo intanto dare un significato a


tutti i termini.
Definizione 3.14. Sia M una L-struttura e ρ un assegnamento
su M. Per induzione sulla costruzione dell’L-termine t, definiamo
l’interpretazione tM,ρ ∈ M di t in M per induzione in questo modo:
• Se x è una variabile x, allora xM,ρ = ρ(x) ;
• Se c ∈ L è un simbolo di costante, allora cM,ρ = cM ;
• Se F è un simbolo di funzione di arietà n e t1 , . . . , tn sono
termini, allora F(t1 , . . . , tn )M,ρ = FM (tM,ρ M,ρ
1 , . . . , tn ).

L’interpretazione dei termini si preserva passando a sovrastrutture.


Osservazione 3.15. Siano M ⊆ N due L-strutture. Allora per
ogni assegnamento ρ su M e per ogni L-termine t, si ha tM,ρ = tN,ρ .
Dim. Procediamo per induzione sulla costruzione dei termini. Se t è
la variabile x, allora banalmente tM,ρ = ρ(x) = tN,ρ . Se t è il simbolo di
costante c, allora per definizione di sottomodello si ha che tM,ρ = cM =
cN = tN,ρ . Infine, se t è il termine F(t1 , . . . , tn ) dove F è un simbolo
di funzione di arietà n e t1 , . . . , tn sono termini allora, applicando la
proprietà di sottomodello e l’ipotesi induttiva tM,ρ i = tN,ρ
i ∈ M per
N N,ρ N M,ρ
N,ρ
i = 1, . . . , n, si ottiene t = F (t1 , . . . , tn ) = F (t1 , . . . , tM,ρ
N,ρ
n ) =
M M,ρ M,ρ M,ρ
F (t1 , . . . , tn ) = t . 
Il prossimo risultato mostra che l’interpretazione dei termini è coe-
rente con le sostituzioni. Si tratta di una proprietà tecnica che ci
risulterà utile in seguito.
Notazione 3.16. Se ρ è un assegnamento su M, denotiamo con
ρ(m/x) l’assegnamento su M che coincide con ρ su tutte le variabili
tranne x, cui assegna il valore m ∈ M .
Proposizione 3.17. Siano t ed s due L-termini, x una variabile, e
0
t il termine t(s/x) che si ottiene rimpiazzando in t tutte le occorrenze di
x con s. Per ogni L-struttura M e per ogni assegnamento ρ, dimostrare
0
che (t0 )M,ρ = tM,ρ , dove ρ0 = ρ(m/x) con m = sM,ρ .
Dim. FARE 
Siamo finalmente pronti a dare la definizione fondamentale.
2. L-STRUTTURE E RELAZIONE DI SODDISFAZIONE 41

Definizione 3.18 (Relazione di soddisfazione alla Tarski). Sia M


una L-struttura e ρ un assegnamento su M. Per induzione sulla co-
struzione dell’L-formula ϕ, definiamo la relazione di soddisfazione “M
soddisfa ϕ con l’assegnamento ρ”
M |= ϕ [ρ]
procedendo per induzione sulla costruzione di ϕ in questo modo:
• Formule atomiche:
– Se t1 e t2 sono L-termini, allora M |= (t1 = t2 ) [ρ] se e
solo se tM,ρ
1 = tM,ρ
2 ;
– Se R ∈ L è un simbolo di relazione di arietà n e t1 , . . . , tn
sono L-termini, allora M |= R(t1 , . . . , tn ) [ρ] se e solo se
(tM,ρ M,ρ
1 , . . . , tn ) ∈ R ;
M

• Connettivi:
– M |= ¬ψ [ρ] se e solo se M 6|= ψ [ρ] ;
– M |= (ψ ∧ ϑ) [ρ] se e solo se M |= ψ [ρ] e M |= ϑ [ρ] ;
– M |= (ψ ∨ ϑ) [ρ] se e solo se M |= ψ [ρ] o M |= ϑ [ρ] ;
– M |= (ψ → ϑ) [ρ] se e solo se vale l’implicazione:
M |= ψ [ρ] ⇒ M |= ϑ [ρ] ;
– M |= (ψ ↔ ϑ) [ρ] se e solo se vale l’equivalenza:
M |= ψ [ρ] ⇔ M |= ϑ [ρ] ;
• Quantificatori:
– M |= ∃x ϕ [ρ] se e solo se
esiste m ∈ M tale che M |= ϕ [ρ(m/x)] ;
– M |= ∀x ϕ [ρ] se e solo se
per ogni m ∈ M si ha M |= ϕ [ρ(m/x)] ;
Scriveremo M |= ϕ senza specificare l’assegnamento quando M |=
ϕ [ρ] per ogni assegnamento ρ.
Segue direttamente dalla definizione di soddisfazione che la validità
degli enunciati non dipende dall’assegnamento; per questo motivo essi
rivestono un ruolo del tutto speciale, costituendo l’analogo delle formule
proposizionali.
Osservazione 3.19. Sia M una L-struttura e sia σ un L-enunciato.
Allora vale una ed una sola delle seguenti due possibilità:
(1) M |= σ, cioè M |= σ [ρ] per ogni assegnamento ρ ;
(2) M |= ¬σ, cioè M |= ¬σ [ρ] per ogni assegnamento ρ.
Dim. FARE 
42 3. IL CALCOLO DEI PREDICATI

Definizione 3.20. Una L-formula ϕ si dice logicamente vera se per


ogni L-struttura M si ha M |= ϕ.
Esempio 3.21. Segue direttamente dalle definizioni che se x è una
variabile libera della formula ϕ(x), allora la formula “∀x ϕ(x) → ϕ(x)”
è logicamente vera.
Un’ampia classe di formule logicamente vere è data dalle formule
che hanno la stessa struttura delle tautologie del calcolo proposizionale.
Definizione 3.22. Una L-formula ϕ si dice istanza di tautologia
se esiste una tautologia A(X1 , . . . , Xn ) del calcolo proposizionale nelle
variabili X1 , . . . , Xn ed esistono L-formule ψ1 , . . . , ψn tali che ϕ è la
formula A(ψ1 /X1 , . . . , ψn /Xn ) che si ottiene rimpiazzando simultanea-
mente ogni occorrenza di Xi in A con la formula ψi , per i = 1, . . . , n.
Esercizio 3.23. Verificare che se ogni istanza di tautologia è una
formula logicamente vera.
Proposizione 3.24. Sia ϕ(x) una L-formula dove x è libera, e sia
t un L-termine. Se nessuna delle variabili che compaiono in t compare
in ϕ, allora per ogni L-struttura M e per ogni assegnamento ρ su M
si ha M |= ϕ(t/x)[ρ] ⇔ M |= ϕ(x)[ρ(m/x)], dove m = tM,ρ .
Dim. FARE 
Corollario 3.25. Se ϕ(x) una L-formula, e se t è un L-termine
in cui non compare alcuna delle variabili che compaiono in ϕ, allora la
formula “∀x ϕ(x) → ϕ(t/x)” è logicamente vera.
In realtà quest’ultima proprietà vale per una classe più ampia di
sostituzioni.
Esercizio 3.26. Dimostrare che il Corollario 3.25 vale anche sotto
l’ipotesi più debole che tutte le variabili che appaiono in t rimangono
libere in ϕ(t/x).1
Definizione 3.27. Siano ϕ e ψ due L-formule. Diciamo che ϕ
implica logicamente ψ, o che ψ è conseguenza logica di ϕ, se per ogni
L-struttura M si ha che M |= ϕ ⇒ M |= ψ.
Diciamo che ϕ e ψ sono logicamente equivalenti se per ogni L-
struttura M si ha che M |= ϕ ⇔ M |= ψ.
È immediato verificare che ϕ implica logicamente ψ se e solo se l’im-
plicazione “ϕ → ψ” è logicamente vera; e che ϕ e ψ sono logicamente
equivalenti se e solo se la doppia implicazione “ϕ ↔ ψ” è logicamente
vera.

1 Questo tipo di termini vengono chiamati termini sostituibili per x in ϕ.


4. L’ARITMETICA DI PEANO PA 43

3. Teorie del primo ordine


Definizione 3.28. Per teoria del primo ordine si intende un qua-
lunque insieme (eventualmente vuoto) di enunciati in un linguaggio del
primo ordine.

Introduciamo ora alcune importanti nozioni semantiche.

Definizione 3.29. Sia T una teoria nel linguaggio L. Una L-


struttura dice modello della teoria T se M |= τ per ogni τ ∈ T .

Introduciamo ora nozioni analoghe a quelle già viste per il calcolo


proposizionale.

Definizione 3.30. Diciamo che la teoria T implica logicamente la


formula ϕ, o che ϕ è conseguenza logica di T , se ϕ è vera in ogni modello
di T . In questo caso scriviamo T |= ϕ.

Definizione 3.31. Una teoria T si dice soddisfacibile se ammette


un modello; si dice insoddisfacibile in caso contrario.

Gli stessi risultati già dimostrati per le teorie proposizionale, valgo-


no anche per le teorie del primo ordine. Ne elenchiamo i principali qua
sotto (le dimostrazioni sono le stesse del caso proposizionale e quindi
le omettiamo).

• Procedimento per casi: Sia T una teoria del primo ordine e


siano ϕ, ψ formule. Se T ∪ {ψ} |= ϕ e T ∪ {¬ϕ} |= ψ allora
T |= ϕ.
• Deduzione semantica: Sia T una teoria e siano A1 , . . . , An , B
formule. Allora

T, A1 , . . . , An |= B ⇐⇒ T |= A1 ∧ . . . ∧ An → B .

• Reductio ad absurdum: Sia T una teoria e A una formula.


Allora T |= A ⇔ T ∪ {¬A} è insoddisfacibile.

4. L’aritmetica di Peano PA
FARE
44 3. IL CALCOLO DEI PREDICATI

5. Il Teorema di Loweinheim-Skolem
In questa sezione vedremo importanti risultati nell’ambito della
teoria dei modelli, cioè quella parte della logica matematica che si
concentra sulla studio delle L-strutture.
Definizione 3.32. Siano M e N due L-strutture. Una funzione
f : M → N tra i rispettivi universi si dice immersione elementare, e si
scrive f : M  N, se per ogni L-formula ϕ e per ogni assegnamento ρ
su M si ha l’equivalenza
M |= ϕ [ρ] ⇐⇒ N |= ϕ [f ◦ ρ].
M si dice sottostruttura elementare di N, e si scrive M  N, se
M ⊆ N e l’inclusione ı : M → N è un’immersione elementare.
Visto che “x = y” è una formula di tutti i linguaggi del primo
ordine, segue subito che le immersioni elementari sono necessariamente
funzioni iniettive.
Esempio 3.33. FARE
Definizione 3.34. Due L-strutture M e N si dicono elementar-
mente equivalenti, e si scrive M ≡ N, se per ogni L-enunciato σ si ha
l’equivalenza:
M |= σ ⇐⇒ N |= σ.
Esercizio 3.35. Dimostrare che se esiste un’immersione elementare
f : M  N allora M ≡ N.
La proprietà dell’esercizio precedente non si può invertire.
Esercizio 3.36. Trovare un esempio di due strutture elementar-
mente equivalenti M ≡ N per le quali non esistono immersioni elemen-
tari f : M  N o g : N  M.
Esercizio 3.37. Trovare due strutture M ⊆ N una sottostruttura
dell’altra, tali che M ≡ N ma M 6 N.
Il seguente classico risultato ci fornisce un’utile criterio per deter-
minare quando una sottostruttura è anche sottostruttura elementare.
Lemma 3.38 (Criterio di Tarski-Vaught). Siano M ⊆ N due L-
strutture. M ≺ N se e solo se la seguente condizione è soddisfatta per
ogni L-formula ϕ(x) e per ogni assegnamento ρ : Var → M :
(?) N |= ∃x ϕ(x) [ρ] =⇒ esiste m ∈ M tale che N |= ϕ(x) [ρ(m/x)] .
5. IL TEOREMA DI LOWEINHEIM-SKOLEM 45

Dim. Se M ≺ N, allora la condizione (?) vale perché


N |= ∃x ϕ(x) [ρ] ⇔ M |= ∃x ϕ(x) [ρ]
e quindi esiste m ∈ M tale che M |= ϕ(x) [ρ(m/x)]. Viceversa, dob-
biamo mostrare che per ogni L-formula ψ e per ogni assegnamento ρ
su M, si ha l’equivalenza
M |= ψ [ρ] ⇐⇒ N |= ψ [ρ] .
Procediamo per induzione sulla costruzione di ψ, e supponiamo
prima che ψ sia atomica, cioè sia R(t1 , . . . , tn ) dove R è un simbolo di
relazione di arietà n, e t1 , . . . , tn sono L-termini. Vista l’Osservazione
3.15, le interpretazioni dei termini con l’assegnamento ρ in M e in N
coincidono, cioè tM,ρ
i = tN,ρ
i ∈ M per ogni i = 1, . . . , n. Allora abbiamo:
   
M |= ψ [ρ] ⇔ tM,ρ 1 , . . . , t M,ρ
n = tN,ρ
1 , . . . , t N,ρ
n ∈ RM ⇔
 
(per def. di sottomodello) ⇔ tN,ρ 1 , . . . , t N,ρ
n ∈ RN ⇔ N |= ψ [ρ] .
Se ψ è ¬ϕ, allora applicando l’ipotesi induttiva su ϕ si ha
M |= ψ [ρ] ⇔ M 6|= ϕ [ρ] ⇔ N 6|= ϕ [ρ] ⇔ M |= ψ [ρ] .
Se ψ è ϕ1 ∧ ϕ2 , applicando l’ipotesi induttiva su ϕ1 e ϕ2 si hanno le
equivalenze:
M |= ψ [ρ] ⇔ M |= ϕ1 [ρ] e M |= ϕ2 [ρ] ⇔
N |= ϕ1 [ρ] e N |= ϕ2 [ρ] ⇔ N |= ψ [ρ] .
Gli altri connettivi ∨, → e ↔ seguono dai precedenti, utilizzando le
seguenti istanze di tautologie: ϕ1 ∨ ϕ2 ↔ ¬(¬ϕ1 ∧ ¬ϕ2 ); ϕ → ϕ2 ↔
¬ϕ1 ∨ ϕ2 ; e ϕ1 ↔ ϕ2 ↔ (ϕ1 → ϕ2 ) ∧ (ϕ2 → ϕ1 ).
Occupiamoci ora del quantificatore esistenziale, e supponiamo che
ψ sia ∃x ϕ(x). Una implicazione si dimostra notando che
M |= ψ [ρ] ⇔ esiste m ∈ M t.c. M |= ϕ [ρ(m/x)] ⇒
⇒ esiste m ∈ N t.c. M |= ϕ [ρ(m/x)] ⇔
⇔ esiste m ∈ N t.c. N |= ϕ [ρ(m/x)] ⇔ N |= ψ [ρ].
Abbiamo potuto usare l’ipotesi induttiva perché m ∈ M , e quindi anche
ρ(m/x) assume valori in M . L’altra implicazione segue direttamente
dalla condizione (?), e dall’ipotesi induttiva su ϕ. Infine, la quantifi-
cazione universale è conseguenza di quanto già dimostrato, visto che
l’equivalenza “∀x ϕ(x) ↔ ¬(∃x ¬ϕ)” è logicamente vera. 
Teorema 3.39 (Lowenheim-Skolem). Per ogni L-struttura B e per
ogni X ⊆ B esiste una sottostruttura elementare A ≺ B dove X ⊆ A
e |A| ≤ max{|X|, |L|, ℵ0 }.
46 3. IL CALCOLO DEI PREDICATI

Dim. Sia ϕ(x, y1 , . . . , yn ) una formula dove x, y1 , . . . , yn sono tutte


e sole le sue variabili libere. Chiamiamo funzione di Skolem per ϕ
rispetto alla variabile libera x (nella struttura B) una funzione f :
B n → B che “sceglie i testimoni”, cioè tale che per ogni b1 , . . . , bk ∈ B:
M |= ∃x ϕ(x, b1 /y1 , . . . , bk /yn ) ⇒ M |= ϕ(b/x, b1 /y1 , . . . , bk /yk )
dove b = f (b1 , . . . , bn ). Nel caso in cui n = 0, cioè quando x è l’unica
variabile libera di ϕ, conveniamo che una funzione di Skolem sia una
qualunque funzione costante f : B → B. Segue direttamente dalla
definizione di “M |= ∃x ϕ [ρ]” che per ogni formula ϕ e per ogni sua
variabile libera x esiste una funzione di Skolem fϕ,x .2 Possiamo quindi
prendere una famiglia di Skolem per B:
F = {fϕ,x | x è una variabile libera della formula ϕ }
Senza perdita di generalità possiamo assumere X 6= ∅S
(altrimenti ci
aggiungiamo un qualunque elemento di B). Sia ora A = k∈N Xk dove
X1 = X e dove, induttivamente, Xk+1 è la chiusura di Xk rispetto alle
funzioni in F, cioè
Xk+1 = {f (a1 , . . . , an ) | f ∈ F funzione n-aria & a1 , . . . , an ∈ Xk } .
Per come è stato costruito, l’insieme A include X ed è chiuso per
funzioni di Skolem, cioè:
• Se f ∈ F è una funzione n-aria e a1 , . . . , an ∈ A, allora anche
f (a1 , . . . , an ) ∈ A.
Vogliamo mostrare che A è l’universo di una sottostruttura A ⊆ B;
per farlo, verifichiamo che le due condizioni dell’Osservazione 3.11 sono
soddisfatte:
(1) cN ∈ M per ogni simbolo di costante c ∈ L ;
(2) FN (m1 , . . . , mn ) ∈ M per ogni simbolo di funzione F di arietà
n, e per ogni m1 , . . . , mn ∈ M .
Dato il simbolo di costante c, prendiamo una funzione f ∈ F di
Skolem per la formula ϕ(x) data dall’uguaglianza “x = c”, rispetto
alla variabile x. Dal momento che x è l’unica variabile libera di ϕ, la
funzione f : B → B assume un valore costante b. Notiamo che b ∈ A,
perché se ξ è un qualunque elemento di X = X1 , allora b = f (ξ) ∈
2 Notiamo che, in generale, è necessario usare l’assioma di scelta per dimostrare
la sua esistenza; infatti, per ogni n-upla (b1 , . . . , bn ) ∈ B n dobbiamo scegliere un
testimone b ∈ B tale che B |= ϕ(b/x, b1 /y1 , . . . , bn /yn ). Quando invece il dominio
B è bene ordinabile (ad esempio, quando B è numerabile), l’assioma di scelta non
è necessario perché possiamo definire f (b1 , . . . , bn ) come il minimo elemento b ∈ B
che è un testimone.
5. IL TEOREMA DI LOWEINHEIM-SKOLEM 47

X2 ⊆ A. Adesso, banalmente N |= ∃x ϕ(x), quindi N |= ϕ(b/x); ma


questo vale se e solo se cN = b, e concludiamo che cN ∈ A. Se F è
un simbolo di funzione di arietà n, e a1 , . . . , an ∈ A, consideriamo la
formula ψ(x, y1 , . . . , yn ): “∃x (F(y1 , . . . , yn ) = x)”, e prendiamo una
funzione di Skolem g ∈ F per ψ rispetto alla variabile x. Anche in
questo caso, banalmente N |= ∃x ψ(x, a1 /y1 , . . . , an /yn ), e quindi N |=
ψ(b/x, a1 /y1 , . . . , an /bn ), dove b = g(a1 , . . . , an ). Questo vale se e solo
se FN (a1 , . . . , an ) = b. Notiamo infine che un tale b ∈ A perché A è
chiuso per le funzioni di Skolem.
Per dimostrare che A ≺ B, usiamo il criterio di Tarski-Vaught, e
verifichiamo che per ogni ϕ(x) dove x è libera, e per ogni assegnamento
ρ : Var → A, vale la condizione:
(?) B |= ∃x ϕ(x) [ρ] =⇒ esiste a ∈ A tale che B |= ϕ(x) [ρ(a/x)] .
Prendiamo f ∈ F funzione di Skolem per ϕ rispetto ad x. Se
x, y1 , . . . , yn sono tutte e sole le variabili libere di ϕ, e se ρ(yi ) = ai ∈ A
per i = 1, . . . , n, allora, per definizione di funzione di Skolem, abbia-
mo che B |= ϕ(b/x, a1 /y1 , . . . , an /yn ) dove b = f (a1 , . . . , an ). Un tale
b ∈ A perché l’insieme A è chiuso per funzioni di Skolem.
Occupiamoci infine della cardinalità del dominio A. Per semplicità,
denotiamo con µ = max{|X|, |L|, ℵ0 }. Vogliamo mostrare per indu-
zione che |Xk | ≤ µ per ogni k. La base k = 1 è ovvia. Per il passo
induttivo, notiamo prima che la famiglia F delle funzioni di Skolem
fϕ,x ha al più la cardinalità del prodotto cartesiano Form(L) × Var,
e quindi |F| ≤ max{|L|, ℵ0 } ≤ µ. Quindi, per ogni funzione n-aria
f ∈ F, l’insieme immagine
Λf = {f (a1 , . . . , an ) | a1 , . . . , an ∈ Xk }
ha cardinalità |Λf | = |f [Xkn ]| ≤ |Xk |n = |Xk |, visto che Xk è infinito.
Ma allora

[ X
|Xk+1 | = Λf ≤ |Λf | ≤ |Xk | · |F| ≤ µ · µ = µ.


f ∈F f ∈F

Da qui segue subito la tesi, perché



[
|A| = Xk ≤ µ · ℵ 0 = µ .


k∈N


48 3. IL CALCOLO DEI PREDICATI

6. Ultramisure e ultrafiltri
Come vedremo più avanti, la costruzione di ultraprodotto permette
di ottenere nuove L-strutture a partire da sequenze arbitrarie hMi | i ∈
Ii di L-strutture. In un certo senso, l’ultraprodotto M sarà una sorta
di “media” delle strutture di partenza. L’idea è quella di considerare
una speciale misura di probabilità µ su I, in modo che la validità o
meno di un enunciato σ in M sia determinata dalla probabilità che
σ sia vera nelle strutture Mi . Per ottenere una simile proprietà, sarà
necessario imporre alcune condizioni sulla misura µ. Da qui in avanti
assumeremo che l’insieme di indici I sia infinito (vedremo che se I è
finito, la costruzione di ultraprodotto si banalizza).
Anzitutto, notiamo che per ogni A ⊆ I, è sempre possibile trovare
sequenze di strutture hMi | i ∈ Ii ed enunciati σ in modo da avere
A = {i ∈ I | Mi |= σ}. Dunque una prima naturale richiesta è la
seguente:
(a) La misura di probabilità µ : P(I) → [0, 1] è definita su tutti i
sottoinsiemi di I.
Notiamo che se A = {i ∈ I | Mi |= σ}, allora il complementare
c
A = I \ A = {i ∈ I | Mi |= ¬σ}. Ovviamente, nella L-struttura
M dovrà valere uno ed uno solo tra gli enunciati σ e ¬σ. La richiesta
naturale è che in M valga l’enunciato più probabile tra σ e ¬σ, e quindi:
• M |= σ se e solo se µ ({i ∈ I | Mi |= σ}) > 12 .
In particolare, escluderemo la possibilità di insiemi con misura 1/2.
Consideriamo ora la congiunzione logica σ ∧ τ di due enunciati. Per
definizione, M |= σ ∧ τ se e solo se M |= σ e M |= τ . Chiaramente, se
A = {i ∈ I | Mi |= σ} e B = {i ∈ I | Mi |= τ }, allora l’intersezione
A∩B = {i ∈ I | Mi |= σ∧τ }. Questo ci porta ad imporre la condizione
seguente:
1 1
(b) µ(A) > 2
e µ(B) > 2
se e solo se µ(A ∩ B) > 12 .
Quest’ultima richiesta sembra particolarmente difficile da soddisfa-
re. Il problema però può essere risolto considerando delle speciali misu-
re che assumono solo due valori: 0 e 1. Infatti, come si può facilmente
verificare, ogni misura di probabilità µ : P(I) → {0, 1} soddisfa sia la
condizione (a) che la condizione (b). Supponiamo dunque che µ sia di
questo tipo, e continuiamo a riflettere su quali debbano essere le sue
ulteriori proprietà.
Quando Mi |= σ per tutti gli indici i tranne al più un numero finito,
è naturale richiedere che anche M |= σ. Questo equivale ad imporre la
seguente condizione di non-atomicità:
6. ULTRAMISURE E ULTRAFILTRI 49

(c) Se A ⊆ I è cofinito, cioè se Ac è finito, allora µ(A) = 1.


Equivalentemente, se A è finito allora µ(A) = 0.
Per la condizione (c), tutti i singoletti hanno misura 0. Se consi-
deriamo il caso in cui I = {in | n ∈ N} è numerabile, ne deduciamo
che la misura
S µ non P può essere σ-additiva, altrimenti avremmo che
µ(I) = µ ( n {in }) = ∞ n=1 µ({in }) = 0.

(d) µ è finitamente additiva.


Riassumiamo tutte le richieste (a), (b), (c), (d) viste sopra nella
seguente
Definizione 3.40. Chiamamo ultramisura sull’insieme I una mi-
sura finitamente additiva µ : P(I) → {0, 1} e tale che µ(A) = 0 per
ogni A ⊂ I finito.
Un’utile caratterizzazione delle ultramisure è la seguente.
Teorema 3.41. Una funzione µ : P(I) → {0, 1} è un’ultramisura
se e solo se la famiglia di insiemi U = {A ⊆ I | µ(A) = 1} soddisfa le
seguenti proprietà:
(1) I∈U e∅∈ / U˙;
(2) Se A ∈ U e B ⊇ A allora anche B ∈ U ;
(3) Se A ∈ U e B ∈ U allora anche A ∩ B ∈ U ;
(4) / U allora il complementare Ac ∈ U ;
Se A ∈
(5) Se A ⊆ I è finito, allora A ∈
/ U.
Dim. Riformuliamo le cinque proprietà di sopra come proprietà
della funzione µ:
(10 ) µ(I) = 1 e µ(∅) 6= 1 ;
(20 ) Se µ(A) = 1 e B ⊇ A allora anche µ(B) = 1 ;
(30 ) Se µ(A) = 1 e µ(B) = 1 allora anche µ(A ∩ B) = 1 ;
(40 ) Se µ(A) 6= 1 allora µ(Ac ) = 1 ;
(50 ) Se A ⊆ I è finito, allora µ(A) 6= 1.
Vediamo prima che se µ è un’ultramisura, allora tutte e cinque le
proprietà (10 ), . . . , (50 ) sono soddisfatte. La (10 ), la (40 ) e la (50 ) se-
guono direttamente dall’equivalenza “µ(A) 6= 1 ⇔ µ(A) = 0”. La
(20 ) segue dalla proprietà di monotonia delle misure: “B ⊇ A ⇒
µ(B) ≥ µ(A)”. Infine la (30 ) si può dimostrare per assurdo, notan-
do che se fosse µ(A ∩ B) 6= 1, cioè se µ(A ∪ B) = 0, allora per
le proprietà di misura finitamente additiva, si otterrebbe l’assurdo
1 ≥ µ(A ∪ B) = µ(A) + µ(B) − µ(A ∩ B) = 2.
50 3. IL CALCOLO DEI PREDICATI

Viceversa, supponiamo che la funzione a due valori µ : P(I) →


{0, 1} soddisfi le proprietà (10 ), . . . , (50 ), e mostriamo che µ è un’ultra-
misura, cioè:
(I) µ(I) = 1 e µ(∅) = 0 ;
(II) Se A ∩ B = ∅, allora µ(A ∪ B) = µ(A) + µ(B).
(III) Se A è finito, allora µ(A) = 0.
La (I) e la (III) seguono in modo diretto rispettivamente dalla (10 )
e dalla (50 ). Prima di proseguire, notiamo che vale la proprietà:
• Per ogni X ⊆ I, si ha l’equivalenza µ(X) = 0 ⇔ µ(X c ) = 1.
L’implicazione ⇒ è data dalla (40 ). Viceversa, se per assurdo fosse
µ(X c ) = 1 ma µ(X) 6= 0, allora µ(X) = 1 e dalla (30 ) seguirebbe che la
misura dell’intersezione µ(∅) = µ(X ∩ X c ) = 1, contraddicendo la (10 ).
Occupiamoci finalmente della (II). Supponiamo prima che almeno
uno dei due insiemi A e B abbia misura 1, ad esempio sia µ(A) = 1.
Allora dalla (20 ) segue che µ(A∪B) ≥ µ(A) e quindi anche µ(A∪B) = 1;
inoltre, A ∩ B = ∅ ⇔ A ⊆ B c ⇒ µ(B c ) = 1 ⇔ µ(B) = 0, e quindi in
questo caso la (II) vale. Supponiamo ora invece che µ(A) = µ(B) = 0.
Allora µ(Ac ) = µ(B c ) = 1 e quindi, per la (30 ), µ ((A ∪ B)c ) = µ(Ac ∩
B c ) = 1. Ma allora µ(A ∪ B) = 0, e anche in questo caso la (II)
vale. 
La caratterizzazione di sopra ci risulterà utile per risolvere il pro-
blema dell’esistenza.
• Esistono ultramisure µ su ogni insieme infinito I?
Anticipiamo che la risposta sarà positiva, ma richiederà un uso es-
senziale dell’assioma di scelta, un tipico strumento matematico di na-
tura non costruttiva. In altre parole, mostreremo che esistono ultrami-
sure su ogni insieme infinito, ma non sarà possibile costruirne nessuna
in modo “effettivo”.
Ricordiamo una nota nozione insiemistica.
Definizione 3.42. Si dice filtro su I una famiglia F ⊆ P(I) che
soddisfa le prime tre proprietà del Teorema 3.41:
(1) I ∈ U e ∅ ∈
/ U˙;
(2) Se A ∈ U e B ⊇ A allora anche B ∈ U ;
(3) Se A ∈ U e B ∈ U allora anche A ∩ B ∈ U ;
Esempi banali di filtri sono i filtri principali, cioè i filtri della forma
Fi = {A ⊆ I | i ∈ I}
6. ULTRAMISURE E ULTRAFILTRI 51

dove i ∈ I è un fissato elemento. Il prototipo di filtro non principale è


il filtro di Frechet degli insiemi cofiniti:
Fr(I) = {A ⊆ I | Ac è finito }.
Definizione 3.43. Una famiglia di insiemi G ha la proprietà dell’inter-
sezione finita (in breve FIP, cioè “finite intersection property”) se ogni
intersezione finita di suoi elementi è non vuota:
∀ A1 , . . . , An ∈ G A1 ∩ . . . ∩ An 6= ∅.
Dunque un filtro è una famiglia non vuota di insiemi che soddisfa
la FIP ed è chiusa per soprainsieme. È facile verificare che se G ⊂ P(I)
è una famiglia (non vuota) con la FIP, allora
hGi = {B ⊆ I | ∃ G1 , . . . , Gn ∈ G t.c. B ⊇ G1 ∩ . . . ∩ Gn }
è un filtro su I, che si dice filtro generato da G.

Proposizione 3.44. Per ogni filtro F su I, sono proprietà equiva-


lenti:
(i) F soddisfa anche la quarta condizione della proposizione pre-
cedente: A ∈ / F ⇒ Ac ∈ F ;
(ii) F è un filtro massimale rispetto all’inclusione.
Dim. (i) ⇒ (ii). Se per assurdo F non è massimale, allora esiste
un filtro F 0 ⊃ F che lo estende propriamente, e possiamo prendere un
elemento X ∈ F 0 \ F. Notiamo che X ∈ F 0 ⇒ X c ∈ / F0 ⇒ Xc ∈/ F.
L’insieme X è quindi un controesempio alla proprietà (i).
(ii) ⇒ (i). Supponiamo per assurdo che esista A ⊆ I con A, Ac ∈ /
F. Consideriamo la famiglia di insiemi:
G = {F ∩ A | F ∈ F}.
Dimostriamo che G ha la PIF. Se F1 , . . . , Fn ∈ F, allora
(F1 ∩ A) ∩ . . . ∩ (Fn ∩ A) = F ∩ A
dove F = F1 ∩. . .∩Fn ∈ F. Chiaramente F ∩A 6= ∅, altrimenti F ⊆ Ac
implicherebbe che Ac ∈ F, contro la nostra assunzione. Consideriamo
ora il filtro F 0 = hGi generato da G. Notiamo che F 0 è un filtro che
estende propriamente F; infatti F = F ∩ I ∈ G ⊆ F 0 per ogni F ∈ F,
e inoltre A = I ∩ A ∈ G ⊆ F 0 ⇒ A ∈ F 0 \ F. Questo contraddice la
massimalità di F. 
Definizione 3.45. Un filtro che soddisfi una (e quindi tutte) le
proprietà precedenti è detto ultrafiltro.
52 3. IL CALCOLO DEI PREDICATI

Esercizio 3.46. Dimostrare che un filtro F è un ultrafiltro se e


solo se soddisfa la seguente proprietà:
A ∪ B ∈ F ⇒ A ∈ U o B ∈ U.
Esercizio 3.47. Dimostrare che due ultrafiltri U 6= V sono diversi
se e solo se esistono due insiemi disgiunti X e Y tali che X ∈ U e
Y ∈ V.
Notiamo che tutti i filtri principali sono banalmente ultrafiltri:
Ui = {A ⊆ I | i ∈ I} .
Invece, su ogni insieme infinito I, il filtro di Frechet Fr(I) non è
un ultrafiltro. Infatti, basta prendere un insieme infinito A ⊂ I il cui
complementare Ac sia infinito, ed abbiamo che A, Ac ∈ / Fr(I).

Proposizione 3.48. Sia U un ultrafiltro su un insieme infinito I.


Allora sono proprietà equivalenti:
(i) U soddisfa anche la quinta condizione del Teorema 3.41:
A è finito ⇒ A ∈
/U;
(ii) U ⊃ Fr(I) include (propriamente) il filtro di Frechet ;
(iii) U non è principale.
Dim. (i) ⇒ (ii). Se per assurdo esistesse un insieme cofinito A ∈
Fr(I) tale che A ∈/ U allora, dalla proprietà di ultrafiltro, il comple-
mentare finito Ac ∈ U, contro l’ipotesi.
(ii) ⇒ (iii). Se per assurdo U = Fi fosse principale, allora il
singoletto {i} ∈ U, e quindi l’insieme cofinito {i}c = I \ {i} ∈ Fr(I)
non apparterrebbe ad U.
(iii) ⇒ (i). Per assurdo supponiamo che esista un insieme finito
F = {i1 , . . . , ik } ∈ U. Allora il complementare F c = ks=1 I \ {is } ∈
T
/ U,
e quindi deve esistere almeno un s tale che I \ {is } ∈ / U. Ma allora, per
la proprietà di ultrafiltro, il complementare (I \ {is })c = {is } ∈ U, e
dunque U = Fis sarebbe un ultrafiltro principale, contro l’ipotesi. 

Grazie alle due ultime proposizioni, possiamo riformulare la Propo-


sizione 3.41 in questo modo:
• µ : P(I) → {0, 1} è un’ultramisura se e solo se la corrispon-
dente famiglia Uµ = {A ⊆ I | µ(A) = 1} è un ultrafiltro non
principale.
7. ULTRAPRODOTTI 53

L’esistenza di ultrafiltri non principali (e quindi di ultramisure) è


garantita dal Lemma di Zorn, che è una delle forme equivalenti dell’as-
sioma di scelta.3

Teorema 3.49 (UL - Ultrafilter Lemma). Ogni famiglia di insiemi


con la FIP può essere essere estesa ad un ultrafiltro. In particolare, per
ogni filtro F su un insieme I, esiste un ultrafiltro U su I con F ⊆ U.
Dim. Sia G ⊆ P(I) una famiglia di insiemi con la FIP, e sia F0 =
hGi il filtro su I generato da G. Allora F = {F filtro su I | F ⊇ F0 }. La
famiglia F è parzialmente ordinata per inclusione. Per poter applicare
il Lemma di Zorn, occorre dimostrare l’esistenza di un maggiorante
per ogni catena. Sia dunque S hFj | j ∈ Ji una catena di elementi di F.
Banalmente, l’unione H = j∈J Fj include tutti i Fj (e dunque anche
F). Perché sia un maggiorante, resta da dimostrare che H ∈ F, cioè
che H è un filtro. Se A, B ∈ H, allora A ∈ Fj1 e B ∈ Fj2 per opportuni
j1 , j2 ∈ J. Ma hFj | j ∈ Ji è una catena, dunque sarà Fj1 ⊆ Fj2 (o
viceversa). Quindi A, B ∈ Fj2 ⇒ A ∩ B ∈ Fj2 ⊆ H. La verifica che
H è anche chiuso per soprainsieme è immediata. Possiamo finalmente
applicare il Lemma di Zorn, ed ottenere l’esistenza di un elemento U
massimale in F, che è l’ultrafiltro cercato. 

In un senso preciso, non si possono definire in modo esplicito ultra-


filtri non principali. Più precisamente, non esistono formule ϕ(x) della
teoria degli insiemi tali che la teoria ZFC dimostra entrambi gli enun-
ciati: “Se vale ϕ(x) allora x è un ultrafiltro non principale” e “Esiste
ed unico x tale che ϕ(x)”. In altre parole, nonostante si possa dimo-
strare che esistono (e lo abbiamo appena fatto!), nessuno di loro può
essere “descritto esplicitamente”. Per quanto possa apparire strano,
un fenomeno simile si ritrova anche nella combinatoria elementare. Ad
esempio, per il cosiddetto principio dei cassetti, se abbiamo n+1 ogget-
ti distribuiti in n cassetti, possiamo concludere che esiste un cassetto
contenente almeno due oggetti, ma “descrivere esplicitamente” quale
sia un tale cassetto non è possibile.

7. Ultraprodotti
In questa sezione mostreremo che gli ultrafiltri (o le le ultramisure)
sono in effetti lo strumento che cercavamo per costruire nuove strutture
a partire da sequenze di strutture assegnate.
3Con questo intendiamo dire che, assumendo gli assiomi della teoria ZF di
Zermelo-Fraenkel, si dimostra l’equivalenza: “Assioma di scelta ⇔ Lemma di Zorn”.
54 3. IL CALCOLO DEI PREDICATI

Definizione 3.50. Sia U un ultrafiltro su I. L’ultraprodotto di


una I-sequenza
Q di L-strutture hMi | i ∈ Ii modulo U è la L-struttura
M = i∈I Mi /U dove:
Q 
• L’universo è il quoziente M = i∈I Mi / ≡U del prodotto
cartesiano degli universi modulo la relazione di equivalenza
determinata da U:
hai | i ∈ Ii ≡U hbi | i ∈ Ii ⇔ {i ∈ I | ai = bi } ∈ U ;
Q
Denotiamo la U-classe di equivalenza di una I-upla f ∈ i∈I Mi
scrivendo f U = hf (i) | i ∈ IiU .
• Se c è un simbolo di costante, la sua interpretazione è il se-
guente elemento di M :
cM = cMi | i ∈ I U ;

• Se F è un simbolo di funzione di arietà n, la sua interpreta-


zione FM è la Qfunzione n-aria su M definita ponendo per ogni
f1 , . . . , fn ∈ i∈I Mi :

FM (f1U , . . . , fnU ) = FMi (f1 (i), . . . , fn (i)) | i ∈ I U ;



• Se R è un simbolo di relazione di arietà n, la sua interpreta-


zione RM è la Qrelazione n-aria su M definita ponendo per ogni
f1 , . . . , fn ∈ i∈I Mi :

(f1U , . . . , fnU ) ∈ RM ⇔ i ∈ I | (f1 (i), . . . , fn (i)) ∈ RMi ∈ U .




È necessario verificare che le definizioni date sopra sono ben poste.


Le proprietà richieste si trovano nel seguente esercizio.
Esercizio 3.51. Supponiamo che fs ≡U gs per ogni s = 1, . . . , n.
Dimostrare che per ogni n, anche le corrispondenti n-uple sono U-equi-
valenti, cioè:
n o
i ∈ I (f1 (i), . . . , fn (i)) = (g1 (i), . . . , gn (i)) ∈ U.

Dedurne che per ogni simbolo di funzione F di arietà n e per ogni


simbolo di relazione R di arietà n si ha:



(1) FMi (f1 (i), . . . , fn (i)) | i ∈ I ≡U FMi (g1 (i), . . . , gn (i)) | i ∈ I ;

(2) i ∈ I | (f1 (i), . . . , fn (i)) ∈ RMi ∈ U se e solo se
i ∈ I | (g1 (i), . . . , gn (i)) ∈ RMi ∈ U.
7. ULTRAPRODOTTI 55

Notiamo che la definizione di ultraprodotto sarebbe ben posta anche


prendendo un qualunque filtro F al posto dell’ultrafiltro U; in lettera-
tura, tali strutture si chiamano prodotti ridotti. Tuttavia per i prodotti
ridotti non vale il fondamentale Teorema di Los.4

Notazione 3.52. Se t è un L-termine avente x1 , . . . , xn come varia-


bili libere, allora per ogni L-struttura M e per ogni scelta m1 , . . . , mn ∈
M di elementi nell’universo di M, denotiamo con
t [m1 /x1 , . . . , mn /xn ]
l’interpretazione di t in M con un qualsiasi assegnamento ρ tale che
ρ(xs ) = ms per s = 1, . . . , n. Analogamente, se ϕ è una formula nelle
variabili libere x1 , . . . , xn , scriviamo
M |= ϕ [m1 /x1 , . . . , mn /xn ] o semplicemente M |= ϕ [m1 , . . . , mn ]
per intendere che M |= ϕ[ρ] dove ρ è un qualunque assegnamento tale
che ρ(xs ) = ms per s = 1, . . . , n.

Vediamo come caratterizzare l’interpretazione dei termini negli ul-


traprodotti.
Q
Osservazione 3.53. Sia M = i∈I Mi /U un ultraprodotto. Allora
per ogni termine Q t avente x1 , . . . , xn come variabili libere, e per ogni
f1 , . . . , fn ∈ i∈I Mi , si ha
tM [f1U /x1 , . . . , fnU /xn ] = tMi [f1 (i)/x1 , . . . , fn (i)/xn ] | i ∈ I U

Dim. FARE 
Q
Teorema 3.54 (Los). Sia M = i∈I Mi /U un ultraprodotto. Allo-
ra per ogni formula
Q ϕ le cui variabili libere sono x1 , . . . , xn , e per ogni
f1 , . . . , fn ∈ i∈I Mi , si ha
Y
Mi /U |= ϕ[f1U , . . . , fnU ] ⇔ {i ∈ I | Mi |= ϕ[f1 (i), . . . , fn (i)]} ∈ U.
i∈I

Dim. Procediamo per induzione sulla costruzione della Q formula ϕ.


Per semplicità, nel seguito denotiamo con M l’ultraprodotto i∈I Mi /U .

4
In realtà si può dimostrare una versione più debole del Teorema di Los per
prodotti ridotti che garantisce, ad esempio, l’equivalenza
Y
Mi /U |= σ ⇔ {i ∈ I | Mi |= σ}
i∈I

per gli enunciati σ costruiti usando solo i connettivi ∧ e →.


56 3. IL CALCOLO DEI PREDICATI

Cominciamo col caso di ϕ atomica. Se ϕ è “(t1 = t2 )” dove t1 , t2


sono termini nei quali occorrono le variabili libere x1 , . . . , xn allora,
usando le definizioni e l’Osservazione 3.53, si hanno le equivalenze
M |= (t1 = t2 ) [f1U /x1 , . . . , fnU /xn ] ⇔
U U U U
tM M
1 [f1 /x1 , . . . , fn /xn ] = t2 [f1 /x1 , . . . , fn /xn ] ⇔
i ∈ I | tM Mi

1 [f1 (i)/x1 , . . . , fn (i)/xn ] = t2 [f1 (i)/x1 , . . . , fn (i)/xn ] ∈ U ⇔
i

{i ∈ I | Mi |= (t1 = t2 ) [f1 (i)/x1 , . . . , fn (i)/xn ]} ∈ U .


Se ϕ è R(t1 , . . . , tk ) dove R è un simbolo di relazione di arietà k e
t1 , . . . , tk sono termini nelle variabili libere x1 , . . . , xn , allora:
M |= R(t1 , . . . , tk ) [f1U /x1 , . . . , fnU /xn ] ⇔
(g1U , . . . , gkU ) ∈ RM dove gsU = tM U U
s [f1 /x1 , . . . , fn /xn ] ⇔
i ∈ I | (g1 (i), . . . , gk (i)) ∈ RMi ∈ U


Per l’Osservazione 3.53, gs (i) = tM


s [f1 (i)/x1 , . . . , fn (i)/xn ], e quin-
i

di
(g1 (i), . . . , gk (i)) ∈ RMi ⇔ Mi |= R(t1 , . . . , tk ) [f1 (i)/x1 , . . . , fn (i)/xn ],
e possiamo concludere che le proprietà di sopra sono equivalenti a
{i ∈ I | Mi |= R(t1 , . . . , tk ) [f1 (i)/x1 , . . . , fn (i)/xn ]} ∈ U.
Se ϕ è ¬ψ ed ha x1 , . . . , xn come variabili libere, allora dall’ipotesi
induttiva e dalla proprietà di ultrafiltro A ∈/ U ⇔ Ac ∈ U, segue che
M |= ϕ [f1U /x1 , . . . , fnU /xn ] ⇔ M 6|= ψ [f1U /x1 , . . . , fnU /xn ] ⇔
A = {i ∈ I | Mi |= ψ [f1 (i)/x1 , . . . , fn (i)/xn ]} ∈/U ⇔
c
A = {i ∈ I | Mi |= ϕ [f1 (i)/x1 , . . . , fn (i)/xn ]} ∈ U .
Se ϕ è ψ1 ∧ ψ2 ed ha x1 , . . . , xn come variabili libere, di nuovo grazie
all’ipotesi induttiva e alla proprietà di filtro A, B ∈ U ⇔ A ∩ B ∈ U,
si ottengono le equivalenze:
M |= ϕ [f1U /x1 , . . . , fnU /xn ] ⇔
M |= ψ1 [f1U /x1 , . . . , fnU /xn ] & M |= ψ2 [f1U /x1 , . . . , fnU /xn ] ⇔
A = {i ∈ I | Mi |= ψ1 [f1 (i)/x1 , . . . , fn (i)/xn ]} ∈ U &
B = {i ∈ I | Mi |= ψ2 [f1 (i)/x1 , . . . , fn (i)/xn ]} ∈ U ⇔
A ∩ B = {i ∈ I | Mi |= ϕ [f1 (i)/x1 , . . . , fn (i)/xn ]} ∈ U.
Occupiamoci ora del quantificatore esistenziale, e supponiamo che
ϕ sia ∃y ψ ed abbia x1 , . . . , xn come variabili libere. Applicando la
definizione e l’ipotesi induttiva, si ha
M |= ϕ [f1U /x1 , . . . , fnU /xn ] ⇔
7. ULTRAPRODOTTI 57

esiste g U t.c. M |= ψ [g U /x, f1U /x1 , . . . , fnU /xn ] ⇔


A = {i ∈ I | Mi |= ψ [g(i)/x, f1 (i)/x1 , . . . , fn (i)/xn ]} ∈ U.
Adesso, B = {i ∈ I | Mi |= ϕ [f1 (i)/x1 , . . . , fn (i)/xn ]} ⊇ A, e quindi
anche B ∈ U. Viceversa, supponiamo che B ∈ U. Per ogni i ∈ B, pren-
diamo unQtestimone bi ∈ Mi tale che Mi |= ψ [bi , f1 (i)/x1 , . . . , fn (i)/xn ].
Se g ∈ i∈I Mi è una qualunque I-upla tale che g(i) = bi per i ∈ B,
allora, per l’ipotesi induttiva su ψ,
{i ∈ I | Mi |= ψ [g(i)/x, f1 (i)/x1 , . . . , fn (i)/xn ]} ∈ U ⇔

M |= ψ [g U /x, f1U /x1 , . . . , fnU /xn ] ⇒ M |= ϕ [f1U /x1 , . . . , fnU /xn ].


I casi degli altri connettivi ψ1 ∨ ψ2 , ψ1 → ψ2 , ψ1 ↔ ψ2 , e il caso del
quantificatore universale, seguono dai precedenti. 
Q
Corollario 3.55. Sia M = i∈I Mi /U un ultraprodotto. Allora
per ogni enunciato σ, si ha
Y
Mi /U |= σ ⇔ {i ∈ I | Mi |= σ} ∈ U.
i∈I

Particolarmente importante è il caso in cui si considerano I-sequenze


hMi | i ∈ Ii dove tutte le L-strutture sono uguali.
Definizione 3.56. Sia U un ultrafiltro sull’insieme I.
QL’ultrapotenza
I
di una L-struttura modulo U è l’ultraprodotto M /U = i∈I M/U della
I-sequenza costante hM | i ∈ Ii.
L’immersione diagonale o immersione canonica d : M → M I/U
è la funzione dove d(m) è la classe di equivalenza hm | i ∈ IiU della
corrispondente I-upla costante.
Proposizione 3.57. L’immersione diagonale di una L-struttura in
una sua ultrapotenza è un’immersione elementare:
d : M  M I/U .
Dim. Segue direttamente dal Teorema di Los. 
Esercizio 3.58. Sia M una L-struttura. Dimostrare che l’immer-
sione diagonale d : M  M I/U in una sua ultrapotenza è una immersio-
ne elementare completa, cioè soddisfa la seguente proprietà: Per ogni
espansione M0 della struttura M ad un linguaggio L0 ⊇ L, esiste una
espansione (M I/U )0 di M I/U ad L0 in modo che d : M0 → (M I/U )0 sia
ancora una immersione elementare.
58 3. IL CALCOLO DEI PREDICATI

8. Teorema di compattezza semantica


Vediamo ora un fondamentale risultato della logica matematica,
la compattezza semantica, che fornisce un potente strumento per la
costruzione di strutture.
Teorema 3.59 (Compattezza semantica). Se una teoria del primo
ordine è finitamente soddisfacibile, allora è soddisfacibile.
Dim. Data la teoria T finitamente soddisfacibile, sia I = Fin(T )
l’insieme dei suoi sottoinsiemi finiti. Per ipotesi, per ogni i ∈ I pos-
siamo prendere un suoQ modello Mi . Vogliamo costruire un opportuno
ultraprodotto M = i∈I Mi /U in modo che M |= T . A questo fine,
prenderemo un ultrafiltro U su I con particolari proprietà. Visto il
Teorema di Los, per ogni enunciato σ ∈ T , l’ultraprodotto M |= σ se
e solo se l’insieme
{i ∈ I | Mi |= σ} ⊇ {i ∈ I | σ ∈ i} ∈ U.
Quindi, la tesi M |= T sarebbe garantita se trovassimo un ultrafiltro
U che include tutti gli insiemi σ b = {i ∈ I | σ ∈ i} al variare di
σ ∈ T . Notiamo che la famiglia G = {b σ | σ ∈ TT } ha la FIP; infatti se
σ1 , . . . , σn ∈ T , banalmente i = {σ1 , . . . , σn } ∈ ns=1 σ
bs . Ma allora un
qualunque ultrafiltro U che estende il filtro generato hGi ha le proprietà
cercate. 
Il Teorema logico di compattezza visto sopra corrisponde in effetti
alla proprietà di compattezza di una topologia naturale sullo spazio
ModL delle L-strutture. Precisamente, per ogni L-enunciato σ, con-
sideriamo Oσ = {M ∈ ModL | M |= σ}. La famiglia di tutti gli Oσ
forma una base di aperti di una topologia τ . Notiamo che tale to-
pologia è zero-dimensionale, perché ogni insieme Oσ è anche chiuso,
visto che banalmente il complementare (Oσ )c = O¬σ . Secondo una
delle definizioni equivalenti, uno spazio topologico è compatto se ogni
famiglia di chiusi con la FIP ha intersezione non vuota. È quindi facile
verificare che il Teorema logico di compattezza afferma precisamente la
compattezza dello spazio topologico (ModL , τ ).
CAPITOLO 4

Il Teorema di completezza

1. Un sistema formale per il calcolo dei predicati


Prima di presentare il nostro sistema formale per il calcolo dei predi-
cati, facciamo alcune considerazioni riguardo la sostituzione di termini
al posto di variabili libere.
Se ϕ(x) è una formula dove x occorre libera, sembra naturale ri-
chiedere che valga l’implicazione ∀x ϕ(x) → ϕ(t/x) per ogni termine
t. Tuttavia, è necessario imporre alcune condizioni sulla scelta di t per
evitare incongruenze. Ad esempio, se ϕ(x) è la formula ∃y (y 6= x),
l’enunciato ∀x ϕ(x) vale in tutte le strutture dove ci sono almeno due
elementi, mentre la formula ϕ(y/x), cioè ∃y (y 6= y) è falsa in tutte le
strutture. Il problema è superato se assumiamo che in t non campaia
nessuna delle variabili che compaiono in ϕ.
Definizione 4.1. S è il sistema dimostrativo del calcolo dei predi-
cati dove:
• Gli assiomi logici AX sono:
– Le istanze di tautologie ;
– Gli assiomi dell’uguaglianza:
(E1) x = x ;
(E2) x = y → y = x ;
(E3) (x = y ∧ y = z) → x = z ;
(E4) Per ogni simbolo di funzione F di arietà n:
(x1 = y1 ∧ . . . ∧ xn = yn ) → (F(x1 , . . . , xn ) =
F(y1 , . . . , yn )) ;
(E5) Per ogni simbolo di relazione R di arietà k:
(x1 = y1 ∧ . . . ∧ xk = yk ) → (R(x1 , . . . , xk ) ↔
R(y1 , . . . , yk )).
– Gli assiomi per la quantificazione:
(Q1) Se x è una variabile libera di ϕ, il seguente è un
assioma:
∀x ϕ(x) → ϕ(x) ;

59
60 4. IL TEOREMA DI COMPLETEZZA

(Q2) Se x è una variabile libera di ϕ e se nel termine t


non appare nessuna delle variabili che appaiono in
ϕ, il seguente è un assioma:
∀x ϕ(x) → ϕ(t/x) ;
(Q3) Se x è una variabile libera di ϕ, il seguente è un
assioma:
∃xϕ(x) ↔ ¬∀x¬ϕ(x).
• Le regole di inferenza sono
– Modus Ponens:
ϕ ϕ→ψ
MP
ψ
– Generalizzazione:
ϕ(x)
G
∀x ϕ(x)
Notiamo che la regola di generalizzazione è una regola di inferenza
unaria.
Analogamente a quanto già osservato riguardo il sistema dimostra-
tivo S0 del calcolo proposizionale, anche nel caso del sistema S si può
derivare l’utile regola deduttiva di congiunzione.

Proposizione 4.2 (Regola di congiunzione C).


ϕ ψ
C
ϕ∧ψ
Dim. Si applica due volte modus ponens a partire dalla seguente
istanza di tautologia:
ϕ → (ψ → (ϕ ∧ ψ)) .

Teorema 4.3. Tutti gli assiomi logici del sistema S sono logica-
mente veri, cioè valgono in ogni L-struttura.
Dim. Come abbiamo già osservato, è immediato verificare che le
istanze di tautologie sono logicamente vere (cf. Esercizio 3.23). Il
simbolo di uguaglianza è interpretato come la vera uguaglianza in
ogni struttura, e quindi è banale che tutti gli assiomi dell’uguaglian-
za (E1), (E2), (E3), (E4), (E5) sono veri in ogni struttura con ogni
assegnamento.
Occupiamoci ora degli assiomi per la quantificazione. La verità
logica degli assiomi (Q3), segue direttamente dalla definizione della
1. UN SISTEMA FORMALE PER IL CALCOLO DEI PREDICATI 61

relazione di soddisfazione. Occupiamoci ora di (Q1). Fissiamo una L-


struttura M ed un assegnamento ρ su M. Se M |= ∀x ϕ(x) [ρ] allora,
per definizione, per ogni m ∈ M vale M |= ϕ(x)[ρ(m/x)]. In parti-
colare, vale M |= ϕ(x) [ρ]. Questo dimostra la tesi M |= ∀x ϕ(x) →
ϕ(x) [ρ]. La validità degli assiomi (Q2) segue dalla seguente proprietà,
già dimostrata nel Corollario 3.25:
• Se nel termine t non appare nessuna delle variabili che appa-
iono in ϕ(x), allora M |= ϕ(t/x) [ρ] ⇔ M |= ϕ(x) [ρ(m/x)],
dove m = tM,ρ .
Infatti, come sopra, se M |= ∀x ϕ(x) [ρ] allora per ogni m ∈ M si ha
M |= ϕ(x)[ρ(m/x)]. In particolare, prendendo m0 = tM,ρ , abbiamo che
M |= ϕ(t/x)[ρ(m0 /x)], e questo mostra che M |= ∀x ϕ(x) → ϕ(t/x) [ρ].


Teorema 4.4. Le regole di inferenza del sistema S preservano la


validità delle formule, cioè per ogni L-struttura M, si ha:
(1) Modus ponens: Se M |= ϕ e M |= ϕ → ψ allora M |= ψ ;
(2) Generalizzazione: Se x è una variabile libera di ϕ e M |= ϕ(x)
allora M |= ∀x ϕ(x).
Dim. (1). Per definizione, M |= ϑ significa M |= ϑ[ρ] per ogni asse-
gnamento ρ. Dunque, fissato un assegnamento ρ, per ipotesi sappiamo
che M |= ϕ[ρ] e M |= ϕ → ψ[ρ]. Quest’ultima proprietà equivale alla
validità dell’implicazione: “Se M |= ϕ[ρ] allora M |= ψ[ρ]”. Possiamo
dunque concludere che M |= ψ[ρ]. Vista l’arbitrarietà di ρ, otteniamo
la tesi M |= ψ.
(2). Sia ρ un assegnamento fissato. Per ogni m ∈ M , anche
ρ(m/x) è un assegnamento, e quindi dall’ipotesi sappiamo che M |=
ϕ(x)[ρ(m/x)]. Questo significa che M |= ∀x ϕ[ρ]. Vista l’arbitrarietà
di ρ, otteniamo la tesi M |= ∀x ϕ(x). 
Definizione 4.5. Una teoria del primo ordine è un qualunque
insieme di enunciati in un linguaggio del primo ordine.
Come conseguenza diretta dei due teoremi precedenti, si ricava il
fondamentale
Teorema 4.6 (di correttezza di S). Sia T una L-teoria e sia ϕ
una L-formula. Se T ` ϕ allora T |= ϕ.
Dim. Sia hψ1 , . . . , ψn i una dimostrazione di T ` ϕ. Per induzione
su i ≤ n, mostriamo che se M è un qualunque modello di T , allora
M |= ψi . Se ψi è un assioma logico allora, per il Teorema 4.3, M |= ψi
62 4. IL TEOREMA DI COMPLETEZZA

per ogni struttura M. Se ψi ∈ T , la tesi è banale. Supponiamo ora


che ψi sia stata ottenuta per modus ponens dalle formule ψj e ψk dove
j, k < i; ad esempio ψk sia la formula ψj → ψi . Per ipotesi induttiva,
M |= ψj e M |= ψj → ψi e allora, per il Teorema 4.4 (1), M |= ψi .
Infine, se ψi segue per generalizzazione da ψj con j < i, allora ψj è
una formula ϕ(x) dove x è libera e ψi è la formula ∀x ϕ(x). Per ipotesi
induttiva, M |= ϕ(x) e dunque, per il Teorema 4.4 (2), concludiamo
che M |= ψi . 

Corollario 4.7. Sia T una L-teoria e sia ϕ una L-formula.


(1) Se M |= T e T ` ϕ allora M |= ϕ ;
(2) Se T è soddisfacibile allora T è coerente.
Dim. (1). Sia M |= T . Se T ` ϕ allora, per la (1), T |= ϕ, cioè ϕ
vale in ogni modello di T . In particolare M |= ϕ.
(2). Sia M |= T . Se per assurdo T fosse contraddittoria, allora
esisterebbe un enunciato τ tale che T ` τ e T ` ¬τ . Ma allora, per la
(1), M |= τ e M |= ¬τ , e questo è impossibile. 
Gli enunciati hanno un ruolo fondamentale nel calcolo dei predicati.
Come abbiamo già visto, la loro validità in una fissata struttura non
dipende dall’assegnamento sulle variabili. Anche nell’ambito sintatti-
co del nostro sistema dimostrativo, non è restrittivo considerare solo
formule senza variabili libere.
Definizione 4.8. Sia ϕ(x1 , . . . , xn ) una formula dove x1 , . . . , xn
sono tutte e sole le sue variabili libere. Si dice chiusura universale
della formula ϕ, e si denota con ϕ, l’enunciato “∀x1 . . . ∀xn ϕ”.
Proposizione 4.9. Sia T una L-teoria. Allora per ogni L-formula
ϕ si ha l’equivalenza:
T ` ϕ ⇐⇒ T ` ϕ.
Dim. Se T ` ϕ allora applicando n volte la regola di generalizza-
zione si ottiene che vale anche T ` ϕ. Viceversa, per ogni 1 ≤ i ≤ n
sia ϕi la formula “∀xi ∀xi+1 . . . ∀xn ϕ”. Notiamo che ϕ1 coicide con la
chiusura universale ϕ; notiamo inoltre che tutte le formule ϕi → ϕi+1
sono assiomi (Q1). Allora, partendo da T ` ϕ ed applicando n volte
modus ponens, si ottiene T ` ϕ. 
Il nostro sistema dimostrativo permette di dimostrare che il simbolo
di uguaglianza si comporta in modo coerente rispetto al significato che
intendiamo attribuirgli.
1. UN SISTEMA FORMALE PER IL CALCOLO DEI PREDICATI 63

Definizione 4.10. Data una L-teoria T , definiamo la relazione ≈T


sull’insieme dei termini chiusi (cioè i termini senza variabili) ponendo:
t ≈ t0 ⇔ T ` t = t0 .
Notiamo che se il linguaggio L non contiene simboli di costante,
allora non esistono termini chiusi.
Proposizione 4.11. Per ogni L-teoria T :
(1) La relazione ≈T è una relazione di equivalenza sull’insieme
degli L-termini chiusi ;
(2) Per ogni simbolo di funzione F di arietà n, se ti ≈T t0i per ogni
i = 1, . . . , n allora F(t1 , . . . , tn ) ≈T F(t01 , . . . , t0n ) ;
(3) Per ogni simbolo di relazione R di arietà k, se tj ≈T t0j per ogni
j = 1, . . . , k, allora T ` R(t1 , . . . , tk ) ⇔ T ` R(t01 , . . . , t0k ).
Dim. (1). Dall’assioma dell’uguaglianza (E1) “x = x” segue per
generalizzazione che ` ∀x(x = x). Allora per modus ponens dall’assio-
ma (Q2) si ottiene che ` t = t, e quindi T ` t = t, per ogni termine
chiuso t. Supponiamo ora che T ` t = t0 . Applicando due volte la
generalizzazione all’assioma (E2) otteniamo ` ∀x∀y (x = y → y = x).
Per l’assioma (Q2), ` ∀x∀y (x = y → y = x) → (t = t0 → t0 = t). Allo-
ra per modus ponens ` t = t0 → t0 = t e, di nuovo per modus ponens da
T ` t = t0 , si conclude che T ` t0 = t. La dimostrazione della proprietà
transitiva è del tutto analoga, a partire dall’assioma dell’uguaglianza
(E3).
(2). Per generalizzazione dall’assioma (E4), si ha che
` ∀x1 . . . ∀xn (x1 = y1 ∧. . .∧xn = yn ) → (F(x1 , . . . , xn ) = F(y1 , . . . , yn ))
e quindi, per modus ponens dall’assioma (Q2),
` (t1 = t01 ∧ . . . ∧ tn = t0n ) → (F(t1 , . . . , tn ) = F(t01 , . . . , t0n )) .
Dall’ipotesi, segue per congiunzione che T ` (t1 = t01 ∧ . . . ∧ tn = t0n ) e
infine, per modus ponens, si ottiene la tesi.
(3). Si procede in modo simile a sopra. Per generalizzazione dall’as-
sioma (E5), si ottiene
` ∀x1 . . . ∀xn (x1 = y1 ∧. . .∧xk = yk ) → (R(x1 , . . . , xk ) ↔ R(y1 , . . . , yk ))
e quindi, per modus ponens dall’assioma (Q2),
` (t1 = t01 ∧ . . . ∧ tn = t0n ) → (R(t1 , . . . , tk ) ↔ R(t01 , . . . , t0k )) .
Dall’ipotesi, segue per ripetute applicazioni della regola di congiunzione
che T ` (t1 = t01 ∧ . . . ∧ tk = t0k ) e quindi, per modus ponens, si ha
64 4. IL TEOREMA DI COMPLETEZZA

T ` R(t1 , . . . , tk ) ↔ R(t01 , . . . , t0k ). La tesi si ottiene ancora applicando


modus ponens a partire dalle istanze di tautologie
(R(t1 , . . . , tk ) ↔ R(t01 , . . . , t0k )) → (R(t1 , . . . , tk ) → R(t01 , . . . , t0k )) ,
(R(t1 , . . . , tk ) ↔ R(t1 , . . . , tk )) → (R(t01 , . . . , t0k ) → R(t1 , . . . , tk )) .

Nel sistema formale che abbiamo introdotto, l’implicazione si com-
porta in modo coerente rispetto alle dimostrazioni.
Teorema 4.12 (di deduzione). Sia T una teoria, σ un enunciato
e ϕ una formula. Allora T, σ ` ϕ se e solo se T ` σ → ϕ.
Dim. Una implicazione è immediata. Infatti, banalmente T, σ ` σ.
Inoltre, dall’ipotesi T ` σ → ϕ segue che anche T, σ ` σ → ϕ, per
monotonia (cf. Proposizione 2.32 (2)). La tesi T, σ ` ϕ si ottiene
infine per modus ponens.
Viceversa, sia hϕ1 , . . . , ϕn = ϕi una dimostrazione di ϕ dalla teoria
T ∪{σ} nel sistema S. Per raggiungere la tesi, mostriamo per induzione
su k ≤ n che T ` σ → ϕk . Notiamo che ϕ1 ∈ T ∪ {σ} ∪ Ax. Se ϕ1 ∈
T ∪ Ax, banalmente T ` ϕ1 ; inoltre ϕ1 → (ϕ1 → σ) ∈ Ax è un assioma
logico perchè è un’istanza di tautologia, e quindi T ` ϕ1 → (σ → ϕ1 ).
Applicando la regola modus ponens si ottiene allora T ` σ → ϕ1 .
Se invece ϕ1 è σ, allora T ` σ → σ perchè σ → σ è un’istanza di
tautologia.
Occupiamoci ora del passo induttivo ϕk con k > 1. Se ϕk ∈ T ∪
{σ} ∪ Ax, procedendo esattamente come sopra si mostra che T ` σ →
ϕk . Supponiamo ora che ϕk sia stata ottenuta dalle formule precedenti
per modus ponens; dunque esistono i, j < k tali che ϕj è la formula
ϕi → ϕk . Per ipotesi induttiva, T ` σ → ϕi e T ` σ → (ϕi → ϕk ).
Adesso notiamo che la formula
(σ → ϕi ) → [ (σ → (ϕi → ϕk )) → (σ → ϕk ) ]
è un’istanza di tautologia, e dunque è dimostrata da T . Applicando
due volte il modus ponens, si ottiene T ` σ → ϕk . Resta da conside-
rare il caso in cui ϕk è ottenuta per generalizzazione da una formula
precedente, cioè quando ϕk è la formula ∀xϕi (x) per qualche i < k.
Per ipotesi induttiva, T ` σ → ϕi (x). Applicando la regola di genera-
lizzazione, si ottiene T ` ∀x(σ → ϕ(x)). Visto che x non è libera in σ,
che è un enunciato, per l’assioma di quantificazione (Q2) abbiamo che
T ` ∀x(σ → ϕ(x)) → (σ → ∀x ϕ(x)). Finalmente, per modus ponens
otteniamo la tesi T ` σ → ∀x ϕ(x). 
2. PRELIMINARI PER IL TEOREMA DI COMPLETEZZA 65

Teorema 4.13 (Dimostrazione per assurdo). Sia T una teoria e


sia σ un enunciato. Allora:
(1) T ∪ {¬σ} è contraddittoria se e solo se T ` σ ;
(2) T ∪ {σ} è contraddittoria se e solo se T ` ¬σ.
Dim. (1). Se T ` σ, allora la teoria T ∪ {¬σ} dimostra sia σ che
¬σ, ed è dunque una teoria contraddittoria. Viceversa, se T ∪ {¬σ}
è contraddittoria, in particolare avremo che T, ¬σ ` σ e quindi, per
il Teorema di deduzione, T ` ¬σ → σ. Adesso, (¬σ → σ) → σ è
un’istanza di tautologia e allora, applicando la regola di modus ponens,
possiamo concludere che T ` σ. (2) si dimostra in modo del tutto
simile. 
Corollario 4.14. Sia T una teoria coerente. Allora per ogni
enunciato σ, almeno una tra le due teorie T ∪{σ} e T ∪{¬σ} è coerente.
Dim. Se T ∪{σ} e T ∪{¬σ} fossero entrambe contraddittorie, allora
allora T ` ¬σ e T ` σ, e quindi T sarebbe contraddittoria. 
Esercizio 4.15 (Procedimento per casi). Siano T una teoria e σ, τ
enunciati. Dimostrare che se T ∪ {σ} ` τ e T ∪ {¬σ} ` τ allora T ` τ .

2. Preliminari per il teorema di completezza


Un passo cruciale verso la dimostrazione del teorema di completezza
di Gödel è il seguente risultato, che ci garantisce la possibilità di poter
estendere ogni teoria coerente fino ad ottenere una teoria completa.
Teorema 4.16 (Lemma di Lindenbaum numerabile). Assumiamo
ZF (senza assioma di scelta). Se L è un linguaggio finito o numera-
bile, allora ogni L-teoria coerente può essere estesa ad una L-teoria
completa.
Dim. Poiché il linguaggio è finito o numerabile, l’insieme di tutti
gli L-enunciati è numerabile, diciamo {σn | n ∈ N}. Data una L-teoria
coerente T , definiamo per ricorsione una sequenza non-decrescente di
teorie coerenti hSn | n ∈ N0 i, a partire dalla base S0 = T . Al passo
induttivo n ≥ 1, poniamo Sn = Sn−1 ∪ {σn } se quella teoria è coerente;
altrimenti, poniamo Sn = Sn−1S . Per induzione, segue subito che ogni
Sn è coerente. La teoria S = n∈N0 Sn è la teoria completa cercata.
Infatti, intanto T = S0 ⊆ S. Inoltre, ogni sottoinsieme finito F ⊂ S
è incluso in un livello Sn , ed è dunque coerente. Per compattezza
sintattica, si ha allora che l’intera teoria S è coerente. Resta da vedere
che S è coerente massimale, cioè che se τ è un enunciato e S ∪ {τ } è
66 4. IL TEOREMA DI COMPLETEZZA

coerente, allora τ ∈ S. Sia k tale che τ è l’enunciato σk ; la coerenza


di S ∪ {σk } implica banalmente la coerenza di Sk−1 ∪ {σk }, e quindi
σk ∈ Sk−1 ∪ {σk } = Sk ⊆ S. 
Ricordiamo la seguente proprietà:
• Lemma dell’ultrafiltro (UL): Ogni famiglia con la FIP può
essere estesa ad un ultrafiltro.

Teorema 4.17 (Lemma di Lindenbaum). Assumiamo ZF + UL.


Ogni teoria coerente può essere estesa ad una teoria completa.
Dim. Data una L-teoria coerente T , sia
T = {S ⊇ T | S è una L-teoria coerente},
e per ogni L-enunciato τ , sia
Xτ = {S ∈ T | τ ∈ S o ¬τ ∈ S}.
La famiglia {Xτ }τ ha la PIF. Infatti, siano τ1 , . . . , τn enunciati. Indut-
tivamente, poniamo S0 = T ; e per 0 ≤ i < n, poniamo Si+1 = Si ∪ {τi }
se è una teoria coerente, altrimenti Si+1 = S ∪ {¬τi }. Applicando
il Corollario 4.14, è facile verificare per induzione
Tn che ogni Si ⊇ T è
coerente. Inoltre, per costruzione, Sn ∈ i=1 Xτi . Dunque la fami-
glia {Xτ | τ L-enunciato} ha la FIP, e per UL, possiamo prendere un
ultrafiltro U su T che contiene tutti gli insiemi Xτ . Definiamo ora
Xτ0 = {S ∈ T | τ ∈ S} e Xτ00 = {S ∈ T | ¬τ ∈ S}.
Finalmente poniamo T ∗ = {τ | Xτ0 ∈ U}. Se τ ∈ T , banalmente
Xτ00 = ∅ e quindi Xτ0 = Xτ ∈ U e τ ∈ T ∗ . Resta da verificare che T ∗
è completa. A questo scopo, basta notare che per ogni enunciato τ , si
ha Xτ = Xτ0 ∪ Xτ00 ∈ U, e quindi valgono le equivalenze:
/ T ∗ ⇔ Xτ0 ∈
τ∈ / U ⇔ Xτ00 = X¬τ
0
∈ U ⇔ ¬τ ∈ T ∗ .

Un tipico modo di procedere quando si cerca di dimostrare che
una certa proprietà vale per tutti gli oggetti in esame (ad esempio per
tutti i numeri reali), è quello di considerare un oggetto “generico” (ad
esempio un numero reale non meglio specificato), e verificare che esso
soddisfa quella proprietà. Il seguente risultato può essere visto come
una formalizzazione di questo tipo di procedura.

Proposizione 4.18. Sia T una L-teoria e sia c ∈ / L un nuovo


simbolo di costante. Se hψ1 , . . . , ψn i è una dimostrazione di T ` ϕ
nel linguaggio L ∪ {c} e y è una variabile che non compare in alcuna
2. PRELIMINARI PER IL TEOREMA DI COMPLETEZZA 67

delle formule ψi , allora hψ1 (y/c), . . . , ψn (y/c)i è una dimostrazione di


T ` ϕ(y/c) nel linguaggio L.
Dim. Vediamo intanto che se ψ è un assioma logico nel linguaggio
L ∪ {c} dove non compare y, allora ψi (y/c) è un assioma logico nel lin-
guaggio L. Se ψ è un’istanza di tautologia A(ϑ1 /X1 , . . . , ϑk /Xk ), dove
A(X1 , . . . , Xk ) è una tautologia del calcolo proposizionale e ϑ1 , . . . , ϑk
sono (L ∪ {c})-formule, allora ϕ(y/x) è un’istanza di tautologia nel
linguaggio L, perché coincide con la formula A(ϑ01 /X1 , . . . , ϑ0k /Xk ) do-
ve ϑ0i = ϑi (y/c) sono L-formule. Se ψ è un assioma dell’uguaglianza,
allora il simbolo c non compare in ψ, e banalmente ψ(y/c) coincide con
ψ. Se ψ è un assioma (Q1) della forma ∀x ϑ(x) → ϑ(x) allora ψ(y/c) è
la formula ∀x ϑ0 (x) → ϑ0 (x) dove ϑ0 è la L-formula ϑ(y/c), ed è quindi
un assioma (Q2) nel linguaggio L. Analogamente, si verifica che se ψ
è un assioma (Q3), allora ψ(y/c) è un assioma (Q3) nel linguaggio L.
Se ψ è un’assioma (Q2), la dimostrazione richiede maggiore attenzione.
Supponiamo dunque che ψ sia della forma ∀x ϑ(x) → ϑ(t/x) dove t è
un (L ∪ {c})-termine le cui variabili non compaiono in ϑ. Sia adesso
ϑ0 la formula ϑ(y/c). Visto che y non appare in ψ, è facile controllare
che ψ(y/c) coincide con la L-formula ∀x ϑ0 (x) → ϑ0 (t0 /x), dove t0 è
l’L-termine t(y/c); dunque ψ(y/c) è un assioma (Q2) nel linguaggio L.
Adesso mostriamo per induzione su i ≤ n che hψ1 (y/c), . . . , ψi (y/c)i
è una dimostrazione di T ` ψi (y/c) nel linguaggio L. Se ψ1 ∈ T allora
c non appare in ψ1 , quindi ψ1 (y/c) coincide con ψ1 e la tesi segue ba-
nalmente. Se ψ1 è un assioma logico nel linguaggio L ∪ {c} allora, per
quanto visto sopra, ψ1 (y/c) è un assioma logico nel linguaggio L, ed
anche in questo caso la tesi segue. Consideriamo ora il passo induttivo
ψj . Se ψj ∈ T o è un assioma logico, si procede come sopra. Suppo-
niamo ora che ψj sia stata ottenuta per modus ponens dalle formule
ψk e ψh dove k, h < j; ad esempio ψh sia la formula ψk → ψj . Notia-
mo che ψh (y/c) coincide con la formula ψk (y/c) → ψj (y/c), e dunque
ψj (y/c) segue per modus ponens dalle formule ψk (y/c) e ψh (y/c). In-
fine, supponiamo che ψj segua per generalizzazione da ψk con k < i.
Allora ψk è una formula ϕ(x) dove x è libera e ψj è la formula ∀x ϕ(x).
Notiamo che ψk (y/c) è la formula ϕ(y/c) in cui x appare libera, e
ψj (y/c) è la formula ∀x ϕ(y/c); concludiamo quindi che ψj (y/c) segue
per generalizzazione da ψk (y/c). 
Come corollario otteniamo il seguente risultato, che sarà di cruciale
importanza per la dimostrazione del Teorema di completezza.
Teorema 4.19 (della costante generica). Sia S una L-teoria, ϕ
una L-formula dove x è l’unica variabile libera, e c ∈
/ L un nuovo
68 4. IL TEOREMA DI COMPLETEZZA

simbolo di costante. Allora S ` ϕ(c/x) nel linguaggio L ∪ {c} se e solo


se S ` ∀x ϕ(x) nel linguaggio L.
Dim. Supponiamo prima S ` ∀x ϕ(x) nel linguaggio L. La formula
∀x ϕ(x) → ϕ(c/x) è un assioma logico (Q2) nel linguaggio L ∪ {c}. Per
modus ponens, otteniamo allora che S ` ϕ(c/x) nel linguaggio L ∪ {c}.
Viceversa, prendiamo una dimostrazione hψ1 , . . . , ψn i di S ` ϕ(c/x)
nel linguaggio L ∪ {c}, e prendiamo una variabile y che non compa-
re in alcuna delle formule ψi . Allora, per la proposizione preceden-
te, hψ1 (y/c), . . . , ψn (y/c)i è una dimostrazione di S ` ϕ(c/x)(y/c)
nel linguaggio L. Visto che c non appare in ϕ, la doppia sostituzio-
ne ϕ(c/x)(y/c) coincide con ϕ(y/x). Per generalizzazione segue che
S ` ∀y ϕ(y/x). Chiaramente la variabile x non appare in ϕ(y/x), e
allora per (Q2) e modus ponens, si ottiene che S ` ϕ(y/x)(x/y). Ma
ϕ(y/x)(x/y) coincide con ϕ e allora, di nuovo per generalizzazione, si
conclude che S ` ∀x ϕ(x). 
Particolare importanza avranno le teorie dove questo procedimento
della “costante generica” è – in un certo senso – incorporato al proprio
interno.

Definizione 4.20. Sia ϕ(x) una formula con un’unica variabile


libera. Un simbolo di costante c si dice costante generica per ϕ nella
teoria T se l’enunciato ϕ(c/x) → ∀x ϕ(x) appartiene a T .
Definizione 4.21. Una teoria H è una teoria di Henkin se ogni
formula ϕ(x) con un’unica variabile libera ha una costante generica in
H.
Notiamo che se H è di Henkin e H ⊆ H 0 , allora anche H 0 è di
Henkin.
Teorema 4.22. Assumiamo ZF (senza assioma di scelta). Ogni
teoria coerente è inclusa in una teoria coerente di Henkin.
Dim. Sia T una L-teoria coerente. Definiamo per ricorsione una
sequenza crescente di linguaggi Ln e di Ln -teorie Hn . Come base,
poniamo H1 = T nel linguaggio L1 = L. Al passo induttivo, definiamo
Ln+1 come il linguaggio ottenuto aggiungendo ad Ln un nuovo simbolo
di costante cψ per ogni Ln -formula ψ; e poniamo
Hn+1 = Hn ∪ {ϕ(cϕ /x) → ∀xϕ(x) | ϕ Ln -formula con VL(ϕ) = {x}} .
Per costruzione, Hn+1 è una Ln+1 -teoria dove ogni Ln -formulaScon un’u-
nica variabile libera ha una costante generica. Sia L0 = n∈N Ln il
linguaggio contenente, oltre ai simboli di L, tutti i nuovi simboli di
3. IL TEOREMA DI COMPLETEZZA DI GÖDEL 69

costante introdotti. Vogliamo mostrare che la L0 -teoria H = n∈N Hn


S
ha le proprietà richieste. Intanto H ⊃ T è una teoria di Henkin; infatti
ogni L0 -formula con un’unica variabile libera è in realtà una Ln -formula
per qualche n, e quindi ha una costante generica in Hn+1 ⊆ H.
Resta da verificare che la teoria H è coerente. Visto che ogni sotto-
teoria finita di H è inclusa in un Hn , per il teorema di compattezza sin-
tattico basterà verificare che tutti i livelli Hn sono coerenti. Procediamo
per induzione. La base è ovvia, perché H1 = T è coerente per ipotesi.
Per il passo induttivo, di nuovo per il teorema di compattezza sintatti-
co, basterà mostrare che ogni sottoinsieme finito Γ ⊂ Hn+1 è coerente.
Notiamo che esistono un numero finito di Ln -formule ϕ1 (x), . . . , ϕk (x)
aventi x come unica variabile libera, tali che
Γ ⊆ Hn ∪ {ϕi (cϕi /x) → ∀xϕi (x) | i = 1, . . . , k} .
Senza perdita di generalità possiamo supporre che le formule ϕi ∈ / Hm
per m < n, e quindi che i simboli di costante cϕi ∈ / Ln . Visto che
Hn è coerente per ipotesi induttiva, la tesi segue applicando k volte la
seguente proprietà:
• Se S è una L-teoria coerente, ϕ(x) è una L-formula avente
x come unica variabile libera, e c ∈
/ L è un nuovo simbolo di
costante, allora anche S ∪ {ϕ(c/x) → ∀xϕ(x)} è una teoria
coerente.
Supponiamo per assurdo che la teoria S ∪ {ϕ(c/x) → ∀xϕ(x)} sia
contraddittoria. Allora, per il Teorema di deduzione, S ` ¬(ϕ(c/x) →
∀xϕ(x)). Visto che ¬(P → Q) → P e ¬(P → Q) → ¬Q sono tau-
tologie, per modus ponens si ottiene che S ` ϕ(c/x) e S ` ¬∀xϕ(x).
Adesso, per il Lemma della costante generica, da S ` ϕ(c/x) segue che
S ` ∀xϕ(x), e quindi si ottiene l’assurdo che S è contraddittoria. 

3. Il Teorema di completezza di Gödel


Il fondamentale risultato della completezza del calcolo dei predicati
del primo ordine, seguirà dall’esistenza di modelli per ogni teoria di
henkin.
Teorema 4.23. Assumiamo ZF (senza assioma di scelta). Ogni
L-teoria completa di Henkin H ha un modello canonico M |= H dove
|M | ≤ max{|L|, ℵ0 }.
Dim. Consideriamo l’insieme CT(L) degli L-termini chiusi, cioè dei
termini t senza variabili. Visto che H è una teoria di Henkin, devono
70 4. IL TEOREMA DI COMPLETEZZA

esistere simboli di costante in L, e quindi CT(L) 6= ∅. Consideriamo


ora la seguente relazione su CT(L):
• t ≈ t0 ⇔ (t = t0 ) ∈ H (o, equivalentemente, H ` t = t0 ).
Usando gli assiomi logici dell’uguaglianza (E1), (E2), (E3), si dimo-
stra che ≈ è una relazione di equivalenza (vedi Esercizio 4.11). Come
universo della L-struttura M prendiamo l’insieme quoziente:
M = CT(L)/ ≈ .
Denotiamo con t = {s | s ≈ t} la classe di ≈-equivalenza del termine
chiuso t. Notiamo che M , in quanto quoziente di un insieme di stringhe
finite di simboli in L, ha cardinalità |M | ≤ max{|L|, ℵ0 }.
Per interpretare i simboli del linguaggio, procediamo nel modo più
ovvio, facendo in modo che tutti i termini chiusi siano interpretati in
M dalla loro classe di equivalenza. Precisamente:
• Ogni simbolo di costante c ∈ L è interpretato dalla corrispon-
dente classe di equivalenza c.
• Ogni simbolo di funzione F ∈ L di arietà n è interpretato
come la funzione FM : M n → M dove, per tutti i termini
chiusi t1 , . . . , tn ,
FM (t1 , . . . , tn ) = F(t1 , . . . , tn ).
• Ogni simbolo di relazione R ∈ L di arietà k è interpretato
ponendo per tutti i termini chiusi t1 , . . . , tk :
(t1 , . . . , tk ) ∈ RM ⇔ R(t1 , . . . , tk ) ∈ H.
Le definizioni date di FM e RM sono ben poste, perché non dipen-
dono dai rappresentanti scelti nelle classi di equivalenza. Infatti, dagli
assiomi dell’uguaglianza segue che se ti ≈T t0i per i = 1, . . . , n, allora
f (t1 , . . . , tn ) ≈T f (t01 , . . . , fn0 ). Inoltre, se tj ≈T t0j per i = 1, . . . , k,
allora H ` R(t1 , . . . , tk ) ⇔ H ` R(t01 , . . . , t0k ) (vedi Proposizione 4.11).
Infine, ricordiamo che la completezza di H garantisce H ` σ ⇔ σ ∈ H
per ogni enunciato σ.
Se ρ : Var → CT(L), denotiamo con ρ : Var → M l’assegnamento
delle variabili su M che si ottiene passando alle classi di equivalenza,
cioè ρ(x) = ρ(x). Introduciamo una notazione che semplificherà un
po’ la scrittura. Per ogni termine s = s(x1 , . . . , xk ) le cui variabili
libere sono x1 , . . . , xk , e per ogni ρ : Var → CT(L), denotiamo con sρ
il seguente termine chiuso:
sρ : s(t1 /x1 , . . . , tk /xk ) dove ti = ρ(xi ).
3. IL TEOREMA DI COMPLETEZZA DI GÖDEL 71

Analogamente, se ψ(x1 , . . . , xk ) è una formula le cui variabili libere


sono x1 , . . . , xk , se t1 , . . . , tk sono termini chiusi, e se ρ : Var → CT(L),
denotiamo con ψρ il seguente enunciato:
ψρ : ψ(t1 /x1 , . . . , tk /xk ) dove ti = ρ(xi ).
La tesi segue dalle due seguenti proprietà:
(a) Per ogni termine s, si ha sM,ρ = sρ ;
(b) Per ogni formula ψ, si ha M |= ψ [ ρ ] ⇐⇒ ψρ ∈ H.
Infatti, ogni assegnamento su M è della forma ρ per qualche funzio-
ne ρ : Var → CT(L). Inoltre, se σ è un enunciato, banalmente σρ = σ,
e quindi da (b) si conclude che M |= τ per ogni τ ∈ H.
(a). Procediamo per induzione sulla costruzione del termine s. Se
s è una variabile x, e ρ(x) = t, allora sρ è il termine t, e quindi sM,ρ =
ρ(x) = t = sρ . Se s è un simbolo di costante c, allora sρ coincide con c,
e cM,ρ = cM = c = sρ . Infine, se s è un termine del tipo F(u1 , . . . , un )
dove F è un simbolo di funzione di arietà n e gli ui sono termini, allora:
F(u1 , . . . , un )M,ρ = FM (u1 M,ρ , . . . , un M,ρ ) = (per ipotesi induttiva)
 
= FM (u1 )ρ , . . . , (un )ρ = F((u1 )ρ , . . . , (un )ρ ) = F(u1 , . . . , un )ρ .
(b). Procediamo per induzione sulla costruzione di ψ, a partire
dalle formule atomiche. Supponiamo prima che ψ sia una identità tra
due termini “s = u”. In questo caso:
M |= s = u [ ρ ] ⇔ sM,ρ = uM,ρ ⇔ (per la (a))
sρ = uρ ⇔ H ` sρ = tρ ⇔ (s = t)ρ ∈ H.
Sia ora ψ = R(s1 , . . . , sk ), dove R è un simbolo di relazione di arietà
k e gli sj sono termini. Allora:
M |= R(s1 , . . . , sn )[ ρ ] ⇔ (s1 M,ρ , . . . , sn M,ρ ) ∈ RM ⇔ (per la (a))
 
(s1 )ρ , . . . , (sn )ρ ∈ RM ⇔ R((s1 )ρ , . . . , (sn )ρ ) ∈ H ,
cioe, R(s1 , . . . , sn )ρ ∈ H. Se ψ è della forma ¬ ϕ allora, usando l’ipotesi
induttiva e la completezza di H,
M |= ¬ ϕ [ ρ ] ⇔ M 6|= ϕ [ ρ ] ⇔ ϕρ ∈
/ H ⇔ ¬ (ϕρ ) ∈ H ,
cioè (¬ ϕ)ρ ∈ H. Riguardo la congiunzione, se ψ è della forma ϕ ∧ ϑ
allora, usando l’ipotesi induttiva e la completezza di H,
M 6|= (ϕ ∧ ϑ) [ ρ ] ⇔ M |= ϕ [ ρ ] e M |= ϑ [ ρ ] ⇔
ϕρ ∈ H e ϑρ ∈ H ⇔ (ϕρ ∧ ϑρ ) ∈ H , cioè (ϕ ∧ ϑ)ρ ∈ H.
72 4. IL TEOREMA DI COMPLETEZZA

Resta da verificare il caso della quantificazione, dove sarà cruciale


l’ipotesi che H è una teoria di Henkin. Sia ψ della forma ∀x ϕ dove
VL(ϕ) = {x, x1 , . . . , xn }. Notiamo che (∀x ϕ)ρ = ∀x ϑ(x), dove ϑ(x) è
la formula ϕ(x, ρ(x1 )/x1 , . . . , ρ(xn )/xn ) che ha x come unica variabile
libera. Notiamo inoltre che per ogni termine chiuso t, la formula ϑ(t/x)
coincide con ϕρ(t/y) , dove ρ(t/x) : Var → CT(L) è la funzione che
coincide con ρ tranne che sulla variabile x, cui assegna il valore t. Visto
che H è di Henkin, esiste un simbolo di costante generica cϑ per ϑ(x)
in H, cioè la formula ϑ(cϑ /x) → ∀x ϑ(x) appartiene a H. Applicando
modus ponens e l’assioma (Q2), per la proprietà di completezza di H
abbiamo allora che
ϑ(cϑ /x) ∈ H ⇒ ∀x ϑ(x) ∈ H, cioè (∀x ϕ)ρ ∈ H ⇒
ϑ(t/x) ∈ H per ogni t ∈ CT(L), cioè ϕρ(t/x) ∈ H per ogni t ∈ CL(L).
La seguente serie di implicazioni conclude la dimostrazione:
M |= ∀x ϕ [ ρ ] ⇔ M |= ϕ [ ρ(t/x)] per ogni t ∈ CT(L) ⇒
M |= ϕ [ ρ(cϑ /x)] ⇔ (per ip. ind.) ϕρ(cϑ /x) ∈ H, cioè ϑ(cϑ /x) ∈ H ⇒
(∀x ϕ)ρ ∈ H ⇒ ϕρ(t/x) ∈ H per ogni t ∈ CL(L) ⇔ (per ip. ind.)
M |= ϕ [ ρ(t/x) ] per ogni t ∈ CT(L) ⇔ M |= ∀x ϕ [ ρ ].


Possiamo finalmente formulare il teorema fondamentale del calcolo


dei predicati del primo ordine.

Teorema 4.24 (Completezza di Gödel – caso numerabile). Assu-


miamo ZF (senza assioma di scelta). Sia L un linguaggio del primo
ordine finito o numerabile. Allora:
(1) Ogni L-teoria coerente ha un modello ;
(2) Per ogni L-teoria T e per ogni L-formula ϕ si ha l’equivalenza
T ` ϕ ⇔ T |= σ.
Dim. (1). Data una L-teoria coerente T , grazie al Teorema 4.22
possiamo estenderla ad una L0 -teoria di Henkin H 0 ⊇ T , per un op-
portuno linguaggio L0 ⊇ L. Per il teorema di Lindenbaum numerabile
(Teorema 4.16), possiamo estendere poi H 0 ad una L0 -teoria completa
H ⊇ H 0 . Notiamo che anche H 0 è una L0 -teoria di Henkin. Infine,
grazie al Teorema 4.23, possiamo trovare un modello N |= H. Se M è
la L-struttura ottenuta restringendo la L0 -struttura N al linguaggio L,
chiaramente M |= T .
3. IL TEOREMA DI COMPLETEZZA DI GÖDEL 73

(2) segue direttamente da (1) e dal Teorema 4.13. Valgono infatti


le seguenti equivalenze: T 6` σ se e solo se T ∪ {¬σ} è coerente, se e
solo se esiste un modello M |= T ∪ {¬σ}, se e solo se T 6|= σ. 
Il caso generale per linguaggi di cardinalità arbitraria richiede UL
(Ultrafilter Lemma).

Teorema 4.25 (Completezza – Gödel). Assumiamo ZF+UL. Al-


lora:
(1) Ogni teoria coerente ha un modello ;
(2) Per ogni L-teoria T e per ogni L-formula ϕ si ha l’equivalenza
T ` ϕ ⇔ T |= σ.
Dim. Si dimostra esattamente come il teorema precedente, usando
però la forma generale del Teorema di Lindenbaum (Teorema 4.17),
che richiede UL. 
I teoremi fondamentali del calcolo dei predicati, cioè completezza e
compattezza semantica per linguaggi arbitrari, possono essere visti co-
me forme deboli dell’assioma di scelta; hanno infatti hanno esattamente
la stessa forza dell’Ultrafilter Lemma.

Teorema 4.26. Assumiamo ZF (senza assioma di scelta). Sono


proprietà equivalenti:
(1) Teorema di complezza: Ogni teoria coerente della logica del
primo ordine ha un modello ;
(2) Teorema di compattezza semantico: Ogni teoria della logica
del primo ordine finitamente soddisfacibile è soddisfacibile ;
(3) UL (Ultrafilter Lemma): Ogni filtro si estende ad un ultrafiltro.
Dim. (1) ⇒ (2). Sia T una teoria finitamente soddisfacibile. Ogni
suo sottoinsieme finito è coerente perché ha un modello. Ma allora, per
la compattezza sintattica, l’intera teoria T è coerente, e dunque l’ipotesi
garantisce l’esistenza di un suo modello M |= T .
(2) ⇒ (3). Data una famiglia G di sottoinsiemi di I con la FIP,
consideriamo il linguaggio L = {A(x) | A ⊆ I} che contiene un simbolo
di relazione di arietà 1 per ogni sottoinsieme di I. Sia M la L-struttura
avente I come universo, e dove i simboli A sono interpretati nel modo
naturale, cioè i ∈ AM ⇔ i ∈ A. Introduciamo ora un nuovo simbolo di
costante c e consideriamo la (L∪{c})-teoria T che consiste dei seguenti
enunciati:
(I) “¬Ø(c)” ;
74 4. IL TEOREMA DI COMPLETEZZA

(II) “A(c) → B(c)” ogni volta che A ⊆ B ;


(III) “(A(c) ∧ B(c)) → C(c)” ogni volta che A ∩ B = C ;
(IV) “¬A(c) ↔ Ac (c)” per ogni A ⊆ I ;
(V) “A(c)” per ogni A ∈ G.
Se T0 ⊂ T è finito, allora soltanto un numero finito di simboli
A1 , . . . , An appaiono negli enunciati di T . Espandiamo la L-struttura
M al linguaggio L ∪ {c}, interpretando il nuovo simbolo di costante c
come un elemento che appartiene a tutti quegli Aj che appartengono
a G (nel caso in cui nessun Aj appartenesse a G, prendiamo i ∈ I
qualunque). Notiamo che questo è possibile perché G ha la FIP. È
facile verificare che questa L ∪ {c}-struttura è un modello di T0 . Per
compattezza semantica, esiste allora un modello N |= T dell’intera
teoria T . Verifichiamo che la famiglia
U = {A ⊆ I | N |= A(c)}
è l’ultrafiltro cercato. L’insieme vuoto ∅ ∈/ U perché N soddisfa (I).
La validità degli enunciati (II) e (III) in N garantisce che la famiglia
U è chiusa rispettivamente per soprainsieme e per intersezione. Dalla
validità degli assiomi (IV) in N si ottiene che A ∈ / U ⇔ Ac ∈ U.
Dunque U è un ultrafiltro. Infine G ⊆ U perchè N soddisfa gli enunciati
(V).
(3) ⇒ (1). Come abbiamo visto sopra, il Teorema di completezza
si dimostra nella teoria ZF+UL. 
Notiamo che la dimostrazione (1) ⇒ (2) di sopra fornisce una di-
mostrazione alternativa al Teorema di compattezza semantico, diversa
da quella già vista con l’uso di ultraprodotti (vedi Teorema 3.59).
UL è in effetti una forma debole dell’assioma di scelta AC, come
mostrato dai seguenti risultati:
• ZF + AC ` UL (vedi Teorema 3.49).
• Esistono modelli M |= ZF dove non esistono ultrafiltri non-
principali su N (Feferman 1965). Dunque, ZF 6` UL.
• Esistono modelli M |= ZF + UL dove non vale l’assioma di
scelta (Halpern-Levy 1971). Dunque, ZF + UL 6` AC.

Potrebbero piacerti anche