(eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

235
Logica Matematica Corso A Corso di Laurea in Informatica Anno 2002-03

Transcript of (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 1/235

Logica Matematica

Corso A

Corso di Laurea in Informatica

Anno 2002-03

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 2/235

Indice

Indice i

1 Introduzione 1

2 Dal linguaggio naturale alla logica 32.1 Esercizi 7

3 Logica proposizionale 103.1 Connettivi 103.2 Sintassi 10

3.2.1 Il linguaggio proposizionale 113.2.2 Analisi sintattica 133.2.3 Esercizi 20

3.3 Semantica 22

3.3.1 Tavole di verita 233.3.2 Esercizi 263.3.3 Validita e conseguenza 263.3.4 Esercizi 31

3.4 Sullimplicazione 33

4 Insiemi e algebre di Boole 364.1 Variabili 364.2 Algebra degli insiemi 374.3 Algebre di Boole 47

4.3.1 Esercizi 494.4 Algebra delle proposizioni 504.5 Rapporti tra proposizioni e insiemi 56

i

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 3/235

5 Relazioni 605.1 Prodotto cartesiano 605.2 Relazioni 61

5.2.1 Esercizi 645.3 Relazioni dordine 655.4 Relazioni di equivalenza 695.5 Funzioni 71

6 Forme normali 756.1 Definibilita dei connettivi 75

6.1.1 Esercizi 776.2 Forme normali disgiuntive 776.3 Forme normali congiuntive 796.4 Esercizi 83

7 Dimostrazioni 867.1 Dimostrazioni dirette 867.2 Distinzione di casi 907.3 Sillogismo disgiuntivo 937.4 Contrapposizione e Modus tollens 95

7.5 Dimostrazioni per assurdo 967.6 Dimostrazioni in avanti e allindietro 102

8 Alberi di refutazione 1048.1 Il metodo 1048.2 Correttezza e completezza 1108.3 Forme normali 1148.4 Esercizi 115

9 Variabili e quantificatori 117

10 Linguaggi predicativi 12210.1 Alfabeto 12210.2 Termini e formule 12310.3 Variabili libere e vincolate 13110.4 Interpretazioni 13410.5 Sui quantificatori ristretti 13710.6 Esercizi 138

ii

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 4/235

11 Leggi logiche 14011.1 Esercizi 147

12 Quantificatori e dimostrazioni 148

13 Sillogismi 15713.1 Sillogismi categorici 15813.2 Diagrammi di Venn 167

14 Alberi di refutazione 172

14.1 Regole per i quantificatori 17214.1.1 Esercizi 178

14.3 Applicazione ai sillogismi 178

15 Il principio di induzione 18315.1 I numeri naturali 18315.2 Il principio di induzione 18615.3 Linduzione empirica 19215.4 Il ragionamento induttivo 19515.5 Esercizi 198

15.6 Definizioni ricorsive 20115.6.1 Esercizi 207

15.7 Il principio del minimo 20915.8 Varianti dellinduzione 21615.9 Errori e paradossi 22115.10 Definizioni induttive 222

15.10.1 Esercizi 230

iii

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 5/235

1 Introduzione

Lo scopo di questo corso e quello di rendere familiari con le forme di ra-gionamento tipiche degli argomenti matematici; in informatica in particolareinteressano soprattutto quelli che mirano a trovare la soluzione di un prob-lema, a dimostrare che e una soluzione e a presentarla come un algoritmo.

Un algoritmo e un insieme articolato e connesso di istruzioni per risolvereun problema; gli algoritmi non sono scritti in un linguaggio di program-mazione, ma inizialmente nel linguaggio matematico o addirittura in quellonaturale, e in questo devono essere formulati e riconosciuti tali, prima che laloro descrizione guidi alla traduzione nei relativi programmi.

La maggior parte degli algoritmi che sostengono le prestazioni dei cal-coltori non sono numerici ma riguardano manipolazioni di simboli (ad es-empio l’ordinamento di una lista, o la fusione di due liste in una), quindila prima consapevolezza - e competenza - da acquisire e che il linguaggiomatematico non e solo quello dei numeri, ma abbraccia qualsiasi argomentoche si possa riferire ad elementi strutturati.

I ragionamenti relativi devono avere ed hanno lo stesso rigore di quellinumerici, e si svolgono con l’ausilio di un simbolismo appropriato, che equello della logica matematica (= logica formale moderna).

In vista della precisione richiesta, che non ammette licenze ne eccezioni,e bene realizzare che ogni ragionamento si puo rappresentare in forme stan-

dardizzate di passaggi, e imparare a farlo, usando regole logiche e la proprietafondamentale dei numeri naturali che e il principio di induzione.

Il corso e l’equivalente di quelli che nelle universita americane si chiamanodi Introduction to Proofs , che contengono in genere anche elementi di matem-atica discreta (strutture finite, combinatoria). Tali corsi sono concepiti comeponte tra la scuola secondaria e il college, rivolti a studenti che hanno ap-preso la matematica come un insieme di ricette e di calcoli, senza aver maiimparato a seguire e tanto meno a fare una dimostrazione.

Nella scuola italiana qualche esperienza con le dimostrazioni si acqui-sisce con la geometria, ma limitatamente alle sue costruzioni e senza ap-

profondire le ragioni di tale forma di ragionamento tipicamente matematica.Ne tale problema sara indagato in questo corso introduttivo: lo studio delledimostrazioni e l’obiettivo della familiarita con esse sono perseguiti non invista di spiegare il senso dell’impostazione deduttiva delle teorie, ma solo perabituare a vedere le connessioni tra i vari risultati, la loro mutua dipendenzae derivabilita, il che aiuta anche a ricordarli meglio.

1

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 6/235

Scrivere dimostrazioni presuppone comunque la comprensione degli argo-

menti trattati, e costituisce quindi un’occasione di ripasso di nozioni elemen-tari di aritmetica che sono alla base del pensiero informatico.

Nel testo, il segno !!! a margine segnala che si deve prestare particolareattenzione. !!!

I riferimenti in nota del tipo “Horstmann, p. 186” rimandano al testo delcorso di Programmazione C. S. Horstmann, Java 2 .

Le parti scritte in corpo minore sono letture con informazioni integrative.

Il segno 2 e usato per indicare la fine di una dimostrazione, al posto deltradizionale QED.

2

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 7/235

2 Dal linguaggio naturale alla logica

La prima competenza che bisogna acquisire e quella della formalizzazione,ovvero della traduzione di frasi della lingua naturale, o del gergo matematico- misto di formule e di parole - in espressioni di un linguaggio semplificato edalla sintassi precisa.

La semplificazione e guidata dalla volonta di restringersi ad espressionimatematiche o comunque di carattere logico. Non si considerano quindi frasicon indicatori di tempo e luogo (tempi dei verbi, avverbi di tempo, luogo emodo). Non si considerano espressioni di comando o di interrogazione, masolo frasi dichiarative. Ci si riduce, come primo livello di semplificazione, a

frasi elementari che esprimono fatti, e a loro combinazioni mediante particellelogiche.Le particelle logiche della lingua italiana sono parole come “e”, “oppure”,

“se” e altre, che collegano frasi di senso compiuto. Nella lingua italianaqueste parole da una parte sono polivalenti e ambigue, hanno diversi sensi- in generale discriminati dal contesto - e dall’altra si presentano in tanteversioni equivalenti.

La congiunzione “e” puo ad esempio essere resa da una virgola, da “eanche”, da “ma” e altre espressioni. Il senso avversativo di “ma” e uno degliaspetti che vengono lasciati cadere nel passaggio ad un linguaggio formaliz-zato, in quanto esprime un’aspettativa soggettiva. La congiunzione e resa

anche da costrutti piu complicati, come “sia . . . sia”: “vado sia che piova siache faccia bel tempo” significa “se fa bel tempo vado, e se piove vado”, magaricon l’aggiunta di un “ugualmente” che di nuovo esprime una determinazionesoggettiva.

La stessa congiunzione talvolta esprime qualcosa di piu o di diverso dallasemplice affermazione di entrambe le proposizioni congiunte; talvolta puosignificare “e poi”, come in “si sposarono e vissero felici”; talvolta significa“e quindi, come in ”si immerge una cartina di tornasole, e diventa rossa” (sequesta frase e intesa non come una descrizione di avvenimenti, nel qual caso“e” significa “e dopo”, ma come come una caratterizzazione di particolari

sostanze).La disgiunzione, “o” o “oppure”, talvolta ha un senso debole (“A o B

o tutt’e due”), talvolta un senso esclusivo (“A o B ma non tutt’e due”).L’affermazione “piove o c’e il sole” e compatibile con la situazione in cuipiove da una nuvola anche se c’e il sole. Il latino aveva due parole diverse“vel” e “aut”, ma la distinzione non e rimasta nelle lingue moderne. La

3

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 8/235

differenza non sempre e espressa dalla semplice ripetizione di “o” (“o A o

B”) ma piu spesso dall’enfasi della pronuncia; il tono e il contesto devonoessere tenuti presenti per capire il significato inteso. C’e voluto del tempoper tornare a riconoscere due particelle diverse:

Alcuni dicono che per la verita di una disgiunzione si richiedesempre che uno dei disgiunti sia falso, perche se entrambi fosseroveri non sarebbe una vera disgiunzione, come dice Boezio. Questopero non mi piace. In realta io dico che se entrambe le parti diuna disgiunzione sono vere, l’intera disgiunzione e vera (WalterBurleigh, De Puritate, XCI, 3-19, XIV sec .)

La disgiunzione in italiano talvolta e resa con “ovvero”, ma questa parolasignifica anche “cioe”, “vale a dire”.

Qualche volta la stessa frase puo essere espressa sia con la “e” che conla “o”. Si puo dire equivalentemente sia “Tutti, bianchi o neri, hannoun’anima”, sia “Tutti, bianchi e neri hanno un’anaima”. L’affermazione“mele e pere sono frutti” vuole anche dire che “se si prende una mela ouna pera, si ha un frutto”.

La negazione di una frase si realizza in diversi modi, di solito con laparticella “non”, inserita pero (o soppressa) in vari modi nella frase da negare,con diversi costrutti che coinvolgono altre parole, in particolare i verbi. Da

“piove” a “non piove”, o “non e vero che piove”; da “qualche volta piove” a“non piove mai”; da “piove sempre” a “qualche volta non piove”; da “nonama nessuno” a “ama qualcuno”, da “e bello” a “e brutto”, e cosı via. Pernegare “non piove” non si dice “non non piove” ma “piove” o “non e veroche non piove”.

La parola “se” e un’altra particella dai molteplici sensi, e dalle molteplicirese, ad esempio con “B, se A”, “A solo se B”, “se A allora B”, “A implica !!!

B, “A, quindi B” - ma “quindi” ha anche un significato temporale, come“poi”.

Quando si afferma “se A allora B”, A e detta condizione sufficiente per

B, e B condizione necessaria per A. “A e condizione sufficiente per B” e unaltro modo di esprimere “se A allora B”.

Al “se . . . allora” sara dedicata una discussione speciale per la sua im-portanza rispetto all’inferenza logica.

In considerazione di queste ambiguita e molteplicita di espressione, unprimo passo e quello di introdurre una sola versione fissa delle particelle

4

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 9/235

logiche, sia come simboli che come significati; fatto questo tuttavia, la com-

petenza piu importante consiste poi nel saper tradurre le frasi della linguanaturale, disambiguandole quando necessario e possibile, e trovando la ver-sione formale corrispondente.

Tale standardizzazione e necessaria per poter comunicare con le macchine;ma prima di parlare alle macchine occorre parlare ad altre persone e a sestessi per costruire gli algoritmi. Nell’apprendere a formalizzare si deve ancheraffinare la propria logica naturale.

Tuttavia non esiste un elenco completo di quelle che nei linguaggi nat-urali si riconoscono come particelle logiche. Non abbiamo menzionato adesempio “ne . . . ne”, o “a meno che”1. Qualche volta, parole che non sem-

brano particelle logiche possono essere usate in questo modo, e lo si riconoscenella formalizzazione: “quando” e di solito una determinazione temporale,ma “quando piove, prendo l’ombrello” puo essere reso da “se piove, prendol’ombrello”.

Nell’ottica della formalizzazione, chiedere cosa significa “quando piove,prendo l’ombrello” non e altro che la richiesta di tradurre la frase in un’altrain cui compaia una particella logica (una di quelle riconosciute tali) e scom-paia “quando”; cosı si vede subito a quale delle particelle note la parola eequivalente; ma non sempre e evidente una possibile riduzione di una frasead un’altra, ne sempre una sola.

Esistono peraltro parole di difficile catalogazione, che sembrano particellelogiche in quanto legano due frasi, ma hanno sfumature che si perdono nellaformalizzazione: ad esempio “siccome piove, prendo l’ombrello”, o “prendol’ombrello perche piove” potrebbe essere espressa dall’asserzione unica “lapioggia e la causa del mio prendere l’ombrello”, che coinvolge pero la deli-cata parola “causa”; la frase contiene tuttavia una determinazione temporale(“siccome sta piovendo”), o anche una qualitativa (con un implicito riferi-mento forse a un particolare tipo di pioggia - a dirotto) che non la rende deltutto equivalente a “quando piove, prendo l’ombrello”.

Esistono parimenti frasi di difficile interpretazione; la stessa “siccomepiove, prendo l’ombrello”, o “poiche piove, prendo l’ombrello” invece che

una frase puo essere considerata un argomento, poiche in essa si affermaun fatto, che piove, oltre a un legame condizionale. Potrebbe corrispondere

1Si noti l’uso della “o” nella nostra frase, di nuovo scambiabile con “e”: si voleva direche non abbiamo menzionato “ne . . . ne” e non abbiamo menzionato “a meno che”; l’usodi “o” suggerisce un’altra versione equivalente: “una particella che sia “ne . . . ne” o “ameno che” non l’abbiamo menzionata”.

5

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 10/235

ad un esempio di modus ponens (si vedra a suo tempo): “Se piove, prendo

l’ombrello. Piove. Quindi prendo l’ombrello”.Useremo simboli speciali per rappresentare alcune particelle logiche che

sembrano di uso piu comune, almeno nei discorsi meno sofisticati. Per questesi potrebbero usare parole della lingua italiana - o comunque di una linguanaturale - fissando per convenzione in modo rigido il loro significato, comesi fa ad esempio quando per la congiunzione si usa and, in informatica.Quando si usano and, e simili, si vuole che il linguaggio sia friendly  percheci si deve concetrare su altro; noi invece vogliamo concentrarci proprio suquelle parole, per cui sono meglio simboli nuovi, insoliti, che sorprendano; lascelta di simboli artificiali e piu vantaggiosa anche perche, procedendo, questi

simboli non saranno soltanto abbreviazioni, ma insieme ad altri diventerannouna struttura che e essa stessa, se si vuole, oggetto di una teoria matematica,con suoi problemi specifici.

Ad esempio una prima questione comprensibile anche solo sulla base diquanto detto finora e se le particelle scelte sono anche fondamentali, e inche senso, o se sono sufficienti, o quante ce ne potrebbero essere. Un’altrariguarda l’equivalenza, affermata per alcuni esempi precedenti, tra frasi di-verse espresse con particelle diverse.

Queste strutture forniranno un ricco campo di scrittura di algoritmi nonnumerici ma simbolici, applicati a liste o alberi o altre strutture di dati,

Il significato delle particelle logiche e lo stesso a prescindere dal lessico, eper studiarlo occorre non fissarsi su un linguaggio particolare; la trattazionedeve valere per tutti, quindi useremo lo stesso artificio matematico di us-are lettere (come p, q e altre) per indicare entita non precisate, che nelleapplicazioni dovranno essere asserzioni sensate.

Oggetto di studio saranno dunque configurazioni simboliche astratte deltipo “ p e non q”2 che non rientrano apparentemente nell’esperienza comune;si consideri tuttavia che le persone sono in grado di pronunciare tutte le frasidel tipo “c’e una tavolo e non c’e una sedia”, “c’e una quadrato e non c’eun tavolo”, . . . e cosı via per tutte le circa diecimila parole del lessico di unapersona (colta). Il numero di queste e di tutte le altre frasi (come “se c’e

un tavolo non c’e una sedia”) supera il numero dei neuroni del cervello, percui, anche ammettendo - che non e - che ogni frase richieda un neurone ouna combinazione di neuroni per la memorizzazione, non si puo pensare chetutte le frasi della competenza linguistica siano immagazzinate in memoria;

2Al posto di “e” e “non” ci saranno i simboli speciali corrispondenti.

6

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 11/235

questo significa che, insieme al lessico, sono immagazzinati invece schemi che

possiamo immaginare di rappresentare (esternamente) come “ p e non q”, eche questi fanno parte dell’inconscio cognitivo3. Si tratta solo di diventarneconsapevoli. L’oggetto di studio della logica sono tali schemi di frasi, non lefrasi, e per questo si parla di logica formale.

La formalizzazione del linguaggio naturale non e qualcosa di meccanicoe di compiuto per l’intera gamma delle potenzialita espressive. Esistonoargomenti controversi e ancora oggetto di discussioni e di proposte per unaformalizzazione soddisfacente - che rientrano in studi piu avanzati.

La restrizione alle frasi dichiarative e uno di questi, dal momento che icomandi ad esempio hanno un ruolo apparentemente importante nella pro-

grammazione.Abbiamo visto qualche difficolta con “siccome”. Allo stesso modo e dis-

cutibile se “e necessario che . . . ” sia da considerare una particella logica: “enecessario che al giorno segua la notte”, o “al giorno segue necessariamente lanotte”, non sembra equivalente a “al giorno segue la notte”, e neanche a “algiorno segue sempre la notte”, che e equivalente alla precedente se “segue”,privo di determinazioni temporali, assorbe il “sempre”; anche “necessaria-mente 2 + 2 = 4” forse dice di pi u di “2 + 2 = 4”, ma non e del tutto chiaroche cosa.

Ancora, e possibile sostenere che il costrutto “e vero che . . . ” e pleonas-

tico, in quanto “e vero che piove” e equivalente a “piove”, ma e altrettantopossibile sostenere che non e possibile farne a meno.

2.1 Esercizi

1. Esaminare i seguenti discorsi (e altri tratti a scelta da fonti letterarieo giornalistiche) ed individuare le particelle logiche e le frasi elemen-tari (racchiudendole tra parentesi e se necessario riformulando in modoequivalente i discorsi e le loro frasi).

Se non e possibile prevedere tutte le azioni delle persone al-

lora o l’universo non e deterministico o le persone non sonoperfettamente razionali. Chi sostiene il determinismo deve

3Non freudiano. Significa che nel cervello e memorizzato (hardwired ) uno schema delgenere; non sappiamo come, ma di esso diventiamo coscienti attraverso l’uso delle variabili.

7

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 12/235

dunque sostenere che se le azioni delle persone sono prevedi-

bili allora le persone sono perfettamente razionali.

Se non e possibile prevedere tutte le azioni delle persone al-lora o l’universo non e deterministico o le persone non sonoperfettamente razionali. Chi sostiene il determinismo devedunque sostenere che se le azioni delle persone non sonoprevedibili allora le persone non sono perfettamente razion-ali.

Suggerimento. Introdurre abbreviazioni per le frasi che si ripetono, in

modo da arrivare, nel caso del primo brano, a

Se non Prev allora o non Det o non Raz. Chi sostiene Detallora deve sostenere che se Prev allora Raz

e ancora, togliendo il “chi sostiene”, a

Se non Prev allora o non Det o non Raz. Se Det allora (sePrev allora Raz).

Le abbreviazioni aprono la strada all’uso delle lettere per indicareproposizioni; quando si saranno anche introdotti simboli per le par-ticelle logiche e se ne saranno viste alcune leggi, sara anche facile es-primere un giudizio sulla corettezza o meno dell’argomento.

Altri esempi:

Se le persone sono interamente razionali, allora o tutte leazioni di una persona possono essere previste in anticipoo l’universo e essenzialmente deterministico. Non tutte leazioni di una persona possono essere previste in anticipo.Dunque, se l’universo non e essenzialmente deterministico,allora le persone non sono interamente razionali.

Il numero di queste e di tutte le altre frasi supera il numerodei neuroni del cervello, per cui, anche ammettendo - che none - che ogni frase richieda un neurone o una combinazione di

8

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 13/235

neuroni per la memorizzazione, non si puo pensare che tutte

le frasi della competenza linguistica siano immagazzinate inmemoria.

2. Con il costrutto “se . . . allora” e le frasi “dico x” e “x e una verita”esprimere: “dico tutta la verita e solo la verita”.

3. Scrivere con le giuste particelle logiche:

a) non c’e fumo senza arrosto

b) fumo vuol dire fuoco.

4. Trovare altre particelle logiche della lingua italiana, oltre a quelle men-zionate nel testo.

5. Discutere se “cioe” e una particella logica o no, e a quali altre e even-tualmente equivalente, in diversi contesti.

6. Cosa significa per voi “necessariamente 2 + 2 = 4”?

9

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 14/235

3 Logica proposizionale

3.1 Connettivi

Useremo per le particelle logiche i simboli:

¬ per la negazione∧ per la congiunzione∨ per la disgiunzione inclusiva⊕ per la disgiunzione esclusiva→ per il condizionale “se . . . allora”↔ per il bicondizionale “se e solo se”

senza escluderne a priori altri, e li chiameremo connettivi  proposizionali. Lanegazione e un connettivo unario (cioe agisce su una proposizione), gli altriindicati sono connettivi binari (cioe connettono due proposizioni).

Introdotti i simboli per i connettivi, occorre dare le loro precise regoled’uso, sia dal punto di vista sintattico (dove scriviamo ad esempio ¬ performare la negazione di un’asserzione?), sia dal punto di vista semantico(come interpretiamo il significato delle frasi composte, in funzione delle frasicomponenti?).

3.2 SintassiLa necessita di fornire regole rigide per la formazione delle frasi e data dallavolonta di evitare le ambiguita possibili nelle lingue naturali:

la vecchia porta la sbarra

e un esempio di frase essenzialmente ambigua, se non sono indicati quali sonosoggetto e verbo. Si tratta di un’ambiguita che e risolvibile nel contesto dellastoria raccontata, e nel parlato soprattutto con le pause.

Altre ambiguita si riferiscono proprio alla distribuzione dei connettivi;supponiamo ad esempio di leggere un problema:

x2 + 4x + 3 < 0 e x < −3 o x > −2.

Lo studente tende a rispondere “risolvo l’equazione, poi interseco con x < −3e unisco con x > −2”, ma e l’ordine di queste operazioni che conta, che nonsempre e quello del first come, first served  nella scrittura del problema.

Si puo intendere che si chieda quali siano i valori per cui o si ha che

10

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 15/235

x2 + 4x + 3 < 0 e x < −3

o si ha che

x > −2;

si puo anche intendere che si chieda quali siano i valori per cui si ha

x2 + 4x + 3 < 0

ma ristretti ad essere

x < −3 o x > −2.

Nel primo caso la risposta e (−2, +∞), nel secondo caso e (−2, −1).Naturalmente l’ambiguita, che nel parlato si risolve con le pause, nella

scrittura matematica si risolve con le parentesi, il primo caso essendo

(x2 + 4x + 3 < 0 e x < −3) o x > −2

e il secondo caso

x2 + 4x + 3 < 0 e (x < −3 o x > −2).

La stessa soluzione delle parentesi1 adotteremo per le formule logiche.

3.2.1 Il linguaggio proposizionale

Le frasi di ogni linguaggio sono stringhe2 di simboli dell’alfabeto. L’alfabetodel linguaggio proposizionale contiene, oltre ai connettivi, le parentesi sinistra“(” e destra “)”, e un insieme L di lettere proposizionali.

Tali lettere non le chiamiamo variabili, come talvolta si usa, perche il lorodominio di variabilita (le frasi) e troppo indefinito.

Le parole accettabili di questo alfabeto si chiameranno proposizioni , untermine tecnico per distinguerle dalle asserzioni dei linguaggi dotati di senso.

Quello che importa delle proposizioni e solo la loro struttura formale, che poisi dovra riconoscere nelle frasi dei linguaggi naturali o matematici, quando

1Le parentesi sono state anche aggiunte al linguaggio naturale, ma solo nella scrittura- almeno la saggistica, meno la letteratura - non nel parlato.

2Con “stringa” s’intende o lista o successione finita. Non e necessario entrare nei parti-colari del tipo di rappresentazione dei dati che si sceglie, finche non si deve implementare.

11

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 16/235

il linguaggio proposizionale sara interpretato sostituendo alle lettere frasi

relative ad un precisato argomento.Non tutte le stringhe di simboli dell’alfabeto sono ammesse come propo-

sizioni. Una generica stringa, anche illecita, e chiamata “parola”.

La definizione dell’insieme P  delle proposizioni stipula innanzi tutto che:

Per ogni lettera p ∈ L, ( p) e una proposizione atomica 

(cioe non ulteriormente analizzata e scomposta nel contesto della trattazione).Per il resto della definizione, occorre parlare di proposizioni qualunque e

della loro composizione; e quindi necessario avere delle variabili che varianosull’insieme delle proposizioni, e che si chiamano metavariabili 3; useremo lelettere A , B , . . .

Si danno quindi le seguenti clausole:

1 Se A e una proposizione, anche (¬A) lo e.

2 Se • e un connettivo binario, e se A e B sono proposizioni, anche (A • B)lo e.

Le clausole della definizione sono anche regole di costruzione. S’intende cheogni proposizione si ottiene applicando un numero finito di volte le clausole

della definizione.Esempi

1. ( p ∩ q) non e una proposizione perche ∩ non e un elemento dell’alfabeto4.

2. p ∧ q non e una proposizione, perche:

Ogni proposizione contiene almeno una parentesi5.

3La ragione di questo termine, non usato altrove in matematica, e che queste variabiliindicano elementi di una struttura che e anch’essa un linguaggio, e che contiene a suavolta variabili (le lettere) che devono essere interpretate su frasi; “meta” significa “sopra”,“oltre”, e deriva dal greco, dove significava piuttosto “dopo”; ma dopo che sono stati

chiamati “metafisica” i libri di Aristotele che seguivano quelli di fisca, e venuta questavariante di significato.

4Per i linguaggi formali si chiede sempre che l’alfabeto e le sue diverse categorie disimboli siano insiemi decidibili, cioe tali che l’appartenenza o meno ad essi di un simbolopossa essere decisa da un algoritmo.

5Tutte queste proprieta diventeranno esercizi sul principio di induzione nel paragrafo15.

12

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 17/235

3. ) p( non e una proposizione, come non lo sono p o ) p), perche:

Ogni proposizione inizia con una parentesi ( e termina con una parentesi).

4. (( p) → (q)) e una proposizione perche ottenuta dalle proposizioni atom-iche ( p) e (q) con una applicazione della clausola induttiva relativa a→.

5. (¬(( p) → (q))) e una proposizione perche ottenuta dalle proposizioniatomiche ( p) e (q) con una prima applicazione della clausola induttivarelativa a → e una seconda applicazione della clausola relativa a ¬.

6. (( p) non e una proposizione perche:

In ogni proposizione il numero di parentesi sinistre e uguale al numerodi parentesi destre.

7. ( pq) non e una proposizione perche non e atomica e non contiene nessunconnettivo.

Se una proposizione e della forma (¬A) o della forma (A • B), ¬ e • sonorispettivamente il suo connettivo principale, e A e B le sottoproposizioniimmediate.

Si dice che (¬A) e una negazione, citando il suo connettivo principale, lanegazione di A - e si legge “non A”; si dice che (A ∧ B) e una congiunzione,la congiunzione di A e B - e si legge “A e B”; A e B sono le proposizionicongiunte in (A∧B); analogamente per la disgiunzione6 (A∨B) - che si legge“A o B”; (A ⊕ B) si puo leggere “o A o B”; (A → B) si dice un condizionale- e si legge “se A allora B”; A si chiama antecedente, e B conseguente;(A ↔ B) si dice bicondizionale - e si legge “A se e solo se B”.

3.2.2 Analisi sintattica

Una proposizione e una lista di simboli, ma e anche passibile di una rapp-

resentazione con una diversa struttura. A ogni proposizione e associato unalbero di costruzione, o di analisi sintattica 7, che e un albero etichettato finitobinario.

6Chiameremo ∨ semplicemente disgiunzione, e ⊕ disgiunzione esclusiva o forte.7In inglese parsing .

13

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 18/235

Un albero binario8 e un insieme parzialmente ordinato9 X  con una re-

lazione con le seguenti proprieta. e una relazione riflessiva, transitivae antisimmetrica10. Gli elementi dell’albero si chiamano nodi . Se x y, sidice che y e un successore, o un discendente di x. Esiste un nodo minimor tale che r x per ogni nodo di X , e si chiama radice. I nodi a tali chenon esiste b = a per cui a b si chiamano foglie11. Ogni nodo che non siauna foglia ha uno o al massimo due successori immediati12, dove si dice cheb e un successore immediato di a se a b, a = b e non esiste un c tale chea c b, con c = a e c = b.

La rappresentazione usuale di un albero binario e di questo tipo:

• • ↓• • •

↓•

dove con la freccia si indica il successore immediato, la radice e in alto el’albero cresce verso il basso.

Un ramo e un insieme totalmente ordinato13 di nodi che va dalla radicea una foglia. La sua lunghezza e il numero di nodi che vi appartengono.L’altezza dell’albero e la massima lunghezza dei suoi nodi.

Un albero si dice etichettato se ad ogni nodo e associato un elemento diqualche insieme prefissato, che si chiama etichetta.

8Esistono definizioni leggermente diverse, piu o meno generali, ad esempio con una opiu radici; diamo quella che serve ai nostri scopi.

9Presenteremo in seguito la definizione di relazione d’ordine e della terminologia con-nessa; per ora e sufficiente la rappresentazione data sotto.

10

Questo significa che x x, che se x y e y z allora x z e che x y e y ximplicano x = y.

11Esistono sempre se l’albero, ovvero l’insieme dei nodi X , e finito.12Un’altra terminologia e “figli”. Se ci sono due figli, s’intende che sono esplicitamente

distinti il primo e il secondo - sulla pagina, a sinistra e a destra.13Per ora basti intendere che ogni nodo del ramo salvo l’ultimo ha esattamente un

successore immediato.

14

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 19/235

L’albero sintattico di una proposizione e definito in questo modo:

• la radice e etichettata con la proposizione data

• ogni nodo ha nessuno, uno o due successori immediati a seconda chela proposizione etichetta del nodo sia atomica, o della forma (¬A), odella forma (A • B). Nel secondo caso il successore e etichettato conA, nel terzo caso i due successori sono etichettati rispettivamente conA e con B.

Si chiama altezza  della proposizione l’altezza del suo albero di costruzione.

EsempioL’albero per ((( p) ∧ (¬(q))) ∨ (¬( p))) e il seguente:

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

(( p) ∧ (¬(q))) (¬( p)) ↓

( p) (¬(q)) ( p)↓

(q)

La sua altezza e quattro.

Le etichette dei nodi dell’albero di costruzione di una proposizione sono lesue sottoproposizioni . Le lettere che compaiono nelle (proposizioni atomichenelle) foglie sono le lettere che occorrono nella proposizione; si dice che unsimbolo occorre in una proposizione se e un elemento della lista (che e laproposizione); le occorrenze di un simbolo in una proposizione sono i variposti della lista in cui il simbolo si presenta. Se p, . . . , q sono le lettere cheoccorrono nella proposizione A, si scrive anche A[ p, . . . , q]. Qualche voltasi usa questa notazione anche se p, . . . , q sono solo alcune delle lettere cheoccorrono in A, o viceversa se le lettere che occorrono in A sono incluse trale p, . . . , q; invece di introdurre notazioni apposite, la differenza sara chiara

dal contesto o da esplicite precisazioni.

Le parentesi sono essenziali per individuare il connettivo principale di unaproposizione, e quindi per costruire il suo albero sintattico. Per individuareil connettivo principale, si usa un contatore di parentesi14.

14Horstmann, p. 76.

15

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 20/235

Il contatore scansisce la lista da sinistra verso destra, e scatta di +1

quando incontra una parentesi sinistra, di −1 quando incontra una parentesidestra. Condizione necessaria affinche una parola sia una proposizione e cheil contatore, inizializzato a 0, torni a 0 solo alla fine della parola. Perche poi !!!

la parola sia una proposizione bisogna che gli altri simboli siano distribuitiin mezzo alle parentesi in modo corretto.

Ad esempio per

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

il contatore assume i valori:

0 1 2 3 2 3 4 3 2 1 2 3 2 1 0.Per individuare il suo possibile connettivo principale, si elimina la primaparentesi, e si mette di nuovo in funzione il contatore su

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

notando che esso assume questa volta i valori

0 1 2 1 2 3 2 1 0

quando arriva alla fine di

(( p) ∧ (¬(q))).

Questa parola e candidata ad essere una sottoproposizione; nel prossimoposto a destra compare un connettivo ∨, candidato a essere il connettivoprincipale, e se anche

(¬( p))

e una parola si sara trovato che la parola data e una disgiunzione di (( p) ∧(¬(q)) e di (¬( p)).

Poiche quest’ultima si vede facilmente che e una proposizione, proseguiamo

l’analisi di

(( p) ∧ (¬(q))).

Il contatore applicato a questa assume i valori

0 1 2 1 2 3 2 1 0

16

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 21/235

e applicato a

( p) ∧ (¬(q)))

i valori

0 1 0

alla fine di ( p), individuando a destra il connettivo ∧, che lega ( p) e (¬(q)).In questo modo si arriva a costruire l’albero sintattico.

Alcune parentesi sono sovrabbondanti, ma solo quelle della coppia piu es-terna e quelle nelle proposizioni atomiche, dove sono usate sia per uniformita

sia per sottolineare la differenza tra una lettera come elemento dell’alfabetoe la lettera come proposizione15. Ma ora per comodita di scrittura e let-tura e meglio ridurre il numero di parentesi con le seguenti convenzioni:non si scrivono le parentesi intorno alle lettere nelle proposizioni atomiche,non si scrivono le parentesi piu esterne, e si eliminano alcune coppie di par-entesi intorno ad alcune sottoproposizioni, con un criterio sufficiente a farleripristinare in modo corretto formulato nel seguente modo.

Si ordinano per priorita i connettivi secondo le seguente graduatoria:

¬∧∨⊕→↔

Data quindi una parola le cui parentesi non rispettano le condizioni peressere una proposizione (sı pero la parita, il fatto che il numero di parentesisinistre sia uguale a quello delle parentesi destre, il fatto che in ogni puntoche non sia l’ultimo il numero di sinistre e maggiore o uguale di quello delledestre, e tutte le proprieta che si mantengono quando si eliminano alcune

coppie di parentesi corrispondenti16

), le parentesi si rimettono secondo questoprocedimento: prima si rimettono le parentesi a sinistra e a destra delle

15Tra alfabeto e parole ce una differenza di tipo logico. Nei linguaggi naturali si presen-tano alcune eccezioni, come le vocali “e” e “o” usate come parole, ma e raro che si parlidell’alfabeto; quando lo si fa, si scrive appunto “e” e non e.

16In questo caso, in seguito, la chiameremo ancora proposizione.

17

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 22/235

lettere17; quindi si prende in esame la negazione, se occorre nella parola; si

esamina un’occorrenza della negazione che non abbia immediatamente allasua destra un’altra negazione18. Alla sua destra c’e una parentesi sinistra- altrimenti si puo dire che quella parola non proviene dalla eliminazionedi coppie di parentesi da una genuina proposizione (brevemente, che none una proposizione). Sia σ la parola alla sua destra che termina con laparentesi destra che chiude la parentesi sinistra. Per trovare la parentesidestra che “chiude” la parentesi sinistra si usa di nuovo il contatore in modo !!!

ovvio. Allora si rimette una parentesi sinistra alla sinistra della negazione,se non c’e gia, e una parentesi destra a destra di σ, se non c’e gia, ottenendo(¬σ); si ripete per ogni occorrenza di ¬, quindi si passa ai connettivi binari

e per ciascuno di essi •, nell’ordine di priorita, si considerano le piu cortesottoparole σ e τ  a sinistra e a destra di • che sono chiuse tra due parentesisinistre e destre, e si introduce una parentesi ( a sinistra di σ e ) a destra diτ , se non ci sono gia, ottenendo (σ • τ ), e cosı via.

Per occorrenze dello stesso connettivo si conviene l’associazione a destra,cioe ad esempio con A → B → C  si intende A → (B → C ).

Esempi

Data p ∧ ¬q ∨ ¬ p, la reintroduzione delle parentesi avviene attraversoquesta successione di passi:

1 ( p) ∧ ¬(q) ∨ ¬( p)

2 ( p) ∧ (¬(q)) ∨ (¬( p))

3 (( p) ∧ (¬(q))) ∨ (¬( p))

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

Data p → ¬(q ∧ ¬¬r)

1 ( p) → ¬((q) ∧ ¬¬(r))

2 ( p) → ¬((q) ∧ ¬(¬(r)))

17Questo praticamente si puo fare anche alla fine, per non appesantire la scrittura, selo si fa del tutto.

18A parte questa condizione, l’ordine in cui si lavora sulle eventuali diverse occorrenzedella negazione non e rilevante; lo si puo anche fare in simultanea. Lo stesso vale per glialtri connettivi.

18

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 23/235

3 ( p) → ¬((q) ∧ (¬(¬(r))))

4 ( p) → (¬((q) ∧ (¬(¬(r)))))

5 (( p) → (¬((q) ∧ (¬(¬(r))))))

oppure, per rendere piu chiara la lettura

1 p → ¬(q ∧ ¬(¬r))

2 p → ¬(q ∧ (¬(¬r)))

3 p → (¬(q ∧ (¬(¬r))))4 ( p → (¬(q ∧ (¬(¬r)))))

rimettendo infine le parentesi intorno alle lettere.Si noti che se fosse stata data p → ¬q ∧ ¬¬r la reintroduzione delle

parentesi avrebbe portato a una diversa proposizione: (( p) → ((¬(q)) ∧(¬(¬(r))))) (esercizio, e si confrontino i due alberi sintattici), per cui le dueparentesi lasciate in p → ¬(q ∧ ¬¬r) sono essenziali, se si vuole parlare della !!!

proposizione (( p) → (¬((q) ∧ (¬(¬(r))))) .

Non e comunque necessario ne obbligatorio togliere tutte le parentesi;per agevolare la lettura, o all’inizio quando non si e ancora fatta esperienza,puo essere conveniente lasciarne alcune, che pure grazie alle convenzioni sipotrebbero eliminare. Cosı ad esempio si potra scrivere p → (q ∧ r) invecedi p → q ∧ r oppure ( p ∨ q) → r invece di p ∨ q → r.

Le parentesi si rimettono solo se si ha necessit a di capire quale e il con-nettivo principale, per svolgere l’analisi sintattica. Le parentesi esterne pos-sono tranquillamente essere tralasciate, finche la proposizione non deve esserecombinata con altre mediante qualche connettivo.

L’albero sintattico si puo costruire direttamente anche per le espressioniprive di tutte le parentesi, se si tiene presente la priorit a dei connettivi. Ilconnettivo principale e sempre quello di priorita piu bassa. !!!

Esempio L’albero per p ∧ ¬q ∨ ¬ p e il seguente, essendo ∨ il connettivoprincipale:

19

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 24/235

 p ∧ ¬q ∨ ¬ p

 p ∧ ¬q ¬ p ↓

 p ¬q p↓q.

Le etichette sono diverse, ma l’albero e lo stesso della proposizione analizzatain precedenza.

Dal prossimo paragrafo, chiameremo “proposizioni” anche le parole ot-tenute da proposizioni per eliminazione di parentesi.

3.2.3 Esercizi

1. Discutere se le seguenti parole sono proposizioni:

( p ∧ (q)

( p)) ∧ q)

(( p) ∧ q)

(( p) ∧ (¬(q)))

(( p) → ∧) p

(( p)).

2. Verificare quali delle seguenti parole sono proposizioni e quali no, costru-endo l’albero sintattico e spiegando dove eventualmente la costruzionefallisce e per quale ragione:

(¬(¬ p))

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

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

((¬( p)) ∧ (q)) ∨ (r))

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

20

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 25/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 26/235

 p ∨ q ∧ r → ¬ p

 p ∧ q ∧ r ∨ ¬r

 p ∧ (→ r ∨ q)

 p ⊕ ¬q → ¬ p ⊕ q

 p ⊕ q ∨ r.

3.3 Semantica

La semantica ha a che fare con le interpretazioni, grazie alle quali le propo-sizioni vengono ad assumere un senso (che a noi non interessa, lo bypassiamo)

e diventano vere o false. Tale attribuzione finale di valori di verita e per noil’operazione di interpretazione, che viene studiata in astratto per vedere seabbia proprieta generali, indipendenti dalle interpretazioni concrete.

I valori di verita saranno rappresentati dall’insieme19 {0, 1}. Ci si collocacon tale scelta nell’ottica della logica classica a due valori.

Nell’insieme {0, 1} e necessario introdurre un minimo di struttura20: lapiu per semple consiste in convenire che 0 < 1 e usare la sottrazione come se0 e 1 fossero numeri interi, con | x | a indicare il valore assoluto.

Un’interpretazione e una funzione21 i : L −→ {0, 1}; una valutazione euna funzione v : P −→ {0, 1} che soddisfa le seguenti condizioni22:

v((¬A)) = 1 − v(A)v((A ∧ B)) = min{v(A), v(B)}v((A ∨ B)) = max{v(A), v(B)}v((A ⊕ B)) = | v(A) − v(B) |v((A → B)) = max{1 − v(A), v(B)}v((A ↔ B)) = 1− | v(A) − v(B) | .

19Altre notazioni per i valori di verita sono {V, F }, {T, F }, {,⊥}, True, False.20Vedremo in seguito che si puo considerare un’algebra di Boole.21La notazione con la freccia sara spiegata in seguito; per ora si intenda che a ogni

lettera corrisponde un valore di verita, e per v sotto che a ogni proposizione corrispondeo 0 o 1.

22Si noti che in v((¬A)) e in altre espressioni analoghe ci sono due tipi di parentesi, cheandrebbero tipograficamente distinte; quelle interne sono le parentesi della proposizione,quelle esterne servono per la notazione funzionale v(x).

22

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 27/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 28/235

A B A ∧ B

0 0 00 1 01 0 01 1 1

la tavola di verita della disgiunzione:

A B A ∨ B

0 0 0

0 1 11 0 11 1 1

la tavola di verita della disgiunzione esclusiva:

A B A ⊕ B

0 0 00 1 11 0 1

1 1 0la tavola di verita del condizionale:

A B A → B

0 0 10 1 11 0 01 1 1

e la tavola di verita del bicondizionale:

A B A ↔ B

0 0 10 1 01 0 01 1 1

24

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 29/235

Quando si deve trovare il valore di verita di una proposizione, o di un nu-

mero finito di esse, sotto un’interpretazione, e sufficiente considerare i valoriassunti dalle lettere che vi compaiono, quindi le interpretazioni diventanoassegnazioni di valori 0 o 1 ad un numero finito di lettere, e per ogni propo-sizione ce ne e un numero finito. Data una proposizione, il calcolo dei suoivalori di verita per ogni possibile interpretazione si puo organizzare in unatabella con i valori progressivi attribuiti alle sottoproposizioni (individuatedall’analisi sintattica), come nei seguenti esempi:

Se A e p ∧ ¬ p → q:

 p q ¬ p p ∧ ¬ p p ∧ ¬ p → q0 0 1 0 10 1 1 0 11 0 0 0 11 1 0 0 1

Se A e p ∨ r → ¬ p ∧ (q → r):

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

0 0 0 1 1 1 0 10 0 1 1 1 1 1 10 1 0 1 0 0 0 10 1 1 1 1 1 1 11 0 0 0 1 0 1 01 0 1 0 1 0 1 01 1 0 0 0 0 1 01 1 1 0 1 0 1 0

Tali tabelle si chiamano tavole di verita delle proposizioni.Come si vede dagli esempi, ci sono proposizioni che per ogni interpre-

tazione hanno il valore 1, altre che per alcune interpretazioni hanno il valore0 e per altre interpretazioni il valore 1. Si possono dare esempi di proposizioniche per ogni interpretazione assumono il valore 0 (esercizio).

Si ricordi che una proposizione, in quanto schema, non e ne vera ne falsa; !!!

solo la sua tavola di verita completa spiega tutti i possibili modi in cui loschema puo realizzarsi nelle diverse interpretazioni.

25

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 30/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 31/235

Se esiste almeno una i tale che i |= A, si dice che A e soddisfacibile , o

(semanticamente) consistente . Se non esiste alcun modello di A, si dice cheA e insoddisfacibile, o (semanticamente) inconsistente, o contraddittoria , ouna contraddizione. Se per ogni i si ha i |= A, si dice che A e logicamente

valida , o logicamente vera , o una tautologia , e si scrive

|= A.

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

A |= B

se per ogni i, se i |= A allora i |= B. Si noti che, grazie alla tavola di veritadel condizionale,

Osservazione 3.3.1 Per ogni  A e B,

A |= B se e solo se |= A → B.

Se A e A1 ∧ . . . ∧ An

, A1 ∧ . . . ∧ An |= B si scrive A1, . . . , A

n |= B. SeT  = {A1, . . . , An}, allora si dice che i soddisfa T  se e solo se i |= A1∧. . .∧An

.Se A |= B e B |= A, si dice che A e B sono logicamente equivalenti , o

anche solo equivalenti, e si scrive A ≡ B.Per ogni A e B,

A ≡ B se e solo se |= A ↔ B.

Si noti che |= e ≡ sono segni metalinguistici. Le tautologie, in particolarequelle che sono nella forma di equivalenze, sono dette anche leggi logiche.

Un elenco di leggi logiche notevoli e presentato nella pagina successiva.

27

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 32/235

Leggi logiche notevoli 1

A → A legge dellidentitaA ↔ ¬¬A legge della doppia negazioneA ∧ B ↔ B ∧ A commutativita di ∧(A ∧ B) ∧ C  ↔ A ∧ (B ∧ C ) associativita di ∧A ∨ B ↔ B ∨ A commutativita di ∨(A ∨ B) ∨ C  ↔ A ∨ (B ∨ C ) associativita di ∨A ∧ A ↔ A idempotenza di ∧A ∨ A ↔ A idempotenza di ∨A ∧ B → A eliminazione di ∧

A → A ∨ B introduzione di ∨A ∧ (B ∨ C ) ↔ (A ∧ B) ∨ (A ∧ C ) distributivitaA ∨ (B ∧ C ) ↔ (A ∨ B) ∧ (A ∨ C ) distributivitaA ∧ (A ∨ B) ↔ A legge di assorbimentoA ∨ (A ∧ B) ↔ A legge di assorbimento¬(A ∧ B) ↔ (¬A ∨ ¬B) legge di De Morgan¬(A ∨ B) ↔ (¬A ∧ ¬B) legge di De Morgan¬A ∨ A legge del terzo escluso¬(A ∧ ¬A) legge di non contraddizioneA → B ↔ ¬B → ¬A legge di contrapposizioneA ∧ ¬A → B Lewis, o ex falso quodlibetA → (B → A) aff ermazione del conseguente¬A → (A → B) negazione dell antecedente(A → B ∧ ¬B) → ¬A legge di riduzione allassurdo(A → ¬A) → ¬A riduzione allassurdo debole(¬A → A) → A consequentia mirabilis((A → B) → A) → A legge di P eirce(A → B) ∨ (B → A) legge di DummettA → ((A → B) → B) modus ponensA → (B → C ) ↔ B → (A → C ) scambio antecedenti(A → C ) ∧ (B → C ) ↔ A ∨ B → C distinzione di casi

(A → B) ∧ (¬A → B) → B distinzione di casi(A → (B → C )) → ((A → B) → (A → C )) distributivita di →(A → B) ∧ (B → C ) → (A → C ) transitivita di →A → (B → C ) ↔ (A ∧ B) → C importazione/esportazione

delle premesse

28

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 33/235

Per verificare queste leggi, dove A , B , . . . sono qualunque, si devono prima

verificare le stesse nel caso particolare che A , B , . . . siano atomiche (ad es-empio p → p per la legge dell’identita), e poi sfruttare il fatto che se A[ p] euna tautologia e B e qualunque, allora anche il risultato della sostituzione diB a p in A e una tautologia (vedi esercizi).

Per le leggi che sono scritte come condizionali e non bicondizionali, sivedra in seguito che l’implicazione inversa in generale non sussiste (salvoalcuni casi, ad esempio per l’inverso della riduzione all’assurdo debole ¬A →(A → ¬A), che rientra nell’affermazione del conseguente).

L’associativita della congiunzione giustifica che si possa scrivere senzaambiguita, indipendentemente dalle convenzioni sulle parentesi, A ∧ B ∧ C 

per (indifferentemente) A ∧ (B ∧ C ) o (A ∧ B) ∧ C , o in generale A1 ∧ . . . ∧ An

(e lo stesso per la disgiunzione). A ∧ (B ∧ C ) e (A ∧ B) ∧ C  sono diverse(si disegni il loro albero sintattico) ma si dice che sono uguali a meno di 

equivalenza logica.

Anche le seguenti sono leggi logiche:

A → B ↔ ¬A ∨ B(A ↔ B) ↔ (A → B) ∧ (B → A)A ⊕ B ↔ (A ∧ ¬B) ∨ (B ∧ ¬A)A ⊕ B ↔ (A ∨ B) ∧ ¬(A ∧ B).

Si noti che le due leggi per ⊕ forniscono un esempio di come una particellalogica possa essere espressa con diversi giri di frase equivalenti; queste equiv-alenze in genere mostrano cosa significa che frasi diverse vogliono dire lastessa cosa.

Per mezzo di esse, dalle leggi elencate sopra se ne derivano altre; adesempio dal modus ponens e dall’esportazione, con la prima, si ricava

A ∧ (¬A ∨ B) → B sillogismo disgiuntivo.

Ma queste leggi soprattutto permettono di vedere che i connettivi ⊕, →, ↔sono definibili in termini di ¬, ∧ e ∨.

Alcune leggi sono spesso presentate in forma di regole di inferenza ; adesempio il modus ponens da

29

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 34/235

A, A → B

B,

il sillogismo disgiuntivo da

A, ¬A ∨ B

B

o da

¬A, A ∨ B

B,

l’eliminazione della congiunzione da

A ∧ B

Ae

A ∧ B

B

e l’introduzione della disgiunzione da

A

A ∨ Be

B

A ∨ B.

Le leggi corrispondenti permettono di asserire che se sono vere le propo-sizioni sopra la riga, o premesse della regola, allora e vera anche la propo-sizione sotto la riga, o conclusione. Regole d’inferenza di questo genere sidicono corrette se le premesse implicano logicamente la conclusione - quindile regole sopra elencate sono corrette. Per mezzo delle regole di inferenzasi deduce una proposizione da un’altra, o da altre date, che si chiamano as-

sunzioni; si dice che una proposizione B si deduce da un’altra A se A |= Be se questo fatto e riconosciuto e certificato da una spiegazione. Un modoper riconoscere la sussistenza di A |= B e quello di inserire tra A e B altreproposizioni legate tra loro dalla relazione di premesse-conclusione di regolecorrette.

Ad esempio per stabilire

30

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 35/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 36/235

8. Verificare che |= A ⊕ B → A ∨ B ma non viceversa.

9. Spiegare perche A → A ⊕ B non e logicamente vera.

10. Verificare che p ∨ q e equivalente a p ∨ (q ∧ ¬ p) ed a p ⊕ (q ∧ ¬ p).

11. Notare ¬(A ⊕ B) ≡ ¬A ⊕ B e A ⊕ ¬A ≡ A ∨ ¬A (provare a trovarefrasi in italiano che si possono dire bene in entrambi i modi).

12. Verificare che la regola del sillogismo disgiuntivo e corretta anche con⊕ al posto di ∨.

13. Verificare se A ⊕ (B ⊕ C ) ≡ (A ⊕ B) ⊕ C .

14. In base al precedente esercizio, discutere quando A1 ⊕ . . . ⊕ An

e vera.

15. Verificare che ¬¬¬¬A ≡ A e che ¬¬¬¬¬¬¬A ≡ ¬A. Generalizzare.

16. Si consideri il problema del merging  di due liste List1 e List2 in unaterza lista List3 (ad esempio nomi, in ordine alfabetico).

Una prima formulazione dell’algoritmo e la seguente: nello scorrere ledue liste, se List1 non e esaurita e List2 e esaurita oppure l’elementoin considerazione di List1 precede il primo non ancora inserito di List2,allora l’elemento di List1 e inserito in List3.

Un’altra formulazione potrebbe essere la seguente: il prossimo elementoin List3 e preso da List1 quando List1 non e esaurita e List2 sı, oppurequando List1 non e esaurita e l’elemento in considerazione di List1precede il primo non ancora inserito di List2.

Usando lettere p,q,r per rappresentare rispettivamente “List1 non eesaurita”, “List2 e esaurita” e “l’elemento di List1 precede quello diList2”, scrivere le proposizioni corrispondenti alle due versioni dellecondizioni (che portano entrambe a mettere in List3 l’elemento in esamedi List1), e discutere se siano o no equivalenti, in base a quali leggi.

17. Si distribuiscono carte da gioco, e si sa che un giocatore ha in mano unAsso o un Re. Si considerino le seguenti due proposizioni:

A: se c’e in mano un Asso, c’e un 2B: se c’e in mano un Re, c’e un 2.

32

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 37/235

Che cosa si puo dedurre se esattamente una tra le proposizioni A e B

e vera?Che cosa si puo dedurre se entrambe le proposizioni A e B sono vere?

18. Per conquistare la principessa, Aladino deve scegliere di aprire una didue scatole A e B; sa che in una c’e un anello di fidanzamento, nell’altraun serpente velenoso. Sulla scatola A e scritto: “Almeno una di questescatole contiene un anello”; sulla scatola B e scritto: “Nella scatolaA c’e un serprente velenoso che uccide all’istante”. Ad Aladino vienedetto che o entrambe le scritte sono vere, o entrambe false. Qualescatola apre?

19. “Se io ho ragione, tu hai torto; se tu hai ragione, io ho torto; quindiuno di noi ha ragione”. Corretto o no? Perche?

20. “La storia insegna che non si impara niente dalla storia”. Vero o falso?Perche?

Suggerimento. Riduzione all’assurdo debole.

3.4 Sull’implicazione

Abbiamo distinto il condizionale, che e un connettivo, o il nome di una propo-

sizione della forma A → B, dall’implicazione, che e una relazione tra propo-sizioni, e non si scrive A → B ma |= A → B. “A implica B” significa “ilcondizionale A → B e una tautologia”.

La terminologia e qualche volta ambigua perche per leggere ad esempiouna regola come il sillogismo disgiuntivo si trova anche detto “se A e ¬A ∨ Ballora B”, in alternativa a “A e ¬A ∨ B implicano B”. Se si e in un contestodeduttivo si capisce forse che si sta parlando dell’implicazione e non leggendosemplicemente la forma di una proposizione. L’importante ad ogni modo none la terminologia quanto capire la differenza.

Il soggetto di “A implica B” non e A ma A → B. Qualche volta - nonqui - si trova introdotto un simbolo speciale per l’implicazione (in analogiaal caso dell’equivalenza), ad esempio A ⇒ B.

Si dice ad esempio “il condizionale p → p ∨ q ha cinque simboli”, non“l’implicazione p → p ∨ q ha cinque simboli”, perche l’implicazione e unfatto che sussiste o no, e un fatto non e formato da simboli. Al massimo eun predicato, sotto cui cadono alcuni condizionali, come in “il condizionale

33

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 38/235

 p → p ∨ q e un’implicazione”. Oppure si puo dire che vale l’implicazione

 p →  p ∨ q, ma non si parlera ad esempio dell’implicazione p → q ∨ r, che none una tautologia.

Siccome purtroppo la terminologia non e uniforme, e si possono trovareusate entrambe le parole, bisogna fare attenzione al contesto.

Nella tradizione logica, il condizionale era anche chiamato “implicazione mate-riale”, per distinguere la relazione di conseguenza da altre forme di implicazione,o da altri sensi del costrutto “se . . . allora”.

In effetti, il significato di “se . . . allora” e polimorfo:

• significato logico (o inferenziale):

Se tutti gli uomini sono mortali e Socrate e un uomo, allora Socrate e mor-tale.

• significato definitorio:

Se e scapolo, allora non e sposato.

• significato causale:

Se si immerge una cartina di tornasole e diventa rossa, allora il liquido e unacido.

• significato materiale:

Se la Terra vola, allora la Terra e piatta.E difficile trovare qualcosa di positivo in comune tra queste diverse accezioni

del “se . . . allora”. In particolare il caso che ha sollevato maggiori discussionie l’ultimo, come considerare il condizionale se antecedente e conseguente sonoentrambe false.

Una cosa in comune ce l’hanno, ed e che in tutte le accezioni l’unico modoper dichiarare il condizionale falso e quello di riscontrare antecedente vera e con-seguente falsa, anche per il significato materiale: “se la Terra e rotonda, allora ilSole e freddo” si considera falso.

Allora il significato parziale comune si puo esprimere riempiendo la tavola diverita con i valori che sono di fatto quelli di ¬(A ∧ ¬B): !!!

Un condizionale e corretto [secondo Crisippo] se la negazione dellasua conclusione e incompatibile con la sua premessa (Sesto Empirico,

Schizzi pirroniani , II, 110-2).

Si ottiene cosı quella che gli antichi chiamavano implicazione materiale:

34

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 39/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 40/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 41/235

iche, solo che queste ultime invece di lettere sono espresisoni che contengono

anche x. Si potrebbe dire che si tratta di un linguaggio proposizionale ap-plicato. Ogni volta che si da a x un valore, nell’universo fissato, e comeassegnare il valore vero o falso alle componenti atomiche. Parleremo persemplicita anche in questo caso per ora di proposizioni, per non complicarela terminologia, quando applicheremo risultati della logica proposizionale,oppure le chiameremo formule, in analogia alle formule matematiche.

4.2 Algebra degli insiemi

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

insieme U , “U ” per “universo”, ad ognuna di queste proposizioni p(x) eassociato un insieme, che si puo chiamare insieme di verita  di p(x):

V  p(x) = {x ∈ U  | p(x) e vero in U }.

Nel linguaggio insiemistico, x ∈ X  significa che x e un elemento di X , oche x appartiene a X ; x ∈ X  significa che x non appartiene a X .

Con la notazione {x ∈ U  | p(x) e vero in U }, si indica l’insieme deglielementi di U  che soddisfano la condizione p(x) in U . Talvolta si scriveanche {x ∈ U  | p(x)} o addirittura {x | p(x)} se e chiaro l’insieme ambienteU .

Con la notazione {x1, . . . , xn} si indica l’insieme i cui elementi sono x1,. . . , xn.

L’insieme {x, y} si chiama coppia (non ordinata) di x e y, che sono gliunici elementi di {x, y}: x ∈ {x, y} e y ∈ {x, y}2, e inoltre z ∈ {x, y} → z =x ∨ z = y. La coppia {x, y} ha due elementi se x = y; altrimenti se x = y neha uno solo, si indica {x} e si chiama anche insieme unitario, o singoletto dix.

L’insieme di verita di p(x) e anche l’insieme definito da p(x) in U . Adesempio, se U  = {a,b,c,d} e p(x) ↔ x = a ∨ x = b, l’insieme definito da p(x)

in U  e {a, b}.Se U  e l’insieme dei numeri naturali e p(x) e la condizione “x e divisibileper 2”, l’insieme di verita di p(x) e l’insieme dei numeri pari, e tale insiemee definito dalla condizione “x e divisibile per 2”.

2Talvolta si scrive x, y ∈ X  per “x ∈ X  e y ∈ X ”.

37

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 42/235

Un insieme di verita e un sottoinsieme di U ; si dice che X  e un sottoin-

sieme di Y , o che e contenuto3 in Y , in simboli X  ⊆ Y , se ogni elemento diX  e anche elemento di Y : per ogni x, se x ∈ X  allora x ∈ Y .

Qualche volta, raramente, si scrive Y  ⊇ X  per X  ⊆ Y .Si dice che X  e un sottoinsieme proprio di Y , e si scrive X  ⊂ Y , se X  ⊆ Y 

ma X  = Y .Se X  ⊆ Y  e Y  ⊆ X  allora X  e Y  hanno gli stessi elementi; questo

per definizione significa che X  = Y . Quello che caratterizza gli insiemi nonsono le loro eventuali definizioni ma i loro elementi; ad esempio l’insieme deitriangoli con due lati uguali e l’insieme dei triangoli con due angoli ugualisono lo stesso insieme. Cosı {x, y} = {y, x}, da cui la dizione “non ordinata”.

Le operazioni insiemistiche principali, sui sottoinsiemi di un insieme U ,sono le seguenti:

Complemento. Il complemento di X  (rispetto a U ) e l’insieme degli elementidi U  che non appartengono a X :

∼ X  = {x ∈ U  | x ∈ X }.

Differenza . La differenza di X  meno Y  e l’insieme degli elementi di U  cheappartengono a X  e non a Y :

X \ Y  = {x ∈ U  | x ∈ X ∧ x ∈ Y }.

Differenza simmetrica . La differenza simmetrica di X  e Y  e l’insieme deglielementi di U  che appartengono a X  e non a Y  o a Y  e non a X :

X Y  = {x ∈ U  | x ∈ X ⊕ x ∈ Y }.

Intersezione . L’intersezione di X  e Y  e l’insieme degli elementi di U  cheappartengono sia a X  sia a Y :

X ∩ Y  = {x ∈ U  | x ∈ X ∧ x ∈ Y }.

3Si distingue tra “essere contenuto”, che si riferisce a sottoinsiemi, ed “appartenere”,che si riferisce ad elementi.

38

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 43/235

∩Y  si legge: “X  intersezione Y ” o “X  intersecato con Y ” o “l’intersezione

di X  e Y ”.

Unione. L’unione di X  e Y  e l’insieme degli elementi di U  che appartengonoad almeno uno dei due insiemi X  e Y :

X ∪ Y  = {x ∈ U  | x ∈ X ∨ x ∈ Y }X ∪ Y  si legge: “X  unione Y ” o “X  unito a Y ” o “l’unione di X  e Y ”.

L’intersezione di X  e Y  e il piu grande insieme che e contenuto sia in X sia in Y , nel senso che

X ∩ Y  ⊆ X 4

X ∩ Y  ⊆ Y 

e

se Z  ⊆ X  e Z  ⊆ Y  allora Z  ⊆ X ∩ Y 

mentre l’unione di X  e Y  e il piu piccolo insieme che contiene sia X  sia Y ,nel senso che

X  ⊆ X ∪ Y 

Y  ⊆ X ∪ Y 

e

se Y  ⊆ X  e Z  ⊆ X  allora Y  ∪ Z  ⊆ X .

Per dimostrare X ∩ Y  ⊆ X  ad esempio, si osservi che se x ∈ X ∩ Y  allorax ∈ X  ∧ x ∈ Y , ma x ∈ X  ∧ x ∈ Y  → x ∈ X , quindi x ∈ X . Inoltrex ∈ X ∧ x ∈ Y  → x ∈ Y , quindi X ∩ Y  ⊆ Y . In modo analogo per le altre.

Nella proprieta di minimalita dell’unione troviamo la spiegazione delloscambio di “e” ed “o” osservato in precedenza in certe frasi. Se si indica

con Y  l’insieme delle mele, con Z  l’insieme delle pere, e con X  l’insieme deifrutti, allora la frase “mele e pere sono frutti”, intesa come “le mele sono

4Si noti che non occorrono parentesi perche non e possibile interpretare questa formulacome X ∩ (Y  ⊆ X ) in quanto si avrebbe un’operazione tra un insieme e una proposizione- un errore di tipo, si dice in logica. Qualche volta le parentesi di mettono per agevolarela lettura.

39

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 44/235

frutti e le pere sono frutti” significa che Y 

⊆X 

∧Z 

⊆X , ma questa implica

Y  ∪ Z  ⊆ X , cioe che “mele o pere sono frutti”.Viceversa, se Y ∪Z  ⊆ X , allora siccome Y  ⊆ Y ∪Z si ha, per la transitivita

di ⊆ - vedi oltre - che Y  ⊆ X  e analogamente Z  ⊆ X , cioe “mele o pere sonofrutti” implica a sua volta “le mele sono frutti e le pere sono frutti”.

Le operazioni insiemistiche corrispondono ai connettivi: l’appartenenza alcomplemento e definita mediante la negazione, l’appartenenza all’intersezionemediante la congiunzione, e cosı via. In analogia, si possono usare le stesseconvenzioni sull’ordine di priorita dei simboli di operazione (∼, ∩, ∪) per !!!

ridurre il numero di parentesi.Viceversa, ai connettivi proposizionali corrispondono le operazioni in-

siemistiche sugli insiemi di verita delle proposizioni componenti.

V ¬ p(x) = ∼ V  p(x)V  p(x)∧q(x) = V  p(x) ∩ V q(x)V  p(x)∨q(x) = V  p(x) ∪ V q(x).

In particolare si ha V x∈X = X .Si puo osservare allora che le operazioni non sono tutte indipendenti, ad

esempio:

X \ Y  = X ∩ (∼ Y ).

Infatti

X \ Y  = {x | x ∈ X ∧ x ∈ Y }= {x | x ∈ X ∧ x ∈∼ Y }= {x | x ∈ X ∩ (∼ Y )}= X ∩ (∼ Y ).

Ma le mutue relazioni delle operazioni le vedremo meglio piu avanti.

L’insieme vuoto ∅ e l’insieme che non ha alcun elemento, ed e un sottoin-sieme di qualsiasi U , definito da una condizione contraddittoria qualunque:

∅ = {x ∈ U | p(x) ∧ ¬ p(x)},

o

40

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 45/235

∅=

{x

∈U 

|x

= x

}.

Se si denotasse questo insieme ∅U  e si definisse ∅V   = {x ∈ V  | x = x} siavrebbe ∅U  = ∅V   perche i due insiemi hanno gli stessi elementi, nessuno perentrambi.

Caratteristica dell’insieme vuoto e che per ogni x, in qualunque U , x ∈ ∅.Due insiemi X  e Y  la cui intersezione sia vuota, X  ∩ Y  = ∅, cioe non

abbiano alcun elemento in comune, si dicono disgiunti .

Le relazioni tra le operazioni insiemistiche sono espresse da un gruppo dileggi.

1 X ∩ X  = X idempotenza dellintersezione2 X ∪ X  = X idempotenza dellunione3 X ∩ Y  = Y  ∩ X commutativita dellintersezione4 X ∪ Y  = Y  ∪ X commutativita dellunione5 X ∩ (Y  ∩ Z ) = (X ∩ Y ) ∩ Z associativita dellintersezione6 X ∪ (Y  ∪ Z ) = (X ∪ Y ) ∪ Z associativita dellunione7 X ∩ (Y  ∪ Z ) = (X ∩ Y ) ∪ (X ∩ Z ) distributivita di ∩ rispetto a ∪8 X ∪ (Y  ∩ Z ) = (X ∪ Y ) ∩ (X ∪ Z ) distributivita di ∪ rispetto a ∩9 X 

∩(X 

∪Y ) = X assorbimento

10 X ∪ (X ∩ Y ) = X assorbimento11 ∼ (∼ X ) = X doppio complemento12 ∼ (X ∩ Y ) = (∼ X ) ∪ (∼ Y ) legge di De Morgan13 ∼ (X ∪ Y ) = (∼ X ) ∩ (∼ Y ) legge di De Morgan14 ∼ ∅ = U 15 ∼ U  = ∅16 X ∩ (∼ X ) = ∅ legge dellinverso per ∩17 X ∪ (∼ X ) = U legge dellinverso per ∪18 X ∩ U  = X legge dellelemento neutro per ∩19 X 

∪U  = U 

20 X ∩ ∅ = ∅21 X ∪ ∅ = X legge dellelemento neutro per ∪ .

Esistono altre leggi che riguardano la relazione ⊆ (alcune gia menzionate),come

41

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 46/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 47/235

5 X 

∩(Y 

∪Z ) = (X 

∩Y )

∪(X 

∩Z ).

Dimostrazione Mostriamo prima che X ∩ (Y ∪Z ) ⊆ (X ∩Y )∪ (X ∩Z ).Se x ∈ X ∩(Y ∪Z ) allora x ∈ X  e x ∈ Y ∪Z . Ci sono due casi: o x ∈ Y o x ∈ Z . Nel primo caso, x ∈ X  e x ∈ Y , quindi x ∈ X ∩ Y , e quindix ∈ (X  ∩ Y ) ∪ (X  ∩ Z ) per la 25, che supponiamo dimostrata5. Nelsecondo caso, x ∈ X  e x ∈ Z , quindi x ∈ X ∩ Z  e quindi x appartienea (X ∩ Y ) ∪ (X ∩ Z ), per la 25 e la 4.

Si mostri ora nello stesso modo (esercizio) che (X ∩ Y ) ∪ (X  ∩ Z ) ⊆X ∩ (Y  ∪ Z ), e l’uguaglianza e provata.

21 X 

∪ ∅= X .

Dimostrazione Se x ∈ X ∪ ∅, allora x ∈ X ∨ x ∈ ∅, ma x ∈ ∅ quindiper il sillogismo disgiuntivo x ∈ X . Il viceversa segue dalla 25.

24 X  ⊆ U .

Dimostrazione x ∈ U  → (x ∈ X  → x ∈ U ) - quale legge logicainterviene?

23 ∅ ⊆ X .

Dimostrazione Per ogni x, x ∈ ∅ → x ∈ X  e vera, qualunque sia X ,perche l’antecedente e falso.

17 X ∪ (∼ X ) = U .

Dimostrazione Per ogni x, x ∈ X ∨ ¬(x ∈ X ) e vera per la legge delterzo escluso. Cosı si dimostra ⊇, il viceversa e 24.

30 X  ⊆ Y  se e solo se X ∩ (∼ Y ) = ∅.

Dimostrazione Se x ∈ X  allora x ∈ Y ; se ora esistesse un x ∈ X ∩(∼ Y )si avrebbe una contraddizione x ∈ Y  e x ∈∼ Y .

Come si vede dagli esempi, alcune proprieta delle operazioni sono di-retta conseguenza delle omonime proprieta dei connettivi corrispondenti; dalterzo esempio relativo alla 5 si vede anche che in dimostrazioni di questotipo fa comodo, per saltare qualche passaggio, fare appello ad altre delleleggi elencate - piu semplici, o intuitive o gia dimostrate. Piu in generale,

5La dimostrazione e implicita nella precedente dimostrazione di 4.

43

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 48/235

una volta dimostrate alcune delle suddette leggi in modo diretto, e possibile

derivare le altre in stile algebrico , usando quelle gia dimostrate e le leggidell’uguaglianza.

Con leggi dell’uguaglianza si intendono le proprieta riflessiva, simmetricae transitiva di =, rappresentate dalle formule

x = xx = y → y = x

x = y ∧ y = z → x = z,

e le proprieta di sostituzione, che sono di due tipi:

t = s → f (t) = f (s),

dove t ed s sono termini del linguaggio in uso, e f (x) un altro termine con-tenente la x, e

t = s → ( p(t) ↔ p(s)),

dove p(x) sta per una proposizione qualunque contenente x.Queste leggi sono tacitamente usate nei passaggi di trasformazione di

formule algebriche, o di proposizioni di qualunque linguaggio che contengal’uguaglianza. I passaggi da un’uguaglianza ad un’altra presuppongono ilmodus ponens

: da t = s a f (t) = f (s) grazie a t = s → f (t) = f (s).Nel caso delle leggi insiemistiche in esame le variabili sono X , Y , . . . inveceche x, y . . . , perche non si riferiscono agli elementi ma ai sottoinsiemi.

Esempi

1. La 15 segue dalla 14 e dalla 11 con i passaggi

∼ ∅ = U 

∼ (∼ ∅) =∼ U 

∅=

∼U 

∼ U  = ∅.

2. La 17 segue dalla 16 e dalle 12, 14, 11, 4, nell’ordine, con i seguentipassaggi

44

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 49/235

∩(

∼X ) =

∅∼ (X ∩ (∼ X )) =∼ ∅(∼ X ) ∪ (∼ (∼ X )) = U 

(∼ X ) ∪ X  = U 

X ∪ (∼ X ) = U .

3. La 18 segue da 17, 7, 1, 16 e 21 con i seguenti passaggi

X ∪ (∼ X ) = U 

U  = X ∪

(∼

X )

X ∩ U  = X ∩ (X ∪ (∼ X ))

X ∩ U  = (X ∩ X ) ∪ (X ∩ (∼ X ))

X ∩ U  = X ∪ ∅X ∩ U  = X .

4. La 31: X  ⊆ Y  se e solo se ∼ X  ∪ Y  = U , segue dalla 30 e da DeMorgan con 11 e 14.

Grazie alla validita delle leggi associative per unione e intersezione, questeoperazioni possono essere generalizzate a piu di due insiemi.

Se A1, . . . , An sono n sottoinsiemi di U , la loro unione e l’insieme i cuielementi sono gli elementi di U  che appartengono a qualche Ai, in simboli:

ni=1

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

o anche n

i=1 Ai, o semplicemente

Ai.

L’intersezione generalizzata degli n insiemi e l’insieme degli elementi cheappartengono a tutti gli Ai, in simboli:

45

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 50/235

ni=1

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

o anche n

i=1 Ai, o semplicemente

Ai.

Per queste operazioni generalizzate valgono molte delle leggi dell’unionee intersezione, opportunamente riformulate, ad esempio le proprieta commu-tativa, associativa e di assorbimento; valgono le leggi di De Morgan:

∼(n

i=1

Ai) = n

i=1

(∼

Ai)

e

∼ (n

i=1 Ai) =n

i=1(∼ Ai).

Valgono le leggi distributive di una operazione generalizzata rispetto a unanormale (non con entrambe generalizzate):

(ni=1

Ai) ∪ B =ni=1

(Ai ∪ B)

e

(ni=1

Ai) ∩ B =ni=1

(Ai ∩ B).

Piu in generale ancora, si definisce l’unionei∈I 

Ai o{Ai | i ∈ I }

per una famiglia di insiemi indiciata6 da I  ponendo che

x ∈ i∈I Ai se e solo se esiste un i ∈ I  per cui x ∈ Ai,

e analogamente per l’intersezione. La definizione come si vede e la stessa,con “i ∈ I ” al posto di “1 ≤ i ≤ n”.

6Si chiama cosı e si indica anche con {Ai}i∈I  un insieme i cui elementi corrispondonociascuno a un elemento di un insieme I . Si veda alla fine del paragrafo 5.

46

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 51/235

4.3 Algebre di Boole

Indagando la reciproca derivabilita delle varie leggi, ci si accorge che tutte(sia quelle elencate che altre, quelle che sono valide per ogni famiglia disottoinsiemi di un insieme) sono derivabili dalle seguenti:

3 X ∩ Y  = Y  ∩ X commutativita dellintersezione4 X ∪ Y  = Y  ∪ X commutativita dellunione5 X ∩ (Y  ∩ Z ) = (X ∩ Y ) ∩ Z associativita dellintersezione6 X ∪ (Y  ∪ Z ) = (X ∪ Y ) ∪ Z associativita dellunione

7 X ∩ (Y  ∪ Z ) = (X ∩ Y ) ∪ (X ∩ Z ) distributivita di ∩ rispetto a ∪8 X ∪ (Y  ∩ Z ) = (X ∪ Y ) ∩ (X ∪ Z ) distributivita di ∪ rispetto a ∩9 X ∩ (X ∪ Y ) = X assorbimento

10 X ∪ (X ∩ Y ) = X assorbimento16 X ∩ ∼ X  = ∅ legge dellinverso per ∩17 X ∪ ∼ X  = U legge dellinverso per ∪18 X ∩ U  = X legge dellelemento neutro per ∩21 X ∪ ∅ = X legge dellelemento neutro per ∪ .

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

assiomi non e arbitraria (ci sono ragioni di analogia con altri sistemi di as-siomi per altre strutture) ma non e univoca. Abbiamo visto ad esempio chese ci fosse la 1, la 18 sarebbe superflua. L’importante e la mutua e varia in-terderivabilita delle leggi tra loro, e che tutte le leggi valide per i sottoinsiemidi un insieme non vuoto U  siano derivabili da quelle scelte come assiomi. Laraccolta di queste negli assiomi e solo, inizialmente, una comodita mnemon-ica.

L’insieme dei sottoinsiemi di un insieme non vuoto U , con le operazioni∼, ∩, ∪ e gli elementi speciali ∅ e U  e una particolare algebra di Boole, chesi chiama algebra di insiemi .

Vediamo come si derivano dagli assiomi alcune delle altre leggi primaelencate.

1 X  = X ∩ X 

47

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 52/235

X  = X ∩ U per la 18

X  = X ∩ (X ∪ ∼ X ) per la 17X  = (X ∩ X ) ∪ (X ∩ ∼ X ) per la 7X  = (X ∩ X ) ∪ ∅ per la 16X  = X ∩ X per la 21

2 X  = X ∪ X  (esercizio)

20 X ∩ ∅ = ∅X ∩ ∅ = (X ∪ ∅) ∩ ∅ per la 21X ∩ ∅ = ∅ ∩ (∅ ∪ X ) per la 3 e la 4X 

∩ ∅=

∅per la 9

19 X ∪ U  = U  (esercizio).

Prima di considerare altre leggi, occorre dimostrare l’unicita  degli ele-menti neutri e del complemento. Per quello dell’intersezione, questo significa:

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

Dimostrazione Sostituendo U  a Y  si ha X ∩ U  = U  ma X ∩ U  = X  perla 18, quindi X  = U .

Per l’elemento neutro dell’unione, l’unicita significa:

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

L’unicita del complemento, o dell’inverso, e la proprieta che:

36 Se X ∩ Y  = ∅ e X ∪ Y  = U  allora X  =∼ Y .

Dimostrazione

X  = X ∩ U per la 18= X ∩ (Y ∪ ∼ Y ) per la 17= (X 

∩Y )

∪(X 

∩ ∼Y ) per la 7

= ∅ ∪ (X ∩ ∼ Y ) per lipotesi= (Y ∩ ∼ Y ) ∪ (X ∩ ∼ Y ) per la 16= (Y  ∪ X )∩ ∼ Y per la 7= U ∩ ∼ Y per lipotesi=∼ Y per la 18.

48

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 53/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 54/235

2. Dimostrare le proprieta 22 - 33 della relazione

⊆, a partire dagli assiomi,

usando 28 come definizione di ⊆7.

3. Lo stesso, usando una volta 29, una volta 30 e una volta 31 comedefinizione di ⊆

4. Dimostrare, a partire dagli assiomi delle algebre di Boole, tutte le altreleggi sopra elencate per le operazioni di un’algebra di insiemi.

4.4 Algebra delle proposizioni

Due altre notevoli algebre di Boole sono importanti, l’algebra 2 e l’algebra

delle proposizioni.Quando si dice che gli assiomi sopra elencati sono gli assiomi delle algebre

di Boole, non si intende che i simboli di operazioni usati nella formulazionedegli assiomi denotino le operazioni insiemistiche di unione, intersezione ecomplemento; altrimenti le uniche algebre di Boole sarebbero le algebre diinsiemi. S’intende solo che siano operazioni rispettivamente binarie (le primedue) e unaria (la terza), e che soddisfino le proprieta espresse dagli assiomi.Puo essere utile addirittura riscrivere gli assiomi con altri simboli8:

x ◦ y = y ◦ x commutativitax + y = y + x commutativitax ◦ (y ◦ z) = (x ◦ y) ◦ z associativitax + (y + z) = (x + y) + z associativitax ◦ (y + z) = (x ◦ y) + (x ◦ z) distributivitax + (y ◦ z) = (x + y) ◦ (x + z) distributivitax ◦ (x + y) = x assorbimentox + (x ◦ y) = x assorbimentox ◦ (−x) = 0 inversox + (−x) = 1 inverso

x ◦ 1 = x elemento neutrox + 0 = x elemento neutro

7La 22 e la 27, insieme a “X  = Y  se e solo se X  ⊆ Y  e Y  ⊆ X ” stabiliscono che ⊆ euna relazione di ordine parziale, secondo la definizione che sara data nel paragrafo 5.

8Con l’ordine di priorita −, ◦, +.

50

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 55/235

e indicare la relazione definita da x

◦y = x con

≤.

Si ha 0 ≤ x ≤ 1 per ogni x (esercizio). La relazione ≤ e un ordine parzialeper l’esercizio 1 di 4.3.1.

L’algebra 2 e l’algebra il cui universo e {0, 1} con 0 < 1, rappresentatadal diagramma

1↑0

dove ↑ e < e x + y = max{x, y} e x ◦ y = min{x, y}.L’algebra 2 e l’algebra dei valori di verita. Le sue tre operazioni sono

quelle che intervengono nel calcolo dei valori di verita di negazioni, disgiun-zioni e congiunzioni.

Esistono altre algebre di Boole finite, come ad esempio l’algebra 4

1

a b

0

dove a e b sono inconfrontabili rispetto a ≤; ≤ e proprio parziale.Esercizio: definire le operazioni in modo che questa struttura diventi

un’algebra di Boole.Esercizio. Dimostrare che e l’algebra dei sottoinsiemi di un universo con

due elementi.

L’algebra delle proposizioni  si ottiene nel seguente modo; gia si sono di-mostrate (considerando anche gli esercizi) quasi tutte le leggi logiche chehanno lo stesso nome degli assiomi delle algebre di Boole:

A ∧ B ↔ B ∧ A commutativitaA

∨B

↔B

∨A commutativita

A ∧ (B ∧ C ) ↔ (A ∧ B) ∧ C associativitaA ∨ (B ∨ C ) ↔ (A ∨ B) ∨ C associativitaA ∧ (B ∨ C ) ↔ (A ∧ B) ∨ (A ∧ C ) distributivitaA ∨ (B ∧ C ) ↔ (A ∨ B) ∧ (A ∨ C ) distributivitaA ∧ (A ∨ B) ↔ A assorbimentoA ∨ (A ∧ B) ↔ A assorbimento.

51

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 56/235

Le equivalenze non sono uguaglianze ma si possono trasformare in vereuguaglianze tra (nuovi) oggetti con la seguente costruzione.

La relazione ≡ e una relazione di equivalenza , vale a dire soddisfa leproprieta:

A ≡ A rif lessivase A ≡ B allora B ≡ A simmetricase A ≡ B e B ≡ C allora A ≡ C transitiva.

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

[A] = {B | A ≡ B}e si ha che

[A] = [B] se e solo se A ≡ B

(esercizio).Date due proposizioni A e B, esse o sono logicamente equivalenti o no.

Nel primo caso, [A] = [B]. Nel secondo caso le due classi [A] e [B] sonodisgiunte: se infatti ci fosse un elemento C  in comune, vorrebbe dire cheA ≡ C  e che B ≡ C , ma allora per la transitivita si avrebbe A ≡ B e[A] = [B].

A si dice un rappresentante della classe [A]; ogni classe ha piu rappresen-tanti, anzi infiniti. Se B ∈ [A] allora B ≡ A quindi [A] = [B] e B e un altrorappresentante di [A]. In particolare ad esempio [A] = [A∧A] = [A∧A∧A] . . .

Si possono definire tra queste classi le seguenti operazioni:

−[A] = [¬A][A] ◦ [B] = [A ∧ B][A] + [B] = [A ∨ B].

Le definizioni sono ben poste, in questo senso. Si tratta di operazioni sulleclassi, ma la loro definizione fa riferimento ad un particolare rappresentantedelle classi. Ad esempio −[A] e definita con ¬A e non ad esempio con ¬¬¬A.Se si cambia il rappresentante di una classe, si vuole che il risultato, che euna classe, sia lo stesso.

52

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 57/235

In effetti e cosı per le operazioni sopra definite. Ad esempio se A1

≡A

e B1 ≡ B, siccome A1 ∧ B1 ≡ A ∧ B (esercizio - si veda anche paragrafo6.1) si ha [A1] ◦ [B1] = [A ∧ B], cosı come [A] ◦ [B] = [A ∧ B], quindi[A1] ◦ [B1] = [A] ◦ [B].

Si giustifica in questo modo la dizione “a meno di equivalenza” con cui unaproposizione e considerata uguale ad ogni altra ad essa logicamente equiva-lente, o almeno indistinguibile da quelle, ai fini della trattazione semantica.

Date queste definizioni, le precedenti equivalenze danno allora origine alleuguaglianze:

[A] ◦ [B] = [B] ◦ [A] commutativita di ◦[A] + [B] = [B] + [A] commutativita di +[A] ◦ ([B] ◦ [C ]) = ([A] ◦ [B]) ◦ [C ] associativita di ◦[A] + ([B] + [C ]) = ([A] + [B]) + [C ] associativita di +[A] ◦ ([B] + [C ]) = ([A] ◦ [B]) + ([A] ◦ [C ]) distributivita[A] + ([B] ◦ [C ]) = ([A] + [B]) ◦ ([A] + [C ]) distributivita[A] ◦ ([A] + [B]) = [A] assorbimento[A] + ([A] ◦ [B]) = [A] assorbimento.

Tutte le tautologie sono tra loro equivalenti, e non equivalenti a nessunaproposizione non logicamente valida; lo stesso per le contraddizioni; denoti-

amo con 1 la classe delle tautologie, e con 0 la classe delle contraddizioni.Allora [A] ◦ (−[A]) = [A ∧ ¬A] = 0 e [A] + (−[A]) = [A ∨ ¬A] = 1 e

possiamo quindi aggiungere:

[A] ◦ (−[A]) = 0 inverso[A] + (−[A]) = 1 inverso[A] ◦ 1 = [A] elemento neutro[A] + 0 = [A] elemento neutro

completando la lista degli assiomi delle algebre di Boole.

Le ultime due leggi seguono dal fatto (o lo esprimono in altra forma) chese T  e una tautologia A∧T  ≡ A e se F  e una contraddizione allora A∨F  ≡ A.

La relazione [A] ≤ [B] e definita da [A]◦[B] = [A], oppure dall’equivalente9

[A] ◦ −[B] = 0.

9O anche da [A]+[B] = [B] - a seconda dei casi converra usare l’una o l’altra definizione.

53

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 58/235

Inseriamo qui una dimostrazione dell’equivalenza tra due definizioni di

≤,

dove si notera l’analogia formale con quella fatta in 4.3.1 per la definizionedi ⊆ (la 28 e la 30 dell’algebra degli insiemi).

Se

x ◦ y = x

allora

1 = x + (−x)1 = (x ◦ y) + (−x)

1 = (x + (−x)) ◦ (y + (−x))1 = (y + (

−x)

0 = x ◦ (−y).

Viceversa se

x ◦ (−y) = 0

allora

x = x ◦ 1x = x ◦ (y + (−y))

x = (x ◦ y) + (x ◦ (−y))x = x

◦y.

Esercizio. Dimostrare l’equivalenza con la (versione corrispondente della) 29.

Dall’equivalenza booleana delle due definizioni di ≤ si deriva la seguenteproprieta logica, che

A ≡ A ∧ B se e solo se |= A → B.

Una dimostrazione logica di questo fatto ricalca la dimostrazione algebricadi sopra. Si noti che [A] = 0 significa che A e una contraddizione.

Allora la seguente e una deduzione del fatto che |= A → B segue daA

≡A

∧B:

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

(A ∨ ¬A) ∧ (B ∨ ¬AB ∨ ¬AA → B.

54

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 59/235

Ogni proposizione o e una tautologia o segue logicamente dalle precedenti e

da A ≡ A ∧ B, quindi l’ultima e una tautologia.Viceversa, se A ∧ ¬B e una contraddizione

A ↔ A ∧ (B ∨ ¬B)A ↔ (A ∧ B) ∨ (A ∧ ¬B)

A ↔ A ∧ B.

Esercizio. Dimostrare in modo analogo che A ≡ A∨B se e solo se |= B → A.

La corrispondenza tra le deduzioni algebriche e quelle logiche e fondatasulla corrispondenza tra [A] ≤ [B] e |= A → B.

Il fatto che per ogni A, 0≤

[A]≤

1 corrisponde al fatto che una con-traddizione implica qualsiasi proposizione, e una tautologia e implicata daqualsiasi proposizione.

La relazione booleana ≤ ha le seguenti proprieta, che se a ≤ b allora−b ≤ −a e per ogni c, c ◦ a ≤ c ◦ b e c + a ≤ c + b (esercizio).

Queste proprieta corrispondono per l’implicazione al fatto che se |= A →B allora |= ¬B → ¬A e per ogni C , |= C ∧ A → C ∧ B e |= C ∨ A → C ∨ B(esercizio).

La proprieta transitiva di ≤ corrisponde alla transitivita del condizionale,mentre la proprieta di sostituzione t = s → f (t) = f (s) corrisponde adun’analoga proprieta logica: se in una proposizione si sostituisce una sotto-proposizione con una equivalente, il risultato e una proposizione equivalentea quella iniziale.

Conviene indicare l’operazione di rimpiazzamento di una sottopropo-sizione B con C  in una proposizione A, con la notazione: A[B//C ].

Si ha allora che

se B ≡ C  allora A ≡ A[B//C ].

Nell’esempio di sopra A ∨ ¬A ≡ (A ∧ B) ∨ ¬A poiche A ≡ A ∧ B.Nella dimostrazione, per trattare i vari casi, si fa uso dei seguenti fatti

Per ogni A e B,se A ≡ B, allora ¬A ≡ ¬Bse A1 ≡ A2 e B1 ≡ B2, allora A1 • B1 ≡ A2 • B2

che si dimostrano facilmente con le tavole di verita per i vari connettivi.

55

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 60/235

4.5 Rapporti tra proposizioni e insiemi

I rapporti tra algebra degli insiemi con operazioni insiemistiche, logica propo-sizionale con connettivi e algebra boleana sono molteplici e bidirezionali.Sostanzialmente l’argomento e sempre lo stesso, con varianti formali, e a sec-onda delle preferenze si puo adottare l’uno o l’altro dei tipi di simbolismocoinvolti; la familiarita con l’uno aiuta anche nello svolgimento dell’altro, mail ragionamento e identico.

Abbiamo visto come, per dimostrare le leggi dell’algebra degli insiemi(cioe identita valide per tutti i sottinsiemi di un qualunque insieme non vuotoU ), procedendo direttamente in base alla definizione di uguaglianza tra in-siemi (X  = Y  se e solo se X 

⊆Y  e Y 

⊆X ) ci si riconduca ad applicare leggi

logiche a proposizioni costruite su atomiche della forma x ∈ X, x ∈ Y , . . .

Si possono anche al contrario derivare le leggi logiche dalle leggi dell’algebradegli insiemi.

In generale due proposizioni (con o senza la x) logicamente equivalenti10

hanno lo stesso insieme di verita in ogni U .Supponiamo infatti che p(x) sia equivalente a q(x). Allora siccome p(x) →

q(x) e q(x) → p(x) sono sempre vere, V  p(x)→q(x) e V q(x)→ p(x) sono entrambiuguali a U ; ma siccome V  p(x)→q(x) = (∼ V  p(x)) ∪ V q(x), se questo e uguale a U allora V  p(x) ⊆ V q(x) e viceversa, quindi V  p(x) = V q(x).

Vale anche il viceversa; diciamo che una proposizione p(x) e valida in U se V  p(x) = U ; allora se V  p(x) = V q(x) in U  si ha che p(x) ↔ q(x) e valida in U .Basta ripercorrere all’indietro i precedenti passaggi.

Supponiamo allora di voler dimostrare |= ¬( p ∨ q) ↔ ¬ p ∧ ¬q.Pensiamo ad un insieme qualunque U  (che non c’e bisogno di precisare,

in accordo col fatto che usiamo leggi valide per insiemi qualunque). Conside-riamo i sottoinsiemi V  p = {x ∈ U  | p } e V q = {x ∈ U  | q }. Non importa che p e q contengano o no la x; basta che valga, per definizione, che x ∈ V  p ↔ p,cioe che V  p sia definito ponendo che x ∈ V  p e vero se e solo se p e vero. Se p non contiene x, p o e vera o e falsa, indipendentemente da x. In tal casoV  p =

{x

∈U 

|p}

o e∅

o e U .Dalla definizione di insieme di verita e dalla legge insiemistica

∼ (V  p ∪ V q) = (∼ V  p) ∩ (∼ V q),

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

56

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 61/235

cioe

x ∈∼ (V  p ∪ V q) se e solo se x∈ (∼ V  p) ∩ (∼ V q),

segue, siccome x ∈∼ (V  p ∪ V q) se e solo se ¬( p ∨ q), e analogamente perx ∈ (∼ V  p) ∩ (∼ V q), che

¬( p ∨ q) ↔ ¬ p ∧ ¬q

e vero qualsiasi siano p e q, la cui verita o falsita non gioca alcun ruolo nelladimostrazione11.

Un altro modo piu semantico e il seguente. Siccome p e q non contengono

la x, gli insiemi V  p = {x ∈ U  | p } e V q = {x ∈ U  | q } come abbiamo dettosono o ∅ o U .

Possiamo interpretare allora ∼ (V  p∪V q) = (∼ V  p)∩(∼ V q) o direttamente¬( p ∨ q) ≡ ¬ p ∧ ¬q nell’algebra 2, riscrivendola formalmente come

−(x + y) = −x ◦ −y,

che e una legge valida in 2. Questo significa che comunque si sostituiscano ivalori 0 o 1 a x e y l’uguaglianza vale, e questo e un altro modo di dire checomunque si diano a p e q i valori 0 o 1 si ottiene che ¬( p ∨ q) e ¬ p ∧ ¬qhanno lo stesso valore, cioe la tavola del bicondizionale ¬( p ∨ q) ↔ ¬ p ∧ ¬q

ha tutti 1 nella colonna finale.

Un ragionamento semantico del genere puo sostituire il modo di procedereformale diretto, in cui una deduzione algebrica viene trasformata in unalogica, come negli esempi di 4.4; occorre prestare attenzione alle insidie delleanalogie formali quando e coinvolta la relazione ≤.

Consideriamo la seguente dimostrazione booleana di una proprieta di x◦yche formalmente corrisponde alla massimalita dell’intersezione:

se z ≤ x e z ≤ y allora z ≤ x ◦ y.

Algebricamente, nel senso delle algebre di Boole, sez ◦ (−x) = 0

e

11Si vede in particolare che le leggi logiche dimostrate per il linguaggio proposizionalecostruito astrattamente sulle lettere, valgono anche per proposizioni contententi variabili.

57

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 62/235

z

◦(

−y) = 0

allora

z ◦ (−x) + z ◦ (−y) = 0z ◦ (−x + −y) = 0

z ◦ −(x ◦ y) = 0z ≤ x ◦ y.

Si conclude quindi correttamente che

z ≤ x ∧ z ≤ y → z ≤ x ◦ y

vale in tutte le algebre di Boole.Poiche sappiamo che ≤ corrisponde a →, siamo tentati di scrivere

|= (C  → A) ∧ (C  → B) → (C  → A ∧ B),

ottenendo in tal modo la versione corrispondente della massimalita dellacongiunzione.

Ma questo passaggio non e corretto. Infatti se interpretiamo direttamentela legge booleana z ≤ x ∧ z ≤ y → z ≤ x ◦ y nell’algebra delle proposizionidobbiamo scrivere

[C ] ≤ [A] ∧ [C ] ≤ [B] → [C ] ≤ [A ∧ B],

che equivale a

se [C  → A] = 1 e [C  → B] = 1 allora [C  → A ∧ B] = 1,

o

se |= C  → A e |= C  → B allora |= C  → A ∧ B.

Questa affermazione e diversa e piu debole di quella voluta (spiegare perche).Per ricavare booleanamente la legge della massimalita della congiunzione

ci sono due strade. Bisogna dimostrare che e uguale a 1 l’elemento booleanocorrispondente alla proposizione in questione; siccome essa contiene il con-dizionale, una possibilita e quella di eliminare il condizionale a favore di altriconnettivi booleani, quindi ad esempio di dimostrare che

−((−z + x) ◦ (−z + y)) + (−z + x ◦ y) = 1;

58

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 63/235

ma

(−z + x) ◦ (−z + y)) = −z + x ◦ y

per la proprieta distributiva, quindi ci si riduce a −a + a = 1, che e vero.Altrimenti, si puo associare anche al connettivo → un’operazione booleana

(non un’asserzione quale e x◦ (−y) = 0), come per negazione, congiunzione e !!!

disgiunzione. L’operazione binaria x ⇒ y associata12 a → e introdotta comeci si aspetta con la definizione

x ⇒ y = −x + y.

Si ha che x⇒

y = 1 se e solo se x≤

y (esercizio).La legge proposizionale |= (C  → A)∧(C  → B) → (C  → A∧B) si ottiene

dimostrando che

((z ⇒ x) ◦ (z ⇒ y)) ⇒ (z ⇒ (x ◦ y)) = 1

nel seguente modo:

(z ⇒ x) ◦ (z ⇒ y) = (−z + x) ◦ (−z + y)= −z + (x ◦ y)= z ⇒ x ◦ y

quindi

(z ⇒ x) ◦ (z ⇒ y) = z ⇒ (x ◦ y).Ma si noti che se a = b allora a ≤ b e quindi a ⇒ b = 1, e anche b ⇒ a = 1.

Quindi risulta dalla dimostrazione anche il viceversa, e in effetti

|= (C  → A) ∧ (C  → B) ↔ (C  → A ∧ B).

Le mutue relazioni illustrate tra insiemi, algebre di Boole e proposizioniche secondo gli assiomi valgono per le proposizioni scritte con i connettivi¬, ∧, ∨ si estendono a tutte le proposizioni che contengono gli altri connettiviche sono definibili in termini di questi, come

⊕,

→,

↔.

12Questo e il motivo per cui non usiamo questo segno per indicare l’implicazione |= A →B, che booleanamente corrisponde all’asserzione x ≤ y.

59

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 64/235

5 Relazioni

5.1 Prodotto cartesiano

Un’operazione su insiemi diversa, e in un certo senso piu importante, di quellebooleane e il prodotto cartesiano di due insiemi.

Si indica x, y la coppia ordinata di x e y, e x e y si chiamano rispet-tivamente prima e seconda componente di x, y. La coppia ordinata e bendiversa dalla coppia non ordinata {x, y}, per cui vale {x, y} = {y, x} e nonha senso parlare di primo o secondo elemento. Invece x, y = y, x a menoche non sia x = y; inoltre x, y = z, u se e solo se x = z e y = u1.

Il prodotto cartesiano di X  e Y  e

X × Y  = {x, y | x ∈ X e y ∈ Y }.

L’operazione × e diversa da quelle booleane in quanto se anche X  ⊆ U e Y  ⊆ U , X  × Y  non e un sottoinsieme di U ; e un insieme di elementistrutturati, in generale un insieme piu ricco; se ad esempio U  e la rettanumerica2, U × U  e il piano (cartesiano), dove ogni punto e individuato dallesue due coordinate, che sono le due componenti della coppia, e sono detteascissa  la prima componente, ordinata  la seconda. Le coppie x, x formanola diagonale di U .

Esempio Se X  e {a, b, c, . . . , h} e Y  e {1, 2, 3, . . . , 8}, X  × Y  si puoidentificare con la scacchiera.

Se X  e Y  sono due insiemi finiti, il numero di elementi di X  × Y  e ilprodotto del numero di elementi di X  e del numero di elementi di Y , da cuiil nome.

Il prodotto cartesiano di due insiemi non e commutativo3.

1Non spieghiamo l’artificio con cui si definisce la coppia ordinata; si ricordi tuttaviache x e y non sono elementi di x, y, e infatti si chiamano componenti, o proiezioni.

2Con “retta numerica” si intende di solito l’insieme dei numeri reali; tuttavia a secondadel contesto puo anche significare un altro sistema numerico. Ricordiamo che gli insiemi

dei numeri naturali, interi, razionali e reali si indicano usualmente con N, Z, Q, R. Sela retta numerica e N o Z, il piano e il reticolo infinito dei punti a coordinate naturali, ointere.

3Non e neanche associativo, anche se X × (Y ×Z ) e (X ×Y ) ×Z  possono essere messiin corrispondeza biunivoca e identificati; quindi con una opportuna definizione delle ternex,y,z si puo definire il prodotto a tre fattori X × Y  × Z , e anche quello a n fattori conle n-uple come elementi.

60

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 65/235

Il prodotto X 

×X  si indica anche con X 2, e X 

× · · · ×X       n

con X n, insieme

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

5.2 Relazioni

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

Se X  = Y  una relazione R ⊆ X × X  si dice anche relazione in  X .La rappresentazione grafica usuale delle relazioni e quella per mezzo di

un diagramma cartesiano, come il seguente:

··········

··········

··········

··········

··········

··········

··········

··········

··········

••

••

1

2

X     /     /

Y   O O

dove X  = {0, . . . , 8} e Y  = {0, . . . 9} e la relazione e {x, y | y = 2x}.Se gli insiemi sono infiniti, se ne puo indicare solo una porzione; ad es-

empio la diagonale

·········

·········

·········

·········

·········

········

·········

·········

·········

••

••

••

Z    /     /

Z  O O

rappresenta la relazione {x, y ∈ Z×Z | x = y } solo in una regione limitatadel piano a coordinate intere, ma si intende che va estesa uniformemente

61

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 66/235

all’infinito.

Esempi

La relazione di paternita e una relazione nell’insieme del genere umano,l’insieme di tutte le coppie x, y dove x e un maschio che ha generato, e yuno dei suoi figli.

La relazione di discendenza genealogica nell’insieme del genere umano el’insieme di tutte le coppie x, y dove x e un antenato (maschile o femminile)di y.

La relazione di divisibilita4 {x, y ∈ N× N | x | y } tra numeri naturalie rappresentata, nell’area limitata disegnata, dal diagramma:

··

········

··

········

··

········

··

········

··

········

··

········

··

········

··

········

··

········

··

········

••••••••

•••

••

••

• • • • • • • • • N    /     /

N  O O

La relazione {x, y ∈ Z× Z | x = y2} e parzialmente rappresentata da

4Con x | y indichiamo che esiste uno z tale che xz = y, e diciamo che x divide y o e undivisore di y o che y e divisibile per x, o y e un multiplo di x. Con questa definizione x | 0perche x0 = 0, mentre escludiamo 0 | 0, che pure rientrerebbe nella definizione, perchequando si introduce la divisione si vuole l’uncita del quoziente z in xz = y, mentre 0z = 0per ogni z.

62

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 67/235

···········

···········

···········

···········

···········

···········

··········

···········

···········

···········

···········

•••

Z    /     /

Z  O O

La relazione {x, y ∈ Z × Z | xy = 4} e un insieme finito i cui elementisono tutti indicati nel grafico:

···········

···········

···········

···········

···········

···········

··········

···········

···········

···········

···········

••

••

·•Z    /     /

Z  O O

mentre {x, y ∈ Q × Q | xy = 4} e un insieme infinito; alcuni suoi punti5

sono indicati nel grafico:

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

63

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 68/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 69/235

Z

×Z

|xy = 1

2

}?

5.3 Relazioni d’ordine

Data una relazione R ⊆ X × Y  si chiama dominio di R l’insieme

dom(R) = {x ∈ X  | esiste un y ∈ Y  tale che x, y ∈ R } ⊆ X 

e si chiama immagine l’insieme

im(R) = {y ∈ Y  | esiste un x ∈ X  tale che x, y ∈ R } ⊆ Y .

Se R e una relazione in U  si ha sia dom(R)⊆

U  sia im(R)⊆

U . L’unionedom(R) ∪ im(R) si chiama anche campo di R e si denota campo(R)6.

Esempio Nella relazione di paternita il dominio e l’insieme di tutti gliuomini che hanno generato, l’immagine l’insieme di tutti gli uomini e tuttele donne7.

Le relazioni si distinguono e si classificano in base ad alcune proprieta dicui possono o no godere.

Una relazione R in un insieme U  soddisfa la proprieta riflessiva  se perogni x ∈ campo(R) x, x ∈ R. Invece si dice antiriflessiva  se per ognix ∈ campo(R) x, x ∈ R.

Una relazione R in un insieme U  soddisfa la proprieta transitiva  se perogni x,y,z ∈ campo(R), se succede che x, y ∈ R e y, z ∈ R allora anchex, z ∈ R.

Una relazione R in un insieme U  soddisfa la proprieta simmetrica  se perogni x e y ∈ campo(R), se succede che x, y ∈ R allora anche y, x ∈ R. Unarelazione e simmetrica se e uguale alla sua simmetrica (nel piano, rispettoalla diagonale) che si ottiene scambiando ogni coppia x, y con y, x.

Invece una relazione R si dice antisimmetrica  se x, y ∈ R e x = yimplicano y, x ∈ R, o in modo equivalente, per contrapposizione, se x, y ∈R e y, x ∈ R implicano x = y.

EsempiLa relazione di paternita e antiriflessiva e non e transitiva, ed e antisim-

metrica. La relazione di discendenza e transitiva.

6La notazione non e standard.7Qualcuno puo non essere d’accordo sul caso critico di Adamo ed Eva, se ci crede; non

consideriamo i problemi della clonazione.

65

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 70/235

Le relazioni

{x, y

|xy = 4

}e

{x, y

|x = y

}sono simmetriche. La

relazione {x, y | x = y2} non lo e.La relazione di conseguenza logica, nell’insieme delle proposizioni, e rif-

lessiva (legge dell’identita) e transitiva (transitivita del condizionale).

Un tipo importante di relazioni e quello costituito dalle relazioni d’ordine. !!!

Una relazione R in un insieme U  si chiama relazione d’ordine se soddisfa leproprieta riflessiva, transitiva e antisimmetrica per gli elementi nel campo(R).Si dice anche che R e un ordine in U , un ordine del campo(R).

Per le relazioni d’ordine si suole usare il simbolo ; le condizioni a cuideve soddisfare sono dunque

x xx y ∧ y z → x zx y ∧ y x → x = y.

Se a queste si aggiunge la condizione che due elementi qualunque siano con-frontabili:

x y ∨ y x

per ogni x, y ∈ campo(), che si chiama anche condizione di connessione,allora

e un ordine totale di campo(

).

Altrimenti, se non e verificata la condizione di connessione, si parla diordine parziale.

Un insieme U  si dice totalmente, o parzialmente ordinato, se esiste unarelazione in U  con campo() = U  che e un ordine totale o rispettivamenteparziale. Un insieme ordinato si indica spesso con la coppia U, , che mettein evidenza la relazione d’ordine.

Esempi

L’insieme N con la relazione ≤ e totalmente ordinato.L’insieme {0, 1, . . . n} con la relazione ≤ e totalmente ordinato.La relazione

⊆nell’insieme dei sottoinsiemi di U  e un ordine parziale.

Un albero e un insieme parzialmente ordinato.Un ramo di un albero e un insieme totalmente ordinato, e chiuso verso il

basso8.

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

66

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 71/235

Dato un ordine

si puo sempre introdurre una nuova relazione

con la

definizione x y ↔ x y ∧ x = y, che risulta antiriflessiva, antisimmetricae transitiva. Viceversa, data una relazione antiriflessiva, antisimmetricae transitiva, si puo definire x y ↔ x y ∨ x = y e si ha una relazioned’ordine (si veda 7.3).

Un maggiorante di x - rispetto a un ordine U, - e un elemento y ∈ U tale che x y. Il maggiorante e stretto, o proprio, se x = y.

Un minorante di x e un elemento y ∈ U  tale che y x. Il minorante estretto, o proprio, se x = y.

Dato un insieme totalmente o parzialmente ordinato U, , un elementox

∈U  si dice minimo - rispetto all’ordine - se x

y per ogni y

∈U . Si dice

massimo se y x per ogni y ∈ U .Dato X  ⊆ U , un minimo di X  e un elemento x ∈ X  tale che x y per

ogni y ∈ X ; simmetricamente per il massimo.Il minimo di un insieme X  e unico; analogamente il massimo.

Dato un insieme parzialmente ordinato U, , un elemento x ∈ U  si diceminimale - rispetto all’ordine - se non ha minoranti propri. Si dice massimale

se non ha maggioranti propri.Se X  ⊆ U , un elemento minimale di X  e un elemento x ∈ X  tale che

per nessun y ∈ X , y = x si ha y x, cioe che non ha minoranti propri

appartenenti a X ; simmetricamente per un elemento massimale. Gli elementiminimali o massimali non sono necessariamente unici.

Esempi

La relazione d’ordine totale ≤ nell’insieme dei numeri naturali ha un min-imo, nessun massimo. Negli altri insiemi numerici degli interi, dei razionalie dei reali9 ≤ e un ordine totale senza ne minimo ne massimo.

La relazione d’ordine parziale ⊆ nell’insieme dei sottinsiemi di un insiemeU  ha un massimo U  e un minimo ∅. Nell’insieme dei sottoinsiemi non vuoti diU  esistono tanti elementi minimali, gli {x}, quanti sono gli elementi x ∈ U .Nell’insieme di tutti gli insiemi contenuti sia in X  sia in Y  l’intersezione

X ∩ Y  e il massimo.In generale, in un’algebra di Boole, la relazione {x, y | x ◦−y = 0} e un

ordine parziale con minimo 0 e massimo 1.

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

67

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 72/235

Dato un insieme X 

⊆campo(

), un elemento x

∈U , anche non apparte-

nente a X , si dice maggiorante di X  se y x per ogni y ∈ X ; simmetrica-mente per il minorante.

Se esiste il minimo dell’insieme dei maggioranti di X , questo elemento diU  si chiama estremo superiore di X ; il massimo dell’insieme dei minoranti,se esiste, si chiama estremo inferiore di X .

Esempio√

2 e in R l’estremo superiore dell’insieme {x ∈ Q | x2 < 2}.Tale insieme non ha estremo superiore in Q.

Un ordine si dice discreto se per ogni elemento x che abbia maggiorantipropri esiste un elemento z, che si puo chiamare successore immediato, taleche x

z e per nessun v sia x

v

z, e per ogni elemento x che ab-

bia minoranti propri esiste un elemento y, che si puo chiamare predecessoreimmediato, tale che y x e per nessun u sia y u x.

      t t t t   tzxy

Esempio L’ordine dei numeri naturali e quello dei numeri interi sonoordini discreti.

Un ordine si dice denso se dati due qualunque elementi distinti x e y, conx y, esiste uno z tale che x z y.

Esempio L’ordine dei razionali e quello dei reali sono ordini densi.

Una relazione d’ordine totale di un insieme U  si dice un buon ordine

se ogni X  ⊆ U  non vuoto ha minimo. Un insieme con un buon ordine si dicebene ordinato.

Esempi

Tipici insiemi bene ordinati sono {0, . . . , n} con la relazione ≤ e l’insiemeN = {0, . . . , n, . . . } con la stessa relazione.

L’insieme degli interi non e bene ordinato da ≤. L’insieme dei razionalinon e bene ordinato da ≤.

Il fatto che l’insieme dei naturali sia bene ordinato significa che al di l adella catena formata da 0 e dal successore di 0, e dal successore del successoredi 0 e cosı via, non ci sono altri elementi, come sarebbe ad esempio in unastruttura del genere:

      t t t t   t   t      t s s s s r q q t0

68

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 73/235

e questo e importante per le proprieta dei naturali che studieremo nel para-

grafo 15.Se al di la di tutti i numeri raggiungibili da 0 ci fosse ancora ad esempio

una struttura ordinata come quella degli interi, cun una catena discendente

      t t t t   t   t      t s s s s r q q qq q q r r s0

l’insieme non sarebbe bene ordinato; il sottoinsieme formato dalla catenadiscendente da destra non avrebbe minimo.

5.4 Relazioni di equivalenza

L’essenziale sulle relazioni di equivalenza e stato detto a proposito dell’algebradelle proposizioni. Ricordiamo che una relazione R in un insieme U  si diceuna equivalenza  se essa e riflessiva, simmetrica a transitiva, vale a dire, pergli elementi di campo(R):

xR xxR y → yR x

xR y ∧ yR z → xR z.

Non ci sarebbe bisogno di richiedere la riflessivita in quanto essa e con-

seguenza delle altre due: infatti

xR y ∧ yR x → xR x,

quindi basta che x sia in relazione R con un elemento qualsiasi10 perche xR x.Tuttavia si menziona la riflessivita per la sua importanza.

Esempi

1. La relazione di uguaglianza e una equivalenza.

2. Nell’insieme U  ={

a,b,c,d,e}

la relazione

R = {a, a, b, b, c, c, d, d, e, e,a, b, b, a, a, c, c, a, b, c, c, b,

d, e, e, d}10Se c’e solo x nel campo di R, allora deve gia essere xRx.

69

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 74/235

e una relazione di equivalenza, rappresentata dal seguente diagramma11.

·····

·····

·····

·····

·····

•a•

•••

••

••b••b•c d e

•cde

U     /     /

U   O O

3. Nel dominio degli interi, la relazione di congruenza x ≡ y (mod p), p ≥ 2, che vale se la differenza x − y e divisibile per p, e una relazionedi equivalenza12.

4. La relazione di parallelismo tra rette in un piano e una relazione diequivalenza.

5. La relazione di similitudine tra triangoli e una equivalenza.

6. La relazione di equivalenza logica e una equivalenza.

Data una relazione di equivalenza R in un insieme U  = campo(R), sidefinisce per ogni x ∈ U  la classe di equivalenza  di x come

[x] = {y ∈ U  | xR y }e x si chiama rappresentante della classe [x].

Date due classi [x] e [y ], queste o sono uguali (hanno gli stessi elementi)o sono disgiunte. Se xR y, allora ogni z ∈ [x], essendo xR z, e anche zR y,quindi z ∈ [y], e viceversa. Allora x e y sono due diversi rappresentanti dellastessa classe.

Se x non sta nella relazione R con y, allora non ci puo essere uno z ∈[x] ∩ [y ], altrimenti si avrebbe zR x e zR y, e quindi xR y.

L’insieme U  e ripartito dalla relazione di equivalenza R in una famigliadi insiemi disgiunti, di cui U  e l’unione. Una tale famiglia si chiama appuntopartizione di U .

11Il significato delle linee tratteggiate sara spiegato in seguito.12x ≡ y (mod p) si legge“x congruo a y modulo p”.

70

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 75/235

Esempi

Per la relazione dell’esempio 2 di sopra, [a] = [b] = [c] = {a,b,c} e[d] = [e] = {d, c}. Nel grafico si vedono i due agglomerati di punti cheformano le due classi disgiunte.

Per la relazione di congruenza x ≡ y (mod 2) ci sono due classi, quelladei numeri pari e quella dei numeri dispari.

L’insieme {[x] | x ∈ U } delle classi di equivalenza di un insieme U ,rispetto alla relazione R, e detto il quoziente di U  rispetto ad R, ed e indicatocon U/R.

Il quoziente dell’insieme dei numeri naturali rispetto a x ≡ y (mod 2) el’insieme

{0, 1

}.

Se si definiscono operazioni e relazioni nel quoziente, a partire da oper-azioni e relazioni tra gli elementi di U , occorre sempre fare attenzione chesiano bene definite, vale a dire che, nel caso di operazioni ad esempio, la classerisultante non dipenda dalla scelta dei rappresentanti delle classi argomento.

Esempio Nel quoziente degli interi rispetto alla relazione x ≡ y (mod p),che si indica Z p, si definisce la somma con

[x] + p [y] = [x + y],

e analogamente il prodotto, rendendo possibile la cosiddetta aritmetica mod-

ulare.L’operazione13 + p e ben definita perche se [x1] = [x] e [y1] = [y ], allora

x = mp+r, y = np+s e x1 = m1 p+r e y1 = n1 p+s; quindi (x+y)−(x1+y1) =(m + n − m1 − n1) p e divisibile per p e x + y e x1 + y1 appartengono allastessa classe.

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

5.5 Funzioni

Una relazione R si dice funzionale se per ogni x ∈ dom(R) esiste un solo ytale che x, y ∈ R.

Una relazione funzionale R tra X  e Y  si dice anche una funzione tra X e Y , o una funzione da dom(R) in Y . Se si parla di una funzione da  X  in Y s’intende che il suo dominio e tutto X .

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

71

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 76/235

Per le funzioni si usano di solito i simboli f , g , . . . . Se f  e una funzione

da X  in Y  si scrive anche

f  : X  −→ Y .

Se x, y ∈ f , si scrive y = f (x) e si dice che y e il valore di f  per l’argomentox, o l’immagine di x mediante f .

Sinonimi per “funzione” sono “mappa” o “corrispondenza”. Si dice pureche y corrisponde a x o che e il valore associato all’argomento x, e talvoltasi scrive f  : x → y per y = f (x).

Se Z  ⊆ X , l’immagine di Z  mediante f  e l’insieme delle immagini f (y),per ogni y

∈Z :

{f (y)

|x

∈Z 

}.

Tale insieme si indica anche con f “Z , non con f (Z ), che Z  ∈ dom(f ). !!!Se y ∈ im(f ), l’insieme {x ∈ X  | f (x) = y} si chiama controimmagine

di y e si indica f −1(y). f −1(y) e un insieme, e in generale con piu di unelemento.

Un modo abbreviato di presentare una funzione e quello di scrivere laformula che definisce la relazione, ad esempio si parla della funzione y = x2,ma occorre allora precisare a parte il dominio e l’immagine della funzione.

Una funzione f  : X  −→ Y  si dice iniettiva  o uno-uno se a elementi diversicorrispondono valori diversi: x = y → f (x) = f (y).

Una funzione iniettiva si indica talvolta con la notazione:f  : X → Y .

Se una funzione f  e iniettiva, per ogni y ∈ im(f ) f −1(y) ha un solo elementox che si chiama lui controimmagine di y. Viceversa, se ogni f −1(y) ha unsolo elemento, per y ∈ im(f ), f  e iniettiva.

Una funzione f  : X  −→ Y  si dice suriettiva , o sopra  se Y  = im(f ),ovvero se per ogni y ∈ Y  esiste almeno un x ∈ X  tale che y = f (x).

Esempi

La funzione

f  : Z −→ Z

x → 2x

e iniettiva, non suriettiva.La funzione

72

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 77/235

f  : Q

−→Q

x → 2x

e iniettiva e suriettiva.La funzione

f  : Q −→ Q

x → x2

non e iniettiva e non e suriettiva, cosı come

f  : R −→ R

x

→  |x|.

La funzione

f  : R −→ R

x → x3 − x.

invece non e iniettiva ma e suriettiva.La corrispondenza definita da x → 1

x, o dalla formula y = 1

x, definisce

una funzione tra Q e Q il cui dominio e Q \ {0}:

f  : Q \ {0} −→ Q

x →1x

e iniettiva e non e suriettiva.La funzione

f  : Q \ {0} −→ Q \ {0}x → 1

x

e iniettiva e suriettiva.

Una funzione f  : X  −→ Y  che sia iniettiva e suriettiva si dice biiettiva , ouna biiezione tra X  e Y  o una corrispondenza biunivoca  tra X  e Y .

Se X  = Y  si parla di una biiezione di X  in se.

Esempi

La funzione

f  : Q −→ Q

x → 2x

73

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 78/235

e una biiezione di Q in se stesso.

La funzione

f  : Z −→ Z

x → 2x

e invece solo una iniezione di Z in se.La funzione

f  : Q \ {0} −→ Q \ {0}x → 1

x

e una biiezione di Q\ {

0}

in se..La funzione che a ogni i < n associa i + 1 e a n associa 0 e una biiezione

di {0, 1, . . . , n} in se.

Le biiezioni di un insieme finito in se si chiamano permutazioni  dell’insieme.

Il concetto di “funzione” e molto comodo per definire o collegare diversialtri concetti matematici; abbiamo visto quello di “permutazione”; le se-

quenze a0, . . . , an di elementi di X  si possono definire come funzioni da{0, 1, . . . , n} in X ; le disposizioni  di X  a n elementi, se X  ha piu di n el-ementi, sono le funzioni iniettive da {0, 1, . . . , n} in X ; un insieme {ai}i∈I indiciato da I  e l’immagine di una funzione da I  nell’insieme cui apparten-

gono gli ai; un sottoinsieme X  ⊆ U  e anche uguale a c−1X (1), dove cX e la

 funzione caratteristica  di X , cioe la funzione U  −→ {0, 1} definita da

cX(x) =

1 se x ∈ X 0 se x ∈ X,

e cosı via, tutte le nozioni matematiche si possono esprimere in termini in-siemistici.

Se per una funzione f  : X  −→ Y  il dominio e un prodotto cartesiano

X  = V  × W , allora si dice che la f  e una funzione di due variabili, o di dueargomenti, e per ogni v, w ∈ V  × W  il valore di f  si indica con f (v, w).Analogamente se il dominio e un prodotto di piu di due fattori. Per una

funzione f  di n argomenti il valore della funzione per la n-upla x1, . . . , xnsi indica con f (x1, . . . , xn).

74

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 79/235

6 Forme normali

Dopo aver imparato le definizioni riguardanti la semantica delle proposizioni,e alcune prime tecniche per stabilire in particolare se sono tautologie, sia di-rettamente con il calcolo del valori di verita sia deducendole da altre conpassaggi logici o algebrici booleani, passiamo a porci alcuni problemi meta-teorici sul linguaggio proposizionale.

6.1 Definibilita dei connettivi

Ad ogni proposizione e associata una tavola di verita, come abbiamo vistonegli esempi di 3.3.1. Viceversa, data una qualunque tavola di verita, comead esempio

  p q r ?

0 0 0 10 0 1 10 1 0 10 1 1 11 0 0 01 0 1 01 1 0 0

1 1 1 0

esiste una proposizione scritta utilizzando soltanto i connettivi ¬, ∧, ∨ cheha quella data come sua tavola di verita associata.

La proposizione si costruisce nel seguente modo, appoggiandosi come es-empio alla tavola di sopra. Sara una disgiunzione con tanti disgiunti quantesono nella tavola le righe che hanno il valore 1, quindi A1 ∨ A2 ∨ A3 ∨ A4;ogni disgiunto Ai dovra essere vero solo per l’interpretazione della riga cor-rispondente; la riga assegna valori 0,1 alle lettere, quindi 1 a certe lettere e1 alle negazioni di certe altre lettere; una congiunzione e vera se e solo setutti i congiunti sono veri; Ai potra quindi essere una congiunzione di tanteproposizioni quante sono le colonne di entrata della tavola, nell’esempio 3,e ciascuna di queste proposizioni sara una lettera o la negazione di quellalettera a seconda che nella riga corrispondente la lettera abbia il valore 1oppure 0. Quindi

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

75

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 80/235

Per le proprieta della valutazione della disgiunzione e congiunzione - che una

disgiunzione e vera se e solo se almeno un disgiunto e vero, e una congiunzionese e solo se tutti i congiunti sono veri - e della negazione, si puo facilmentevedere procedendo al contrario che la tavola associata a questa proposizionee uguale alla tavola data, che era la tavola di p ∨ q → ¬ p ∧ (q → r). 2

Il risultato si esprime anche dicendo che tutte le funzioni di verita sonodefinibili  in termini dell’insieme di connettivi {¬, ∧, ∨}, o che questo e uninsieme adeguato di connettivi. Questo significa che non si e perso nulla, !!!

quanto a capacita espressiva, non ammettendo nell’alfabeto altri connettivi,ad esempio quello per la duplice negazione “ne . . . ne”; se avessimo introdottoun connettivo

↑o nor per questa combinazione di proposizioni, con la tavola

A B A ↑ B

0 0 10 1 01 0 01 1 0

a posteriori potremmo ora sostituire ogni occorrenza della proposizione p ↑ qcon l’equivalente ¬ p ∧ ¬q1.

Vale la pena di notare esplicitamente cosa significa che un simbolo e defini- !!!

bile (a differenza ad esempio dalla definibilita di un insieme).Un simbolo di operatore binario • si dice definibile (in termini di altri) se

 p • q ↔ A( p,q) oppure p • q = A( p,q), a seconda che p • q sia una formulaoppure un termine, dove A e un’espressione che non contiene • e contienesolo gli altri simboli o nozioni nei termini dei quali • si dice definito.

S’intende che il bicondizionale o l’uguaglianza devono essere validi nelcontesto in esame: in logica sara |= p • q ↔ A( p,q), mentre una uguaglianza p • q = A( p,q) deve essere dimostrata nella relativa teoria, aritmetica oalgebra o altro.

Analogamente se il numero di argomenti e diverso da 2.

Ad esempio in geometria piana per due rette “r//s ↔ r e s non siintersecano”, in aritmetica “x | y ↔ esiste uno z per cui xz = y”, o il

1Se c’e una sola riga con valore 1, la proposizione costruita come detto sopra e dellaforma A1, dove A1 e una congiunzione. Si puo dire tuttavia che anche in questo caso laproposizione associata alla tavola e una disgiunzione, pensando che A1 ≡ A1 ∨ A1

76

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 81/235

simbolo di elevamento a quadrato “x2 = x

·x”, nell’algebra degli insiemi

“X \ Y  = X ∩ ∼ Y ”.Ma il precedente risultato dice anche che gli stessi connettivi del lin-

guaggio proposizionale sono sovrabbondanti, perche {¬, ∧, ∨} e adeguato, eneanche il piu ridotto possibile. Quando un sistema adeguato e minimale,nel senso che nessun suo sottoinsieme proprio e ancora adeguato, si chiamauna base , in analogia con le basi degli spazi vettoriali (si vedano gli esercizi).

Si ha che p ⊕ q risulta equivalente a (¬ p ∧ q) ∨ ( p ∧ ¬q), e p → q ≡(¬ p ∧ ¬q) ∨ (¬ p ∧ q) ∨ ( p ∧ q) e analogamente p ↔ q (esercizio).

Ognuna di queste equivalenze comporta l’eliminabilita del connettivodefinito, cioe che all’interno di una proposizione una sottoproposizione, ad

esempio della forma A → B, puo essere rimpiazzata dalla proposizione equiv-alente (¬A ∧ ¬B) ∨ (¬A ∧ B) ∨ (A ∧ B).

6.1.1 Esercizi

1. Dimostrare che {¬, ∧} e {¬, ∨} sono due basi di connettivi, definendola disgiunzione nel primo e la congiunzione nel secondo.

2. Dimostrare che {¬, →} e una base di connettivi.

3. Dimostrare che il connettivo “ne . . . ne” da solo costituisce una base,

definendo in termini di esso la negazione e la congiunzione.4. Scrivere la funzione di verita del connettivo ↓ o nand, “non entrambe”,

o “non sia . . . sia”, e dimostrare che costituisce da solo una base diconnettivi.

5. Esaminare tutte le tavole di verita a una entrata, e spiegare perche nonesiste un connettivo per “e necessario che”.

6. Discutere se e possibile ripetere la trattazione di questo paragrafo con⊕ al posto di ∨ (associare a ogni tavola una proposizione con ¬, ∧, ⊕che abbia quella data come sua tavola di verita). L’insieme

{¬,

∧,

⊕}e adeguato? E {¬, ⊕}? E {⊕, ∧}?

6.2 Forme normali disgiuntive

La proposizione costruita a partire da una tavola di verita nel modo sopradescritto ha una forma particolare. Si chiami letterale una proposizione che

77

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 82/235

sia o una lettera p, letterale positivo, o la negazione di una lettera

¬ p, letterale

negativo.La proposizione associata alla tavola ha dunque la forma di una disgiun-

zione di congiunzioni di letterali. Una tale forma di chiama forma normale

disgiuntiva . Poiche e evidente che

Osservazione 6.2.1 Per ogni  A e B che contengano le stesse lettere,

A ≡ B se e solo se A e B hanno la stessa tavola di verita 

si puo concludere che

Teorema 6.2.1 Per ogni proposizione A esiste una proposizione con le stesse

lettere che e in forma normale disgiuntiva ed e logicamente equivalente ad  A.

Dimostrazione . Come nell’esempio di sopra, data A si calcoli la sua tavola,quindi si costruisca la proposizione in forma normale disgiuntiva associataalla tavola.

Nel caso che la tavola di A non abbia alcun 1 nella colonna dei valori,quindi che A sia una contraddizione, la proposizione equivalente in formanormale disgiuntiva si puo scrivere nella forma (¬ p ∧ p) ∨ . . . ∨ (¬q ∧ q) comedisgiunzione di contraddizioni elementari, una per ogni lettera di A. 2

Anche una proposizione come ¬ p ∨ q e in forma normale disgiuntiva,perche il concetto di congiunzione e disgiunzione e usato ovviamente in sensogeneralizzato, ammettendo due o piu componenti, o anche una sola2. Leproposizioni in forma normale disgiuntiva associate a tavole di proposizioninon contraddittorie hanno l’ulteriore proprieta che in ogni disgiunto com-paiono le stesse lettere, e che in ogni congiunzione ogni lettera compare unasola volta, o positiva o negata3. Qualche volta si usa l’aggettivo ulterioreregolare per indicare questa caratteristica delle forme normali. Una propo-sizione in forma normale disgiuntiva regolare permette di leggere diretta-mente i modelli della proposizioni, uno per ogni disgiunto:

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

2Vedi anche la nota 1 del paragrafo.3Questa disgiunzione nel testo e esclusiva.

78

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 83/235

ha due modelli, i1( p) = 0 e i1(q) = 1, e i2( p) = 1 e i2(q) = 0.

Tale possibilita di lettura sussiste peraltro anche per le forme normalidisgiuntive non regolari, considerando pero le interpretazioni come definitein modo arbitrario sulle lettere che non occorrono in alcuni disgiunti:

(¬ p ∧ q) ∨ p

ha tre modelli: da ¬ p ∧ q viene i1( p) = 0 e i1(q) = 1, e da p viene i( p) = 1,che pero ne riassume due: i2( p) = 1 e i2(q) = 1, e i3( p) = 1 e i3(q) = 0.

Qualche volta, sempre per le forme non regolari, disgiunti diversi hannomodelli in comune; e ovviamente se in una congiunzione occorre sia unalettera sia la sua negazione quella congiunzione non ha modelli.

6.3 Forme normali congiuntive

Un altro modo di associare a una tavola una proposizione scritta solo coni connettivi ¬, ∧ e ∨ e il seguente, dove sono scambiati i ruoli di 0 e 1 edi congiunzione e disgiunzione: si cerca ora una proposizione che sia falsaesattamente nei casi prescritti dalla tavola data. In riferimento allo stessoesempio di prima, la proposizione deve essere falsa solo ed esattamente incorrispondenza alle ultime quattro righe della tavola, sara percio una con-giunzione A5 ∧ A6 ∧ A7 ∧ A8, e ogni Ai sara la disgiunzione di tre letterali,ogni letterale positivo o negativo a seconda che nella riga in questione la !!!

lettera abbia il valore 0 oppure 1. Quindi:

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

Per confermare che questa proposizione ha la tavola data come sua tavola diverita occorre questa volta ricordare che una congiunzione e falsa se e solose una delle proposizioni congiunte e falsa, e che una disgiunzione e falsa see solo se tutte le proposizioni disgiunte sono false.

Una proposizione che sia una congiunzione di disgiunzioni di letterali sidice in forma normale congiuntiva .

Esempio La forma normale congiuntiva di p→

q, applicando il proced-imento descritto, e ¬ p ∨ q, che e forma congiuntiva, se si considera, come siconsidera, la congiunzione in senso generalizzato; ¬ p ∨ q e dunque in formasia congiuntiva sia disgiuntiva.

Come sopra, risolvendo a parte anche il caso in cui nella tavola non cisiano 0, si ha:

79

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 84/235

Teorema 6.3.1 Per ogni proposizione A esiste una proposizione con le stesse

lettere che e in forma normale congiuntiva ed e equivalente ad  A.

Le forme normali, non necessariamente regolari, sono convenienti per verifi-care in modo efficiente (alla sola scansione e ispezione della lista) la validit a !!!

logica o l’insoddisfacibilita, ma ciascuna forma e adeguata solo per una delledue proprieta.

Teorema 6.3.2 Una proposizione in forma normale congiuntiva e una tau-

tologia se e solo se in ogni sua clausola c’e una lettera che occorre sia positiva 

sia negata.

Una proposizione in forma normale disgiuntiva e insoddisfacibile se e solo

se in ogni suo disgiunto c’e una lettera che occorre sia positiva sia negata.Dimostrazione . Per le forme congiuntive, una clausola in cui occorra unalettera e la negazione della stessa lettera e una tautologia, e una congiunzionee una tautologia se e solo se lo sono le sue componenti. Una clausola in cuinon si verifichi la presenza di una lettera e della sua negazione puo assumereil valore 1 se a tutti i letterali si assegna il valore 1 interpretando a 1 le letteredei letterali positivi e a 0 le lettere dei letterali negativi.

Un ragionamento analogo vale per le forme disgiuntive. 2

Si noti che due proposizioni equivalenti non debbono necessariamente

avere le stesse lettere, ad esempio q ∧ (¬ p ∨ p) e equivalente a q, e ¬ p ∨ p e equivalente a q → q (sono tutt’e due tautologie); quando si controllache per ogni interpretazione le due proposizioni hanno lo stesso valore siconsiderano interpretazioni definite sull’insieme piu ampio di lettere, ma sipossono trascurare in una proposizione i valori delle lettere non occorrenti.

Le proposizioni in forma normale che si ottengono da una tavola non sonosempre le piu semplici possibili. Se ad esempio il criterio che interessa e quellodella lunghezza, la forma ¬ p ∨ q, e preferibile alla forma normale disgiuntivaregolare che si ottiene dalla tavola del condizionale. A ¬ p ∨ q si puo passaredalla forma normale disgiuntiva regolare (¬ p ∧ ¬q) ∨ (¬ p ∧ q) ∨ ( p ∧ q) con i

seguenti passaggi:(¬ p ∧ ¬q) ∨ (¬ p ∧ q) ∨ ( p ∧ q)

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

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

80

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 85/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 86/235

forme congiuntive cosı ottenute; se e

∨, e la proposizione e della forma A

∨B,

e necessaria qualche preparazione.Se in A non occorresse per nulla ∧, potremmo lavorare su B come detto

sotto, dopo aver fatto, per la precisione, lo scambio con B ∨ A. Possiamoallora supporre che A sia della forma C ∧ D, perche se A a sua volta fosseuna disgiunzione C  ∨ D, potremmo considerare al suo posto l’equivalenteC  ∨ (D ∨ B) e andare a cercare ∧ in C , oppure in D dopo aver fatto loscambio con l’equivalente D ∨ (C ∨ B).

La proposizione data si trasforma allora nella equivalente (C ∨B)∧(D∨B)e possiamo applicare ricorsivamente il procedimento alle due proposizioni piucorte C ∨ B e D ∨ B. Quando procedendo in questo modo si e eliminato il

connettivo ∧ a sinistra di B, si passa a lavorare nello stesso modo su B.

Esempio Da

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

(¬¬ p ∧ ¬q) ∨ (r ∨ ¬ p)( p ∧ ¬q) ∨ (r ∨ ¬ p),

che e in forma normale disgiuntiva

( p ∧ ¬q) ∨ r ∨ ¬ p

con due disgiunti unitari r e ¬ p. Se invece si vuole la forma normale con-giuntiva, si continua con

( p ∨ (r ∨ ¬ p)) ∧ (¬q ∨ (r ∨ ¬ p))( p ∨ r ∨ ¬ p) ∧ (¬q ∨ r ∨ ¬ p)

che e in forma normale congiuntiva.

Esempio Trasformare la forma normale disgiuntiva ( p ∧ ¬q) ∨ (¬ p ∧ q)in forma normale congiuntiva:

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

Il primo congiunto si trasforma in

( p ∨ ¬ p) ∧ ( p ∨ q),

82

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 87/235

il secondo in

(¬q ∨ ¬ p) ∧ (¬q ∨ q),

quindi la proposizione in

( p ∨ ¬ p) ∧ ( p ∨ q) ∧ (¬q ∨ ¬ p) ∧ (¬q ∨ q),

da cui si possono ancora eliminare le tautologie, ottenendo

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

.

Non e detto che questo procedimento, che ha il merito di far vederela terminazione del compito, se lo si segue come filo d’Arianna, sia sem-pre il piu efficiente; puo essere utilmente integrato con l’applicazione initinere dell’eliminazione delle ripetizioni, e con l’eliminazione delle tautolo-gie dalle congiunzioni, e della contraddizioni dalle disgiunzioni, ogni volta 

che sia possibile; sono utili le leggi di assorbimento ed equivalenze come !!!

¬(A → B) ≡ A ∧ ¬B; oppure ci sono scorciatoie come quando, volendo mi-rare a una forma congiuntiva, si incontra una sottoproposizione della forma(A ∧ B) ∨ (C ∧ B) che conviene rimpiazzare direttamente con (A ∨ C ) ∧ B.

Le forme normali disgiuntive e congiuntive si trovano ai poli estremi di

uno spettro su cui si immagini di collocare le proposizioni misurando la lorodistanza con il numero di applicazioni delle proprieta distributive necessarieper passare dall’una all’altra. Se si pensasse di decidere se una proposizionein forma normale disgiuntiva e una tautologia applicando il teorema 6.3.2,dovendola prima trasformare in forma congiuntiva, si affronterebbe un com-pito non inferiore come complessita a quello di costruire la tavola di veritacompleta (e forse piu rischioso, se fatto a mano).

6.4 Esercizi

1. Scrivere la forma normale congiuntiva e disgiuntiva, usando le tavoledi verita, delle seguenti proposizioni:

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

¬ p → ¬(q → p)

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

83

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 88/235

2. Per le proposizioni del precedente esercizio, trasformare la forma nor-

male disgiuntiva in quella congiuntiva e viceversa con l’algoritmo forma

normale.

3. Scrivere la forma normale disgiuntiva e congiuntiva, usando l’algoritmoforma normale, delle seguenti proposizioni:

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

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

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

 p ⊕ (¬ p ⊕ q) → q.

4. Trasformare le leggi logiche del paragrafo 3.3.3 in forma normale con-giuntiva e disgiuntiva.

5. Osservare che la tavola della proposizione p∨q → ¬ p∧ (q → r) di 3.3.1e uguale a quella di ¬ p (se questa e estesa a una tavola a tre entrate p,q,r indipendente da q e r) e trasformare in ¬ p la sua forma normaledisgiuntiva ottenuta dalla tavola.

6. Scrivere ¬ p ∨ q → ¬ p ∧ q in forma normale disgiuntiva e leggerne imodelli.

7. Verificare, ai fini dell’applicazione delle trasformazioni con le leggi dis-tributive, che e

(A ∨ B) ∧ (C ∨ D) ≡ (A ∧ C ) ∨ (A ∧ D) ∨ (B ∧ C ) ∨ (B ∧ D)

e analogamente

(A ∧ B) ∨ (C ∧ D) ≡ (A ∨ C ) ∧ (A ∨ D) ∧ (B ∨ C ) ∧ (B ∨ D).

8. Verificare come si trasforma, applicando le leggi di De Morgan, lanegazione di una forma normale congiuntiva (rispettivamente disgiun-tiva) in una forma normale disgiuntiva (rispettivamente congiuntiva).

9. Spiegare, utilizzando le leggi di De Morgan e la legge della doppianegazione, perche cnf(A) ≡ ¬dnf(¬A) e dnf(A) ≡ ¬cnf(¬A).

L’osservazione fornisce un altro modo per ottenere la forma normaledisgiuntiva, o congiuntiva, di una proposizione. Se si vuole ad esempiola forma normale disgiuntiva di A, si puo provare a vedere se non sia

84

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 89/235

relativamente facile ottenere cnf(

¬A); ottenuta questa, la si nega e

si applica De Morgan; spesso si evita cosı l’applicazione ripetuta delleleggi distributive.

Errore frequente: lo studente ha trovato dnf(A) e per ottenere cnf(A) !!!

nega dnf(A) e applica De Morgan, ricordando malamente l’esercizio 8,perche ottiene sı una forma congiuntiva, ma quella della negazione:cnf(¬A). E forse il residuo dell’idea di premettere due negazioni, us-andone una per trasformare dnf in cnf con De Morgan: ¬¬dnf(A),¬(¬dnf(A)), ¬cnf(¬A). Di quella esterna pero ci si dimentica - se sitenesse conto dell’altra negazione, una nuova applicazione di De Mor-gan riporterebbe a dnf(A). Due negazioni consecutive non possono

creare nulla di nuovo.

10. In riferimento alle osservazioni del precedente esercizio, trovare la formanormale disgiuntiva e congiuntiva e confrontare i diversi modi per ot-tenerle, per le proposizioni

( p → q) → (r → ¬ p)

 p ∨ q → ¬ p ∨ q

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

85

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 90/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 91/235

caso quello di divisibilita:

Def. 3|n se e solo se n = 3i per qualche i

e analogamente:

Def. 3|m se e solo se m = 3 j per qualche j.

Il passo successivo sfrutta l’equivalenza delle definizioni per riformularel’ipotesi in1

Ip. n = 3i ∧ m = 3 j.

Usiamo ora una legge che non e propriamente una legge logica dei tipo di

quelle che abbiamo finora considerato, ma e una legge dell’uguaglianza checonsideriamo universalmente vera in ogni universo (derivabile da quelle giaricordate nel paragrafo 4.2).

2. n = 3i ∧ m = 3 j → n + m = 3i + 3 j.

Da 1 e da 2, con un’applicazione del modus ponens

3. n + m = 3i + 3 j.

Di qui, si passa a n + m = 3(i + j), con una manipolazione algebrica direttadelle uguaglianze. In verita questo passaggio suppone il riferimento ad un

fatto noto, valido nell’universo aritmetico che stiamo considerando, vale adire la proprieta distributiva:

4. n + m = 3i + 3 j → n + m = 3(i + j);

e una nuova applicazione del modus ponens a 3 e 4 che fornisce

5. n + m = 3(i + j).

Dalla 5 si arriva alla conclusione voluta ripristinando le definizioni, permezzo di equivalenze, vale a dire scrivendo che, siccome n + m = 3k perqualche2 k, in particolare per k = i + j, allora 3

|(n + m), come si doveva

concludere.2

1La scomparsa di “per qualche i” e di “per qualche j”, e la ricomparsa piu avanti,rientra nella manipolazione delle variabili, di cui si parlera nella seconda parte del corso:m,n,i,j sono variabili.

2Vedi nota precedente.

87

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 92/235

Un’altra possibilita sarebbe stata quella di inserire, dopo

2. n = 3i ∧ m = 3 j → n + m = 3i + 3 j,

subito

4. n + m = 3i + 3 j → n + m = 3(i + j)

e quindi, con un’applicazione della transitivita del condizionale, da 2 e 4

6. n = 3i ∧ m = 3 j → n + m = 3(i + j)

e la stessa conclusione di prima con il modus ponens da 1 e 6.2

Questo tipo di dimostrazione si chiama diretto, o in avanti , perche pro-cede da proposizioni a proposizioni da esse implicate con l’uso sostanzial-mente delle leggi logiche del modus ponens

 p ∧ ( p → q) → q

e della transitivita del condizionale, o sillogismo ipotetico

( p → q) ∧ (q → r) → ( p → r),

o meglio delle regole associate. Quella del sillogismo ipotetico e

 p → q, q → r

 p → r.

Anche la legge della distributivita del condizionale

( p → (q → r)) → (( p → q) → ( p → r)),

che incontreremo in seguito in altri esempi, si puo considerare nella stessacategoria delle regole “in avanti”.

Si noti, anche se non entriamo in dettagli sulle proprieta dell’uguaglianza,

che tutte le manipolazioni algebriche usuali, le sostituzioni, coinvolgono difatto appelli al modus ponens applicato a leggi dell’uguaglianza come nella 4di sopra.

In verita non abbiamo neanche segnalato tutti i punti in cui i passaggierano di tipo logico, e non aritmetico o riguardanti l’uguaglianza. Ad es-empio la prima trasformazione dell’ipotesi “3|n e 3|m” avviene lavorando

88

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 93/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 94/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 95/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 96/235

Ad esempio, per dimostrare che ogni numero reale non negativo ha una

radice quadrata si parte esplicitando il dato, un generico numero non nega-tivo, scrivendo 0 ≤ x, quindi, per la relazione tra < e ≤, x = 0 ∨ x > 0.

I due casi si trattano in modo molto diverso; se x = 0 basta osservare che0 e una radice di 0, e quindi questa esiste; se x > 0 occorre la descrizione diun processo che genera il numero che e la radice di x, che comunque esisteanche in questo caso; alla fine si applica tacitamente la distinzione di casi.2

Esercizio. Dimostrare e dire quali leggi logiche sono implicite nella di-mostrazione del fatto che per ogni numero naturale n, n2 + n e pari.

Un caso particolare della distinzione dei casi si ha quando i due casi sono

del tipo p e ¬ p, e sono introdotti come artificio ad hoc, e allora apparente-mente si riesce a dimostrare un risultato che non dipende da ipotesi specifiche:da p → A e ¬ p → A e p ∨ ¬ p → A segue A con il terzo eslcuso.

Supponiamo ad esempio di voler far vedere che ogni numero reale e minoreo uguale al suo valore assoluto; e da dimostrare

x ≤ |x|,senza alcuna ipotesi su x, salvo che si tratta di un numero reale (fatto chepermette di richiamare tacitamente tutte le proprieta dei numeri reali). Manoi introduciamo l’alternativa

x < 0 ∨ x < 0,

come legge logica del tertium non datur , che si trasforma agevolmente (perle proprieta di <, vedi oltre) in

x < 0 ∨ x ≥ 0.

Ora se x ≥ 0 allora x = |x|, quindi x ≤ |x|; se x < 0 ≤ |x|, allora x < |x|,quindi x ≤ |x|.2

Esercizio. Dimostrare che per ogni numero reale x, |x| ≥ −x.

A volte sembra che si usi la distinzione di casi ma non e cosı, o meglio,e anche cosı ma c’e una spiegazione piu breve. Ad esempio, consideriamol’argomento con cui si dimostra che per p primo, se p|(nm) allora p|n oppure p|m.

La dimostrazione di solito inizia nel seguente modo: mostriamo che se p|nallora p|m. (L’argomento matematico poi puo continuare con un appello alla

92

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 97/235

fattorizzazione dei numeri naturali: data la scomposizione di nm in fattori

primi, tra essi compare p, ma raccogliendo quelli di n, p resta tra gli altri,cioe tra quelli di m.)

Se richiesto di un chiarimento sull’impostazione della partenza, chi parlaprobabilmente spiega: se p|n siamo a posto, se p|n allora . . . , con un’implicitoappello alla distinzione di casi.

Ma la spiegazione piu semplice e che q ∨ r e equivalente a ¬q → r,quindi p|(nm) → p|n ∨  p|m e equivalente a p|(nm) → ( p | n → p|m), e sista procedendo in modo diretto (e non c’e bisogno di dire “se p|n siamo aposto”).

7.3 Sillogismo disgiuntivo

Mettiamo ora ordine nella trattazione delle relazioni d’ordine negli usu-ali sistemi numerici, di cui abbiamo gia usato alcune proprieta familiaridall’esperienza scolastica. La relazione d’ordine puo essere introdotta in duemodi diversi, a seconda che si privilegi la relazione di ordine stretto oppurequella attenuata. O si introduce prima5 ≤, e quindi si definisce < con

x < y ↔ x ≤ y ∧ x = y

oppure si introduce prima < e si definisce ≤ con

x ≤ y ↔ x < y ∨ x = y.Nel primo caso per la relazione ≤ si hanno a disposizione le leggi

x ≤ x rif lessivax ≤ y ∧ y ≤ z → x ≤ z transitivax ≤ y ∧ y ≤ x → x = y antisimmetricax ≤ y ∨ y ≤ x ordine totale

e si dimostrano le proprieta

x < x antirif lessivax < y

→y

< x antisimmetrica

x < y ∧ y < z → x < z transitivax < y ∨ x = y ∨ y < x ordine totale

5Non stiamo a dire come si definisce, che non e rilevante, e d’altra parte si procede inmodo diverso nelle diverse situazioni; ad esempio tra i naturali si usa definire x ≤ y seesiste un z tale che x + z = y; in altri casi si definiscono prima i numeri positivi, e poix < y se y − x e positivo.

93

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 98/235

nel secondo caso il viceversa.

Diverse leggi logiche intervengono in queste dimostrazioni. Ad esempioper dimostrare la proprieta riflessiva di ≤, a partire dalle proprieta di <, sinota che

x = x → x = x ∨ x < x,

per la legge dell’introduzione di ∨ a partire dalla legge logica dell’identitax = x → x = x e quindi si ottiene la conclusione con il modus ponens dax = x che si assume sempre valida per l’uguaglianza. In questa dimostrazionequindi non intervengono proprieta di <.2

Per dimostrare la proprieta dell’ordine totale per ≤, a partire dalle pro-prieta di <, si dimostra, sfruttando la mutua definibilita dei connettivil’equivalente

x ≤ y → y ≤ x.

A tal fine si osserva che x ≤ y e equivalente, per la definizione di ≤, a

x < y ∧ x = y,

per una delle leggi di De Morgan. Ma con la proprieta di ordine totale di <e due applicazioni del sillogismo disgiuntivo (precedute da un’eliminazione

di ∧) x < y e x = y forniscono y < x che con l’introduzione del ∨ diventay ≤ x:

x < y ∧ x = yx < yx = y

x < y ∨ x = y ∨ y < xx = y ∨ y < x

y < xy < x ∨ x = y.2

Esercizio. Completare le dimostrazioni delle proprieta di ≤ a partire daquelle di < e viceversa, cercando di non perdere la bussola.

Nella dimostrazione di x ≤ |x| del precedente paragrafo siamo partiti dax < 0 ∨ ¬(x < 0) e abbiamo rimpiazzato x < 0 con x ≥ 0, appellandoci aproprieta di <, arrivando a x < 0 ∨ x ≥ 0. Ma quest’ultima formula, scritta

94

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 99/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 100/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 101/235

Se n divide (n

−1)! + 1 allora n e primo6,

la cui conclusione che n e primo dimostriamo provando che p non divide nper ogni p < n7. Ovviamente consideriamo p > 1.

L’ipotesi e n|((n − 1)! + 1). Osserviamo innanzi tutto che se p < n alloraovviamente p|(n − 1)!. Questa condizione su p resta adesso fissata per tuttoil ragionamento, o meglio p < n implica tutte le affermazioni seguenti.

Ricordiamo il fatto noto che

a|b ∧ a|(b + c) → a|ce contrapponendo

a

|c

→a

|b

∨a

|(b + c).

Come caso particolare

 p| 1 → p| (n − 1)! ∨ p| ((n − 1)! + 1).

Ma p| 1, quindi

 p| (n − 1)! ∨ p| ((n − 1)! + 1).

Ma p|(n − 1)!, quindi p| ((n − 1)! + 1) per il sillogismo disgiuntivo.La conclusione parziale di questa prima parte diretta della dimostrazione

e che, per p < n,

 p|

((n−

1)! + 1).

Ora dobbiamo provare che p non divide n, e lo facciamo per assurdo.Assumiamo p|n. Siccome per ipotesi n|((n − 1)! + 1), se p|n avremmo perla transitivita della relazione di divisibilita che p|((n − 1)! + 1), una con-traddizione con la conclusione della parte precedente della dimostrazione.Dunque p| n.2

Osservazione: Torniamo un momento indietro a vedere come funziona lacondizione p < n che abbiamo usato nel corso della dimostrazione, dicendoche implicava tutte le successive affermazioni. Nella prima parte, quandoabbiamo detto sopra “Ma p

|(n

−1)!, quindi p

|((n

−1)! + 1) per il sillo-

gismo disgiuntivo”, ci siamo espressi in modo corretto ma abbreviato; ci sonoalmeno tre modi in cui esplicitare le leggi logiche che intervengono.

Primo modo. Noi in realta avevamo che6L’operazione “fattoriale” n! e definita da n! = 2 · 3 · . . . · n. Si veda il paragrafo 15.7Tale formulazione ristretta e equivalente alla definizione di primalita perche i divisori

di un numero sono minori del numero stesso. Anzi basterebbe di meno (esercizio).

97

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 102/235

 p

|(n

−1)!

∨ p

|((n

−1)! + 1)

e inoltre

 p < n → p|(n − 1)!,

ovvero quest’ultima e

 p|(n − 1)! → p| ((n − 1)! + 1).

Allora per la transitivita del condizionale si ha

 p < n → p| ((n − 1)! + 1).

Secondo modo. Da

 p|(n − 1)! → p| ((n − 1)! + 1).

con l’affermazione del conseguente si ha

 p < n → ( p|(n − 1)! → p| ((n − 1)! + 1)).

e con

 p < n → p|(n − 1)!,

e la distributivita di → si arriva alla stessa conclusione.Terzo modo. E’ quello che di fatto e stato usato. Il sillogismo disgiuntivo

e sempre valido anche relativizzato a una (stessa) condizione che implica ledue premesse e la conclusione:

 p → q, p → ¬q ∨ r

 p → r

e la dimostrazione si puo fare in generale come nel secondo modo di sopra.2

La piu famosa dimostrazione per assurdo della storia e quella della ir-razionalita di

√2, che non faremo il torto di presentare (esercizio).

Una contraddizione e normalmente un enunciato della forma q ∧ ¬q, op-pure due enunciati q e ¬q, ottenuti separatamente8, q qualunque perche tutte

8Se si sono dedotti, separatamente, dalle stesse premesse, q e ¬q, si puo derivare es-plicitamente q ∧ ¬q, ad esempio con due applicazioni del modus ponens alla legge logicaq → (¬q → q ∧ ¬q), che a sua volta deriva dalla legge dell’identita q ∧ ¬q → q ∧ ¬q e dallalegge di esportazione.

98

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 103/235

le contraddizioni sono equivalenti tra loro (per ex falso quodlibet  da una di

esse si puo dedurre qualunque enunciato).A volte si dice che certi enunciati, come 0 = 1, sono un assurdo, o una

contraddizione in se, ma in realta non esistono contraddizioni in se; la formula0 = 1 e una contraddizione solo perche tra gli assiomi o i fatti noti si hagia 0 = 1. Se da p si deduce 0 = 1, allora da 0 = 1, per l’affermazione delconseguente si ha anche p → 0 = 1, e ci si riporta alla contraddizione classica p → q ∧ ¬q. Lo stesso con altre formule.

Ad esempio, dimostriamo che per verificare se n e primo basta provare adividerlo per i primi che sono ≤ √n , dove con √n indichiamo la parteintera9 della radice quadrata di n. Supponiamo che tutti questi primi non

dividano n, e dimostriamo che allora n e primo. Supponiamo per assurdoche n non sia primo; allora n e un prodotto di primi tutti maggiori di √n ,prodotto che e maggiore di n, e si avrebbe n < n, assurdo10.2

La riduzione all’assurdo debole non e piu debole, ma solo un caso specialedella riduzione all’assurdo, in cui partendo da p si arriva a ¬ p, ma anche a p, e allora la contraddizione e data da p ∧ ¬ p e la conclusione e la negazionedella premessa, cioe ¬ p. Nel caso particolare in cui si parte da ¬ p e si arrivaa ¬¬ p, per la legge della doppia negazione si puo concludere p, e questa legge

(¬ p → p) → p,

in cui si dimostra p assumendo ¬ p e derivando p, cioe derivando quello chesi vuole dimostrare dalla propria negazione, ha talmente colpito la fantasiada essere chiamata consequentia mirabilis.

Un teorema in cui si puo riconoscere questa forma di argomento e quellocon cui si stabilisce che esistono infiniti numeri primi. Si puo formulare lastessa conclusione dimostrando che non ci sono solo k primi, qualsiasi sia k.

Supponiamo che ci siano solo (esattamente) k primi p0, p1, . . . , pk−1. Siconsidera il numero

N  = 1 + (2 · 3 · 5 · . . . · pk−1)

e si dimostra facilmente (con un argomento simile ad uno visto in precedenza)che nessuno dei primi p0, p1, . . . , pk−1 e un divisore di N , che peraltro e mag-giore di tutti questi. Ora si applica una distinzione di casi. Se N  e primo,

9Il piu grande intero ≤ √n.

10n < n congiunta con l’antiriflessivita di < da una contraddizione.

99

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 104/235

e un nuovo primo; se N  non e primo, e divisibile per un primo maggiore

dei p0, p1, . . . , pk−1, e in entrambi i casi non e vero che i numeri primi sonotutti i { p0, p1, . . . , pk−1}, o che ne esistono solo k. Quindi non esistono solok primi.211

Una riduzione all’assurdo si puo vedere anche quando si applica il modus

tollens ; infatti avendo p → q e ¬q si puo dire che se si avesse p, si avrebbeper modus ponens anche q, cioe insieme a ¬q una contraddizione; quindi ¬ p.Piu esplicitamente, da ¬q segue p → ¬q per la legge di affermazione delconseguente, quindi si ha sia p → q sia p → ¬q e si applica la riduzioneall’assurdo.

Viceversa la riduzione all’assurdo si puo derivare dalla contrapposizione,

perche da p → q ∧¬q contrappondendo si ha ¬q ∨ q → ¬ p, e q ∨¬q e la leggedel tertium non datur .

Alcune dimostrazioni per assurdo possono dunque essere sostituite daapplicazioni della contrapposizione.

Ad esempio, si consideri la dimostrazione del fatto che se b e c sono interie se l’equazione x2 + bx + c = 0 ha soluzioni razionali, queste in realta sonointere. Una dimostrazione in cui si usa la riduzione all’assurdo e la seguente.

Si parte da

x = −b±

√b2

−4c

2

e si osserva che per essere x intero occorre che il numeratore, intero peripotesi, sia pari. Per dimostrare che il numeratore e pari, essendovi un radi-cale che non e facile decidere che proprieta abbia, viene in mente di consid-erare il quadrato.

Abbiamo prima dimostrato che se un numero e dispari, il suo quadrato edispari. Se vogliamo (provare a) fare uso di questo fatto, possiamo impostareuna dimostrazione per assurdo, assumendo che il numeratore sia dispari.Allora il suo quadrato e dispari. Ma svolgendo i conti, si vede facilmente che

il quadrato e della forma 2m, cioe pari. Dunque che il numeratore sia dispariimplica una contraddizione, e il numeratore e pari.2

11La complicazione dell’argomento e dovuta anche alla complicazione della formulazionedell’enunciato di partenza, un po’ artificiosa. Se si fosse detto semplicemente che si in-tendeva dimostrare: dati k primi, ne esiste uno maggiore, si sarebbe potuto fare unadimostrazione diretta.

100

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 105/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 106/235

7.6 Dimostrazioni in avanti e all’indietro

Una distinzione che viene fatta tra possibili impostazioni delle dimostrazionie quella tra il procedere in avanti  ( forwards), a partire dalle ipotesi, versola conclusione oppure nel risalire indietro (backwards ), dalla conclusione aenunciati che implichino la conclusione, con l’obiettivo di arrivare tra questialle ipotesi.

La distinzione non coincide esattamente con quella tra le dimostrazionidirette e le altre, anche se vi sono collegamenti; la scelta tra le due strategiedipende spesso dalla forma delle ipotesi e della conclusione, o dalle conoscenzeche si hanno a proposito delle ipotesi stesse e di altri fatti connessi allapossibile conclusione.

Se la conclusione e un enunciato negativo, l’idea di una dimostrazioneper assurdo o per mezzo della contrapposizione e plausibile, anche se nongarantita. Ma ci sono altri motivi per scegliere questa strategia.

Ad esempio, per dimostrare che

Se 2n − 1 e primo, allora n e primo,

e piu facile, o almeno promettente, partire dalla conclusione in cui si parladi n, su cui con operazioni aritmetiche si puo arrivare a 2n − 1, che nonviceversa, visto che per estrarre n da 2n − 1 occorre passare attraverso unlog

2.In effetti, assumendo n non primo, quindi della forma n = hk, con h > 1

e k > 1, si puo osservare che

2n − 1 = (2h)k − 1 = mk − 1 = (m − 1)(mk−1 + . . . + 1)

che, per quel che si sa sui valori di h e k, fornisce una scomposizione di 2n−1nel prodotto di due fattori > 1.2

Analogamente, supponendo che si dovesse dimostrare

x +

1

x ≥ 2,

se x > 0, conviene partire dalla disuguaglianza da dimostrare, e compiere sudi essa manipolazioni algebriche che forniscono espressioni algebriche equiv-alenti, fino ad arrivare ad un risultato noto che vale per ogni x > 0.

102

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 107/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 108/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 109/235

sviluppato secondo la seguente procedura.Ad ogni stadio, si saranno gia prese in considerazione alcune proposizioni,messe tra parentesi quadre o segnate con un asterisco, e ne resteranno daconsiderare altre. Se sono gia state considerate tutte, l’albero e terminato ;se no, si prende in esame una proposizione A non ancora considerata, e aseconda della sua forma si prolunga l’albero nel modo seguente, dopo aversegnato A e aver notato quali sono i rami non chiusi che passano per A, doveun ramo si dice chiuso se su di esso occorre sia una proposizone sia la suanegazione:

• Se A e una proposizione senza connettivi, non si fa nulla (si va al passo

successivo).

• Se A e B ∧ C , alla fine di ogni ramo non chiuso passante per A siappendono alla foglia due nodi in serie etichettati con B e C , comenello schema:

[B ∧ C ]...↓F 

B↓C 

• Se A e B ∨ C , alla fine di ogni ramo non chiuso passante per A siaggiunge alla foglia una diramazione con due nodi B e C , come nelloschema:

[B ∨ C ]...↓F 

B C 

con l’ovvia generalizzazione (qui e nella prececente regola) che si ottieneapplicando ripetutamente la regola se si tratta di una congiunzione odisgiunzione generalizzata.

105

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 110/235

• Se A e B → C , alla fine di ogni ramo non chiuso passante per A siaggiunge alla foglia una diramazione con due nodi ¬B e C , come nelloschema:

[B → C ]...↓F 

¬B C 

• Se A e ¬B e B non ha connettivi, non si fa nulla.

• Se A e della forma ¬B e B e ¬C , al fondo di ogni ramo non chiusopassante per A si appende alla foglia il successore C , come nello schema:

[¬¬C ]...↓F 

↓C 

• Se A e della forma ¬B e B e B1 ∨ B2, alla fine di ogni ramo non chiusopassante per A si aggiungono alla foglia due nodi in serie ¬B1 e ¬B2,come nello schema:

[¬(B1 ∨ B2)]...↓F 

↓¬B1

↓¬B2

con l’ovvia generalizzazione se B e una disgiunzione generalizzata.

• Se A e della forma ¬B e B e B1 → B2, alla fine di ogni ramo nonchiuso passante per A si appendono alla foglia due successori in serie

106

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 111/235

B1 e ¬B2, come nello schema:

[¬(B1 → B2)]...↓F 

↓B1

↓¬B2

• Se A e della forma ¬B e B e B1 ∧ B2, alla fine di ogni ramo non chiusopassante per A si aggiunge alla foglia una diramazione con due nodi¬B1 e ¬B2, come nello schema:

[¬(B1 ∧ B2)]...↓F 

¬B1 ¬B2

Ovviamente se per il nodo in considerazione non passa alcun ramo non chiuso,non si fa nulla. Dalla formulazione e chiaro che quando tutti i rami sonochiusi il procedimento termina, anche se non tutte le proposizioni sono stateconsiderate, e in tal caso l’albero si considera terminato e si dice chiuso.

Non diamo le regole per il bicondizionale (esercizio) perche non sarebberoaltro che l’adattamento di quelle che derivano dal fatto che p ↔ q e equiva-lente a ( p → q) ∧ (q → p). Lo stesso per ⊕, ma si preferisce eliminare primaquesti connettivi (comunque si diano le regole per ⊕ esercizio), e questa el’unica preparazione o trasformazione che si fa sulle proposizioni; altrimenti

si prendono cosı come sono. !!!

Si leggano con attenzione le regole, cogliendone tutte le informazioni e ivincoli: ad esempio, quando si lavora su di un nodo, si aggiungono propo-sizioni su tutti  i rami passanti  per quel nodo, ma non sugli altri. !!!

107

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 112/235

Esempio1. Consideriamo la proposizione ¬((¬ p ∨ q) ∧ p → q) che mettiamo nella

radice dell’albero

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

2. Lavorando su di esso, che e la negazione di un condizionale, otteniamo

[¬((¬ p ∨ q) ∧ p → q)]↓

(¬ p ∨ q) ∧ p

↓¬q

3. Lavorando su (¬ p ∨ q) ∧ p otteniamo

[¬((¬ p ∨ q) ∧ p → q)]↓

[(¬ p ∨ q) ∧ p]↓

¬q

↓¬ p ∨ q

↓ p

4. Lavorando prima su ¬q, senza alcun effetto, e poi su ¬ p ∨ q

[¬((¬ p ∨ q) ∧ p → q)]↓

[(¬ p ∨ q) ∧ p]↓

[¬q]↓

[¬ p ∨ q]↓ p

¬  p q .

108

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 113/235

Non e neanche necessario indicare che si sono presi in considerazione lerestanti proposizioni, perche il loro effetto e nullo. L’albero e chiuso, perchesu uno dei sue due rami occorrono p e ¬ p, e sull’altro occorrono q e ¬q.

Se si deve interpretare come e stato ottenuto un albero sviluppato, e diaiuto che sia segnato a fianco di ogni proposizione l’ordine in cui e stata presain considerazione, come in

[¬((¬ p ∨ q) ∧ p → q)]1↓

[(¬ p ∨ q) ∧ p]2

[¬q]3↓

[¬ p ∨ q]4

↓ p

¬  p q .

Esempio

¬(( p ∧ q) ∨ (¬ p ∧ q) ∨ ¬q)1↓¬( p ∧ q)3

↓¬(¬ p ∧ q)4

↓¬¬q2

↓q

¬ p ¬q

chiuso

¬¬ p ¬q

chiuso

109

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 114/235

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

¬q

¬¬ p ¬q

come dovrebbe essere per il lavoro su ¬(¬ p ∧ q), perche il ramo e gia chiuso;il ramo di sinistra non e prolungato con

¬¬ p

 p

perche anch’esso chiuso.

8.2 Correttezza e completezza

Il primo problema con ogni algoritmo e quello della terminazione, in parti-colare per gli algoritmi di decisione; se l’algoritmo non si ferma sempre, conuna risposta, dopo un numero finito di passi, non ci si pu o affidare ad essoper decidere le questioni che interessano (nel senso di lanciarlo e stare adaspettare).

Lemma 8.2.1 (Terminazione) La costruzione dell’albero di refutazione in-

izializzato con una proposizione termina sempre in un numero finito di passi.

Dimostrazione. Se ad ogni stadio si lavora su una proposizione di quelle chehanno altezza massima n tra quelle non ancora considerate, l’applicazionedelle regole fa sı che dopo un numero finito di passi tutte quelle di altezzan siano state considerate, e l’altezza massima delle proposizioni non ancoraconsiderate sia quindi < n. Infatti le proposizioni introdotte nell’albero conle regole hanno tutte altezza minore della proposizione che governa la regola,

salvo il caso di B → C , per cui si introducono ¬B e C , e ¬B puo avere lastessa altezza di B → C  (quando? esercizio); ma la successiva applicazionedi una delle regole per proposizioni negate a ¬B, che si puo eseguire subito,la sostituisce con proposizioni di altezza minore.

Anche se dunque nel corso del procedimento il numero di proposizioninei nodi dell’albero cresce con il crescere dell’albero, diminuisce quello delle

110

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 115/235

proposizioni di altezza massima, e dopo un numero finito di passi ci sarannosolo proposizioni di altezza minima, senza connettivi, non ancora considerate,e a quel punto il processo termina, se non e terminato prima per la chiusuradell’albero. 2

Quando si da un metodo sintattico per rispondere a quesiti di naturasemantica (o un calcolo per risolvere un problema), si pone la questione, e larichiesta, della correttezza e completezza del metodo. Correttezza  significache le risposte che da il metodo sono giuste, completezza  significa che quandola risposta c’e il metodo la da, quella giusta.

Qualche ambiguita puo sussistere quando le domande possibili sono di-verse, e tuttavia collegate. Ad esempio per il fatto che

Osservazione 8.2.2 Per ogni  p,

A e una tautologia se e solo se ¬A e insoddisfacibile

ci si puo porre come problema semantico sia il problema della verita log-ica sia il problema dell’insoddisfacibilita. Un calcolo si puo pensare siacome calcolo per stabilire la verita logica sia come un calcolo per stabilirel’insoddisfacibilita. Scegliamo il metodo degli alberi di refutazione per il

problema dell’insoddisfacibilita, e come risposta preferenziale affermativa lachiusura dell’albero (un esito in generale piu rapido e che non richiede ulte-riori elaborazioni); abbiamo allora

Teorema 8.2.3 (Correttezza) Se l’albero di refutazione con radice A si 

chiude, allora  A e insoddisfacibile.

Dimostrazione2. Procediamo per contrapposizione dimostrando che se esisteun’interpretazione i che soddisfa A, allora a ogni stadio di sviluppo dell’alberoesiste almeno un ramo tale che i soddisfa tutti le proposizioni del ramo.Allora l’albero non e mai chiuso, perche se un ramo e chiuso non tutte le sue

proposizioni possono essere vere in una stessa interpretazione.Allo stadio n, consideriamo un ramo σ le cui proposizioni siano tuttesoddisfatte da i, e una proposizione B su di esso, quindi vera in i, e non

2Per questo e per il successivo teorema diamo dimostrazioni complete, anche se, es-

sendo per induzione, si potranno apprezzare solo in seguito. Si puo tuttavia gia cogliere

ugualmente l’essenza del ragionamento e la ragione della validita del risultato.

111

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 116/235

ancora considerata (se non ce ne sono, il lavoro su quel ramo e terminatosenza che esso sia chiuso, e tale rimane alla fine, e l’albero finale non echiuso). Se B e una congiunzione, al ramo sono aggiunti due nodi che sonoanch’essi etichettati con proposizioni vere in i, e il ramo prolungato soddisfa,allo stadio successivo, la proprieta richiesta. Se B e una disgiunzione B1∨B2,o il ramo3 σB1 o il ramo σB2 soddisfano la proprieta richiesta, a secondache B1 o B2 siano vere in i. Lo stesso vale per gli altri casi (esercizio). 2

Viceversa

Teorema 8.2.4 (Completezza) Se A e insoddisfacibile, l’albero di refu-

tazione con radice p si chiude.

Dimostrazione. Dimostriamo che

Lemma 8.2.5 Se l’albero non si chiude, allora per ogni ramo non chiuso

e terminato esiste un’interpretazione i che soddisfa tutti le proposizioni del 

ramo, inclusa la radice.

Dimostrazione del lemma . Sia σ un ramo non chiuso dell’albero terminato.Si definisca un’interpretazione i ponendo i( p) = 1 per ogni proposizioneatomica p che occorre come nodo nel ramo σ, e i( p) = 0 per ogni proposizioneatomica tale che ¬ p occorre come nodo nel ramo σ. Si dimostra ora che ogni

proposizione di σ e vera in i. Supponiamo questo verificato per tutte leproposizioni sul ramo che hanno un’altezza minore di un numero fissato n,e facciamo vedere che lo stesso vale per quelle di altezza n. Se B e unacongiunzione B1 ∧ B2, quando e stata presa in considerazione B si sonoaggiunti come nodi del ramo sia B1 che B2, che sono quindi in σ e hannoaltezza minore di n e quindi si suppongono vere in i; dunque anche B e verain i. Se B e una disgiunzione B1 ∨ B2, quando e stata presa in considerazioneB si sono aggiunti a tutti i rami passanti per B, incluso (quello che sarebbediventato) σ, o B1 o B2; quindi una delle due e su σ, e vera in i, quindi ancheB e vera. Gli altri casi si trattano nello stesso modo. 2 2

Se in un ramo terminato non chiuso manca una lettera che occorre nellaradice, nel definire l’interpretazione si puo dare ad essa il valore che si vuole;cio significa che al ramo e associata piu di una interpretazione.

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

112

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 117/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 118/235

↓A

↓¬B

dopo di che si continua lavorando solo su A e su ¬B e loro sottoproposizioni.Si puo addirittura partire con

A

↓¬B

se interessa la domanda A |= B.

8.3 Forme normali

Gli alberi di refutazione permettono di ottenere altre informazioni sulle propo-sizioni a cui si applicano. Se A e una proposizione soddisfacibile, e quindil’albero di refutazione con radice A non si chiude, una forma normale dis-giuntiva di A si puo ottenere nel seguente modo: per ogni ramo terminato

e non chiuso, si faccia la congiunzione di tutti i letterali che sono nodi del !!!ramo, quindi si faccia la disgiunzione di queste congiunzioni. Le proprietadimostrate della correttezza e della completezza garantiscono che questa dis-giunzione e proprio equivalente a A (esercizio).

Esempio

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

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

¬ p p↓ ↓

¬¬q ¬q

↓q .

114

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 119/235

L’albero non e chiuso e la forma normale disgiuntiva della radice e (¬ p ∧ q) ∨q ∨ ( p ∧ ¬q); i tre modelli dati dai tre rami non chiusi sono

i1( p) = 0, i1(q) = 1,i2(q) = 1,i3( p) = 1, i3(q) = 0

dove il secondo sta per due interpretazioni, di cui una per o coincide con laprima; rami diversi non danno necessariamente interpretazioni diverse. La !!!proposizione non e una tautologia in quanto manca l’interpretazione i( p) =i(q) = 0 tra i suoi modelli.

Se l’albero per A si chiude, si sa che A e una contraddizione e una formanormale disgiuntiva si scrive direttamente.

Dall’albero di A non si legge invece la forma normale congiuntiva di A;per ottenere questa, una via indiretta e la seguente: si mette nella radice ¬A, !!!si sviluppa l’albero per ¬A e si trova una forma normale disgiuntiva di ¬A.Quindi si nega questa premettendo una negazione, e si applicano le leggi diDe Morgan.

Poiche l’albero terminato e non chiuso permette di leggere i modelli dellaradice, per verificare che A e una tautologia si puo anche sviluppare l’alberocon radice A, e controllare che ci siano alla fine 2n interpretazioni associate ai

rami non chiusi, se A ha n lettere. Ma se la domanda e se A sia una tautologia,e piu conveniente impostare l’albero con ¬A, perche se la risposta e positiva !!!essa arriva dalla chiusura dell’albero, in generale piu in fretta dello sviluppointegrale dell’albero con radice A.

8.4 Esercizi

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

2. Verificare con gli alberi di refutazione se le seguenti proposizioni sonotautologie, e se no indicare i controesempi:

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

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

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

115

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 120/235

( p ∧ q) ∨ (¬ p ∧ q) ∨ ¬q.3. Verificare con gli alberi di refutazione che le seguenti proposizioni sono

insoddisfacibili:

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

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

( p → ¬q) ∧ ¬ p ∧ q

( p → ¬q) ∧ p ∧ q

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

4. Trovare con gli alberi di refutazione la forma normale disgiuntiva e imodelli delle seguenti proposizioni:

 p ∧ q → ( p → q)

 p ∧ q → ( p → q ∧ r)

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

5. Con gli alberi di refutazione trovare la forma normale congiuntiva delleseguenti proposizioni:

 p ∧ q → ( p → q ∧ r)

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

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

116

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 121/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 122/235

dalle variabili: “se x ha un amico, x e fortunato”. L’uso delle variabili o

della loro versione con pronomi presenta tuttavia aspetti delicati.Nella frase “se uno ha un  amico, uno e fortunato” - oppure “se x ha

y come amico, x e fortunato” - ci sono due tipi di “uno”, il primo “uno”soggetto, presente tacitamente anche come soggetto di “e fortunato”, e ilsecondo “un” di “ha un amico”2. Il primo “uno” significa “chi”, “chiunque”,il secondo significa “qualche”. La stessa parola “uno”, e le corrispondentivariabili x e y possono cioe avere sia un senso universale che uno particolare.

Anche se il senso della frase e ovvio, si puo dire meglio “chiunque abbiaqualche amico e fortunato”. La varieta di costrutti linguistici disponibiliha la funzione di evitare possibili ambiguita in altre frasi di non immediata

decifrazione.Un esempio di frase ambigua, se presa isolatamente, e “uno che segue ilcorso di Logica si addormenta”. Il professore spera che voglia solo dire chesi conosce uno studente che tende ad addormentarsi, ma magari gli studentiintendono che tutti si addormentano sempre.

L’uso delle variabili da sole non risolve le ambiguita, anzi le potrebbeaccrescere, se vengono a mancare le differenze di significato dei pronomispecifici; in “se x ha y come amico, x e fortunato”, se y fosse presa in sensouniversale, come la x, allora la frase significherebbe che chi e amico di tuttie fortunato, che e discutibile, piuttosto e un santo.

La stessa analisi si puo svolgere sul precedente esempio della definizionedi numero primo.

Un altro esempio e il seguente: nelle due frasi di argomento aritmetico

un numero moltiplicato per se stesso da 1

e

un numero sommato al suo opposto da 0

“un numero” e da intendersi in modo diverso; nel primo caso l’unico numerocon quella proprieta e 1, e la frase potrebbe essere una sua descrizione es-

trapolata dal contesto, o un indovinello: “quale e . . . ?”; nel secondo caso“un numero” significa “qualunque numero”.

2Non c’e differenza tra “uno” e “un”; si potrebbe dire in entrambi i casi “una persona”,ristabilendo l’uniformita. A seconda del contesto, “uno” puo essere reso da “una cosa”,“uan persona”, “un numero”, “un Tizio” e simili varianti inessenziali.

118

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 123/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 124/235

ma le variabili non rendono la duttilita delle parole che indicano se si parla

di uno, qualcuno o tutti. S’impone di nuovo una standardizzazione, neilinguaggi formali.

Si introducono due simboli che si chiamano quantificatori , rispettivamenteuniversale ∀ ed esistenziale ∃, e questi segni si premettono alle formule convariabili per segnalare che, nel loro raggio d’azione determinato dalle par-entesi, le variabili stesse devono essere intese nel senso di “tutti” ovvero nelsenso di “qualcuno”.

La frase precedente diventa allora

∃y(x = 2y) → ∀z(x + 1 = 2z).

Vero e che questi segni devono essere eliminati per svolgere le dimostrazioniche richiedono manipolazioni algebriche di formule, e si dovra arrivare a

x = 2y → x + 1 = 2z,

ma l’aver scritto i quantificatori aiuta a ricordare come devono essere trattatele variabili.

In questo caso, dato x, anche y e determinato e fissato (ancorche sconosci-uto, vedi nota precedente); x + 1 = 2z e un’affermazione relativa a tutti gli z

(a tutti i numeri da pensare presi come valori di z) e va dimostrato come sidimostrano le affermazioni universali, riferite a z. Ad esempio per assurdo,

oppure per induzione, tecnica che vedremo in seguito.Si noti che anche in italiano si passa spesso, nei ragionamenti, da frasi

che contengono i quantificatori “qualche”, “tutti”, o equivalenti, a frasi con“uno”, o equivalenti, vale a dire di quelle che prese isolatamente sarebberoambigue. Ad esempio, per giustificare l’affermazione “chi segue il corso diLogica non impara niente” si potrebbe argomentare nel seguente modo, primaeliminando un quantificatore universale e infine ripristinandolo: chiunquesegue il corso di Logica (prima o poi) si addormenta; uno che segue il corso diLogica si addormenta; uno che si addormenta perde qualche spiegazione; unoche perde una spiegazione non capisce neanche il resto; quindi uno che segue

il corso di Logica non capisce la materia, quindi, come volevasi dimostrare,tutti quelli che seguono il corso di Logica non imparano niente. Vedremo inseguito l’organizzazione in un formato standard di queste mosse logiche.

I quantificatori si tolgono nel corso di un argomento per poter lavoraresolo a livello proposizionale o algebrico; tale eliminazione e soggetta a precisivincoli che vedremo. Nelle definizioni invece occorre scrivere tutti i necessari

120

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 125/235

quantificatori nel modo corretto; non e lecito ometterne alcuni; la definizione

di “x e primo” e

“x e primo” se e solo se x > 1 ∧ ∀y(y | x → y = 1 ∨ y = x).

o piu esplicitamente

“x e primo” se e solo se x > 1 ∧ ∀y(∃z(y · z = x) → y = 1 ∨ y = x).

Lo stesso rigore occorre quando si vuole fare un’affermazione il cui sensodeve essere esplicito e netto. La frase “uno che ha un amico e fortunato”diventa, schematizzata, ∀x(∃yA(x, y) → F (x)).

Per spiegare come ci arriva, dobbiamo introdurre i simboli dei linguaggi 

predicativi , spiegando come sono analizzate e costruite ora le frasi simboliche,non solo come composizione proposizionale di frasi piu semplici ma anchegrazie ai legami stabiliti dalla presenza di soggetti o complementi in comune,quindi rappresentando la struttura interna delle frasi atomiche.

121

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 126/235

10 Linguaggi predicativi

10.1 Alfabeto

Le frasi elementari nel linguaggio naturale sono di diverso tipo, ma in tuttesi puo individuare un soggetto, un verbo e un complemento (eventualmentepiu soggetti e piu complementi, o nessuno). I verbi possono essere transitivio intransitivi, ed esprimere azioni o stati.

Si possono tutti standardizzare nella forma della attribuzione di una pro-prieta, o di un predicato, o di uno stato a uno o pi u termini. Questo cor-risponde se si vuole ad avere un solo verbo, la copula “essere”, nelle dueversioni “essere qualcosa” per i verbi intransitivi e “essere nella relazione . . .

con” per i verbi transitivi: “Giovanni dorme” puo diventare “Giovanni ha laproprieta (la caratteristica) di stare dormendo”, o “Giovanni e dormiente”;“Giovanni sta  dormendo” significa che Giovanni e nello stato di sonno; “Gio-vanni possiede un Piaggio 50” diventa “la relazione di possesso sussiste traGiovanni e un Piaggio 50”, o meglio “la relazione di possesso sussiste traGiovanni e una cosa, e questa cosa e un Piaggio 50”; “Giovanni ama Maria”,cosı come “Maria e amata da Giovanni”1, vuol dire che la relazione di amoresussiste tra Giovanni e Maria (ma non necessariamente tra Maria e Giovanni,perche la relazione di amore non e simmetrica).

Le frasi matematiche elementari, uguaglianze e disuguaglianze, “e uguale

a”, “e minore di”, rientrano in questa tipologia. Cosı quelle insiemistiche con“appartiene a”, cioe “e un elemento di”.

I soggetti e gli oggetti non sono denotati solo da nomi propri, ma anche dadescrizioni, o da pronomi. Ad esempio oltre ai nomi propri, come “Giovanni”e “2”, si possono avere descrizioni come “il padre di Giovanni”, “il presidentedella Repubblica”, “la radice quadrata di 2”. Tali descrizioni coinvolgonofunzioni, quando sono univoche, come nei precedenti esempi2. Chiamiamofunzione “il padre di . . . ” in analogia a quello che e “la radice di . . . ”.

Si introducono percio simboli per designare predicati, e altri per costruiretermini, che corrispondono alle descrizioni. Useremo preferibilmente le lettere

P , Q, R, . . . per predicati, le lettere f , g, . . . per funzioni, le lettere a, b,c, . . . per costanti (corrispondenti dei nomi propri), le lettere x, y, . . . pervariabili, con o senza indici.

1La distinzione tra forma attiva e passiva e inessenziale.2Per “padre” non e un controesempio alla funzionalita la famosa Lola, figlia di cento

padri e una madre sola.

122

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 127/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 128/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 129/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 130/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 131/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 132/235

5. “Maria ama il figlio di Giovanni” e formalizzata da

A(m, f (g))

dove m e g sono costanti, m per “Maria” e g per “Giovanni”, ed f  unsimbolo funzionale per “il figlio di . . . ”.

6. “Maria ama un figlio di Giovanni” e formalizzata da

∃x(A(m, x) ∧ F (x, g))

dove F  e un simbolo relazionale a due posti, e F (x, y) sta per “x e figliodi y”.

7. “Maria ama i figli di Giovanni”, che significa che Maria ama tutti i figlidi Giovanni, si formalizza con

∀x(F (x, g) → A(m, x))

e non con ∀x(A(m, x) ∧ F (x, g)); questa significa che tutti sono figli diGiovanni, e che Maria li ama tutti; il che implica che Giovanni sia Dio,e forse Maria la Madonna.

La frase “Maria ama uno che e figlio di Giovanni”, che significa “Mariaama uno, e questi e figlio di Giovanni”, che corrisponde a A(m, x) ∧F (x, g), potrebbe essere interpretata in modo ambiguo, ad esempiorivoltandola in “uno e figlio di Giovanni, Maria lo ama”; ma questanon va confusa con “uno che e figlio di Giovanni, Maria lo ama” che varesa da F (x, g) → A(m, x) (si veda il paragrafo 10.5 sui quantificatoriristretti).

8. La frase “dati due numeri, uno minore dell’altro, esiste un terzo numerocompreso tra i due”, vera nel campo reale, puo essere resa da

∀x∀y(x < y → ∃z(x < z ∧ z < y)).

La congiunzione x < z ∧ z < y si puo abbreviare, secondo l’uso matem-atico, con x < z < y.

Il complesso ∀x∀y . . . si legge “per ogni x e per ogni y . . . ”. E anche !!!

128

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 133/235

lecito abbreviare con ∀x , y . . . , cosı come ∃x∃y . . . con ∃x , y . . . .

Non esiste un quantificatore che quantifichi sulle coppie; ci si comportacome se la frase fosse “dato un primo numero e dato un secondo nu-mero . . . ”. Ma “un primo” e “un secondo” servono solo a facilitarel’espressione, si sarebbe potuto dire anche “dato un numero e dato unnumero . . . ”, con qualche difficolta nel seguito per i riferimenti appro-priati. Si faccia attenzione che neanche la presenza di “due” vuol direche i numeri devono essere considerati diversi; tale forma comune diespressione distingue il modo, il momento in cui i numeri sono presen-tati, o pensati, ma non e escluso che si presenti lo stesso numero duevolte.

Le parole “un primo”, “un secondo”, . . . , o “Tizio”, “Caio”, . . . sonoquelle che corrispondono alle diverse variabili di un linguaggio matem-atico o logico; le variabili corrispondenti potrebbero essere indicate conx1, x2, . . . ; anche x1 e x2 (o x e y) come variabili sono diverse ma, pren- !!!

dendo tutti i valori, possono anche prendere un valore uguale. Se sidice “dati due numeri esiste la loro somma” - formalmente ∀x∀y∃z(z =x + y) - non si eslcude che esista x + x, anzi lo si comprende. “Dati duenumeri” significa “fatta due volte la scelta di un numero”, e le sceltepossono cadere sullo stesso numero.

Quando tuttavia si mette la condizione “uno minore dell’altro”, allorasi esclude che possano essere uguali perche la relazione “minore di” none riflessiva. Tuttavia lo si esclude solo attraverso una deduzione, noncon la semplice scrittura: se x e y denotano lo stesso numero, e bisognaconsiderare anche questo caso, x < y → ∃z(x < z ∧z < y) e soddisfattacome condizionale con valori falso-falso.

Con “un terzo” di nuovo si vuol dire semplicemente “un numero”, eche sia diverso dai primi due segue automaticamente se “compreso”significa “strettamente compreso”, altrimenti, se fosse inteso come ≤allora potrebbe anche essere uguale a uno dei due; non e questo il sensodella frase, che vuole esprimere la densita dell’ordine dei numeri reali- e anche dei razionali. Se nella stessa formula il segno di relazione einterpretato su di una relazione riflessiva, come

∀x∀y(x ≤ y → ∃z(x ≤ z ∧ z ≤ y)),

o piu in generale

129

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 134/235

∀x∀y(R(x, y) → ∃z(R(x, z) ∧ R(z, y))) ∧ ∀xR(x, x),

allora la formula e banalmente vera per ogni relazione7.

9. La frase “dati due numeri diversi tra loro, esiste un numero che e pro-priamente compreso tra i due numeri dati” si rappresenta con

∀x∀y(x = y → ∃z(x < z < y ∨ y < z < x)).

La frase tra parentesi e soddisfatta da tutti gli x e y, anche quandox = y, perche allora l’antecedente e falso.

10. La frase “ogni numero positivo ha una radice quadrata”, vera nei reali,si rappresenta come

∀x(0 < x → ∃y(x = y2)).

11. La frase “esistono due numeri primi consecutivi” si rappresenta con

∃x∃y(x = y + 1 ∧ pr(x) ∧ pr(y)),

dove pr(x) e un’abbreviazione per la definizione di “x e primo” gia vista

x > 1 ∧ ∀z(∃u(z · u = x) → z = 1 ∨ z = x).

Che i numeri siano due non risulta dallo scrivere ∃x∃y ma da x = y + 1che implica x = y; infatti si potrebbe anche scrivere:

∃x( pr(x) ∧ pr(x + 1)),

dando per scontato (vedremo che si tratta di un assioma dei numerinaturali) che x = x + 1 e i numeri sono due.

7Con “banalmente” s’intende che dati x e y come z si puo prendere o x o y, e la formulanon ci da veramente informazioni.

130

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 135/235

10.3 Variabili libere e vincolate

La clausola 4 della definizione del linguaggio predicativo8 e la clausola nuova,rispetto al linguaggio proposizionale.

In una formula del tipo (∀xA), o (∃xA), A si chiama raggio d’azione

del primo quantificatore universale, o rispettivamente esistenziale. Tuttele occorrenze di x all’interno del raggio d’azione vanno intese in senso ouniversale, o rispettivamente esistenziale.

Naturalmente in (∀xA) fuori dal raggio d’azione del primo quantificatorenon c’e nulla, ma si potrebbe costruire (∀xA) ∧ B.

Per le occorrenze di x al di fuori del raggio d’azione del quantificatore, senon cadono dentro al raggio d’azione di un altro quantificatore, il senso in cui

vanno interpretate non e determinato. L’interpretazione di tutta la formulaallora e ambigua, o necessita di ulteriori precisazioni per essere compresa.

Ad esempio ∀x(x2 + 1 > 0), che si legge “per tutti gli x, x2 + 1 > 0”,ha un senso compiuto, e l’affermazione di un fatto, e in particolare e vera intutti i domini numerici usuali ordinati; nella formula

(∀x(x2 + 1 > 0)) ∧ x < 0

invece l’ultima x e indeterminata, non cadendo nel raggio d’azione di nessunquantificatore9. Si puo studiare l’insieme di verita associato; nell’universo deireali, per esempio, tale insieme e l’insieme dei numeri negativi; nell’universodei naturali, e vuoto. La prima parte ∀x(x2 + 1 > 0) della congiunzione evera in entrambi i casi e non contribuisce nulla alla delimitazione dell’insiemedi verita.

In ∀x(x2 + 1 > 0) ∧ ∃x(x < 0) l’ultima occorrenza di x cade nel raggiod’azione di ∃x, e si ha la congiunzione di due formule che corrispondonoentrambe ad affermazioni di senso compiuto, vere negli interi, razionali oreali, mentre la seconda e falsa nei naturali.

Le occorrenze di una variabile entro il raggio d’azione di un quantificatorerelativo a quella variabile si dicono vincolate dal quantificatore (e cosı pure lax adiacente a ∀ in ∀x o a ∃ in ∃x, che spesso non viene neanche menzionata);

altrimenti si dicono libere.8Con “linguaggio” s’intende talvolta il complesso di alfabeto, regole sintattiche e nozioni

semantiche, altre volte semplicemente l’insieme delle formule (o delle proposizioni per illinguaggio proposizionale).

9Abbiamo messo ancora le parentesi esterne a (∀x(x2 + 1 > 0)) perche fosse chiaro dovefinisce il raggio d’azione del quantificatore universale.

131

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 136/235

Se si vuole mettere in evidenza che la formula A contiene occorrenze libere

di x si scrive A(x), se contiene occorrenze libere di x e di y A(x, y).Qualche volta si dice brevemente che x e libera in A per dire che in

A vi sono occorrenze libere di x, o che x e vincolata per dire che vi sonooccorrenze vincolate, ma bisogna fare attenzione che allora come abbiamovisto una variabile puo essere sia libera sia vincolata in una formula.

Le formule in cui non ci sono occorrenze libere di variabili si dicono enun-

ciati . Sono le formule per cui ha senso chiedere se sono vere o false (una voltafissata l’interpretazione con il dominio di discorso).

Le formule che non sono enunciati non esprimono frasi, piuttosto definis-cono insiemi, o relazioni, a seconda di quante variabili libere hanno.

Un’altra loro funzione e quella di intervenire nel procedimento per de-cidere se gli enunciati sono veri o falsi.

In ∀x(x2 + 1 > 0) ∧ x < 0 le prime due occorrenze di x sono vincolate; laterza e libera.

In ∀x(x2 + 1 > 0) ∧ ∃x(x < 0) tutte le occorrenze della x sono vinco-late, ma le prime due dal quantificatore universale, le altre dal quantificatoreesistenziale.

Un quantificatore puo cadere entro il raggio d’azione di un altro quantifi-catore, come si e visto in diversi esempi.

Ma un quantificatore relativo a una variabile x puo anche cadere entro il !!!raggio d’azione di un altro quantificatore relativo alla stessa x. Ad esempio,dopo aver considerato la formula del tipo p(x), con una variabile x che occorrelibera:

∀x(x2 + 1 > 0) ∧ x < 0

nel dominio degli interi, e aver verificato che il suo insieme di verita non evuoto, si ottiene un enunciato vero premettendo ∃x. Infatti

V  p(x) = ∅ se e solo se ∃x(x ∈ V  p(x)) se e solo se ∃xp(x).

Ma allora si ottiene l’enunciato

∃x(∀x(x2 + 1 > 0) ∧ x < 0),

che richiede di essere letto con attenzione. Quando nella costruzione di unaformula si premette ad A un quantificatore con la variabile x, questo quan-tificatore vincola tutte le occorrenze di x che sono libere in A, e solo quelle.

132

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 137/235

Proprio per come e stato ottenuto, e chiaro che il quantificatore esistenziale

nell’esempio vincola l’occorrenza di x che prima era libera, cioe l’ultima, esolo quella. L’azione del quantificatore esistenziale premesso ∃x scavalca la !!!

parte . . . in

∀x(x2 + 1 > 0)∧x < 0,

dove non ci sono occorrenze libere di x, per agire su x < 0 dove x occorrelibera. Le occorrenze vincolate di x in . . . , essendo gia vincolate, sonoinsensibili all’azione di un altro quantificatore. In effetti, e come se fossescritto ad esempio

∀z(z2

+ 1 > 0) ∧ x < 0,

e si ottenesse percio

∃x(∀z(z2 + 1 > 0) ∧ x < 0),

che e un modo di scrivere l’enunciato piu chiaro, ed equivalente. Se si legge lafrase in italiano si vede bene che non c’e interferenza tra le occorrenze liberee vincolate di x, perche si possono usare locuzioni diverse; “esiste un numerotale che, mentre ogni numero elevato al quadrato e aumentato di 1 e maggioredi 0, lui e negativo”10. Ancor meglio, conviene leggere: “mentre ogni numero

elevato al quadrato e aumentato di 1 e maggiore di 0, esiste un numero chee negativo”. Infatti un altro modo di evitare difficolta interpretative e quellodi andare a piazzare il nuovo ∃x dove e richiesto, cioe scrivendo

∀x(x2 + 1 > 0) ∧ ∃x(x < 0).

Vedremo in seguito che tali trasformazioni equivalenti sono legittime.Infine un quantificatore relativo ad una variabile x si puo premettere an-

che a una formula che non contenga alcuna occorrenza di x libera, ad esempio∃x∀y(y2 + 1 > 0) o anche ∃x∀x(x2 + 1 > 0) o ∀x(y < 0). La definizione di“formula” non lo esclude11. In questi casi l’effetto del primo quantificatore

e nullo, la sua presenza superflua, e la formula ottenuta equivalente a quellaoriginaria.

10Si e usato qui “mentre” come congiunzione, per sottolineare la non connessione tra ledue parti della frase.

11Non lo esclude perche sarebbe stato complicato inserire la condizione sulle occorrenzelibere nella definizione stessa iniziale.

133

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 138/235

10.4 Interpretazioni

Le formule matematiche presentate negli esempi del paragrafo 10.2 possonoessere interpretate in diversi domini numerici; alcune sono vere negli uni efalse negli altri. La possibilita di diverse interpretazioni e ancora piu evidentein formule del tipo ∀x(∃yA(x, y) ↔ F (x)), dove ci sono simboli predicativi A

e F  che non hanno un’interpretazione nemmeno nell’uso comune (come e ilcaso dei simboli matematici), e questa e la caratteristica della logica formale.

∀x(∃yA(x, y) ↔ F (x)) puo essere interpretato nell’universo delle persone,e significare che chi ha un amico e felice, e solo se ha un amico - se A e F  sonointerpretati in questo modo12; ma lo stesso enunciato puo essere interpretatonei numeri naturali, usando A(x, y) per “x e divisibile per y con quoziente

maggiore di 1 e minore di x” e F (x) per “x e un numero composto”, el’enunciato e vero in questa intepretazione.

Prima di chiedersi se un enunciato e vero o no occorre precisare qualeinterpretazione si ha in mente, vale a dire innanzi tutto quale sia l’universo deldiscorso, che deve essere un insieme non vuoto U ; quindi si devono stabilire lerelazioni e funzioni su questo insieme che corrispondono ai simboli predicativie funzionali che occorrono nell’enunciato. Se ci sono costanti, bisogna fissaregli elementi di U  di cui le costanti sono nomi.

Dare un’interpretazione significa conoscere gli insiemi definiti dalle loroformule atomiche, o i loro insiemi di verita13

Dare un’interpretazione comporta anche in particolare di determinarequali elementi denotano le costanti e tutti i termini chiusi, e se questi el-ementi stanno o no nelle relazioni in esame, e quindi se gli enunciati atomicisono veri o no. Un enunciato privo di quantificatori, ma contenente connet-tivi, ad esempio 1 = 1 + 0 ∨ 1 = 1 e vero in un’interpretazione U  se assumeil valore 1 quando sia considerato come una proposizione costruita a partiredagli enunciati atomici, ai quali sono assegnati 1 o 0 a seconda che siano verio no nell’interpretazione U .

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

un’interpretazione U  se l’insieme di verita di A e tutto U . Si dice anche in

12Qualcuno potrebbe non essere d’accordo che l’enunciato e vero, perche il suo amicoe un cane, e se l’universo e l’universo delle persone, l’∃y non e verificato dal cane; se sivuole inserire anche gli animali nel discorso, allora l’universo deve essere modificato diconseguenza a tutti gli esseri viventi.

13Non si intende che queste conoscenze siano effettive, ma solo determinate in linea diprincipio.

134

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 139/235

tal caso che la formula A e valida  nell’interpretazione.

Un enunciato che inizia con un quantificatore universale ∃xA e vero inun’interpretazione U  se l’insieme di verita di A non e vuoto. Si dice ancheche la formula A e soddisfacibile nell’interpretazione U .

L’insieme di verita di una formula composta si ottiene ricordando la cor-rispondenza tra i connettivi e le operazioni insiemistiche, a partire dagli in-siemi corrispondenti alle formule atomiche.

Tuttavia l’interrelazione tra quantificatori e connettivi nella valutazione14

di una formula e resa complicata dal fatto che i quantificatori possono trovarsinon solo all’inizio di una formula. Ad esempio nell’insieme dei numeri interiZ, l’insieme di verita di

x > 0 ∧ ∃y(x = 2y)

e l’intersezione dell’insieme dei numeri positivi {x | x > 0} e dell’insieme{x | ∃y(x = 2y)}.

Per determinare questo insieme, occorre prima considerare l’insieme dicoppie {x, y | x = 2y }, che e una relazione, ed e l’insieme di verita dellaformula x = 2 · y nell’insieme Z×Z (esercizio: rappresentare questo insiemein un sistema di assi cartesiani xy nel piano), e quindi prendere le ascisse x diqueste coppie. Questo e in generale l’effetto di un quantificatore esistenziale∃, quello di eseguire una proiezione secondo l’asse della sua variabile.

Analogamente per ∀. L’insieme {x | ∀y(x |y)} si ottiene dall’insieme{x, y | x |y } considerando tutti e soli gli x tali che tutti i punti della rettaparallela all’asse y passante per l’ascissa x stanno nella relazione. Per questol’effetto di una quantificatore universale si chiama anche cilindrificazione. Inquesto caso si ha solo x = 1.

Nell’ultimo esempio si e usata l’abbreviazione “x divide y”, la quale tut-tavia a sua volta nasconde un quantificatore ∃z(x · z = y). L’insieme e sem-plice da rappresentare,e si decide facilmente quali coppie vi appartengano,ma in teoria si sarebbe dovuto seguire una strada assai poco intuitiva, partireda un insieme di terne {x,y,z | x · z = y} e proiettare secondo l’asse z,prima della cilindrificazione.

14Si chiama anche qui valutazione l’estensione dell’interpretazione a tutte le formule.

135

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 140/235

 T

 ¨  ¨  ¨  ¨ 

 ¨  ¨  ¨  ¨ 

 ¨  ¨  ¨  ¨ 

 ¨  ¨  ¨  ¨ 

 ¨  ¨  ¨ B

E

   r

   rx,xz,z

x, xz

x

yz

x

xz

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

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

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

La definizione di verita in U  di un enunciato A e allora la seguente:siccome se un enunciato A e vero in un’interpretazione su U , l’insieme {x ∈U  | A vero in U } e U , e se e falso e ∅, possiamo dire in generale che unenunciato e vero in U  se il suo insieme di verita e tutto U .

In particolare si noti che ∀xA e vero in U  se e solo se A e valida in U .Si giustifica cosı l’abitudine delle esposizioni di matematica di omettere iquantificatori universali, ad esempio davanti agli assiomi, presentati comeformule valide.

La verifica della verita di un enunciato si riduce quindi al calcolo delsuo insieme di verita, ∅ o U , calcolo che puo richiedere, come si e vistonell’esempio di sopra, la considerazioni di sottoinsiemi di U × U  o di spazi dimaggiori dimensioni.

L’insieme di verita di una formula soddisfa le seguenti condizioni:

se A e della forma ∀xB, l’insieme di verita di A e la cilindirificazionedell’insieme di verita di B; se A e un enunciato, il suo insieme di verita e U 

se l’insieme di verita di B e U , altrimenti e ∅;se A e della forma ∃xB, l’insieme di verita di A e la proiezione dell’insieme

di verita di B; se A e un enunciato, il suo insieme di verita e U  se l’insieme

di verita di B non e vuoto, altrimenti e ∅;se A e della forma ¬B, l’insieme di verita di A e il complemento dell’insieme

di verita di B;se A e della forma B ∧ C , l’insieme di verita di A e l’intersezione degli

insiemi di verita di B e di C ;se A e della forma B ∨ C , l’insieme di verita di A e l’unione degli insiemi

136

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 141/235

di verita di B e di C ;

se A e atomica, il suo insieme di verita e dato dalla relazione corrispon-dente al suo simbolo relazionale.

E palese la maggiore complessita della valutazione delle formule rispettoalle valutazioni proposizionali, e tanto piu e auspicabile trovare un riduzionemeccanica di tale compito.

Per lo studio di questioni logiche, si cerchera di usare ove possibile inter-pretazioni costruite su insiemi finiti, ovviamente piu maneggevoli; ma nonsara sempre possibile, perche esistono enunciati che hanno solo modelli in- !!!

finiti, ad esempio l’enunciato ∀x¬R(x, x) ∧ ∀x∃yR(x, y).

10.5 Sui quantificatori ristretti

L’interpretazione intesa per una formula spesso si coglie e si fa capire leggendoopportunamente i quantificatori, visto che le variabili variano - prendonovalori - nell’universo U  fissato. ∀x si puo allora leggere a seconda di come eU , “tutte le persone . . . ” oppure “tutti i numeri naturali . . . ”.

Le variabili non variano mai sulla totalita delle cose esistenti, ma su uninsieme (di volta in volta) fissato, anche se e chiamato universo. Ma e dettoanche opportunamente “modello”.

In molte frasi tuttavia i quantificatori apparentemente non si riferiscono a

tutti gli elementi dell’universo ma a parti piu ristrette; in un’interpretazionearitmetica per esempio non iniziano con “tutti i numeri” ma con “tutti inumeri positivi”, o “tutti i numeri primi”; e raramente si parla di tutti gliesseri viventi, ma piuttosto di tutti gli uomini, o di tutte le donne, o di tuttigli italiani e cosı via restringendo.

Talvolta si usano diverse specie di variabili, che variano su sottoinsiemidell’universo, come ad esempio quando si stanno studiando i numeri realie si dice che si useranno le lettere m, n a indicare numeri naturali. None tuttavia necessario avere a disposizione diversi quantificatori ristretti odiverse specie di variabili perche si realizzino queste possibilita, grazie all’uso

del condizionale materiale.Per affermare che tutti i numeri positivi hanno una radice quadrata, si e

scritto

∀x(0 < x → . . . );

per affermare che tutti i numeri primi maggiori di 2 sono dispari si scrive

137

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 142/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 143/235

∃y(2y = x ∧ ∃z(2z = y))

e

∃y(2y = x ∧ ∃y(2y = x)) ?

3. Quali sono gli insiemi di verita in N di

∃y(xy = 2 ∧ ∃z(yz = 2))

e

∃y(xy = 2 ∧ ∃y(xy = 2)) ?

4. In un’assemblea di politici, questi si dividono in onesti e disonesti, e sisa che a) esiste almeno un politico onesto; b) presi due politici a caso,uno almeno e disonesto. Si formalizzino le condizioni sui politici.

Se nell’assemblea ci sono cento politici, si puo decidere quanti sono glionesti e quanti i disonesti?

139

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 144/235

11 Leggi logiche

La terminologia semantica introdotta per i linguaggi proposizionali si estendeagli enunciati predicativi. Un’interpretazione (del linguaggio) dell’enunciatoA si dice modello di A se A e vero nell’interpretazione.

Un enunciato A si dice logicamente vero se e vero in ogni interpretazione,e si scrivera |= A.

Un enunciato B si dice conseguenza logica di A se in ogni interpretazionein cui A e vero anche B e vero, e si scrivera A |= B.

Un enunciato B si dice logicamente equivalente a un enunciato A se A |=B e B |= A.

Un enunciatoA

si dice insoddisfacibile o contraddittorio o inconsistentese non e vero in nessuna interpretazione.Vale ancora che per ogni A e B, A |= B se e solo se |= A → B se e solo

se A ∧ ¬B e insoddisfacibile.Qualche volta, poiche gli enunciati sono pur sempre formule, si dice anche

“A logicamente valida” per |= A.Ma inoltre si estendono le definizioni in modo da applicarle proprio anche

a formule con variabili libere. Se A e una formula in cui occorre x libera, A

si dice logicamente valida se ∀xA e logicamente vero, cosı come si dice validain un’interpretazione se ∀xA e vero in quell’interpretazione. Una formula sidice soddisfacibile se esiste un’interpretazione in cui essa e valida1.

Le formule logicamente valide continuano a chiamarsi anche leggi logiche.

Esempi di leggi logiche si ottengono facilmente partendo da tautolo-gie proposizionali e rimpiazzando le lettere che vi compaiono con formulequalunque di un linguaggio predicativo, la stessa formula a tutte le occor-renze della stessa lettera.

Ad esempio da |= p ∨ ¬ p segue |= ∃xP (x) ∨ ¬∃xP (x). Infatti, data unaqualunque intepretazione, con un qualunque predicato per P , in essa ∃xP (x)risultera o vero o falso. Se risulta vero, e come se si assegnasse il valore 1a p nella proposizione; se risulta falso, e come se si assegnasse 0 a p nella

proposizione; ma questa e una tautologia, per cui risulta vera in entrambii casi, e i calcoli che si fanno a partire dai valori di p per arrivare al valoredalla proposizione p ∨ ¬ p sono gli stessi che si fanno a partire dal fatto che∃xP (x) e vero o no per arrivare a dire se ∃xP (x) ∨ ¬∃xP (x) e vero o no. Non

1Si ricordi che invece una formula A si dice soddisfacibile in  un’interpretazione U  se∃xA e vero in U ; e generalizzando, se A e del tipo A(x, y), s’intende ∃x∃yA(x, y) vero.

140

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 145/235

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

e vero o falso, perche comunque essa sia, e comunque sia l’interpretazione diP , e quindi il valore di ∃xP (x), in essa ∃xP (x) ∨ ¬∃xP (x) risultera vero.

Lo stesso succede con qualsiasi altra tautologia, e con la sostituzione diuna qualunque formula.

Quindi tutte le leggi logiche proposizionali restano tali considerando ora lelettere A, B, . . . che vi compaiono come formule di un qualunque linguaggiopredicativo.

Ma esistono anche altre leggi logiche per formule con quantificatori chenon si ottengono in questo modo. Ad esempio

∀x¬A ↔ ¬∃xA

e una di queste2.Per verificarlo si ragiona nel seguente modo: in una qualunque interpre-

tazione, se ∀x¬A e vero, l’insieme di verita di ¬A e tutto l’universo, quindil’insieme di verita di A e vuoto; allora ∃xA e falso, e quindi ¬∃xA e vero.Analogamente nell’altra direzione (esercizio). 2

La legge si puo considerare una generalizzazione di quelle di De Morgan,se si pensa che affermare ∀xA(x) sia come fare una grande congiunzione pertutte le A(x), e affermare ∃xA(x), cioe che A vale per almeno un x, sia comefare una grande disgiunzione.

Si e visto gia nella definizione di unione e intersezione generalizzate comei quantificatori esistenziale ed universale siano usati come generalizzazionedella disgiunzione e della congiunzione.

Se si combina questa legge logica con quella della doppia negazione siottengono altre versioni, come

¬∀x¬A ↔ ∃xA

o

∀xA ↔ ¬∃x¬A

che mostrano come i due quantificatori non siano indipendenti, ma l’unodefinibile in termini dell’altro, e della negazione.

2Nella verifica di questa e delle successive leggi logiche, come gia nella precedenteA ∨ ¬A, supporremo per semplicita che si tratti di enunciati, per mostrare solo in modopiu facile l’idea soggiacente.

141

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 146/235

La legge tipica del quantificatore universale e la legge di particolariz-

zazione

∀xA(x) → A(t),

dove A(t) si ottiene sostituendo il termine t a tutte le occorrenze libere di x

in A.Questa legge intuitivamente esprime il fatto che, se in una qualunque

interpretazione vale ∀xA(x), allora A vale per un qualsiasi individuo, in par-ticolare quello descritto da t; ma occorre prestare attenzione alle insidie lin-guistiche non percepibili in una trattazione formale. La lettura della legge ecorretta se affermando che vale A(t) si intende che la proprieta espressa da

A vale per l’individuo rappresentato da t, sempre la stessa proprieta appli-cata a diversi individui. Alcune sostituzioni sintatticamente lecite tuttaviamodificano il senso di A(t).

Se ad esempio A(x) e la formula ∃y(x = y), allora e vero che, poniamonei naturali, ma qualsiasi interpretazione con almeno due elementi andrebbeugualmente bene, ∀x∃y(x = y) e in particolare ∃y(0 = y), ∃y(1 = y), ∃y(1 +1 = y), come pure ∃y(x2 = y) o ∃y(z = y).

Se pero si sostituisce a x la variabile y allora non si ha piu la stessaproprieta affermata per y, come prima lo era per x, o per z o per x2, ma siha ∃y(y = y), che a parte che e falsa, non ha piu lo stesso significato.

Un esempio tratto, forzosamente, dal linguaggio comune potrebbe essereil seguente, dove si suppone di usare “Tizio” e “Caio” come variabili: invecedi dire che ognuno ha un padre, si dica “ogni Tizio ha un Caio per padre”;particolarizzando, non si puo dedurre “Caio ha Caio per padre”.

Le sostituzioni richiedono cautela anche al di fuori del contesto della par-ticolarizzazione; ad esempio, posto che x|y ↔ ∃z(x · z = y) significa che x

divide y, allora (2x)|y significa che 2x divide y, 1|y che 1 divide y, 0|y che 0divide y, u|y che u divide y, ma z|y significa che y e un quadrato.

Quando si applica la legge di particolarizzazione per dedurre A(t) da !!!

∀xA(x) percio, t per essere ammissibile non deve essere e non deve contenerevariabili quantificate in A e tali che qualche occorrenza libera di x cade nelraggio d’azione di tali quantificatori. I termini chiusi sono sempre ammissi-bili.

Le applicazioni della legge sono frequenti; gli assiomi di una teoria sono ingenere enunciati che iniziano con un quantificatore universale (oppure sonopresentati come formule valide, supponendo tacitamente una possibilita di

142

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 147/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 148/235

che e valida in quanto si considerano solo sempre interpretazioni in cui

l’universo non e vuoto3

.

Sono leggi logiche anche le leggi di rinomina  delle variabili vincolate,

∀xA(x) ≡ ∀yA(y)

e

∃xA(x) ≡ ∃yA(y),

dove y e una variabile che non occorre in A(x)4. E come se in italiano unafrase venisse espressa una volta con un “tutti” una volta con “chiunque” oaltro costrutto.

Altre leggi stabiliscono dei rapporti tra connettivi e quantificatori chepermettono di trasformare le formule in altre equivalenti con un diverso segnologico principale:

∀x(A ∧ B) ≡ ∀xA ∧ ∀xB distributivita di ∀ su ∧∃x(A ∨ B) ≡ ∃xA ∨ ∃xB distributivita di ∃ su ∨

sono immediate conseguenze del significato dei simboli logici.Mentre e pure ovvio che siano logicamente valide

∀xA ∨ ∀xB → ∀x(A ∨ B)

∃x(A ∧ B) → ∃xA ∧ ∃xB,

non valgono le implicazioni inverse.Se ad esempio U  e un insieme con due elementi {a, b} e l’interpretazione

di P  e {a} e l’interpretazione di Q e {b}, allora in questa interpretazione∀x(P (x) ∨ Q(x)) e vero, mentre sono falsi sia ∀xP (x) (l’insieme di verita diP (x) non e tutto U ) sia ∀xQ(x).

Esercizio. Si trovi un’interpretazione in cui ∃xA∧∃xB e vero e ∃x(A∧B)e falso.

Sono particolarmente importanti le leggi che regolano i rapporti tra quan-

tificatori e condizionale. Mentre e facile convincersi che la distributivita di ∀su →3Se si scegliesse come U  l’insieme di tutte le creature della fantasia, non si potrebbe

pretendere, come non si pretende, che ivi valgano tutte le leggi della logica.4Sarebbero possibili condizioni meno forti sull’eventuale presenza di y in A(x), che

tuttavia devono sempre evitare che si verifichi il fenomeno di stravolgimento di sensoillustrato a proposito della particolarizzazione, e che non e il caso di approfondire.

144

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 149/235

∀x(A → B) → (∀xA → ∀xB)

e logicamente valida, l’inversa non lo e. Per trovare un controesempio, sideve pensare ad un’interpretazione in cui ∀xP (x) → ∀xQ(x) sia vero sem-plicemente perche ∀xP (x) e falso, mentre non e vero ∀x(P (x) → Q(x)).L’insieme U  = {a,b,c} con {a, b} per l’insieme di verita di P (x) e {b, c} perl’insieme di verita di Q(x) risponde allo scopo.

Se A non contiene x libera, allora

∀x(A → B(x)) ≡ A → ∀xB(x)

e

∃x(A → B(x)) ≡ A → ∃xB(x).

Per verificare la prima, dato un U  qualsiasi e supposto che A sia un enunciato,distinguiamo due casi. Se A e falso, A → ∀xB(x) e vero, ma d’altra parteanche ∀x(A → B(x)) e vero perche l’insieme di verita di A → B(x), che esempre soddisfatta se A e falso, e tutto U .

Se A e vero, l’insieme di verita di A → B(x) e uguale all’insieme di veritadi B(x). Se e uguale a U , ∀x(A → B(x)) e vero, ma anche ∀xB(x) lo e, ecosı pure A → ∀xB(x). Se non e uguale a U  si ha falso da entrambi i lati. 2

Queste leggi esprimono un caso particolare della possibilita di mettere ilquantificatore nella posizione in cui il suo raggio d’azione esplica la sua fun-zione effettiva, sulle occorrenze libere della variabile (spostarlo all’indentro).

Altri casi analoghi sono le leggi

∀x(A ∨ B(x)) ≡ A ∨ ∀xB(x)

e

∃x(A ∧ B(x)) ≡ A ∧ ∃xB(x)

se x non occorre libera in A.

Dello stesso tipo, ma piu sorprendenti forse sono le leggi !!!

∀x(A(x) → B) ≡ ∃xA(x) → B

e

∃x(A(x) → B) ≡ ∀xA(x) → B

145

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 150/235

se x non occorre libera in B.

La prima legge corrisponde al seguente uso linguistico: quando si diceche qualche cosa, espressa da B, dipende solo dal fatto che (l’insieme diverita di) A non sia vuoto, e non da un particolare elemento (come sarebbese x occorresse in B e dovesse soddisfarla), allora si puo enfatizzare chequalunque elemento va bene. Se si afferma “se uno ha un amico e felice” -∃xA(x, y) → F (y) - si vuol dire che qualunque sia l’amico, anche un cane,porta felicita (a y).

Per la dimostrazione, si supponga ∃xA(x) → B vero, quindi B vero o∃xA(x) falso. Se B e vero, allora l’insieme di verita di A(x) → B e tuttol’universo, perche per ogni elemento il condizionale ha il conseguente vero. Se

∃xA(x) e falso, di nuovo l’insieme di verita di A(x) → B e tutto l’universo,perche per ogni elemento il condizionale ha l’antecedente falso.Se invece ∃xA(x) → B e falso, allora B e falso e ∃xA(x) e vero, quindi

almeno un elemento soddisfa A. Quando si esamina la formula A(x) → B,per questo elemento si ha vero-falso per il condizionale, che risulta falso, equindi l’insieme di verita di A(x) → B non e tutto l’universo e ∀x(A(x) → B)e falso. 2

L’altra analoga legge si ricava nello stesso modo; se ∃x(A(x) → B) e veroin U , allora qualche elemento di U  soddisfa A(x) → B; se B e vero, anche∀xA(x) → B lo e; se A(x) non e soddisfatto da questo elemento, allora∀xA(x) e falso e ∀xA(x) → B e vero.

Se ∃x(A(x) → B) e falso, per qualunque elemento A(x) → B non esoddisfatta, quindi il calcolo del condizionale porta a un vero-falso, e A(x)deve essere soddisfatta e B deve essere falso; ma allora ∀xA(x) e vero e B efalso e ∀xA(x) → B falso. 2

Le equivalenze che permettono di spostare all’interno i quantificatori per-mettono anche di spostarli all’esterno; si ottiene cosı che ogni formula eequivalente ad una formula in cui tutti i quantificatori sono all’inizio - eformano il cosiddetto prefisso - seguiti da una formula senza quantificatori -detta matrice; una formula scritta in questo modo di dice in forma prenessa 5.

Ad esempio ∀xP (x)∨∀xQ(x) → ∀x(P (x)∨Q(x)) e equivalente (esercizio)a ∃x∃y∀z(P (x) ∨ Q(y) → P (z) ∨ Q(z)). Esistono altre forme prenesse dellastessa formula, a seconda dell’ordine in cui si esportano i quantificatori.

5L’interesse di tale trasformazione sta nel suo essere il passo preliminare diun’elaborazione su cui si basano i dimostratori automatici piu efficienti.

146

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 151/235

Leggi logiche notevoli 2

∀x¬A ↔ ¬∃xA interdef inibilita dei quantificatori

¬∀x¬A ↔ ∃xA

∀xA ↔ ¬∃x¬A

∀xA(x) → A(t) particolarizzazione (t ammissibile)A(t) → ∃xA(x) generalizzazione esistenziale ”∀xA(x) ↔ ∀yA(y) rinomina

∃xA(x) ↔ ∃yA(y) rinomina

∀x(A ∧ B) ↔ ∀xA ∧ ∀xB distributivita di ∀ su ∧

∃x

(A

∨B

) ↔ ∃xA

∨ ∃xB distributivit

`a di

∃su

∨∀xA ∨ ∀xB → ∀x(A ∨ B) distributivita parziale di ∀ su ∨∃x(A ∧ B) → ∃xA ∧ ∃xB distributivita parziale di ∃ su ∧∀x(A → B) → ∀xA → ∀xB distributivita parziale di ∀ su →∀x(A → B(x)) ↔ A → ∀xB(x) (x non libera in A)∃x(A → B(x)) ↔ A → ∃xB(x) (x non libera in A)∀x(A ∨ B(x)) ↔ A ∨ ∀xB(x) (x non libera in A)∃x(A ∧ B(x)) ↔ A ∧ ∃xB(x) (x non libera in A)∀x(A(x) → B) ↔ ∃xA(x) → B (x non libera in B)∃x(A(x) → B) ↔ ∀xA(x) → B (x non libera in B)∀x∀yA(x, y) ↔ ∀y∀xA(x, y) scambio dei quantificatori

∃x∃yA(x, y) ↔ ∃y∃xA(x, y) scambio dei quantificatori

11.1 Esercizi

1. Trasformare in forma prenessa le seguenti formule:

∀x∃yR(x, y) ∧ (∃xP (x) ∨ ∃xQ(x))

∀x∃yR(x, y) ∨ (∃xP (x) ∧ ∃xQ(x))

∀xP (x) ∨ ∀x(Q(x) → ∃zR(x, z))∀x(P (x) ∨ ∀xQ(x)) → ∃x(P (x) ∨ Q(x)).

2. Dedurre la generalizzazione esistenziale dalla particolarizzazione uni-versale e da De Morgan generalizzata.

147

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 152/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 153/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 154/235

all’inizio, non contemplava elementi sconosciuti, ma enunciati determinati.

E infine nella dimostrazione non si e usata alcuna proprieta di c, se non ilfatto che x = 2c.

Si conclude allora che ¬∃y(x + 1 = 2y) e stata in realta dedotta da∃y(x = 2y). 26

Quest’ultimo passaggio tecnicamente chiude l’applicazione della regoladell’esemplificazione esistenziale, che copre tutti i passi dal momento in cuisi dice “sia c un elemento tale che x = 2c” fino a quando scompare la c. Essopuo sembrare diverso da una meccanica applicazione di una regola sintattica(una o due premesse e una conclusione immediata).

Prima di discutere questo fatto, vediamo un altro esempio: dimostriamoche se un numero e divisibile per 4 allora e divisibile per 2. In questo casol’elemento sconosciuto apparentemente si mantiene fino alla fine, nella con-clusione, ed allora deve essere eliminato da questa con un’applicazione dellageneralizzazione esistenziale.

Da

∃y(x = 4y)

si passa a

x = 4c

x = (2 · 2)cx = 2(2c)

Di qui si vede che x e divisibile per 2, ma non si puo terminare con questaformula. Per generalizzazione esistenziale invece, considerata la formula x =2(2c) del tipo A(t), con A(y) uguale a x = 2y e t uguale a 2c, si puo alloradedurre

∃y(x = 2y),

quest’ultimo passaggio come applicazione della generalizzazione esistenziale,

per concludere

∃y(x = 4y) → ∃y(x = 2y)

6La dimostrazione termina poi scrivendo prima ∃y(x = 2y) → ¬∃y(x+1 = 2y) e quindipoiche x era qualunque, ∀x(∃y(x = 2y) → ¬∃y(x + 1 = 2y)).

150

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 155/235

e

∀x(∃y(x = 4y) → ∃y(x = 2y)). 2

Il problema logico della regola di esemplificazione esistenziale consiste nelfatto che A(c) non e conseguenza logica di ∃yA(y), e quindi nella successionedi formule che costituiscono la proposta dimostrazione non ogni formula econseguenza logica delle precedenti (o un assioma del dominio in oggetto ouna legge logica).

A(c) non e conseguenza logica di ∃yA(y) perche puo succedere che inun’interpretazione ∃yA(y) sia vero ma c non sia uno degli elementi che sod-

disfano A. Ad esempio ∃y(0 < y) e vero in N, ma se c denota 0 allora 0 < ce falso. E vero che noi affermiamo A(c), ma questa si presenta come unanuova assunzione su c, non come una conseguenza di ∃yA(y).

Si puo tuttavia dimostrare che, nelle condizioni della regola applicata a !!!

∃yA(y), se B e una formula che non contiene c, e se B e conseguenza logicadi A(c) allora B e conseguenza logica di ∃yA(y) - nonostante A(c) non siaconseguenza logica di ∃yA(y).

Noi facciamo vedere che la regola di esemplificazione esistenziale si puogiustificare con una serie di regole logiche usuali, nel senso che le sue ap-plicazioni possono essere sostituite da altri ragionamenti che non ne fannouso.

Consideriamo di nuovo l’esempio di

∃y(x = 2y) → ¬∃y(x + 1 = 2y).

Se si ricorda la dimostrazione precedente, il problema e sempre quello ditogliere i quantificatori, in modo da poter manipolare poi le formule atomicheche si trovano nell’antecedente e nel conseguente.

Poiche y non e libera nel conseguente, si puo scrivere in modo equivalente

∀y(x = 2y → ¬∃y(x + 1 = 2y));

come nell’esempio dell’amico che rende felici, che puo essere qualunque, ancheora si dice che y puo essere qualunque, purche soddisfi poi l’antecedentex = 2y.

Allora y e trattata in questa versione della dimostrazione come una vari-abile universale. Data una y qualunque, occorre dimostrare che

151

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 156/235

x = 2y → ¬∃y(x + 1 = 2y),

ovvero

x = 2y → ∀y(x + 1 = 2y).

Il quantificatore del conseguente puo essere spostato nel prefisso, dopo avereseguito un’opportuna rinomina, e la formula da dimostrare e equivalente a

∀z(x = 2y → x + 1 = 2z);

quindi possiamo provare a dimostrare

x = 2y → x + 1 = 2z,

con tutte le variabili intese in senso universale.Per assurdo, assumiamo la negazione del condizionale, quindi

x = 2y ∧ x + 1 = 2z,

e con gli stessi calcoli fatti sopra, con y e z al posto rispettivamente di c e d,arriviamo a una contraddizione.

Abbiamo quindi

x = 2y → x + 1 = 2z,

e quantificando universalmente

∀x∀y∀z(x = 2y → x + 1 = 2z),

da cui con le leggi logiche pertinenti

∀x(∃y(x = 2y) → ∀z(x + 1 = 2z)). 2

Si noti che di solito nel gergo matematico, dove non si usa indicare iquantificatori, attraverso un’interpretazione (corretta) dell’enunciato da di-mostrare si imposta direttamente proprio

se x = 2y, allora x + 1 = 2z.

Altro esempio. Per dimostrare

∃y(x = 4y) → ∃y(x = 2y)

152

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 157/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 158/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 159/235

non terminato, come in sospeso, per il riferimento a questo elemento sconosci-

uto. La costante o variabile puo scomparire o per passaggi proposizionali(come sopra, una dimostrazione per assurdo di un altro enunciato, oppureper il taglio di un modus ponens), o per generalizzazione esistenziale.

L’affermazione ∃yA(y) introdotta per generalizzazione esistenziale com-porta un’affermazione apparentemente piu debole, generica, rispetto a A(t),che sembra indicare esplicitamente un elemento con la proprieta A, ma nelleapplicazioni come si e visto, se t deriva da un’esemplificazione esistenziale,allora in realta anche la sua denotazione e vaga.

Quello che bisogna assolutamente evitare e di quantificare universalmente !!!

una variabile che sia stata introdotta come esemplificazione di un quantifica-

tore esistenziale (in questo l’uso di una costante ha ovvi vantaggi).

Un esempio di errore clamoroso dovuto a una simile disattenzione e laseguente dimostrazione di ∃x∀y(x < y) a partire da ∀x∃y(x < y).

Assunto ∀x∃y(x < y), per particolarizzazione si ha ∃y(x < y); per es-emplificazione esistenziale, sia y tale che x < y. Se ora dimenticandosi dellanatura esistenziale di y si affermasse ∀y(x < y) si potrebbe concludere pergeneralizzazione esistenziale che ∃x∀y(x < y).

Ma questa conclusione non e conseguenza della premessa, come si vededal fatto che la premessa e ad esempio vera negli interi, mentre la conclusionenon lo e.

A differenza di ∀x∀y e ∃x∃y, non, si possono in generale scambiare tra !!!loro i quantificatori in ∀x∃y e ∃x∀y9.

Anche la gestione della introduzione del quantificatore universale e piudelicata di quanto finora abbiamo lasciato intendere. Si possono legittima-mente (ri)quantificare universalmente le variabili libere che derivano per par-ticolarizzazione da un quantificatore universale, ma non e questa tutta lastoria. A volte sembra di lavorare con varibili libere che non derivano dauna particolarizzazione, e che pure hanno un significato universale. La veracondizione e che le variabili non occorrano libere nelle premesse. !!!

Ad esempio, se si parte da 0 < x e con un argomento corretto, utilizzandole proprieta dei numeri reali, si conclude ∃y(x = y2), non si puo affermare∀x∃y(x = y2) - c’e una condizione restrittiva su x stabilita dalla premessa.In realta l’argomento che porta da 0 < x a ∃y(x = y2) stabilisce 0 < x →

9Capita con prefissi diversi di due forme premesse equivalenti di una stessa formula.

155

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 160/235

∃y(x = y2) per x qualunque, senza alcuna premessa (salvo le proprieta dei

numeri reali espresse da enunciati, senza variabili libere). Quindi x non elibera nelle premesse della derivazione di quest’ultima formula, che non cisono, e si puo correttamente quantificarla in ∀x(0 < x → ∃y(x = y2)).

Un altro caso del genere si ha nell’esempio precedente “se x e pari allorax + 1 e dispari”. La dimostrazione che da “x e pari” porta a “x + 1 e dispari”stabilisce “x e pari → x + 1 e dispari” senza premesse che non siano gliassiomi dei numeri naturali, espressi da enunciati. Quindi si puo quantificareuniversalmente la x.

Un esempio di errore dovuto a cattiva gestione della quantificazione uni-

versale e il seguente. Da ∀x∃y(x < y), per particolarizzazione si ha ∃y(x < y)e per esemplificazione, sia c tale che x < c. Se ora si quantifica universalmentex si ottiene ∀x(x < c) e per generalizzazione esistenziale ∃y∀x(x < y). Laconclusione, che afferma l’esistenza di un massimo per <, e palesemente falsanei naturali, dove invece la premessa e vera. Ma la premessa e un enunciato,e sembrerebbe quindi che non vi fossero variabili libere nelle premesse. Laspiegazione sta nel fatto che quanto si dice “sia c tale che x < c” inizia, come !!!

abbiamo detto sopra, un argomento particolare, una sorta di dimostrazione aparte che non si considera conclusa finche tale c non sparisce legittimamente.In questa dimostrazione subordinata, x < c e una premessa, e x e libera in

x < c, e non e lecito percio quantificare universalmente la x.

Queste sottigliezze sono precisate e rese di agevole applicazione nei sis-temi di regole che costituiscono i calcoli logici per i linguaggi predicativi, adesempio il calcolo della deduzione naturale, che rientrano negli argomenti nonpropedeutici.

Esercizio. Si deduca con una dimostrazione la risposta all’esercizio 4 di10.6.

156

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 161/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 162/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 163/235

Il secondo parametro e la disposizione dei tre predicati nelle tre propo-

sizioni, e si chiama figura . Se si standardizza le presentazione, ad esempiochiedendo che la conclusione contenga sempre la coppia S P  nell’ordine - dacui il nome di questi due predicati4 -, osservando che il termine medio devesempre comparire in entrambe le premesse - altrimenti si vede facilmente cheil sillogismo non e valido5 - e che l’ordine delle premesse non e rilevante (perla terminologia, si chiama premessa maggiore quella che contiene S , e minore

l’altra) si ottengono in tutto quattro figure:

S M S M M S M S  

P M M P M P P M.

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

Dimostrare la validita di un sillogismo equivale a dimostrare che la con-clusione e conseguenza logica delle premesse, e questo si puo fare con laderivazione della conclusione dalle premesse con passaggi che conservano laconseguenza logica. Per dimostrare che un sillogismo non e valido, quandonon lo e, non basta non riuscire a costruire la derivazione dalle premesse,occorre trovare un controesempio.

Per svolgere le dimostrazioni, occorre usare solo, sulle premesse, la regoladi particolarizzazione sugli enunciati universali e quella di esemplificazioneesistenziale sugli enunciati esistenziali; questa conviene applicarla prima dellaparticolarizzazione. Quindi si applicano leggi proposizionali e infine i quan-tificatori si reintroducono o con la generalizzazione esistenziale, se la conclu-sione e esistenziale, o con quella universale, se la conclusione e universale.

EsempiDerivazione della conclusione dalle premesse del sillogismo valido

4

Sono grammaticalmente il soggetto e il predicato della conclusione.5A meno che la conclusione non coincida con una premessa.6Una lunga controversia ha riguardato il fatto di considerare o no predicati vuoti,

decisione che influenza la validita o meno di certi sillogismi. Nell’antichita si preferiva evi-tarli; nella trattazione moderna prevale l’interpretazione cosiddetta booleana, che ammettepredicati vuoti. Sono 15 i sillogismi validi nell’interpretazione booleana.

159

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 164/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 165/235

In modo del tutto analogo, si dimostri (esercizio) la validita del sillogismo:

A : P M 

O : S M 

O : S P ,ovvero

∀x(P (x) → M (x))∃x(S (x) ∧ ¬M (x))

∃x(S (x) ∧ ¬P (x)).

Un altro esempio di sillogismo valido e il seguente:

A : M S 

I  : M P I  : S P ,

ovvero

∀x(M (x) → S (x))∃x(M (x) ∧ P (x))∃x(S (x) ∧ P (x)).

con la dimostrazione:

161

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 166/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 167/235

con la seguente dimostrazione:

Dimostrazione

Linguaggio predicativo Linguaggio naturale

∀x(S (x) → M (x)) Tutti gli S sono M.

S (x) → M (x) Uno che sia un S e anche un M.

∀x(M (x) → P (x)) T utti gli M sono P.

M (x) → P (x) Uno che sia un M  e anche un P.

 per transitivita da 2 e 4S (x) → P (x) Uno che sia un S  e anche un P.

∀x(S (x) → P (x)) T utti gli S sono P.

Si noti che “Qualche S  e P ” sembra piu debole di “Tutti gli S  sono P ”, e

quindi si potrebbe pensare che sia conseguenza delle stesse premesse. Inveceil sillogismo

A : S M 

A : M P 

I  : S P ,

ovvero

∀x(S (x) → M (x))∀x(M (x) → P (x))∃x(S (x) ∧ P (x)),

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

163

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 168/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 169/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 170/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 171/235

E  : P M 

A : S M E  : S P 

ovvero

∀x(P (x) → ¬M (x))∀x(S (x) → M (x))∀x(S (x) → P (x))

e valido:

Dimostrazione

Linguaggio predicativo Linguaggio naturale

∀x(P (x) → ¬M (x)) Nessun P  e M.

P (x) → ¬M (x) Uno che sia P non e M.

  per contrapposizione

M (x) → ¬P (x) Allora uno che sia M non e P.

∀x(S (x) → M (x)) Ogni S  e M.

S (x) → M (x) Uno che sia un S  e M. per transitivita di →

S (x) → ¬P (x) Quindi uno che sia un S non e P.

∀x(S (x) → ¬P (x)) Nessun S  e P.

Esercizio. Si mostri che il sorite di Lewis Carroll si puo anche spezzare indue sillogismi di cui il primo ha come premesse b) e c). Quale e la conclusioneintermedia?

13.2 Diagrammi di Venn

I tre predicati che intervengono in ogni sillogismo sono rappresentati da treinsiemi, come in figura, senza escludere a priori nessuna possibilita per quanto

167

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 172/235

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

cerchi).

&%'$&%'$

&%'$S P 

Nel disegno sono presenti diverse aree: S , S ∩ P , S ∩ M , S ∩ P  ∩ M , S \ P ,S  \ M , S  \ (P  ∪ M ), . . . (completare per esercizio). Alcune possono esserevuote, altre no, a seconda degli insiemi, e di quanto su di essi stipulano lepremesse.

Le premesse dei sillogismi si riferiscono solo ad alcune delle aree e sonoequivalenti all’asserzione che certe intersezioni sono vuote o non vuote:

A : S M S ∩ (∼ M ) = ∅

E  : S M S ∩ M  = ∅I  : S M S ∩ M  = ∅O : S M S ∩ (∼ M ) = ∅

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

Dato un sillogismo, se le aree corrispondenti a una sua proposizione risul-tano vuote le tratteggiamo, se non vuote mettiamo una crocetta all’interno. !!!

EsempiConsideriamo il sillogismo:

A : P M 

O : S M 

O : S P 

ovvero

168

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 173/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 174/235

perche P  ⊆ ∼ M . La seconda premessa ci fa mettere una crocetta nell’area

S ∩ M , ma di fatto nell’area S ∩ M  ∩ (∼ P ) perche S ∩ M  ∩ P  = ∅.

&%'$&%'$

&%'$×

S P 

Come conseguenza si ha una crocetta in S ∩ (∼ P ), che e quello che affermala conclusione: S ∩ (∼ P ) = ∅.

Consideriamo ora un sillogismo non valido:

A : S M 

I : M P I : S P 

ovvero∀x(S (x) → M (x))∃x(M (x) ∧ P (x))∃x(S (x) ∧ P (x)).

La prima premessa fa tratteggiare S  ∩ (∼ M ) che e vuota essendo S  ⊆ M .La seconda premessa ci fa mettere una crocetta in M ∩ P , ma questa e divisa

in due sottoaree M  ∩ P  ∩ S  e M  ∩ P  ∩ (∼ S ), e non sappiamo dove metterela crocetta. La si mette sulla linea di divisione delle due sottoaree, proprio !!!per indicare che non si sa in quale parte metterla.

170

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 175/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 176/235

14 Alberi di refutazione

14.1 Regole per i quantificatori

La tecnica degli alberi di refutazione si estende agli enunciati dei linguaggipredicativi aggiungendo le seguenti regole:

• Se A e ∃xB, si introduce una nuova costante c e alla fine di ogni ramonon chiuso passante per A si appende alla foglia il successore B(c)1,come nello schema

[∃xB]

...

B(c)

• Se A e ¬∀xB, si introduce una nuova costante c e alla fine di ogni ramonon chiuso passante per A si appende alla foglia il successore ¬B(c),come nello schema

[¬∀xB]

...

¬B(c)

• Se A Se A e ∀xB, allora alla fine di ogni ramo non chiuso passante perA, per tutti i termini chiusi t1, . . . , tn che occorrono in qualche enunciato

del ramo, e tali che B(ti) non occorre gia nel ramo, si appendono allafoglia n + 1 nodi in serie, prima B(t1), . . . , B(tn) e poi ancora ∀xB, !!!come nello schema

1S’intende che se B non contiene la x libera B(c) e B.

172

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 177/235

[∀xB]

...

B(t1)

↓...

B(tn)

∀xB

• Se A Se A e ¬∃xB, allora alla fine di ogni ramo non chiuso passante perA, per tutti i termini chiusi t1, . . . , tn che occorrono in qualche enunciatodel ramo, e tali che B(ti) non occorre gia nel ramo, si appendono allafoglia n + 1 nodi in serie ¬B(t1), . . . , ¬B(tn), e poi ancora ¬∃xB, come !!!nello schema

[¬∃xB]

...

¬B(t1)

↓...

¬B(tn)

¬∃xB

173

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 178/235

Se l’albero e inizializzato con un enunciato, tutti i nodi dell’albero sono

etichettati con enunciati, di un linguaggio possibilmente arricchito con nuovecostanti. Il ruolo dei letterali e ora svolto dagli enunciati atomici e dallenegazioni degli enunciati atomici.

Basterebbero due regole, perche quelle per la negazione di un quantifica-tore sono ottenute considerando che ¬∀ e equivalente a ∃¬ e ¬∃ a ∀¬. Leprime due regole corrispondono all’esemplificazione esistenziale, le altre duealla particolarizzazione.

Nell’applicazione della regola per ∃xB la costante deve essere diversa daquelle che occorrono gia in enunciati del ramo - nuova perche le informazioni !!!disponibili non permettono di dire se l’elemento che esemplifica B sia uno gianoto o no - ma non necessariamente diversa da quelle che sono solo su altrirami. Ogni ramo e una strada indipendente dalle altre; tuttavia per evitareconfusioni e bene ogni volta prendere una costante che sia diversa da tuttequelle che occorrono in tutto l’albero.

Il senso delle due ultime regole e il seguente; si vorrebbe sostituire a x

tutti i termini chiusi; ma questi sono in generale infiniti, e neppure ben deter-minati, per il fatto che successive applicazioni delle altre regole ad altri nodipossono introdurre nuove costanti sui rami considerati; allora s’incomincia asostituire i termini esplicitamente esistenti, ma si riscrive l’enunciato ∀xB in

modo che quando eventualmente (se il ramo non si e nel frattempo chiuso) sitorna a considerare l’enunciato, se nel frattempo si sono creati nuovi terminichiusi anche i nuovi vengano sostituiti (si veda l’esempio qui sotto).

Se in una prima applicazione delle ultime due regole non esistono terminichiusi negli enunciati dell’albero, si introduce una nuova costante c e si sos-tituisce quella (ma si tratta di un’eccezione, da non confondere con la regola !!!per ∃; e come se ci fosse sempre una costante iniziale, ad esempio in c = c

congiunta alla radice).

In pratica, non c’e bisogno di riscrivere ∀xB, basta non marcarlo come

gia considerato e ricordarsi di tornare periodicamente a visitarlo. E quandotutti gli altri enunciati siano stati considerati e non ci siano altri termini dasostituire, lo si marca definitivamente per terminare.

EsempiL’albero:

174

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 179/235

¬(∀x(P (x) → Q(x)) → (∀xP (x) → ∀xQ(x)))1

↓∀x(P (x) → Q(x))5

↓¬(∀xP (x) → ∀xQ(x))2

↓∀xP (x)4

↓¬∀xQ(x)3

↓¬Q(c)

↓P (c)↓

P (c) → Q(c)

¬P (c) Q(c)chiuso chiuso

e chiuso.

L’albero:

∃xP (x) ∧ ∀x(P (x) → ∃yQ(y)) ∧ ¬∃yQ(y)1

↓∃xP (x)2

↓∀x(P (x) → ∃yQ(y))3,7

↓¬∃yQ(y)4,8

↓P (c)

P (c) → ∃yQ(y)5

↓¬Q(c)

¬P (c) ∃yQ(y)6

chiuso ↓

175

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 180/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 181/235

I precendenti esempi di alberi chiusi verificano il primo che ∀x(P (x) →

Q(x)) |= ∀xP (x) → ∀xQ(x) e il secondo che ∃xP (x)∧∀x(P (x) → ∃yQ(y)) |=∃yQ(y).

Teorema 14.1.2 (Completezza) Se A e insoddisfacibile, l’albero con radice

A si chiude.

La dimostrazione come nel caso proposizionale segue dal

Lemma 14.1.1 Se l’albero di refutazione con radice A non si chiude, allora 

per ogni ramo non chiuso, finito e terminato, o infinito, esiste un modello di 

A.

Considereremo solo alcuni esempi per mostrare come si definiscono le inter-pretazioni per i rami non chiusi, per enunciati che non contengono simbolifunzionali.

EsempioL’albero

P (c) ∧ (∃xP (x) → ∃xQ(x)↓

P (c)

↓∃xP (x) → ∃xQ(x)

¬∃xP (x) ∃xQ(x)

↓ ↓¬P (c) Q(d)

chiuso

mostra che l’enunciato P (c) ∧ (∃xP (x) → ∃xQ(x)) e soddisfacibile conun modello, dato dal ramo di destra, perche quello di sinistra e chiuso.

L’interpretazione e definita nel seguente modo: l’universo e l’insieme dellecostanti che occorrono in enunciati del ramo, in questo caso U  = {c, d}; !!!quindi i predicati sono definiti in base a quali enunciati atomici occorronosul ramo, in questo caso P  = {c}, che deve rendere vero P (c), e Q = {d},che rende vero Q(d).

177

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 182/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 183/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 184/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 185/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 186/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 187/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 188/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 189/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 190/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 191/235

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

La dimostrazione del passo induttivo e la parte piu importante e delicata;la base di solito si riduce a calcoli di verifica. Trattandosi di un enunciatouniversale, la dimostrazione di solito si imposta come dimostrazione di

A(x) → A(x + 1)

per un x generico.Si assume quindi A(x), chiamandola ipotesi induttiva  e si cerca di dedurre

A(x + 1):

A(x) Ipotesi induttiva...A(x + 1).

Come abbiamo osservato in precedenza, se si riesce a dedurre A(x + 1)dall’assunzione A(x) si stabilisce A(x) → A(x + 1) senza alcuna assunzioneparticolare, a parte gli assiomi che sono enunciati, e quindi si puo quantificareuniversalmente ∀x(A(x) → A(x + 1)).

Una volta dimostrato il passo induttivo - e la base - la conclusione ∀xA(x)segue come bonus.

Errori umoristici non infrequenti: !!!

da A(x), per sostituzione, A(x + 1)oppureda A(x), direttamente per generalizzazione ∀xA(x).

Qualcuno giustifica questi errori alludendo a difficolta immaginarie dovutea una pericolosa somiglianza tra quello che si deve dimostrare e quello chesi assume. Ma nella dimostrazione del passo induttivo la tesi ∀xA(x) noninterviene per nulla. Quello che si assume nel passo induttivo, A(x), e che A

valga per un  elemento, ancorche non precisato; quello che si vuole dimostrarein grande e ∀xA(x), cioe che A vale per tutti gli elementi; in piccolo, nel passoinduttivo, si vuole solo dimostrare che A vale per un altro elemento, una belladifferenza, anche sintatticamente visibile, se si usassero i quantificatori.

Se ci sono difficolta ad ogni modo, sono le difficolta tipiche della manipo-lazione di variabili e quantificatori.

187

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 192/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 193/235

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

,

riscrivere questa somma come

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

,

facendo emergere un’espressione 1 + 2 + . . . + n che e parte di P (n), di cuiin particolare P (n) afferma l’uguaglianza con altra espressione; si osservaquindi che “per ipotesi induttiva”, cioe facendo giocare a questo punto unruolo a P (n), essa si puo sostituire secondo quanto detta P (n) ottenendo

n(n+1)2

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

;

si verifica quindi che quest’ultima uguaglianza e valida, perche diventa

(n+1)(n+2)2

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

e quindi P (n + 1) e dimostrato. 2

Avvertenza P (n + 1) e dimostrato dai passaggi di sopra non perche da !!!

esso segua un’identita; lo studente di logica sa che dal fatto che A → B siavero e B sia vero non segue la verita di A.

In realta i passaggi di sopra vanno letti all’indietro partendo dall’ultimauguaglianza, e tutte le uguaglianze scritte sono tra loro equivalenti (se si

assume P (n)). P (n + 1) e conseguenza di P (n) e din(n+1)

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

, che e un’identita aritmetica.

In questa impostazione, ci sono due movimenti logici all’indietro: innanzitutto si parte dalla tesi da dimostrare P (n + 1), quindi si sviluppa una seriedi uguaglianze, che tuttavia, essendo collegate da equivalenza, vanno lettenell’ordine inverso, dall’ultima identita fino a P (n + 1). Se si a disagio, in al-ternativa si puo partire, sempre in un’impostazione parzialmente all’indietro,non da P (n + 1) ma dall’espressione

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

di cui si vuole trovare il valore che confermi P (n + 1).Un primo passo e quello di riempire l’ignoto “?” con qualcosa di noto, ad

esempio

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

189

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 194/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 195/235

1 − 12

+ 13

+ . . . + 1n

− 1n+1

si puo riscrivere

(1 − 12

) + ( 13 − 1

4) + . . . + ( 1

n− 1

n+1)

per la proprieta associativa, e quindi osservare che e la somma di quan-tita tutte positive. 2

Si noti che l’ipotesi induttiva interviene solo in uno dei due casi in cui edistinta la dimostrazione del passo induttivo, ma comunque interviene.

Se si fosse voluto dimostrare che

1 − 12

+ 13

+ . . . + (−1)i−1 1i

+ . . . − 12n

> 0

non ci sarebbe stato bisogno dell’induzione e si sarebbe potuto procederecome nel precedente caso pari con la sola proprieta associativa.

In verita anche questa proprieta dipende dall’induzione, perche in unatrattazione sistematica l’associativita della somma, come anche il fatto chela somma di un numero finito di addendi positivi e positiva, si dimostrano aloro volta per induzione, e lo vedremo piu avanti quando discuteremo dellasomma generalizzata.

Tutti i risultati aritmetici dipendono dall’induzione, perche questo e il soloassioma dell’aritmetica, a parte quelli riguardanti 0 e successore. Tuttaviac’eun uso prossimo e uno remoto dell’induzione; se si conoscono dei risultati(comunque a loro volta siano stati dimostrati) e li si usa in modo direttoin una dimostrazione, questa per parte sua non e una dimostrazione perinduzione.

Esistono casi in cui invece si ha una scelta tra due metodi dimostrativi,uno per induzione e uno no. Ad esempio si puo dimostrare per induzione chen3 − n e multiplo di 3: partendo da (n + 1)3 − (n + 1)

(n + 1)3 − (n + 1) = n3 + 3n2 + 3n + 1 − n − 1 = (n3 − n) + 3n2 + 3n

che e divisibile per 3 in quanto somma di addendi tutti divisibili per 3 (ilprimo per ipotesi induttiva). 2

Ma si puo anche fattorizzare n3 − n in (n − 1)n(n +1) e osservare che unodei tre consecutivi deve essere divisibile per 3. 2

191

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 196/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 197/235

Con “induzione empirica” si intende il passaggio da un numero finito, limitato,

di osservazioni, alla formulazione di una legge generale; dal fatto che tutti i cigniosservati sono bianchi alla affermazione che tutti i cigni sono bianchi. L’esempio,classico nei testi di filosofia della scienza, e stupido, ma e difficile trovarne di scien-tifici, nonostante si pensi che l’induzione caratterizzi le scienze empiriche, percheforme di induzione di questo genere sono in verita del tutto estranee alla ricerca sci-entifica. La parola e usata comunque in contrasto con “deduzione”, a indicare unpassaggio dal particolare all’universale (come se la deduzione fosse, cosa che non e,se non raramente, un passaggio dall’universale al particolare13). L’induzione em-pirica e anche detta induzione per enumerazione, dizione che suggeriamo di evitareperche non faccia venire in mente i numeri.

Quando all’inizio dell’eta moderna si ebbe una ripresa della ricerca matematica,

la parola “induzione” era usata nella scienza per indicare la formulazione di leggigenerali suggerite e verificate da un certo numero di casi particolari. Anche i

matematici, figli del loro tempo, usavano la parola in questo modo e per essere

scienziati pretendevano di usare anch’essi l’induzione. Lo si riscontra soprattutto

in quegli autori, come Eulero, che basavano le loro congetture su molti calcoli ed

esplorazioni delle proprieta dei numeri. Il primo autore che formulo e propose

il principio d’induzione matematica nella forma moderna fu Pascal, ed egli volle

chiamare cosı questo principio, che implicitamente era stato usato gia da Euclide

e da Fermat in altra versione14, considerandolo la vera forma d’induzione adatta

a, o tipica della matematica . In verita non v’e alcun rapporto; e vero che con

l’induzione matematica si arriva a una conclusione valida per l’infinita dei numericon due soli passaggi, ma si tratta di due dimostrazioni, non di due osservazioni.

L’esplorazione di un piccolo numero di casi non e mai sufficiente a di-mostrare ∀xA(x); al massimo puo servire a trovare un controesempio, se sie fortunati. L’induzione empirica addirittura puo essere ingannevole quandosono tanti i casi confermati; “tanti” e sempre relativo; ad esempio il polinomio

f (n) = n2 + n + 41

e tale che f (n) e un numero primo per n = 0, 1, 2, . . . , 39 (verificare qualche

caso). La congettura che si potrebbe indurre che f (n) sia sempre primo etuttavia smentita dal controesempio

f (40) = 402 + 40 + 41 = 402 + 80 + 1 = (40 + 1)2 = 412.

13Lo e solo nelle applicazioni della particolarizzazione universale.14Il principio della discesa finita, discusso piu avanti.

193

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 198/235

Di fronte alla congettura che f (n) sia sempre primo, naturalmente viene

naturale l’idea di controllare gli eventuali zeri e scomporre il polinomio (sesi sa che gli zeri permettono una scomposizione). Il tentativo di dimostrareil passo induttivo invece fallisce per mancanza di idee.

L’esplorazione empirica e utile tuttavia e raccomandabile quando non !!!

viene proposta una formula da dimostrare, ma la si deve trovare, quandocioe bisogna formulare una congettura - e poi dimostrarla.

Ad esempio se si vuole trovare una formula per

12

+ 12·3

+ 13·4

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

,

se si calcolano i primi valori dell’espressione

n = 1 12

= 12

n = 2 12

+ 12·3

= 23

n = 3 12

+ 12·3

+ 13·4

= 34

si puo arrivare alla congettura che la risposta in generale sia nn+1

, quindiprovare a dimostrarla (esercizio, e come ulteriore esercizio trovare e dimostrarela formula in modo algebrico senza induzione).

Quando come in questo caso si esegue un’induzione empirica, convienefare attenzione che i calcoli possono dire di piu che suggerire solo la con-gettura, possono anche suggerire la traccia della dimostrazione del passoinduttivo.

Consideriamo ad esempio come si possa valutare e dimostrare l’espressioneper la somma dei primi dispari

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

I primi calcoli mostrano come risultato dei quadrati,

n= 0 1 = 1n = 1 1 + 3 = 4

n = 2 1 + 3 + 5 = 9n = 3 1 + 3 + 5 + 7 = 16

ed e semplice forse il riconoscimento puro e semplice della legge, ma si puofare di meglio: se si riporta nella riga sottostante il valore ottenuto, per la

194

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 199/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 200/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 201/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 202/235

15.5 Esercizi

Sono diversi i campi in cui l’induzione si rivela utile. Il piu ricco di appli-cazioni naturalmente e quello della

AritmeticaSi dimostri per induzione, e anche in altro modo se possibile:

1. 12

+ 12·3

+ 13·4

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

= nn+1

2. 1 + 4 + 9 + . . . + n2 = n(n+1)(2n+1)6

3. 2 + 4 + . . . + 2n = ?

4. 2 + 6 + 12 + . . . + (n2 − n) = n3−n3

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

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

7. n5 + 4n + 10 e divisibile per 5

8. n ≥ 3 → (n + 1)2 < 2n2

9. n > 0 → 2n | (n + 1)(n + 2) · · · (2n)

10. 1 + r + r2 + . . . + rn = rn+1−1r−1

.

11. Calcolare il posto del termine t

m   . . .n nell’enumerazione dei termini vista

nell’esempio del paragrafo 10.2

Problemi divertenti:

12. Ammettiamo di avere francobolli da 3 e da 5 centesimi. Far vedere chequalsiasi tassa postale maggiore di 7 puo essere pagata con bolli da 3e 5.

Suggerimento: prima si suppone che per n si sia usato almeno un bolloda 5; poi, se si sono usati solo bolli da 3, si osserva che n deve esserealmeno 9.

Alternativa: distinguere i tre casi: n = 3k, n = 3k + 1, n = 3k + 2.

198

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 203/235

13. Lo stesso con

bolli da 2 e 3, tutti gli n maggiori di 1,

bolli da 3 e 7, tutti quelli maggiori di 11,

bolli da 2 e da 2k + 1, tutti quelli maggiori di 2k − 1.

Esercizi di geometria:

14. Quante rette passano per n punti (di cui mai tre allineati)?

Suggerimento: impostare un ragionamento induttivo “se si aggiungeun punto . . . ”.

15. Quante sono le diagonali di un poligono convesso di n lati?

16. Quante diagonali non intersecantesi occorrono per dividere un poligonoconvesso di n lati in triangoli disgiunti?

17. La somma degli angoli interni di un poligono convesso con n lati eπ(n − 2).

Argomenti di analisi:

18. Se n intervalli su una retta sono a due a due non disgiunti, la loro

intersezione non e vuota.Suggerimento: anche se la base e n = 2, nella dimostrazione del passoinduttivo occorre (almeno nell’impostazione in mente a chi scrive) uti-lizzare il caso n = 3, che va dimostrato a parte, sfruttando proprieta diconnessione degli intervalli (se due punti appartengono a un intervallo,tutti i punti intermedi anche vi appartengono).

Combinatoria:

19. Quante sono le funzioni da un insieme con n elementi in un insieme con

m elementi?Suggerimento. Per induzione su n, con un ragionamento induttivo.Supposto di conoscere quante sono le funzioni da un insieme X  con n

elementi in un insieme Y  con m elementi, si aggiunga a X  un elementoa ∈ X . Le funzioni di dominio X  ∪ {a} si ottengono da quelle didominio X  aggiungendo una coppia a, y con y ∈ Y .

199

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 204/235

20. Quanti sono i sottoinsiemi di un insieme con n elementi?

21. Quante sono le relazioni tra un insieme con m elementi e un insiemecon n elementi?

22. Quante sono le permutazioni di un insieme con n elementi?

23. In una festa, le buone maniere richiedono che ogni persona saluti con un“Buona sera” ogni altra persona, una sola volta; se ci sono n persone,quanti “Buona sera” sono pronunciati? E se ci si da la mano, quantestrette di mano occorrono?

24. Con quale degli esercizi precedenti si gia risolto il problema 20?

Facciamo osservare che molti problemi in cui il passo induttivo, ses’imposta un ragionamento per induzione, consiste in un +n, come al-cuni di quelli di sopra, si possono risolvere anche direttamente con unconto del numero di eventi rilevanti, che porta non a caso a risultatiin forma di prodotto; e un’applicazione del cosiddetto principio fonda-

mentale del conteggio che vedremo piu avanti.

Teoria degli algoritmi:

25. La Torre di Hanoi. Ci sono tre aste verticali; all’inizio su di una sonoinfilzati n dischi con un buco in mezzo, di raggio decrescente dal basso

verso l’alto. Bisogna spostare la pila in un’altra asta, muovendo undisco alla volta da una pila e infilzandolo in un’altra, servendosi anchedella terza asta come passaggio. La condizione e che in nessun momentosu nessuna pila ci sia un disco al di sotto del quale ce ne e uno di raggiominore.

Dimostrare che lo spostamento e possibile, per induzione su n, risol-vendo prima n = 3, e calcolare quante mosse (ogni mossa e lo sposta-mento di un disco) sono necessarie.

200

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 205/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 206/235

definisce ricorsivamente f (x1, . . . , xr, x) a partire da g e h.

Questa forma di ricorsione si chiama propriamente ricorsione primitiva ,ma non cosidereremo forme piu generali di ricorsione17.

In una ricorsione primitiva, il valore di f  ( con valori fissati dei parametri)per ogni numero x maggiore di 0 dipende, attraverso operazioni note, dalvalore di f  per il predecessore x. x si chiama anche variabile di ricorsione.

E ovvia la differenza rispetto alle definizioni esplicite; l’equazione di ri-corsione f (x1, . . . , xr, x) = h(x1, . . . , xr, x , f  (x1, . . . , xr, x)) non e del tipof (x) = . . . 18 dove . . . non  contiene f , come richiesto dalla definibilita es-plicita, al contrario la definizione appare circolare.

Un teorema generale, che dipende solo dalla struttura fondamentale diN

, cioe dagli assiomi che abbiamo proposto, afferma che questo tipo didefinizione individua una e una sola funzione che soddisfa le equazioni diricorsione per tutti i possibili argomenti.

Dal precedente esempio, e chiaro come si possa ottenere ogni valore conun numero finito di passi.

L’unicita della funzione si dimostra nel seguente modo. Supponiamo chedue funzioni f 1 ed f 2 soddisfino entrambe le equazioni. Dimostriamo perinduzione su x che f 1 e f 2 hanno sempre lo stesso valore:

Base: f 1(x1, . . . , xr, 0) = g(x1, . . . , xr) = f 2(x1, . . . , xr, 0).

Passo induttivo: Se f 1(x1, . . . , xr, x) = f 2(x1, . . . , xr, x), allora

f 1(x1, . . . , xr, x) = h((x1, . . . , xr, x , f  1(x1, . . . , xr, x))= h((x1, . . . , xr, x , f  2(x1, . . . , xr, x))= f 2((x1, . . . , xr, x).2

Con ovvie modifiche si definiscono ricorsivamente funzioni N \ Nk −→ N

con equazioni del tipo

f (k) = n0

f (x) = h(x, f (x)) x ≥ k.

Con una semplice ricorsione primitiva si definisce l’addizione:

17L’argomento rientra in un’introduzione alla teoria della calcolabilita.18x sta per una n-upla di elementi, n imprecisato.

202

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 207/235

x + 0 = x

x + y

= (x + y)

.

In queste equazioni + e il nuovo simbolo per la funzione da definire, a dueargomenti; x funge da parametro e y da variabile di ricorsione. Le funzionidate sono per la prima equazione la funzione identita x → x e per la secondala funzione successore.

Si vede che, se con 1 si indica 0, allora x + 1 = x + 0 = (x + 0) = x.

Con l’addizione a disposizione si definisce ricorsivamente la moltiplicazionecome una iterazione dell’addizione con le equazioni:

x · 0 = 0x · y = x · y + x.

In modo analogo si definiscono la potenza, come iterazione del prodotto,e altre operazioni aritmetiche. Ad esempio il fattoriale

0! = 1x! = x! · x.

La definizione del prodotto permette di dimostrare che la cardinalita19

c(X  × Y ) del prodotto cartesiano di due insiemi X  e Y  e c(X ) · c(Y ):

Siano X  e Y  due insiemi di cardinalita rispettivamente n ed m. Se a Y si aggiunge un elemento a ∈ Y , allora

X  × (Y  ∪ {a}) = (X  × Y ) ∪ {x, a | x ∈ X }.

Ma ovviamente c({x, a | x ∈ X }) = c(X ) = n, ed inoltre X  × Y  e {x, a |x ∈ X } sono disgiunti (vedi esercizi), per cui

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

A questo risultato si da addirittura il nome di Fundamental Counting Prin-

ciple per la sua untilita in combinatoria, quando si devono contare i casi.

Quando una funzione e definita per ricorsione, la dimostrazione delle sueproprieta e svolta nel modo piu naturale per induzione. Ad esempio dimos-triamo la proprieta associativa dell’addizione:

19Il numero di elementi.

203

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 208/235

(x + y) + z = x + (y + z),

per induzione su z.

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

Passo induttivo: Se (x + y) + z = (x + (y + z), allora

(x + y) + z = ((x + y) + z)

= (x + (y + z))

= x + (y + z)

= x + (y + z

).2

Con la ricorsione non si definiscono solo funzioni numeriche, ma anchefunzioni non numeriche che dipendono da un parametro numerico. Ad esem-pio l’unione e l’intersezione generalizzata di n insiemi A1, . . . , An si possonodefinire con

1i=1 Ai = A1

n+1i=1 Ai = (n

i=1 Ai) ∪ An+1

e rispettivamente

1

i=1 Ai = A1

n+1i=1 Ai = (

n

i=1 Ai) ∩ An+1.

Se gli insiemi sono dati come A0, . . . , An l’unione si definisce come

0

i=0 Ai = A0n+1i=0 Ai = (

n

i=0 Ai) ∪ An+1

e analogamente per l’intersezione.

Se invece si vuole definire un’unione generalizzata su infiniti insiemi

204

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 209/235

i∈N     

X i,

o ∞

i=0 X i,

si ricorre come si e visto alla generalizzazione della definizione originaria:x ∈

i∈N     

X i se e solo se esiste un i ∈ N tale che x ∈ X i.Analogamente per l’intersezione.

In modo ricorsivo si definisce anche la somma generalizzata, o sommatoria 

da 1 a n (per la sommatoria da 0 a n si applicano agli indici le stesse modifiche

di sopra per l’unione):

1

i=1 ai = a1

n+1i=1 ai = (

n

i=1 ai) + an+1,

o piu in generalen

i=k ai, per n ≥ k ≥ 0, con

k

i=k

ai = ak

n+1i=k ai = (

n

i=k ai) + an+1.

La sommatoria infinita

i=0 ai rientra negll’argomento delle serie, studi-ate in Analisi.

Anche le relazioni possono essere definite per ricorsione, sostituendo equiv-alenze alle uguaglianze, ad esempio

x < 0 ↔ x = xx < y ↔ x < y ∨ x = y,

o con un altro metodo che vedremo in seguito e che utilizza anche nellanotazione la definizione di relazione come insieme di coppie ordinate.

205

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 210/235

La ricorsione primitiva puo essere combinata con altre forme di definizione,

come la definizione per casi, o essere usata per definire simultaneamente duefunzioni.

Un esempio e la seguente definizione di quoziente e resto per la divisionedi m per n, con m ≥ n > 0 (n e fissato, la ricorsione e su m).

qm+1 =

qm se rm < n − 1qm + 1 se rm = n − 1

rm+1 =

rm + 1 se rm < n − 10 se rm = n − 1

(qm e un’altra notazione per q(m); si dovrebbe scrivere q(m, n) o qm,n, manon e il caso di appesantire la notazione).

Come base della ricorsione si pone, per m = n, qn = 1 e rn = 0. Sidimostra (esercizio) per induzione su m, con base m = n, che

m = nqm + rm con 0 ≤ rm < n,

ottenendo quindi il teorema fondamentale della divisione

∃q∃r(m = nq + r ∧ 0 ≤ r < n).

Alcune forme frequenti di ricorsione non hanno apparentemente il formatodella ricorsione primitiva; ad esempio la successione20 dei numeri di Fibonacci 

e definita in modo che, a parte i primi due, arbitrari, ogni elemento dipendedai due immediati predecessori21:

a0 = 1a1 = 1an+2 = an + an+1.

Tali forme di ricorsione sono di fatto riconducibili alla ricorsione primitiva,

e le proprieta di una successione come quella di Fibonacci possono esseremeglio dimostrate con un’induzione appropriata, come vedremo, oltre checon quella normale.

20Una successione a0, a1, . . . di elementi di un insieme U  non e altro che una funzioneN −→ U  tale che n → an, e si indica {an | n ∈ N} o brevemente {an}.

21Horstmann, p. 273 e p. 646.

206

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 211/235

15.6.1 Esercizi

1. Dimostrare per induzione che se due insiemi finiti X  e Y  sono disgiunti,c(X  ∪ Y ) = c(X ) + c(Y ).

Suggerimento: l’induzione e su c(Y ), ma occorre dimostrare a parte ilcaso in cui c(Y ) = 1, cioe che se a X  si aggiunge un elemento a ∈ X 

allora c(X  ∪ {a}) = c(X ) + 1 (e questo e l’unico momento della di-mostrazione in cui interviene la condizione che gli insiemi siano dis-giunti). La dimostrazione richiede il teorema 15.7.1, ne e un immediatocorollario.

2. Dimostrare la proprieta distributiva x·(y+z) = x·y+x·z per induzione

su z.

3. Dimostrare per induzione la proprieta associativa della moltiplicazione.

4. Definire ricorsivamente mn e dimostrare m p+q = m p · mq.

5. Dimostrare per induzione che x ∈n

i=1 Ai se e solo se x appartiene adalmeno uno degli Ai (l’unione generalizzata era stata introdotta propriocon questa definizione, che ora va dimenticata a favore di quella ricor-siva; oppure si veda l’esercizio come una dimostrazione dell’equivalenzadelle due definizioni).

6. Dimostrare per induzione che x ∈n

i=1 Ai se e solo se x appartiene atutti gli Ai.

7. Dimostrare chen

i=1 m = m · n, doven

i=1 m significan

i=1 ai contutti gli ai = m.

8. Trovare e dimostrare per induzione la formula per la somma dei primitermini della progressione aritmetica di ragione k:

n

i=0(a + ik).

Suggerimento: le somme, gia considerate, dei primi n numeri, dei primin pari e dei primi n dispari sono casi di somme di progressioni arit-

metiche, le piu semplici, di ragione 1 e 2 a partire da a = 0 o a = 1.

9. Definire ricorsivamente il prodotto generalizzaton

i=1 ai e dimostrareche se gli ai sono numeri interi allora

n

i=1 ai = 1 se e solo se ai = 1per ogni i = 1, . . . , n.

207

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 212/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 213/235

15.7 Il principio del minimo

Abbiamo detto che un insieme X  e infinito se esiste una iniezione di X  suun sottinsieme proprio di se stesso. Il motivo per cui questa proprieta, che sichiama anche riflessivita  di X , e stata assunta come definizione di “infinito”e che essa e intuitivamente falsa per gli insiemi finiti.

La sua negazione e una caratteristica positiva degli insiemi finiti, che eutile nelle dimostrazioni che li riguardano, e in combinatoria22 e nota comeil principio dei cassetti  (in inglese Pigeonhole Principle):

se si distribuiscono m oggetti in n cassetti, con m > n, in almeno uncassetto c’e piu di un oggetto.

In altre parole, non esiste una iniezione di un insieme con m elementi inun insieme con n < m elementi, o ancora: ogni funzione da un insieme conm elementi in un insieme con n < m elementi non e iniettiva.

In una sistemazione rigorosa dei concetti di finito ed infinito, una voltascelta la riflessivita come definizione fondamentale di “infinito”, ed aver for-mulato gli assiomi per N, il principio dei cassetti diventa dimostrabile.

Consideriamo come tipici insiemi finiti gli insiemi Nn = {0, 1, . . . , n − 1},con N0 = ∅. Un insieme si dice finito se esiste una biiezione tra di esso e unNn.

Abbiamo allora

Teorema 15.7.1 Se m > n, non esiste una iniezione di Nm in Nn.

Dimostrazione La dimostrazione e per induzione su n. Si noti che la formuladi induzione questa volta non e atomica, ma inizia a sua volta con un ∀.

Base: N0 e ∅ e non esiste nessuna funzione da un insieme non vuotonell’insieme vuoto23.

Passo induttivo: Supponiamo vero per n che per ogni m > n non esistaun’iniezione di Nm in Nn; supponiamo per assurdo che esista invece unm > n + 1 con un’iniezione di Nm in Nn+1, chiamiamola g. Nn+1 =

Nn∪{n}. Deve essere n = g(i) per qualche i < m, altrimenti g sarebbeuna iniezione di Nm in Nn.

22La combinatoria e proprio lo studio degli insiemi finiti.23Poiche X ×∅ = ∅ esiste solo una relazione tra X  e ∅, la relazione vuota - ∅ e un insieme

di coppie ordinate (e di ogni altra cosa) perche e vero che per ogni x, se x ∈ ∅ x e unacoppia - ma il dominio di ∅ e ∅, non X .

209

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 214/235

Se i = m

−1 eliminiamo la coppia

m

−1, n

; altrimenti scambiamo tra

di loro i valori attribuiti da g a i e a m−1, ed eliminiamo m−1 col suonuovo valore n; consideriamo cioe g1 cosı definita: g1(i) = g(m − 1), eg1( j) = g( j) per ogni altro j < m − 1, j = i. g1 risulta un’iniezione diNm−1 in Nn, con m − 1 > n, contro l’ipotesi induttiva. 2

La caratteristica del “finito” di non essere iniettabile propriamente in sestesso e collegata a proprieta intuitive, come il fatto che in qualunque modosi conti un insieme finito si arriva sempre allo stesso numero. Se esistesse unainiezione g di Nm in Nn, con m > n, e se contando gli elementi di un insiemesi fosse arrivati a m − 1, usando tutto Nm, si potrebbe contarli assegnando aogni oggetto il numero i < n tale che g( j) = i dove j e il numero attribuitoall’oggetto nel precedente conteggio, e si arriverebbe a contare al massimosolo fino a n − 1.

Nonostante “finito” e “infinito” siano l’uno la negazione dell’altro, ci sonomolte analogie strutturali tra N e gli insiemi Nn. Sono insiemi totalmenteordinati e per di piu bene ordinati.

La proprieta di buon ordine per N si esprime con il principio del minimo:

∅ = X  ⊆ N → ∃x(x ∈ X ∧ ∀y ∈ X (x ≤ y))

o equivalentemente:

∅ = X  ⊆ N → ∃x(x ∈ X ∧ ∀y < x(y ∈ X )).

Il principio del minimo giustifica l’induzione: se l’induzione fallisse per qualcheproprieta A(x), allora si avrebbe A(0) e ∀x(A(x) → A(x)) ma ∃x¬A(x) equindi ¬A(c) per qualche c. Ora c = 0 e quindi ha un predecessore c1 taleche c

1= c. Deve essere ¬A(c1) perche A(c1) → A(c). A sua volta c1 = 0

deve avere un predecessore c2 tale che c2 = c1 e per cui ¬A(c2), perche

A(c2) → A(c1), e cosı via. Allora l’insieme {. . . , c2, c1, c}      t t t t   t   t      t s s s s r q q qq q q r r s

0 c

non avrebbe un minimo. 2

Dal principio del minimo si ricava anche un’altro principio di induzione.Se A(x) e una qualunque formula aritmetica, considerando come X  il suoinsieme di verita {x ∈ N | A(x)} se ne deduce un analogo principio delminimo per formule, vale a dire che

210

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 215/235

∃xA(x)

→ ∃x(A(x)

∧ ∀y < x

¬A(y)).

Poiche questo vale per ogni formula, possiamo considerare una formula cheinizi con una negazione, che scriveremo ¬A, e abbiamo

∃x¬A(x) → ∃x(¬A(x) ∧ ∀y < xA(y)).

Di qui, contrapponendo

¬∃x(¬A(x) ∧ ∀y < xA(y)) → ¬∃x¬A(x),

ovvero

∀x¬(¬A(x) ∧ ∀y < xA(y)) → ∀xA(x),

e infine

∀x(∀y < xA(y) → A(x)) → ∀xA(x)24.

La validita di questo schema giustifica un’altra forma di dimostrazione perinduzione, che si chiama induzione forte, o induzione completa  o piu corret-tamente induzione sul decorso dei valori .

Per dimostrare ∀xA(x) e sufficiente dimostrare che ∀x(∀y < x A(y) →A(x)), ovvero, a parole, che per ogni x la validita di A(x) segue dal fatto cheA vale per tutti gli y < x:

∀x(∀y < xA(y) → A(x)) P asso induttivo

∀xA(x)

con ∀y < xA(y) che si puo considerare l’ipotesi induttiva, nel passo induttivo,e non c’e piu bisogno della base.

Questo non significa che lo 0 sia trascurato; il fatto e che se si dimostrail passo induttivo nella sua generalita, cioe per ogni x, la dimostrazione valeanche per 0, per particolarizzazione, e quindi ∀y < 0A(y) → A(0). Ora

tuttavia ∀y < 0A(y) e sempre vero, essendo ∀y(y < 0 → A(y)), ed essendol’implicazione soddisfatta da ogni y per l’antecedente falso y < 0. Quindi sie dimostrato (qualcosa che implica) A(0).

Bisogna fare attenzione che la dimostrazione del passo induttivo non sta- !!!

bilisca la validita di ∀y < xA(y) → A(x) solo per x da un certo punto in

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

211

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 216/235

poi, ad esempio diverso da 0, eventualita che si puo presentare, e allora i

primi casi restanti vanno trattati e dimostrati a parte. Ma non e la basedell’induzione, e una distinzione di casi all’interno del passo induttivo.

Se interessa dimostrare ∀x > kA(x) naturalmente, e sufficiente dimostrarecome passo induttivo ∀x > k(∀y(k < y < x → A(y)) → A(x)). La giustifi-cazione consiste nel fatto che N \Nk+1 (la catena che si ottiene cominciandoda k + 1 invece che da 0) e anch’esso bene ordinato e anche per esso vale ilprincipio del minimo.

Oppure formalmente si consideri la formula B(x) ↔ x > k → A(x) e siapplichi l’induzione forte a B, cioe si mostri che da

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

segue

∀x(∀y < xB(y) → B(x))

e quindi si applichi l’induzione forte a B per concludere ∀xB(x), vale a dire∀x> kA(x).

Da ∀x > k(∀y(k < y < x → A(y)) → A(x)), per importazione dellepremesse, portando all’interno x > k,

∀x(∀y(k < y < x → A(y)) → (x > k → A(x))),

che si puo riscrivere, utilizzando di nuovo l’importazione delle premesse,

∀x(∀y(y < x → (y > k → A(y))) → (x > k → A(x))),

cioe proprio

∀x(∀y < xB(y) → B(x)).2

Esempi

Il teorema che ogni numero naturale > 1 ammette una scomposizionein fattori primi25 si dimostra per induzione forte nel seguente modo: datoun numero n, o n e primo, oppure e il prodotto di due numeri minori din e maggiori di 1. Se la proprieta vale per tutti i numeri minori di n e

25La formulazione concisa significa che ogni numero > 1 o e primo o e un prodotto dinumeri primi. Vale anche l’unicita della scomposizione, che non dimostriamo.

212

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 217/235

maggiori di 1, per ipotesi induttiva, questi due o sono primi o ammettono

una scomposizione in fattori primi, e allora anche il loro prodotto n ammetteuna scomposizione in fattori primi. 2

Nella dimostrazione del passo induttivo per

1 − 1

2+ 1

3+ . . . + (−1)n−1 1

n> 0

si erano distinti due casi, a seconda che n fosse pari o dispari. Con l’induzioneforte la distinzione rimane ma non porta a due dimostrazioni diverse. Si puoragionare nel seguente modo: se la disuguaglianza vale per ogni m < n allorase n e pari vale

1 − 12 + 1

3 + . . . − 1n−2 > 0

e quindi

1 − 1

2+ 1

3+ . . . − 1

n−2 + ( 1

n−1 − 1

n) > 0

perche ( 1

n−1 − 1

n) > 0, mentre se n e dispari

1 − 1

2+ 1

3+ . . . − 1

n−1 > 0

e quindi

1 − 12 + 1

3 + . . . − 1n−1 + 1

n > 0. 2

Consideriamo di nuovo il problema di pagare qualsiasi tassa postale mag-giore di 7 con francobolli da 3 e da 5 centesimi. La dimostrazione e gia statafatta per induzione, ma si puo fare in modo piu rapido con l’induzione forte.

Dato un numero qualunque n > 7, ammesso che la possibilita di affrancarecon bolli da 3 e 5 valga per tutti i numeri minori di n e maggiori di 7, siconsideri n − 3. Questa cifra puo essere realizzata con bolli da 3 e 5, per cuibasta aggiungere un bollo da 3.

Tuttavia il ragionamento funziona per gli n tali che n

−3 sia maggiore

di 7, quindi non per 8, 9, 10. Quindi il passo induttivo come svolto sopranon copre tutti i numeri, e questi tre casi devono essere trattati a parte percompletare il passo induttivo. 2

Come si vede dal confronto, rispetto alle dimostrazioni per induzionenormale con l’induzione forte si riduce la parte prettamente aritmetica. Tale

213

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 218/235

possibilita e forse la ragione della attribuzione di “forte” a questo tipo di

induzione.Da un punto di vista logico, la giustificazione dell’appellativo “forte” e

che la stessa conclusione ∀xA(x) si ottiene nell’induzione forte da un’ipotesi∀x(∀y<xA(y) → A(x)) piu debole di A(0)∧∀x(A(x) → A(x+1)). Questa ul-tima affermazione sulla forza delle rispettive ipotesi a sua volta si giustifica colfatto che una stessa conclusione A(x) si ottiene una volta con un’assunzioneforte come ∀y < xA(y) e una volta con l’assunzione piu debole che A valgasolo per il predecessore.

Si tratta tuttavia di impressioni psicologiche. Il motivo per cui la dizione“forte” non e del tutto appropriata e che l’induzione forte e equivalente a

quella normale.La conclusione ∀xA(x) a partire da ∀x(∀y < x A(y) → A(x)) si puo gius-

tificare infatti formalmente nel seguente modo. Si considera la formula

B(x) ↔ ∀y <xA(y)

e si dimostra ∀xB(x) (da cui segue ovviamente ∀xA(x)) per induzione su x,utilizzando anche ∀x(∀y < xA(y) → A(x)) nel corso della dimostrazione:

Base: B(0) e immediato perche y < 0 e falso.

Passo induttivo: Ammesso B(x), cioe∀

y <xA(y), da questa segue A(x), equindi ∀y < xA(y) che e B(x). 2

Viceversa l’induzione normale si giustifica in base a quella forte in questomodo. Supponiamo A(0) ∧ ∀x(A(x) → A(x)); per ottenere ∀xA(x), in baseall’induzione forte e sufficiente dimostrare ∀x(∀y < xA(y) → A(x)).

Distinguiamo due casi; un numero o e 0, e allora abbiamo A(0) e quindi∀y < 0A(y) → A(0), oppure se e diverso da 0 e un successore e possiamoindicarlo x, e dobbiamo dimostrare ∀y < xA(y) → A(x).

Ma ∀y < xA(y) implica A(x), e con ∀x(A(x) → A(x + 1)) anche A(x).226

Il principio del minimo e anche equivalente all’affermazione che non es-istono catene discendenti infinite; se una successione {an} fosse tale che

26La dimostrazione formale dell’equivalenza tra induzione e induzione forte si trasportaalla dimostrazione dell’equivalenza tra il fatto che N sia bene ordinato e il fatto che N siail piu piccolo insieme che contiene 0 ed e chiuso rispetto al successore.

214

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 219/235

. . . < an+1 < an < . . . < a0, l’insieme

{an

|n

∈N

}non avrebbe min-

imo. Viceversa, dato un insieme non vuoto X , preso un suo elemento a0,se non e il minimo di X  si puo trovare un altro suo elemento a1 < a0, e seneanche a1 e il minimo si continua, ma siccome la successione cosı generatanon puo essere infinita, si trova un ak che e il minimo di X . 2

Al principio del minimo si da ancora un’altra formulazione nota comeprincipio della discesa finita . Esso afferma che se una proprieta P  vale perun k > 0, e quando vale per un n > 0 qualunque allora vale anche per unnumero minore di n, allora P  vale per 0.

Infatti in queste ipotesi, in cui l’insieme degli n che soddisfa P  non evuoto, il minimo deve essere 0, perche un n > 0, non sarebbe il minimo, inquanto anche qualche numero minore soddisferebbe P .

Viceversa, ammesso il principio della discesa finita, e dato un insieme X 

non vuoto, consideriamo la proprieta P  di appartenere a X . O la proprietaP  vale per 0, e 0 e allora ovviamente il minimo di X , oppure 0 non ha laproprieta P . In questo caso, non e vero per P  che per ogni n che ha laproprieta P  anche uno minore ha la proprieta P . Quindi esiste un n chesoddisfa P  ma tale che nessun suo predecessore soddisfa P , ed n e il minimodi X . 2

Un’ovvia variante e che se una proprieta P  vale per un h > k e quando

vale per un n qualunque > k allora vale anche per un numero < n e ≥ k,allora P  vale per k.Il principio della discesa finita e alla base delle dimostrazioni di termi-

nazione degli algoritmi, quando ad un algoritmo si associa una proprieta P  !!!

che decresce ad ogni esecuzione di un passo dell’algoritmo. Un esempio e ladimostrazione di terminazione per l’algoritmo di costruzione degli alberi direfutazione proposizionali, nel Lemma 8.2.1.

Il principio del minimo fornisce un comodo e utile metodo di definizionedi funzioni: a ogni x (o a piu elementi se si tratta di funzione a piu argomenti)si associa il minimo y tale che A(x, y), ammesso di sapere che esistono degli

y tali che A(x, y), dove A(x, y) e una formula.La definizione di minimo comune multiplo di due numeri e un esempioovvio del ricorso a tale possibilita, che e molto frequente in aritmetica, e si puocombinare con la ricorsione per definire funzioni effettivamente calcolabili.

Ad esempio si definisce per ricorsione la successione dei numeri primi{ pn | n ∈ N } ponendo innanzi tutto p0 = 2, quindi osservando che se e noto

215

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 220/235

 pn allora esiste (teorema di Euclide) un numero primo maggiore di pn, e uno

che dalla dimostrazione dell’infinita dei primi si sa che e minore o uguale a2 · 3 · 4 · . . . · pn + 1.

Si definisce allora pn+1 come il minimo numero primo maggiore di pn.La definizione e corretta in base solo al principio del minimo, ma l’esistenzadi un confine superiore la rende anche effettivamente calcolabile in modoelementare (eseguendo una ricerca limitata a priori).

A ricorsione primitiva e operatore di minimo corrispondono nei linguaggidi programmazione strutturata i costrutti repeat (for i = 0 to n) e while. . . do.

15.8 Varianti dell’induzione

Tra l’induzione normale e quella forte esistono varianti intermedie, in cui perogni x la validita di A(x) e dimostrata a partire da quella di A per alcunispecificati predecessori. Ad esempio

A(0) Base

A(1) Base

∀x(A(x) ∧ A(x) → A(x)) P asso induttivo

∀xA(x).

Questa forma di induzione si giustifica, come quella forte, con l’induzionenormale, considerando la formula

B(x) ↔ A(x) ∧ A(x)

e dimostrando ∀xB(x) (da cui ovviamente ∀xA(x)) per induzione, utilizzandole assunzioni relative ad A:

Base: B(0) segue da A(0) e A(1).

Passo induttivo: Ammesso B(x), quindi A(x) ∧ A(x), dal passo induttivoper A si deduce A(x), quindi A(x) ∧ A(x), cioe B(x). 2

Varianti di questo genere corrispondono ad analoghe varianti della ricor-sione primitiva, e permettono di dimostrare le proprieta della funzioni cosıdefinite. Ad esempio la forma di induzione di sopra e quella adatta a di-mostrare proprieta della successione di Fibonacci27

27Nella precedente definizione si era posto a0 = a1 = 1; con questa, altrettanto usata,si premette uno 0 e gli altri valori sono solo slittati di un posto.

216

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 221/235

0, 1, 1, 2, 3, 5, 8, 13, . . .

Esempio Mostriamo un legame inaspettato dei numeri di Fibonacci connumeri irrazionali, in particolare con la sezione aurea.

Indicate con

α = 1

2(1 +

√5) e β  = 1

2(1 − √

5)

le radici dell’equazione x2 − x − 1 = 0, o

x2 = x + 1,

dove α e la cosiddetta sezione aurea , si ha

an = 1√5

(αn − β n).

Dimostrazione

Base: Per n = 0 la formula si riduce a a0 = 0 e per n = 1 a a1 = 1.

Passo induttivo: Poiche

an = an−1 + an

−2

per ipotesi induttiva si ha

an = 1√5

(αn−1 − β n−1 + αn−2 − β n−2)

quindi

an = 1√5

(αn−2(α + 1) − β n−2(β + 1)).

Ma α + 1 = α2 e β  + 1 = β 2, per cui

an = 1√5

(αn − β n). 2

217

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 222/235

L’induzione doppia  e un’altra variante dell’induzione.

Quando la formula da dimostrare e del tipo ∀x∀yB(x, y), se si esegueun’induzione su x la formula di induzione e ∀yB(x, y) e nel passo induttivo,quando si deve derivare

∀yB(x, y) Ipotesi induttiva...∀yB(x, y)

puo darsi che ∀yB(x, y) richieda di essere derivata a sua volta per induzione(anche con l’utilizzo di

∀yB(x, y) che e l’ipotesi induttiva dell’induzione su

x).Si parla allora di induzione doppia, anche se si tratta di due appli-

cazioni di un’induzione normale, solo che una e all’interno del passo induttivodell’altra; bisogna fare attenzione a indicare con pulizia le varie tappe delladimostrazione, perche nel passo induttivo dell’induzione su y si avra a dis-posizione l’ipotesi induttiva relativa all’induzione su y e l’ipotesi induttivarelativa all’induzione piu esterna su x.

Non e facile trovare esempi elementari in cui il ricorso all’induzione doppiae proprio necessario28. Diamo un esempio per mostrare come si organizzanoi passi della dimostrazione, scegliendo la commutativita dell’addizione, an-

che se per questa proprieta l’induzione doppia si potrebbe evitare (e dopomostreremo come).

Dimostriamo quindi

∀x∀y(x + y = y + x),

e iniziamo con un’induzione su x.

Basex: Dobbiamo dimostrare

∀y(0 + y = y + 0).

ovvero

∀y(0 + y = y).

28Nel primo teorema del paragrafo 15.7 abbiamo visto un esempio in cui la formulad’induzione era universale ma non ha richiesto l’induzione doppia.

218

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 223/235

e lo dimostriamo per induzione su y:

Basey : 0 + 0 = 0.

Passo induttivoy: Ammesso 0 + y = y, si ha

0 + y = (0 + y)

= y.

Passo induttivox: Assumiamo, come ipotesi induttivax, che ∀y(x+y = y+x)e dimostriamo

∀y(x + y = y + x)

per induzione su y.

Basey: Da dimostrare e

x + 0 = 0 + x.

Ma

0 + x = (0 + x)

= (x + 0)

(il precedente passaggio per l’ipotesi induttivax particolarizzando∀y a 0)

= x

= x + 0 .

Passo induttivoy: Assumiamo l’ipotesi induttivay che x + y = y + x

e dimostriamo x + y = y + x.

x + y = (x + y)

= (y + x)

= (y + x)

dove si e usata l’ipotesi induttivay.

D’altra parte

219

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 224/235

y + x = (y + x)

= (x + y)

= (x + y)

= (y + x)

dove si e usata prima l’ipotesi induttivax particolarizzando ∀y ay, e infine di nuovo l’ipotesi induttivax particolarizzando ∀y a y.

Naturalmente si sono anche usate le equazioni della definizionericorsiva dell’addizione, in particolare la seconda.

Quindi il passo induttivoy e dimostrato 2

e con la sua conclusione ∀y(x + y = y + x) anche il passo induttivox.2

Vediamo ora come si dimostra piu facilmente ∀x∀y(x + y = y + x). Oc-corrono piu applicazioni dell’induzione, ma nessuna induzione doppia.

Abbiamo gia dimostrato per induzione la proprieta associativa della somma,e che ∀x(x + 0 = 0 + x), nel corso della precedente dimostrazione.

Dimostriamo ora per induzione su x che ∀x(x + 1 = 1 + x). Si ricordi chein base alla definizione di addizione x

= x + 1.

Base: 0 + 1 = (0 + 0) = (0 + 0) = 0 = 1 = 1 + 0.

Passo induttivo: Ammesso x + 1 = 1 + x,

1 + x = (1 + x)

= (x + 1)

= (x + 1) + 1= x + 1.2

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

∀y(x + y = y + x)

per induzione su y:

220

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 225/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 226/235

nuovo mucchio. Qualunque mucchio di sabbia, di qualsiasi peso, si ottiene

accumulando un numero sufficiente di granelli di sabbia. 2Sul prossimo sarebbero d’accordo i matematici, e non si puo dire che sia

un errore, ne un paradosso, sembra solo paradossale.

Teorema 15.9.3 Ogni numero e interessante.

Dimostrazione Iniziamo con un’induzione empirica. 0 e interessante, al puntoche si continuano a scrivere libri su di esso, rappresenta il vuoto, il nulla . . .

1 e molto interessante, genera tutti gli altri. 2 e il primo numero pari, erappresenta tutte le dicotomie che danno origine alla vita, la divisione nella

coppia, maschio e femmina, il bene e il male . . . , 3 e la trinita, il primo primodispari, somma dei suoi predecessori . . . , 4 e il primo numero composto, cisono i quattro cavalieri dell’Apocalisse . . . , 5 in effetti non sembra averenessuna caratteristica unica; beh, questo e interessante di 5, che e il primonumero non interessante . . .

Si vede ora come svolgere la dimostrazione, nella forma del principio delminimo: l’insieme dei numeri non interessanti e vuoto, perche se no avrebbeun primo elemento, e questo sarebbe interessante, come primo numero noninteressante. 2

Non sembra invece accettabile

Teorema 15.9.4 Ogni numero e piccolo.

Dimostrazione 0 e piccolo, e se n e piccolo anche n + 1 e piccolo. 2

Una dimostrazione per induzione forte che contiene evidentemente unerrore e la seguente, secondo cui le derivate di una qualunque potenza xn

sarebbero tutte nulle, cosı come Dx0 = 0, la derivata di una costante:

Per la regola del prodotto, e usando l’ipotesi induttiva che la derivata dixi sia identicamente 0 per ogni i < n + 1,

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

15.10 Definizioni induttive

Le definizioni induttive sono quelle che si appoggiano ai numeri naturali,ma si riferiscono ad altri enti; definiscono funzioni con dominio N ma valori

222

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 227/235

diversi dai numeri, in generale insiemi, relazioni. La formulazione piu gen-

erale quindi si da in termini insiemistici; una tipica definizione induttiva sipresenta nella forma seguente.

Dato un insieme B e una funzione F  che manda insiemi in insiemi, sipone

I 0 = B

I n+1 = F (I n),

oppure, nella forma cumulativa , che garantisce che I n ⊆ I n+1 per ogni n,

I 0 = BI n+1 = I n ∪ F (I n).

Quindi si pone

I  ={I n | n ∈ N}

e si dice che I  e definito induttivamente, o per induzione, mediante F , conbase B.

I  risulta un insieme qualunque, dipende da B e F , puo anche essere uninsieme di coppie, o un insieme di altre strutture.

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

rispetto all’inclusione, nel senso che se X  ⊆ Y  allora F (X ) ⊆ F (Y ), econtinua, rispetto all’unione, nel senso che “F  della unione uguale unionedegli F ”:

F ({X  j | j ∈ J }) =

{F (X  j) | j ∈ J }.

Si puo sempre fare in modo di utilizzare una funzione crescente ponendoF (X ) = X ∪ F (X ). Se F  e continua, la definizione cumulativa si puo ancheesprimere con

I n = F (i<n I i)

avendo posto

i<n X i =

n−1

i=0 X i se n > 0

∅ se n = 0

223

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 228/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 229/235

Un modo di esprimere in simboli il fatto che un insieme X  e il piu pic-

colo insieme che ha una certa proprieta P  e infatti quello di dire che X  el’intersezione (generalizzata) di tutti gli Y  tali che P (Y ), quando l’intersezioneha ancora la proprieta P . !!!

Questo succede ad esempio se la proprieta P  consiste, come nel casoattuale, nel contenere un dato insieme o nell’essere chiusi rispetto a unafunzione. Non e sempre cosı, ad esempio nel campo reale l’intersezione di tuttigli intervalli che contengono propriamente l’intervallo (−1, 1) e l’intervallochiuso [−1, 1] (estremi inclusi), che ha ancora la stessa proprieta; invecel’intersezione di tutti gli intervalli aperti (−x, x) e l’insieme {0}, che non eun intervallo aperto29.

Facciamo vedere che le due definizioni di I  sono equivalenti, se si usal’induzione cumulativa ed F  e crescente e continua, e a questo scopo chiami-amo J  l’insieme definito dall’alto:

J  ={X  | B ⊆ X ∧ ∀Y (Y  ⊆ X  → F (Y ) ⊆ X )}.

Dobbiamo dimostrare che I  = J .Per I  ⊆ J  basta far vedere che per ogni n I n ⊆ J , cioe che se X  e tale che

B ⊆ X ∧ ∀Y (Y  ⊆ X  → F (Y ) ⊆ X ) allora I n ⊆ X . Lo si verifica facilmenteper induzione (esercizio). Ne segue che I  ⊆ J  per la proprieta di minimalitadell’unione.

Per J  ⊆ I  basta far vedere che I  e uno degli insiemi di cui J  e l’intersezione,quindi che B ⊆ I  e I  e chiuso rispetto a F . B ⊆ I  e ovvio.

E sufficiente controllare la proprieta di chiusura per sottoinsiemi finitidi I . Infatti ogni Y  ⊆ I , ogni Y  in verita, e l’unione dei suoi sottoinsiemifiniti, Y  =

{Z  ⊆ Y  | Z  finito}, e se F  e continua F (Y ) ={F (Z ) | Z  ⊆

Y  e Z  finito}.Ora se Z  ⊆ I  e Z  e finito, allora Z  ⊆ I n per qualche n30, e F (Z ) ⊆

F (I n) ⊆ I n+1, quindi F (Z ) ⊆ I . 2

Questo e il motivo per cui si sceglie la forma cumulativa dell’induzione

anche quando non sarebbe necessario; in tal modo si garantiscono le proprietarichieste dalla dimostrazione, e le supporremo sempre verificate anche se lapresentazione della definizione induttiva non lo mostra esplicitamente.

29Con intervallo aperto (−x, x) s’intende {y | −x < y < x}.30Perche I r ⊆ I r+1: allora ogni elemento di Z  e in qualche I r, e tutti sono quindi nel

massimo di questi.

225

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 230/235

Di solito infatti la funzione F  e precisata da una serie di operazioni da

compiere sugli elementi dell’insieme I n per ottenere I n+1 e allora per ognioperazione si ha una clausola induttiva .

La definizione del precedente insieme di termini T  si presenta nel seguentenel seguente modo:

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

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

Qualche volta si aggiunge, ma piu spesso si trascura, una

Clausola di chiusura: Null’altro e un termine.Per dare una definizione induttiva di un insieme I  in sostanza, prima si

dice esplicitamente che certi elementi appartengono a I ; quindi si afferma chese certi elementi, di una determinata forma, appartengono a I , anche altri,di altra forma collegata, appartengono a I .

La clausola di chiusura e da intendersi nel senso che non solo I  contiene glielementi della base ed e chiuso rispetto alle operazioni indicate dalle clausoleinduttive, ma e il piu piccolo insieme del genere. Quindi e uguale all’insieme{I n | n ∈ N } e qualcosa e in I  se e soltanto se e in un I n, cioe lo e inbase all’applicazione iterata un numero finito di volte delle clausole di base

e induttive.Esempi

La definizione delle proposizioni P aveva la forma induttiva

Base: Una proposizione atomica e una proposizione.

Clausola induttiva 1: Se A e una proposizione, anche (¬A) lo e.

Clausola induttiva 2: Se • e un connettivo binario, e se A e B sono propo-sizioni, anche (A • B) lo e.

Si tratta di una definizione per induzione cumulativa: quando (A • B) einserito in I n+1, A e B non sono necessariamente entrambe in I n, ma in unoqualsiasi dei livelli precedenti.

Definiamo l’insieme A degli alberi binari finiti (qui brevemente “alberi”),intesi come insiemi finiti con un ordine parziale:

226

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 231/235

Base: Un singoletto

{•}e un albero, che e radice, in quanto non ha prede-

cessori immediati, ed e foglia in quanto non ha successori immediati (ofigli).

Clausola induttiva: Dato un albero, se ad alcune sue foglie si aggiungonouno o due successori immediati si ha un albero.

Vediamo come sono formati alcuni primi livelli di A. La base A0 contienesolo l’albero

•mentre A1 contiene

• • •↓ • • •

e A2 oltre a quelli di A1

• • •↓ ↓

• • • •↓ ↓• • • •

• • •

• • • • • •↓ ↓ • • • • • •

• • •

• • • • • • ↓

• • • • • • • • •

227

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 232/235

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

anche se spesso per le relazioni si adottano equivalenze di tipo ricorsivo, comeabbiamo visto per <. Proprio la relazione < si puo definire con

I 0 = {x, x | x ∈ N }I n+1 = I n ∪ {x, y | x, y ∈ I n },

e I  = <, che mostra come < sia l’iterazione della relazione “successore” (chee la base I 0).

La definizione ricorsiva che abbiamo visto in precedenza, da cui segue

x < y ↔ ∃z = 0(x + z = y),

mostra anch’essa come < sia l’iterazione del successore, dal momento chel’addizione e l’iterazione del successore; quest’ultima equivalenza peraltro epiuttosto la definizione di una formula, che a sua volta definisce la relazione,che non la definizione della relazione come insieme.

Un altro modo di presentare la relazione < e quello di definirla come lachiusura transitiva  della relazione successore S  = {x, x | x ∈ N }.

La chiusura transitiva di una relazione S  e la piu piccola relazione cheestende S  ed e transitiva; se scriviamo

Trans(R) per ∀x,y,z(x, y ∈ R ∧ y, z ∈ R → x, z ∈ R),

e T C (S ) per “chiusura transitiva di S ” allora

T C (S ) ={R | S  ⊆ R e Trans(R) }.

L’intersezione non e fatta sull’insieme vuoto, perche esiste sempre almenouna R soddisfacente le condizioni richieste, ad esempio la relazione totale.

Anche la chiusura transitiva di S  ammette in generale una definizioneinduttiva dal basso (come quella vista sopra per <), data da

I 0 = S I n+1 = I n ∪ {x, y | ∃z(x, z ∈ I n ∧ z, y ∈ S )},

e T C (S ) =∞

i=0{I n}.

Esempi

228

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 233/235

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 234/235

Ogni proposizione ha un numero pari di parentesi.

Dimostrazione Per induzione forte. Supponiamo che tutte le proposizioni dialtezza minore di n abbiano un numero pari di parentesi. Indichiamo con A

il numero di parentesi di A.Sia A una proposizione di altezza n. Se n = 0, la proposizione e atomica,

della forma ( p), e ha due parentesi.Se n > 0, A e una proposizione composta, e il fatto cruciale e che le sue

componenti hanno altezza minore di quella di A. Si danno due casi.Se A e (¬B), per ipotesi induttiva B e un numero pari e A = B + 2 e

anch’esso pari.Se A e (B • C ) composta con un connettivo binario, per ipotesi induttiva

B e C  sono pari e A = B + C  + 2 e anch’esso pari. 2

Insieme alle dimostrazioni induttive, anche le definizioni ricorsive si esten-dono agli insiemi definiti induttivamente. L’estensione di un’interpretazionei a una valutazione i∗ del linguaggio proposizionale (paragrafo 3.3) e una !!!

definizione ricorsiva sull’altezza delle proposizioni.

Altre volte si usano misure di complessita diverse dall’altezza. Per poterfare dimostrazioni induttive per tutti gli elementi di un insieme X , quello cheimporta e che X  si possa rappresentare come

∞i=k

X i, indipendentemente dacome e stato originariamente definito.

Esempio L’algoritmo di trasformazione di una proposizione in forma nor-male congiuntiva (o disgiuntiva) del paragrafo 6.3 presentava una ricorsionesulla lunghezza  delle proposizioni. L’esecuzione delle operazioni sintatticheda compiere su una proposizione era riportata, attraverso l’applicazione delleleggi distributive, a proposizioni di lunghezza minore: da A∨B ≡ (C ∧D)∨B

via (C ∨B) ∧ (D ∨B) a C ∨B e D ∨B. Data una forma normale congiuntivaper queste ultime, si ha una forma normale congiuntiva anche per A ∨ B.

Si noti che C  ∨ B e D ∨ B potrebbero avere invece la stessa altezza diA ∨ B, se prevale l’altezza di B.

La misura di complessita associata in modo naturale alla definizione delle

proposizioni e l’altezza dell’albero di parsing , ma vale anche

P =∞

i=3Li

dove Li e l’insieme delle proposizioni che hanno (come liste) lunghezza i

(alcuni Li sono vuoti, vedi esercizi), o la gerarchia cumulativa

230

8/6/2019 (eBook - ITA - MATH) Logica a Per Informatici (235pg) (PDF)

http://slidepdf.com/reader/full/ebook-ita-math-logica-a-per-informatici-235pg-pdf 235/235

P =

∞i=3 L≤

i

dove L≤i e l’insieme delle proposizioni che hanno lunghezza ≤ i.

15.10.1 Esercizi

Dimostrare per induzione