Logica Ilogica.dipmat.unisa.it/lucaspada/wp-content/uploads/... · LOGICA I serafina lapenta e luca...

157
LOGICA I serafina lapenta e luca spada per il corso di laurea triennale in Matematica Ottobre 2018 – version 4.0 [ 22 ottobre 2018 at 12:45 Logica I version 4.0 Preliminary version]

Transcript of Logica Ilogica.dipmat.unisa.it/lucaspada/wp-content/uploads/... · LOGICA I serafina lapenta e luca...

L O G I C A I

serafina lapenta e luca spada

per il corso di laurea triennale in Matematica

Ottobre 2018 – version 4.0

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

Modifiche nella versione 4.0: (22 ottobre 2018).

• Corretti alcuni refusi nel testo.

• Riorganizzato l’inizio del capitolo sulle algebre di Boole.

Modifiche nella versione 3.0: (1 agosto 2018).

• Migliorata la dimostrazione dell’implicazione (4) ⇒ (1) nel proposizione 3.100

(Si ringrazia Marco D’Angelo per la segnalazione).

• Modificata la dimostrazione del lemma 2.40, perché usava un lemma (ora ri-mosso) la cui dimostrazione era sbagliata (Si ringrazia Antonio Messano per lasegnalazione).

• Aggiunto un esempio nel passo induttivo della dimostrazione del teorema 3.96.

• Sistemate alcune righe delle dimostrazioni dei teorema 3.96 in cui si parlava diomomorfismo da Free in A invece che di interpretazione.

• Modificato “per ogni” in “esiste” nel punto voce 7 della definizione 4.24.

• Corretti vari refusi nel testo.

• Corretta la dimostrazione del teorema dell’ultrafiltro, Teorema 3.84 e Corolla-rio 3.85.

Modifiche nella versione 2.0: (16 gennaio 2018).

• Cambiata la definizione di valutazione a pagina 8 per rispecchiare quanto dettoa lezione.

• Aggiunta qualche precisazione (osservazione 2.3) sulle differenze tra linguaggioe meta-linguaggio.

• Aggiunta la definizione di complessità di una formula proposizionale: definizio-ne 2.35.

• Aggiunta un’ipotesi strettamente necessaria alla eq. (6) del lemma 4.29 (Graziead Antonio Messano per la segnalazione).

• Aggiunto il teorema di completezza funzionale, Teorema 2.17, e quello di formanormale, Teorema 2.20.

• Aggiunta osservazione 3.78.

• Aggiunta la dimostrazione del Teorema 3.92.

• La sezione 3.2.2 è stata leggermente riorganizzata e alcune dimostrazioni legger-mente modificate, in particolare quella del lemma 3.63. Un risultato, lemma 3.55,è stato spostato alla sezione precedemte, relativa a kernel e omomorfismi.

• Aggiunta l’ipotesi di U filtro proprio nel lemma 3.81.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

• Modificata la dimostrazione del teorema 3.103.

• Aggiunta la dimostrazione, con l’uso degli ultraprodotti, del teorema di compat-tezza della logica del primo ordine.

• Corretti alcuni errori di battitura (Grazie a Michele Victor Esposito).

iii

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

Via via che la logica si perfeziona, diminuisce il numero delle cose in cui si crede.

— Bertrand Russell

Nota per il lettore. Queste dispense sono state scritte molto frettolosamente dagliautori mentre tenevano i corsi di Logica Matematica per la laurea triennale in Mate-matica presso l’Università di Salerno e Logica per la laurea triennale e magistrale inMatematica presso l’Università della Basilicata. Sono state scritte perché gli autori nonsono riusciti a trovare nessun libro che trattasse tutti gli argomenti presentati nei corsi(ad esempio l’intersezione dei libri che parlano approfonditamente di algebre di Boolecon quelli che discutono la deduzione naturale sembrerebbe essere vuota).

Nella versione preliminare queste note contengono degli estratti da [12]. Nelle ver-sioni future tali parti verranno eliminate.

Queste note contengono sicuramente una moltitudine di errori e omissioni. Chiun-que dovesse notare errori, imprecisioni o volesse lasciare semplicemente dei commentipuò scrivere a [email protected].

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

PA N O R A M I C A D E L C O R S O

Questo corso è pensato come introduzione alla Logica Matematica e quindi allo studiodel linguaggio e del ragionamento formale. Gli obiettivi del corso sono:

1. il raggiungimento di una consapevolezza nel riconoscimento e l’uso delle regolelogiche;

2. capacità di formalizzazione di informazioni in un linguaggio formale;

3. sviluppo e verifica di ragionamenti corretti;

4. conoscenza del linguaggio della logica proposizionale e del prim’ordine e deiloro principali algoritmi deduttivi;

5. conoscenza delle principali tecniche dimostrative in logica.

Gli argomenti principali del corso sono:

1. la sintassi della logica proposizionale,

2. la semantica della logica proposizionale,

3. algoritmi per riconoscere le tautologie proposizionali,

4. la completezza della logica proposizionale,

5. le algebre di Boole,

6. la completezza algebrica della logica proposizionale,

7. la sintassi della logica del primo ordine,

8. la semantica della logica del primo ordine,

9. algoritmi per riconoscere le tautologie del primo ordine,

10. la completezza della logica del primo ordine.

11. la compattezza della logica del primo ordine.

12. alcuni teoremi limitativi.

vii

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

I N D I C E

1 introduzione 1

2 sintassi e semantica della logica proposizionale . 5

2.1 Proposizioni. 5

2.2 Il linguaggio formale 5

2.3 Il linguaggio della logica proposizionale 6

2.4 La semantica della logica proposizionale 8

2.5 Il teorema di compattezza per la logica proposizionale 17

2.5.1 Applicazioni della compattezza 18

2.6 Deduzione naturale 20

2.6.1 Adeguatezza e completezza della deduzione naturale 26

2.7 Il calcolo dei tableaux. 28

3 algebre di boole . 35

3.1 Ordini parziali e reticolari 35

3.2 Algebre di Boole 41

3.2.1 Omomorfismi, kernel e quozienti 45

3.2.2 Filtri e ideali 49

3.2.3 Sottalgebre 53

3.2.4 Ultrafiltri 54

3.2.5 Il teorema di rappresentazione di Stone 57

3.2.6 Algebre libere 58

3.3 Completezza algebrica 60

3.4 Complementi: algebre di Boole atomiche 62

4 sintassi e semantica della logica del primo ordine . 65

4.1 Il linguaggio del Calcolo dei Predicati 66

4.2 Semantica 71

4.3 Validità, Soddisfacibilità e Modelli 74

4.4 La deduzione naturale per la logica del prim’ordine. 79

4.5 Il teorema di completezza. 88

4.6 I teoremi di Löwenheim-Skolem e alcune loro applicazioni. 97

4.7 Ultraprodotti e compattezza della logica del prim’ordine. 104

4.8 Il metodo dei tableaux per la logica del prim’ordine. 109

4.8.1 Regole del I tipo. 109

4.8.2 Regole del II tipo. 110

a teoria degli insiemi 119

a.1 Cenni di Teoria degli Insiemi 119

a.2 La teoria ZF 120

a.3 Gli ordinali 125

a.4 Equivalenti dell’Assioma di Scelta 132

a.5 I cardinali 134

a.6 Operazioni su cardinali 137

a.7 La biezione canonica da On2 a On 137

ix

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

1I N T R O D U Z I O N E

Nella vita siamo abituati a gestire quotidianamente una notevole quantità di infor-mazione: memorizziamo, rielaboriamo, verifichiamo, confutiamo, facciamo ipotesi etraiamo conclusioni. Seppure questi processi si rivelino la maggior parte delle voltecorretti, succede che in alcuni casi commettiamo degli errori di valutazione o sbaglia-mo a trarre delle conclusioni. Ciò nondimeno il nostro cervello è una potentissimamacchina tutt’ora inimitabile da qualsiasi computer.

Nel nostro ragionamento utilizziamo diverse tecniche che trovano base in diverseesperienze riscontrabili nella vita. Ad esempio escludiamo automaticamente ipotesiche non siano abbastanza verosimili: raramente si accetterebbe come ipotesi che il “so-le non sorga domani mattina”. D’altronde questo evento, seppure con una probabilitàbassissima, potrebbe in qualche modo avvenire; quindi una parte del nostro ragiona-mento è di tipo probabilistico. Allo stesso modo siamo capaci, osservando un evento,di risalirne alle cause: sentendo delle gocce d’acqua in testa, penseremo che sta pioven-do; seppure non sia questa l’unica ipotesi plausibile. Un tale ragionamento si chiamaabduttivo. Ancora, siamo capaci di estrarre delle regole universali da casi particolari:vedendo una fila di uomini ed una di donne davanti a dei bagni ci metteremo in codasecondo una regola che in effetti abbiamo creato noi al momento e che potrebbe ancheessere sbagliata; un tale ragionamento si chiama induttivo.

Infine possediamo una tecnica di ragionamento che, se usata correttamente, non ciconduce mai in errore, si chiama ragionamento deduttivo. Tale tecnica combina uncerto numero di ipotesi (che crediamo siano vere) e produce una tesi, la cui verità èstrettamente collegata a quella delle ipotesi:

in ogni caso in cui le ipotesi siano vere anche la tesi lo sarà.

Uno degli esempi più antichi di tale ragionamento risale agli antichi greci:

Ipotesi

Ogni animale è mortale,

Ogni uomo è un animale,

Tesi{

Ogni uomo è mortale.

Notiamo innanzitutto che la correttezza di tale ragionamento non dipende dalla veri-dicità delle frasi: il seguente ragionamento, che segue lo stesso schema di quello quisopra, rimane corretto:

Ogni animale è buono,

Ogni uomo è un animale,

Ogni uomo è buono.

1

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

2 introduzione

Il ragionamento è corretto: se accettiamo che le frasi “ogni animale è buono” e “ogniuomo è un animale” allora dobbiamo necessariamente accettare anche “ogni uomo èbuono”. Se tale tesi non rispecchia la realtà vorrà dire che c’è qualche problema con lenostre ipotesi, non con il nostro ragionamento.

Quindi la validità di un ragionamento non dipende dalla validità delle singole frasi,ma dalla struttura del ragionamento. Possiamo quindi definire un ragionamento cor-retto come un procedimento che preserva la verità, ovvero la cui conclusione è vera ognivolta che le ipotesi sono vere.

Un secondo fatto che andrebbe notato a proposito dei ragionamenti qui sopra èche essi ci permettono di ottenere nuove informazioni a partire dalle informazioni chepossediamo. Consideriamo il seguente esempio.

Su un tavolo ci sono 6 scrigni; su ognuno di essi c’è un’iscrizione.

1. Sul primo scrigno l’iscrizione dice: “nessuno di questi 6 scrigni contie-ne un tesoro”.

2. Sul secondo scrigno l’iscrizione dice: “Solo 1 di questi 6 scrigni contie-ne un tesoro”.

3. Sul terzo scrigno l’iscrizione dice: “Esattamente 2 di questi 6 scrignicontengono un tesoro”.

4. Sul quarto scrigno l’iscrizione dice: “Esattamente 3 di questi 6 scrignicontengono un tesoro”.

5. Sul quinto scrigno l’iscrizione dice: “Esattamente 4 di questi 6 scrignicontengono un tesoro”.

6. Sul sesto scrigno l’iscrizione dice: “Esattamente 5 di questi 6 scrignicontengono un tesoro”.

Sapendo che ciascuno scrigno contiene un tesoro se e solo se l’iscrizione su di essodice il vero, possiamo stabilire in quali scrigni c’è un tesoro?

Cominciamo a ragionare, innanzitutto le frasi non possono essere tutte vere, perchési contraddicono tra di loro: se è vero che “Esattamente 2 di questi 6 scrigni contengo-no un tesoro” allora non può anche essere vero che “Esattamente 4 di questi 6 scrignicontengono un tesoro”. Quindi al più una può essere vera. E se fossero tutte false?Neanche questo può succedere, perché se fossero tutte false non ci sarebbe nessunoscrigno con un tesoro, ma questo è proprio quello che c’è scritto sul primo scrigno,quindi esso dovrebbe contenere un tesoro ed abbiamo quindi una contraddizione. Al-lora abbiamo stabilito che esattamente una delle frasi deve essere vera. Ovviamente lafrase vera non può essere l’ultima, perché dice che ci sono cinque scrigni contenentiun tesoro, e se questo fosse vero cinque scritte dovrebbero essere vere. Per lo stesso

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

introduzione 3

motivo non può essere vera quella sul penultimo scrigno e così via. L’unica frase chepuò essere vera è quella che dice “1 solo di questi 6 scrigni contiene un tesoro”, percui ora sappiamo che l’unico scrigno che contiene un tesoro è il secondo.

Il ragionamento eseguito qui sopra è logicamente corretto, esso rimane valido aprescindere che le informazioni che ci hanno dato sugli scrigni e sulle scritte sianovere o false. Ciò che conta è che se le informazioni che ci hanno dato sono corrette,allora la nostra tesi deve per forza valere.

Ricapitolando, la nostra mente è capace di manipolare informazioni in vari modi,alcuni di questi funzionano nella maggior parte dei casi, ma non sempre. Una dellenostre tecniche di ragionamento invece ci permette di avere estrema certezza che, sele informazioni che stiamo manipolando sono corrette, allora lo sarà anche la nostraconclusione. Chiameremo tale tecnica ragionamento logico ed esso sarà l’oggetto delnostro studio.

La prima cosa da fare per studiare le regole che governano il ragionamento logico ècercare di minimizzare le ambiguità contenute nel linguaggio quotidiano. Quando peresempio si dice “aiuteremo gli anziani o i bambini” si intende dire che verrà aiutatal’una o l’atra classe di persone ma non entrambe? Oppure potrebbero anche essereaiutate entrambe? Quando si dice “Se viene Marco io non vengo e Antonio viene” siintende dire che Antonio viene se viene Marco? Oppure Antonio viene comunque?

Per eliminare questo tipo di ambiguità costruiremo un linguaggio formale in cuisaranno presenti nuovi simboli di cui definiremo univocamente il significato logico,in maniera che essi si comportino come le parti del discorso che vogliamo studiare.Cominceremo a costruire prima un linguaggio più semplice, che chiameremo linguag-gio proposizionale, per poi passare a uno un po’ più complesso (che però possiedepiù potere espressivo) che chiameremo linguaggio del primo ordine.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

2S I N TA S S I E S E M A N T I C A D E L L A L O G I C A P R O P O S I Z I O N A L E .

2.1 proposizioni .

Il primo passo da compiere è definire quali sono le parti del discorso che ci interessanoin questo studio. Una proposizione è un’affermazione di cui ha senso dire se è VERAoppure FALSA, a cui quindi è possibile attribuire un valore di verità

Ad esempio:

• “Marco è alto 1,75m”

• “5 è un numero dispari”

• “Roma è la capitale della Francia”

sono proposizioni. Al contrario, l’affermazione “Alzati!’ non è una proposizione (espri-me un ordine e non un fatto che può essere vero o falso). Le proposizioni più semplicisono quelle formate da un soggetto e da un predicato, che esprime una proprietàdel soggetto, oppure da un soggetto, un predicato, un oggetto (il predicato collega ilsoggetto all’oggetto). Proposizioni di questo tipo sono chiamate atomiche. Nei ragio-namenti, però, spesso utilizziamo proposizioni più complesse, ottenute a partire daquelle più semplici. Queste proposizioni più complesse possono essere ottenute com-binando tra loro quelle semplici attraverso l’uso dei connettivi, quali “ e”, “ o”, “non”,“se... allora ...”, ecc. Ad esempio:

1. “4 è un numero pari” è una proposizione atomica,

2. “Se c’è il sole allora vado al mare” è una proposizione composta (le cui compo-nenti sono “c’è il sole” e “vado al mare”).

2.2 il linguaggio formale

Il linguaggio quotidiano è troppo complesso e ambiguo. Perciò il primo passo da fareper poter studiare le regole logiche è costruire un nuovo linguaggio in cui formalizza-re i ragionamenti. Lo scopo è quello di fornire un linguaggio abbastanza espressivoda poterci tradurre i ragionamenti di tutti i giorni, ma costituito da una rigida sin-tassi e un significato univoco per ogni suo oggetto, in maniera da poterlo studiarematematicamente. Chiameremo questo interpretazione il linguaggio formale. Per co-struire un linguaggio formale bisogna fissare un alfabeto, cioè un insieme di simboliche ci serviranno a costruire delle “frasi” (che, in questo contesto, chiameremo “for-mule” o “proposizioni”). Le “frasi” non sono altro che delle sequenze finite (stringhe)di simboli che appartengono all’alfabeto che abbiamo fissato. Servirà poi una sintassi,cioè un insieme di regole per stabilire quali sequenze di simboli sono accettabili nel

5

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

6 sintassi e semantica della logica proposizionale .

nostro linguaggio e quali no. Attenzione: la sintassi si occupa solo della forma dellefrasi, è l’insieme delle regole che ne permettono la formazione, indipendentemente daisignificati, di cui, invece, si occupa la semantica.

Esempio 2.1. Nel linguaggio dell’Aritmetica, consideriamo le seguenti “frasi” (cioèformule):

• 2 · (3+ 1) = 8, formula sintatticamente corretta,

• 2+ (4(− ==), formula sintatticamente non corretta

• 2+1= 6, formula sintatticamente corretta.

Si noti che la prima e la terza formula sono entrambe sintatticamente corrette (an-che se la prima è VERA e la terza è FALSA). In particolare si noti che, nel caso diuna formula non sintatticamente corretta, non ha nessun senso chiederci se è VERAo falsa; essa è semplicemente una sequenza di simboli priva di senso. Le formule sin-tatticamente corrette saranno chiamate Formule Ben Formate (Form). Riassumendo: ilcompito della sintassi è quello di fornire un insieme di regole per costruire le Form.Solo quando una formula è sintatticamente corretta si può poi parlare del suo signi-ficato. Questo è il compito della semantica: assegnare un significato a tutte le frasisintatticamente corrette (cioè a tutte le Form).

2.3 il linguaggio della logica proposizionale

Come abbiamo visto, per capire se un certo ragionamento è corretto oppure no, nonè importante sapere se le particolare proposizioni usate sono vere o false. Tra l’altro,bisogna stare attenti perché una stessa frase può essere vera in un contesto e falsain un altro. Ad esempio, la frase “Nessuno capisce la lingua cinese” può essere veranell’insieme degli alunni di una classe italiana, ma falsa in una classe di studenti cine-si. Quello che ci interessa è che il ragionamento preservi la verità delle ipotesi nella tesi,ovvero ci interessa la correttezza del procedimento per ricavare nuove affermazionivere a partire da quelle supposte vere. Possiamo quindi del tutto abbandonare le frasiconcrete e sostituirle con dei simboli. Nel Calcolo Proposizionale manipoleremo delleproposizioni atomiche che indicheremo con delle lettere minuscole (se necessario indi-cizzate) p, q, r . . . , p1, . . . , pn, . . . . Le proposizioni atomiche si possono poi combinaretra loro mediante l’uso dei connettivi. Pertanto il nostro alfabeto conterrà:

• Un insieme di simboli che chiameremo variabili proposizionali (o proposizioniatomiche):

Var := {p, q, r . . . , p1, . . . , pn, . . . }

• Simboli per indicare i connettivi: ¬,∧,∨,→

• Simboli accessori, come le parentesi: ( e ).

Ovviamente non siamo interessati a qualsiasi stringa di simboli del alfabeto precedente,per poter assegnare un significato alle stringhe di simboli esse devono essere statecostruite secondo una sintassi che ci apprestiamo a specificare. Le stringhe di simbolia cui siamo interessati sono le formule ben formate.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

2.3 il linguaggio della logica proposizionale 7

Definizione 2.2. L’insieme Form delle formule proposizionali (formule ben formate)è il più piccolo insieme chiuso rispetto alle seguenti regole:

• tutti gli elementi di Var sono in Form;

• se ϕ,ψ ∈ Form , allora anche (¬ϕ), (ϕ∧ψ), (ϕ∨ψ) e (ϕ→ ψ) sono in Form.

Introduciamo anche il connettivo ↔ come abbreviazione: ϕ ↔ ψ sta per per (ϕ →ψ)∧ (ψ→ ϕ)

Osservazione 2.3. Si noti che abbiamo usato le lettere greche ϕ,ψ, . . . per indicaredelle formule arbitrarie. Se dunque i simboli in Var sono le variabili nel linguag-gio oggetto di studio, le lettere greche rappresentano meta-variabili appartenenti almeta-linguaggio che utilizziamo per parlare del linguaggio oggetto.

Esempio 2.4. Le seguenti stringhe sono in Form:

• ((p∨ q)→ (r∧ s)),

• ((p→ q)→ (¬r)),

• (((¬p)∨ q)∧ (¬q)).

Al contrario, la seguente sequenza di simboli non è in Form: ∧ → p → (. In manierapiù sottile, neanche (ϕ ∨ ψ) appartiene a Form, poiché ϕ e ψ non sono in Var. Lastringa (ϕ∨ψ) appartiene al meta-linguaggio e denota una qualsiasi formula ottenutacongiungendo due formule arbitrarie (si veda anche osservazione 2.3).

Osservazione 2.5. Si noti che (per ora) i simboli ¬,∧,∨,→ non hanno nessun significato;essi sono solo dei simboli che devono essere manipolati in modo puramente formale,secondo le regole della sintassi enunciate prima.

Osservazione 2.6. Le regole che abbiamo stabilito conducono a un uso eccessivo delleparentesi. Per semplificare l’aspetto delle formule conviene stabilire delle priorità tra ivari simboli:

priorità più alta ¬... ∧... ∨... ↔

priorità più bassa →

Pertanto la formula p∧¬q→ r deve essere interpretata come ((p∧ (¬q))→ r), mentrela formula

¬p∧ q∨ r→ ¬s

significa((((¬p)∧ q)∨ r)→ (¬s)) .

Invece, nella formula (p → q) ∨ r non si possono togliere le parentesi, perché laformula p→ q∨ r verrebbe interpretata come (p→ (q∨ r)).

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

8 sintassi e semantica della logica proposizionale .

2.4 la semantica della logica proposizionale

Bisogna ora attribuire un significato e, dunque, un valore di verità (VERO o FAL-SO) a tutte le formule sintatticamente corrette (le formule in Form). Indichiamo i va-lori di verità VERO con 1 e FALSO con 0. Si tratta quindi di definire una funzionev : Form → {0, 1}, che associa ad ogni formula ben formata ϕ il suo valore di veritàv(ϕ). Dato che ogni fbf si ottiene combinando tra loro delle proposizioni atomichemediante l’uso dei connettivi (secondo le regole della sintassi), per definire una ta-le funzione v sull’insieme Form di tutte le formule ben formate basta definirla per leproposizioni atomiche e poi descrivere il comportamento dei vari connettivi. Per ognivariabile proposizionale p scriveremo v(p) = 1 per intendere che p è VERA e v(p) = 0per intendere che p è FALSA.

Analizziamo ora il comportamento dei vari connettivi. Per fare ciò costruiamo perognuno di essi una tabella, la sua tavola di verità, che indica, in corrispondenza deicasi possibili, se la proposizione ottenuta è vera o falsa.

Tavola della verità della negazione (¬ = NOT)

p ¬p

0 1

1 0

Tavola della verità della congiunzione (∧ = AND)

p q p∧ q

0 0 0

0 1 0

1 0 0

1 1 1

Tavola della verità della disgiunzione (∨ = OR)

p q p∨ q

0 0 0

0 1 1

1 0 1

1 1 1

Tavola della verità della implicazione (→ )

p q p→ q

0 0 1

0 1 1

1 0 0

1 1 1

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

2.4 la semantica della logica proposizionale 9

Definizione 2.7. Una valutazione è una qualsiasi funzione v : Var→ {0, 1}.

Ogni valutazione si può estendere in un’unica maniera a una funzione v : Form →{0, 1} che si comporta sui connettivi come nelle tavole di verità descritte qui sopra.In altre parole, data una valutazione v : Var → {0, 1} si definisce v su una formulaarbitraria ϕ come segue:

• se ϕ ∈ Var allora v(ϕ) = v(ϕ),

• se ϕ = ϕ1 ∧ϕ2 allora v(ϕ) = min{v(ϕ1), v(ϕ2)},

• se ϕ = ϕ1 ∨ϕ2 allora v(ϕ) = max{v(ϕ1), v(ϕ2)},

• se ϕ = ϕ1 → ϕ2 allora v(ϕ) = min{1− v(ϕ1) + v(ϕ2), 1)},

• se ϕ = ¬ϕ1 allora v(ϕ) = 1− v(ϕ1).

Si noti che per definire v abbiamo sfruttato il fatto che una stringa appartiene a Form

esattamente se è una variabile proposizionale o se è stata ottenuta secondo le regoledella definizione 2.2. Questa proprietà, che a volte va sotto il nome di leggibilità unicadelle formula verrà sfruttata spessissimo nel seguito.

Osservazione 2.8. Da quanto detto risulta evidente che una valutazione sull’insiemeForm è univocamente determinata dai valori che essa assume sulle proposizioni atomi-che, poiché tutte le formule in Form si ottengono combinando proposizioni atomichemediante l’uso di connettivi. Per questo motivo nel seguito, con un abuso di notazione,a volte confonderemo le valutazioni v con le loro estensioni v. La proprietà della se-mantica di dipendere esclusivamente da quella delle sue componenti atomiche è dettavero-funzionalità.

Utilizzando le tavole di verità appena presentate, possiamo costruire il valore diverità di una qualunque proposizione composta. Vediamo come.

Esempio 2.9. Data la formula

(p→ (q∧¬p))∨ q

descriviamone la tavola di verità. Cominciamo prendendo in esame quali sono i pos-sibili valori di verità delle formule atomiche coinvolte, considerando tutte le possibilicombinazioni.

p q

0 0

0 1

1 0

1 1

Quanto scritto sopra è una maniera breve per descrivere le uniche quattro situazionipossibili: p e q potrebbero essere entrambe false, p è falsa ma q è vera, viceversa pè vera ma q è falsa e, infine, p e q potrebbero essere entrambe vere. A questo puntopossiamo proseguire studiando le formule composte più semplici che sono presentinella formula data.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

10 sintassi e semantica della logica proposizionale .

p q ¬p (q∧¬p)

0 0 1 0

0 1 1 1

1 0 0 0

1 1 0 0

Ed infine possiamo utilizzare i conti intermedi fatti finora per arrivare ai possibilivalori di verità della formula data inizialmente.

p q ¬p (q∧¬p) (p→ (q∧¬p)) (p→ (q∧¬p))∨ q

0 0 1 0 1 1

0 1 1 1 1 1

1 0 0 0 0 0

1 1 0 0 0 1

Esempio 2.10. Data la formula

(¬p→ (¬q∨¬p))∧ q

descriviamone la tavola di verità.

p q ¬p ¬q (¬q∨¬p) (¬p→ (¬q∨¬p)) (¬p→ (¬q∨¬p))∧ q

0 0 1 1 1 1 0

0 1 1 0 1 1 1

1 0 0 1 1 1 0

1 1 0 0 0 1 1

Esempio 2.11. Data la formula

q→ (p∨ (¬q→ p))

descriviamone la tavola di verità.

p q ¬q ¬q→ p p∨ (¬q→ p)) q→ (p∨ (¬q→ p))

0 0 1 0 0 1

0 1 0 1 1 1

1 0 1 1 1 1

1 1 0 1 1 1

Esempio 2.12. Data la formula

(p→ (q∨¬p))∧ q

descriviamone la tavola di verità.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

2.4 la semantica della logica proposizionale 11

p q ¬p (q∨¬p) (p→ (q∨¬p)) (p→ (q∨¬p))∧ q

0 0 1 1 1 0

0 1 1 1 1 1

1 0 0 0 0 0

1 1 0 1 1 1

Esempio 2.13. Verifichiamo ora che per qualunque ϕ,ψ ∈ Form la formula ϕ → ψ hala stessa tavola della verità di ¬ϕ∨ψ.

Poiché i possibili valori di verità di ϕ e ψ sono solo 1 e 0, per costruire le tavole diverità di ϕ → ψ e ¬ϕ∨ψ non abbiamo necessità di sapere come sono effettivamentefatte ϕ e ψ, ma ci basta sapere quale sarà il copertamente delle formule composte inognuno dei possibili casi. Abbiamo quindi:

ϕ ψ ¬ϕ ¬ϕ∨ψ ϕ→ ψ

0 0 1 1 1

0 1 1 1 1

1 0 0 0 0

1 1 0 1 1

Definizione 2.14. Dato un insieme di formule Γ ed una formula ϕ, diremo che ϕ èconseguenza logica di Γ , in simboli Γ |= ϕ se per ogni valutazione v : Var → {0, 1}, sev(γ) = 1 per ogni γ ∈ Γ allora v(ϕ) = 1.

In generale se due proposizioni hanno la stessa tavola di verità, cioè hanno lo stessovalore di verità in corrispondenza di ogni caso possibile, allora si dicono logicamenteequivalenti. Più precisamente

Definizione 2.15. Due formule proposizionali ϕ e ψ sono dette logicamente equiva-lenti se, per ogni valutazione v : Form → {0, 1}, v(ϕ) = v(ψ). In tal caso scriveremoϕ ≡ ψ.

Esempio 2.16. Nell’esempio 2.13 è stato dimostrato che ¬ϕ∨ψ e ϕ→ ψ sono logica-mente equivalenti, qualunque siano le formule ϕ,ψ ∈ Form.

Per questo motivo, avremmo potuto fare a meno di definire la semantica del connet-tivo → e lo avremmo potuto definire come un’abbreviazione di ¬ϕ∨ψ. Il vantaggiodi tale approccio sarà evidente più avanti, quando nelle dimostrazioni per induzionesulla complessità di una formula dovremo considerare separatamente tutti i casi deiconnettivi ∨,∧,→,¬. Vedremo in seguito che i connettivi ∨ e ¬ da soli sono sufficientia definire qualsiasi altro connettivo proposizionale.

Consideriamo una formula proposizionale ϕ nella quale compaiono soltanto le va-riabili proposizionali p1, . . . , pn. Possiamo pensare alla sua tavola di verità come aduna funzione fϕ : {0, 1}n → {0, 1}: ogni riga della tavola rappresenta un vettore v di{0, 1}n nel quale la i-esima componente è la valutazione della variabile pi e fϕ(v) èproprio il valore di verità di ϕ che compare nella riga data da v. Ad esempio, se ϕ

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

12 sintassi e semantica della logica proposizionale .

coincide con la formula (¬p→ (¬q∨¬p))∧ q dell’esempio 2.10, fϕ : {0, 1}2 → {0, 1} èla funzione data da

fϕ(0, 0) = 0, fϕ(0, 1) = 1

fϕ(1, 0) = 0, fϕ(1, 1) = 1.

Quindi, ogni formula proposizionale in n variabili "genera" una funzione da {0, 1}n in{0, 1}. Il viceversa di questa affermazione è il contenuto del prossimo teorema.

Teorema 2.17 (di completezza funzionale). Per ogni funzione f : {0, 1}n → {0, 1} esisteuna formula proposizionale ϕ tale che f = fϕ.

Dimostrazione. Se f è la funzione costantemente uguale a 1, scegliamo ϕ = p ∨ ¬p,mentre se è identicamente uguale a zero scegliamo p∧¬p.

Sia f non costante. Possiamo pensare al suo dominio come ad una matrice con2n righe ed n colonne e, per ogni riga ah1, . . . , ahn, denotiamo con ch il valore dif(ah1, . . . , ahn). Siano k le n-ple (ai1, . . . , ain) ∈ {0, 1}n tali che ci = f(ai1, . . . , ain) =

x1 x2 . . . xn f(x1, . . . , xn)

0 0 . . . 0 c1

. . . . . . . . . . . . . . .

ah1 ah2 . . . ahn ch

. . . . . . . . . . . . . . .

a2n1 a2n2 . . . a2nn c2n

Tabella 1: Rappresentazione di f.

1 per ogni i = 1, . . . k. Fissato un i = 1, . . . , k, consideriamo le variabili proposizionalip1, . . . , pn e per ogni j = 1, . . . , n denotiamo con ψij la formula definita nel seguentemodo:

ψij coincide con

pj se aij = 1,

¬pj se aij = 0.

Sia ψi = ψi1∧ · · ·∧ψin. Osserviamo che il valore di verità di ψi è 1 se, e solo se, tuttele ψij assumono valore di verità 1 e questo accade se, e solo se, a pj assegniamo valoredi verità aij. Sia ora ϕ = ψ1 ∨ · · ·∨ψk. Vediamo che f = fϕ e cioè che la tabella 1

coincide con la tavola di verità di ϕ.Sia v(p1) = b1, . . . , v(pn) = bn una qualsiasi assegnazione dei valori di verità delle

variabili proposizionali. Poiché ogni bj vale 0 oppure 1, esisterà una riga, diciamo lariga l, della Tabella 1 tale che al1 = b1, . . . , aln = bn. Il teorema è dimostrato seil valore di verità di ϕ rispetto alla valutazione v indotta dalla assegnazione fissatacoincide con cl. Se cl = 1 si ha che ψl è uno dei disgiunti che costituiscono ϕ e, perla costruzione di ψl, questa vale 1 esattamente quando pj viene valutata alj, quindiv(ψlj) = 1 per ogni j = 1, . . . , n e v(ϕ) = 1. Se cl = 0 allora ψl non è uno dei disgiuntidi ϕ. Ma per le osservazioni precedenti l’assegnazione che determina v è tale chev(ψi) = 0 per ogni i 6= l e di conseguenza v(ϕ) = 0.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

2.4 la semantica della logica proposizionale 13

Esempio 2.18. Consideriamo la funzione f : {0, 1}3 → {0, 1} definita da

x1 x2 x3 f(x1, x2, x3)

0 0 0 1

0 0 1 0

0 1 0 0

0 1 1 1

1 0 0 0

1 0 1 1

1 1 0 0

1 1 1 1

Le triple da considerare sono (0, 0, 0), (0, 1, 1), (1, 0, 1) e (1, 1, 1), la prima, quarta, sestae ottava riga della tabella. Si ha che

ψ1 = ¬p∧¬q∧¬r, ψ4 = ¬p∧ q∧ r,

ψ6 = p∧¬q∧, r ψ8 = p∧ q∧ r.

Quindi ψ = ψ1 ∨ψ4 ∨ψ6 ∨ψ8 è la formula tale che fψ = f.

Notiamo che la dimostrazione del Teorema 2.17 si mantiene valida scambiando tradi loro 0 e 1, ∨ e ∧. Inoltre, dal Teorema di completezza funzionale possiamo ricavareun importante corollario, per il quale è necessario dare una definizione preliminare.

Definizione 2.19. Una formula proposizionale ϕ è detta in forma normale:

• congiuntiva se è una congiunzione di uno o più componenti, ciascuno dei qualiè una disgiunzione di una o più variabili proposizionali o negazioni di variabiliproposizionali;

• disgiuntiva se è una disgiunzione di uno o più componenti, ciascuno dei qualiè una congiunzione di una o più variabili proposizionali o negazioni di variabiliproposizionali.

Teorema 2.20. Ogni formula proposizionale ψ è logicamente equivalente ad una formulaproposizionale in forma normale congiuntiva e ad una in forma normale disgiuntiva.

Dimostrazione. Basta considerare la tavola di verità di ψ e applicare la dimostrazionedel Teorema 2.17 alla funzione fψ. Il risultato sarà una formula in forma normaledisgiuntiva.

Esercizio 2.21. Dimostrare che applicando la stessa tecnica del Teorema 2.17 alla tavoladi verità di ¬ψ si ottiene la forma normale congiuntiva di ψ.

Esempio 2.22. Sia ϕ la formula (¬p→ (¬q∨¬p))∧q dell’esempio 2.10. La sua tavoladi verità è

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

14 sintassi e semantica della logica proposizionale .

p q (¬p→ (¬q∨¬p))∧ q

0 0 0

0 1 1

1 0 0

1 1 1

Per ottenere la rappresentazione in forma normale disgiuntiva, consideriamo la secon-da e la quarta riga, ottenendo:

ϕ ≡ (¬p∧ q)∨ (p∧ q).

Per ottenere la forma normale congiuntiva possiamo applicare la stessa tecnica a ¬ϕ,oppure considerare le righe per le quali ϕ assume valore di verità 0 e scambiare ∨ e∧, ottenendo:

ϕ ≡ (p∨ q)∧ (¬p∨ q).

Osservazione 2.23. I simboli usati per denotare i vari connettivi non sono standard. Incontesti diversi si usano spesso simboli diversi da quelli che noi abbiamo introdotto.Ad esempio, nel linguaggio di programmazione C, il simbolo per il connettivo logicoAND è &&, mentre quello per il connettivo logico OR è ||.

Definizione 2.24. Sia ϕ ∈ Form e v una valutazione. Se v(ϕ) = 1, diremo che ϕ èsoddisfatta dalla valutazione v, oppure che v è un modello per ϕ. In tal caso si scrivev |= ϕ (ϕ è VERA nella valutazione v).

Definizione 2.25. Una formula ben formata ϕ è soddisfacibile se ha almeno un mo-dello, cioè se esiste almeno una valutazione in cui ϕ è soddisfatta. In caso contrario ϕè insoddisfacibile (si dice anche che ϕ è una contraddizione).

Esempio 2.26. La seguente formula è soddisfacibile: (p∧ ¬q)∨ (q → p). Infatti, seconsideriamo una valutazione v tale che v(p) = 1 e v(q) = 0, si ha v(¬q) = 1, quindiv(p∧¬q) = 1, da cui segue che

v((p∧¬q)∨ (q→ p)) = 1 .

Un esempio di formula insoddisfacibile (contraddizione) è dato dalla formula seguen-te: p∧¬p. Infatti, dato che per una qualunque valutazione v, v(p) può solo essere 0 o1, la tavola di verità della formula precedente è:

p ¬p p∧¬p

0 1 0

1 0 0

il che significa che la proposizione p∧¬p è sempre FALSA, indipendentemente dalfatto che p sia VERA o FALSA.

Definizione 2.27. Una formula ben formata ϕ è una tautologia se ogni valutazione vè un modello per ϕ, cioè se ϕ risulta VERA in ogni valutazione (ovvero, qualunquesiano i valori di verità delle proposizioni che la compongono). In tal caso si scriverà|= ϕ.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

2.4 la semantica della logica proposizionale 15

Esempio 2.28. La formulap→ p∨ q

è una tautologia. Infatti, dato che per una qualunque valutazione v, v(p) e v(q) possonosolo essere 0 o 1, la tavola di verità della formula precedente è:

p q p∨ q p→ p∨ q

0 0 0 1

0 1 1 1

1 0 1 1

1 1 1 1

il che significa che la proposizione p→ p∨q è sempre VERA, indipendentemente dalfatto che p o q siano vere o false.

Esempio 2.29. Ci chiediamo se la formula p → ¬p sia soddisfacibile. Scriviamo latavola di verità:

p ¬p p→ ¬p

0 1 1

1 0 0

Ciò significa che la proposizione p→ ¬p è soddisfacibile e la valutazione che la soddi-sfa è quella che assegna ad p il valore 0, cioè v(p) = 0 (in altre parole, la proposizionep→ ¬p è VERA solo quando p è FALSA).

Proposizione 2.30. Una formula ben formata ϕ è una tautologia se, e solo se, ¬ϕ è insoddi-sfacibile.

Dimostrazione. Supponiamo che ϕ sia una tautologia. Questo vuol dire che qualsiasivalutazione v : Form → {0, 1} la rende VERA, in altre parole v(ϕ) = 1. Poiché v è unavalutazione, deve comportarsi su tutte le formule composte come descritto dalle tavoledi verità dei connettivi, in particolare se consideriamo la negazione di ϕ, data da ¬ϕ,avremo v(¬ϕ) = 0. Ciò vale per ogni valutazione e dunque la negazione di ϕ é unacontraddizione.

Viceversa, se ¬ϕ è una contraddizione, allora, per definizione, qualsiasi valutazionev : Form → {0, 1} la rende FALSA, cioè v(¬ϕ) = 0. Ancora una volta, v è una valuta-zione, quindi sulle formule composte agisce come descritto dalle tavole di verità deiconnettivi, in particolare se consideriamo ¬ϕ senza il simbolo di negazione, cioè ϕ,avremo v(ϕ) = 1. Ciò vale per ogni valutazione e dunque la negazione di ϕ è unatautologia.

Osservazione 2.31. La proposizione precedente afferma una cosa piuttosto ovvia e cioèche una proposizione ϕ è “sempre VERA” se, e solo se, la sua negazione ¬ϕ è “semprefalsa.”

Esempio 2.32. Le seguenti sono (schemi di) tautologie della logica proposizionale;

1. (ϕ∨ψ)∨ ξ↔ ϕ∨ (ψ∨ ξ),

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

16 sintassi e semantica della logica proposizionale .

2. (ϕ∧ψ)∧ ξ↔ ϕ∧ (ψ∧ ξ),

3. ϕ∨ψ↔ ψ∨ϕ,

4. ϕ∧ψ↔ ψ∧ϕ,

5. (ϕ∨ψ)∧ ξ↔ (ϕ∧ψ)∨ (ψ∧ ξ),

6. (ϕ∧ψ)∨ ξ↔ (ϕ∨ψ)∧ (ψ∨ ξ),

7. (ϕ∨ψ)↔ ¬(¬ϕ∧¬ψ),

8. (ϕ∧ψ)↔ ¬(¬ϕ∨¬ψ),

9. ϕ∨¬ϕ,

10. ¬(ϕ∧¬ϕ),

11. ¬(¬ϕ)↔ ϕ,

12. (¬ϕ→ ϕ)→ ϕ,

13. ((ϕ→ ψ)→ ϕ)→ ϕ,

14. ((ϕ∧ψ)∨ψ)↔ ψ,

15. ((ϕ∨ψ)∧ψ)↔ ψ.

Definizione 2.33. Un insieme di formule Γ è detto soddisfacibile se, e soltanto se,esiste una valutazione v tale che v(γ) = 1 per ogni γ ∈ Γ .

Osservazione 2.34. Esistono insiemi non soddisfacibili di formule soddisfacibili, es.:Γ = {p,¬p}; le formule p e ¬p sono entrambe soddisfacibili, ma l’insieme Γ non èsoddisfacibile perché qualsiasi valutazione che renda vera p, deve rendere falsa ¬p.

Concludiamo questa sezione con un’utile definizione che ci permetterà di dimostra-re teoremi guardando la struttura di una formula arbitraria.

Definizione 2.35. La complessità di una formula ϕ ∈ Form, in simboli #(ϕ) è definitacome segue:

1. se ϕ ∈ Var allora #(ϕ) = 0.

2. se ϕ = ϕ1 ∧ϕ2 allora #(ϕ) = max{#(ϕ1), #(ϕ2)}+ 1.

3. se ϕ = ϕ1 ∨ϕ2 allora #(ϕ) = max{#(ϕ1), #(ϕ2)}+ 1.

4. se ϕ = ϕ1 → ϕ2 allora #(ϕ) = max{#(ϕ1), #(ϕ2)}+ 1.

5. se ϕ = ¬ϕ1 allora #(ϕ) = #(ϕ1) + 1.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

2.5 il teorema di compattezza per la logica proposizionale 17

2.5 il teorema di compattezza per la logica proposizionale

In questa sezione dimostreremo un teorema di fondamentale importanza. Esso asseri-sce che se ogni parte finita di un insieme di formule è soddisfacibile, allora lo è tuttol’insieme. Per comodità chiamiamo finitamente soddisfacibile un insieme di formulein cui ogni parte finita è soddisfacibile.

Lemma 2.36. Ogni insieme finitamente soddisfacibile è contenuto in un insieme massimalerispetto a questa proprietà.

Dimostrazione. Sia Γ un insieme finitamente soddisfacibile. Consideriamo la famigliadi insiemi

F := {Λ | Γ ⊆ Λ e Λ è finitamente soddisfacibile}.

La famiglia F non è vuota, perché Γ le appartiene. Inoltre F è parzialmente ordinatadalla relazione ⊆. Infine ogni catena in F ha una maggiorante. Infatti se C ⊆ F è unacatena (e cioè un sottoinsieme linearmente ordinato) allora consideriamo

⋃C. L’in-

sieme⋃C è ovviamente un maggiorante per C, infatti per definizione per ogni Ψ ∈ C,

Ψ ⊆ ⋃C. Per concludere dobbiamo verificare che⋃C appartenga a F. Ma

⋃C contiene

sicuramente Γ , poiché ogni insiemi in F contiene Γ ; inoltre⋃C è finitamente soddisfa-

cibile, perché se non lo fosse dovrebbe contenere un insieme finito non soddisfacibileF, ma se F ⊆ ⋃C allora deve esistere G ∈ C, tale che F ⊆ G, contro l’ipotesi che C ⊆ F.

Dunque per il Lemma di Zorn possiamo concludere che F ha un elemento massimale.In altre parole esiste un insieme di formule che estende Γ ed è massimale rispettoall’essere finitamente consistente.

Osservazione 2.37. Si noti che l’uso del Lemma di Zorn non è necessario quando illinguaggio è numerabile. Tuttavia, per illustrare un’applicazione del teorema di com-pattezza avremo bisogno della sua versione estesa a linguaggi di cardinalità più chenumerabili.

Lemma 2.38. Se T è un insieme di formule, allora per ogni formula ϕ vale T |= ϕ se, e soltantose, T ∪ {¬ϕ} non è soddisfacibile.

Dimostrazione. Supponiamo che T |= ϕ. Dunque qualunque valutazione mandi tutte leformule in T in 1 deve mandare anche ϕ in 1. Quindi non può esistere una valutazioneche mandi in 1 sia le formule in T che ¬ϕ. Viceversa, se T ∪ {¬ϕ} non è soddisfacibile,abbiamo due casi possibili: se T non è soddisfacibile, allora banalmente anche T |= ϕ;se invece T è soddisfacibile, allora ogni valutazione che manda tutte le formule in T in1 deve mandare ¬ϕ in 0, e di conseguenza ϕ in 1. Ne segue che T |= ϕ.

Lemma 2.39. SeM è un insieme massimale rispetto all’essere finitamente soddisfacibile, alloraper ogni formula ϕ vale ϕ ∈M oppure ¬ϕ ∈M.

Dimostrazione. Supponiamo, per assurdo, che ϕ 6∈ M e ¬ϕ 6∈ M. Allora, per la mas-simalità di M, abbiamo che né M ∪ {ϕ} né M ∪ {¬ϕ} sono finitamente soddisfacibili.Dunque, esistono S, S ′ ⊆ M finiti, tale che S ∪ {ϕ} e S ′ ∪ {¬ϕ} non sono soddisfacibili.Se poniamo T := S ∪ S ′ è facile vedere che T ∪ {ϕ∨ ¬ϕ} non è soddisfacibile. Per illemma 2.38, questo è equivalente a T |= ¬(ϕ∨¬ϕ). Infine, utilizzando le leggi di DeMorgan, abbiamo T |= ¬ϕ∧ϕ, da cui segue che T non è soddisfacibile, assurdo.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

18 sintassi e semantica della logica proposizionale .

Lemma 2.40. Dato un insieme M di formule massimale rispetto all’essere finitamente sod-disfacibile esiste una valutazione che rende vere esattamente le formule che appartengono aM.

Dimostrazione. Dato M come nell’asserto definiamo vM come segue: per ogni p ∈ Var,

vM(p) :=

1 se p ∈M0 se p 6∈M

Dimostriamo ora per induzione sulla complessità di ϕ che per ogni ϕ ∈ Form,

vM(ϕ) = 1 se, e soltanto se, ϕ ∈M.

Il passo base è dato direttamente dalla definizione di vM(p).Supponiamo quindi che ϕ = ϕ1 ∧ ϕ2. Cominciamo mostrando l’implicazione ⇐.

Supponiamo che vM(ϕ) = 1, dunque vM(ϕ1) = 1 e vM(ϕ2) = 1. Per ipotesi induttivale ultime due condizioni sono equivalenti a ϕ1 ∈ M e ϕ2 ∈ M. Sia S un qualsiasisottoinsieme finito di M, poiché M è finitamente soddisfacibile, l’insieme S∪ {ϕ1, ϕ2}è soddisfacibile. Dunque esiste una valutazione w tale che per ogni σ ∈ S, w(σ) =

w(ϕ1) = w(ϕ2) = 1. Ne segue che w(ϕ1 ∧ϕ2) = 1. Dall’arbitrarietà di S abbiamo chel’insieme M ∪ {ϕ1 ∧ϕ2} è finitamente soddisfacibile. Poiché M è massimale rispettoa questa proprietà, se ne deriva che ϕ1 ∧ ϕ2 ∈ M. Per mostrare l’implicazione ⇒,supponiamo che ϕ1 ∧ ϕ2 ∈ M. Mostriamo che ϕ1 ∪M e ϕ2 ∪M sono finitamentesoddisfacibili, cosicché per la massimalità di M, otterremo che ϕ1, ϕ2 ∈ M. Sia S unsottoinsieme finito di M, allora poiché ϕ1 ∧ϕ2 ∈ M, esiste una valutazione w cherende vere tutte le formule in S e w(ϕ1 ∧ϕ2) = 1; dunque w soddisfa sia S∪ {ϕ1} cheS∪ {ϕ2}. Infine, per l’ipotesi induttiva vM(ϕ1) = vM(ϕ2) = 1, dunque vM(ϕ1∧ϕ2) =

1.Se invece ϕ = ¬ϕ1. Si ha che vM(ϕ) = 1 se, e soltanto se, vM(ϕ1) = 0. Per ipotesi

induttiva quest’ultima è equivalente a ϕ1 6∈ M. A sua volta, per il lemma 2.39 ciò èequivalente a ϕ = ¬ϕ1 ∈M.

Teorema 2.41 (Teorema di compattezza della logica proposizionale). Un insieme Γ diformule è soddisfacibile, se, e soltanto se, ogni suo sottoinsieme finito è soddisfacibile.

Dimostrazione. L’implicazione da sinistra verso destra è ovvia. Dimostriamo quindi l’al-tra implicazione. Supponiamo che Γ sia finitamente soddisfacibile, per il lemma 2.36

esiste un insieme M che estende Γ ed è massimale rispetto all’essere finitamente soddi-sfacibile. Dunque possiamo applicare il lemma 2.40 adM per ottenere una valutazioneche rende vere tutte le formule in M e dunque tutte le formule in Γ . In conclusione Γè soddisfacibile

2.5.1 Applicazioni della compattezza

Vediamo ora un’applicazione del teorema di compattezza che permette di dimostrareun teorema di matematica combinatoria transfinita.

Per poter applicare il teorema ricordiamo alcune definizioni di teoria dei grafi.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

2.5 il teorema di compattezza per la logica proposizionale 19

Definizione 2.42. Un grafo semplice (non orientato) è dato da una coppia (A,R) doveA è un insieme non vuoto, i cui elementi sono detti nodi, e R è una relazione binariasu A, R ⊆ A2, irriflessiva e simmetrica; le coppie in R vengono chiamate archi.

Definizione 2.43. Sia dato un grafo (A,R) e e k ∈N, con k 6= 0. Una k-colorazione di(A,R) è una funzione f : A → {1, 2, . . . , k} tale che aRa ′ implica f(a) 6= f(a ′). Diremoche un grafo (A,R) è k-colorabile se esiste una k-colorazione di (A,R).

Per capire da dove viene questa terminologia possiamo pensare ai vertici di parti-colare grafi semplici come gli stati su una cartina e ad R come la relazione di “essereconfinante”. In questa interpretazione una k-colorazione è una maniera di colorare lamappa senza dare lo stesso colore a due stati adiacenti.

La logica proposizionale è abbastanza espressiva da poter parlare di k colorazioni.Per vedere ciò sia (A,R) un grafo semplice tale che |A| = ρ e consideriamo un insiemedi variabili proposizionali di cardinalità k · ρ. Stabiliamo una corrispondenza tra levariabili proposizionali e le coppie ordinate (x, i) con x ∈ A e 6 i 6 k. In altre parole,supponiamo senza perdere di generalità che l’insieme delle variabili proposizionali sia

VarA := {pi | p ∈ A, i ∈ K},

dove K := {1, . . . , k}. Se immaginiamo di assegnare valore di verità 1 alla formula pise, e soltanto se, il vertice p ha colore i, allora possiamo esprimere certe proprietà delgrafo (A,R) tramite formule proposizionali. Ad esempio, il fatto che a un nodo vengaassegnato almeno un colore può essere scritto formalmente nella seguente maniera:

αp :=∨

i∈Kpi,

Esiste infatti una biezione tra le valutazioni che rendono vera αp e i diversi modi diassegnare un “colore” i 6 k a p. Se αp è resa vera da una valutazione v : VarA →{0, 1} allora una delle formule proposizionali disgiunte in αp deve essere vera, diciamopj, dunque scegliamo di assegnare il colore j al nodo p. Viceversa, se scegliamo diassegnare il colore j a p allora possiamo considerare la valutazione v che rende verapj se, e solo se, a p è stato assegnato colore j. Tale valutazione rende vera αp.

Un’altra proprietà definibile tramite una formula proposizionale è che al nodo pviene associato al più un colore. Essa è espressa dalla formula

βp :=∧

i 6=j,i,j∈K¬(pi ∧ pj).

Un’altra proprietà ancora esprimibile nel linguaggio della logica proposizionale èche due nodi p e q hanno colori distinti:

γp,q :=∧

i∈K¬(pi ∧ qi).

Se ne deduce che, detto T il seguente insieme di formule

T := {αp | p ∈ A}∪ {βp | p ∈ A}∪ {γp,q | (p, q) ∈ R},

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

20 sintassi e semantica della logica proposizionale .

esiste una biezione tra le valutazioni che rendono vere tutte le formule in T e le k-colorazioni di (A,R). Infatti, se v : VarA → {0, 1} è rende vere tutte le formule in T ,allora per ogni p ∈ A esiste esattamente un i ∈ K tale che v(pi) = 1; definiamo lacolorazione f : A → K come f(x) = i. Viceversa, se f : A → K è una k-colorazione,definiamo la valutazione v come v(pi sse f(p) = i.

Diremo che (B, S) è un sottografo di (A,R) se B ⊆ A e S ⊆ R tale che le dueproiezioni canoniche di S su A, π1(S) e π2(S) sono sottoinsiemi di B. Un grafo efinitamente k-colorabile, se ogni suo sottografo finito è k-colorabile.

Dimostriamo ora, utilizzando la compattezza un teorema riguardante la k-colorabilitàdi grafi semplici infiniti.

Teorema 2.44 (De Bruijn, Erdös, 1951). Siano (A,R) un grafo semplice e 1 6 k un numeronaturale. Il grafo (A,R) è k-colorabile se, e soltanto se, ogni suo sottografo finito è k-colorabile.

Dimostrazione. È chiaro che se (A,R) è k-colorabile, allora è finitamente k-colorabile.Supponiamo ora che ogni sottografo finito di (A,R) sia k-colorabile. Consideriamo l’in-sieme di formule T definito sopra. Abbiamo visto che l’esistenza di una k-colorazionedi (A,R) è equivalente all’esistenza di una valutazione che renda vere tutte le formulein T . Per stabilire il teorema è dunque sufficiente stabilire che T è soddisfacibile. MaT è finitamente soddisfacibile perché il grafo (A,R) è finitamente k-colorabile, dunqueper il teorema di compattezza T è soddisfacibile.

2.6 deduzione naturale

In questa sezione presenteremo una maniera alternativa di definire i connettivi: ladeduzione naturale. Se le valutazioni ci permettono di specificare il comportamentodei connettivi in maniera estensiva, cioè descrivendo il loro funzionamento in ogni casopossibile, la deduzione naturale descrive il comportamento dei connettivi in manieraintensiva, cioè specificando come essi interagiscono tra di loro.

Le regole della deduzione naturale sono molto intuitive, perché rappresentano sche-maticamente l’usuale maniera di trattare i connettivi nelle dimostrazioni. Vedremopresto che ogni connettivo può essere completamente descritto da due regole: una perla sua introduzione e una per la sua eliminazione.

2.6.0.1 Congiunzione

Cominciamo dal connettivo ∧. Per introdurre una congiunzione in una dimostrazione,cioè per dimostrare qualcosa della forma ϕ∧ψ di solito si dimostra ϕ, poi si dimostraψ e poi se ne deduce la loro congiunzione. Rappresentiamo questa costruzione logicanella seguente maniera:

Γ····ϕ

Γ ′····ψ

I∧ϕ∧ψ (1)

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

2.6 deduzione naturale 21

doveΓ····ϕ

rappresenta una dimostrazione di ϕ utilizzando le ipotesi all’interno dell’insieme diformule Γ . I puntini di sospensione tra Γ e ϕ servono a esprimere il fatto che per ilmomento non siamo interessati a sapere come esattamente siamo arrivati a dedurre ϕda Γ , ma solo al fatto che esiste una dimostrazione di questo tipo. Dunque la regolaqui sopra può essere letta nella seguente maniera

date una dimostrazione di ϕ con ipotesi in Γ e una dimostrazione di ψcon ipotesi in Γ ′ possiamo combinarle tra loro, utilizzando la regola eq. (1),ottenendo una dimostrazione con ipotesi in Γ ∪ Γ ′ della formula ϕ∧ψ.

Passiamo ora alle regole per eliminare una congiunzione. Se abbiamo già dimostratouna formula del tipo ϕ ∧ ψ, sappiamo che da essa possiamo dedurre sia ϕ che ψ,dunque abbiamo due regole per l’eliminazione della congiunzione:

Γ····

ϕ∧ψE∧Sx

ϕ

Γ····

ϕ∧ψE∧Dx

ψ

2.6.0.2 Implicazione

Sebbene non siano strettamente necessarie, poiché l’implicazione è riducibile ai con-nettivi ∨ e ¬, discutiamo le regole di introduzione e eliminazione per →, vista l’im-portanza di tale connettivo in matematica. Introdurre un’implicazione corrisponde ascaricare un’ipotesi. In altre parole, se abbiamo dimostrato ψ utilizzando le ipotesi inΓ ∪ {ϕ}, possiamo anche dire che abbiamo una dimostrazione di ϕ → ψ che utilizzaipotesi solo in Γ . In simboli:

Γ, [ϕ]1

····ψ

I→1ϕ→ ψ

Le parentesi servono a dire che l’ipotesi ϕ è stata cancellata, o scaricata come si dicein gergo. Sia il numerino vicino alle parentesi, che l’uso delle parentesi quadre invecedi una semplice cancellatura sono semplicemente metodi per tenere traccia del passodella deduzione in cui un’ipotesi è stata scaricata e quale fosse tale ipotesi.

Per capire come eliminare un’implicazione, dobbiamo pensare a come tale opera-zione ha luogo in una dimostrazione concreta. Se abbiamo dimostrato ϕ → ψ, allora

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

22 sintassi e semantica della logica proposizionale .

sappiamo che se valeϕ allora vale ψ. Dunque se abbiamo una dimostrazione diϕ→ ψ

e una dimostrazione di ϕ allora possiamo combinarle in una dimostrazione di ψ:

Γ····ϕ

Γ ′····

ϕ→ ψE→

ψ

Questa regola viene a volte chiamata modus ponens.

2.6.0.3 Disgiunzione

Passiamo ora al connettivo ∨. Se volessimo introdurre una disgiunzione in una dimo-strazione, una possibile maniera sarebbe quella di indebolire quanto già ottenuto, adesempio ϕ, aggiungendo qualcosa della forma “oppure ψ” ottenendo dunque ϕ∨ψ.Si noti che in maniera simile, si potrebbe giungere anche alla conclusione ψ∨ϕ (ab-biamo già dimostrato che ϕ∨ψ ∼= ψ∨ϕ, ma le due formule sono oggetti sintattici di-versi. Poiché in questa sezione siamo tornati al lavorare con la sintassi pura, dobbiamospecificare entrambi i casi). Dunque abbiamo due possibili regole di introduzione:

Γ····ϕ

I∨Sxϕ∨ψ

Γ····ψ

I∨Dxϕ∨ψ

Per trovare un possibile candidato per la regola di eliminazione del ∨ bisogna pensarea come utilizziamo nella pratica matematica una formula del tipo ϕ∨ψ. Un possibileuso si ha nel ragionamento per casi. Infatti, sapere che ϕ∨ψ è vera equivale a dire chei casi in cui è vera ϕ insieme a quelli in cui è vera ψ esauriscono tutti i casi possibili.Possiamo dunque utilizzare una formula ϕ∨ψ ragionando come segue: se da ϕ sipuò dedurre una formula χ e se da dalla formula ψ si può dedurre la stessa formulaχ, ciò vuol dire che χ vale in tutti i casi possibili e dunque è vera senza assumere né ϕné ψ. Rappresentiamo questo ragionamento in simboli come segue:

Γ····

ϕ∨ψ

Γ, [ϕ]1

····χ

Γ, [ψ]1

····χ

E∨1χ

Le ipotesiϕ eψ sono state scaricate poiché non sono necessarie a dimostrare χ. Si pensia una dimostrazione che si divide in due casi: n pari o n dispari; tali assunzioni nonvengono citate nell’enunciato del teorema, poiché si è fatto vedere che in qualunquecaso la tesi è comunque vera e tali casi esauriscono tutti quelli possibili.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

2.6 deduzione naturale 23

2.6.0.4 Negazione

Discutiamo infine la negazione. Ciò che è da tenere a mente è che la negazione ¬ϕ

può essere pensata come ϕ→ ⊥. Dunque, per introdurre una negazione basta dedurreun assurdo a partire da ipotesi in Γ ∪ {ϕ}, a quel punto si può scaricare l’ipotesi ϕ ededurre ¬ϕ.

Γ, [ϕ]1

····⊥

I¬1¬ϕ

Tale modo di ragionare assomiglia molto al ragionamento per assurdo, ma non è lo stessopoiché questo modo di ragionare è costruttivo, mentre il ragionamento per assurdonon lo è.

Per eliminare una negazione si può congiungere questa con una dimostrazione delsuo opposto e raggiungere un assurdo:

Γ····ϕ

Γ ′····¬ϕ

E¬ ⊥

Infine un’ultima regola essenziale per poter dimostrare tutto ciò che è logicamentevalido nella logica proposizionale è la seguente che schematizza il ragionamento perassurdo.

Γ, [¬ϕ]1

····⊥

RA1ϕ

Per comodità del lettore riassumiamo tutte le regole di deduzione nella tabella 2.Siamo pronti per dare una definizione formale di “dimostrazione”. Chiameremo

questi oggetti matematici derivazioni o deduzioni per poter continuare a usare senzaconfusione il termine dimostrazione per riferirci a quelle fatte nel meta-linguaggio. Lastruttura delle derivazione è una struttura ad albero. Al fine di rendere più brevile dimostrazioni, diamo una definizione succinta di derivazione utilizzando solo leregole per ∧ e ¬; lasciamo come esercizio la dimostrazione del fatto che tutte le altreregole di deduzione fin qui introdotte possono essere pensate come abbreviazioni perdeduzioni più lunghe che utilizzino solo i connettivi ∧ e ¬.

Definizione 2.45. L’insieme delle derivazioni è definito ricorsivamente come il piùpiccolo insieme chiuso rispetto alle seguenti regole.

1. Ogni formula proposizionale ϕ è una derivazione, le cui ipotesi e conclusionecoincidono con ϕ.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

24 sintassi e semantica della logica proposizionale .

Γ····ϕ

Γ ′····ψ

I∧ϕ∧ψ

Γ····

ϕ∧ψE∧Sx

ϕ

Γ····

ϕ∧ψE∧Dx

ψ

Γ····ϕ

I∨Sxϕ∨ψ

Γ····ψ

I∨Dxϕ∨ψ

Γ····

ϕ∨ψ

Γ, [ϕ]1

····χ

Γ, [ψ]1

····χ

E∨1χ

Γ····ϕ

Γ ′····

ϕ→ ψE→

ψ

Γ, [ϕ]1

····ψ

I→1ϕ→ ψ

Γ, [ϕ]1

····⊥

I¬1¬ϕ

Γ, [¬ϕ]1

····⊥

RA1ϕ

Γ····ϕ

Γ ′····¬ϕ

E¬ ⊥

[ψ]1

····ϕ

[ϕ]1

····ψ

E↔ϕ↔ ψ

Γ····ψ

Γ ′····

ϕ↔ ψE↔

ϕ

Γ····ϕ

Γ ′····

ϕ↔ ψE↔

ψ

Tabella 2: Regole della deduzione naturale

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

2.6 deduzione naturale 25

2. Se

Γ····ϕ e

Γ ′····ψ sono derivazioni allora lo è anche

Γ····ϕ

Γ ′····ψ

ϕ∧ψ

3. Se

Γ····

ϕ∧ψ è una derivazione allora lo sono anche

Γ····

ϕ∧ψE∧Sx

ϕ e

Γ····

ϕ∧ψE∧Dx

ψ

4. Se

Γ,ϕ····⊥ è una derivazione allora lo è anche

Γ, [ϕ]1

····⊥

I¬1¬ϕ

5. Se

Γ····ϕ e

Γ ′····¬ϕ sono derivazioni allora lo è anche

Γ····ϕ

Γ ′····¬ϕ

E¬ ⊥

6. Se

Γ,¬ϕ····⊥ è una derivazione, allora lo è anche

Γ, [¬ϕ]1

····⊥

RA1ϕ

Definizione 2.46. Diremo che una formula ϕ è derivabile da Γ se esiste una derivazio-ne con ipotesi (non scaricate) in Γ . In questo caso scriveremo Γ ` ϕ. Se ϕ deriva da uninsieme vuoto di ipotesi (non scaricate) diremo che ϕ è un teorema e scriveremo ` ϕ.

Proposizione 2.47. Le seguenti osservazioni hanno dimostrazioni immediate:

1. Se ϕ ∈ Γ allora Γ ` ϕ.

2. Se Γ ` ϕ e Γ ′ ` ψ allora Γ ∪ Γ ′ ` ϕ∧ψ.

3. Se Γ ∪ Γ ′ ` ϕ∧ψ allora Γ ` ϕ e Γ ′ ` ψ.

4. Se Γ ∪ {ϕ} ` ψ allora Γ ` ϕ→ ψ.

5. Se Γ ` ⊥ allora Γ ` ϕ (per qualsiasi ϕ).

6. Se Γ ∪ {¬ϕ} ` ⊥ allora Γ ` ϕ

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

26 sintassi e semantica della logica proposizionale .

Esercizio 2.48. Produrre derivazioni per i seguenti fatti:

1. ` ϕ→ (ϕ→ ψ),

2. ϕ→ (¬ϕ→ ψ),

3. (ϕ→ ψ)→ ((ψ→ σ)→ (ϕ→ σ),

4. (ϕ→ ψ)↔ (¬ψ→ ¬ϕ),

5. ¬¬ϕ↔ ϕ,

6. ϕ→ (ψ→ χ)↔ (ϕ∧ψ→ χ),

7. ⊥ ↔ (¬ϕ↔ ϕ).

Teorema 2.49 (Teorema di deduzione, versione sintattica). Se ψ e ϕ sono formule e Γ èun insieme di formule allora vale: Γ ∪ {ψ} ` ϕ se, e soltanto se, Γ ` ψ→ ϕ.

Dimostrazione. La dimostrazione è un immediata applicazione delle regole I→ e E→.

2.6.1 Adeguatezza e completezza della deduzione naturale

Come sono collegati tra loro teoremi e tautologie? Da un lato ci aspettiamo che ci siauna derivazione di ϕ da Γ solo se Γ |= ϕ. D’altro canto, sarebbe utile anche sapere se ilviceversa vale: esiste una derivazione di ϕ da Γ se Γ |= ϕ? In questa sezione vedremoche entrambe queste implicazioni valgono. La prima implicazione è molto più facileda provare della seconda.

Teorema 2.50 (Teorema di adeguatezza). Se Γ è un insieme di formule α è una formula taleche Γ ` α, allora Γ |= α.

Dimostrazione. Induzione sulla lunghezza della derivazione Γ ` α .

Per l’altra implicazione abbiamo bisogno di alcuni risultati preliminari.

Definizione 2.51. Un insieme di formule Γ è detto incoerente se Γ ` ⊥, e coerentealtrimenti.

Lemma 2.52. Se Γ è un insieme di formule, le seguenti condizioni sono equivalenti:

(i) Γ non è coerente,

(ii) per ogni formula ϕ si ha Γ ` ϕ.

(iii) esiste una formula ϕ per cui Γ ` ϕ e Γ ` ¬ϕ,

Dimostrazione. L’implicazione (i) → (ii) è un’immediata applicazione di ex falsumquodlibet.

L’implicazione (ii)→ (iii) è banale.L’implicazione (iii) → (i) usa semplicemente la definizione di ⊥ ↔ (p∧ ¬p) e il

fatto che se due formule sono provabili lo è anche la loro congiunzione.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

2.6 deduzione naturale 27

Lemma 2.53. Se un insieme di formule è soddisfacibile allora è coerente.

Lemma 2.54. Se Γ 6` ϕ allora Γ ∪ {¬ϕ} è coerente.

Dimostrazione. Dimostriamo la contronominale. Se Γ ∪ {¬ϕ} è incoerente, abbiamo Γ ∪{¬ϕ} ` ⊥, ma allora segue Γ ` ¬ϕ → ⊥ e in logica proposizionale (¬ϕ → ⊥) ↔(¬¬ϕ)↔ (ϕ). Quindi Γ ` ϕ e il lemma è provato.

Proposizione 2.55. Se Σ è un insieme di formule incoerente allora esiste un sottoinsieme finitoΓ di Σ tale che Γ è incoerente.

Corollario 2.56. Un insieme di formule Γ è coerente, se, e soltanto se, ogni sottoinsieme finitodi Γ è coerente.

Per ottenere il risultato di completezza abbiamo bisogno di un ulteriore definizione.

Definizione 2.57. Un insieme di formule Σ è massimalmente coerente se Σ è coerentema Σ∪ {ϕ} è incoerente per ogni ϕ /∈ Σ.

Esercizio 2.58. Sia v una valutazione. Mostrare che Σ = {ϕ | v(ϕ) = T } è massimal-mente coerente.

Abbiamo bisogno di qualche fatto addizionale sugli insiemi massimalmente coerenti.Le prossime asserzioni sono molto simili a quelle già viste per le teorie massimalmentesoddisfacibili.

Proposizione 2.59. Se Σ è un insieme di formule massimalmente coerente,ϕ è una qualsiasiformula e Σ ` ϕ, allora ϕ ∈ Σ.

Proposizione 2.60. Se Σ è un insieme di formule massimalmente coerente e ϕ è una formula,allora ¬ϕ ∈ Σ se, e soltanto se, ϕ /∈ Σ.

Proposizione 2.61. Se Σ è un insieme di formule massimalmente coerente eϕ,ψ sono formule,allora ϕ→ ψ ∈ Σ se, e soltanto se, ϕ /∈ Σ o ψ ∈ Σ.

Come per il risultato di compattezza della sezione precedente, è cruciale sapereche ogni insieme coerente di formule può essere esteso a un insieme di formulemassimalmente coerente.

Teorema 2.62. Se Γ è un insieme coerente di formule allora esiste un insieme di formulemassimalmente coerente Σ tale che Γ ⊆ Σ.

Lemma 2.63. Ogni insieme coerente può essere esteso a un insieme massimalmente coerente.

Dimostrazione. L’insieme Form è enumerabile, quindi possiamo assumere che le formu-le siano in una sequenza del tipo ϕ1, ϕ2, . . . . Definiamo una sequenza non decrescentedi insiemi, tali che la loro unione sia massimalmente coerente.

Γ0 := Γ,

Γn+1 :=

Γn ∪ {ϕn} se è coerente

Γn altrimenti,

Γ∗ :=⋃

n∈N

Γn

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

28 sintassi e semantica della logica proposizionale .

Γ∗ è coerente, perché lo sono tutti i Γn per costruzione.Γ∗ è massimalmente coerente.

Osservazione 2.64. Ogni insieme Γ massimalmente coerente è chiuso per deduzioni. Inol-tre, per ogni formula ϕ, ϕ ∈ Γ o ¬ϕ ∈ Γ .

Teorema 2.65. Un insieme di formule è coerente se, e soltanto se, è soddisfacibile.

Dimostrazione. Un’implicazione è già stata dimostrata in lemma 2.53. Per l’altra sup-poniamo che Γ sia coerente, allora esiste Γ∗ massimalmente coerente che estende Γ .Definiamo

v(pi) = 1 se, soltanto se, pi ∈ Γ∗

Claim: v(ϕ) = 1 se, soltanto se, ϕ ∈ Γ∗.Dimostrazione del Claim: per induzione sulla lunghezza della formula.

Il teorema 2.65 ci dà l’equivalenza tra ` e |= in maniera leggermente implicita.

Teorema 2.66 (Teorema di Completezza per la logica proposizionale). Se Γ è un insiemedi formule e α è una formula tale che Γ |= α, allora Γ ` α.

Dimostrazione. Dimostriamo la contronominale, cioè Γ 6` α implica Γ 6|= α. Se Γ 6` αallora Γ ∪ {¬α} è coerente. Dunque esiste v tale che v(β) = 1 per ogni β ∈ Γ ∪ {¬α}.Quindi v(γ) = 1 per ogni γ ∈ Γ e v(α) = 0.

2.7 il calcolo dei tableaux .

Verificare che una formula proposizionale ben formata sia una tautologia è un compitoabbastanza semplice, poiché è necessaria solo un po’ di pazienza per scrivere la suatavola di verità e verificare che nell’ultima colonna siano presenti solo 1. Tuttavia lapazienza necessaria potrebbe essere davvero tanta poiché i casi considerati nella tavoladi verità sono 2n dove n è il numero di variabili proposizionali distinte presenti nelladata formula.

In questa breve sezione presenteremo un metodo più efficace per la verifica di tauto-logie. L’algoritmo, che chiameremo Tab costruisce, a partire da una formula, un alberodi possibili valutazioni per quella formula. Partendo dalla negazione della formula da-ta, se un ramo dell’albero dovesse arrivare a conclusione positivamente, otterremmouna valutazione che falsifica la formula data; questa non sarebbe dunque una tauto-logia. Se viceversa l’algoritmo dovesse chiudere tutti i rami negativamente (cioè conqualche contraddizione all’interno di ogni ramo) allora vorrebbe dire che è impossibilefalsificare la formula data o, equivalentemente, che essa è una tautologia.

Il primo passo, data la formula ϕ, è porla falsa, scriveremo dunque:

F(ϕ)

I successivi passi da effettuare nell’algoritmo Tab dipendono, come sempre, dalla formadella formula data.

Se ϕ = ϕ1 ∧ϕ2 allora l’albero si prolunga come segue:

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

2.7 il calcolo dei tableaux . 29

F(ϕ1 ∧ϕ2)

F(ϕ1) F(ϕ2)

Intuitivamente, se vogliamo falsificare ϕ1 ∧ϕ2 basta falsificare o ϕ1 o ϕ2.

Se ϕ = ϕ1 ∨ϕ2 allora l’albero si prolunga come segue:

F(ϕ1 ∨ϕ2)

F(ϕ1)

F(ϕ2)

Intuitivamente, se vogliamo falsificare ϕ1 ∨ϕ2 bisogna falsificare contempora-neamente (cioè sullo stesso ramo) sia ϕ1 che ϕ2.

Se ϕ = ϕ1 → ϕ2 allora l’albero si prolunga come segue:

F(ϕ1 → ϕ2)

V(ϕ1)

F(ϕ2)

Intuitivamente, se vogliamo falsificare ϕ1 → ϕ2 bisogna contemporaneamenteverificare ϕ1 e falsificare ϕ2.

Se ϕ = ¬ϕ1 allora l’albero si prolunga come segue:

F(¬ϕ1)

V(ϕ1)

Intuitivamente, se vogliamo falsificare ¬ϕ1 bisogna verificare ϕ1.

Abbiamo così visto tutti quattro casi possibile per prolungare una foglia F(ϕ). No-tiamo però che facendo questo, si creano dei nodi dove al posto di F c’è V . Dobbiamoquindi descrivere come procede l’algoritmo nel caso il nodo da prolungare si del tipoV(ϕ). Abbiamo di nuovo quattro casi possibili.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

30 sintassi e semantica della logica proposizionale .

Se ϕ = ϕ1 ∧ϕ2 allora l’albero si prolunga come segue:

V(ϕ1 ∧ϕ2)

V(ϕ1)

V(ϕ2)

Intuitivamente, se vogliamo verificare ϕ1 ∧ϕ2 dobbiamo verificare contempora-neamente ϕ1 e ϕ2.

Se ϕ = ϕ1 ∨ϕ2 allora l’albero si prolunga come segue:

V(ϕ1 ∨ϕ2)

V(ϕ1) V(ϕ2)

Intuitivamente, se vogliamo verificare ϕ1∨ϕ2 bisogna verificare almeno uno traϕ1 e ϕ2.

Se ϕ = ϕ1 → ϕ2 allora l’albero si prolunga come segue:

V(ϕ1 → ϕ2)

F(ϕ1) V(ϕ2)

Intuitivamente, se vogliamo verificare ϕ1 → ϕ2 possiamo o falsificare l’ipotesi,cioè ϕ1 o verificare la tesi, cioè ϕ2.

Se ϕ = ¬ϕ1 allora l’albero si prolunga come segue:

V(¬ϕ1)

F(ϕ1)

Intuitivamente, se vogliamo verificare ¬ϕ1 bisogna falsificare ϕ1.

Vediamo ora qualche esempio di utilizzo dell’algoritmo Tab per controllare che unaformula proposizionale sia o no una tautologia.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

2.7 il calcolo dei tableaux . 31

Esempio 2.67. Utilizzando il metodo degli alberi semantici stabiliamo se la seguenteformula è una tautologia:

(A→ (B∨¬A))∧B

Cominciamo ricordando che vogliamo cercare di falsificare la formula, perciò scrivere-mo

F((A→ (B∨¬A))∧B)

Osservando la formula vedremo che stiamo tentando di falsificare una congiunzione diformule composte. Applichiamo quindi la regola corrispondente, prolungando l’alberocome segue:

F((A→ (B∨¬A))∧B)

F(B)

F((A→ (B∨¬A)))

A questo punto il ramo di sinistra è già arrivato a conclusione, poichéé c’è solo unaformula atomica. Al contrario, possiamo proseguire con il ramo di destra, notando chequesta volta si tratta di falsificare una implicazione.

F((A→ (B∨¬A))∧B)

F(B)

F((A→ B∨¬A))

V(A)

F(B∨¬A)

Infine applichiamo la regola per falsificare una disgiunzione.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

32 sintassi e semantica della logica proposizionale .

F((A→ (B∨¬A))∧B)

F(B)

F((A→ B∨¬A))

V(A)

F(B∨¬A)

F(¬A)

F(B)

V(A)

Concludiamo che la formula data inizialmente non è una tautologia, perché i ramisono rimasti aperti. Infatti, come suggerito dall’albero, basta considerare il caso in cuiA è vera e B è falsa per trovare una valutazione che non soddisfa la formula data.

Esempio 2.68. Vediamo un altro esempio.

((A∨B)∧¬A))→ B

F(((A∨B)∧¬A)→ B)

F(B)

V((A∨B)∧¬A)

V(¬A)

V(A∨B)

F(A)

V(B)

=

V(A)

=

È una tautologia perché tutti riami sono chiusi.

Esempio 2.69. Utilizzando il metodo degli alberi semantici controlliamo se la seguenteformula è una tautologia:

(A→ (B∨¬A))∧B

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

2.7 il calcolo dei tableaux . 33

F((A→ (B∨¬A))∧B)

F(B)

F((A→ B∨¬A))

V(A)

F(B∨¬A)

F(¬A)

F(B)

V(A)

Non è una tautologia, perché i rami sono rimasti aperti.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

3A L G E B R E D I B O O L E .

In questo capitolo intraprendiamo un ulteriore studio dei connettivi, seguendo questavolta un approccio assiomatico. Cerchiamo quindi di trovare un piccolo numero diproprietà dei connettivi che li caratterizzino completamente.

3.1 ordini parziali e reticolari

Osservando le proprietà dell’implicazione si vede facilmente che valgono una sorta dirilfessività e transitività. Relazioni con queste proprietà sono già note in matematica eprendono il nome di preordini.

Dato un insieme X intuitivamente pensiamo a una relazione n-aria su di esso comeuna legge che lega una n-upla di elementi di X. Una definizione più formale è laseguente.

Definizione 3.1. Dato un insieme X, si dice relazione n-aria su X un qualunque sot-toinsieme R ⊆ Xn. Se n = 2, diremo che x ∈ X è in relazione con y ∈ Y se, e solo se,(x, y) ∈ R e scriveremo alternativamente xRy.

Definizione 3.2. Dato un insieme X, una relazione binaria ρ ⊆ X× X è un preordinese è una relazione riflessiva e transitiva. La coppia 〈X, ρ〉 si dirà insieme preordinato.

Alcuni preordini, svolgono un ruolo fondamentale in Matematica e in Logica; sonoi preordini in cui vale l’anti-simmetria.

Definizione 3.3. Una relazione d’ordine (parziale) su X è una relazione binaria, indi-cata con 6, che soddisfa le seguenti proprietà:

1. riflessività: ∀x ∈ X, x 6 x;

2. anti-simmetria: ∀x, y ∈ X, se x 6 y e y 6 x allora x = y;

3. transitività: ∀x, y, z ∈ X, se x 6 y e y 6 z allora x 6 z.

La coppia 〈X,6〉 è detta insieme parzialmente ordinato.La relazione 6 si dirà di ordine totale (equivalentemente, diremo che X è una catena

o X è totalmente ordinato) se per ogni coppia di elementi x, y ∈ X si ha x 6 y oppurey 6 x.

Esempio 3.4. 1. Gli insiemi numerici N,Z,Q,R sono totalmente ordinati dal loroordine naturale.

2. Sia A insieme non vuoto. L’insieme delle parti di A è parzialmente ordinato dallarelazione di inclusione ⊆. In altre parole, 〈℘(A),⊆〉 è ordine parziale.

35

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

36 algebre di boole .

3. La relazione di divisibilità su N è una relazione di ordine parziale, dove xRy se,e solo se, x | y (x divide y).

4. La relazione di divisibilità su Z non è un ordine parziale. In particolare, non èantisimmetrica: infatti, ad esempio, 5 | −5 e −5 | 5 ma 5 6= −5.

È sempre possibile passare da un preordine a un ordine parziale in maniera canoni-ca.

Proposizione 3.5. Sia 〈X, ρ〉 un insieme preordinato. La relazione ρ induce una relazionedi equivalenza ∼ρ tale che l’insieme quoziente X/ ∼ρ risulta essere un insieme parzialmenteordinato dalla seguente relazione: [x] 6 [y] se, e solo se, (x, y) ∈ ρ.

Dimostrazione. Per ogni x, y ∈ X, sia x ∼ρ y se, e solo se, (x, y) ∈ ρ e (y, x) ∈ ρ.Vediamo che ∼ρ è una relazione di equivalenza. La relazione è riflessiva e transitivaper la riflessività e transitività di ρ. La simmetria di ∼ρ segue immediatamente dalladefinizione, infatti si ha x ∼ρ y se, e solo se, (x, y) ∈ ρ e (y, x) ∈ ρ se, e solo se, (y, x) ∈ ρe (x, y) ∈ ρ se, e solo se, y ∼ρ x.

Possiamo quindi considerare l’insieme quoziente X/ ∼ρ e definire la relazione

[x] 6 [y] se, e solo se, (x, y) ∈ ρ.

Verifichiamo che la definizione è ben posta. Sia [x] 6 [y] e siano x ′ ∈ [x] e y ′ ∈ [y].Allora x ′ ∼ρ x e y ′ ∼ρ y, quindi (x, y) ∈ ρ, (x ′, x) ∈ ρ e (y, y ′) ∈ ρ. Per la transitività diρ segue che (x ′, y ′) ∈ ρ e di conseguenza [x ′] 6 [y ′].

La verifica che 6 è un ordine parziale è lasciata al lettore.

Notazione. Utilizzeremo il simbolo di ordine stretto < per abbreviare "x 6 y e x 6= y".

Nel caso di insiemi parzialmente ordinati e finiti è possibile rappresentare grafica-mente l’ordine tramite linee che indicano che l’elemento in basso è minore dell’elemen-to più in alto (diagrammi di Hasse). Si assume tacitamente la riflessività e transitivitàdi tali collegamenti.

Esempio 3.6. Sia X = {a, b, c, d, e}, ordinato nel seguente modo: a 6 b, c, d 6 e, doveb, c, d non sono confrontabili. Sia Y = {x, y, z,w, t}, ordinato nel seguente modo: w, t 6z 6 x, y dove le coppie w, t e x, y non sono confrontabili. Le rappresentazioni grafichedi 〈X,6〉 e 〈Y,6〉 sono in fig. 1.

e

b dc

a

x y

z

w t

Figura 1: A sinistra l’insieme ordinato 〈X,6〉 e a destra 〈Y,6〉

Sia W = {a, b, c, d, e}, ordinato nel seguente modo: e > d > c > b > a. Sia Z =

{x, y, z, t,w}, ordinato nel seguente modo: x > y > z e t > w con i primi tre elementiincomparabili con i secondi. Le rappresentazioni grafiche di 〈W,6〉 e 〈Z,6〉 sono infig. 2.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

3.1 ordini parziali e reticolari 37

e

d

c

b

a

x

y

z

t

w

Figura 2: A sinistra l’insieme ordinato 〈W,6〉 e a destra 〈Z,6〉

Per poter individuare le proprietà fondamentali dei connettivi ∧ e ∨ è utile ricordarealcune definizioni nell’ambito delle relazioni d’ordine.

Definizione 3.7. Sia 〈X,6〉 un insieme parzialmente ordinato. Diremo che:

• a ∈ X è elemento massimale se a 6 b per qualche b ∈ X implica a = b.

• a ∈ X è elemento minimale se b 6 a per qualche b ∈ X implica a = b.

• a ∈ X è massimo se x 6 a per ogni x ∈ X.

• a ∈ X è minimo se a 6 x per ogni x ∈ X.

Osservazione 3.8. Massimo e minimo, quando esistono, sono unici e verranno indicatirispettivamente con 1 e 0, oppure > e ⊥. In generale, il massimo e il minimo nonesistono sempre, ad esempio 〈N,6〉 non ha massimo.

Esempio 3.9. Nell’insieme X dell’esempio 3.6 il massimo è e mentre il minimo è a.Nell’insieme Y abbiamo due elementi massimali (x e y) e due elementi minimali (w ez), ma nessun massimo o minimo.

Definizione 3.10. Sia 〈X,6〉 un insieme parzialmente ordinato e sia A ⊆ X. Diremoche:

• x ∈ X è un maggiorante per A se a 6 x per ogni a ∈ A;

• x ∈ X è un minorante per A se x 6 a per ogni a ∈ A;

• x ∈ X è supremo per A, e scriveremo x = sup(A), se è il minimo maggiorante. Inaltre parole, se a 6 x per ogni a ∈ A e per ogni altro y ∈ X tale che a 6 y, si hax 6 y;

• x ∈ X è infimo per A, e scriveremo x = inf(A), se è il massimo minorante. Inaltre parole, se x 6 a per ogni a ∈ A e per ogni altro y ∈ X tale che y 6 a, si hay 6 x.

Osservazione 3.11. Si dimostra facilmente, usando la anti-simmetria dell’ordine, cheinfimo e supremo sono unici (quando esistono).

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

38 algebre di boole .

Esempio 3.12. Nell’Esempio 3.6 per l’insieme X si ha che sup({b, c, d}) = e, inf({b, c, d}) =a. Per Y si ha inf({x, y}) = z, sup({y, z,w}) = y. Infine, non esiste inf({y, t}) in Z.

Definizione 3.13. Diremo che 〈X,6〉 è limitato se esistono il suo massimo e il suominimo.

Definizione 3.14. Un insieme 〈X,6〉 parzialmente ordinato si dice reticolare se perogni x, y ∈ X esistono inf(x, y) e sup(x, y).

Esercizio 3.15. Dimostrare che ogni ordine totale è un ordine reticolare.

Lemma 3.16. Se 〈X,6〉 è un ordine reticolare e a è un elemento massimale (minimale), alloraa è il massimo (minimo).

Dimostrazione. Sia a massimale. Per ogni x ∈ X consideriamo l’elemento x∨ a, cheesiste poiché X è un reticolo. Si ha che a 6 x∨ a, e quindi, per la massimalità di a,a∨ x = a il che implica che x 6 a per ogni x ∈ X.

Si noti che se un ordine reticolare 〈X,6〉 è finito, allora esistono il massimo e ilminimo di X.

Esempio 3.17. È facile verificare che l’insieme parzialmente ordinato qui sotto a sini-stra è un reticolo, mentre quello a destra non lo è.

a

b d

c

a

b d

Per quanto detto, per ogni coppia di elementi di un insieme reticolarmente ordinatoesistono sempre infimo e supremo. Di conseguenza, ha senso considerarli delle opera-zioni binarie. Nel seguito, useremo la notazione inf(x, y) = x∧ y e sup(x, y) = x∨ y.Vediamo alcune proprietà basilari di infimo e supremo.

Proposizione 3.18. Sia 〈X,6〉 un insieme reticolarmente ordinato. Per ogni x, y, z ∈ X si ha:

1. Commutatività: x∧ y = y∧ x, x∨ y = y∨ x.

2. Idempotenza: x∧ x = x, x∨ x = x.

3. Associatività: x∧ (y∧ z) = (x∧ y)∧ z, x∨ (y∨ z) = (x∨ y)∨ z.

4. Assorbimento: x∧ (x∨ y) = x, x∨ (x∧ y) = x.

5. x∧ y = x se, e solo se, x 6 y se, e solo se, x∨ y = y.

6. Monotonia: se x 6 y, allora x∧ z 6 y∧ z e x∨ z 6 y∨ z.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

3.1 ordini parziali e reticolari 39

Dimostrazione. (1). Segue banalmente dalla definizione, infatti è chiaro che sup(x, y) =sup(y, x) e lo stesso vale per l’infimo.

(2). Sia t = sup(x, x). Per definizione si ha che x 6 t. Poiché x 6 x deve essere t 6 xe quindi x = t. La dimostrazione è analoga per inf(x, x).

(3). Dimostriamo che x ∧ (y ∧ z) = inf({x, y, z}) = (x ∧ y) ∧ z. Vediamo la primauguaglianza, in quanto la seconda è analoga. Sia t = y∧ z e sia w = x∧ t. Si ha w 6 xe w 6 t per la seconda uguaglianza, mentre t 6 y e t 6 z per la prima. Usando latransitività di 6 segue che w 6 x, w 6 y e w 6 z, quindi w è un minorante per {x, y, z}.Sia s un altro minorante e quindi s 6 x, s 6 y e s 6 z. Poiché t = inf(y, z) si ha s 6 t.Di conseguenza s 6 t e s 6 x implicano che s 6 inf(x, t) = w e w = inf({x, y, z}).Analogamente si dimostra che inf({x, y, z}) = (x∧y)∧ z e così segue la associatività di∧. La dimostrazione nel caso di ∨ è analoga ed è lasciata per esercizio al lettore.

(4). Sia t = x∨ y e w = x∧ t. Poiché x 6 x e x 6 t si ha x 6 w. Dall’altro lato si haw 6 x in quanto infimo di x e t. Quindi, per transitività, x = w = x∧ (x∨ y). L’altralegge di assorbimento è analoga e lasciata per esercizio al lettore.

(5). Vediamo che x 6 y se, e solo se, x∧ y = y. Sia x 6 y e sia t = inf(x, y). Si hache x 6 x e x 6 y, che implica x 6 t, e che t 6 x perché infimo di x e y. Quindi x = t.Viceversa, se x∧ y = x, banalmente x 6 y poiché è minore o uguale dell’infimo di{x, y}. L’altra doppia implicazione è analoga.

(6). Sia x 6 y. Per la voce 5 si ha x = x∧ y e y = x∨ y. Consideriamo quindi (x∧z)∧ (y∧ z). Per le proprietà precedenti di associatività, commutatività e idempotenza,(x∧ z)∧ (y∧ z) = (z∧ z)∧ (x∧ y) = z∧ x, quindi x∧ z 6 y∧ z. La dimostrazione per∨ è analoga.

Osservazione 3.19. La dimostrazione della voce 5 si generalizza al caso in cui abbiamo nrelazioni: se x1 6 y1, . . . , xn 6 yn allora x1∧ · · ·∧ xn 6 y1∧ · · ·∧yn e x1∨ · · ·∨ xn 6y1 ∨ · · ·∨ yn.

Anticipiamo ora un caso particolare del concetto di struttura che vedremo nell’am-bito della logica del prim’ordine. Un’algebra è una struttura matematica data da uninsieme con delle operazioni definite su di esso. A ogni (simbolo di) operazione è as-sociato un numero naturale, detto arietà, che specifica il numero di argomenti di quel-l’operazione. L’insieme delle operazioni con le loro rispettive arietà è detto segnatura.

Esempio 3.20. 1. La segnatura dei semigruppi è 〈+2〉.

2. La segnatura dei i gruppi è 〈+2,−1, 0〉.

3. La segnatura degli anelli è 〈+2, ·2,−1, 0, 1〉.

4. La segnatura dei reticoli è 〈∧2,∨2〉.Quando le arietà delle operazioni è chiara dal contesto è consueto ometterla. La

motivazione per introdurre i reticoli come strutture algebriche risiede nel seguenteteorema.

Definizione 3.21. Un reticolo è un’algebra (X,∧2,∨2) in cui entrambe le operazionisono associative, commutative e verificano le due proprietà di assorbimento (x∧ (x∨

y) = x, x∨ (x∧ y) = x).

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

40 algebre di boole .

Lemma 3.22. Se (X,∧2,∨2) è un reticolo allora le operazioni ∧ e ∨ sono idempotenti.

Dimostrazione. Per le leggi di assorbimento possiamo scrivere x = x∨ (x∧ x) e x =

x∧ (x∨ (x∧ x)). Quindi, sostituendo la prima uguaglianza nella seconda, x = x∧ x.Analogamente, x = x∧ (x∨ x) e x = x∨ (x∧ (x∨ x) e di conseguenza x = x∨ x.

Teorema 3.23. Ogni reticolo (X,∧,∨) risulta reticolarmente ordinato dalla seguente relazione:

x 6 y⇔ x∧ y = x⇔ x∨ y = y.

Inoltre l’infimo e il supremo rispetto a questo ordine sono rispettivamente ∧ e ∨.

Dimostrazione. Verifichiamo inizialmente che x∧ y = x se, e solo se, x∨ y = y, ciòsemplificherà la dimostrazione più avanti. Infatti, se x∧ y = x, si ha che x∨ y = (x∧

y)∨y = y per l’assorbimento. Dall’altro lato, se x∨y = y, si ha x∧y = x∧ (x∨y) = x,ancora per la legge di assorbimento.

Dimostriamo ora che la relazione così definita è un ordine reticolare. Vediamo pri-ma di tutto che è un ordine parziale. Si vede facilmente che la riflessività di 6 seguedall’idempotenza di ∧, la anti-simmetria di 6 segue dalla commutatività di ∧, mentrela transitività di 6 segue dall’associatività di ∧. Vediamo che infimo e supremo esisto-no per ogni coppia di elementi e sono proprio dati dalle due operazioni. In simboli,vediamo che sup(x, y) = x∧ y e inf(x, y) = x∧ y.

Verifichiamo che x∧ y è un minorante per {x, y}. Infatti, (x∧ y)∧ x = (y∧ x)∧ x =

y∧ (x∧ x) = y∧ x = x∧ y, che implica x∧ y 6 x. Analogamente (x∧ y)∧ y = x∧ y

e x ∧ y 6 y. Sia ora w un altro minorante per {x, y}. Di conseguenza si ha w 6 x

e w 6 y, che per definizione dell’ordine diventa w ∧ y = w e w ∧ x = w. Allora,w∧ (x∧ y) = (w∧ x)∧ y = w∧ y = w, che implica w 6 x∧ y. Quindi x∧ y è ilmassimo minorante (cioè l’infimo) per {x, y}.

La dimostrazione che x∨ y = sup(x, y) è analoga, usando il fatto che x∨ y = y se, esolo se, x∧ y = x.

Definizione 3.24. Un reticolo 〈X,∧,∨〉 si dice distributivo se x∧ (y∨ z) = (x∧ y)∨

(x∧ z) per ogni x, y, z ∈ X.

Lemma 3.25. In ogni reticolo X, per ogni x, y, x ∈ X le seguenti sono equivalenti

1. x∧ (y∨ z) = (x∧ y)∨ (x∧ z),

2. x∨ (y∧ z) = (x∨ y)∧ (x∨ z).

Dimostrazione. Voce 1 implica voce 2:

(x∨ y)∧ (x∨ z) = ((x∨ y)∧ x)∨ ((x∨ y)∧ z) = x∨ ((x∨ y)∧ z) =

= x∨ ((x∧ z)∨ (y∧ z)) = (x∨ (x∧ z))∨ (y∧ z) =

= x∨ (y∧ z).

Voce 2 implica voce 1:

(x∧ y)∨ (x∧ z) = ((x∧ y)∨ x)∧ ((x∧ y)∨ z) = x∧ ((x∧ y)∨ z) =

= x∧ ((x∨ z)∧ (y∨ z)) = (x∧ (x∨ z))∧ (y∨ z) =

= x∧ (y∨ z).

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

3.2 algebre di boole 41

Nei reticoli distributivi vale una sorta di cancellatività:

Lemma 3.26. Sia (X,∧,∨) un reticolo distributivo. Se x∧ y = x∧ z e x∨ y = x∨ z, alloray = z.

Dimostrazione. Si ha y = y∧ (y∨ x) = y∧ (x∨ z) = (y∧ x)∨ (y∧ z) = (z∧ x)∨ (y∧

z) = z∧ (x∨ y) = z∧ (x∨ z) = z.

Definizione 3.27. Un reticolo limitato 〈X,∧,∨〉 si dice complementato se per ognix ∈ X esiste y ∈ X tale che x∨ y = 1 e x∧ y = 0, dove 0 e 1 sono il minimo e ilmassimo del reticolo. L’elemento y è detto complemento di x.

Lemma 3.28. Sia 〈X,∧,∨〉 un reticolo limitato, complementato e distributivo. Allora il com-plemento di ogni elemento è unico.

Dimostrazione. Sia x ∈ X e supponiamo che y, z siano due complementi di x, cioèx∧ y = 0 = x∧ z e x∨ y = 1 = x∨ z allora per il lemma 3.26, si ha y = z.

3.2 algebre di boole

Definizione 3.29. Un’algebra di Boole è un reticolo complementato, limitato e distri-butivo. Alternativamente, possiamo definire un’algebra di Boole come una strutturadel tipo 〈A,∧2,∨2,¬1, 0, 1〉, che soddisfi i seguenti assiomi:

(x∨ y)∨ z = x∨ (y∨ z) e (x∧ y)∧ z = x∧ (y∧ z), (BA1)

x∨ y = y∨ x e x∧ y = y∧ x, (BA2)

(x∧ y)∨ y = y e (x∨ y)∧ y = y, (BA3)

(x∨ y)∧ z = (x∧ z)∨ (y∧ z) e (x∧ y)∨ z = (x∨ z)∧ (y∨ z), (BA4)

x∧¬x = 0 e x∨¬x = 1 (BA5)

Osserviamo che da BA1, BA2, BA3 e Teorema 3.23 segue l’idempotenza di ∨ e ∧. Diconseguenza, usando BA5 e BA1 si ha x∨ 1 = 1 e x∧ 0 = 0 per ogni x ∈ A.

Esempio 3.30. Forniamo qui sotto alcuni esempi di algebre di Boole. Il primo e ilsecondo si riveleranno importantissimi.

1. Se S è un insieme, allora 〈℘(S),∩,∪, c, ∅, S〉 è un algebra di Boole, dove Ac =

S \A, per ogni A ∈ ℘(S).

2. L’algebra 〈{0, 1},min,max, 1− x, 0, 1〉 è un algebra di Boole.

3. Scambiando le operazioni ∧ e ∨ in un’algebra di Boole si ottiene un’altra algebradi Boole. In altre parole se 〈A,∧,∨,¬, 0, 1〉 è un’algebra di Boole, allora anche〈A,∨,∧,¬, 1, 0〉 lo è.

4. Sia m > 1 un intero e sia A l’insieme dei divisori di m (incluso 1). Definiamo perogni a, b ∈ A

a∧ b := MCD{a, b}

a∨ b := mcm{a, b}

¬a := m/a.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

42 algebre di boole .

Se m non è divisibile per il quadrato di nessun numero diverso da 1, allora A èun’algebra di Boole. Infatti in questo caso c’è una corrispondenza biunivoca tradivisori di m e i sottoinsiemi dei numeri primi che dividono m.

5. Il reticolo X = {a, b, c, d} dato da

a

b d

c

è un’algebra di Boole dove 1 = a, 0 = b, ¬b = d e ¬d = b.

Osservazione 3.31. Segue dal Teorema 3.23 che ogni algebra di Boole ha un ordineparziale naturale, definito da

a 6 b se, e soltanto se, a∨ b = b o, equivalentemente se, e soltanto se, a∧ b = a.

In quest’ordine 0 è sempre il più piccolo elemento dell’algebra e 1 è il più grande.

Vediamo alcune proprietà basilari che valgono in ogni algebra di Boole.

Proposizione 3.32. Sia B = 〈B,∧,∨,¬, 0, 1〉 un’algebra di Boole. Per ogni x, y ∈ B si ha:

1. 0 = ¬1, 1 = ¬0;

2. ¬(¬x) = x (legge della doppia negazione);

3. x = y se, e solo se, ¬x = ¬y

4. ¬(x∨ y) = ¬x∧¬y , ¬(x∧ y) = ¬x∨¬y (leggi di De Morgan);

5. x 6 y se, e solo se, ¬y 6 ¬x;

6. x 6 y se, e solo se, x∧¬y = 0 se, e solo se, ¬x∨ y = 1.

Dimostrazione. (1). Segue dal fatto che il complemento è unico e dall’osservazione che,poiché 0 6 x 6 1 per ogni elemento dell’algebra, si ha che 0∨ 1 = 1 e 0∧ 1 = 0.

(2). Per definizione di complemento e commutatività delle operazioni è facile ve-rificare che ¬x∨ x = 1 = ¬x∨ ¬(¬x) e ¬x∧ x = 0 = ¬x∧ ¬(¬x). Per l’unicità delcomplemento, lemma 3.28, si ha x = ¬(¬x).

(3). Segue immediatamente dall’unicità del complemento e dalla voce 2.(4). Verifichiamo che (x∨ y)∧ (¬x∧¬y) = 0 e (x∨ y)∨ (¬x∧¬y) = 1. Si ha

(x∨ y)∧ (¬x∧¬y) = ((x∨ y)∧¬x)∧¬y =

= ((x∧¬x)∨ (y∧¬x))∧¬y = (0∨ (y∧¬x))∧¬y =

= (y∧¬x)∧¬y = (y∧¬y)∧¬x = 0∧¬x = 0.

(x∨ y)∨ (¬x∧¬y) = x∨ (y∨ (¬x∧¬y)) =

= x∨ ((y∨¬x)∧ (y∨¬y)) = x∨ ((y∨¬x)∧ 1) =

= x∨ (y∨¬x) = (x∨¬x)∨ y = 1∨ y = 1.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

3.2 algebre di boole 43

La dimostrazione dell’altra legge è analoga.(5). Si ha x 6 y se, e solo se, x∨ y = y se, e solo se, ¬(x∨ y) = ¬y se, e solo se,

¬x∧¬y = ¬y se, e solo se, ¬y 6 ¬x.(6). Se x 6 y, allora y = x∨ y. Quindi 0 = y∧¬y = (x∨ y)∧¬y = (x∧¬y)∨ (y∧

¬y) = (x∧¬y)∨ 0 = x∧¬y. Viceversa, se x∧¬y = 0, y = y∨ 0 = y∨ (x∧¬y) =

(y∨x)∧ (y∨¬y) = (y∨x)∧1 = y∨x. La seconda parte segue dal fatto che x∧¬y = 0

se, e solo se, ¬(x∧¬y) = ¬0.

Osserviamo che la caratterizzazione dell’ordine alla 6 ed di fondamentale importan-za e verrà sistematicamente usata nel resto del capitolo.

Il prossimo esempio illustra una prima connessione tra le algebre di Boole e il calcoloproposizionale.

Esempio 3.33. L’insieme Form della definizione 2.2 può essere dotato naturalmente dioperazioni simili a quelle delle algebre di Boole:

• ϕ∧Form ψ = ϕ∧ψ,

• ϕ∨Form ψ = ϕ∨ψ,

• ¬Formϕ = ¬ϕ.

L’algebra 〈Form,∧Form,∨Form,¬Form,⊥,>〉 è detta l’algebra assolutamente libera per illinguaggio 〈∧2,∨2,¬1, 0, 1〉. L’algebra 〈Form,∧Form,∨Form,¬Form,⊥,>〉 non è però un’al-gebra di Boole. Per esempio l’equazione ϕ∧Form ψ = ψ∧Form ϕ non è valida in Form,perché le formule ϕ∧Form ψ e ψ∧Form ϕ sono sintatticamente diverse!

Per ottenere un’algebra di Boole a partire da 〈Form,∧Form,∨Form,¬Form,⊥,>〉 è neces-sario considerare il quoziente rispetto alla relazione ≡ che sussiste tra due formule se,e soltanto se, esse sono logicamente equivalenti. Questo porterà al concetto di algebradi Lindenbaum-Tarski, vedi Teorema 3.93 e definizioni precedenti.

Esercizio 3.34. Dimostrare che ≡, definita come nella definizione 2.15, è una relazionedi equivalenza su Form.

Notazione. Seguendo il parallelo con la logica proposizionale, data una qualsiasialgebra di Boole, ha senso definire le operazioni:

x→ y := ¬x∨ y,

x↔ y := (x→ y)∧ (y→ x).

Sia Var : = {x, y, z, . . . x1, x2, . . . } un insieme numerabile di simboli, che chiamere-mo variabili individuali. Le operazioni fondamentali in un’algebra di Boole sono∨,∧,¬, 0, 1, ma abbiamo visto che se ne possono costruire altre (es.→).

Definizione 3.35. Definiamo l’insieme Term dei termini (o funzioni definibili) inanalogia con Form:

• ogni elemento di Var appartiene a Term,

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

44 algebre di boole .

• se t ∈ Term, allora anche (¬t) ∈ Term,

• se t, s ∈ Term, allora anche

– (t∧ s) ∈ Term,

– (t∨ s) ∈ Term,

Scriveremo t(x1, ..., xn) per evidenziare il fatto che le variabili individuali in t sonocomprese tra le variabili x1, . . . , xn.

Definizione 3.36. SeA = 〈A,∧,∨,¬, 0, 1〉 è un algebra di Boole1, definiamo un’interpretazionein A come una funzione e : Var→ A. In analogia con le valutazioni, un’interpretazionee si estende univocamente a una funzione e : Term→ A come segue: per ogni t ∈ Term

• se t ∈ Var allora e(t) = e(t),

• se t = (t1 ∧ t2) allora e(t) = (e(t1)∧e(t2),

• se t = (t1 ∨ t2) allora e(t) = (e(t1)∨e(t2),

• se t = (¬t1) allora e(t) = ¬e(t1).

Quando l’interpretazione è chiara dal contesto, scriveremo tA per indicare l’interpre-tazione del termine t in A.

Definizione 3.37. Un’equazione nel linguaggio delle algebre di Boole è una coppiadi termini (s, t). Per rendere più chiara la lettura indicheremo un’equazione (s, t) cons ≈ t.

Una interpretazione e : Var→ A, verifica un’equazione s(x1, . . . , xn) ≈ t(x1, . . . , xn),se l’identità

sA(e(x1), . . . , e(xn)) = tA(e(x1), . . . , e(xn))

è vera in A.L’equazione s(x1, . . . , xn) ≈ t(x1, . . . , xn) è valida (o è verificata) in A ogni in-

terpretazione e a valori in A verifica l’equazione. Cioè, se per ogni e : Var → A,l’uguaglianza

sA(e(x1), . . . , e(xn)) = tA(e(x1), . . . , e(xn))

vale in A. Per indicare ciò useremo il simbolo |=BA, in altre parole se l’equaziones(x1, . . . , xn) ≈ t(x1, . . . , xn) è valida in A scriveremo

A |=BA s(x1, . . . , xn) ≈ t(x1, . . . , xn).

Se Γ è un insieme di equazioni, scriveremo

Γ |=BA s(x1, . . . , xn) ≈ t(x1, . . . , xn)

se per ogni algebra di Boole A, ogni interpretazione in A che rende valide tutte leequazioni in Γ , rende valida anche s(x1, . . . , xn) ≈ t(x1, . . . , xn).

1 In questo caso, i simboli sottolineati sono le vere e proprie operazioni in A, mentre quelli non sottolineatisono i simboli di operazione in Term. La distinzione è utile per capire come e si estende a e.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

3.2 algebre di boole 45

3.2.1 Omomorfismi, kernel e quozienti

La maggior parte delle informazioni riguardanti un’algebra di Boole possono essereottenute studiando le “deformazioni” dell’algebra. Ovviamente la nozione di defor-mazione a cui siamo interessati è quella che preserva la struttura di algebra di Boole,cioè le sue operazioni.

Definizione 3.38. Siano A e B due algebre di Boole. Un omomorfismo di algebre diBoole è una funzione f : A→ B tale che ∀a, b ∈ A:

f(a∧ b) = f(a)∧ f(b)

f(a∨ b) = f(a)∨ f(b)

f(¬a) = ¬f(a).

Osservazione 3.39. Le tre condizioni date nella definizione di omomorfismo implicanoche f(1) = 1 e f(0) = 0. Infatti si ha f(1) = f(a∨¬a) = f(a)∨¬f(a) = 1 e analogamenteper 0.

Un omomorfismo iniettivo è detto monomorfismo, un omomorfismo suriettivo èdetto epimorfismo e un omomorfismo biettivo è detto isomorfismo.

Esempio 3.40. La funzione descritta dal seguente diagramma

a=1

b c

d=0

1

0

è un epimorfismo, verifichiamo ad esempio le seguenti condizioni:

b∧ c = 0 e f(b∧ c) = 0 = 1∧ 0 = f(b)∧ f(c).

Mentre,

a=1

b c

d=0

1

0

non è un omomorfismo, perché

b∧ c = 0 ma f(b)∧ f(c) = 1∧ 1 = 1

Esempio 3.41. Sia S un insieme non vuoto e 〈℘(S),∩,∪, c, ∅, S〉 l’algebra di Booleassociata. Fissato s ∈ S, definiamo per ogni X ∈ ℘(S)

χs(X) :=

1 se s ∈ X0 se s 6∈ X.

Allora χs è un omomorfismo da ℘(S) in {0, 1}.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

46 algebre di boole .

La seguente proposizione mostra che un omomorfismo, oltre alle operazioni, preser-va anche l’ordine.

Proposizione 3.42. Siano A e B due algebre di Boole e f : A → B un omomorfismo tra esse.Per ogni x, y ∈ A, se x 6 y allora f(x) 6 f(y).

Dimostrazione. Poiché x 6 y se, e solo se, x∧ y = x, abbiamo che f(x) = f(x∧ y) =

f(x)∧ f(y) e quindi f(x) 6 f(y).

Sebbene le funzioni siano oggetti fondamentali in matematica, a volte è più sem-plice ragionare su un sottoinsieme di A2 piuttosto che su una funzione f : A → B.Sorprendentemente, se la funzione oggetto di studio è un epimorfismo ciò è possibile.Vedremo adesso che a ogni epimorfismo f : A→ B è associabile un sottoinsieme di A2

che permette di ricostruire interamente f. I sottoinsiemi di A2 che corrispondono inquesto senso a epimorfismi sono detti congruenze.

Definizione 3.43. In ogni algebra, una congruenza è una relazione di equivalenzacompatibile con le operazioni. Nel caso di un’algebra di Boole B = 〈B,∧,∨,¬, 0, 1〉una congruenza è una relazione di equivalenza ∼ (riflessiva, simmetrica e transitiva)tale che, per ogni x1, x2, y1, y2 ∈ B, se x1 ∼ x2 e y1 ∼ y2 allora

1. x1 ∧ y1 ∼ x2 ∧ y2,

2. x1 ∨ y1 ∼ x2 ∨ y2,

3. ¬x1 ∼ ¬x2.

Esercizio 3.44. Dimostrare che la relazione d’equivalenza ≡ dell’esercizio 3.34 è in real-tà una congruenza per l’algebra assolutamente libera 〈Form,∧Form,∨Form,¬Form,⊥,>〉.

Definizione 3.45. Data un’algebra di BooleA, una congruenza ∼ suA induce una strut-tura quoziente, quindi una algebra di Boole, sull’insieme delle classi di equivalenzain A/ ∼ definita come segue:

• 1 := [1]∼,

• 0 := [0]∼,

• [a]∼ ∧ [b]∼ := [a∧ b]∼,

• [a]∼ ∨ [b]∼ := [a∨ b]∼,

• ¬[a]∼ := [¬a]∼.

Esercizio 3.46. Dimostrare che le operazioni definite qui sopra sono ben poste.

Dunque, se A è una qualsiasi algebra di Boole, ogni congruenza ∼ su A induce unepimorfismo da A in A/ ∼, detto epimorfismo canonico e dato da

π∼(a) := [a]∼.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

3.2 algebre di boole 47

[a1]∼

[a2]∼

[a3]∼

[a4]∼ [a5]∼

Esercizio 3.47. Dimostrare che la funzione π∼ è un epimorfismo di algebre di Boole.

Viceversa, ogni epimorfismo induce una congruenza, come segue.

Definizione 3.48. Sia f : A → B un epimorfismo di algebre di Boole. Definiamo laseguente relazione su A

a ≡f b se, soltanto se, f(a) = f(b).

Proposizione 3.49. La relazione definita in definizione 3.48 è una congruenza.

Dimostrazione. Cominciamo con il verificare che ≡f è una relazione di equivalenza. Lariflessività è la simmetria sono immediate. Per verificare la transitività siano a, b, c ∈ Atali che f(a) = f(b) e f(b) = f(c), allora segue immediatamente che f(a) = f(c) e quindia ≡f c. Mostriamo ora che ≡f è compatibile con le operazioni booleane, vediamo soloil caso di ∧ poiché gli altri sono molto simili. Siano a1, b1, a2, b2 ∈ A tali che a1 ≡f a2e b1 ≡f b2. Quindi si ha f(a1) = f(a2) e f(b1) = f(b2). Poiché f è un omomorfismo siha f(a1∧b1) = f(a1)∧ f(b1) e per quanto detto prima f(a1)∧ f(b1) = f(a2)∧ f(b2) =f(a2 ∧ b2), dunque (a1 ∧ b1) ≡f a2 ∧ b2.

Inoltre, le corrispondenze f 7→≡f e ∼ 7→ π∼ sono l’una l’inversa dell’altra. In altreparole si hanno i seguenti due risultati

Lemma 3.50. Sia ∼ una congruenza su A. Per ogni a, b ∈ A si ha a ∼ b se, e soltanto se,a ≡π∼

b.

Dimostrazione. Si ha che a ∼ b se, e soltanto se, [a]∼ = [b]∼, per definizione ciò èequivalente a π∼(a) = π∼(b). Infine, ancora per definizione, quest’ultima condizione èequivalente a a ≡π∼

b.

Lemma 3.51. Siaϕ : A→ B un epimorfismo. La funzione ι : A/ ≡f→ B definita da ι([a]≡f) :=f(a) è un isomorfismo e per ogni a ∈ A si ha f(a) = ι((π≡f(a)) (cioè π≡f e f sono uguali ameno di un isomorfismo).

Dimostrazione. Innanzitutto verifichiamo che ι è un isomorfismo. La funzione ι è bendefinita: se a ≡f b, per la definizione di ≡f si ha f(a) = f(b) quindi ι([a]≡f) = ι([b]≡f).Viceversa, se ι([a]≡f) = ι([b]≡f), allora f(a) = f(b) quindi [a]≡f = [b]≡f e dunque lafunzione è iniettiva. La suriettività di ι è un’immediata conseguenza della suriettività

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

48 algebre di boole .

di f. Infine, ι è un omomorfismo perché f lo è. Verifichiamo a titolo di esempio che ιcommuta con ∧. Siano a, b ∈ A, calcoliamo

ι([a]≡f ∧ [b]≡f) = ι([a∧ [b]≡f) applicando la definizione definizione 3.45

= f(a∧ b) per definizione di ι

= f(a)∧ f(b) perché f è un omomorfismo

= ι([a]≡f ∧ [b]≡f) per definizione di ι.

Concludiamo la dimostrazione verificando che ι(π≡f(a)) = ι([a]≡f) = f(a).

Un’ispezione della dimostrazione appena conclusa mostra che la condizione disuriettività su f può essere in qualche modo evitata:

Corollario 3.52 (Primo Teorema di isomorfismo). Siano A e B due algebre di Boole esia f : A → B è un qualsiasi omomorfismo di algebre di Boole, allora f si fattorizza in unomomorfismo suriettivo π≡f : A → A/ ≡f e un unico omomorfismo iniettivo ι : A/ ≡f→ B

tale che f = ι ◦ π≡.

A B

A/ ≡f

π≡f ι

f

Abbiamo quindi stabilito che epimorfismi e congruenze sono in obiezione e dunquelo studio dei primi si può riportare a quello delle seconde. Ciò che ci apprestiamoa dimostrare adesso permette un’ulteriore semplificazione: infatti vedremo ora chela congruenza ≡f può essere completamente ricostruita a partire dalla sola classe diequivalenza dell’elemento 1, e cioè: [1]f = {a ∈ A | f(a) = f(1) = 1}.

Definizione 3.53. Siano A e B due algebre di Boole e f : A → B un omomorfismo traesse. Definiamo il nucleo di f (denotato con ker(f)) come l’insieme

ker(f) := {a ∈ A | f(a) = 1}.

Per ricostruire ≡f a partire da ker(f) definiamo

a ≡ker(f) b se, soltanto se, se, soltanto se, a∨¬b ∈ ker(f) e b∨¬a ∈ ker(f) (2)

Lemma 3.54. Se f è un omomorfismo le relazioni ≡f e ≡ker(f) sono uguali.

Dimostrazione. Supponiamo a ≡f b, cioè f(a) = f(b). Dobbiamo verificare che a∨¬b ∈ker(f) e b∨¬a ∈ ker(f). Per (BA5) nella definizione 3.29 si ha che f(a)∨¬f(b) = f(a)∨

¬f(a) = 1, quindi f(a∨¬b) = f(1) = 1. Ne segue che a∨¬b ∈ ker(f). Similmente siprova che anche b∨¬a ∈ ker(f) da cui segue a ≡ker(f) b.

Supponiamo ora che a ≡ker(f) b, quindi a ∨ ¬b, b ∨ ¬a ∈ ker(f). In altre parolef(a∨¬b) = f(b∨¬a) = 1. Poiché f è un omomorfismo abbiamo anche 1 = f(a∨¬b) =

f(a)∨¬f(b), inoltre ¬f(b∨¬a) = ¬1 = 0 e dunque ¬f(b)∧ f(a) = 0, avendo usato leleggi di De Morgan e la legge della doppia negazione (cfr. proposizione 3.32, voci 2

e 4). Si è dunque stabilito che f(a)∨¬f(b) = 1 e ¬f(b)∧ f(a) = 0, utilizzando l’unicitàdel complemento (lemma 3.28) si ha f(a) = f(b) e dunque a ≡f b.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

3.2 algebre di boole 49

Lemma 3.55. Siano A e B due algebre di Boole e sia f : A → B un qualsiasi omomorfismo dialgebre di Boole. Si ha che f è iniettivo se, e solo se, ker(f) = {1}.

Dimostrazione. Se f è iniettiva, poiché 1 ∈ ker(f) = {a ∈ A | f(a) = 1}, si ha ker(f) = {1}.Viceversa, se f(a) = f(b), per proposizione 3.32 voce 6 e la anti-simmetria dell’ordinesi ha ¬f(a) ∨ f(b) = 1 = ¬f(b) ∨ f(a). Poiché f è omomorfismo ricaviamo f(¬a ∨

b) = f(¬b ∨ a) = 1, e quindi ¬a ∨ b,¬b ∨ a ∈ ker(f). Siccome ker(f) = {1} segue¬a∨ b = ¬b∨a = 1 e a = b ancora per proposizione 3.32 voce 6 e e la anti-simmetriadell’ordine.

Lemma 3.56. Siano A e B due algebre di Boole e f : A→ B un omomorfismo tra di esse. Alloraker(f) soddisfa le seguenti proprietà:

• 1 ∈ ker(f),

• per ogni x, y ∈ ker(f), x∧ y ∈ ker(f),

• dati x ∈ ker(f) e y ∈ A tali che x 6 y, allora y ∈ ker(f).

Dimostrazione. Poiché f(1) = 1, si ha che 1 ∈ ker(f). Siano x, y ∈ ker(f), allora f(x∧y) =f(x)∧ f(y) = 1∧ 1 = 1 che implica x∧ y ∈ ker(f). Sia x ∈ ker(f) e y ∈ A tale che x 6 y.Per la proposizione 3.42 si ha f(x) 6 f(y). Siccome f(x) = 1 segue che f(y) = 1 ey ∈ ker(f).

Esempio 3.57. Ricordando la funzione dell’esempio 3.40, che non era un omomorfi-smo, notiamo che il suo ker non è chiuso per ∧.

a

b c

d

1

0

Non rispetta il lemma 3.56

3.2.2 Filtri e ideali

Nella precedente sezione abbiamo visto che i nuclei degli omomorfismi permettonodi ricostruire la congruenza ad associata a questi ultimi. È naturale domandarsi qualisono le proprietà che individuano sottoinsiemi delle algebre di Boole che permettonodi costruire congruenze nella stessa maniera. La risposta è che queste proprietà sonoesattamente quelle elencate nel lemma 3.56.

Definizione 3.58. Sia B un’algebra di Boole. Un sottoinsieme non vuoto F è detto filtrose:

1. per ogni x, y ∈ F, x∧ y ∈ F,

2. dati x ∈ F e y ∈ B tali che x 6 y, allora y ∈ F.In altre parole, un filtro è un sottoinsieme non vuoto che risulta chiuso per ∧ e chiusoverso l’alto. Diremo che F è filtro proprio se F 6= B. Indicheremo la collezione dei filtridi B con F(B). Notiamo che 1 ∈ F per ogni filtro F.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

50 algebre di boole .

Esempio 3.59. Sia X = {a, b, c}. Consideriamo l’algebra di Boole 〈℘(X),∩,∪, c, ∅, X〉.Avremo la seguente rappresentazione grafica.

{a, b, c}

{a, c} {a, b}{b, c}

{b} {a}{c}

I filtri propri di ℘(X) sono i seguenti:

• F1 = {X};

• F2 = {X, {a, b}}, F3 = {X, {b, c}}, F4 = {X, {a, c}};

• F5 = {X, {a, b}, {a, c}, {a}}, F6 = {X, {b, c}, {a, c}, {c}}, F7 = {X, {a, b}, {b, c}, {b}}.

Osservazione 3.60. Un filtro F è proprio se, e solo se, 0 /∈ F.

Proposizione 3.61. Sia B un’algebra di Boole e sia F ∈ F(B). Sia ≡F la relazione definita daa ≡F b se, e solo se, ¬a∨ b ∈ F e ¬b∨ a ∈ F. Si ha che ≡F è una congruenza.

Dimostrazione. Sia a ∈ A. Poiché a∨¬a = 1, si ha a∨¬a ∈ F e di conseguenza a ≡F a.Siano a, b ∈ A tali che a ≡F b. Allora a∨¬b ∈ F e b∨¬a ∈ F, che implicano, per lacommutatività di ∨ che b ≡F a.

Verifichiamo ora la transitività. Siano a ≡F b e b ≡F c. Di conseguenza, a∨¬b,¬a∨

b, b∨ ¬c, c∨ ¬b ∈ F. Poiché F è un filtro, basta verificare che esiste d ∈ F tale che(a∨¬c)∧ (¬a∨ c) > d. Si ha

(a∨¬c)∧(¬a∨ c) = ((a∨¬c)∧ (¬a∨ c))∨ (b∧¬b) =

=((a∨¬c)∨ (b∧¬b))∧ ((¬a∨ c)∨ (b∧¬b)) =

=((a∨¬c)∨ b)∧ ((a∨¬c)∨¬b)∧ ((¬a∨ c)∨ b)∧ ((¬a∨ c)∨¬b) >>(¬c∨ b)∧ (a∨¬b)∧ (¬a∨ b)∧ (c∨¬b) ∈ F.

Quindi (a∨¬c) ∈ F e (¬a∨ c) ∈ F e ≡F è transitiva.Resta da verificare che ≡F è una congruenza. Siano a1 ≡F a2 e b1 ≡F b2. Si ha che

(a1 ∧ b1)∨¬(a2 ∧ b2) = (a1 ∧ b1)∨ (¬a2 ∨¬b2) =

=((a1 ∨¬a2)∧ (b1 ∨¬a2))∨¬b2 =

=((a1 ∨¬a2)∨¬b2)∧ ((b1 ∨¬a2)∨¬b2)

>(a1 ∨¬a2)∧ (b1 ∨¬b2) ∈ F.

Si dimostra analogamente che anche (a2 ∧ b2)∨¬(a1 ∧ b1) ∈ F.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

3.2 algebre di boole 51

Quindi (a1 ∧ b1)∨¬(a2 ∧ b2) ∈ F e (a2 ∧ b2)∨¬(a1 ∧ b1) ∈ F e, per definizione,a1 ∧ b1 ≡F a2 ∧ b2. Allo stesso modo possiamo vedere che a1 ∨ b1 ≡F a2 ∨ b2:

(a1 ∨ b1)∨¬(a2 ∨ b2) = (a1 ∨ b1)∨ (¬a2 ∧¬b2) =

=a1 ∨ ((¬a2 ∨ b1)∧ (b1 ∨¬b2)) =

=(a1 ∨ (¬a2 ∨ b1))∧ (a1 ∨ (b1 ∨¬b2)) > (a1 ∨¬a2)∧ (b1 ∨¬b2) ∈ F.

Si dimostra analogamente che anche (a2 ∨ b2)∨¬(a1 ∨ b1) ∈ F. Quindi (a1 ∨ b1)∨¬(a2 ∨ b2) ∈ F e (a2 ∨ b2)∨¬(a1 ∨ b1) ∈ F, così a1 ∨ b1 ≡F a2 ∨ b2. Per concludere,osserviamo che (¬a1 ∨ ¬¬a2) ∧ (¬¬a1 ∨ ¬a2) = (¬a1 ∨ a2) ∧ (a1 ∨ ¬a2) ∈ F peripotesi e ¬a1 ≡F ¬a2.

Notazione. In virtù del lemma precedente, se A è un’algebra di Boole e F è un suofiltro, scriveremo semplicemente A/F per indicare il quoziente A/ ≡F.

Osserviamo che è facile dimostrare che [1]F ∈ A/F coincide con l’insieme deglielementi di A che appartengono ad F.

Esempio 3.62. Consideriamo l’algebra di Boole B rappresentata nella figura a sinistrae sia A = {0, u, v, 1} l’algebra rappresentata a destra. Sia f : B → A l’omomorfismodefinito da 0 = f(0) = f(a), f(d) = f(b) = v, f(e) = f(c) = u, 1 = f(1) = f(g).

L’insieme F = {1, g}, che coincide con ker(f), è un filtro e l’algebra quoziente B/F èisomorfa ad A.

L’insieme F = {e, g, c, 1} è ancora un filtro e in questo caso si ha B/F = {0, 1}.

1

0

ba c

de

g

1

u v

0

= f(1) = f(g)

f(e) = f(c) = = f(d) = f(b)

= f(0) = f(a)

Vediamo come proposizione 3.61 ci consente di riscrivere una delle conseguenze delcorollario 3.52 in termini usando il concetto di filtro.

Lemma 3.63. Sia A una algebra di Boole. A meno di isomorfismi, c’è una corrispondenzabiunivoca tra gli omomorfismi suriettivi di A, con codominio una qualsiasi algebra di Boole, ei filtri di A.

Dimostrazione. Sia f : A→ B un omomorfismo suriettivo ed F ∈ F(A). Ricordando cheker(f) è un filtro di A, consideriamo le mappe f 7→ ker(f) e F 7→ π≡F .

Da lemma 3.54 si ha che ≡f coincide con ≡ker(f) e da lemma 3.51, π≡f differisce da fper un isomorfismo. Viceversa, è facile vedere che F = ker(π≡F). Infatti, si ha che x ∈ Fse, e solo se, x ∈ [1]F se, e solo se, π≡F(x) = [x]F = [1]F se, e solo se, x ∈ ker(π≡F).

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

52 algebre di boole .

Possiamo dare una definizione duale a quella di filtro.

Definizione 3.64. Sia A un’algebra di Boole. Un sottoinsieme I ⊆ A è detto ideale se:

1. per ogni a, b ∈ A, a∨ b ∈ A,

2. dati a ∈ I e b ∈ A tali che b 6 a, allora b ∈ I.

In altre parole, un ideale è un sottoinsieme non vuoto che risulta chiuso per ∨ e chiusoverso il basso. Diremo che I è ideale proprio se I 6= B. Indicheremo la collezione degliideali di B con I(B). Notiamo che 0 ∈ I per ogni ideale I e che un ideale I è proprio se,e solo se, 1 /∈ I.

Esempio 3.65. 1. In ogni algebra di Boole {1} è un filtro e {0} è ideale.

2. Nell’esempio esempio 3.30 voce 5, il sottoinsieme {a, b} è un filtro, mentre ilsottoinsieme {b, c} è un ideale.

Proposizione 3.66. Sia B un’algebra di Boole e sia F un filtro di B. L’insieme ¬F = {¬x | x ∈F} è un ideale. Viceversa, per ogni ideale I, l’insieme ¬I è un filtro.

Dimostrazione. Sia F un filtro e siano ¬x,¬y ∈ ¬F. Usando proposizione 3.32 voce 4 siha ¬x∨¬y = ¬(x∧ y). Poiché x, y ∈ F, che è filtro, si ha x∧ y ∈ F e ¬(x∧ y) ∈ ¬F,quindi ¬F è chiuso per ∨. Siano ¬x ∈ F e y ∈ B, con y 6 ¬x. Da proposizione 3.32

voci 2 e 5, si ha x 6 ¬y. poiché x ∈ F ricaviamo che ¬y ∈ F e ¬(¬y) = y ∈ ¬F. Laseconda parte della proposizione è analoga.

Lemma 3.67. Sia B un’algebra di Boole, sia A ⊆ B un sottoinsieme qualsiasi di B e sia FA ⊆F(B)∪ {B} la collezione dei filtri di B che contengono A, ai quali stiamo quindi aggiungendo ilfiltro improprio B. Allora

⋂F∈FA F è un filtro.

Dimostrazione. La dimostrazione è una semplice applicazione della definizione di filtroed è lasciata per esercizio al lettore. Osserviamo solo che

⋂F∈FA F è non vuoto in

quanto contiene A.

Definizione 3.68. Per ogni sottoinsieme A di un’algebra di Boole B, diremo che il filtroFA =

⋂F∈FA F definito come nel lemma 3.67 è il filtro generato da A.

Se A = {a} chiameremo F{a} = Fa filtro principale generato da a.

Proposizione 3.69. Sia B un’algebra di Boole e sia A ⊆ B. Allora

FA = {x ∈ B | esiste n ∈N ed esistono y1, . . . , yn ∈ A tali che x > y1 ∧ · · ·∧ yn}.

Dimostrazione. Sia C = {x ∈ B | ∃n ∈ N ∃y1, . . . , yn ∈ A tali che x > y1 ∧ · · ·∧ yn}.Vediamo che C è un filtro che contiene A, e cioè che C ∈ FA.

Per ogni a ∈ A, poiché a > a segue che a ∈ C. Quindi A ⊆ C e C è non vuoto.Siano x, t ∈ C. Esistono due naturali n,m ed elementi y1, . . . , yn, z1, . . . zm ∈ A taliche x > y1 ∧ · · ·∧ yn e t > z1 ∧ · · ·∧ zm. Da proposizione 3.186 segue che x∧ t >y1 ∧ · · ·∧ yn ∧ z1 ∧ · · ·∧ zm, che è ancora sequenza finita di elementi di A. Quindix∧ t ∈ C. Analogamente, se x ∈ C e y ∈ B con y > x esistono y1, . . . , yn ∈ A tali

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

3.2 algebre di boole 53

che x > y1 ∧ · · ·∧ yn. Di conseguenza y > x > y1 ∧ · · ·∧ yn e y ∈ C. Abbiamo cosìdimostrato che C ∈ FA e quindi FA ⊆ C. Per dimostrare l’altra inclusione, vediamoche per ogni F ∈ FA si ha C ⊆ F. Sia x ∈ C e sia F ∈ FA. Esistono y1, . . . , yn ∈ Atali che x > y1 ∧ · · ·∧ yn. Poiché A ⊆ F, che è filtro, y1 ∧ · · ·∧ yn ∈ F e x ∈ F. Diconseguenza C ⊆ F per ogni F in FA, il che implica che C ⊆ ⋂F∈FA F = FA.

Definizione 3.70. Sia B un’algebra di Boole e sia A un suo sottoinsieme. Diremo cheA ha la proprietà delle intersezioni finite, in breve FIP, se per ogni suo sottoinsiemefinito C ⊆ A inf(C) 6= 0.

Esempio 3.71. Consideriamo l’algebra dell’esempio 3.59. Il sottoinsieme {{a, b}, {a, c}, {b, c}}

non ha la FIP in quanto {a, b}∩ {a, c}∩ {b, c} = ∅.

Lemma 3.72. Sia B un’algebra di Boole e sia A ⊆ B. Il filtro FA è proprio se, e solo se, A hala FIP.

Dimostrazione. Sia A proprio. Se A non ha la FIP, esistono y1, . . . , yn ∈ A tali che0 = y1 ∧ · · ·∧ yn. Quindi 0 > 0 = y1 ∧ · · ·∧ yn e 0 ∈ FA, che contraddice l’ipotesi.

Viceversa, supponiamo che A abbia la FIP e FA non sia proprio. Questo implica che0 ∈ FA e quindi esistono y1, . . . , yn ∈ A tali che 0 > y1∧ · · ·∧yn. Poiché 0 è il mininodi B, possiamo dedurre che 0 = y1 ∧ · · ·∧ yn, contro l’ipotesi che A abbia la FIP.

Corollario 3.73. Sia B un’algebra di Boole e sia A ⊆ B. Allora l’ideale generato da A è datoda {x ∈ B | esiste n ∈N ed esistono y1, . . . , yn ∈ A tali che x 6 y1 ∨ · · ·∨ yn}

Osservazione 3.74. Quanto visto nella proposizione 3.61 si può adattare al caso in cuiviene definita una congruenza a partire da un ideale. Infatti, per ogni I ∈ I(B) èpossibile definire la relazione ≡I come a ≡I b se, e solo se, a∧¬b ∈ I e ¬a∧ b ∈ I.

Esercizio 3.75. Sia B un’algebra di Boole e sia F ∈ F(B). Definiamo

a ∼F b se, e solo se, ∃f ∈ F tale che a∧ f = b∧ f.

Dimostrare che ∼F è una congruenza e che ≡F=∼F, cioè a ≡F b se, e solo se, a ∼F b.

3.2.3 Sottalgebre

Il lemma 3.51 visto in precedenza ci permette di studiare omomorfismi tramite lecongruenze (o i filtri, in virtù del lemma 3.63), a patto però che questi siano suriettivi.Nel caso di un omomorfismo generale f : A → B invece, il quoziente è solo contenutonell’algebra codominio. In quest’ultimo caso si può notare che l’immagine f[A] è chiusarispetto alle operazioni di B. Infatti se a, b ∈ A f(a)∧B f(b) = f(a∧ b) ∈ f[A], poichèa∧ b ∈ A.

Definizione 3.76. Sia A un’algebra di Boole. Un sottoinsieme S ⊆ A chiuso rispettoalle operazioni di algebra di Boole è detto sottalgebra. In altre parole S è tale che∀s, t ∈ S

s∧ t, s∨ t,¬s, 0, 1 ∈ S

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

54 algebre di boole .

Alla luce di questa definizione il corollario 3.52 permette di ridurre, modulo unisomorfismo, lo studio di omomorfismi qualsiasi a quello di epimorfismi e sottalgebre.

Esempio 3.77. Sia S un insieme e A = 〈℘(S),∩,∪, c, ∅, S〉 l’algebra di Boole dei suoisottoinsiemi. L’insieme B di tutti i sottoinsiemi di S finiti o cofiniti (=insieme il cuicomplemento è finito) forma una sottalgebra di A. Infatti:

• complemento di finito = cofinito,

• finito ∪ finito = finito,

• finito ∪ cofinito = cofinito,

• finito ∩ finito = finito,

• finito ∩ cofinito = finito,

Le sottalgebre sono evidentemente chiuse per intersezione. Quindi dato un sot-toinsieme S di un’algebra di Boole B, definiamo la sottalgebra generata da S comel’intersezione di tutte le sottalgebre di B contenenti S.

Osservazione 3.78. Si dimostra che B è la sottalgebra generata da S se, e solo se, si ottieneper chiusura algebrica a partire dagli elementi di S. In altre parole, se ogni elemento diB si può scrivere a partire dagli elementi di S applicando le operazioni ¬, ∨, ∧.

Esempio 3.79. Vediamo un esempio di sottalgebra generata. Consideriamo l’algebraB rappresentata a sinistra e vediamo qual è la sottalgebra generata da c. Si nota facil-mente che l’unica sottalgebra diversa da B e che contiene c è quella data da {0, c, d, 1},in quanto contiene esattamente d = ¬c, massimo e minimo di B.

1

0

ba c

de

g1

d c

0

3.2.4 Ultrafiltri

Nella prossima sezione dimostreremo il teorema di rappresentazione di Stone chepermette di vedere ogni algebra di Boole come una sottalgebra di ℘(X) per un appro-priato insieme X. Il concetto fondamentale per provare tale rappresentazione è quellodi ultrafiltro.

Consideriamo l’algebra di Boole dell’esempio 3.59. Poiché F(℘(X)) ⊆ ℘(℘(X)), F(B)è parzialmente ordinato dall’ordine indotto da 〈℘(℘(X)),⊆〉. Ricordando che F(℘(X))è dato da:

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

3.2 algebre di boole 55

• F1 = {X};

• F2 = {X, {a, b}}, F3 = {X, {b, c}}, F4 = {X, {a, c}};

• F5 = {X, {a, b}, {a, c}, {a}}, F6 = {X, {b, c}, {a, c}, {c}}, F7 = {X, {a, b}, {b, c}, {b}},

otteniamo la seguente rappresentazione:

F5 F6F7

F3 F4F2

F1

Gli elementi F5, F6 ed F7 sono massimali rispetto a ⊆.

Definizione 3.80. Sia B un’algebra di Boole. Un filtro proprio di B si dice ultrafiltro (ofiltro massimale) se è massimale rispetto all’inclusione. La collezione degli ultrafiltriverrà indicata con U(B).

Lemma 3.81. Sia A un’algebra di Boole e sia ∅ 6= U ⊆ A un filtro proprio di A, le seguentisono equivalenti.

1. U è un ultrafiltro

2. se x∨ y ∈ U allora x ∈ U oppure y ∈ U (filtro primo).

3. per ogni x ∈ A, si ha x ∈ U o ¬x ∈ U (filtro completo).

4. A/U ∼= {0, 1}.

Dimostrazione. Voce 1 ⇒ voce 2. Sia U un ultrafiltro tale che x /∈ U e y /∈ U. Consi-deriamo allora i filtri generati FU∪{x} e FU∪{y}, poiché U è massimale, devono essereentrambi uguali a B. Per la proposizione 3.69 esistono u1, . . . , un ∈ U e v1, . . . , vm ∈ Utali che 0 = u1∧ · · ·∧un∧ x = v1∧ · · ·∧ vm∧ y, avendo usato il fatto che U ha la FIP.Per ogni i 6 k = max{m,n} sia wi := ui ∧ vi se esistono entrambi ui e vi, altrimentiponiamo wi uguale all’unico che esiste tra ui e vi. Per la monotonia di ∧ (voce 6 dellaproposizione 3.18) abbiamo che 0 = w1 ∧ · · ·∧wk ∧ x = w1 ∧ · · ·∧wk ∧ y e dunque

0 = (w1 ∧ · · ·∧wk ∧ x)∨ (w1 ∧ · · ·∧wk ∧ y) == (w1 ∧ · · ·∧wk)∧ (x∨ y)

Poiché U ha la FIP se ne deduce che x∨ y /∈ U e la condizione voce 2 è dimostrata.Voce 2⇒ voce 3. Poiché U è un filtro 1 ∈ U, ma per ogni x ∈ U, 1 = ¬x∨ x. Dunque

la voce 2 implica x ∈ U oppure ¬x ∈ U.Voce 3 ⇒ voce 4. L’insieme A/U è dato dalle classi di equivalenza di ≡U. Per la

voce 3 ogni a ∈ A è in [1]≡U (se a ∈ U) oppure in [0]≡U (se ¬a ∈ U). Dunque A/U èformato da due elementi e necessariamente isomorfo a l’algebra di Boole {0, 1}.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

56 algebre di boole .

Voce 4 ⇒ voce 1. Sia A/U ∼= 2, supponiamo che esista un filtro F tale che U ⊆ F esia x ∈ F \U. Allora [x]U 6= [1]U e quindi [x]U = [0]U, o equivalentemente [¬x]U = [1]U.Dunque ¬x ∈ U ⊆ F, da cui 0 = x∧ ¬x ∈ F e quindi F non è proprio. Dunque U èmassimale, come volevasi dimostrare.

Osservazione 3.82. Osserviamo che, poiché un ultrafiltro U è proprio per definizione, siha che x ∈ U oppure ¬x ∈ U ma non entrambe.

Proposizione 3.83. Sia X 6= ∅ e consideriamo l’algebra 〈℘(X),∩,∪, c, ∅, X〉. Per ogni x ∈ Xsi ha che F{x} è un ultrafiltro.

Dimostrazione. Osserviamo che F{x} = {A ∈ ℘(X) | {x} ⊆ A} = {A ∈ ℘(X) | x ∈ A}.Quindi F{x} ha la FIP: per ogni A1, . . . , Ak ∈ F{x} si ha che x ∈ A1 ∩ · · · ∩Ak. Sia oraA /∈ F{x}. Allora x /∈ A e quindi x ∈ X \A, che implica X \A ∈ F{x}. La tesi segue oradal lemma 3.81.

Vediamo ora che ogni filtro si può estendere a un ultrafiltro.

Teorema 3.84. Sia B un’algebra di Boole. Ogni filtro proprio di B si estende ad un ultrafiltro.

Dimostrazione. Sia F un filtro proprio di B e sia A l’insieme dei filtri propri di B cheestendono F. Ovviamente A è non vuoto, perché F ∈ A. Mostriamo che ogni catenaC in A ha un maggiorante in A:

⋃C. Ovviamente

⋃C è non vuoto ed estende F. Se

a, b ∈ ⋃C allora esistono H,K ∈ C tali che a ∈ H e b ∈ K. Poiché C è una catena,possiamo assumere H ⊆ K, quindi a, b ∈ K e dunque a∧ b ∈ K ⊆ ⋃C. Similmentese a ∈ ⋃C e b > a, allora b ∈ ⋃C. Infine, ovviamente 0 6∈ ⋃C perchè non appatienea nessuno degli elementi di C. Quindi

⋃C, che è un filtro proprio che contiene F, è il

maggiorante cercato.Applicando ora il lemma di Zorn, otteniamo un filtro U massimale in A. Resta da

verificare che U è massimale in F(B). Questo segue dal fatto che ogni filtro che contieneU deve contenere anche F e quindi appartienere ad A.

Corollario 3.85. Sia B un’algebra di Boole, c ∈ B e F un filtro proprio di B tale che c 6∈ F.Allora esiste un ultrafiltro U di B che estende F, cioè F ⊆ U, ma non contiene c.

Dimostrazione. L’insieme F∪ {¬c} ha la FIP. Infatti, se esistessero f1, . . . , fk ∈ F tali chef1 ∧ · · ·∧ fk ∧¬c = 0 si avrebbe f1 ∧ · · ·∧ fk 6 c e quindi c ∈ F, contro l’ipotesi. Peril Teorema 3.84 il filtro generato da F ∪ {¬c} è contenuto in un ultrafiltro U. Poichè¬c ∈ U, si ha c /∈ U.

Corollario 3.86. Sia B un’algebra di Boole e sia ∅ 6= A ⊆ B un sottoinsieme con la FIP. AlloraA si estende a un ultrafiltro.

Dimostrazione. Segue da. Teorema 3.84 e lemma 3.72, considerando il filtro generatoda A.

Corollario 3.87. Dati due elementi x, y di un’algebra di Boole, con x 6= y, esiste sempre unultrafiltro contiene un elemento ma non l’altro.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

3.2 algebre di boole 57

Dimostrazione. Poiché x 6= y sicuramente almeno una tra x 6 y e y 6 x non vale.Supponiamo che x � y. Per proposizione 3.32voce 6, x∧¬y 6= 0 e quindi {x,¬y} hala FIP. Di conseguenza posso considerare l’ultrafiltro U che estende F{x,¬y} e sarà unfiltro proprio. Inoltre, y /∈ F{x,¬y} altrimenti si avrebbe 0 ∈ F{x,¬y}. Siamo quindi nelleipotesi del corollario 3.85.

3.2.5 Il teorema di rappresentazione di Stone

I teoremi di rappresentazione sono di cruciale importanza perché consentono di tra-sferire informazioni da aree diverse della matematica. Anche se presentato in manierasemplificata, il seguente teorema è un ponte tra logica e topologia.

Teorema 3.88 (di rappresentazione di Stone). Sia 〈A,∧,∨,¬, 0, 1〉 una algebra di Boole.Esiste un insieme X tale che A è isomorfa a una sottalgebra di 〈℘(X),∪,∩, \, ∅, X〉.Dimostrazione. Sia X = U(A), l’insieme dei filtri massimali di A, e sia e : A → ℘(X)definita da

a ∈ A 7−→ {F ∈ U(A) | a ∈ F}.La funzione e è iniettiva: infatti se a 6= b, per corollario 3.87 esiste un ultrafiltro che

contiene a e non b. Di conseguenza, e(a) 6= e(b).La funzione e è un omomorfismo. Si osserva che 1 ∈ F per ogni F ∈ U(A), quindi

e(1) = U(A), mentre 0 6= F per ogni F ∈ U(A), quindi e(0) = ∅.e(a∨ b) = {F ∈ U(A) | a∨ b ∈ F} =

= {F ∈ U(A) | a ∈ F o b ∈ F} == {F ∈ U(A) | a ∈ F}∪ {F ∈ U(A) | b ∈ F} = e(a)∨ e(b).

e(a∧ b) = {F ∈ U(A) | a∧ b ∈ F} == {F ∈ U(A) | a ∈ F e b ∈ F} == {F ∈ U(A) | a ∈ F}∩ {F ∈ U(A) | b ∈ F} = e(a)∧ e(b).

Per concludere, e(¬x) = {F ∈ U(A) | ¬x ∈ F}. Essendo ogni ultrafiltro proprio si ha che¬x ∈ F se, e solo se, x 6∈ F e di conseguenza U ∈ e(¬x) se, e solo se, U /∈ e(x) se, e solose, U ∈ U(A) \ e(x). Notiamo infine che, per quanto detto all’inizio della sezione 3.2.3,l’immagine e[A] di A tramite e è una sottalgebra di ℘(X). Quindi, in base a quantodetto sopra, e è un isomorfismo tra A e e[A].

Si noti che in generale i sottoinsiemi di un insieme A sono in corrispondenza biu-nivoca con le funzioni da A in {0, 1}. Infatti a un insieme S ⊆ A possiamo associareuna funzione χS : A → {0, 1} tale che χS(x) = 1 se, e soltanto se, x ∈ S. Viceversa,a ogni funzione f : A → {0, 1} possiamo associare il sottoinsieme di A definito come{x ∈ A | f(x) = 1}. La funzione χS è detta la funzione caratteristica di S. Dunque ilTeorema di Stone può essere equivalentemente enunciato come segue

Corollario 3.89 (Formulazione equivalente del Teorema di rappresentazione di Stone).Per ogni algebra di Boole A esiste un insieme X tale che A è isomorfa a una sottalgebra diΠx∈XAx dove tutte le Ax sono copie isomorfe dell’algebra di Boole {0, 1} e Πx∈X rappresentail prodotto diretto.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

58 algebre di boole .

Dimostrazione.

3.2.6 Algebre libere

Definizione 3.90. Sia A un’algebra di Boole e sia X ⊆ A un suo sottoinsieme che lagenera. L’algebra A è detta liberamente generata da X (gli elementi di X sono dettigeneratori liberi) se,

per ogni algebra di Boole B, ogni funzione da X in B si estende univocamente a unomomorfismo da A in B.

Indicheremo con Free(X) l’algebra liberamente generata da X.

Esempio 3.91. L’algebra a sinistra è l’algebra libera generata da {x}, infatti data unaqualsiasi algebra di Boole B, l’assegnazione di x a un elemento di B si estende univo-camente a un omomorfismo di algebre di Boole.

0

¬x x

1

0

a b c

ed g

1

Teorema 3.92. Se X e Y sono due insiemi della stessa cardinalità, allora Free(X) ∼= Free(Y).

Dimostrazione. Poichè X e Y hanno la stessa cardinalità, esiste una biezione f : X → Y

(vedi Appendice A.5). Se g : Y → X denota l’inversa di f, siano f : X → Free(Y)

e g : Y → Free(X) le funzioni definite da f(x) = f(x) e g(x) = g(x). Per la defi-nizione di algebra libera, entrambe f e g si estendono a f : Free(X) → Free(Y) eg : Free(Y)→ Free(X), omomorfismi di algebre di Boole. Vediamo che f ◦ g e g ◦ f sonorispettivamente le funzioni identità su Free(Y) e Free(X). Essendo omomorfismi di al-gebre di Boole ed essendo Free(X) e Free(Y) generate da X e Y, dalla Osservazione 3.78,è sufficiente notare che, per ogni x ∈ X e per ogni y ∈ Y, g(f(x)) = g(f(x)) = g(f(x)) = xe f(g(y)) = f(g(y)) = f(g(y)) = y.

Sia Form, l’insieme delle formule proposizionali della definizione 2.2 e sia Γ unsuo sottoinsieme coerente. Nella definizione 2.15 abbiamo definito la congruenza ≡.Definiamo ora una relazione più generale ≡Γ come segue:

ϕ ≡Γ ψ se, soltanto se, Γ ` ϕ↔ ψ.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

3.2 algebre di boole 59

Se Γ = ∅, le relazioni ≡Γ e ≡ coincidono. Come nell’esercizio 3.44, è possibile dimostra-re che ≡Γ è una congruenza. Questa osservazione ci consente di dotare il quozienteForm/ ≡Γ della struttura di algebra di Boole definendo

0 := [⊥]≡Γ 1 := [>]≡Γ[ϕ]≡Γ ∧ [ψ]≡Γ := [ϕ∧ψ]≡Γ ,

[ϕ]≡Γ ∨ [ψ]≡Γ := [ϕ∨ψ]≡Γ ,

¬[ϕ]≡Γ := [¬ϕ]≡Γ .

Le algebre di questo tipo sono anche note come algebre di Lindenbaum-Tarski. Indi-cheremo con LTΓ (Var) l’algebra qui definita. Dalla definizione delle operazioni e propo-sizione 3.32 voce 6, possiamo osservare che [ϕ]Γ 6 [ψ]Γ se, e solo se [¬ϕ∨ψ]Γ = [>]Γ .Di conseguenza, l’ordine è dato da:

[ϕ]Γ 6 [ψ]Γ se, soltanto se, Γ ` ϕ→ ψ.

Il prossimo risultato ha il duplice effetto di chiarire il ruolo di rilievo giocato daLT∅(Var) e contemporaneamente dimostrare che le algebre libere esistono.

Se P è un sottoinsieme di Var, indichiamo con Form(P) l’insieme delle formuleproposizionali le cui variabili appartengono a P.

Teorema 3.93. L’algebra di Lindenbaum-Tarski Form(P)/ ≡ è l’algebra libera generata da P.

Dimostrazione. Iniziamo notando che con una una semplice induzione è possibile di-mostrare che in effetti l’insieme [P] := {[p]≡∅ | p ∈ P} genera LT∅(P), via l’osservazione3.78.

Sia ora f un’assegnazione da P in un’algebra di Boole A. Definiamo per induzioneuna funzione f : LT∅(P)→ A:

f([p]) := f(p) per ogni p ∈ P,f([⊥]) := 0A e f([>]) := 1A,f([¬ϕ]) := ¬f(ϕ)

A,

f([ϕ∨ψ]) := f(ϕ)∨A f(ψ)

f([ϕ∧ψ]) := f(ϕ)∧A f(ψ).

Per la sua definizione, f è un omomorfismo.

Proposizione 3.94. Sia F un filtro di LTΓ (Var) e ∆ =⋃F, cioè l’unione delle formule che

appartengono alle classi di equivalenza in F. Allora Γ ⊆ ∆ e

LTΓ (Var)/F ∼= LT∆(Var).

Dimostrazione. Il fatto che Γ ⊆ ∆ segue direttamente da Γ ⊆ [>]Γ . Per quanto riguardal’isomorfismo,

[[ϕ]Γ ]F = [[ψ]Γ ]F se, soltanto se, ¬[ϕ]Γ ∨ [ψ]Γ ∈ F e ¬[ψ]Γ ∨ [ϕ]Γ ∈ Fse, soltanto se, [ϕ]Γ ↔ [ψ]Γ ∈ Fse, soltanto se, [ϕ↔ ψ]Γ ∈ Fse, soltanto se, ϕ↔ ψ ∈ ∆se, soltanto se, [ϕ]∆ = [ψ]∆.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

60 algebre di boole .

Osserviamo che l’implicazione [ϕ]∆ = [ψ]∆ ⇒ ϕ ↔ ψ ∈ ∆ si deduce dall’osserva-zione che, poiché F è un filtro, ∆ risulta contenere tutti gli assiomi ed essere chiusorispetto alla Modus Ponens. Infatti, si ha che per ogni assioma α, [α]Γ = [>]Γ ∈ F e, se[ϕ]Γ , [ϕ→ ψ]Γ ∈ F, si ha [ψ]Γ ∈ F. Quindi, da ∆ ` ϕ↔ ψ deduciamo che ϕ↔ ψ ∈ ∆.

Quindi la mappa [[ψ]Γ ]F 7→ [ϕ]∆ è un omomorfismo, ben definito e biettivo.

Le algebre libere hanno la seguente importante proprietà.

Teorema 3.95. L’equazione nel linguaggio delle algebre di Boole

t(x1, . . . , xn) ≈ s(x1, . . . , xn)è valida nell’algebra libera generata da X = {x1, . . . , xn} se, e soltanto se, è valida in tutte lealgebre di Boole.

Dimostrazione. Un’implicazione è ovvia. Per l’altra, supponiamo che t(x1, . . . , xn) ≈s(x1, . . . , xn) sia verificata in Free(X) e fallisca in qualche algebra di Boole A. Questovuol dire che esistono a1, . . . , an ∈ A tali che inA si ha tA(a1, . . . , an) 6= sA(a1, . . . , an).

Consideriamo l’assegnazione xi 7→ ai per ogni 1 6 i 6 n. Essa si estende a unomomorfismo f : Free(X)→ A. A questo punto si ha

f(tFree(X)(x1, . . . , xn)

)= tA(f(x1), . . . , f(xn)) =

= tA(a1, . . . , an) 6= sA(a1, . . . , an) == sA(f(x1), . . . , f(xn)) =

= f(sFree(X)(x1, . . . , xn)

)

Quindi tFree(X)(x1, . . . , xn) e sFree(X)(x1, . . . , xn) sono diversi anche in Free(X), control’ipotesi.

3.3 completezza algebrica

Nelle precedenti sezioni, al fine di non appesantire la notazione, tre oggetti matematicidiversi sono denotati dallo stesso simbolo

∧,∨,¬ denotano

connettivi logici,

simboli di operazione,

operazioni concrete.

In questa sezione vedremo che tale confusione di notazione è in qualche modo giu-stificata da risultati matematici. Per poter fare chiarezza è necessario distinguere idiversi usi dei simboli ∧,∨,¬. Quindi, in questa seziona solamente, indichiamo i sim-boli di operazioni booleane con ∧,∨,¬ e le loro interpretazioni in un’algebra A con∧A,∨A,¬A Le formule in Form possono essere trasformate in termini in Term.

Se pi ∈ Var, pTi := xi,

Se ϕ = ϕ1 ∧ϕ2, ϕT := ϕT1∧ϕT2

Se ϕ = ϕ1 ∨ϕ2, ϕT := ϕT1∨ϕT2

Se ϕ = ¬ϕ1, ϕT := ¬ϕT1 .

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

3.3 completezza algebrica 61

Viceversa, termini booleani possono essere trasformati in formule:

Se pi ∈ Var, xLi := pI,

Se t = t1∧t2, tL := tL1 ∧ tL2

Se t = t1∨t2, tL := tL1 ∨ tL2

Se t = ¬t1, tL := ¬tL1 .

Le precedenti traduzioni permettono di trasformare formule proposizionali in equa-zioni e viceversa:

Se ϕ è una formula, definiamo ϕ= come ϕT ≈ 1,Se s = t è un’equazione, definiamo (s ≈ t)↔ come sL ↔ tL.

Al teorema di completezza visto all’inizio

Γ ` ϕ se, soltanto se, Γ |= ϕ

si aggiunge ora un passo intermedio

Γ ` ϕ se, soltanto se, Γ= |=BA ϕ= se, soltanto se, Γ |= ϕ

Teorema 3.96. Sia Γ ∪ {ϕ} un insieme di formule.

Γ ` ϕ se, soltanto se, Γ= |=BA ϕ=.

Dimostrazione. ⇒ Per induzione sulla lunghezza della derivazione di ϕ.

• Se la derivazione ha lunghezza 1, allora ϕ ∈ Γ oppure ϕ è un assioma. Nel primocaso banalmente Γ= |=BA ϕ=. Nel secondo caso si mostra che tutti gli assiomisono validi in BA.

• Per i passi induttivi, bisogna verificare che ogni regola del calcolo ` è valida nellateoria delle algebre di Boole. A titolo di esempio riportiamo il caso della regola(RA). Se una deduzione di lunghezza n+ 1 a partire da Γ con conclusione ϕ siconclude con un’applicazione della regola (RA), allora abbiamo una deduzione

Γ, [¬ϕ]1

····⊥

RA1ϕ

Dunque sappiamo che esiste una deduzione

Γ,¬ϕ····

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

62 algebre di boole .

e che essa ha lunghezza n. Possiamo dunque applicare l’ipotesi induttiva e ot-tenere che Γ= ∪ {¬ϕ}= |=BA ⊥=. Poiché ⊥= corrisponde a 0 = 1, essa vale solonell’algebra di Boole banale composta da un solo elemento. Dunque Γ= ∪ {¬ϕ}=vale solo nell’algebra banale. Supponiamo per assurdo che la tesi non valga,quindi che si abbia Γ= 6|=BA ϕ=, in altre parole esiste un’algebra di Boole A eun’interpretazione f in A tali che A |= f[ΓT ] = 1 e A |= f[ϕT ] 6= 1. Usando il teo-rema di rappresentazione di Stone (corollario 3.89) si ottiene un insieme X taleche A è una sottalgebra del prodotto diretto Πx∈XAx dove Ax ∼= {0, 1} per ognix ∈ X. Poiché f[ϕT ] 6= 1, esiste una proiezione πi con i ∈ X tale che πi(f[ϕT ]) 6= 1e dunque πi(f[ϕT ]) = 0; applicando la negazione quest’ultima è equivalente aπi(f[¬ϕ

T ]) = 1. Ma la composizione πi ◦ f è un’interpretazione in {0, 1} che rendevere tutte le equazioni in Γ= (poiché in f[ΓT ] = 1 rimane vera sotto tutte le proie-zioni) e rende vera ¬ϕ=. Poiché l’algebra {0, 1} non è banale, abbiamo raggiuntouna contraddizione e questo caso del passo induttivo è verificato. I rimanenticasi sono più semplici.

⇐ Proviamo la contronominale. Supponiamo che Γ 6` ϕ e mostriamo che esisteun’algebra di Boole A e un’interpretazione e in A tale che e[Γ ] = 1 e e[ϕ] 6= 1. Bastaprendere per A l’algebra di Lindenbaum-Tarski LTΓ e l’interpretazione che mandaogni xi in [pi]Γ . Tale interpretazione manda ϕT in [ϕ]Γ , quindi rende valide tutte leequazioni in Γ=, perché tutti i termini in ΓT vengono interpretati in elementi del filtrogenerato da Γ . Inoltre LTΓ non verifica ϕ=, perché ϕ non appartiene al filtro generatoda [Γ ].

Teorema 3.97. Sia Γ ∪ {ϕ} un insieme di formule.

Γ= |=BA ϕ= se, soltanto se, Γ |= ϕ.

Dimostrazione. ⇒ È banale, perché le tesi è un caso particolare dell’ipotesi. InfattiΓ |= ϕ equivale a dire che ogni interpretazione f : Form→ {0, 1} che manda [Γ ] in 1 devemandare anche [ϕ] in 1.⇐ Supponiamo che f : Form → A sia un’interpretazione che manda [Γ ] in 1. Per

il teorema di rappresentazione di Stone (corollario 3.89), l’algebra A è sottalgebra delprodotto diretto di X copie di {0, 1}, per un insieme X opportuno. Quindi componendof con ogni proiezione, otteniamo un omomorfismo fi per ogni i ∈ X con fi : Free(ω)→{0, 1}. Poiché f[[Γ ]] = 1, per ogni i ∈ X, πi(f([Γ ])) = 1, dunque per ipotesi, ancheπi(f([ϕ])) = 1. Ma allora f[ϕ] = 1 e siccome ciò vale per un arbitrario f, abbiamoA |= ϕ=.

3.4 complementi : algebre di boole atomiche

Si consideri l’algebra di Boole ℘(X), dove X è un insieme finito. Si osserva facilmenteche ci sono degli elementi, i singoletti degli elementi di X, che sono immediatamentesopra ∅ e, per ogni altro A ∈ ℘(X), A è unione dei singoletti che lo compongono.Generalizzando a un algebra qualsiasi, si ottiene la seguente definizione.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

3.4 complementi : algebre di boole atomiche 63

Definizione 3.98. Sia B un’algebra di Boole. Un elemento a ∈ B, a 6= 0, si dice atomodi B se per ogni y ∈ B tale che 0 6 y 6 a si ha y = a oppure y = 0. Nel seguito A(B)

denoterà l’insieme degli atomi di B.L’algebra B si dice atomica se per ogni y ∈ B, y 6= 0, esiste a ∈ A(B) tale che a 6 y.

Esempio 3.99. Ogni insieme delle parti di un insieme finito è algebra atomica e ognialgebra di Boole finita è atomica. Ci sono però algebre che hanno atomi ma non sonoatomiche, ci sono algebra senza atomi.

Proposizione 3.100. Sia B un’algebra di Boole e sia a ∈ B, a 6= 0. Sono equivalenti:

1. a ∈ A(B);

2. Per ogni y ∈ B, a∧ y = 0 oppure a∧ y = a;

3. Il filtro generato da a, Fa, è un ultrafiltro;

4. Esiste un unico ultrafiltro che contiene a.

Dimostrazione. 1 ⇒ 2. Segue dalla definizione di atomo, poiché per ogni y ∈ B si ha0 6 y∧ a 6 a.

2 ⇒ 3. Poiché a 6= 0, si ha che Fa è proprio ed ha la FIP. Resta da verificare che Faè completo: sia x /∈ Fa, siccome x > a∧ x, segue che x∧ a 6= a, altrimenti x ∈ Fa. Diconseguenza, x∧ a = 0, che implica a∧¬¬x = 0 e a 6 ¬x, da cui segue ¬x ∈ Fa.

3⇒ 4. Sia U ∈ U(B) tale che a ∈ U. Segue che Fa ⊆ U, e per l’ipotesi Fa = U.4 ⇒ 1. Sia, per assurdo, y ∈ B tale che 0 < y < a. I filtri generati da y e da a∧¬y

sono entrambi propri, infatti y 6= 0 per ipotesi, mentre a∧ ¬y 6= 0 deriva dal fattoche y < a. Per dimostrare quest’ultimo fatto basta notare che se a∧¬y fosse ugualea 0 allora per voce 6 del proposizione 3.32, a 6 y e ciò contraddice y < a. Quindiper il Corollario 3.85 esistono U,V ∈ U(B) tali che F{a∧¬y} ⊆ U e Fy ⊆ V . Poichéa appartiene ad entrambi gli ultrafiltri, dall’ipotesi ipotesi si ha V = U. Ma y ∈ V e¬y ∈ U, dunque 0 = y∧¬y ∈ U = V . Tale contraddizione deriva dall’aver suppostol’esistenza di un tale y, dunque a è un atomo.

Il seguente risultato caratterizza le algebra di Boole atomiche.

Proposizione 3.101. Sia B un’algebra di Boole. B è atomica se, e solo se, sup(A(B)) = 1.

Dimostrazione. Sia B atomica e sia z = sup(A(B)) 6= 1. Di conseguenza, ¬z 6= 0 e peripotesi esiste a ∈ A(B) tale che a 6 ¬z, e quindi a∧¬z = a. Ma a 6 sup(A(B)) = z

implica a = a∧¬z = 0, un assurdo.Viceversa, sia y ∈ B tale che a � y per ogni a ∈ A(B). Allora a 6= y∧ a implica

y∧ a =0 e a 6 ¬y. Quindi 1 = sup(A(B)) 6 ¬y e ¬y = 1, che implica y = 0.

Nei seguenti risultati il risultato viene ristretto al caso delle algebre finite.

Proposizione 3.102. Sia B un’algebra di Boole finita. Sia Ax = {a ∈ A(B) | a 6 x}. Allorax si scrive in maniera univoca come sup(Ax).

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

64 algebre di boole .

Dimostrazione. Poiché B è finita, allora è atomica e sup(A(B)) = 1 e siano a1, . . . , angli atomi di B. Si ha x = x∧ 1 = x∧ (a1 ∨ · · ·∨ an) = (x∧ a1)∨ . . . (x∧ an). Per ognii = 1, . . . , n si ha che 0 6 ai ∧ x 6 ai. Quindi ai ∧ x = ai oppure ai ∧ x = 0. Nelprimo caso si ha ai 6 x. Siano ai1 , . . . , aik gli atomi minori o uguali a x. Segue chex = ai1 ∨ · · ·∨ aik .

Sia x = aj1 ∨ · · ·∨ ajl con {aj1 , . . . , ajl} 6= {ai1 , . . . , aik}. Esiste quindi almeno unindice jt tale che ajt /∈ {ai1 , . . . , aik}. Di conseguenza ajt ∧ (aj1 ∨ · · ·∨ ajl) = ajt ∧

(ai1 , . . . , aik). Ancora per la Proposizione 3.100, atomi distinti hanno 0 come infimo.Di conseguenza, per la proprietà distributiva, il primo membro sarà proprio uguale aajt , mentre il secondo a 0. Segue l’unicità della rappresentazione.

Teorema 3.103. Sia B una algebra di Boole finita e sia |A(B)| = n. Allora B è atomica, B èisomorfa a ℘(A(B)) e |B| = 2n.

Dimostrazione. Il fatto che B sia atomica segue dalla sua finitezza. Sia e : B→ ℘(A(B))

la mappa definita come segue

e : y ∈ B 7→ {a ∈ A(B) | a 6 y}.

Dalla Proposizione 3.102, se e(x) = {ai1 , . . . , aik}, si ha sup(e(x)) = ai1 ∨ · · ·∨ aik = x.La mappa e è iniettiva: infatti, siano x, y ∈ B tali che e(x) = e(y) = {ai1 , . . . aik}.

Segue che sup(e(x)) = sup(e(y)) e di conseguenza x = y.La mappa e è suriettiva: per ogni A ∈ ℘(A(B)), A ⊆ B e e(sup(A)) = A.Resta da vedere che e è omomorfismo di algebre di Boole. Siano C = {ai1 , . . . , aik}

con x = ai1 ∨ · · ·∨ aik e D = {bj1 , . . . , bjl} con y = bj1 ∨ · · ·∨ bjl . Allora e(x∨ y) =

e((ai1 ∨ · · ·∨aik)∨ (bj1 ∨ · · ·∨bjl)) = {ai1 , . . . , aik , bj1 , . . . , bjl} = C∪D = e(x)∪ e(y).Siano C = {ai1 , . . . , aik} con x = ai1 ∨ · · ·∨ aik e Cc = {bj1 , . . . , bjl}. Vediamo che

sup(Cc) = ¬x. Sia z = bj1 ∨ · · ·∨ bjl . Usando le proprietà distributiva e associativa sivede facilmente che x∨ z = (ai1 ∨ · · ·∨ aik)∨ (bj1 ∨ · · ·∨ bjl) = 1 e x∧ z = (ai1 ∨

· · ·∨ aik)∧ (bj1 ∨ · · ·∨ bjl) = 0. Quindi z = ¬x e e(¬x) = e(x)c.Inoltre, e(1) = e(sup(A(B)) = A(B) e e(0) = {a ∈ A(B) | a 6 0} = ∅. Infine, per le

leggi di De Morgan, segue che e(x∧ y) = e(e) ∩ e(y) ed e è omomorfismo di algebredi Boole.

Corollario 3.104. Tutte le algebre di Boole di cardinalità finita n ∈ N sono isomorfe. Inoltre,n è necessariamente una potenza di 2.

Dimostrazione. Siano B1 e B2 due algebre di Boole di cardinalità finita n ∈ N fissata.Per il Teorema 3.103 si ha che B1 ' ℘(A(B1)) e B2 ' ℘(A(B2)). Di conseguenzan = 2|A(B1)| = 2|A(B2)| e la tesi segue banalmente.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

4S I N TA S S I E S E M A N T I C A D E L L A L O G I C A D E L P R I M O O R D I N E .

Il calcolo proposizionale che abbiamo presentato è poco espressivo. Manca la possi-bilità di esprimere che una certa proprietà P vale per tutti gli elementi di un certoinsieme, oppure che esiste almeno un elemento che gode della proprietà P. Se x e ysono elementi di un dato insieme, scriveremo P(x) per indicare che la proprietà P valeper l’elemento x o R(x, y) per indicare che l’elemento x è in relazione R con l’elementoy. Ad esempio, P(x) potrebbe essere l’asserzione seguente: “x è rosso,” dove x denotaun qualsiasi oggetto, oppure la relazione R(x, y) potrebbe indicare che x è più vec-chio di y, dove x e y sono elementi nell’insieme degli esseri umani. Grazie a questolinguaggio più espressivo, possiamo ora studiare ragionamenti come il seguente, chenon sono affrontabili con la logica proposizionale.

Anna è moglie di Nicola,

Se una qualsiasi persona è moglie di un qualsiasi altro,

allora quell’altro è marito di questa persona,

Nicola è marito di Anna.

Con la nostra nuova notazione potremmo indicare con R(x, y) che x è marito di y econ Q(x, y) che x è moglie di y, dunque avremmo:

Q(Anna, Nicola),

Q(x, y)→ R(y, x)

R(Nicola, Anna).

La struttura logica del ragionamento comincia a diventare più evidente. Quello cheancora manca è il poter esprimere la parola qualsiasi del ragionamento iniziale. Intro-durremo due nuovi simboli, che indicheremo con ∀ e ∃, a cui attribuiremo i seguentisignificati:

1. ∀xϕ(x) servirà ad indicare che la proprietà ϕ vale per ogni elemento x (di unqualche insieme prefissato),

2. ∃xϕ(x) servirà ad indicare che la proprietà ϕ vale per qualche x, cioè che esistealmeno un elemento x per cui ϕ(x) è vera.

I due simboli ∀ e ∃ si chiamano, rispettivamente, quantificatore universale e quantifi-catore esistenziale. Si tratterà quindi di estendere il linguaggio del calcolo proposizio-nale aggiungendo questi due nuovi simboli, assieme a tutta una serie di altri “oggetti”di cui avremo bisogno.

65

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

66 sintassi e semantica della logica del primo ordine .

4.1 il linguaggio del calcolo dei predicati

Definiamo ora l’alfabeto che ci servirà a creare espressioni logiche del tipo visto sopra.

Definizione 4.1. Un linguaggio del primo ordine è un insieme L composto da:

1. un insieme infinito di simboli di variabile: Var = {x, y, z, . . .} (oppure {x1, x2, x3, . . .});

2. un insieme (anche vuoto) di simboli di costante: a, b, c, . . . (oppure c1, c2, c3, . . .);

3. un insieme (anche vuoto) di simboli di predicato (o relazione): P,Q, R, . . . (oppureP1, P2, P3, . . .);

4. un insieme (anche vuoto) di simboli di funzione: f, g, h, . . . (oppure f1, f2, f3, . . .);

5. una funzione a che assegna a ogni simbolo di predicato e di funzione un numeronaturale, detta arietà del simbolo.

6. i connettivi proposizionali: ¬,∧,∨,→, ⊥;

7. i simboli per i quantificatori: ∀, ∃;

8. i simboli ausiliari: parentesi e virgole;

L’arietà dei simboli di predicato sta a indicare il corretto numero di argomenti daassociare ad ogni predicato. I predicati a due argomenti sono detti binari, ma possonoesserci predicati che richiedono un solo argomento o altri che ne richiedono più di due.Ad esempio, nella frase “5 è un numero primo”, il predicato “essere un numero primo”ha un solo argomento, il numero 5; nella frase “8 è compreso tra 6 e 12”, il predicato“essere compreso” ha tre argomenti: i numeri 8, 6, 12. L’arietà permetterà più avantidi definire i termini e le formule ben formate. Inoltre nella valutazione semantica,ogni simbolo di predicato P tale che a(P) = m sarà associato a un predicato con margomenti. Similmente, ogni simbolo di funzione f tale che a(f) = n sarà associato auna funzione n-aria.

Osservazione 4.2. Data l’importanza dell’uguaglianza in matematica, considereremo ilsimbolo = presente in ogni linguaggio e lo interpreteremo sempre nell’uguaglianzatra elementi.

A differenza della logica proposizionale, in questo linguaggio abbiamo due tipidi costrutti: quelli che rappresentano individui, che chiameremo termini e quelli cherappresentano asserzioni su questi individui, che chiameremo formule.

Fissato un linguaggio (del prim’ordine) L cominciamo con il definire i termini dellinguaggio, la seguente definizione si specializza, nel caso delle algebre di Boole, alladefinizione 3.35

Definizione 4.3. L’insieme Term dei termini è il più piccolo insieme chiuso rispettoalle seguenti regole

• ogni elemento di Var appartiene a Term,

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

4.1 il linguaggio del calcolo dei predicati 67

• se c è un simbolo di costante in L allora c ∈ Term,

• se f è un simbolo di funzione in L tale che a(f) = n e t1, . . . , tn ∈ Term, alloraanche f(t1, . . . , tn) ∈ Term.

Scriveremo t(x1, ..., xn) per evidenziare il fatto che le variabili individuali in t sonocomprese tra le variabili x1, . . . , xn.

Tenendo sempre fissato un linguaggio L passiamo ora alla definizione delle formuledi L.

Definizione 4.4. L’insieme Form∀ delle formule ben formate (del prim’ordine) è il piùpiccolo insieme chiuso rispetto alle seguenti regole:

1. se t1, t2, . . . , tn ∈ Term e P è un simbolo di predicato in L tale che a(P) = n,allora P(t1, . . . , tn) ∈ Form∀ (tale formula è detta formula atomica).

2. se ϕ1, ϕ2 ∈ Form∀ allora

a) (¬ϕ1) ∈ Form∀;b) (ϕ1 ∧ϕ2) ∈ Form∀;c) ∃x(ϕ1) ∈ Form∀ con x ∈ Var.

Come per la logica proposizionale definiremo gli altri connettivi come le seguentiabbreviazioni:

ϕ∨ψ := ¬(¬ϕ∧¬ψ), ϕ→ ψ := ¬ϕ∨ψ

ϕ↔ ψ := (ϕ→ ψ)∧ (ψ→ ϕ), ∀x(ϕ) := ¬∃x(¬ϕ).

Esempio 4.5. Le seguenti sono in Form∀:

(∃x((ϕ(x)∧ψ)→ (∀yR(y))))

(∀x(∃y(ϕ(x, f(c, y))∨ψ(y, c))))Al contrario, la seguente sequenza di simboli non è in Form∀:

∀x∃ → (∧Q∀

Osservazione 4.6. Le regole che abbiamo stabilito conducono a un uso eccessivo delleparentesi. Come nel calcolo proposizionale, conviene dunque stabilire delle prioritàtra i vari simboli:

priorità più alta ∀, ∃,¬,

∧,

∨,

priorità più bassa → .

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

68 sintassi e semantica della logica del primo ordine .

La formula(∀x(ϕ(x)→ ((∃yψ(x, y))∨ (¬ϕ(x)))))

si potrà dunque scrivere come segue:

∀x(ϕ(x)→ ∃yψ(x, y)∨¬ϕ(x)) .

Diversamente dalla logica proposizionale, nel primo ordine non è sempre possibileassegnare un valore di verità a una formula ben formata. Questo non è un limite delnostro sistema formale, cose del genere succedono anche nel linguaggio quotidiano,infatti finché tutti i termini delle espressione non sono stati univocamente determinati,in generale non è possibile asserire niente sul valore di verità della frase. Le frasi

“il numero naturale x è il doppio di 7”

“il signor x è il Preside dell’Istituto”

sono esempi di frasi ben formate, di cui però non possiamo stabilire se siano vere ofalse. Dipende, infatti, da ciò che la variabile x rappresenta. In questi casi, parliamo diformule aperte. In altre parole, una variabile si dice libera in una formula ϕ quandonon è sottoposta a nessuna quantificazione all’interno della formula ϕ, mentre unavariabile quantificata si dice legata (o vincolata). Diamo ora una definizione più formale.

Definizione 4.7. Per ogni termine t ∈ Term definiamo per ricorsione l’insieme dellesue variabili libere FV(t):

• se t ∈ Var allora FV(t) = {t},

• se t è una costante allora FV(t) = ∅,

• se t = f(t1, . . . , tn) allora FV(t) = FV(t1)∪ . . . , FV(tn).

Per ogni formula ϕ ∈ Form∀ definiamo per ricorsione l’insieme delle sue variabililibere FV(ϕ).

1. se ϕ = P(t1, . . . , tn) allora FV(ϕ) = FV(t1)∪ . . . , FV(tn),

2. se ϕ = (¬ϕ1) allora FV(ϕ) = FV(ϕ1);

3. se ϕ = (ϕ1 ∧ϕ2) allora FV(ϕ) = FV(ϕ1)∪ FV(ϕ2);

4. se ϕ = ∃x(ϕ1) allora FV(ϕ) = FV(ϕ1) \ {x};

L’unico passaggio a cui fare particolare attenzione nella precedente definizione èquello dei quantificatori. Come per i termini, scriveremo ϕ(x1, ..., xn) per evidenziareil fatto che le variabili libere in ϕ sono comprese tra le variabili x1, . . . , xn.

Definizione 4.8. Una formula ben formata ϕ è detta aperta se essa contiene almenouna variabile libera (FV(ϕ) 6= ∅). In caso contrario essa è detta chiusa. L, e variabili cheoccorrono in ϕ, ma non appartengono a FV(ϕ) si dicono vincolate.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

4.1 il linguaggio del calcolo dei predicati 69

Definizione 4.9. Siano t, s due termini e x una variabile. Il termine s[t/x] ottenuto das con una sostituzione di tutte le occorrenze di x con t è definito ricorsivamente comesegue:

1. se s ∈ Var allora s[t/x] =

s se s 6= xt se s = x

;

2. se s è un simbolo di costante allora s[t/x] = s;

3. se s = f(s1, . . . , sn) allora s[t/x] = f(s1[t/x], . . . , sn[t/x]);

Ora che è chiaro come operare una sostituzione in un termine, si può definire cosasi intende per una sostituzione all’interno di una formula.

Definizione 4.10. Siano ϕ una formula, t un termine e x una variabile. La formulaϕ[t/x] è definita ricorsivamente come segue:

1. se ϕ = P(t1, . . . , tn), allora P(t1, . . . , tn)[t/x] = P(t1[t/x], . . . , tn[t/x]);

2. se ϕ = ϕ1 ∧ϕ2 allora (ϕ∧ψ)[t/x] = (ϕ[t/x]∧ψ[t/x]);

3. se ϕ = (¬ϕ1) allora ϕ[t/x] = ¬(ϕ1[t/x]);

4. se ϕ = ∃y(ϕ1) allora

∃y(ϕ)[t/x] =

∃y(ϕ[t/x]) se x 6= y,∃y(ϕ) se x = y,

Dal punto di vista sintattico l’unica attenzione che bisogna prestare, dopo aver po-sto la definizione 4.10, è che il risultato sia ancora una formula ben formata. Questaverifica è immediata. Quando però daremo significato alle stringhe di simboli chiamateformule, dovremo fare attenzione che queste sostituzioni non stravolgano tale signifi-cato. Anticipiamo a ancora una volta a livello intuitivo il significato delle formule econsideriamo il seguente esempio:

Esempio 4.11. Consideriamo la formula ϕ = ∃y(x < y), in cui x compare come va-riabile libera e y come variabile legata. Se consideriamo il termine t = z, in cui noncompare la variabile y, non incontriamo nessun problema: la formula ottenuta sosti-tuendo z ad x, che indicheremo con ϕ[z/x], è ∃y(z < y) ed esprime la stessa asserzionedella formula ϕ. Al contrario, se consideriamo il termine t = y, in cui compare propriola y come variabile libera, si ottiene la formula ϕ[y/x] = ∃y(y < y), la quale ha unsignificato logico diverso: è sempre falsa.

Il problema presentato nell’esempio 4.11 può essere risolto in due maniere pratica-mente equivalenti. La prima, che è quella che utilizzeremo in seguito, è non permetteresostituzioni del tipo ϕ[t/x] in cui le variabili di t vengono vincolate dai quantificatoridi ϕ dopo la sostituzione.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

70 sintassi e semantica della logica del primo ordine .

Definizione 4.12. Diremo che un temine t è sostituibile per x in ϕ se le variabili di tnon diventano vincolate all’interno di ϕ dopo la sostituzione.

I seguito assumeremo sempre (a volte tacitamente) che t sia sostituibile per x in ϕquando operiamo la sostituzione ϕ[t/x].

Un metodo alternativo per evitare il problema dell’esempio 4.11 sfrutta una proprie-tà che dimostreremo in seguito, cioè che rinominare la variabile vincolate non cambia ilsignificato di una formula. Dunque è possibile evitare il problema della cattura delle va-riabili di t nella sostituzione ϕ[t/x] ridefinendo il passo ∃ nella definizione 4.10 comesegue

∃y(ϕ)[t/x] =

∀y(ϕ[t/x]) se x 6= y e y 6∈ FV(t),

∃w(ϕ[w/y][t/x]) se x 6= y e y ∈ FV(t),

∃y(ϕ) se x = y,

dove w è una variabile nuova, cioè che non compare né in ϕ né in t. La seconda solu-zione prevede dunque di rinominare opportunamente la variabile legata y all’internodella formula ϕ prima di operare la sostituzione del termine t al posto della variabilex. In questo modo nell’esempio 4.11 si avrebbe:

ϕ[y/x] =(∃y(x < y))[z/y][y/x] ==(∃z(x < z))[y/x] ==(∃z(y < z)) ,

la quale ha, intuitivamente, lo stesso significato della formula ϕ.Il seguente lemma illustra le condizioni in cui si possono scambiare sostituzioni

consecutive senza cambiare il risultato finale.

Lemma 4.13. Siano r, s, t ∈ Term.

1. Se x e y sono variabili distinte tali che x 6∈ FV(r) allora (t(s/x))(r/y) = (t(r/y))(s(r/y)/x).

2. Se x e y sono variabili distinte tali che x 6∈ FV(r) e r ed s sono sostituibili per x e yrispettivamente in ϕ, allora (ϕ(s/x))(r/y) = (ϕ(r/y))(s(r/y)/x).

Dimostrazione. Voce 1. Per induzione su t.

- Se t = c allora le sostituzioni non hanno effetto, quindi l’asserto vale banalmente.

- Se t ∈ Var e t 6= x, y allora nuovamente le sostituzioni non hanno effetto.

- Se t = x allora da un lato si ha (t(s/x))(r/y) = s(r/y) e dall’altro (t(r/y))(s(r/y)/x) =

x(s(r/y)/x) = s(r/y). Quindi l’asserto è vero.

- Se t = y allora da un lato si ha (t(s/x))(r/y) = t(r/y) = r e dall’altro (t(r/y))(s(r/y)/x) =

r(s(r/y)/x)r, dove l’ultima uguaglianza vale perché per ipotesi x 6∈ FV(r). Quindil’asserto è vero anche in questo caso.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

4.2 semantica 71

- Infine, se t = f(t1, . . . , tn) allora

(t(s/x))(r/y) = f((t1(s/x))(r/y), . . . , (tn(s/x)))(r/y)

= f((t1((r/y))(s(r/y)/x), . . . , (tn((r/y))(s(r/y)/x)

= ((t1, . . . , tn)(r/y))(s(r/y)/x) = (t(r/y))(s(r/y)/x).

avendo semplicemente usato la definizione di sostituzione e l’ipotesi induttiva.

La dimostrazione della voce 2 è simile.

Corollario 4.14. Sia t ∈ Term. Se y 6∈ FV(t) allora t(c/x) = (t(y/x))(c/y). Similmente, seϕ ∈ Form∀, y 6∈ FV(ϕ) e y è sostituibile per x in ϕ, allora ϕ(c/x) = (ϕ(y/x))(c/y).

4.2 semantica

Ci poniamo ora il problema di attribuire un significato a tutte le formule ben formatedel nostro linguaggio. Se nel caso del Calcolo Proposizionale ciò era piuttosto facile(ricordiamo che si trattava solo di stabilire le tavole di verità dei connettivi proposizio-nali), nel caso del Calcolo dei Predicati (al primo ordine) l’attribuzione di un valore diverità a una formula ben formata risulta complicata a causa della presenza di costanti,variabili, ecc.

Innanzitutto dovremo fissare un dominio, cioè un insieme A, nel quale assumeran-no i loro valori i simboli di costante e i simboli di variabile. Poi ad ogni simbolo dipredicato P, con a(P) = n dovremo far corrispondere una relazione n-aria sull’insie-me A, cioè una funzione definita su An a valori nell’insieme {0, 1} (VERO o FALSO).Cominciamo quindi col dare la seguente definizione.

Definizione 4.15. Una struttura del prim’ordine A è data da un insieme non vuoto A,detto dominio (o supporto della struttura) e da un assegnamento che associa:

1. a ogni simbolo di costante c un elemento cA ∈ A;

2. a ogni simbolo di predicatoQ, tale che a(Q) = n, una relazione n-ariaQA : An →{0, 1} o in altre parole, un sottoinsieme QA ⊆ An.

3. a ogni simbolo di funzione f, tale che a(f) = m, una funzione m-aria fA : Am →{0, 1}.

In generale, non è possibile assegnare un valore di verità a una formula che contengadelle variabili libere; sarà prima necessario assegnare a tali variabili degli elementi deldominio. Di conseguenza il valore di verità di una formula dipenderà, in generale,dalla specifica interpretazione scelta. Diamo dunque la seguente definizione:

Definizione 4.16. Data una struttura A con dominio A, chiameremo interpretazionein A una qualunque funzione v : Var→ A.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

72 sintassi e semantica della logica del primo ordine .

Con un leggero abuso di notazione, è possibile estendere la definizione di sostituzio-ne anche alle interpretazioni. Se v è un’interpretazione in A e a ∈ A, indicheremo conv[a/x] l’interpretazione v modificata in modo da associare alla variabile x l’elementoa. Più precisamente, si ha:

v[a/x](y) =

v(y) se y 6= xa se y = x

Definiamo ora il valore di un termine per una data interpretazione:

Definizione 4.17. Data un’interpretazione v definiamo v come l’estensione di v a tuttol’insieme dei termini Term come segue: se t è un qualsiasi termine allora

1. se t = x per qualche variabile x, si ha v(t) = v(x);

2. se t = c per qualche costante c, si ha v(t) = cA;

3. se t = f(t1, . . . , tn), si ha v(t) = fA(v(t1), . . . , v(tn)).

È immediato verificare che una tale estensione è unica.

Possiamo ora definire formalmente il valore di verità di una formula ben formataϕ sotto l’interpretazione v. Indicheremo con il simbolo A, v |= ϕ che la formula ϕ èvalida in A sotto l’interpretazione v.

Definizione 4.18. [Semantica del prim’ordine] Sia v un’interpretazione, la relazione|= è definita ricorsivamente come segue:

1. A, v |= ϕ(t1, . . . , tn) vale se, e soltanto se, ϕA(v(t1), . . . , v(tn)) è vera in A;

2. A, v |= (¬ϕ) se, e soltanto se, A, v 6|= ϕ (cioè non vale che A, v |= ϕ);

3. A, v |= (ϕ∧ψ) se, e soltanto se, A, v |= ϕ e A, v |= ψ;

4. A, v |= (∃xϕ) se, e soltanto se, esiste un a in A tale che A, v[a/x] |= ϕ.

Esempio 4.19. Si consideri la formula

(∃xP(x)∨ ∃xQ(x))→ (∀x∃y(¬P(x)∨¬Q(y)))

e l’interpretazione

A = N, v(x) = 3, v(y) = 5, P(n)⇔ n è pari, Q(n)⇔ n è dispari

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

4.2 semantica 73

diamo l’interpretazione della formula e stabiliamo se è vera.

N |= (∃xP(x)∨ ∃xQ(x))→ (∀x∃y(¬P(x)∨¬Q(y))) sse

N |=¬ (∃xP(x)∨ ∃xQ(x))∨ (∀x∃y(¬P(x)∨¬Q(y))) sse

N |=¬ (∃xP(x)∨ ∃xQ(x)) oppure N |= (∀x∃y(¬P(x)∨¬Q(y))) sse

N 6|= (∃xP(x)∨ ∃xQ(x)) oppure

per qualsiasi n ∈N N |= (∃y(¬P(n)∨¬Q(y))) sse

N 6|=∃xP(x) oppure N 6|= ∃xQ(x) oppure

per qualsiasi n ∈N N |= (∃y(¬P(n)∨¬Q(y))) sse

C’è un m ∈N N 6|= P(m) e c’è un l ∈N N 6|= Q(l)

oppure per qualsiasi n ∈N esiste k ∈N N |= ¬P(n)∨¬Q(k) sse

C’è un m ∈N tale che m non è pari e c’è un l ∈N tale che

l non è dispari oppure per qualsiasi n ∈N esiste k ∈N tale che

N |= ¬P(n) oppure N |= ¬Q(k) sse

C’è un m ∈N tale che m non è pari e c’è un l ∈N

tale che l non è dispari oppure per qualsiasi n ∈N esiste k ∈N

tale che n non è pari oppure k non è dispari .

Ovviamente vera.

Si noti che le definizioni date ai voci 1 e 2 della semantica di ¬ e ∨, sono equivalentia quelle date nel Calcolo Proposizionale mediante l’uso delle tavole di verità. Inoltre avolte può essere utile dare direttamente la semantica dei connettivi →, ∧ e ↔, inveceche ridursi a ∨, ¬ e ∀. I seguenti fatti sono di immediata verifica.

Lemma 4.20. Sia ϕ una formula, A una struttura e v un’interpretazione in A. Allora si ha

1. A, v |= (ϕ∨ψ) se, e soltanto se, A, v |= ϕ oppure A, v |= ψ;

2. A, v |= (ϕ→ ψ) se, e soltanto se, ogni volta che A, v |= ϕ si ha anche A, v |= ψ;

3. A, v |= (ϕ↔ ψ) se, e soltanto se, A, v |= ϕ⇔ A, v |= ψ;

4. A, v |= (∀xϕ) se, e soltanto se, per ogni a in A, A, v[a/x] |= ϕ;

Osservazione 4.21. Al contrario di quanto avviene nel Calcolo Proposizionale, le defini-zioni che abbiamo dato non consentono, in generale, di determinare in modo effettivoil valore di verità di una formula ben formata ϕ in una data interpretazione A, v . In-fatti, se il dominio A è un insieme infinito e se la formula ϕ contiene dei quantificatori,per determinare il valore di verità vA(ϕ) sarebbe necessario calcolare il valore di veritàdelle infinite formule che si ottengono da ϕ sostituendo alle variabili quantificate gliinfiniti elementi di A.

Notiamo infine che il valore di verità di una formula ben formata ϕ sotto una datainterpretazione v dipende solo dalla restrizione di v all’insieme delle variabili libere diϕ. Si ha infatti:

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

74 sintassi e semantica della logica del primo ordine .

Proposizione 4.22. Siano ϕ una formula ben formata e A una struttura. Sia FV(ϕ) =

{y1, y2, . . . , yn} l’insieme delle variabili libere di ϕ . Allora, per ogni coppia di interpretazioniv1 e v2 in A, se v1(yi) = v2(yi), per ogni i = 1, . . . , n, allora A, v1 |= ϕ sse A, v2 |= ϕ.

Dimostrazione. La dimostrazione per induzione sulla struttura della formula ben for-mata ϕ è immediata.

Corollario 4.23. Se ϕ è un enunciato (cioè una formula chiusa), allora il suo valore di veritànon dipende dalle interpretazioni. In altre parole per ogni struttura A e per ogni coppia diinterpretazioni v, v ′ in A, si ha che A, v |= ϕ se, e soltanto se, A, v ′ |= ϕ.

4.3 validità , soddisfacibilità e modelli

Definizione 4.24. Sia ϕ ∈ Form∀ e A una struttura.

1. La formula ϕ è valida sotto l’interpretazione v in A se A, v |= ϕ.

2. La formula ϕ è valida in A se per ogni interpretazione v in A si ha A, v |= ϕ. Inquesto caso scriveremo semplicemente A |= ϕ e diremo che A è un modello diϕ.

3. La formula ϕ è logicamente valida se essa è vera in ogni struttura. In altreparole se per ogni A e per ogni interpretazione v in A si ha A, v |= ϕ. In tal casoscriveremo |= ϕ.

4. La formula ϕ è soddisfacibile se esistono una struttura A ed un’interpretazionev tale che A, v |= ϕ.

Sia inoltre Γ ⊆ Form∀.

6. L’insieme Γ è logicamente valido se tutte le formule in Γ sono logicamente valide.In tal caso scriveremo |= Γ .

7. L’insieme Γ è soddisfacibile se tutte le formule γ ∈ Γ sono soddisfacibili dallastessa struttura e sotto la stessa interpretazione. In altre parole, se esiste A edesiste una valutazione v in A tali che per ogni formula γ ∈ Γ si ha A, v |= γ. Intal caso diremo che A è un modello per Γ e scriveremo A |= Γ .

8. La formula ϕ è conseguenza logica di Γ , se per ogni struttura A ed ogni inter-pretazione v per i quali si abbia A, v |= γ per ogni γ ∈ Γ , risulta anche A, v |= ϕ.In tal caso scriveremo Γ |= ϕ,

9. Le formule ϕ e ψ sono logicamente equivalenti se si ha {ϕ} |= ψ se, e soltantose {ψ} |= ϕ, in tal caso scriveremo ϕ ≡ ψ. È facile vedere che ϕ ≡ ψ se, e solo se,|= ϕ↔ ψ.

Il concetto di formula logicamente valida e quello di tautologia sono collegati dalfatto che le strutture a livello proposizionali sono semplicemente le valutazioni. Ri-cordiamo che una tautologia è una qualsiasi formula proposizionale che abbia solo 1

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

4.3 validità , soddisfacibilità e modelli 75

nell’ultima colonna della sua tavola di verità, in altre parole una formula vera sottoogni possibile valutazione. Similmente una formula logicamente valida è una formuladel prim’ordine vera in ogni struttura.

Osservazione 4.25. Dalle definizioni precedenti seguono immediatamente i seguentifatti. Se Γ ∪ {ϕ} è un insieme di formule allora:

1. ϕ è logicamente valida se, e solo se, ¬ϕ non è soddisfacibile (cioè è insoddifaci-bile).

2. ϕ è soddisfacibile se, e solo se, ¬ϕ non è logicamente valida.

3. Γ |= ϕ se, e solo se, Γ ∪¬ϕ è insoddisfacibile.

Quindi affermare che una formula ϕ non sia valida non implica che essa sia contrad-dittoria (cioè che ¬ϕ sia valida), ma solo che ¬ϕ è soddisfacibile.

Esempio 4.26. Si consideri la formula

(∀xP(x)∨ ∀xQ(x))→ (∀x(¬P(x)→ ∀yQ(y))) .

e l’interpretazione

A = N, v(x) = 1, v(y) = 5 P(n)⇔ n è pari, Q(n)⇔ n è dispari

stabiliamo se è vera o falsa.

N |= (∀xP(x)∨ ∀xQ(x))→ (∀x(¬P(x)→ ∀yQ(y))) sse

N |=¬ (∀xP(x)∨ ∀xQ(x))∨ (∀x(P(x)∨ ∀yQ(y))) sse

N |=∃x¬P(x)∧ ∃x¬Q(x) oppure N |= ∀x(P(x)∨ ∀yQ(y)) sse

N |=∃x¬P(x) e N |= ∃x¬Q(x) oppure per qualsiasi n ∈N N |= P(n)∨ ∀yQ(y) sse

C’è un m ∈N N 6|= P(m) e c’è un l ∈N N 6|= Q(l)

oppure per qualsiasi n ∈N N |= P(n) oppure per ogni k ∈N N |= Q(k) sse

C’è un m ∈N che non è pari e c’è un l ∈N che non è dispari

oppure per qualsiasi n ∈N n è pari oppure per ogni k ∈N k è dispari.

La formula è vera perché la prima parte della disgiunzione è vera in N. (Ma si notiche la formula è logicamente valida, quindi vera in qualsiasi struttura).

Esempio 4.27. Si consideri la formula

(∀xP(x)∧ ∀xQ(x))→ (∃x(¬P(x)∨¬Q(x))→ (P(x)∧¬P(x))) .

e l’interpretazione

A = N, v(x) = 3, P(n)⇔ n è pari, Q(n)⇔ n è dispari.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

76 sintassi e semantica della logica del primo ordine .

scriviamo tutti i passaggi che portano all’interpretazione della formula e controlliamose è vera o falsa.

N |= (∀xP(x)∧ ∀xQ(x))→ (∃x(¬P(x)∨¬Q(x))→ (P(x)∧¬P(x))) sse

N |=¬ (∀xP(x)∧ ∀xQ(x))∨¬ (∃x(¬P(x)∨¬Q(x))∨ (P(x)∧¬P(x))) sse

N |= (∃x¬P(x)∨ ∃x¬Q(x))∨ (∀x(P(x)∧Q(x))∨ (P(x)∧¬P(x))) sse

N |=∃x¬P(x) o N |= ∃x¬Q(x) o N |= ∀xP(x)∧ ∀xQ(x) o N |= P(x)∧¬P(x) sse

C’è un m ∈N N 6|= P(m) o c’è un l ∈N N 6|= Q(l) o per qualsiasi n ∈N

N |= P(n) e per ogni k ∈N N |= Q(k) o N |= P(lx) e N |= ¬P(x) sse

C’è un un numero naturale m che non è pari o c’è un numero naturale l

che non è dispari o per qualsiasi numero n è pari e qualsiasi numero

k è dispari o 3 è pari e 3 è dispari.

La formula è vera perché la prima parte della disgiunzione è vera in N. (Ma si notiche la formula è una logicamente valida, quindi vera in qualsiasi struttura).

Lemma 4.28. Sia ϕ una formula con FV(ϕ) = {x1, . . . .xn}, per ogni struttura A si ha

A |= ϕ se, soltanto se, A |= ∀x1 . . . ∀xnϕ.

Lemma 4.29. Per ogni formula ϕ si ha:

|= ¬∀xϕ↔ ∃x¬ϕ, |= ¬∃xϕ↔ ∀x¬ϕ, (3)

|= ∀x∀yϕ↔ ∀y∀xϕ, |= ∃x∃yϕ↔ ∃y∃xϕ, (4)

|= ∀x(ϕ∧ψ)↔ ∀xϕ∧ ∀xψ, |= ∃x(ϕ∨ψ)↔ ∃xϕ∨ ∃xψ. (5)

Se inoltre x /∈ FV(ϕ) allora valgono anche le seguenti:

|= ∀yϕ↔ ∀x(ϕ[x/y]), |= ∃yϕ↔ ∃x(ϕ[x/y]), (6)

|= ∀x(ϕ∨ψ)↔ ϕ∨ ∀xψ, |= ∃x(ϕ∧ψ)↔ ϕ∧ ∃xψ, (7)

|= ∀xϕ↔ ϕ, |= ∃xϕ↔ ϕ. (8)

Dimostrazione. Le dimostrazioni delle eq. da (3) a (8) sono tutte molto simili. Vediamo idettagli della dimostrazione di eq. (3) a titolo di esempio. Supponiamo che FV(∀xϕ) ={z1, . . . , zn}. Allora occorre dimostrare che per ogni struttura A,

A |= ∀z1, . . . , ∀zn (¬∀xϕ↔ ∃x¬ϕ) .

Equivalentemente, fissata un’arbitraria struttura A e un’arbitraria interpretazione v inA, occorre mostrare che per ogni a1, . . . , an ∈ A,

A, v(a1, . . . , an/x1, . . . , xn) |= (¬∀xϕ↔ ∃x¬ϕ)

Utilizzando il lemma 4.20, ciò diventa

A, v(a1, . . . , an/x1, . . . , xn) |= ¬∀xϕ ⇔ A, v(a1, . . . , an/x1, . . . , xn) |= ∃x¬ϕ

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

4.3 validità , soddisfacibilità e modelli 77

che a sua volta, applicando la definizione 4.18, equivale a

per ogni a ∈ A A, v(a1, . . . , an/x1, . . . , xn) 6 |= ϕ(a/x)⇔

esiste b ∈ A A, v(a1, . . . , an/x1, . . . , xn) |= ¬ϕ(b/x)

Quest’ultima equivalenza è ovviamente valida.

Riguardo alla eq. (7), si noti che l’ipotesi x /∈ FV(ϕ) è cruciale. Infatti ∀x(P(x)∨Q(x))

asserisce che preso un qualsiasi elemento di una data struttura, esso ha la proprietàP o ha la proprietà Q (ad esempio in N potrebbero essere interpretate come “pari” e“dispari”), mentre ∀xP(x)∨ ∀xQ(x) asserisce che o tutti gli elementi di una strutturahanno la proprietà P o tutti hanno la proprietà Q (nell’interpretazione precedente:tutti in numeri naturali sono pari oppure sono tutti dispari). Ovviamente la prima nonimplica la seconda.

Riguardo alla eq. (6), si noti che essa ha il seguente corollario immediato.

Corollario 4.30. Ogni formula è logicamente equivalente a una le cui variabili libere sonotutte diverse da quelle vincolate.

Teorema 4.31 (Teorema di sostituzione). Supponendo che tutte le seguenti sostituzionisiano ammissibili, si ha:

1. |= (t1 = t2)→ (s(t1/x) = s(t2/x));

2. |= (t1 = t2)→ (ϕ(t1/x) = ϕ(t2/x)).

Dimostrazione. Entrambi i punti asseriscono che una certa formula è valida in ognistruttura e sotto ogni interpretazione. Per dimostrarli prendiamo dunque una strutturaarbitraria A e un’interpretazione arbitraria v in A.

Voce 1. Cominciamo notando che per il lemma 4.20, voce 1, mostrare l’asserto è equi-valente a far vedere che se A, v |= t1 = t2 allora A, v |= s(t1/x) = s(t2/x). Il fatto chevalga A, v |= t1 = t2 è equivalente a dire che v(t1 = v(t2. Procediamo per induzionesulla complessità di s. Se s è una variabile allora possiamo avere due casi: (1) s = x e inquesto caso abbiamo s(t1/x) = t1 e s(t2/x) = t2. , dunque A, v |= (s(t1/x) = s(t2/x))

equivale a A, v |= t1 = t2 e ciò vale per ipotesi; (2) s 6= x e abbiamo s(t1/x) =

s = s(t2/x) e l’asserto vale banalmente. Se s è una costante abbiamo nuovamentes(t1/x) = s = s(t2/x). Questo conclude il passo base. Se ora s = f(w1, . . . , wn), alloras(t1/x) = f(w1(t1/x), . . . , wn(t1/x)) e s(t2/x) = f(w1(t2/x), . . . , wn(t2/x)). Ricordia-mo che per la definizione 4.17 si ha v(s(t1/x)) = fA(v(w1(t1/x)), . . . , v(wn(t1/x))).Ma per ipotesi induttiva per 1 6 i 6 n, v(wi(t1/x)) = v(wi(t2/x)), dunque abbiamov(s(t1/x)) = v(s(t2/x)) e quindi A, v |= s(t1/x) = s(t2/x).

La dimostrazione della voce 2 è simile ed è lasciata per esercizio.

Concludiamo questa sezione con un teorema di forma normale. Diremo che unaformula ϕ è in forma normale prenessa se tutti i quantificatori in ϕ (se ce ne sono)appaiono all’inizio della formula, in altre parole se è della forma

Q1x1 . . . Qnxn(ψ)

dove per 1 6 i 6 n, Qi ∈ {∀, ∃} e ψ non ha quantificatori

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

78 sintassi e semantica della logica del primo ordine .

Teorema 4.32 (Teorema di forma normale per la logica del prim’ordine). Per ogniformula del prim’ordine ϕ esiste una formula χ in forma normale prenessa, tale che |= ϕ↔ χ.

Dimostrazione. Si dimostra per induzione sulla complessità di ϕ utilizzando il lem-ma 4.29.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

4.4 la deduzione naturale per la logica del prim’ordine . 79

4.4 la deduzione naturale per la logica del prim’ordine .

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

2.8 Natural Deduction 91

1 1 . σ := ∀x1 . . . xn∃y1 . . . ymϕ and τ := ∃y1 . . . ymψ are sentences in a lan-guage without identity, function symbols and constants, where ϕ and ψare quantifier free. Show: |= σ ⇔ σ holds in all structures with n elements.|= τ ⇔ τ holds in all structures with 1 element.

1 2. Monadic predicate calculus has only unary predicate symbols (no identity).Consider A = ⟨A, R1, . . . , Rn⟩ where all Ri are sets. Define a ∼ b := a ∈Ri ⇔ b ∈ Ri for all i≤n. Show that ∼ is an equivalence relation and that∼ has at most 2n equivalence classes. The equivalence class of a is denotedby [a]. Define B = A/ ∼ and [a] ∈ Si ⇔ a ∈ Ri, B = ⟨B, S1, . . . , Sn⟩.Show A |= σ ⇔ B |= σ for all σ in the corresponding language. For suchσ show |= σ ⇔ A |= σ for all A with at most 2n elements. Using this fact,outline a decision procedure for truth in monadic predicate calculus.

1 3. Let N be the standard model of arithmetic. Show N |= n < m⇔ n < m.

1 4. Let A = ⟨N, <⟩ and B = ⟨N,△⟩, where n△m iff (i) n < m and n, m botheven or both odd, or (ii) if n is even and m odd. Give a sentence σ suchthat A |= σ and L |= ¬σ.

1 5. If ⟨A, R⟩ is a projective plane, then ⟨A, R⟩ is also a projective plane (thedual plane), where R is the converse of the relation R. Formulated inthe two sorted language: if ⟨AP , AL, I⟩ is a projective plane, then so is⟨AL, AP , I⟩).

2.8 Natural Deduction

We extend the system of section 1 .5 to predicate logic. For reasons similarto the ones mentioned in section 1 .5 we consider a language with connectives∧,→, ⊥ and ∀. The existential quantifier is left out, but will be consideredlater.

We adopt all the rules of propositional logic and we add

∀I ϕ(x)∀xϕ(x)

∀E ∀xϕ(x)ϕ(t)

where in ∀I the variable x may not occur free in any hypothesis on whichϕ(x) depends, i.e. an uncancelled hypothesis in the derivation of ϕ(x). In ∀Ewe, of course, require t to be free for x.

∀I has the following intuive explanation: if an arbitrary object x has theproperty ϕ, then every object has the property ϕ. The problem is that none ofthe objects we know in mathematics can be considered “arbitrary”. So instead

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

92 2 Predicate Logic

of looking for the “arbitrary object” in the real world (as far as mathemat-ics is concerned), let us try to find a syntactic criteria. Consider a variablex (or a constant) in a derivation, are there reasonable grouns for calling x“arbitrary” ? Here is a plausible suggestion: in the context of the derivationswe shall call x arbitrary if nothing has been assumed concerning x. In moretechnical terms, x is arbitrary at its particular occurrence in a derivation ifthe part of the derivation above it contains no hypotheses containing x free.

We will demonstrate the necessity of the above restrictions, keeping inmind that the system at least has to be sound, i.e. that derivable statementsshould be true.

Restriction on ∀I: [x = 0]∀x(x = 0)

x = 0→ ∀x(x = 0)∀x(x = 0→ ∀x(x = 0))

0 = 0→ ∀x(x = 0)

The ∀ introduction at the first step was illegal.So ⊢ 0 = 0 → ∀x(x = 0), but clearly |= 0 = 0 → ∀x(x = 0) (take any

structure containing more than just 0).Restriction on ∀E: [∀x¬∀y(x = y)]

¬∀y(y = y)∀x¬∀y(x = y)→ ¬∀y(y = y)

The ∀ elimination at the first step was illegal.Note that y is not free for x in ¬∀y(x = y). The derived sentence is clearlynot true in structures with at least two elements.

We now give some examples of derivations. We assume that the reader hasby now enough experience in cancelling hypotheses, so that we will not longerindicate the cancellations by encircled numbers.

[∀x∀yϕ(x, y)]∀E

∀yϕ(x, y)∀E

ϕ(x, y)∀I

∀xϕ(x, y)∀I

∀y∀x(ϕ(x, y)→ I

∀x∀yϕ(x, y)→ ∀y∀xϕ(x, y)

[∀x(ϕ(x) ∧ ψ(x))]

ϕ(x) ∧ ψ(x)

ϕ(x)

∀xϕ(x)

[∀x(ϕ(x) ∧ ψ(x))]

ϕ(x) ∧ ψ(x)

ψ(x)

∀xψ(x)

∀xϕ(x) ∧ ∀xψ(x)

∀x(ϕ ∧ ψ)→ ∀xϕ ∧ ∀xψ

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

2.8 Natural Deduction 93

Let x ∈ FV (ϕ)

[∀x(ϕ→ ψ(x))]∀E

ϕ→ ψ(x) [ϕ]→ E

ψ(x)∀I

∀xψ(x)→ I

ϕ→ ∀xψ(x)

∀x(ϕ→ ψ(x))→ (ϕ→ ∀x(ψ(x))

[ϕ]∀I

∀xϕ[∀xϕ]

∀Eϕ

ϕ↔ ∀xϕ

In the righthand derivation ∀I is allowed, since x ∈ FV (ϕ), and ∀E is ap-plicable.

Note that ∀I in the bottom left derivation is allowed because x ∈ FV (ϕ),for at that stage ϕ is still (part of) a hypothesis.

The reader will have grasped the technique behind the quantifier rules: re-duce a ∀xϕ to ϕ and reintroduce ∀ later, if necessary. Intuitively, one makes thefollowing step: to show “ for all x . . . x . . . ” it suffices to show “. . . x . . . ” for anarbitrary x. The latter statement is easier to handle. Without going into finephilosophical distinctions, we note that the distinction “for all x . . . x . . . ” –“for an arbitrary x . . . x . . . ” is embodied in our system by means of thedistinction. “quantified statement” – “ free variable statement”.

The reader will also have observed that under a reasonable derivation strat-egy, roughly speaking, elimination precedes introduction. There is a soundexplanation for this phenomenon, its proper treatment belongs to proof theory,where normal derivations (derivations without superfluous steps) are consid-ered. See Ch. 6. For the moment the reader may accept the above mentionedfact as a convenient rule of thumb.

We can formulate the derivability properties of the universal quantifier interms of the relation ⊢:

Γ ⊢ ϕ(x)⇒ Γ ⊢ ∀xϕ(x) if x ∈ FV (ψ) for all ψ ∈ ΓΓ ⊢ ∀xϕ(x)⇒ Γ ⊢ ϕ(t) if t is free for x in ϕ.

The above implications follow directly from (∀I) and (∀E).

Our next goal is the correctness of the system of natural deduction forpredicate logic. We first extend the definition of |=.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

94 2 Predicate Logic

Definition 2.8.1 Let Γ be a set of formulae and let {xi1 , xi2 , . . .} =!{FV (ψ)|ψ ∈ Γ ∪{σ}}. If a is a sequence (a1, a2, . . .) of elements (repetitionsallowed) of |A|, then Γ (a) is obtained from Γ by replacing simultaneously inall formulas of Γ the xij by aj(j ≥1 ) (for Γ = {ψ} we write ψ(a)). We nowdefine

(i) A |= Γ (a) if A |= ψ for all ψ ∈ Γ (a)(ii) Γ |= σ if A |= Γ (a)⇒ A |= σ(a) for all A, a.

In case only sentences are involved, the definition can be simplified:Γ |= σ if A |= Γ ⇒ A |= σ for all A.If Γ = ∅, we write |= σ.

We can paraphrase this definition as : Γ |= σ, if for all structures A and allchoices of a,σ(a) is true in A if all hypotheses of Γ (a) are true in A.

Now we can formulate

Lemma 2.8.2 (Soundness) Γ ⊢ σ ⇒ Γ |= σ.

Proof. By definition of Γ ⊢ σ is suffices to show that for each derivation Dwith hypothesis set Γ and conclusion σ Γ |= σ. We use induction on D (cf.1 .5.1 and exercise 2).

Since we have cast our definition of satisfaction in terms of valuations,which evidently contains the propositional logic as a special case, we can copythe cases of (1 ) the one element derivation, (2) the derivations with a propo-sitional rule at last step, from Lemma 1 .6.1 (please check this claim).

So we have to treat derivations with (∀I) or (∀E) as the final step.

(∀I) D D has its hypotheses in Γ and x is not free in Γ.ϕ(x) Induction hypothesis: Γ |= ϕ(x), i.e. A |= Γ (a)⇒∀xϕ(x) A |= (ϕ(x))(a) for all A and all a.

It is no restriction to suppose that x is the first of the free variables involved(why?). So we can substitute a1 for x in ϕ. Put a = (a1,a

′).Now we have:for all a1 and a′ = (a2, . . .) A |= Γ (a′)⇒ A |= ϕ(a1)(a

′), sofor all a′ A |= Γ (a′)⇒ (A |= (ϕ(a1))(a

′) for all a1 , sofor all a′ A |= Γ (a′)⇒ A |= (∀xϕ(x))(a′).

This shows Γ |= ∀xϕ(x). (Note that in this proof we used ∀x(σ → τ(x))→(σ → ∀xτ(x)), where x ∈ FV (σ), in the metalanguage. Of course we may usesound principles on the metalevel).

(∀E) D Induction hypothesis: Γ |= ∀xϕ(x),∀xϕ(x) i.e.A |= Γ (a)⇒ A |= (∀xϕ(x))(a),ϕ(t) for all a and A.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

2.8 Natural Deduction 95

So let A |= Γ (a), then A |= ϕ(b)(a) for all b ∈ |A|. In particular we maytake t[a/z] for b, where we slightly abuse the notation; since there are finitelymany variables z1, . . . , zn, we only need finitely many of the ai’s, and we con-sider it therefore an ordinary simultaneous substitution.A |= (ϕ[a/z])[t[a/z]/x], hence by Lemma 2.5.4, A |= (ϕ[t/x])[a/z], or A |=(ϕ(t))(a). !

Having established the soundness of our system, we can easily get non-derivability results.

Examples.

1 . ⊢ ∀x∃yϕ→ ∃y∀xϕ.Take A = ⟨{0, 1 }, {⟨0, 1 ⟩, ⟨1 , 0⟩}⟩ (type ⟨2; − ; 0⟩) and considerϕ := P (x, y), the predicate interpreted in A.A |= ∀x∃yP (x, y), since for 0 we have ⟨0, 1 ⟩ ∈ P and for l we have⟨1 , 0⟩ ∈ P .But, A |= ∃y∀xP (x, y), since for 0 we have ⟨0, 0⟩ ∈ P and for 1 we have⟨1 , 1 ⟩ ∈ P .

2. ∀xϕ(x, x), ∀xy(ϕ(x, y) → ϕ(y, x))) ⊢ ∀xyz(ϕ(x, y) ∧ ϕ(y, z)→ ϕ(x, z)).Consider B = ⟨R, P ⟩ with P = {⟨a, b⟩ | |a − b|≤1 }.

Although variables and constants are basically different, they share someproperties. Both constants and free variables may be introduced in deriva-tions through ∀E, but only free variables can be subjected to ∀I, – that isfree variables can disappear in derivations by other than propositional means.It follows that a variable can take the place of a constant in a derivation butin general not vice versa. We make this precise as follows.

Theorem 2.8.3 Let x be a variable not occurring in Γ or ϕ.

(i) Γ ⊢ ϕ⇒ Γ [x/c] ⊢ ϕ[x/c].(ii) If c does not occur in Γ , then Γ ⊢ ϕ(c)⇒ Γ ⊢ ∀xϕ(x).

Proof. (ii) follows immediately from (i) by ∀I. (i) Induction on the derivationof Γ ⊢ ϕ. Left to the reader. !

Observe that the result is rather obvious, changing c to x is just as harm-less as colouring c red — the derivation remains intact.

Exercises

1 . Show: (i)⊢ ∀x(ϕ(x)→ ψ(x))→ (∀xϕ(x) → ∀xψ(x)),(ii)⊢ ∀xϕ(x)→ ¬∀x¬ϕ(x),(iii)⊢ ∀xϕ(x)→ ∀zϕ(z) if z does not occur in ϕ(x),

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

96 2 Predicate Logic

(iv)⊢ ∀x∀yϕ(x, y)→ ∀y∀xϕ(x, y),(v)⊢ ∀x∀yϕ(x, y)→ ∀xϕ(x, x),(vi)⊢ ∀x(ϕ(x) ∧ ψ(x))↔ ∀xϕ(x) ∧ ∀xψ(x),(vii)⊢ ∀x(ϕ→ ψ(x))↔ (ϕ→ ∀xψ(x)), where x ∈ FV (ϕ).

2. Extend the definition of derivation to the present system (cf. 1 .4.1 ).

3. Show (s(t)[a/x])A = (s((t[a/x])A)[a/x])A.

4. Show the inverse implications of 2.8.3.

5. Assign to each atom P (t1, . . . , tn) a proposition symbol, denoted by P .Now define a translation † from the language of predicate logic into thelanguage of propositional logic by

P (t1, . . . , tn))† := P and ⊥ †:=⊥(ϕ!ψ)† := ϕ†!ψ†

(¬ϕ)† := ¬ϕ†

(∀xϕ)† := ϕ†

Show Γ ⊢ ϕ ⇒ Γ † ⊢† ϕ†, where ⊢† stands for “derivable without using(∀I) or (∀E)” (does the converse hold?)Conclude the consistency of predicate logic.Show that predicate logic is conservative over propositional logic (cf. def-inition 3.1 .5).

2.9 Adding the Existential Quantifier

Let us introduce ∃xϕ as an abbreviation for ¬∀x¬ϕ (Theorem 2.5.1 tells usthat there is a good reason for doing so). We can prove the following:

Lemma 2.9.1 (i) ϕ(t) ⊢ ∃xϕ(x) (t free for x in ϕ)(ii) Γ,ϕ(x) ⊢ ψ ⇒ Γ, ∃xϕ(x) ⊢ ψ

if x is not free in ψ or any formula of Γ.

Proof. (i) [∀x¬ϕ(x)]∀E

¬ϕ(t) ϕ(t)→ E

⊥→ I

¬∀x¬ϕ(x)

so ϕ(t) ⊢ ∃xϕ(x)

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

2.9 Adding the Existential Quantifier 97

(ii)

¬∀x¬ϕ(x)

[ϕ(x)]

Dψ [¬ψ]

→ E⊥

→ I¬ϕ(x)

∀I∀x¬ϕ(x)

→ E⊥

RAAψ !

Explanation. The subderivation top left is the given one; its hypotheses arein Γ ∪ {ϕ(x)} (only ϕ(x) is shown). Since ϕ(x) (that is, all occurrences of it)is cancelled and x does not occur free in Γ or ψ, we may apply ∀I. From thederivation we conclude that Γ, ∃xϕ(x) ⊢ ψ.

We can compress the last derivation into an elimination rule for ∃:[ϕ]...

∃xϕ(x) ψψ

∃E

with the conditions: x is not free in ψ, or in a hypothesis of the subderivationof ψ, other than ϕ(x).

This is easily seen to be correct since we can always fill in the missingdetails, as shown in the preceding derivation.

By (i) we also have an introduction rule:ϕ(t)

∃I∃x ϕ(x)

for t free for x in ϕ.

Examples of derivations.

[∃xϕ(x)]2

[∀x(ϕ(x)→ ψ)]3∀E

ϕ(x)→ ψ [ϕ(x)]1→ E

ψ∃E1

ψ→ I2∃xϕ(x)→ ψ

→ I3∀x(ϕ(x) → ψ)→ (∃xϕ(x)→ ψ)

x ∈ FV (ψ)

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

98 2 Predicate Logic

[∃x(ϕ(x) ∨ ψ(x))]3

[ϕ(x) ∨ ψ(x)]2

[ϕ(x)]1

∃xϕ(x)

∃xϕ(x) ∨ ∃xψ(x)

[ψ(x)]1

∃xψ(x)

∃xϕ(x) ∨ ∃xψ(x)∨E1

∃xϕ(x) ∨ ∃xψ(x)∃E2

∃xϕ(x) ∨ ∃xψ(x)→ I3

∃x(ϕ(x) ∨ ψ(x)) → ∃xϕ(x) ∨ ∃xψ(x)

We will also sketch the alternative approach, that of enriching the language.

Theorem 2.9.2 Consider predicate logic with the full language and rules forall connectives, then ⊢ ∃xϕ(x)↔ ¬∀x¬ϕ(x).

Proof. Compare 1 .6.3. !

It is time now to state the rules for ∀ and ∃ with more precision. We wantto allow substitution of terms for some occurrences of the quantified variablein (∀E) and (∃E). The following example motivates this.

∀x(x = x)∀E

x = x∃I

∃y(x = y))

The result would not be derivable if we could only make substitutions for alloccurrences at the same time. Yet, the result is evidently true.

The proper formulation of the rules now is:

∀I ϕ∀xϕ ∀E ∀xϕ

ϕ[t/x]

∃I ϕ[t/x]∃xϕ ∃E

[ϕ]..

∃xϕ ψψ

with the appropriate restrictions.

Exercises

1 . ⊢ ∃x(ϕ(x) ∧ ψ)↔ ∃xϕ(x) ∧ ψ if x ∈ FV (ψ),2. ⊢ ∀x(ϕ(x) ∨ ψ)↔ ∀xϕ(x) ∨ ψ if x ∈ FV (ψ),3. ⊢ ∀xϕ(x)↔ ¬∃x¬ϕ(x),4. ⊢ ¬∀xϕ(x)↔ ∃x¬ϕ(x),

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

88 sintassi e semantica della logica del primo ordine .

4.5 il teorema di completezza .

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

3

Completeness and Applications

3.1 The Completeness Theorem

Just as in the case of propositional logic we shall show that ‘derivability’ and‘semantical consequence’ coincide. We will do quite a bit of work before weget to the theorem. Although the proof of the completeness theorem is notharder than, say, some proofs in analysis, we would advise the reader to readthe statement of the theorem and to skip the proof at the first reading and toreturn to it later. It is more instructive to go to the applications and it willprobably give the reader a better feeling for the subject.

The main tool in this chapter is the

Lemma 3.1.1 (Model Existence Lemma) If Γ is a consistent set of sen-tences, then Γ has a model.

A sharper version is

Lemma 3.1.2 Let L have cardinality κ. If Γ is a consistent set of sentences,then Γ has a model of cardinality ≤κ.

From 3.1 .1 we immediately deduce Godel’s

Theorem 3.1.3 (Completeness Theorem) Γ ⊢ ϕ⇔ Γ |= ϕ.

We will now go through all the steps of the proof of the completeness the-orem. In this section we will consider sentences, unless we specifically mentionnon-closed formulas. Furthermore ‘⊢’ will stand for ‘derivability in predicatelogic with identity’.

Just as in the case of propositional logic we have to construct a model andthe only thing we have is our consistent theory. This construction is a kind ofBaron von Munchhausen trick; we have to pull ourselves (or rather, a model)out of the quicksand of syntax and proof rules. The most plausible idea is tomake a universe out of the closed terms and to define relations as the sets of(tuples of) terms in the atoms of the theory. There are basically two things

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

104 3 Completeness and Applications

we have to take care of: (i) if the theory tells us that ∃xϕ(x), then the modelhas to make ∃xϕ(x) true, and so it has to exhibit an element (which is in thiscase a closed term t) such that ϕ(t) is true. This means that the theory hasto prove ϕ(t) for a suitable closed term t. This problem is solved in so-calledHenkin theories. (ii) A model has to decide sentences, i.e. it has to say σ or¬σ for each sentence σ. As in propositional logic, this is handled by maximalconsistent theories.

Definition 3.1.4 (i) A theory T is a collection of sentences with theproperty T ⊢ ϕ⇒ ϕ ∈ T (a theory is closed under derivability).

(ii) A set Γ such that T = {ϕ|Γ ⊢ ϕ} is called an axiom set of the theory T .The elements of Γ are called axioms.

(iii) T is called a Henkin theory if for each sentence ∃xϕ(x) there is a constantc such that ∃xϕ(x)→ ϕ(c) ∈ T (such a c is called a witness for ∃xϕ(x)).

Note that T = {σ|Γ ⊢ σ} is a theory. For, if T ⊢ ϕ, then σ1, . . . ,σk ⊢ ϕfor certain σi with Γ ⊢ σi.

D1 D2 . . . Dk From the derivationsD1, . . . , Dk of Γ ⊢ σ1, . . . ,σ1 σ2 . . . σk Γ ⊢ σk and D of σ1, . . . ,σk ⊢ ϕ a derivation

D of Γ ⊢ ϕ is obtained, as indicated.ϕ

Definition 3.1.5 Let T and T ′ be theories in the languages L and L′.(i) T ′ is an extension of T if T ⊆ T ′,(ii) T ′ is a conservative extension of T if T ′ ∩L = T (i.e. all theorems of

T ′ in the language L are already theorems of T ).

Example of a conservative extension: Consider propositional logic P ′ inthe language L with → ,∧ , ⊥ ,↔ , ¬. Then exercise 2, section 1 .6, tells usthat P ′ is conservative over P .

Our first task is the construction of Henkin extensions of a given theoryT , that is to say: extensions of T which are Henkin theories.

Definition 3.1.6 Let T be a theory with language L. The language L∗ isobtained from L by adding a constant cϕ for each sentence of the form ∃xϕ(x),a constant cϕ . T* is the theory with axiom setT ∪ {∃xϕ(x)→ ϕ(cϕ)| ∃xϕ(x) closed, with witness cϕ}.

Lemma 3.1.7 T* is conservative over T .

Proof. (a) Let ∃xϕ(x)→ ϕ(c) be one of the new axioms. Suppose Γ, ∃xϕ(x)→ϕ(c) ⊢ ψ, where ψ does not contain c and where Γ is a set of sentences, noneof which contains the constant c. We show Γ ⊢ ψ in a number of steps.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

3 .1 The Completeness Theorem 105

1 . Γ ⊢ (∃xϕ(x) → ϕ(c))→ ψ,2. Γ ⊢ (∃xϕ(x) → ϕ(y)) → ψ, where y is a variable that does not occur in

the associated derivation. 2 follows from 1 by Theorem 2.8.3.3. Γ ⊢ ∀y[(∃xϕ(x) → ϕ(y))→ ψ]. This application of (∀I) is correct, since c

did not occur in Γ .4. Γ ⊢ ∃y(∃xϕ(x)→ ϕ(y))→ ψ, (cf. example of section 2.9).5. Γ ⊢ (∃xϕ(x) → ∃yϕ(y))→ ψ, (section 2.9 exercise 7).6. ⊢ ∃xϕ(x)→ ∃yϕ(y).7. Γ ⊢ ψ, (from 5,6).

(b) Let T * ⊢ ψ for a ψ ∈ L. By the definition of derivability T ∪{σ1, . . . ,σn} ⊢ ψ, where the σi are the new axioms of the form ∃xϕ(x)→ϕ(c). We show T ⊢ ψ by induction on n. For n = 0 we are done. LetT ∪ {σ1, . . . ,σn+1} ⊢ ψ. Put Γ ′ = T ∪ {σ1, . . . ,σn}, then T ′,σn+1 ⊢ ψand we may apply (a). Hence T ∪ {σ1, . . . ,σn} ⊢ ψ. Now by inductionhypothesis T ⊢ ψ. !

Although we have added a large number of witnesses to T , there is noevidence that T * is a Henkin theory, since by enriching the language we alsoadd new existential statements ∃xτ(x) which may not have witnesses. In orderto overcome this difficulty we iterate the above process countably many times.

Lemma 3.1.8 Define T0 := T ; Tn+1 := (Tn)*; Tω := ∪{Tn|n≥0}. Then Tωis a Henkin theory and it is conservative over T .

Proof. Call the language of Tn (resp. Tω) Ln (resp. Lω).

(i) Tn is conservative over T . Induction on n.(ii) Tω is a theory. Suppose Tω ⊢ σ, then ϕ0, . . . ,ϕn ⊢ σ for certainϕ0, . . . ,ϕn ∈ Tω. For each i ≤ n ϕi ∈ Tmi for some mi. Let m =max{mi|i ≤ n}. Since Tk ⊆ Tk+1 for all k, we have Tmi ⊆ Tm(i ≤ n).Therefore Tm ⊢ σ. Tm is (by definition) a theory, so σ ∈ Tm ⊆ Tω.

(iii) Tω is a Henkin theory. Let ∃xϕ(x) ∈ Lω, then ∃xϕ(x) ∈ Ln for some n.By definition ∃xϕ(x)→ ϕ(c) ∈ Tn+1 for a certain c. So ∃xϕ(x)→ ϕ(c) ∈Tω.

(iv) Tω is conservative over T . Observe that Tω ⊢ σ if Tn ⊢ σ for some n andapply (i). !

As a corollary we get: Tω is consistent if T is so. For suppose Tω in-consistent, then Tω ⊢⊥ . As Tω is conservative over T (and ⊥ ∈ L) T ⊢⊥ .Contradiction.

Our next step is to extend Tω as far as possible, just as we did in propo-sitional logic (1 .5.7). We state a general principle:

Lemma 3.1.9 (Lindenbaum) Each consistent theory is contained in a max-imally consistent theory.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

106 3 Completeness and Applications

Proof. We give a straightforward application of Zorn’s Lemma. Let T be consis-tent. Consider the set A of all consistent extensions T ′ of T , partially orderedby inclusion. Claim: A has a maximal element.

1 . Each chain in A has an upper bound. Let {Ti|i ∈ I} be a chain. ThenT ′ = ∪Ti is a consistent extension of T containing all Ti’s (Exercise 2).So T ′ is an upper bound.

2. Therefore A has a maximal element Tm (Zorn’s lemma).3. Tm is a maximally consistent extension of T . We only have to show: Tm ⊆

T ′ and T ′ ∈ A, then Tm = T ′. But this is trivial as Tm is maximal in thesense of ⊆. Conclusion: T is contained in the maximally consistent theoryTm. !Note that in general T has many maximally consistent extensions. The

above existence is far from unique (as a matter of fact the proof of its existenceessentially uses the axiom of choice). Note, however, that if the language iscountable, one can mimick the proof of 1 .5.7 and dispense with Zorn’s Lemma.

We now combine the construction of a Henkin extension with a maximallyconsistent extension. Fortunately the property of being a Henkin theory ispreserved under taking a maximally consistent extension. For, the languageremains fixed, so if for an existential statement ∃xϕ(x) there is a witness csuch that ∃xϕ(x)→ ϕ(c) ∈ T , then trivially, ∃xϕ(x)→ ϕ(c) ∈ Tm. Hence

Lemma 3.1.10 An extension of a Henkin theory with the same language isagain a Henkin theory.

We now get to the proof of our main result.

Lemma 3.1.11 (Model Existence Lemma) If Γ is consistent, then Γ hasa model.

Proof. Let T = {σ|Γ ⊢ σ} be the theory given by Γ . Any model of T is, ofcourse, a model of Γ .

Let Tm be a maximally consistent Henkin extension of T (which exists bythe preceding lemmas), with language Lm.

We will construct a model of Tm using Tm itself. At this point the readershould realize that a language is, after all, a set, that is a set of strings ofsymbols. So, we will exploit this set to build the universe of a suitable model.

1 . A = {t ∈ Lm|t is closed}.

2. For each function symbol f we define a function f : Ak → A byf(t1, . . . , tk) := f(t1, . . . , tk).

3. For each predicate symbol P we define a relation P ⊆ Ap by ⟨t1, . . . , tp⟩ ∈P ⇔ Tm ⊢ P (t1, . . . , tp).

4. For each constant symbol c we define a constant c := c.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

3 .1 The Completeness Theorem 107

Although it looks as if we have created the required model, we have toimprove the result, because ’=’ is not interpreted as the real equality. We canonly assert that

(a) The relation t ∼ s defined by Tm ⊢ t = s for t, s ∈ A is an equivalencerelation. By lemma 2.1 0.1 , I1, I2, I3 are theorems of Tm, so Tm ⊢ ∀x(x = x),and hence (by ∀E) Tm ⊢ t = t, or t ∼ t. Symmetry and transitivity follow inthe same way.

(b) ti ∼ si(i≤p) and ⟨t1, . . . , tp⟩ ∈ P ⇒ ⟨s1, . . . , sp⟩ ∈ P .

ti ∼ si(i≤k)⇒ f(t1, . . . , tk) ∼ f(s1, . . . , sk) for all symbols P and f .The proof is simple: use Tm ⊢ I4 (Lemma 2.1 0.1 ).Once we have an equivalence relation, which, moreover, is a congruence

with respect to the basic relations and functions, it is natural to introduce thequotient structure.

Denote the equivalence class of t under ∼ by [t].

Define A := ⟨A/ ∼, P1, . . . , Pn, f1, . . . , fm, {ci|i ∈ I}⟩,where

Pi := {⟨[t1], . . . , [tri ]⟩|⟨t1, . . . , tri⟩ ∈ Pi}fj([t1], . . . , [taj ]) = [fj(t1, . . . , taj )]ci := [ci].

One has to show that the relations and functions on A/ ∼ are well-defined,but that is taken care of by (b) above.

Closed terms lead a kind of double life. On the one hand they are syn-tactical objects, on the other hand they are the stuff that elements of theuniverse are made from. The two things are related by tA = [t]. This is shownby induction on t.

(i) t = c, then tA = c = [c] = [t],

(ii) t = f(t1, . . . , tk), then tA = f(tA1 , . . . , tAk)i.h.= f([t1], . . . , [tk])

= [f(t1, . . . , tk)] = [f(t1, . . . , tk)].

Furthermore we have A |= ϕ(t) ⇔ A |= ϕ([t]), by the above and by Exercise6 section 2.4.

Claim. A |= ϕ(t)⇔ Tm ⊢ ϕ(t) for all sentences in the language Lm of Tm

which, by the way, is also L(A), since each element of A/ ∼ has a name inLm. We prove the claim by induction on ϕ.

(i) ϕ is atomic. A |= P (t1, . . . , tp)↔ ⟨tA1 , . . . , tAp ⟩ ∈ p⇔ ⟨[t1], . . . , [tp]⟩ ∈ P ⇔⟨t1, . . . , tp⟩ ∈ P ⇔ Tm ⊢ P (t1, . . . , tp). The case ϕ =⊥ is trivial.

(ii) ϕ = σ ∧ τ . Trivial.(iii) ϕ = σ → τ . We recall that, by lemma 1 .5.9 Tm ⊢ σ → τ ⇔ (Tm ⊢σ ⇒ Tm ⊢ τ). Note that we can copy this result, since its proof only usespropositional logic, and hence remains correct in predicate logic.

A |=ϕ→ τ ⇔ (A |= σ ⇒ A |= τ)i.h.⇔ (Tm ⊢ σ ⇒ Tm ⊢ τ)⇔ Tm ⊢ σ → τ .

(iv) ϕ = ∀xψ(x). A |= ∀xψ(x) ⇔ A |= ∃x¬ψ(x) ⇔ A |= ¬ψ(a), for alla ∈ |A| ⇔ for all a ∈ |A|(A |= ψ(a)). Assuming A |= ∀xψ(x), we get in

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

108 3 Completeness and Applications

particular A |= ψ(c) for the witness c belonging to ∃x¬ψ(x). By induc-tion hypothesis: Tm ⊢ ψ(c). Tm ⊢ ∃x¬ψ(x) → ¬ψ(c), so Tm ⊢ ψ(c) →¬∃¬ψ(x). Hence Tm ⊢ ∀xϕ(x).Conversely: Tm ⊢ ∀xψ(x) ⇒ Tm ⊢ ψ(t), so Tm ⊢ ψ(t) for all closed t,and therefore by induction hypothesis, A |= ψ(t) for all closed t. HenceA |= ∀xψ(x).Now we see that A is a model of Γ , as Γ ⊆ Tm. !

The model constructed above goes by various names, it is sometimes calledthe canonical model or the (closed) term model. In logic programming the setof closed terms of any language is called the Herbrand universe or - domainand the canonical model is called the Herbrand model.

In order to get an estimation of the cardinality of the model we have tocompute the number of closed terms in Lm. As we did not change the languagegoing from Tω to Tm, we can look at the language Lω. We will indicate how toget the required cardinalities, given the alphabet of the original language L.We will use the axiom of choice freely, in particular in the form of absorptionlaws (i.e. κ + λ = κ · λ = max(κ,λ) for infinite cardinals). Say L has type⟨r1, . . . , rn; a1, . . . , am;κ⟩.

1 . DefineTERM0 := {ci|i ∈ I} ∪ {xj |j ∈ N}TERMn+1 := TERMn ∪ {fj(t1, . . . , taj )|j ≤m,

tk ∈ TERMn for k ≤aj}.

Then TERM =!{TERMn|n ∈ N} (Exercise 5)

|TERM0| = max(κ,ℵ0) = µ.

Suppose |TERMn| = µ. Then|{fj(t1, . . . , taj )|t1, . . . , taj ∈ TERMn}| = |TERMn|aj = µaj = µ. So|TERMn+1| = µ + µ + . . . + µ (m + 1 times) = µ.

Finally |TERM | ="

n∈ N

|TERMn| = ℵ0 · µ = µ.

2. DefineFORM0 := {Pi(t1, . . . , tri |i≤n, tk ∈ TERM}∪ {⊥ }FORMn+1 := FORMn ∪ {ϕ!ψ | ! ∈ {∧,→},ϕ,ψ ∈ FORMn}

∪{∀xiϕ|i ∈ N,ϕ ∈ FORMn}.

Then FORM =!{FORMn|n ∈ N} (Exercise 5)

As in 1 . one shows |FORM | = µ.3. The set of sentences of the form ∃xϕ(x) has cardinality µ. It trivially is≤µ. Consider A = {∃x (x0 = ci)| ∈ I}. Clearly |A| = κ · ℵ0 = µ. Hencethe cardinality of the existential statements is µ.

4. L1 has the constant symbols of L, plus the witnesses. By 3 the cardinalityof the set of constant symbols is µ. Using 1 and 2 we find L0 has µ termsand µ formulas. By induction on n each Ln has µ terms and µ formulas.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

3 .1 The Completeness Theorem 109

Therefore Lω has ℵ0 · µ = µ terms and formulas. Lω is also the languageof Tm.

5. Lω has at most µ closed terms. Since L1 has µ witnesses, Lω has at leastµ, and hence exactly µ closed terms.

6. The set of closed terms has ≤µ equivalence classes under ∼, so ||A||≤µ.

All this adds up to the strengthened version of the Model ExistenceLemma:

Lemma 3.1.12 Γ is consistent ↔ Γ has a model of cardinality at most thecardinality of the language.

Note the following facts:– If L has finitely many constants, then L is countable.– If L has κ≥ℵ0 constants, then |L| = κ.

The completeness theorem for predicate logic raises the same question asthe completeness theorem for propositional logic: can we effectively find aderivation of ϕ is ϕ is true? The problem is that we don’t have much to go on;ϕ is true in all structures (of the right similarity type). Even though (in thecase of a countable language) we can restrict ourselves to countable structures,the fact that ϕ is true in all those structures does not give the combinator-ial information, necessary to construct a derivation for ϕ. The matter is atthis stage beyond us. A treatment of the problem belongs to proof theory;Gentzen’s sequent calculus or the tableau method are more suitable to searchfor derivations, than natural deduction.

In the case of predicate logic there are certain improvements on the com-pleteness theorem. One can, for example, ask how complicated the model isthat we constructed in the model existence lemma. The proper setting forthose questions is found in recursion theory. We can, however, have a quicklook at a simple case.

Let T be a decidable theory with a countable language, i.e. we have aneffective method to test membership (or, what comes to the same, we can testΓ ⊢ ϕ for a set of axioms of T ). Consider the Henkin theory T introducedin 3.1 .8.; σ ∈ Tω if σ ∈ Tn for a certain n. This number n can be read offfrom σ by inspection of the witnesses occurring in σ. From the witnesses wecan also determine which axioms of the form ∃xϕ(x) → ϕ(c) are involved.Let {τ1, . . . , τn} be the set of axioms required for the derivation of σ, thenT ∪{τ1, . . . , τn} ⊢ σ. By the rules of logic this reduces to T ⊢ τ1∧ . . .∧τn → σ.Since the constants ci are new with respect to T , this is equivalent to T ⊢∀z1, . . . , zk(τ ′

n → σ′) for suitable variables z1, . . . , zk, where τ ′1, . . . , τ

′n,σ′ are

obtained by substitution. Thus we see that σ ∈ Tω is decidable. The next stepis the formation of a maximal extension Tm.

Let ϕ0,ϕ1,ϕ2, . . . be an enumeration of all sentences of Tω. We add sen-tences to Tω in steps.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

110 3 Completeness and Applications !!ϕ0

!ϕ1

!ϕ2 !¬ϕ2

!¬ϕ1

!¬ϕ0

! ϕ1 !¬ϕ1

!!

!!

!!

!!

!!

!

❅❅

❅❅

❅❅

❅❅❅❅ !!

❅❅

❅❅

❅❅

❅❅❅

!!

!!❅❅ !!!!

step 0 : T0 =

#Tω ∪ {ϕ0} if Tω ∪ {ϕ0} is consistent,Tω ∪ {¬ϕ0} else.

step n + 1 : Tn+1 =

#Tn ∪ {ϕn+1} if Tn ∪ {ϕn+1} is consistent,Tn ∪ {¬ϕn+1} else.

T ◦ = ∪Tn (T ◦ is given by a suitable infinite path in the tree). It is easily seenthat T ◦ is maximally consistent. Moreover, T ◦ is decidable. To test ϕn ∈ T ◦

we have to test if ϕn ∈ Tn or Tn−1 ∪ {ϕn} ⊢⊥ , which is decidable. So T ◦ isdecidable.

The model A constructed in 3.1 .1 1 is therefore also decidable in the fol-lowing sense: the operations and relations of A are decidable, which meansthat ⟨[t1], . . . , [tp]⟩ ∈ P and f([t1], . . . , [tk]) = [t] are decidable.

Summing up we say that a decidable consistent theory has a decidablemodel (this can be made more precise by replacing ‘decidable’ by ‘recursive’).

Exercises

1 . Consider the language of groups. T = {σ|A |= σ} , where A is a fixednon-trivial group. Show that T is not a Henkin theory.

2. Let {Ti|i ∈ I} be a set of theories, linearly ordered by inclusion. Showthat T = ∪{Ti|i ∈ I} is a theory which extends each Ti. If each Ti isconsistent, then T is consistent.

3. Show that λn ⊢ σ ⇔ σ holds in all models with at least n elements.µn ⊢ σ ⇔ σ holds in all models with at most n elements. λn∧µn ⊢ σ ⇔ σholds in all models with exactly n elements, {λn|n ∈ N} ⊢ σ ⇔ σ holds inall infinite models, (for a definition of λn, µn cf. section 2.7).

4. Show that T = {σ|λ2 ⊢ σ} ∪ {c1 = c2} in a language with = and twoconstant symbols c1, c2, is a Henkin theory.

5. Show TERM =!{TERMn|n ∈ N}, FORM =

!{FORMn|n ∈ N} (cf.1 .1 .5).

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

4.6 i teoremi di löwenheim-skolem e alcune loro applicazioni . 97

4.6 i teoremi di löwenheim-skolem e alcune loro applicazioni .

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

112 3 Completeness and Applications

Notation. (A, S1, . . . , Sn, g1, . . . , gm, {aj|j ∈ J}) is the expansion of A withthe indicated extras.

In the early days of logic (before “model theory” was introduced) Skolem(1 920) and Lowenheim (1 91 5) studied the possible cardinalities of models ofconsistent theories. The following generalization follows immediately from thepreceding results.

Theorem 3.2.3 (Downward Skolem-Lowenheim Theorem) Let Γ be aset of sentences in a language of cardinality κ, and let κ < λ. If Γ has a modelof cardinality λ, then Γ has a model of cardinality κ′, with κ≤κ′ < λ.

Proof. Add to the language L of Γ a set of fresh constants (not occurringin the alphabet of L) {ci|i ∈ I} of cardinality κ′, and consider Γ ′ = Γ ∪{ci = cj |i, j ∈ I, i = j}. Claim: Mod(Γ ′) = ∅.

Consider a model A of Γ of cardinality λ. We expand A to A′ by addingκ′ distinct constants (this is possible: |A| contains a subset of cardinalityκ′). A′ ∈ Mod(Γ ) (cf. Exercise 3) and A′ |= ci = cj(i = j). ConsequentlyMod(Γ ′) = ∅. The cardinality of the language of Γ ′ is κ′. By the ModelExistence Lemma Γ ′ has a model B′ of cardinality ≤κ′, but, by the axiomsci = cj , the cardinality is also ≥κ′. Hence B′ has cardinality κ′. Now takethe reduct B of B′ in the language of Γ , then B ∈Mod(Γ )) (Exercise 3). !Examples.

1 . The theory of real numbers, Th(R), in the language of fields, has a count-able model.

2. Consider Zermelo-Fraenkel’s set theory ZF . If Mod(ZF ) = ∅, then ZFhas a countable model. This fact was discovered by Skolem. Because ofits baffling nature, it was called Skolem’s paradox. One can prove in ZFthe existence of uncountable sets (e.g. the continuum), how can ZF thenhave a countable model? The answer is simple: countability as seen fromoutside and from inside the model is not the same. To establish count-ability one needs a bijection to the natural numbers. Apparently a modelcan be so poor that it misses some bijections which do exist outside themodel.

Theorem 3.2.4 (Upward Skolem-Lowenheim Theorem) Let Γ have alanguage L of cardinality κ, and A ∈ Mod(Γ ) with cardinality λ ≥ κ. Foreach µ > λ Γ has a model of cardinality µ.

Proof. Add µ fresh constants ci, i ∈ I to L and consider Γ ′ = Γ ∪ {ci = cj |i =j, i, j ∈ I}. Claim: Mod(Γ ′) = ∅. We apply the Compactness Theorem.

Let ∆ ⊆ Γ ′ be finite. Say ∆ contains new axioms with constantsci0 , . . . , cik

, then ∆ ⊆ Γ ∪ {cip = ciq |p, q ≤ k} = Γ0. Clearly each modelof Γ0 is a model of ∆ (Exercise 1 (i)).

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

3 .2 Compactness and Skolem-Lowenheim 113

Now take A and expand it to A′ = (A, a1, . . . , ak), where the ai are distinct.

Then obviously A′ ∈ Mod(Γ0), so A′ ∈ Mod(∆). By the CompactnessTheorem there is a B′ ∈ Mod(Γ ′). The reduct B of A′ to the (type of the)language L is a model of Γ . From the extra axioms in Γ ′ it follows that B′,and hence B, has cardinality ≥µ.

We now apply the downward Skolem-Lowenheim Theorem and obtain theexistence of a model of Γ of cardinality µ. !

We now list a number of applications.

Application I. Non-standard Models of PA.

Corollary 3.2.5 Peano’s arithmetic has non-standard models.

Let P be the class of all Peano structures. Put PA = Th(P). By the Com-pleteness Theorem PA = {σ|Σ ⊢ σ} where Σ is the set of axioms listedin section 2.7, Example 6. PA has a model of cardinality ℵ0 (the standardmodel N), so by the upward Skolem-Lowenheim Theorem it has models ofevery k > ℵ0. These models are clearly not isomorphic to N. For more seepage 1 21 .

Application II. Finite and Infinite Models.

Lemma 3.2.6 If Γ has arbitrarily large finite models, then Γ has an infinitemodel.

Proof. Put Γ ′ = Γ ∪{λn|n > 1 }, where λn expresses the sentence “there are atleast n distinct elements”, cf. section 2.7, Example 1 . Apply the CompactnessTheorem. Let ∆ ⊆ Γ ′ be finite, and let λm be the sentence λn in ∆ withthe largest index n. Verify that Mod(∆) ⊇ Mod(Γ ∪ {λm}). Now Γ hasarbitrarily large finite models, so Γ has a model A with at least m elements,i.e. A ∈Mod(Γ ∪ {λm}). So Mod(∆) = ∅.

By compactness Mod(Γ ′) = ∅, but in virtue of the axioms λm, a model ofΓ ′ is infinite. Hence Γ ′, and therefore Γ , has an infinite model. !

We get the following simple

Corollary 3.2.7 Consider a class K of structures which has arbitrarily largefinite models. Then, in the language of the class, there is no set Σ of sentences,such that A ∈Mod(Σ)⇔ A is finite and A ∈ K.

Proof. Immediate. !We can paraphrase the result as follows: the class of finite structures in

such a class K is not axiomatizable in first-order logic.

We all know that finiteness can be expressed in a language that containsvariables for sets or functions (e.g. Dedekind’s definition), so the inability to

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

114 3 Completeness and Applications

characterise the notion of finite is a specific defect of first-order logic. We saythat finiteness is not a first-order property.

The corollary applies to numerous classes, e.g. groups, rings, fields, posets,sets (identity structures).

Application III. Axiomatizability and Finite Axiomatizability.

Definition 3.2.8 A class K of structures is (finitely) axiomatizable if thereis a (finite) set Γ such that K = Mod(Γ ). We say that Γ axiomatizes K; thesentences of Γ are called it axioms (cf. 3.1.4).

Examples for the classes of posets, ordered sets, groups, rings, Peano-structuresaxiom sets Γ are listed in section 2.7.

The following fact is very useful:

Lemma 3.2.9 If K = Mod(Γ ) and K is finitely axiomatizable, then K isaxiomatizable by a finite subset of Γ .

Proof. Let K = Mod(∆) for a finite ∆, then K = Mod(σ), where σ is theconjunction of all sentences of ∆ (Exercise 4). Then σ |= ψ for all ψ ∈ Γ andΓ |= σ, hence also Γ ⊢ σ. Thus there are finitely many ψ1, . . . ,ψk ∈ Γ suchthat ψ1, . . . ,ψk ⊢ σ. Claim K = Mod(ψ1, . . . ,ψk).(i) {ψ1, . . . ,ψk} ⊆ Γ so Mod(Γ ) ⊆Mod(ψ1, . . . ,ψk).(ii) From ψ1, . . . ,ψk ⊢ σ it follows that Mod(ψ1, . . . ,ψk) ⊆Mod(σ).

Using (i) and (ii) we conclude Mod(ψ1, . . . ,ψk) = K. !

This lemma is instrumental in proving non-finite-axiomatizability results.We need one more fact.

Lemma 3.2.10 K is finitely axiomatizable ⇔ K and its complement Kc areboth axiomatizable.

Proof. ⇒. Let K = Mod(ϕ1, . . . ,ϕn), then K = Mod(ϕ1 ∧ . . . ∧ ϕk). A ∈ Kc

(complement of K ) ⇔ A |= ϕ1 ∧ . . . ∧ ϕn ⇔ A |= ¬(ϕ1 ∧ . . .ϕn). SoKc = Mod(¬(ϕ1 ∧ . . . ∧ ϕn)).⇐. Let K = Mod(Γ ), Kc = Mod(∆). K ∩ Kc = Mod(Γ ∪ ∆) = ∅ (Exercise1 ). By compactness, there are ϕ1, . . . ,ϕn ∈ Γ and ψ1, . . . ,ψm ∈ ∆ such thatMod(ϕ1, . . . ,ϕn,ψ1, . . . ,ψm) = ∅, orMod(ϕ1, . . . ,ϕn) ∩Mod(ψ1, . . . ,ψm) = ∅, (1 )K = Mod(Γ ) ⊆Mod(ϕ1, . . . ,ϕn), (2)Kc = Mod(∆) ⊆Mod(ψ1, . . . ,ψm), (3)

(1 ), (2), (3) ⇒ K = Mod(ϕ1, . . . ,ϕn). !We now get a number of corollaries.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

3 .2 Compactness and Skolem-Lowenheim 115

Corollary 3.2.11 The class of all infinite sets (identity structures) is axiom-atizable, but not finitely axiomatizable.

Proof. A is infinite ⇔ A ∈Mod({λn|n ∈ N}). So the axiom set is {λn|n ∈ N}.On the other hand the class of finite sets is not axiomatizable, so, by Lemma3.2.1 0, the class of infinite sets is not finitely axiomatizable. !

Corollary 3.2.12 (i) The class of fields of characteristic p(> 0) is finitelyaxiomatizable.

(ii) The class of fields of characteristic 0 is axiomatizable but not finitelyaxiomatizable.

(iii) The class of fields of positive characteristic is not axiomatizable.

Proof. (i) The theory of fields has a finite set ∆ of axioms. ∆ ∪ {p = 0}axiomatizes the class Fp of fields of characteristic p (where p stands for 1 +1 + . . . + 1 , (p×)).

(ii) ∆ ∪ {2 = 0, 3 = 0, . . . , p = 0, . . .} axiomatizes the class F0 of fields ofcharacteristic 0. Suppose F0 was finitely axiomatizable, then by Lemma 3.2.9F0 was axiomatizable by Γ = ∆ ∪ {p1 = 0, . . . , pk = 0}, where p1, . . . , pk areprimes (not necessarily the first k ones). Let q be a prime greater than all pi

(Euclid). Then Z/(q) (the integers modulo q) is a model of Γ , but Z/(q) isnot a field of characteristic 0. Contradiction.(iii) follows immediately from (ii) and Lemma 3.2.1 0. !

Corollary 3.2.13 The class Ac of all algebraically closed fields is axiomati-zable, but not finitely axiomatizable.

Proof. Let σn = ∀y1 . . . yn∃x(xn + y1xn−1 + . . . + yn−1x + yn = 0). Then

Γ = ∆ ∪ {σn|n ≥1 }(∆ as in corollary 3.2.1 2) axiomatizes Ac. To show non-finite axiomatizability, apply Lemma 3.2.9 to Γ and find a field in which acertain polynomial does not factorise. !

Corollary 3.2.14 The class of all torsion-free abelian groups is axiomatiz-able, but not finitely axiomatizable.

Proof. Exercise 1 5. !Remark: In Lemma 3.2.9 we used the Completeness Theorem and in Lemma3.2.1 0 the Compactness Theorem. The advantage of using only the Compact-ness Theorem is that one avoids the notion of provability altogether. Thereader might object that this advantage is rather artificial since the Compact-ness Theorem is a corollary to the Completeness Theorem. This is true in ourpresentation; one can, however, derive the Compactness Theorem by purelymodel theoretic means (using ultraproducts, cf. Chang-Keisler) , so there aresituations where one has to use the Compactness Theorem. For the moment

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

116 3 Completeness and Applications

the choice between using the Completeness Theorem or the CompactnessTheorem is largely a matter of taste or convenience.

By way of illustration we will give an alternative proof of Lemma 3.2.9using the Compactness Theorem:

Again we have Mod(Γ ) = Mod(σ)(∗). Consider Γ ′ = Γ ∪ {¬σ}.A ∈Mod(Γ ′)⇔ A ∈Mod(Γ ) and A |= ¬σ,

⇔ A ∈ModΓ and A ∈Mod(σ).In view of (∗) we have Mod(Γ ′) = ∅.By the Compactness Theorem there is a finite subset ∆ of Γ ′ with

Mod(∆) = ∅. It is no restriction to suppose that ¬σ ∈ ∆, henceMod(ψ1, . . . ,ψk, ¬σ) = ∅. It now easily follows that Mod(ψ1, . . . ,ψk) =Mod(σ) = Mod(Γ ). !

Application IV. Ordering Sets.

One easily shows that each finite set can be ordered, for infinite sets thisis harder. A simple trick is presented below.

Theorem 3.2.15 Each infinite set can be ordered.

Proof. Let |X | = κ ≥ℵ0. Consider Γ , the set of axioms for linear order(2.7.3). Γ has a countable model, e.g. N. By the upward Skolem-LowenheimTheorem Γ has a model A = ⟨A, <⟩ of cardinality κ. Since X and A have thesame cardinality there is a bijection f : X → A. Define x < x′ := f(x) <f(x′). Evidently, < is a linear order. !

In the same way one gets: Each infinite set can be densely ordered. Thesame trick works for axiomatizable classes in general.

Exercises

1 . Show: (i) Γ ⊆ ∆⇒Mod(∆) ⊆Mod(Γ ),(ii) K1 ⊆ K2 ⇒ Th(K2) ⊆ Th(K1),(iii) Mod(Γ ∪∆) = Mod(Γ ) ∩Mod(∆),(iv) Th(K1 ∪K2) = Th(K1) ∩ Th(K2),(v) K ⊆Mod(Γ )⇔ Γ ⊆ Th(K),(vi) Mod(Γ ∩∆) ⊇Mod(Γ ) ∪Mod(∆),(vii) Th(K1 ∩K2) ⊇ Th(K1) ∪ Th(K2).

Show that in (vi) and (vii) ⊇ cannot be replaced by =.

2. (i) Γ ⊆ Th(Mod(Γ )),(ii) K ⊆Mod(Th(K)),(iii) Th(Mod(Γ )) is a theory with axiom set Γ .

3. If A with language L is a reduct of B, then A |= σ ⇔ B |= σ for σ ∈ L.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

3 .2 Compactness and Skolem-Lowenheim 117

4. Mod(ϕ1, . . . ,ϕn) = Mod(ϕ1 ∧ . . . ∧ ϕn).

5. Γ |= ϕ ⇒ ∆ |= ϕ for a finite subset ∆ ⊆ Γ . (Give one proof usingcompleteness, another proof using compactness on Γ ∪ {¬ϕ}).

6. Show that well-ordering is not a first-order notion. Suppose that Γ axiom-atizes the class of well-orderings. Add countably many constants ci andshow that Γ ∪ {ci+1 < ci|i ∈ N} has a model.

7. If Γ has only finite models, then there is an n such that each model hasat most n elements.

8. Let L have the binary predicate symbol P . σ:=∀x¬P (x, x)∧∀xyz(P (x, y)∧P (y, z)→ P (x, z))∧∀x∃yP (x, y). Show that Mod(σ) contains only infinitemodels.

9. Show that σ ∨ ∀xy(x = y) has infinite models and a finite model, but noarbitrarily large finite models (σ as in 8).

1 0. Let L have one unary function symbol.(i) Write down a sentence ϕ such that A |= ϕ⇔ fA is a surjection.(ii) Idem for an injection.(iii) Idem for a bijection (permutation).(iv) Use (ii) to formulate a sentence σ such that (a) A |= σ ⇒ A is infinite,

(b) each infinite set can be expanded to a model of σ (Dedekind).(v) Show that each infinite set carries a permutation without fixed points

(cf. the proof of 3.2.1 5).

1 1 . Show: σ holds for fields of characteristic zero ⇒ σ holds for all fields ofcharacteristic q > p for a certain p.

1 2. Consider a sequence of theories Ti such that Ti = Ti+1 and Ti ⊆ Ti+1.Show that ∪{Ti|i ∈ N} is not finitely axiomatizable.

1 3. If T1 and T2 are theories such that Mod(T1 ∪ T2) = ∅ , then there is a σsuch that T1 |= σ and T2 |= ¬σ.

1 4. (i) A group can be ordered ⇔ each finitely generated subgroup can beordered.

(ii) An abelian group A can be ordered ⇔ A is torsion free. (Hint: lookat all closed atoms of L(A) true in A.)

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

104 sintassi e semantica della logica del primo ordine .

4.7 ultraprodotti e compattezza della logica del prim’ordine .

Definizione 4.33. Date due strutture nello stesso linguaggio A e B diremo che sonoelementarmente equivalenti, in simboli A ∼= B, se per ogni enunciato ϕ si ha

A |= ϕ se, soltanto se, B |= ϕ.

Definizione 4.34. Date due strutture nello stesso linguaggio A e B diremo che A

è una sottostruttura elementare di B (o equivalentemente che B è un’estensioneelementare di A), in simboli A � B, se A ⊆ B e per ogni formula ϕ(x1, . . . , xn) e perogni tupla a1, . . . , an ∈ A si ha

A |= ϕ(a1, . . . , an) se, soltanto se, B |= ϕ(a1, . . . , an).

Se esiste un isomorfismo f tra C ed A e A � B allora diremo che C è elementarmenteimmergibile in B. Detta ι la mappa che immerge A in B, chiameremo la mappa ι ◦ fimmersione elementare.

È immediato, ma importante, osservare che A � B implica A ∼= B, ma non viceversa.In questa sezione introdurremo una costruzione che permette di creare estensioni

elementari di più strutture alla volta.

Notazione. Se I è un qualsiasi insieme chiameremo filtro (o rispettivamente ultrafiltro)su I un filtro (o rispettivamente ultrafiltro) sull’algebra di Boole 〈℘(I),∩,∪, c, ∅, I〉, nelsenso della definizione 3.80.

Per costruire un ultraprodotto partiamo da una famiglia di L-strutture {Ai | i ∈ I}indicizzate da qualche insieme I. Il primo passo è costruire il prodotto diretto di talistrutture, si noti che tale costruzione ha senso qualsiasi sia il linguaggio L.

Definizione 4.35. Data una famiglia di L-strutture {Ai | i ∈ I}, definiamo il prodottodiretto delle Ai, in simboli A =

∏i∈IAi come la struttura il cui supporto è dato dal

prodotto cartesiano×i∈IAi e

a) per ogni simbolo di costante c in L, cA è dato da (cAi | i ∈ I);

b) per ogni simbolo di funzione f in L, il valore di fA su un arbitrario a = (ai | i ∈ I)è dato da fA(a) := (fAi(ai) | i ∈ I);

c) per ogni simbolo di predicato P in L, PA(a1, . . . , an) vale se, e soltanto se, PAi(a1i, . . . , ani)vale per ogni i ∈ I.

Si noti che per ogni i ∈ I c’è una proiezione canonica (=funzione suriettiva canonica)πi definita su A =

∏i∈IAi come π(a) := ai.

Se F è una famiglia di sottoinsiemi di I ha senso definire la relazione su A =∏i∈IAi

a ∼F b se, soltanto se, {i ∈ I | πi(a) = πi(b)} ∈ F (9)

Affinché la relazione ∼F si comporti bene rispetto alla struttura di A è ovvio che sarànecessario imporre delle restrizioni su F.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

4.7 ultraprodotti e compattezza della logica del prim’ordine . 105

Lemma 4.36. Se F è un filtro su I allora ∼F è una relazione di equivalenza su∏i∈IAi.

Dimostrazione. Esercizio.

Lemma 4.37. Se F è un filtro su I allora ∼F è una L-congruenza su∏i∈IAi. In altre parole,

a) per ogni simbolo di funzione f in L si ha che se a1 ∼F b1, . . . , an ∼F bn allora f(a1, . . . , an) ∼Ff(b1, . . . , bn);

b) per ogni simbolo di predicato P in L si ha che se a1 ∼F b1, . . . , an ∼F bn allora P(a1, . . . , an)implica P(b1, . . . , bn).

Dimostrazione. Esercizio.

I due precedenti lemmi danno senso alla seguente definizione.

Definizione 4.38. Data una famiglia di L-strutture {Ai | i ∈ I} e un ultrafiltro F suI, definiamo l’ultraprodotto delle Ai, in simboli

∏i∈IAi/F come la struttura il cui

supporto è dato dal quoziente del prodotto cartesiano×i∈IAi/simF e

a) per ogni simbolo di costante c in L, cA è dato da [(cAi | i ∈ I)]∼F(la classe di

equivalenza modulo la relazione ∼F);

b) per ogni simbolo di funzione f in L, il valore di fA su un arbitrario [a]∼F= [(ai |

i ∈ I)]∼Fè dato da [fA(a)]∼F

:= [(fAi(ai) | i ∈ I)]∼F;

c) per ogni simbolo di predicato P in L, PA([a1]∼F, . . . , [an]∼F

) vale se, e soltanto se,{i ∈ I | PAi(πi(a1), . . . , πi(an))} ∈ F.

Se tutte le strutture Ai sono isomorfe, l’ultraprodotto appena definito è detto ultrapo-tenza.

È chiaro dalla costruzione appena definita che l’ultraprodotto∏i∈IAi/F è una strut-

tura appropriata per lo stesso linguaggio delle Ai. Quindi ha senso chiedersi come siacollegata la verità delle formule del prim’ordine nell’ultraprodotto e nelle strutture dipartenza. Il teorema di Łoš qui sotto, dà una risposta completa a questa domanda.

Per capire come sono collegate le interpretazioni nelle Ai con le interpretazioni in∏i∈IAi/F, per un arbitrario F, si noti che se {vi | i ∈ I} è una famiglia di interpreta-

zioni, dove per ogni i ∈ I, vi : Var→ Ai, allora si può costruire un’interpretazione v in∏i∈IAi/F ponendo, per ogni x ∈ Var, v(x) := [(vi(x) | i ∈ I)]∼F

.

Teorema 4.39 (Teorema di Łoš). Sia (Ai | i ∈ I) una famiglia di strutture nello stessolinguaggio del prim’ordine L e sia F un ultrafiltro su I. Sia A :=

∏i∈IAi/F l’ultraprodotto

della Ai. Per ogni L-formula e per ogni famiglia di interpretazioni {vi | i ∈ I}, con vi : Var →Ai per i ∈ I, si ha

A, v |= ϕ se, soltanto se, {i ∈ I | Ai, vi |= ϕ} ∈ F.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

106 sintassi e semantica della logica del primo ordine .

Dimostrazione. La dimostrazione è per induzione sulla complessità di ϕ. Se ϕ è ato-mica della forma t1 = t2, supponiamo che v(t1) = [a1]∼F

e v(t2) = [a2]∼F, allora

abbiamo:

A, v |= ϕ⇔ [a1]∼F= [a2]∼F

⇔ a1 ∼F a2

⇔ {i ∈ I | πi(a1) = πi(a2)} ∈ F per la eq. (9)

⇔ {i ∈ I | Ai |= vi(t1) = vi(t2)} ∈ F per definizione 4.18, voce 1.

Se ϕ è atomica della forma P(t1, . . . , tn), supponiamo che v(tj) = [aj]∼Fper 1 6 j 6

n, allora abbiamo:

A, v |= ϕ⇔ PA(v(t1), . . . , v(tn)) vale in A

⇔ {i ∈ I | PA(πi(a1), . . . , πi(an)} ∈ F per definizione 4.38, voce a,

⇔ {i ∈ I | Ai |= P(t1, . . . , tn)} ∈ F per definizione 4.18, voce 1.

Supponiamo ora che l’asserto valga per tutte le formule di complessità inferiore a ne supponiamo che ϕ abbia complessità uguale ad n, allora abbiamo i seguenti casi:

• ϕ = ϕ1 ∧ϕ2. Allora ϕ1 e ϕ2 hanno complessità inferiore a n e dunque per lorovale l’ipotesi induttiva. Si ha allora

A, v |= ϕ1 ∧ϕ2 ⇔ A, v |= ϕ1 e A, v |= ϕ2

⇔ {i ∈ I | Ai, vi |= ϕ1} ∈ F e {i ∈ I | Ai, vi |= ϕ2} ∈ F per ipotesi induttiva

⇔ {i ∈ I | Ai, vi |= ϕ1}∩ {i ∈ I | Ai, vi |= ϕ2} ∈ F perché F è un filtro,

⇔ {i ∈ I | Ai, vi |= ϕ1 e Ai, vi |= ϕ2} ∈ F per le proprietà insiemistiche

⇔ {i ∈ I | Ai, vi |= ϕ1 ∧ϕ2} ∈ F per definizione 4.18, voce 3.

• ϕ = ¬ϕ1. Allora ϕ1 ha complessità inferiore a n e dunque per essa vale l’ipotesiinduttiva. Si ha allora

A, v |= ¬ϕ1 ⇔ A, v 6|= ϕ1⇔ {i ∈ I | Ai, vi |= ϕ1} 6∈ F per ipotesi induttiva

⇔ {i ∈ I | Ai, vi 6|= ϕ1} ∈ F per lemma 3.81, voce 2

⇔ {i ∈ I | Ai, vi |= ¬ϕ1} ∈ F per definizione 4.18, voce 2.

• ϕ = ∃xϕ1(x). Allora ϕ1(x) ha complessità inferiore a n e dunque per essa valel’ipotesi induttiva. Si ha allora

A, v |= ∃xϕ1(x)⇔ esiste a ∈×i∈IAi,A, v([a]∼F

/x) |= ϕ1(x)

⇔ esiste a ∈×i∈IAi, tale che

{i ∈ I | Ai, vi(πi(a)/x) |= ϕ1(x)} per ipotesi induttiva

Infine basta notare che

{i ∈ I | Ai, vi(πi(a)/x) |= ϕ1(x)} ⊆ {i ∈ I | Ai, vi |= ∃xϕ1(x)}.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

4.7 ultraprodotti e compattezza della logica del prim’ordine . 107

Infatti poiché il primo appartiene ad F e F è un filtro, anche il secondo appartienead F, dunque abbiamo stabilito che se A, v |= ∃xϕ1(x) allora {i ∈ I | Ai, vi |=

∃xϕ1(x)} ∈ F. Viceversa, supponiamo che D = {i ∈ I | Ai, vi |= ∃xϕ1(x)} ∈ F.Per ogni i ∈ D si ha Ai, vi |= ∃xϕ1(x), dunque per ogni i ∈ D esiste bi ∈ Itale che Ai, vi(bi/x) |= ∃xϕ1(x). Grazie all’assioma di scelta è possibile formareuna sequenza c = (ci | i ∈ I), tal che per ogni i ∈ D si ha ci = bi. Si hadunque che D ⊆ {i ∈ I | Ai, vi(π(c)/x) |= ϕ1(x)} e poiché il primo appartienead F anche il secondo gli appartiene. Per ipotesi induttiva abbiamo quindi cheA, v(c/x) |= ϕ1(x). Da ciò infine otteniamo A, v |= ∃xϕ1(x). Questo conclude ladimostrazione.

Sia (Ai | i ∈ I) una famiglia di copie isomorfe di A e F un ultrafiltro su I. Sia a∗la sequenza nel prodotto delle Ai tale che πi(a∗) = a per ogni i ∈ I. Definiamo unamappa d : A → ∏i∈IAi/F ponendo d(a) = [a∗]∼; tale mappa è detta immersionecanonica.

Corollario 4.40. L’immersione canonica è un’immersione elementare di A in AI/F.

Corollario 4.41. Se (Ai | i ∈ I) è una famiglia di copie isomorfe di A e F un ultrafiltro su Iallora A ∼=

∏i∈IAi/F.

Concludiamo questo excursus con un’applicazione della costruzione appena vistaper dare una dimostrazione del Teorema di Compattezza indipendente dal Teoremadi Completezza.

Teorema 4.42 (Teorema di compattezza della logica del prim’ordine). Un insieme Γ diformule del prim’ordine ha un modello se, e soltanto se, ogni suo sottoinsieme finito ha unmodello.

Dimostrazione. Se Γ ha un modello, questo è banalmente un modello per ogni suosottoinsieme finito. Vediamo quindi l’altra implicazione.

Supponiamo che ogni sottoinsieme finito ∆ ⊆ Γ abbiamo un modello, e sia

I = {∆ ⊆ Γ | ∆ è finito}.

Per ogni sottoinsieme ∆ ∈ I, sia M∆ un modello fissato, che esiste per ipotesi. Insimboli, M∆ |= ∆. Per ogni ∆ ∈ I, consideriamo la sua estensione ‘Delta∗ definita daglielementi di I che contengono ∆. Questo sarà un insieme di elementi di I e quindi unelemento dell’algebra di Boole ℘(I). In simboli,

∆∗ = {Θ ∈ I | ∆ ⊆ Θ} ∈ ℘(I).

Nell’algebra di Boole ℘(I) possiamo definire il sottoinsieme I∗ = {∆∗ | ∆ ∈ I} ⊆ ℘(I).Vediamo che I∗ ha la FIP. Infatti, per ogni coppia ∆∗1, ∆

∗2 ∈ I∗ si ha che il sottoinsieme

finito di Γ dato dall’unione ∆1 ∪ ∆2 è una estensione di entrambi ∆1 e ∆2, quindi∆1 ∪∆2 ∈ ∆∗1 ∩∆∗2, dunque l’intersezione non è vuota.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

108 sintassi e semantica della logica del primo ordine .

Di conseguenza, per corollario 3.86, esiste un ultrafiltro U di ℘(I) che contiene I∗.Consideriamo allora l’ultraprodotto M =

∏∆∈IM∆/U. Vediamo che M è un modello

per Γ , cioè M |= ϕ per ogni ϕ ∈ Γ .Per ogni ϕ ∈ Γ , sia {ϕ}∗ la sua estensione. Per definizione di estensione, {ϕ}∗ = {∆ ∈

I | ϕ ∈ ∆} ∈ I∗ ⊆ U. Inoltre, per ogni sottoinsieme ∆ ∈ I, se ϕ ∈ ∆ allora M∆ |= ϕ. Nericaviamo che {ϕ}∗ ⊆ {∆ ∈ I | M∆ |= ϕ}. Poiché U è un filtro {∆ ∈ I | M∆ |= ϕ} ∈ U.Segue dal teorema 4.39 che M |= ϕ e il teorema è dimostrato.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

4.8 il metodo dei tableaux per la logica del prim’ordine . 109

4.8 il metodo dei tableaux per la logica del prim’ordine .

A differenza della logica proposizionale, verificare che una formula del primo ordineben formata sia logicamente valida è un compito abbastanza complicato, infatti essa èlogicamente valida se è valida in tutti i possibili domini di interpretazione e per tutte lepossibili interpretazioni delle variabile. Una tale classe è infinita, è perciò impossibilecontrollare caso per caso che la proprietà valga (cosa che invece facciamo in logicaproposizionale quando calcoliamo riga per riga la tavola di verità).

In questa breve sezione presenteremo un metodo più efficace per la verifica di tau-tologie del primo ordine. L’algoritmo, che chiameremo Tab∀ costruisce, a partire dauna formula, un albero di possibili valutazioni per quella formula. Partendo dallanegazione della formula data, se un ramo dell’albero dovesse arrivare a conclusionepositivamente, otterremmo un’interpretazione che falsifica la formula data; questa nonsarebbe dunque logicamente valida. Se viceversa l’algoritmo dovesse chiudere tutti irami negativamente (cioè con qualche contraddizione all’interno di ogni ramo) alloravorrebbe dire che è impossibile falsificare la formula data o, equivalentemente, cheessa è logicamente valida.

L’algoritmo Tab∀ è un’estensione di quello dato all’inizio della sezione 2.7, quindi leregole per gestire i connettivi proposizionali sono le stesse trovate in precedenza.

Descriviamo quindi solo come trattare i quantificatori.I passi per i quantificatori da effettuare nell’algoritmo Tab∀ si dividono in due tipi:

del I tipo e del II tipo.

4.8.1 Regole del I tipo.

Se ϕ = ∃xϕ1 allora l’albero si prolunga come segue:

V(∃xϕ1)

V(ϕ1[c/x])

qui il simbolo di costante c è nuovo, nel senso che esso deve essere scelto tra isimboli di costante che non appaiono nell’albero (non è necessario che c appar-tenga al linguaggio). Intuitivamente, se vogliamo verificare ϕ = ∃xϕ1 bisognaverificare che ϕ1[c/x] valga per qualche costante c.

Se ϕ = ∀xϕ1 allora l’albero si prolunga come segue:

F(∀xϕ1)

F(ϕ1[c/x])

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

110 sintassi e semantica della logica del primo ordine .

anche qui il simbolo di costante c è nuovo, nel senso che esso deve essere scel-to tra i simboli di costante che non appaiono nell’albero (non è necessario chec appartenga al linguaggio). Intuitivamente, se vogliamo falsificare ϕ = ∀xϕ1bisogna falsificare ϕ1[c/x] per qualche costante c.

Come al solito, nelle regole del I tipo, il nodo a cui è stata applicata la regola vienesegnato poiché esso non verrà più considerato. Al contrario i nodi a cui si applicanoregole del II tipo non verranno segnati perché essi vanno riconsiderati ogni volta cheun nuovo simbolo di costante appare nell’albero.

4.8.2 Regole del II tipo.

Se ϕ = ∃xϕ1 allora l’albero si prolunga come segue:

F(∃xϕ1)

F(ϕ1[c1/x])

...

F(ϕ1[cn/x])

qui c1, . . . , cn sono tutte i simboli di costante già apparsi nel ramo che stia-mo prolungando. Se non dovessero essere apparsi simboli di constatante prece-dentemente, se ne introduce uno nuovo. Intuitivamente, se vogliamo falsificareϕ = ∃xϕ1 dobbiamo falsificare ogni ϕ1[ci/x] per ogni possibile costante ci presain considerazione.

Se ϕ = ∀xϕ1 allora l’albero si prolunga come segue:

V(∀xϕ1)

V(ϕ1[c1/x])

...

V(ϕ1[cn/x])

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

4.8 il metodo dei tableaux per la logica del prim’ordine . 111

qui c1, . . . , cn sono tutte i simboli di costante già apparsi nel ramo che stia-mo prolungando. Se non dovessero essere apparsi simboli di constatante pre-cedentemente, se ne introduce uno nuovo. Intuitivamente, se vogliamo verifi-care ϕ = ∀xϕ1 dobbiamo verificare ϕ1[c/x] per ogni costante ci già presa inconsiderazione.

Le regole del secondo tipo non vengono applicate una sola volta, ma si riattivanoogni volta che appare un nuovo simbolo di costante nel ramo a cui esse apparten-gono. Questo fa sì che, al contrario di quello che succede nell’algoritmo in logicaproposizionale, questo algoritmo possa andare avanti all’infinito (si veda l’Esempio4.44).

Esempio 4.43. Dimostriamo che ¬∀xϕ(x)↔ ∃x¬ϕ(x) è logicamente valida.

F((¬∀xϕ(x)→ ∃x¬ϕ(x))∧ (∃x¬ϕ(x)→ ¬∀xϕ(x)))∗

F(¬∀xϕ(x)→ ∃x¬ϕ(x))∗

V(¬∀xϕ(x))∗

F(∃x¬ϕ(x))

F(∀xϕ(x))∗

F(ϕ(c1))

F(¬ϕ(c1))∗

V(ϕ(c1))

==

F(∃x¬ϕ(x)→ ¬∀xϕ(x))∗

V(∃x¬ϕ(x))∗

F(¬∀xϕ(x))∗

V(∀xϕ(x))

V(¬ϕ(c2))∗

F(ϕ(c2))

==

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

112 sintassi e semantica della logica del primo ordine .

Poiché tutti i rami portano a una contraddizione la formula è logicamente valida

Esempio 4.44. Consideriamo ora la formula ∀x∃yϕ(x, y).

F(∃x∀yϕ(x, y))

F(∀yϕ(c1, y))∗

F(ϕ(c1, c2))

F(∀yϕ(c2, y))∗

F(ϕ(c2, c3))

F(∀yϕ(c3, y))∗

F(ϕ(c3, c4))

...

Come si vede, l’algoritmo entra in un ciclo dal quale non uscirà mai, generando semprenuove costanti.

Esempio 4.45. Si consideri la formula

(∃xϕ(x)∨ ∃xψ(x))→ (∀x∃y(¬ϕ(x)∨¬ψ(y))) .

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

4.8 il metodo dei tableaux per la logica del prim’ordine . 113

F((∃xϕ(x)∨ ∃xψ(x))→ (∀x∃y(¬ϕ(x)∨¬ψ(y))))∗

V(∃x (ϕ(x)∨ψ(x)))∗

F((∀x∃y(¬ϕ(x)∨¬ψ(y))))∗

V(ϕ(c)∨ψ(c))∗

F(∃y(¬ϕ(d)∨¬ψ(y)))

V(ψ(c))

F(¬ϕ(d)∨¬ψ(c)))∗

F(¬ϕ(d))∗

F(¬ψ(c))∗

V(ϕ(d))

V(ψ(c))

F(¬ϕ(d)∨¬ψ(d)))∗

F(¬ϕ(d))∗

F(¬ψ(d))∗

V(ϕ(d))

V(ψ(d))

V(ϕ(c))

F(¬ϕ(d)∨¬ψ(c)))∗

F(¬ϕ(d))∗

F(¬ψ(c))∗

V(ϕ(d))

V(ψ(c))

F(¬ϕ(d)∨¬ψ(d)))∗

F(¬ϕ(d))∗

F(¬ψ(d))∗

V(ϕ(d))

V(ψ(d))

Non è logicamente valida perché non si chiudono tutti i rami.

Esempio 4.46. Utilizzando il metodo degli alberi semantici stabiliamo se la seguenteformula è logicamente valida del primo ordine.

(∃xϕ(x)∨ ∃xψ(x))→ (∀x∃y(¬ϕ(x)∨¬ψ(y))) .

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

114 sintassi e semantica della logica del primo ordine .

F((∃xϕ(x)∨ ∃xψ(x))→ (∀x∃y(¬ϕ(x)∨¬ψ(y))))∗

V(∃x (ϕ(x)∨ψ(x)))∗

F((∀x∃y(¬ϕ(x)∨¬ψ(y))))∗

V(ϕ(c)∨ψ(c))∗

F(∃y(¬ϕ(d)∨¬ψ(y)))

V(ψ(c))

F(¬ϕ(d)∨¬ψ(c)))∗

F(¬ϕ(d))∗

F(¬ψ(c))∗

V(ϕ(d))

V(ψ(c))

F(¬ϕ(d)∨¬ψ(d)))∗

F(¬ϕ(d))∗

F(¬ψ(d))∗

V(ϕ(d))

V(ψ(d))

V(ϕ(c))

F(¬ϕ(d)∨¬ψ(c)))∗

F(¬ϕ(d))∗

F(¬ψ(c))∗

V(ϕ(d))

V(ψ(c))

F(¬ϕ(d)∨¬ψ(d)))∗

F(¬ϕ(d))∗

F(¬ψ(d))∗

V(ϕ(d))

V(ψ(d))

Non è logicamente valida perché non si chiudono tutti i rami.

Esempio 4.47. Si consideri la formula

(∀xϕ(x)∨ ∀xψ(x))→ (∀x(¬ϕ(x)→ ∀yψ(y))) .

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

4.8 il metodo dei tableaux per la logica del prim’ordine . 115

F((∀xϕ(x)∨ ∀xψ(x))→ (∀x(¬ϕ(x)→ ∀yψ(y))))∗

V(∀xϕ(x)∨ ∀xψ(x))∗

F(∀x(¬ϕ(x)→ ∀yψ(y)))∗

F(¬ϕ(c1)→ ∀yψ(y))∗

V(¬ϕ(c1))∗

F(∀yψ(y))∗

F(ϕ(c1))

F(ψ(c2))

V(∀xψ(x))

V(ψ(c1))

V(ψ(c2))

===

V(∀xϕ(x))

V(ϕ(c1))

V(ϕ(c2))

===

È logicamente valida perché si chiudono tutti i rami.

Esempio 4.48. Si consideri la formula

(∀xϕ(x)∧ ∀xψ(x))→ (∃x(¬ϕ(x)∨¬ψ(x))→ (ϕ(x)∧¬ϕ(x))) .

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

116 sintassi e semantica della logica del primo ordine .

F((∀xϕ(x)∧ ∀xψ(x))→ (∃x(¬ϕ(x)∨¬ψ(x))→ (ϕ(x)∧¬ϕ(x))))∗

V(∀xϕ(x)∧ ∀xψ(x))∗

F(∃x(¬ϕ(x)∨¬ψ(x))→ (ϕ(x)∧¬ϕ(x)))∗

V(∃x(¬ϕ(x)∨¬ψ(x)))∗

F(ϕ(x)∧¬ϕ(x))

V(∀xϕ(x))

V(∀xψ(x))

V(¬ϕ(c1)∨¬ψ(c1))∗

V(¬ψ(c1))∗

F(ψ(c1))

V(ϕ(c1))

===

V(¬ϕ(c1))∗

F(ϕ(c1))

V(ϕ(c1))

===

È logicamente valida perché si chiudono tutti i rami.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

4.8 il metodo dei tableaux per la logica del prim’ordine . 117

APPENDICI

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

AT E O R I A D E G L I I N S I E M I

a.1 cenni di teoria degli insiemi

La teoria degli insiemi costituisce un elemento unificatore di tutta la matematica, cheviene così ridotta a due soli concetti fondamentali: quello di insieme e quello di ap-partenenza. Uno dei principi fondamentali impliciti nella teoria è che ogni oggettomatematico (un numero reale, un cerchio, uno spazio metrico, una misura, una funzio-ne di variabile complessa, etc.) è un insieme. Anche se non sembra ragionevole che visiano insiemi che rappresentino adeguatamente il concetto intuitivo di numero realeo il concetto intuitivo di funzione, nella teoria degli insiemi si dimostra l’esistenza diinsiemi che codificano in qualche senso ragionevole i concetti di cui sopra. Ad esempio,è possibile rappresentare una funzione attraverso un insieme se la si identifica con ilsuo grafico (che è intuitivamente pensabile come un insieme). In un certo senso, l’iden-tificazione è lecita, poiché una funzione è univocamente determinata dal suo grafico, eviceversa il grafico di una funzione è univocamente determinato dalla funzione stessa.Tuttavia è chiaro che in questo modo si perdono alcune peculiarità del concetto intui-tivo di funzione (concetto che fa pensare ad un processo dinamico attraverso il qualepartendo da un valore in ingresso si ottiene un valore in uscita).

In ogni caso, con la teoria degli insiemi si riesce a fare tutta la matematica classicaall’interno di un unico, semplicissimo linguaggio, per cui dobbiamo riconoscere a taleteoria l’innegabile merito di aver raggiunto con successo questo importante obiettivo.

I padri fondatori della teoria furono da un lato Cantor, che si occupò (sebbene nonancora a livello di sistema assiomatico) del concetto astratto di insieme, scoprendofra l’altro l’esistenza di infiniti diversi fra loro, e dall’altro Frege, che aveva introdottouna teoria assiomatica delle classi all’interno della quale era possibile unificare tuttala matematica.

La teoria di Frege era basata su due assiomi fondamentali, che almeno a prima vistaapparivano entrambi logicamente validi:

1. Due classi con gli stessi elementi sono uguali.

2. Ogni proprietà P(x) definita sulla famiglia di tutte le classi determina una classeCP = {a : P(a)} costituita da tutti e soli quelle classi a che godono della proprietàP.

Partendo da questi assiomi, Frege era riuscito a costruire i principali oggetti matema-tici, come i numeri naturali, gli interi, i reali. Se la teoria avesse funzionato, sarebbestato possibile fondare tutta la matematica su principi che apparivano accettabili subasi puramente logiche. Pertanto, sarebbe stato possibile ridurre la matematica allalogica.

Invece, B. Russell scoprì che all’interno della teoria era possibile derivare una con-traddizione: per il principio voce 2 esiste infatti una classe R costituita da tutte le classi

119

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

120 teoria degli insiemi

che non appartengono a se stesse: R = {x : x /∈ x}. Tale classe è anche unica per ilprincipio voce 1.

Dalla definizione di R si ha subito che per ogni x, x ∈ R se, e soltanto se, x /∈ x.Per x = R si ottiene che R ∈ R se, e soltanto se, R /∈ R, da cui segue facilmente unacontraddizione. [Esercizio: dimostrare tale contraddizione senza usare il principio delterzo escluso o la reductio ad absurdum].

Pur avendo scoperto il paradosso, Russell era convinto che la teoria di Frege potesseessere salvata con qualche cambiamento. Per questo, egli inventò una teoria dei tipinella quale ad ogni oggetto veniva assegnato un tipo, con la clausola che oggetti diun dato tipo potevano avere come elementi solo oggetti di tipo inferiore. Nella teorianon era però possibile dimostrare l’esistenza di entità infinite, per cui cominciò a farsistrada l’idea di introdurre assiomi strettamente matematici.

Nella Teoria di Zermelo, l’assioma voce 2 viene sostituito dall’assioma più debole:data una proprietà P(x) ed un insieme a, esiste un insieme b ⊆ a i cui elementi sonotutti e soli quegli elementi di a che soddisfano la proprietà P(x). In tale teoria, vi èanche un assioma che garantisce l’esistenza di entità infinite.

Successivamente, Fraenkel aggiunse alla teoria di Zermelo un assioma che intuiti-vamente afferma che per ogni legge F che associa ad ogni insieme x uno ed un soloinsieme y = F(x), e per ogni insieme a, esiste l’insieme F[a] costituito da tutti e soli glielementi del tipo F(b) con b ∈ a, ossia: F[a] = {z : ∃u ∈ a(z = F(u)} è un insieme.

Nasce così la Teoria di Zermelo Fraenkel, nota come Teoria ZF, che viene usata ancoroggi dai matematici.

a.2 la teoria zf

Il linguaggio di ZF ha due simboli di relazione binaria, = (uguaglianza) e ∈ (apparte-nenza). ZF non ha altri simboli relazionali, e inoltre non ha né simboli di funzione nésimboli di costante. Tuttavia, come vedremo presto, in pratica è comodo aggiungeredei simboli definibili attraverso ∈ e =, e pensarli come abbreviazioni di formule piùcomplesse contenenti solo ∈ e =.

Gli assiomi di ZF sono i seguenti: (li enunciamo in modo informale, lasciando comeesercizio al lettore il compito di scriverli in modo formale nel linguaggio al primoordine di ZF).

Assioma di estensionalità - Due insiemi con gli stessi elementi sono uguali.Assioma dell’insieme vuoto - Esiste un insieme privo di elementi. Per l’assioma di

estensionalità tale insieme è unico. Esso viene detto insieme vuoto, e viene denotatocon ∅. In termini formali, se ϕ(x) è un qualunque formula, ϕ(∅) denota la formula∃z(∀u¬(u ∈ z)&ϕ(z)).

Assioma della coppia. Presi comunque due insiemi x e y (non si esclude che x = y),esiste un insieme z, detto coppia costituita da x e y i cui elementi sono x e y (e nessunaltro). Ancora una volta per l’assioma di estensionalità si vede che la coppia costituitada x e y è unica. Essa viene denotata con {x, y}. Più in dettaglio, se ϕ(v) è una formulaqualunque, ϕ({x, y}) denota la formula: ∃z∀u(u ∈ z↔ (u = x∨ u = y)&ϕ(z)).

La coppia {x, x} si denota con {x} (si chiama singoletto di x in quanto ha come unicoelemento x).

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

A.2 la teoria zf 121

La coppia ordinata costituita da x e y, con x che precede y, è per definizione l’insieme{{x}, {x, y}}. Tale coppia ordinata ha come elementi il singoletto di x e la coppia costi-tuita da x e y. La presenza del singoletto di x ci dice che x viene per primo nell’ordine.La coppia ordinata costituita da x e y, con x che precede y viene indicata con (x, y).

Assioma dell’unione. Dato un insieme qualunque x, esiste un insieme y che è l’u-nione degli elementi di x, cioè tale che per ogni insieme z si abbia: z ∈ y sse z stain almeno un elemento di x. Tale y, unico per l’assioma di estensionalità è indicatocon

⋃x. Si noti che l’usuale unione di due insiemi x e y non è altro che

⋃{x, y} (ma

secondo una tradizione consolidata, la indicheremo con x∪ y).Assioma dell’insieme potenza. Per ogni insieme x esiste un insieme y, (unico per

l’assioma di estensionalità) detto potenza di x e denotato con ℘(x), i cui elementi sonotutti e soli i sottoinsiemi di x. (Un insieme y è detto sottoinsieme di x (notazione: y ⊆ x)se ogni elemento di y è anche elemento di x).

Notazione. Nel seguito, con (∃x ∈ y)ϕ denotiamo la formula ∃x(x ∈ y&ϕ), mentrecon ∀x ∈ yϕ denotiamo la formula ∀x(x ∈ y → ϕ). Per abuso di linguaggio, perogni formula ϕ(x) indichiamo con {x : ϕ(x)} la collezione di tutti gli insiemi x tali cheϕ(x). Tale collezione di regola non è un insieme, e quindi non è un oggetto del nostrouniverso. Questo però non ci vieta di pensarla come esistente, almeno nella nostramente. Ad esempio, {x : x = x} è la collezione di tutti gli insiemi, che non è un insieme,ma ciò non ci vieta di parlarne almeno a livello metalinguistico. Inoltre possiamotradurre molti dei ragionamenti che facciamo su queste collezioni (che d’ora in poichiameremo classi) anche all’interno di ZF. Ad esempio, per dire che {x : ϕ(x)} ⊆ {x :

ψ(x)}, basta dire: ∀x(ϕ(x)→ ψ(x)), e per dire y ∈ {x : ϕ(x)} basta dire semplicemente:ϕ(y).

Assioma di isolamento. Questo non è un singolo assioma, ma uno schema di as-siomi. Per ogni formula ϕ(v) del linguaggio di ZF vi è un assioma che dice: per ogniinsieme x vi è un insieme y (denotato con {v ∈ x : ϕ(v)}) i cui elementi sono tutti e soligli elementi v di x tali che ϕ(v).

Notiamo che dall’assioma di isolamento, dall’assioma della coppia, da quello del-l’unione e da quello dell’insieme potenza possiamo dedurre l’esistenza del prodottocartesiano di due insiemi: dati due insiemi x e y, esiste un insieme z, detto prodotto car-tesiano di x e y e denotato con x× y, i cui elementi sono tutte e sole le coppie ordinate(a, b) tali che a ∈ x e b ∈ y. Infatti, con l’assioma della coppia e con quello dell’unioneposso formare l’insieme x∪y. Una coppia {a, b} con a ∈ x e b ∈ y è un sottoinsieme dix ∪ y, e quindi un elemento di ℘(x ∪ y) (insieme che esiste per l’assioma dell’insiemepotenza). Gli elementi della coppia ordinata (a, b) sono {a} e {a, b}, e quindi sono ele-menti di ℘(x ∪ y). Pertanto ogni elemento (a, b) con a ∈ x e b ∈ y è un sottoinsiemedi ℘(x∪ y), e quindi un elemento di ℘(℘(x∪ y)). Ora, si ha:

x× y = {u ∈ ℘℘(x∪ y) : ∃a ∈ x∃b ∈ y(u = (a, b)}

Per l’assioma di isolamento, ove si prenda come ϕ(u) la formula

∃a ∈ x∃b ∈ y(u = (a, b)),

x× y è un insieme.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

122 teoria degli insiemi

Notiamo che dall’assioma di isolamento segue che l’intersezione di una classe nonvuota di insiemi è un insieme: sia infatti C = {x : ϕ(x)} la classe in questione. Sia a ∈ C(quindi assumiamo ϕ(a)). Vogliamo dimostrare che

⋂C = {u : ∀z ∈ C(u ∈ z} è un

insieme. Ora a ∈ C, onde⋂C ⊆ a, e pertanto

⋂C = {u ∈ a : ∀z ∈ Cu ∈ z}. Qui

∀z ∈ Cu ∈ z è un’abbreviazione per ∀z(ϕ(z) → u ∈ z) (si ricordi che C = {x : ϕ(x)},onde x ∈ C sse ϕ(x)).

Per l’assioma di isolamento,⋂C = {u ∈ a : ∀z ∈ Cu ∈ z} è un insieme. In particolare

se x e y sono insiemi, x∩ y =⋂{x, y} è un insieme.

Definizione A.1. Una funzione da un insieme x a un insieme y è un sottoinsieme f delprodotto cartesiano x× y tale che per ogni a ∈ x esiste uno ed un solo b ∈ y tale che(x, y) ∈ f.

D’ora in poi scriviamo y = f(x) invece di (x, y) ∈ f. Scriviamo inoltre f(x) = g(y)

invece di ∀z((x, z) ∈ f↔ (y, z) ∈ g.Una funzione f da a a b si dice iniettiva se per ogni x, y ∈ a, se f(x) = f(y), allora

x = y. f si dice suriettiva se per ogni y ∈ b esiste un x ∈ a tale che f(x) = y. f è dettauna biezione se è sia iniettiva che suriettiva.

Se f è una funzione da a a b, a si chiama dominio di f, e si indica con Dom(f), mentrel’insieme {f(x) : x ∈ a} si chiama range di f e si indica con Range(f). Se b ⊆ a, l’insieme{f(x) : x ∈ b} viene denotato con f[b].

Esercizio A.2. Dimostrare che se y 6= ∅, allora esiste almeno una funzione da x a y.Dimostrare poi che se f è una funzione da a a b e se g è una funzione da b a c, esisteuna ed una sola funzione h da a a c (detta composizione di g con f) tale che per ognix ∈ a sia: h(x) = g(f(x)). Infine dimostrare che se f è una biezione da a a b, alloraesiste un’unica funzione g tale che la composizione di g con f sia l’identità su a e lacomposizione di f con g sia l’identità su b. (N.B.: si richiede anche di dimostrare cheg è un insieme).

Per postulare l’esistenza di un insieme infinito, si usa un metodo indiretto (come ve-dremo in seguito, l’essere infinito non è esprimibile al primo ordine, tuttavia è possibileintrodurre degli assiomi che sono soddisfacibili solo in strutture infinite).

Definizione A.3. Un insieme x si dice induttivo se ∅ ∈ x, e per ogni z, se z ∈ x, alloraz∪ {z} ∈ x.

Dalla definizione segue subito che se x è induttivo, allora posto 0 = ∅, 1 =0∪{0} = {∅},. . .n + 1 = n ∪ {n}, gli insiemi 0, 1, 2 . . . sono tutti elementi di x. Si può dimostrareche gli elementi 0, 1, 2, . . . sono a due a due distinti, per cui un insieme induttivo èrealmente infinito.

Assioma dell’infinito. Esiste almeno un insieme induttivo.

Esercizio A.4. Dimostrare che l’intersezione di tutti gli insiemi induttivi è un insiemeinduttivo (nota: si deve dimostrare sia che è un insieme, sia che è induttivo).

Definizione A.5. L’intersezione di tutti gli insiemi induttivi si chiama insieme deinumeri naturali, e si denota con ω.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

A.2 la teoria zf 123

Assioma di rimpiazzamento. Anche questo non è un singolo assioma, ma uno schemadi assiomi. Sia ϕ(x, y) una formula di ZF. L’istanza dell’assioma di rimpiazzamentocorrispondente a ϕ dice che se per ogni x esiste uno ed un solo y (che denoteremocon Fϕ(x)) tale che ϕ(x, y), allora per ogni insieme u la collezione {Fϕ(x) : x ∈ u} èun insieme. [Nel linguaggio di ZF la frase la collezione {Fϕ(x) : x ∈ u} è un insieme siesprime con la formula ∃z∀y(y ∈ z↔ ∃x ∈ uϕ(x, y))].

Abbiamo ora a disposizione quasi tutti gli assiomi indispensabili per fare la usualematematica. Mancano ancora due assiomi, uno dei quali, l’assioma di regolarità nonè utilizzato in matematica ma semplifica molto la struttura dell’universo di tutti gliinsiemi, l’altro, l’assioma di scelta, è invece molto usato in matematica, ma ha ancheconseguenze sorprendenti e per certi versi antiintuitive. Prima di introdurre tali assio-mi, vediamo brevemente come gli assiomi finora introdotti possano venir utlizzati percostruire le strutture di base della matematica.

Abbiamo visto che gli assiomi finora introdotti ci consentono di costruire l’insiemedei numeri naturali: il più piccolo insieme induttivo contiene 0 = ∅, 1 =0∪{0}, 2 =1∪{1}, 3 =2∪ {2}, . . .. D’altra parte la collezione costituita da 0, 1, 2, . . . , è un insieme induttivo, equindi deve contenere l’insieme dei naturali, che pertanto risulta costituito proprio da0, 1, 2, . . .. Si può poi dimostrare esiste una funzione S da ω a ω (detta funzione suc-cessore) definita da S(x) = x∪ {x}, e che la collezione delle funzioni da ω a ω è chiusaper composizione e per ricorsione. Quindi abbiamo funzione la somma, definita perricorsione a partire dal successore, e il prodotto, definito per ricorsione sulla somma.Inoltre, ω soddisfa l’usuale principio di induzione di Peano, con il quale si dimostra-no le principali proprietà (e.g. la proprietà commutativa, la proprietà associativa, laproprietà distributiva) della somma e del prodotto.

Dai naturali si passa agli interi, che sono costruiti partendo da ω ×ω (abbiamodimostrato che il prodotto cartesiano di due insiemi è un insieme; intuitivamente lacoppia ordinata (a, b) è pensata come a− b), ed introducendo quindi l’equivalenza(a, b) ≡ (c, d) sse a + d = b + c. Si costruisce poi l’insieme quoziente nel seguentemodo: innanzitutto si osserva che per ogni (a, b) ∈ ω×ω, la ua classe di equivalenzamodulo ≡ è un insieme per l’assioma di isolamento; poi si considera la legge cheassocia ad ogni coppia (a, b) la sua classe di equivalenza [(a, b)] modulo ≡.

Per l’assioma di rimpiazzamento, possiamo formare l’insieme Z = {[(a, b)] : (a, b) ∈ω ×ω}, che è appunto l’insieme quoziente di ω ×ω modulo ≡. Le operazioni disomma, prodotto e sottrazione e la relazione d’ordine sugli interi sono come è notodefinibili a partire da quelle sui naturali.

Inoltre tali operazioni sono sottoinsiemi di Z×Z e quindi sono insiemi per l’assio-ma di isolamento (e per gli assiomi che consentono di costruire il prodotto cartesianodi due insiemi).

Costruiamo così la quintupla (Z,+,−, ·,6), che costituisce l’anello ordinato degliinteri. Si dimostra poi che gli interi formano un dominio di integrità ordinato.

Con una ulteriore costruzione che passa attraverso il prodotto cartesiano ed utilizzapoi un passaggio all’insieme quoziente, si arriva al campo ordinato delle frazioni suZ, cioè al campo ordinato Q dei razionali.

Dai razionali si passa poi ai reali attraverso l’operazione di completamento. Lo sco-po della costruzione è quella di introdurre un estremo superiore per ogni insieme

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

124 teoria degli insiemi

superiormente limitato e non vuoto di numeri razionali, tenendo presente che due in-siemi cofinali (in cui cioè ogni elemento dell’uno è maggiorato da almeno un elementodell’altro) devono avere lo stesso estremo superiore.

L’idea per ottenere questo scopo è quella di prendere come insieme R dei reali l’in-sieme delle semirette razionali, cioè gli insiemi di razionali non vuoti, superiormentelimitati, chiusi all’ingiù e privi di massimo, immaginando di identificare ciascuno ditali insiemi con il suo estremo superiore (seguendo questo ordine di idee nella direzio-ne opposta, potremmo dire che ogni reale viene identificato con l’insieme dei razionaliche lo precedono).

La famiglia R delle semirette razionali è una sottoclasse definibile della potenzadi Q, e quindi è un insieme per l’assioma dell’insieme potenza e per l’assioma diisolamento.

I razionali si immergono nei reali tramite la funzione che associa ad ogni q ∈ Q lasemiretta razionale {x ∈ Q : x < q}. Si possono poi definire le operazioni di somma,di prodotto, di reciproco additivo, l’operazione parziale di reciproco moltiplicativo el’ordine in modo che l’immersione di Q in R sia compatibile con tali operazioni e conla relazione d’ordine, e che le operazioni si estendano con continuità da Q a R. Indefinitiva, si riesce a dimostrare che R con le operazioni definite tramite la costruzio-ne a cui abbiamo accennato sopra, e rispetto all’ordine definito tramite l’inslusioneinsiemistica di semirette razionali, risulta un campo ordinato completo.

Passiamo ora agli ultimi due assiomi.Assioma di regolarità - Per ogni insieme non vuoto a esiste un b ∈ a che è minimale

fra gli elementi di a rispetto all’appartenenza, cioè tale che per ogni c ∈ a, c /∈ b. Inmodo formalmente più semplice, ma forse meno chiaro da un punto di vista intuitivo,possiamo formulare l’assioma come segue: per ogni insieme a 6= ∅ esiste un b ∈ a taleche b∩ a = ∅.

Non perderemo molto tempo con questo assioma, che come abbiamo detto ha l’u-nico scopo di semplificare la descrizione dell’universo degli insiemi, pur non limi-tandone le potenzialità (nel senso che tutte le costruzioni matematiche che possiamofare utilizzando insiemi che non soddisfano l’assioma di fondazione possiamo ottener-le a meno di isomorfismi anche utilizzando solo quegli insiemi che soddisfano taleassioma).

La teoria i cui assiomi sono quelli fin qui esposti si indica con ZF (da Zermelo eFraenkel).

Prenderemo ora in considerazione l’assioma di scelta, un assioma che viene utiliz-zato frequentemente in matematica.

Assioma di scelta - Ogni insieme X i cui elementi siano tutti insiemi non vuotiammette una funzione di scelta, cioè una funzione F da X a

⋃X tale che per ogni

x ∈ X, F(x) ∈ x.Anche se questo assioma appare intuitivamente vero, ad un esame più approfon-

dito esso non risulta del tutto evidente: dalla sola informazione che gli insiemi in Xsono non vuoti si afferma l’esistenza di un metodo (la funzione F) per ottenere unelemento da ciascuno di tali insiemi. Per fare un esempio concreto, se avessimo a chefare con infinite paia di scarpe, avremmo un metodo per sceglierne una per ogni paio(e.g., scegliendo quella sinistra, oppure scegliendo quella destra), mentre se avessimo

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

A.3 gli ordinali 125

a che fare con infinite paia di calze, anche se ciascun paio è un insieme non vuoto,non avremmo un metodo per scegliere una calza da ciascun paio: si può ad esempiosceglierne una a caso da ciascun paio, ma è discutibile che questo metodo randomdefinisca una funzione nel senso della teoria degli insiemi.

L’assioma di scelta semplifica molto la vita in matematica, e in particolare in algebra.Esso implica ad esempio i seguenti teoremi:

• Ogni spazio vettoriale ha una base.

• Ogni campo ha una chiusura algebrica.

• Ogni anello ha un ideale massimale.

• Il prodotto di spazi compatti è compatto.

• Una funzione f è continua in x0 ∈ Dom(f) sse per ogni successione an : n ∈ N

di elementi di Dom(f) avente come limite x0, si ha limn→∞ f(an) = f(x0).Anche in logica l’assioma di scelta ha importanti conseguenze, ad esempio:

Teorema A.6 (Lemma di Lindenbaum). Se T è una teoria coerente (cioè T 6` ⊥) su unlinguaggio qualsiasi, esiste un’estensione T ′ di T sullo stesso linguaggio che è sia coerente checompleta (cioè per ogni formula chiusa A, T ′ ` A sse T 6` ¬A).

L’assioma di scelta ha anche conseguenza indesiderabili, ad esempio:

• Non esiste una misura µ non identicamente nulla, definita su tutti i sottoinsie-mi di [0, 1] tale che µ([0, 1]) = 1, e che sia numerabilmente additiva (cioè seA1, . . . An, . . . , sono sottoinsiemi di [0, 1] a due a due disgiunti, allora µ(

⋃∞i=1Ai) =∑∞

i=1 µ(Ai)), e invariante per traslazioni, (cioè se A ⊆ [0, 1], se a ∈ R, e seAa = {x+ a : x ∈ A} è un sottoinsieme di [0, 1], allora µ(Aa) = µ(A)).

• Esiste una decomposizione della sfera di raggio 1 in un numero finito di partiche possono essere ricomposte (attraverso movimenti rigidi ed evitando sovrap-posizioni) in modo da formare una sfera di raggio 2.

La teoria ZF più assioma di scelta si indica con ZFC (C sta per choice: scelta).Gli aspetti importanti della teoria ZFC sono molti, ed alcuni di essi sono molto

complessi. Per mancanza di spazio ci limiteremp qui a due concetti particolarmenteimportanti in logica: gli ordinali e i cardinali.

a.3 gli ordinali

Gli ordinali possono essere visti in almeno due modi diversi: il primo modo consistenel pensarli come numeri che incontreremmo se potessimo contare all’infinito, passan-do al limite ogni volta che il processo va avanti all’infinito. In questo modo, incontrerem-mo innanzitutto i numeri naturali 0, 1, 2, 3, . . .. Il processo di contare i numeri naturaliè infinito, e passando al limite otterremmo ω. Potremmo poi ricominciare la contapartendo da ω: ω,ω+ 1,ω+ 2, . . .. Passando ancora una volta al limite otterremmo

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

126 teoria degli insiemi

ω+ω. Potremmo poi ripartire da ω+ω: ω+ω,ω+ω+ 1,ω+ω+ 2, . . ., e così diseguito.

In effetti, Cantor si trovò a dover utilizzare questo tipo di conteggio nel tentativo didimostrare il Teorema di Cantor-Bendixon, che afferma che ogni insieme chiuso dellaretta reale è unione di un insieme chiuso privo di punti isolati (detto insieme perfetto)e un insieme numerabile. Per dimostrare il risultato, Cantor aveva bisogno di iterarel’operazione di togliere i punti isolati dall’insieme. Un numero finito di iterazioni nonbastava, per cui si rendeva necessario poter passare più volte al limite. Il numero diiterazioni necessarie poteva essere contato solo usando ordinali infiniti.

Un secondo modo per introdurre il concetto intuitivo di ordinale consiste nel pen-sare gli ordinali come rappresentanti canonici di tipi di isomorfismo di buoni ordini.

Definizione A.7. Un buon ordine su un insieme X è un ordine parziale (quindi unarelazione riflessiva, transitiva, antisimmetrica) � su X tale che ogni sottoinsieme nonvuoto Y di X abbia minimo rispetto a �. Un insieme ben ordinato è una coppia ordinata(X,�), ove X è un insieme non vuoto, e � è un buon ordine su X.

Si vede subito che un buon ordine è anche totale: dati x, y ∈ X, l’insieme {x, y},essendo non vuoto, ha minimo, e quindi o x � y (se min{x, y} = x), o y � x (semin{x, y} = y).

Esercizio A.8. Dire quali delle seguenti relazioni sono buoni ordini, motivando lerisposte:

1. L’ordine naturale su ω.

2. L’ordine naturale su Z.

3. La relazione | su ω definita da x | y sse x è un divisore di y.

4. La relazione � su ω×ω definita da (a, b) � (c, d) sse o a < c, o a = c e b 6 d.

5. La relazione / su ω×ω definita da (x, y) / (u, v) sse o max{x, y} < max{u, v}, omax{x, y} = max{u, v} e x < u, o max{x, y} = max{u, v}, x = u e y 6 v.

6. La relazione�= definita sulle sequenze finite di numeri naturali come segue: Datauna sequenza finita di naturali a = (a0, . . . , an), la estendo ad una sequenzainfinita a ponendo ai = ai per i =0. . . , n, e ai = −1 per i > n. Date duesequenze finite di naturali a e b, poniamo allora a �= b sse o a = b, oppure,indicato con j il minimo naturale i tale che ai 6= bi, è aj < bj.

Definizione A.9. Un segmento iniziale di un insieme bene ordinato (X,�) è un sot-toinsieme proprio S non vuoto di X tale che se per ogni x ∈ S e per ogni y ∈ X, sey � x allora y ∈ S.

Un isomorfismo da un insieme ben ordinato (X,�) a un insieme ben ordinato (Y,�=)

è una biezione h da X a Y tale che per ogni x, z ∈ X sia: x � z sse h(x) �= h(z).

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

A.3 gli ordinali 127

Esercizio A.10. 1. Sia (X;�) un insieme ben ordinato, e sia x ∈ X. Definiamo:W(x) = {y ∈ X : y ≺ x} (ove y ≺ x sta per y � x e y 6= x). Dimostra cheper ogni segmento iniziale S di (X,�) esiste un x ∈ X tale che S =W(x).

2. Dimostra che se h è un isomorfismo da un insieme ben ordinato (X,�) ad uninsieme ben ordinato (Y,

�=), allora per ogni x ∈ X, l’immagine di W(x) in h è

W(h(x)).

3. Dimostra che non esiste alcun isomorfismo da un insieme ben ordinato ad unsuo segmento iniziale.

4. Dimostra che l’unico isomorfismo da un insieme ben ordinato in se stesso èl’identità.

5. Dimostra che può esistere al più un isomorfismo da un insieme ben ordinato adun altro.

6. Dimostra che se (X,�) è un insieme ben ordinato, se ∅ 6= Y ⊆ X, e se �Y denotala restrizione di � a Y, allora (Y,�Y) è un insieme ben ordinato.

Teorema A.11 (Tricotomia). Siano (X,�) e (Y,�=) due insiemi ben ordinati. Allora si verificauna ed una sola delle seguenti cose:

(i) Esiste un (necessariamente unico) isomorfismo da (X,�) a (Y,�=).

(ii) Esiste un (necessariamente unico) isomorfismo da (X,�) a un segmento iniziale di (Y,�=).

(iii) Esiste un (necessariamente unico) isomorfismo da un segmento iniziale di (X,�) a (Y,�=).

Dimostrazione. Per ogni x ∈ X esiste al più un y ∈ Y tale che W(x) e W(y) siano iso-morfi. Se infatti W(x) fosse isomorfo a W(y) tramite l’isomorfismo f e a W(z) tramitel’isomorfismo g, con y 6= z, allora supposto per esempio y � z, W(y) sarebbe unsegmento iniziale di W(z), e f ◦ g−1 sarebbe un isomorfismo da W(z) al suo segmentoiniziale proprio W(y), contro il punto (c) dell’esercizio precedente. Sia S l’insieme de-gli x ∈ X per cui esiste un y ∈ Y tale che W(x) sia isomorfo a W(y), e definiamo perogni x ∈ S, F(x) = unico y ∈ Y tale che W(x) è isomorfo a W(y). Chiaramente F è unafunzione da S a Y. Dimostraimo i seguenti fatti:

• F è crescente: siano x, z ∈ S, con x ≺ z. Allora, esiste un isomorfismo da W(z) aW(F(z)), e la restrizione di tale isomorfismo a W(x) è un isomorfismo da W(x) aun segmento iniziale W(u) di W(F(z)). Quindi F(x) = u� F(z), e F è crescente.

• O S = X oppure S è un segmento iniziale di X. Infatti se x ≺ z ∈ S, W(z) èisomorfo a W(F(z)), e la restrizione di tale isomorfismo a W(x) è un isomorfismoda W(x) a un segmento iniziale W(u) di W(F(z)). Quindi F(x) = u, e x ∈ S.

• O Range(F) = Y, o Range(F) è un segmento iniziale di Y. Ragionamento simileal precedente.

• F è un isomorfismo da S a Range(F). Infatti F è crescente, quindi iniettiva, esuriettiva per definizione di Range(F).

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

128 teoria degli insiemi

A questo punto basta dimostrare che o S = X e range(F) = Y, o Range(F) = Y e S èun segmento iniziale di X, o infine S = X e Range(F) è un segmento iniziale di Y.

A tal fine basta escludere che S e Range(F) siano entrambi segmenti iniziali, di X e,rispettivamente, di Y. Ma se consì fosse, esisterebbero x, y con S = W(x), Range(F) =W(y), e F sarebbe un isomorfismo da W(x) a W(y). Questo comporterebbe F(x) = y,x ∈ Dom(F), e Dom(F) 6= S, assurdo.

Lasciamo come esercizio la verifica che non si possono verificare contemporanea-mente due fra i casi (i), (ii) e (iii).

Definizione A.12. Un insieme x si dice transitivo se per ogni y, z, se y ∈ z e z ∈ x,allora y ∈ x. (Equivalentemente possiamo dire che x è transitivo sse ogni suo elementoè suo sottoinsieme).

Un ordinale è un insieme transitivo ben ordinato dalla relazione ∈= definita da x ∈= ysse x ∈ y o x = y.

Nel seguito, On denoterà la classe degli ordinali. (Nota che On non è un insieme).Scriveremo quindi α ∈ On per esprimere il fatto che α è un ordinale.

Esercizio A.13. Dimostrare i seguenti fatti:

(a) Se α ∈ β ∈ On, allora α ∈ On (in altre parole On è una classe transitiva).

(b) ∅ ∈ On.

(c) Se α ∈ On e β ∈ On, allora α ∩ β ∈ On. Più in generale, se C è una classe nonvuota di ordinali, allora

⋂C è un ordinale.

Lemma A.14. (i) Se α ∈ On e β ∈ On, allora α ∈ β sse α ⊂ β.

(ii) Se α,β ∈ On, allora si verifica una ed una sola delle seguenti: o α ∈ β, o β ∈ α o α = β.

(iii) La classe On è ben ordinata da ∈=.

(iv) On è una classe propria (i.e., On non è un insieme).

(v) Per ogni α ∈ On, α ∪ {α} ∈ On, ed è il più piccolo (rispetto a ∈=) ordinale maggiore diα.

(vi) Per ogni insieme X di ordinali, ∪X è un ordinale, ed è il più piccolo (rispetto a ∈=)maggiorante di X.

Dimostrazione. (i). Se α ∈ β allora α ⊆ β, essendo β transitivo. L’inclusione è propria,poiché α ∈ β, ma α /∈ α, per l’assioma di fondazione (se α ∈ α, {α} non avrebbealcun elemento ∈-minimale). [Avevamo detto che l’assioma di regolarità non servepraticamente a nulla. Infatti anche in questo caso, il suo uso può essere evitato. Come?]

Supponiamo ora α ⊂ β. Sia γ il minimo (rispetto a ∈=) in β \ α. Dico che α = γ, dacui segue α ∈ β, cioè l’asserto.

Se δ ∈ γ, allora, per la transitività di β, δ ∈ β, e per la minimalità di γ, δ /∈ β \α, i.e.,δ ∈ α. Quindi γ ⊆ α.

Viceversa, se δ ∈ α, allora δ ∈ β, essendo α ⊂ β. Poiché β è ben ordinato da ∈=, visono tre possibilità: o γ ∈ δ, o γ = δ, o δ ∈ γ.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

A.3 gli ordinali 129

Se fosse γ ∈ δ, avremmo γ ∈ δ ∈ α, e quindi per la transitività di α, γ ∈ α, assurdo.Similmente se fosse γ = δ avremmo γ = δ ∈ α, assurdo. Pertanto δ ∈ γ.

Riassumendo, abbiamo dimostrato che γ ⊆ α, e che se δ ∈ α, allora δ ∈ γ. Quindiα = γ ∈ β, come si voleva.

(ii) Supponiamo α 6= β e β /∈ α, e dimostriamo α ∈ β. Per il punto (i), α 6⊆ β, e quindiα ∩ β ⊂ β. Per l’esercizio precedente, α ∩ β è un ordinale, ed essendo α ∩ β ⊂ β, dalpunto (i) si deduce α ∩ β ∈ β. Dico che α ∩ β = α, da cui si deduce α = α ∩ β ∈ β,come si voleva. Se fosse α∩β ⊂ α, per il punto (i) avremmo α∩β ∈ α. Ma α∩β ∈ β,onde α ∩ β ∈ α ∩ β, contro l’assioma di fondazione. (Ancora una volta, il lettore èinvitato a dimostrare che si può fare a meno di tale assioma).

(iii) La relazione ∈= è ovviamente riflessiva. Se α ∈= β∈= γ ∈ On, allora essendo γ

un insieme transitivo si ottiene subito α ∈= γ. Pertanto ∈= è transitiva. Se α ∈= β∈= α,

allora non posso avere α ∈ β altrimenti α ∈ β ∈= α, e usando la transitività di α, α ∈ α,contro l’assioma di fondazione. Similmente non può essere β ∈ α, e quindi α = β peril punto (ii). Quindi ∈= è antisimmetrica. Per il punto (ii), ∈= è lineare, e quindi bastadimostrare che ogni classe non vuota X di ordinali ha un minimo rispetto a ∈=. Siaα ∈ X arbitrario. Se α non è il minimo di X, α ∩ X 6= ∅, e quindi essendo α ∈ On, taleinsieme ha minimo α0 rispetto a ∈=. Se β ∈ X, o β ∈ α, e allora β ∈ α ∩ X, e quindiα0∈= β, o β /∈ α, e allora α0 ∈ α ∈= β. In ogni caso, α0

∈= β. Quindi α0 = minX.

(iv) Se On fosse un insieme, essendo transitivo e ben ordinato da ∈=, sarebbe unordinale, e quindi On ∈ On, contro l’assioma di fondazione.

(v) Lasciamo per esercizio la dimostrazione del fatto che α ∪ {α} è un ordinale.Ovviamente α ∈ α ∪ {α}, e se α ∈ β, allora α ∪ {α} ⊆ β, onde per il punto (i),α∪ {α} ∈= β.

(vi) Lasciamo al lettore la verifica del fatto che ∪X è un ordinale. Ovviamente ∪X èl’estremo superiore di X rispetto a ⊆, e per il punto (i) è l’estremo superiore di X ancherispetto a ∈=.

Notazione. Nel seguito scriviamo α + 1 invece di α ∪ {α}, e, se X è un insieme diordinali, scriviamo supX invece di

⋃X. Inoltre, scriviamo α < β invece di α ∈ β, e

α 6 β invece di α ∈= β.

Teorema A.15. Ogni insieme bene ordinato è isomorfo ad uno ed un solo ordinale (munitodella relazione ∈=).

Dimostrazione. Per il Teorema di tricotomia, dati un insieme bene ordinato (X,�) e unordinale α si possono verificare tre casi: o (X,�) è isomorfo a un segmento iniziale di(α∈=), o (X,�) è isomorfo a (α,

∈=), o (α

∈=) è isomorfo ad un segmento iniziale di (X,�).

Poiché un segmento iniziale di un ordinale rispetto a ∈= è un ordinale, per ottenerel’asserto basta escludere la possibilità che per ogni ordinale α, (α, ∈=) sia isomorfo adun segmento iniziale di (X,�).

Ora, se così fosse, per ogni α vi sarebbe un unico isomorfismo ϕα da (α,∈=) ad un

segmento iniziale di (X,�). Ora se β < α, la restrizione di ϕα a β è un isomorfismo

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

130 teoria degli insiemi

da (β,∈=) ad un segmento iniziale di (X,�), che per l’unicità coincide con ϕβ. In altre

parole:

Se γ < β < α, allora ϕα(γ) = ϕβ(γ). (10)

Poniamo allora per ogni α ∈ On,ϕ(α) = ϕα+1(α). Si vede facilmente cheϕ è crescenteda (On,

∈=) a (X,�): se α < β, allora per la eq. (10) si ha:

ϕ(α) = ϕα+1(α) = ϕβ+1(α) ≺ ϕβ+1(β) = ϕ(β),

dove la penultima uguaglianza segue dal fatto che ϕβ+1 è crescente.Ne segue che ϕ è iniettiva. Sia Y = Range(ϕ), e sia ψ l’inversa di ϕ. ψ è allora

una funzione iniettiva da Y ad On. Essendo Y ⊆ X, Y è un insieme, e per l’assioma dirimpiazzamento On sarebbe un insieme, assurdo.

Definizione A.16. Un ordinale α si dice un successore se esiste un ordinale β tale cheα = β+ 1. Un ordinale che non sia né 0 (ossia ∅), né un successore si dice un ordinalelimite.

Lemma A.17. L’insieme ω, il più piccolo insieme induttivo, è un ordinale limite ed è il piùpiccolo fra gli ordinali limite.

Dimostrazione. Cominciamo ad oservare che ω ∩On è un insieme induttivo (la faciledimostrazione è lasciata per esercizio). Quindi essendo ω il più piccolo insieme indut-tivo, ω = ω ∩On, e quindi ω ⊆ On. Dico che ω è transitivo. Intanto, se α ∈ β ∈ ω,allora α ∈ On, essendo On una classe transitiva. Sia per assurdo α il minimo ordinaleper cui esiste β con α ∈ β ∈ ω, e α /∈ ω. α 6= 0, poiché 0 ∈ ω. Se α fosse un successore,diciamo α = δ+ 1, allora per la minimalità di α, δ ∈ ω, e ancora α ∈ ω, essendo ωinduttivo, assurdo. Se α fosse un ordinale limite, allora è facile vedere che α sarebbeun insieme induttivo non contenente ω (essendo β ∈ ω \ α), contro il fatto che ω è ilpiù piccolo insieme induttivo. In ogni caso abbiamo un assurdo, e ω è transitivo.

Pertanto ω è transitivo, ed essendo un insieme di ordinali, è bene ordinato da ∈=.Perciò ω è un ordinale.ω 6= 0, poiché 0 ∈ ω. Inoltre, ω non è un successore, poiché se fosse ω = α+ 1,

essendoω induttivo, da α ∈ ω seguirebbeω = α+1∈ ω, contro l’assioma di regolarità.Quindi ω è un ordinale limite.

Per dimostrare che ω è il più piccolo ordinale limite, basta osservare che ogni ele-mento di ω o è 0 o è un successore. Se così non fosse, ω avrebbe come elementoun ordinale limite α, che sarebbe un insieme induttivo non contenente ω, assurdo.Pertanto ω è il più piccolo ordinale limite.

Il ben noto principio di induzione sui naturali si estende agli ordinali nel modoseguente:

Teorema A.18 (Induzione transfinita). Siaϕ(x) una formula. Supponiamo che valga almenouna delle seguenti:

(a) Per ogni ordinale α, se per ogni β < α vale ϕ(β), allora ϕ(α), oppure:

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

A.3 gli ordinali 131

(b) Vale ϕ(0), e per ogni ordinale α, se vale ϕ(α) allora vale ϕ(α + 1); inoltre per ogniordinale limite α se per ogni β < α vale ϕ(β), allora ϕ(α).

Allora, per ogni ordinale α, vale ϕ(α).

Dimostrazione. In entrambi i casi si ragiona per assurdo. Se non vale la tesi, esiste unminimo ordinale α su cui non vale. Lasciamo per esercizio al lettore il compito ditrovare un assurdo.

Il metodo induttivo viene usato in matematica non solo per dimostrare teoremi,ma anche per definire funzioni. Ad esempio, la somma sui naturali viene definitainduttivamente attraverso il successore, e il prodotto sui naturali viene definito indut-tivamente a partire dalla somma. Si può generalizzare il principio alla classe di tuttigli ordinali.

Sia Φ(x, y) una formula, sia C una classe, e supponiamo che per ogni x ∈ C esistauno ed un solo y tale che Φ(x, y). In questo modo abbiamo una legge funzionale F chead ogni x ∈ C associa l’unico y tale che Φ(x, y). Non possiamo parlare di funzione,poiché se C è una classe propria, anche F è una classe propria. Nel seguito, useremo iltermine classe funzionale. Precisamente, quando diciamo che F è una classe funzionaledi dominio C, intenderemo dire che esiste una formula Φ(x, y) tale che: (a) per ognix ∈ C esiste uno ed un solo y tale che Φ(x, y); (b) se x /∈ C, F(x) non è definita, e sex ∈ C, allora F(x) è l’unico y tale che Φ(x, y).

Teorema A.19 (Teorema di ricorsione transfinita). Sia G una classe funzionale definitasull’universo degli insiemi. Allora, esiste una ed una sola funzione F di dominio On tale cheper ogni ordinale α, sia:

F(α) = G({(β, F(β)) : β < α}. (11)

Dimostrazione. (A) Dimostriamo che se γ è un ordinale oppure se γ = On, allora esisteal più una funzione Fγ di dominio γ che soddisfa la eq. (11) per ogni α ∈ γ. Ragionoper assurdo. Sia γ un ordinale per cui esistono due funzioni distinte Fγ e Hγ chesoddisfano la eq. (11) per ogni α < γ, e sia α0 il minimo ordinale su cui differiscono.Allora per ogni β < α0 è Fγ(β) = Hγ(β), da cui:

Fγ(α0) = G({(β, Fγ(β)) : β < α0}) = G({(β,Hγ(β)) : β < α0}) = Hγ(α0),

assurdo.(B) Dimostriamo ora che per ogni γ ∈ On esiste una Fγ che soddisfa la eq. (11) per

ogni α 6 γ. Per assurdo, sia δ il più piccolo ordinale per cui Fδ non esiste. Osserviamoche per il punto (A), si ha

se β 6 γ < λ < δ, allora Fγ(β) = Fλ(β).Poniamo allora:

Fδ(β) =

{Fβ(β) se β < δ

G({(γ, Fγ(γ)) : γ < δ} se β = δ

Non è difficile verificare (esercizio) che Fδ soddisfa la eq. (11) per ogni α 6 δ, controquanto assunto in precedenza.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

132 teoria degli insiemi

(C) A questo punto la funzione F desiderata si ottiene ponendo: F(β) = Fβ(β). Ilfatto che F soddisfa i requisiti del Teorema si dimostra esattamente come il puntoprecedente.

In molti casi significativi, la definizione per ricorsione distingue il caso α = 0 dalcaso α successore e dal caso α limite. Ciò corrisponde ad una definizione di G per casi:il caso α = 0 corrisponde al caso in cui l’input per G è ∅. Il caso α successore corri-sponde al caso in cui l’input per G è una funzione definita su un ordinale successore,ed il caso α limite corrisponde al caso in cui l’input per G è una funzione definita suun ordinale limite.

Esempio A.20. Per ogni α ∈ On, definisco la funzione (della sola β) α+ β per indu-zione come segue: α+ 0 = α; α+ (β+ 1) = (α+ β) + 1; α+ γ = sup{α+ δ : δ < γ} seγ è un ordinale limite.

Per ogni α ∈ On, definisco la funzione (della sola β) α · β ponendo: α · 0 = 0;α · (β+ 1) = α ·β+α; α · γ = sup{α · δ : δ < γ} se γ è un ordinale limite.

Infine, per ogni α ∈ On, definisco la funzione (della sola β) αβ ponendo: α0 = 1;αβ+1 = αβ ·α; αγ = sup{αδ : δ < γ} se γ è un ordinale limite.

Esercizio A.21. Dimostrare che la somma e il prodotto di ordinali non sono operazionicommutative. Calcolare poi: 3+ω, ω+ω2, 2ω, ω · (ωω).

Esercizio A.22. Sia (X,6) un insieme parzialmente ordinato completo (cioè se ∅ 6= Y ⊆X, allora Y ha un estremo superiore), e sia F una funzione da X a X tale che per ognix ∈ X sia F(x) > x, e per ogni ∅ 6= Y ⊆ X, F(sup(Y)) = sup{F(y) : y ∈ Y}. Dimostraper ogni a ∈ X esiste un minimo b > a tale che b sia punto fisso di F (cioè F(b) = b).(Consiglio: sia b = sup{an : n ∈ ω}, dove an è definito per ricorsione da a0 = a,an+1 = F(an)).

Esercizio A.23. Dedurre dall’esercizio precedente che per ogni α,β ∈ On, le funzionida On a On α+ x, α · x e αx hanno un minimo punto fisso > β. Calcolare allora iminimi punti fissi > 1 di ω+ x, di ω · x e di ωx.

a.4 equivalenti dell’assioma di scelta

La teoria degli ordinali è utile anche per determinare degli equivalenti dell’Assiomadi Scelta che vengono comunemente usati in matematica.

Definizione A.24. Sia (X,6) un insieme parzialmente ordinato (nel seguito poset).Una catena di (X,6) è un sottoinsieme Y ⊆ X totalmente ordinato da 6. Un elementomassimale è un a ∈ X tale che per ogni b ∈ X, se a 6 b, allora a = b. Un maggiorantedi un insieme Y ⊆ X è uno z ∈ X tale che per ogni y ∈ Y, y 6 z. Un poset si diceinduttivo se ogni sua catena non vuota ha un maggiorante.

Il Lemma di Zorn (ZL) afferma che ogni poset (non vuoto e) induttivo ha almenoun elemento massimale.

Il Principio del Buon Ordinamento o Principio di Zermelo (WO) afferma che ogniinsieme può essere ben ordinato (cioè per ogni insieme X esiste un buon ordnamentosu X).

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

A.4 equivalenti dell’assioma di scelta 133

Teorema A.25. Le seguenti sono equivalenti:

• L’Assioma di Scelta (AC).

• Il principio del buon ordinamento.

• IL Lemma di Zorn.

Dimostrazione. AC⇒WO. Sia X un insieme, che senza perdita di generalità possiamosupporre non vuoto. Per AC, esiste una funzione di scelta f da ℘(X) \ {∅} a X tale cheper ogni ∅ 6= Y ⊆ X, f(Y) ∈ Y. Definiamo una funzione F da On a X per ricorsionecome segue:

• F(0) = f(X). Notiamo che F(0) ∈ X

• Sia α ∈ On, α > 0. Se X = {F(β) : β < α}, allora poniamo F(α) = F(0). Altrimenti,poniamo F(α) = f(X \ {F(β) : β < α}), e notiamo che in questo caso F(α) ∈ X, eF(α) 6= F(β) per ogni β < α.

Se esiste un α tale che X = {F(β) : β < α}, detto α0 il minimo α con questa proiprietà,la restrizione di F ad α0 è una biezione da α0 a X. F e il buon ordine ∈= su α0 induconoallora un buon ordine su X: dato x ∈ X, sia o(x) = min{β < α0 : F(β) = x}. Basta alloraporre: x � y sse o(x) 6 o(y), ossia sse o(x) ∈= o(y).

D’altra parte, un tale α esiste, altrimenti F sarebbe una funzione iniettiva da Onad X, la sua immagine Y sarebbe un insieme, e On = F−1[Y] sarebbe un insieme perl’assioma di rimpiazzamento, assurdo.

WO ⇒ ZL. Sia (X,6) un poset induttivo. Bene ordino X. Poiché ogni insieme beneordinato è isomorfo ad un ordinale, esiste una biezione f fra X ed un ordinale α, percui X = {f(β) : β < α}. Dato x ∈ X, indico con o(x) l’unico ordinale β < α tale chex = f(β). Supponiamo per assurdo che non esista alcun elemento massimale in (X,6).Definiamo una funzione G da On a X per ricorsione come segue:

• G(0) = f(0). Supponiamo di aver definto G(β) per ogni β < γ in modo che seβ < β ′ < γ, allora G(β) < G(β ′). Per definire G(γ), distinguo due casi:

• Se γ = α+ 1, osservo che essendo G(α) un elemento non massimale, esiste unx ∈ X tale che G(α) < x. Sia Y(α) = {o(x) : x ∈ X e G(α) < x}. Sia m(α) =

min(Y(α)).

Pongo allora G(γ) = f(m(α)), osservando che G(α) < G(γ), e la crescenza di Gè conservata.

• Se γ è un ordinale limite, allora per ipotesi induttiva la sequenza (G(β) : β <

γ} è crescente, onde l’insieme C(γ) = {G(β) : β < γ} è una catena priva dimassimo (poiché l’insieme degli ordinali < γ non ha massimo). Quindi C(γ) haun maggiorante, necessariamente maggiore di tutti gli elementi di C(γ). Sia

Z(γ) = {o(x) : x ∈ X e x maggiorante di C(γ)},

e sia m(γ) = min(Z(γ)). Poniamo G(γ) = f(m(γ)). Si vede subito che G(γ) è unmaggiorante di C(γ), e quindi a crescenza di G è conservata.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

134 teoria degli insiemi

Abbiamo così definito una funzione crescente G da On ad una sottoclasse definibileY di X. Essendo X un insieme, Y è un insieme per l’assioma di isolamento. Ma allo-ra G−1 sarebbe una biezione fra Y e On, e On sarebbe un insieme per l’assioma dirimpiazzamento, assurdo.

ZL ⇒ AC. Sia X un insieme di insiemi non vuoti. Sia P la collezione di tutte lefunzioni parziali di scelta, cioè

P = {f : Dom(f) ⊆ X e ∀u ∈ Dom(f)(f(u ∈ u)}.

Si ha: P 6= ∅, poiché la funzione vuota è in P. Ordiniamo parzialmente P tramitel’inclusione. Si vede facilmente che l’unione di una catena in (P,⊆) è un elemento diP, e quindi P è induttivo. Sia f massimale in P. Dico che Dom(f) = X, e quindi f è unafunzione di scelta per X, come volevasi. Supponiamo per assurdo x ∈ X \Dom(f). Siay ∈ x (ricordiamo che x 6= ∅), e sia g = f ∪ {(x, y)}. Si vede subito che g ∈ P, e g ⊃ f,contro la massimalità di f, assurdo.

a.5 i cardinali

I cardinali sono insiemi che servono per misurare la numerosità di un insieme. Il puntodi partenza consiste nel definire la relazione avere la stessa cardinalità

Definizione A.26. Due insiemi X e Y hanno la stessa cardinalità (e si scrive X ∼ Y) sseesiste una biezione da X a Y. Un insieme X ha cardinalità 6 a Y (e si scrive X � Y) sseesiste una funzione iniettiva da X a Y.

Si vede facilmente che ∼ è una relazione di equivalenza (o meglio, lo sarebbe sefosse un insieme e non una classe propria), e che � è riflessiva e transitiva, e quindiun preordine. Il prossimo teorema afferma che ∼ è la relazione di equivalenza indottada �, cioè X ∼ Y sse X � Y e Y � X. Il verso da sinistra a destra è ovvio, mentre l’altroverso è dimostrato nel seguente teorema.

Teorema A.27 (Teorema di Cantor-Bernstein). X � Y e Y � X, allora X ∼ Y.

Dimostrazione. Posso assumere senza perdita di generalità

X ⊆ Y ed esiste una funzione iniettiva da Y a X. (12)

Infatti se h è iniettiva da X a Y e f è iniettiva da Y a X, è X ∼ Range(h), e Range(h) ⊆Y. Inoltre esiste una funzione iniettiva da Y a Range(h), e precisamente la funzionecomposta h ◦ f. Posso dunque sostituire X con Range(h) (dato che i due insiemi sonoin biezione), e f con h ◦ f, ottenendo la eq. (12), che quindi nel seguito supporrò esseresoddisfatta da X, Y e f. Definisco allora:

Y0 = Y, X0 = X, Yn+1 = f[Xn], Xn+1 = f[Xn].

Definiamo ora per ogni y ∈ Y:

g(y) =

{f(y) se ∃n(y ∈ Yn \Xn)

y altrimenti

Dimostriamo che g è la biezione desiderata da Y a X.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

A.5 i cardinali 135

• g va da Y a X. Infatti, se ∃n(y ∈ Yn \ Xn), allora g(y) = f(y) ∈ X, poiché f vada Y a X. Altrimenti, se per ogni n y /∈ Yn \ Xn, allora y /∈ Y0 \ X0, e quindiy ∈ X0 = X, e g(y) = y ∈ X.

• g è iniettiva. Siano infatti y 6= z ∈ Y, e dimostriamo che g(y) 6= g(z). La cosa èovvia se o g(y) = f(y) e g(z) = f(z) (ricordiamo che f è iniettiva), oppure g(y) =y e g(z) = z. Resta da considerare il caso in cui ad esempio g(y) = f(y) 6= y eg(z) = z 6= f(z). In questo caso, esiste un n tale che y ∈ Yn \ Xn, mentre inveceper ogni n, z /∈ (Yn \ Xn). Ora essendo f iniettiva, g(y) = f(y) ∈ f[Yn] \ f[Xn] =Yn+1 \Xn+1, mentre g(z) = z /∈ Yn+1 \Xn+1. Quindi g(y) 6= g(z).

• g è suriettiva. Sia x ∈ X arbitrario, e dimostriamo che x ∈ Range(g). Se perogni n, x /∈ (Yn \ Xn), allora g(x) = x, e l’asserto è ovvio. Altrimenti, sia n taleche x ∈ Yn \ Xn. Ora x ∈ X = X0, onde n > 0, diciamo n = m + 1. Allora,x ∈ f[Ym] \ f[Xm], e quindi (sempre per l’iniettività di f) esiste z ∈ Ym \ Xm taleche x = f(z). Poiché z ∈ Ym \Xm, g(z) = f(z) = x, e x ∈ Range(g).

Sembra naturale l’esigenza di introdurre, per ogni insieme X un oggetto matematicoche contenga come unica informazione quella relativa alla cardinalità di X, e che quindiprescinda dalle altre peculiarità di X. Questo comporta che se X ∼ Y, allora a X e a Ydebba essere associato lo stesso oggetto.

La prima idea che viene in mente è quella di associare ad ogni insieme X la colle-zione di tutti gli insiemi ad esso biettivi. L’inconveniente di questo approccio è che inquesto modo le classi di equivalenza sarebbero classi proprie.

Un’idea migliore consiste allora nel definire insiemi che costituiscano rappresentanticanonici di ciascuna classe di equivalenza rispetto a ∼. Nel seguito assumeremo l’As-sioma di Scelta. Con tale assunzione, ogni insieme è ben ordinabile, e quindi biettivoad un ordinale. Pertanto è lecita la seguente definizione:

Definizione A.28. La La cardinalità di un insieme X (denotata con Card(X) o sempli-cemente |X|) è il minimo ordinale biettivo ad X.

Esercizio A.29. Dimostra che X ∼ Y sse Card(X) = Card(Y), e che X � Y sse Card(X) 6Card(Y). [Per quanto riguarda il secondo enunciato, l’implicazione da destra a sinitraè facile, e per quanto riguarda l’altra implicazione, si vede subito che se X � Y, vi èuna funzione iniettiva da X a Card(Y), e quindi vi è una funzione iniettiva da Card(X)a Card(Y). Ora se fosse Card(Y) < Card(X), per il Teorema di Cantor Bernstein, . . .

Esercizio A.30. Dimostra che Card(Card(X)) = Card(X).

Definizione A.31. Un cardinale è un ordinale che non è biettivo a nessun ordinaleminore di lui.

Esercizio A.32. Dimostra che un ordinale α è un cardinale sse esiste un insieme X taleche α = Card(X).

Esercizio A.33. Dimostra che ogni ordinale finito (cioè ogni ordinale in ω) è uncardinale. Dimostra poi che ω è un cardinale, anzi che è il minimo cardinale infinito.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

136 teoria degli insiemi

Esercizio A.34. Dimostra che nessuno degli ordinali ω+ 1, ω+ω, ω2 è un cardinale.

Esercizio A.35. Dimostra che un cardinale infinito è necessariamente un ordinalelimite.

Il prossimo teorema, pur avendo una dimostrazione molto semplice, costituisce unadelle più grandi scoperte nella teoria dei cardinali, in quanto dimostra l’esistenza didiversi tipi di infinito.

Teorema A.36 (Teorema di Cantor). Per ogni insieme X, Card(X) < Card(℘(X)).

Dimostrazione. Una funzione iniettiva da X a ℘(X) è la funzione f definita, per ognix ∈ X, da f(x) = {x}. Quindi X � ℘(X), e per un esercizio precedente, Card(X) 6Card(℘(X)). Se fosse Card(X) = Card(℘(X)), esisterebbe una biezione F da X a ℘(X).Posto allora Y = {x ∈ X : x /∈ F(x)}, essendo F suriettiva, esisterebbe y ∈ X tale cheF(y) = Y. Ma allora dalla definizione di Y avremmo:

y ∈ Y sse y /∈ F(y) sse y /∈ Y,

assurdo.

Teorema A.37. (A) Per ogni cardinale ve n’è uno più grande.(B) L’unione di un insieme di cardinali è un cardinale.

Dimostrazione. (A) Abbiamo visto nel teorema precedente che Card(℘(α)) > Card(α).(B) Sia X un insieme di cardinali, sia α =

⋃X. Dobbiamo dimostrare che se β < α,

allora β 6∼ α. Ora, per definizione di α =⋃X, se β ∈ α, esiste γ ∈ X tale che β ∈ γ. Ma

essendo γ un cardinale, è β ≺ γ � ⋃X = α. Quindi β 6∼ α, e α è un cardinale.

Definizione A.38. La classe dei cardinali viene denotata con Card. Definiamo perricorsione la funzione ℵ da On a Card come segue (scriviamo ℵα invece di ℵ(α)):

• ℵ0 = ω.

• ℵα+1 = min{β ∈ Card : ℵα < β} (tale β esiste per la parte (A) del teoremaprecedente).

• Se γ è un ordinale limite, allora ℵγ = sup{ℵβ : β < γ} (per la parte (B) delteorema precedente, ℵγ è un cardinale).

Esercizio A.39. Dimostrare che per ogni cardinale infinito α esiste un (necessariamenteunico) ordinale β tale che ℵβ = α. (Consiglio: sia per assurdo α0 il minimo cardinaleinfinito per cui ciò non si verifica . . . ).

Esercizio A.40. Dimostrare che per ogni ordinale α è α 6 ℵα, e osserva che per ogniinsieme X di ordinali, ℵsup(X) = sup{ℵβ : β ∈ X}. Concludi che esiste un minimopunto fisso della funzione ℵ, cioè un minimo α tale che α = ℵα.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

A.6 operazioni su cardinali 137

a.6 operazioni su cardinali

Anche in questo paragrafo assumeremo l’Assioma di Scelta.

Definizione A.41. Siano α,β cardinali. Definiamo:

• α + β = Card((α× {0} ∪ β× {1}) (quindi α + β è la cardinalità dell’unione di-sgiunta di α e β).

• α ·β = Card(α×β).

• αβ = Card({f : f funzione da β ad α}).

Esercizio A.42. Si dimostri che l’insieme R dei reali è biettivo a 2ℵ0 .

Esercizio A.43. Se α,β > 2, allora α+ β 6 α · β. (Consiglio: se α e β sono entrambifiniti, l’asserto è chiaro. Supponiamo ad esempio α infinito. Allora, posto f(x, 0) =

(x+ 1, 0), e f(x, 1) = (0, x), si ha che f è iniettiva da (α× {0}∪β× {1}) a α×β.

Esercizio A.44. Si dimostri che la somma e il prodotto di cardinali sono operazionicommutative ed associative, e che vale la proprietà distributiva. (Per l’ultimo enun-ciato, si consideri la funzione f da α× ((β× {0}) ∪ (γ× {1})) definita da f((x, (y, 0)) =((x, y), 0), e f((x, (y, 1)) = ((x, y), 1).

Esercizio A.45. Dimostrare che se α,β e γ sono cardinali, allora (α ·β)γ = (αγ) · (βγ),che αβ+γ = αβ ·αγ, e che αβ·γ = αβ

γ.

Esercizio A.46. Dimostrare che le funzioni α+β, α ·β e αβ sono debolmente crescentisia in α che in β.

Il calcolo della potenza di un cardinale è di solito molto difficile, al punto che incerti casi non è possibile determinare tale potenza usando solo gli assiomi di ZFC. Adesempio, il Teorema di Cantor ci dice che ℵ

ℵ00 > 2ℵ0 > ℵ0, ma non ci consente di dire

se 2ℵ0 è ℵ1, oppure ℵ2, o ℵ712. Cantor formulò la seguente congettura:L’ipotesi del continuo (Cantor). 2ℵ0 = ℵ1.Si noti che se l’ipotesi fosse vera, allora ogni sottoinsieme infinito di R sarebbe o

numerabile o biettivo a R. L’ipotesi è stata generalizzata come segue:ipotesi generalizzata del continuo. Per ogni ordinale α, 2ℵα = ℵα+1.Gödel dimostrò che se ZFC è coerente, allora l’ipotesi generalizzata del continuo

non è in contraddizione con gli assiomi di ZFC. Successivamente, Cohen dimostròche l’ipotesi del continuo non è neppure dimostrabile dagli assiomi di ZFC. Quindi èpossibile assumerla o assumere la sua negazione.

L’aritmetica della somma e del prodotto di cardinali è invece molto più semplice,come vedremo fra poco.

a.7 la biezione canonica da On2 a On

L’obiettivo di questo paragrafo è quello di dimostrare che se α è un cardinale infinito,allora α2 = α. Come vedremo, questo risultato determina univocamente la sommaed il prodotto di cardinali infiniti. Per stabilire questo risultato, introdurremo unabiezione canonica Γ da On2 a On.

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

138 teoria degli insiemi

Definizione A.47. Siano α,β, γ, δ ordinali. Definiamo (α,β) � (γ, δ) sse si verificaalmeno una delle seguenti condizioni:

(a) max{α,β} < max{γ, δ}.

(b) max{α,β} = max{γ, δ} e α < γ.

(c) max{α,β} = max{γ, δ}, α = γ e β 6 δ.

Lemma A.48. La relazione � è un buon ordine su On2 tale che per ogni (α,β) ∈ On2, laclasse W(α,β) = {(γ, δ) : (γ, δ) ≺ (α,β)} è un insieme.

Dimostrazione. Lasciamo al lettore la verifica del fatto che � è riflessiva, transitiva,antisimmetrica e totale. Sia ∅ 6= X ⊆ On2. Sia Y = {min{α,β} : (α,β) ∈ X}. Sia α0 =

min(Y), e sia Z = {(α,β) ∈ X : min{α,β} = α0}. Chiaramente, ogni elemento di X haun minorante in Z, e quindi per dimostrare che X ha minimo, basta dimostrare che Zha minimo, in quanto min(Z) = min(X).

Sia U = {β ∈ On : ∃γ ∈ On((β, γ) ∈ Z)}, e sia β0 = min(U). Sia poi W = {(β, γ) ∈Z : β = β0}. Ovviamente, ogni elemento di Z è minorato da un elemento di W, per cuibasterà dimostrare che W ha minimo.

Sia ora V = {γ ∈ On : (β0, γ) ∈W}, e sia γ0 = min(V). Allora, (β0, γ0) = min(W) =

min(Z) = min(X).Dimostriamo ora il secondo asserto del Lemma, cioè che per ogni (α,β) ∈ On2, la

classe W(α,β) è un insieme. Sia λ = max{α,β}. Se max{γ, δ} > λ, allora (γ, δ) 6� (α,β).Quindi se (γ, δ) ∈ W(α,β), allora max{γ, δ} 6 λ. Ma questo ci dice che W(α,β) ⊆(λ+ 1)2, e quindi per l’assioma di isolamento, W(α,β) è un insieme.

Per il Lemma precedente, per ogni (α,β) ∈ On2 esiste un unico ordinale γ tale che(γ,∈=) sia isomorfo a (W(α,β),�). Poniamo allora:

Γ(α,β) = unico γ ∈ On : (γ,∈=) isomorfo a (W(α,β),�).

Nel seguito sottointenderemo la relazione d’ordine, e diremo: W(α,β) è isomorfo a γinvece di: (W(α,β),�) è isomorfo a (γ,

∈=).

Lemma A.49. Γ è una biezione crescemnte (quindi un isomorfismo) da On2 a On

Dimostrazione. • Γ è crescente: Supponiamo (α,β) ≺ (γ, δ). Sia Γ(α,β) = σ, Γ(γ, δ) =τ. Allora W(α,β) è in segmento iniziale di W(γ, δ), e l’unico isomorfismo daW(γ, δ) a τ manda il segmento iniziale W(α,β) di W(γ, δ) in un segmento ini-ziale di τ. Poiché l’immagine di W(α,β) in tale isomorfismo è δ, si ha che δ èun segmento iniziale di τ, ossia δ ∈ τ. Questo dimostra che Γ è crescente, e chequindi è iniettiva.

• Γ è suriettiva. Dimostriamo cioè che Range(Γ) = On. Ragionaimo per assurdo.Sia δ0 il minimo ordinale non in Range(Γ). Sia X = {(α,β) : Γ(α,β) < δ0}. Sivede subito che X è un segmento iniziale di On2: se (α,β) � (γ, λ) ∈ X, alloraΓ(α,β) 6 Γ(γ, λ) ∈ δ0, e (α,β) ∈ X. Per la minimalità di δ0, per ogni σ ∈ δ0 esiste(α,β) ∈ On2 tale che Γ(α,β) = σ. Quindi Γ è crescente e suriettiva (quindi un

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

A.7 la biezione canonica da On2 a On 139

isomorfismo) da X a δ0. Ovviamente X non può essere tutto On2, essendo On2

una classe propria, quindi esiste un minimo (α0, β0) ∈ On2 \ X. Essendo X unsegmento iniziale, ne segue che X =W(α0, β0), e quindi W(α0, β0) è isomorfo aδ0. Ma allora per definizione di Γ , Γ(α0, β0) = δ0, assurdo.

Teorema A.50. Per ogni cardinale infinito ℵα, Γ mappa ℵα×ℵα su ℵα, e quindi ℵα ·ℵα =

ℵα.

Dimostrazione. Induzione su α. Se α = 0, essendo W(γ, δ) ⊆ (max{γ, δ}+ 1)2, se γ, δ ∈ℵ0, allora W(γ, δ) è finito, e quindi Γ(γ, δ) ∈ ℵ0. Pertanto, Γ [ℵ0 ×ℵ0] ⊆ ℵ0. EssendoΓ una biezione crescente da On2 a On, Γ [ℵ0 ×ℵ0] = ℵ0.

Sia ora α ∈ On, α > 0. Supponiamo l’asserto vero per ogni β < α, e dimostriamoloper α. Ancora una volta, è evidente che per motivi di cardinalità e per il fatto che Γ èun isomorfismo, è Γ [ℵα×ℵα] ⊇ ℵα, per cui basta dimostrare l’inclusione opposta. Se(γ, δ) ∈ ℵα×ℵα, allora posto λ = max{γ, δ,ℵ0}+ 1, è λ < ℵα, e quindi Card(λ) < ℵα,poiché un ordinale minore di un cardinale ha cardinalità minore. Inoltre W(α, δ) ⊆ λ2.Per ipotesi induttiva, Card(λ2) = (Card(λ))2 = Card(λ) < ℵα, e quindi Γ(γ, δ), ossial’unico ordinale isomorfo a W(γ, δ), è minore di ℵα. In altre parole, Γ mappa ℵα×ℵαin ℵα, e l’asserto è dimostrato.

Corollario A.51. Se α e β sono cardinali > 1 ed almeno uno di essi è infinito, allora

α+β = α ·β = max{α,β}.

Dimostrazione. Dimostriamo prima che α+ β 6 α · β, trovando una funzione iniettivada α × {0} ∪ β × {1} a α × β. Senza perdita di generalità supponiamo α infinito. Lafunzione richiesta è allora definita da f(x, 0) = (x+ 1, 0), e f(x, 1) = (0, x). A questopunto, l’asserto è immediato:

max{α,β} 6 α+β 6 α ·β 6 (max{α,β})2 = max{α,β}.

Il caso in cui almeno uno fra α e β (ad es., β) sia zero è semplice: α+ 0 = α, α · 0 = 0.Infine se α e β siano entrambi finiti, la loro somma ed il loro prodotto non sono altroche l’usuale somma e l’usuale prodotto di naturali. In conclusione, la somma ed ilprodotto di cardinali sono facilmente calcolabili, e anzi il caso infinito è ancora piùsemplice del caso finito.

Definizione A.52. Sia (xi : i ∈ I) una famiglia di insiemi. Con∑i∈I xi intendiamo⋃

i∈I(xi × {i}).

Lemma A.53. Assumiamo l’Assioma di Scelta. Allora:

(a) Card(∑i∈I xi) = Card(

∑i∈ICard(xi)).

(b) Card(⋃i∈I xi) 6 Card(

∑i∈I xi).

(c) Card(∑i∈I xi) 6 Card((

⋃i∈I xi)× I).

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

140 teoria degli insiemi

Dimostrazione. (a). Per ogni i ∈ I scelgo una biezione fi da xi a Card(xi). Allora, lafunzione F definita da F(x, i) = (fi(x), i) è una biezione da

∑i∈I xi a

∑i∈ICard(xi).

(b). Fisso un buon ordinamento � di I, e definisco per ogni x ∈ ⋃i∈I xi, m(x) =

min{i ∈ I : x ∈ xi} (ove min è inteso rispetto a �). Pongo poi, per ogni x ∈ ⋃i∈I xi,F(x) = (x,m(x)). Si vede subito che F è una funzione iniettiva da

⋃i∈I xi a

∑i∈I xi.

(c) Ovvio, essendo∑i∈I xi ⊆ (

⋃i∈I xi)× I.

Corollario A.54. Sia X un insieme infinito, e sia X? l’insieme di tutte le sequenze finite dielementi di X. Allora, Card(X?) = Card(X).

Dimostrazione. X? =⋃n∈ω X

n, onde per il Lemma precedente,

Card(X?) 6 Card(∑n∈ω

Card(Xn)) = Card(∑n∈ω

Card(X))

6 Card(Card(X)×ω) = Card(X).

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

I N D I C E A N A L I T I C O

( )=, 61

( )L, 61

( )T , 60

( )↔, 61

Card, 136

∼=, 104

Free(X), 58

LTΓ (Var), 59

I(B), 52

U(B), 55

|=, 72

|=BA, 44

�, 104

ϕ ≡ ψ, 11

k-colorazione, 19

s ≈ t, 44

tA, 44

Form∀, 67

alfabeto, 5, 6

algebra, 39

assolutamente libera, 43

liberamente generata, 58

algebra di Boole, 41

atomica, 63

archi, 19

arietà, 39, 66

assiomacoppia, 120

estensionalità, 120

infinito, 122

insieme vuoto, 120

isolamento, 121

potenza, 121

regolarità, 124

scelta, 124

unione, 121

Associatività, 38

Assorbimento, 38

atomiche, 5

atomo, 63

buon ordine, 126

cardinale, 135

cardinalità, 134, 135

catena, vedi ordine totale, 132

coerente, 26

Commutatività, 38

complementato, 41

complemento, 41

complessità, 16

congiunzione, 8

congruenza, 46

conseguenza logica, 74

contraddizione, 14

De Morgan, 42

deduzione naturale, 20

derivabile, 25

disgiunzione, 8

distributivo, 40

dominio, 71

doppia negazione, 42

elementarmente equivalenti, 104

elemento massimale, 132

epimorfismo, 45

canonico, 46

equazione, 44

estensione elementare, 104

filtro, 49, 104

generato, 52

massimale, 55

principale, 52

ultrafiltro, 55

filtro completo, 55

filtro primo, 55

filtro proprio, 49

141

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

142 INDICE ANALITICO

FIP, 53

forma normale, 13, 77

congiuntiva, 13

disgiuntiva, 13

prenessa, 77

formula del primo ordineaperta, 68

chiusa, 68

formula atomica, 67

formule ben formate, 67

logicamente valida, 74

soddisfacibile, 74

valida, 74

valida sotto l’interpretazione v, 74

formule proposizionali, 7

formule ben formate, 7

funzione caratteristica, 57

funzioni definibili, vedi termini

generatori liberi, vedi liberamentegenerata

grafo semplice, 19

ideale, 52

ideale proprio, 52

Idempotenza, 38

immersione canonica, 107

immersione elementare, 104

implicazione, 8

incoerente, 26

induttivo, 132

infimo, 37

insieme parzialmente ordinato, vedirelazione d’ordine

insoddifacibile, 75

insoddisfacibile, 14

interpretazione, 44, 71

ipotesi generalizzata del continuo, 137

isomorfismo, 45

ker, 48

L’ipotesi del continuo, 137

leggibilità unica, 9

Lemma di Zorn, 132

limitato, 38

linguaggio del primo ordine, 66

linguaggio formale, 5

linguaggio oggetto, 7

logicamente equivalenti, 11, 74

maggiorante, 37

massimale, 37

massimalmente coerente, 27

massimo, 37

meta-variabili, 7

minimale, 37

minimo, 37

minorante, 37

modello, 14, 74

modus ponens, 22

monomorfismo, 45

Monotonia, 38

negazione, 8

nodi, 19

nucleo, 48

omomorfismo, 45

ordinale, 128

ordinestretto, 36

totale, 35

poset, 132

preordine, 35

Principio del Buon Ordinamento, 132

prodotto diretto, 104

proiezione canonica, 104

proposizione, 5

proposizioni atomiche, vedi variabiliproposizionali

proprietà delle intersezioni finite, 53

quantificatore esistenziale, 65

quantificatore universale, 65

relazione, 35

relazione n-ariaanti-simmetrica, 35

riflessiva, 35

transitiva, 35

relazione d’ordine, 35

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

INDICE ANALITICO 143

reticolare, 38

reticolo, 39

scaricata, 21

segmento iniziale, 126

segnatura, 39

Semantica del prim’ordine, 72

soddisfacibile, 14, 16

finitamente, 17

soddisfatta, 14

sostituibile, 70

sostituzione, 69

sottalgebra, 53

generata, 54

sottostruttura elementare, 104

stringhe, 5

struttura, 71

struttura quoziente, 46

supporto, vedi dominiosupremo, 37

tautologia, 14

tavola di verità, 8

teorema, 25

Teorema di adeguatezza, 26

Teorema di Completezza per la logicaproposizionale, 28

Teorema di deduzione, versionesintattica, 26

termini, 43, 66

totalmente ordinato, vedi ordine totaletransitivo, 128

ultrafiltro, 104

ultrapotenza, 105

ultraprodotto, 105

un successore, 130

valida, 44

valutazione, 9

variabilevincolate, 68

variabililibere, 68

variabili individuali, 43

variabili proposizionali, 6

vero-funzionalità, 9

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

R I F E R I M E N T I I N I TA L I A N O

[1] Francesco Berto. Logica da zero a Gödel. Laterza, 2008.

[2] Lorenzo Tortora de Falco and Vito Michele Abrusci. Logica: Dimostrazioni e modellial primo ordine. Springer, 2014.

[3] Edward J. Lemmon. Elementi di logica. Con gli esercizi risolti. Laterza, 2008.

[4] Elliott Mendelson. Introduzione alla logica matematica. Bollati Boringhieri, 1977.

[5] Daniele Mundici. Logica: metodo breve, volume 50. Springer Science & BusinessMedia, 2011.

[6] Piergiorgio Odifreddi. Il diavolo in cattedra. La logica da Aristotele a Gödel. Einaudi,2015.

[7] Dario Palladino. Corso di logica. Introduzione al calcolo dei predicati. Carocci, 2010.

145

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]

R I F E R I M E N T I D I B A S E I N I N G L E S E

[8] Steven Givant and Paul Halmos. Introduction to Boolean algebras. Springer Science& Business Media, 2008.

[9] Paul Halmos and Steven Givant. Logic as algebra. Cambridge University Press,1998.

[10] Paul R Halmos. Algebraic logic. Courier Dover Publications, 2016.

[11] James Donald Monk. Mathematical logic, volume 37. Springer Science & BusinessMedia, 2012.

[12] Dirk Van Dalen. Logic and structure. Springer, 2004.

147

[ 22 ottobre 2018 at 12:45 – Logica I version 4.0 – Preliminary version]