Esercizi sul Calcolo Proposizionale -...

16
Esercizi sul Calcolo Proposizionale Francesco Sborgia Matricola: 459245 December 7, 2015 1

Transcript of Esercizi sul Calcolo Proposizionale -...

  • Esercizi sul Calcolo Proposizionale

    Francesco SborgiaMatricola: 459245

    December 7, 2015

    1

  • Esercizio 1

    Per ogni formula A dimostrare che

    ρ(A) = min{n | A ∈ Fn}

    Definizione 1. Ricordiamo che, dato un linguaggio L si definisce per ricorsione lasuccessione Fn come:

    {F0 = LFn+1 = Fn

    ⋃{¬A | A ∈ Fn}

    ⋃{A ∧ B, A ∨ B, A → B, A ↔ B| A,B ∈ Fn}

    Inoltre, data una formula A, si definisce il rango di A come:

    ρ(A) =

    0 se A è una variabileρ(B) + 1 se A = ¬Bmax{ρ(B), ρ(C)}+ 1 se A ∈ {B ∧ C, B ∨ C, B → C, B ↔ C}

    Soluzione. Data la natura ricorsiva delle definizioni ragioniamo per induzione sulle duedisuguaglianze.

    n = 0) Nel caso base dimostriamo l’uguaglianza, infatti:

    ρ(A) = 0⇔ A è una variabile ⇔ A ∈ L ⇔ A ∈ F0

    quindi ρ(A) = 0 se e solo se 0 è il minimo n per cui A ∈ Fn

    ≥) Supponiamo di aver mostrato che per ogni formula B con n ≥ ρ(B), ρ(B) ≥min{m | A ∈ Fm}, in particolare quindi B ∈ Fn. Consideriamo A tale che ρ(A) =n+ 1, abbiamo due possibilità:

    – A = ¬B ⇒ ρ(B) = n⇒ B ∈ Fn ⇒ A ∈ Fn+1 ⇒ n+ 1 ≥ min{m | A ∈ Fm}– A ∈ {B ∧ C, B ∨ C, B → C, B ↔ C} ⇒ max{ρ(B), ρ(C)} = n ⇒ B, C ∈ Fn

    per induzione ⇒ A ∈ {B ∧ C, B ∨ C, B → C, B ↔ C| B, C ∈ Fn} ⊆ Fn+1

    ≤) Supponiamo per ipotesi induttiva che per ogni formula B ∈ Fn/Fn−1 si abbiaρ(B) ≤ n, in particolare ρ(B) ≤ n per ogni B ∈ Fn e consideriamo una formulaA ∈ Fn+1\Fn, come sopra si hanno due possibilità:

    • A = ¬B ⇒ B ∈ Fn ⇒ ρ(B) ≤ n⇒ ρ(A) = ρ(B) + 1 ≤ n+ 1• A ∈ {B ∧ C, B ∨ C, B → C, B ↔ C| B, C ∈ Fn} ⇒ ρ(B) ≤ n e ρ(C) ≤ n ⇒

    max{ρ(B), ρ(C)} ≤ n⇒ ρ(A) = max{ρ(B), ρ(C)}+ 1 ≤ n+ 1

    2

  • Esercizio 2

    Sia A una formula di rango n. Dimostrare che, se k è il numero di connettivi che vicompaiono, allora

    n ≤ k ≤ 2n − 1

    Soluzione. Ragioniamo di nuovo per induzione:

    n = 0) Se A è una variabile, in A non compaiono connettivi, quindi k = 0 e vale

    0 = n ≤ k ≤ 2n − 1 = 0

    n→ n+ 1) Supponiamo la tesi vera per formule di rango n e consideriamo A di rangon+ 1. Si hanno due casi:

    • A = ¬B, sia k il nuero di connettivi che compaiono in B allora in A compaionok + 1 connettivi e per ipotesi induttiva:

    n ≤ k ≤ 2n − 1⇒ n+ 1 ≤ k + 1 ≤ 2k + 1 ≤ 2 · (2n − 1) + 1 = 2n+1 − 1

    • A ∈ {B ∧ C, B ∨ C, B → C, B ↔ C} e possiamo supporre senza perdita digeneralità che ρ(C) ≤ ρ(B) = n, allora, detti k e h il numero di connettivipresenti rispettivamente in B e C, il numero di connettivi in A è k+ h+ 1 e peripotesi induttiva:

    n ≤ k ≤ 2n − 1

    mentre h soddisfa:

    0 ≤ h ≤ 2n − 1

    di conseguenza:

    n+ 0 + 1 = n+ 1 ≤ k + h+ 1 ≤ 2 · (2n − 1) + 1 = 2n+1 − 1

    3

  • Esercizio 3

    Dimostrare che per ogni funzione f :

    f : Fun({1, . . . , n}, {F,V}) −→ {F,V}esiste una formula A nelle variabili X1, . . . , Xn tale che f coincide con la sua tavola

    di verità τA

    Dimostrazione. Definiamo Tn = Fun (Fun ({1, . . . , n}, {F,V}) , {F,V}). Dimsotriamola tesi per induzione sul numero di variabili:

    n = 1) T1 è composto di 4 elementi distinti corrispondenti alle tavole di verità delleseguenti formule:

    • X1 ↔ X1 corrisponde alla funzione costantemente vera;• X1 ∧X1 corrisponde all’identità;• ¬X1;• X1 ∧ ¬X1 che è la costante F .

    n→ n+ 1) Supponiamo di aver individuato per ciascun elemento di Tn la rispettivaformula nelle variabili X1, . . . , Xn e fissiamo una f ∈ Tn+1. Consideriamo:

    g := f|{Xn+1=V} ∈ Tnh := f|{Xn+1=F} ∈ Tn

    Per ipotesi induttiva esistono B(X1, . . . , Xn) e C(X1, . . . , Xn) tali che τB = g eτC = h, possiamo quindi costruire la formula:

    A(X1, . . . , Xn+1) = (B(X1, . . . , Xn) ∧Xn+1) ∨ (C(X1, . . . , Xn) ∧ ¬Xn+1)

    Per provare la tesi basta dimostrare che f = τA, per questo ci può aiutare ilseguente:

    Lemma 1. Siano D = D1 ∪ D2 un dominio con D1 ∩ D2 = ∅ e g : D1 → Y ,h : D2 → Y due funzioni, allora esiste una unica funzione f : D −→ Y tale chef|D1 ≡ g e f|D2 ≡ h

    infattiA(X1, . . . Xn,V/Xn+1) = B(X1, . . . Xn) e A(X1, . . . Xn,F/Xn+1) = C(X1, . . . Xn),di conseguenza:

    τA|{Xn+1=V} = τB = g

    τA|{Xn+1=F} = τC = g

    e quindi per unicità τA ≡ f

    4

  • Scanned by CamScanner

  • Scanned by CamScanner

  • Proof. Compariamo velocemente le tavole di verità:

    1. Proprietà associative

    · Le due formule sono vere se e solo se A, B e C sono vere;· Le due formule sono false se e solo se A, B e C sono false;

    2. Proprietà distributive

    A B C A ∧ (B ∨ C) (A ∧ B) ∨ (A ∧ C) A ∨ (B ∧ C) (A ∨ B) ∧ (A ∨ C)V V V V V V VV V F V V V VV F V V V V VV F F F F V VF V V F F V VF V F F F F FF F V F F F FF F F F F F F

    3. Leggi di De Morgan

    A B ¬(A ∧ B) ¬A ∨ ¬B ¬(A ∨ B) ¬A ∧ ¬BV V F F F FV F V V F FF V V V F FF F V V V V

    4. Contronominale Abbiamo già visto la proprietà 5, possiamo usarla per vedere che

    A → B ≡ ¬A ∨ B ≡ ¬¬B ∨ ¬A ≡ ¬B → ¬A

    5. Vista;

    6. A ↔ B ≡ (A → B) ∧ (B → A) ≡ (A ∨ B) ∧ ¬A ∧ B

    A B A ↔ B (A → B) ∧ (B → A) (A ∨ B) ∧ ¬(A ∧ B)V V V V FV F F F VF V F F VF F V V F

    quindi la terza formula è, in realtà, equivalente alla negazione delle prime due.

    7. A ∨ B ≡ ¬¬A ∨ B ≡ ¬A → B

    8. A ∧ B ≡ ¬(¬A ∨ ¬B) ≡ ¬(¬¬A → ¬B)

    7

  • Definizione 2. Se A è una formula e A1, . . .An sono sue sottoformule, si denota con:

    A(B1/A1, . . . ,Bn/An)

    la formula ottenuta rimpiazzando in A tutte le occorrenze di A1 con B1, poi rimpiaz-zando nella formula cos̀ı ottenuta tutte le occorrenze di A2 con B2 e cos̀ı via.

    Teorema 1 (di Sostituzione). Siano A1, . . .An sottoformule della formula A.Se Ai ≡ Bi per ogni i, allora A(B1/A1, . . . ,Bn/An) ≡ A

    Dimsotrazione. Per induzione sulla costruzione di A:

    Base) A = X ∈ F0 allora, data B ≡ X si ha naturalmente A(B/X) = B ≡ X = A

    A = ¬C) Supponiamo che per ogni sottoformula di A vale la tesi. Siano {Ai}ni=1 sotto-formule di A, se per ogni indice i, Ai 6= C, allora Ai è sottoformula di C, quindi

    A(B1/A1, . . . ,Bn/An) = ¬C(B1/A1, . . . ,Bn/An) ≡ ¬C = A

    Se invece per un indice j vale Aj = C si ha

    A(Bj/Aj) = ¬Bj ≡ ¬C = A

    A = C ∧ D) Supponiamo nuovamente che per ogni sottoformula di A valga la tesi. Siano{Ai}ni=1 sottoformule di A, per ciascun indice i abbiamo due possibilità:

    – Ai 6∈ {C,D}, allora Ai è una sottoformula di C o D (o entrambe) e quindi

    A(Bi/Ai) ≡ C(Bi/Ai) ∧ D(Bi/Ai) ≡ C ∧ D ≡ A

    – Ai = C = D alloraA(Bi/Ai) ≡ C ∧ D ≡ A

    – Ai = C e Ai sottoformula di D allora

    A(Bi/Ai) ≡ C ∧ D(Bi/Ai) ≡ C ∧ D ≡ A

    Per gli altri connettivi binari si ripete il ragionamento fatto per ∧.

    8

  • Scanned by CamScanner

  • Esercizio 9

    a) Dimostrare che per ogni formula A esiste una formula B ≡ A nella quale compaionoi soli connettivi ¬ e ∨.

    b) Dimostrare che la proprietà enunciata al punto a vale anche considerando i connettivi:

    · ¬ e ∧· ¬ e →

    c) Dimostrare che la proprietà non vale considerando i connettivi:

    · ∧ e ∨· ∧ e →· → e ↔· ¬ e ↔

    d) Definiamo l’operatore binario l con la tavola di verità:

    A B A l BV V FV F FF V FF F V

    Dimostrare che per ogni formula A esiste una formula B ≡ A nella quale compare ilsolo connettivo l.

    Proof. a) Definiamo B l’insieme delle formule in cui compaiono solo i connettivi ¬ e ∨e definiamo C (B) = {A ∈ Form(L) | ∃B ∈ B t.c. A ≡ B}.

    Per vedere che C (B) = Form(L) mi basta verificare che, per ogni scelta delle formuleA,B ∈ C (B) le seguenti formule stanno in C (B):

    · ”A ∧ B” ≡ ”¬(¬A ∨ ¬B)” ∈ C (B);· ”A → B” ≡ ”B ∨ (¬A)” ∈ C (B);· ”A ↔ B” ≡ ”(A → B) ∧ (B → A)” ∈ C (B) perchè ∧ e → ci stanno.

    Per induzione sulla costruzione della formula quindi C (B) = Form(L);

    b) · Sia come sopra C l’insieme delle formule in cui compaiono solo i connettivi ¬ e ∧ edefiniamo C (C) = {A ∈ Form(L) | ∃C ∈ C t.c. A ≡ C}.

    Per ogni scelta delle formule A,B ∈ C (C) vediamo che ”A∨B” ≡ ”¬(¬A∧¬B)” ∈C (C), ne ricaviamo quindi che C (C) ⊇ C (B) ⊇ Form(L);

    10

  • · Se D è l’insieme delle formule in cui compaiono solo i connettivi ¬ e → eC (D) = {A ∈ Form(L) | ∃D ∈ D t.c. A ≡ D}, come sopra ci basta verificare cheper ogni scelta delle formule A,B ∈ C (D) ”A ∨ B” ∈ C (D):

    ”A ∨ B” ≡ ”¬A → B)”

    e quindi C (D) ⊇ C (B) ⊇ Form(L);

    c) Consideriamo una variabile X e un assegnamento I tale che I(X) = V , definiamoF (X) come l’insieme delle formule che contengono la sola variabileX e i soli connettivi∨ e ∧, allora per ogni A ∈ F (X) I(A) = V mentre I(¬X) = F , quindi la proprietànon vale;Ragionando in maniera identica si dimostra che il controesempio vale ache per iconnettivi ∧ e → e per → e ↔;L’ultimo caso, al contrario, merita una trattazione a parte.Sia H(X,Y ) l’insieme delle formule in cui compaiono i soli connettivi ¬ e ↔ e le solevariabili X e Y , per ogni elemento di H(X,Y ) esistono 4 distinte interpretazioni alvariare degli assegnamenti sulle due variabili. Vediamo il seguente:

    Lemma 2. Fissata H ∈ H(X,Y ):

    #{α : {X,Y } −→ {F,V} | α̂(H) = V} ≡ 0 (mod 2)

    Dimostrazione Lemma. Consideriamo la successione:{H0(X,Y ) = {X,Y }Hn+1(X,Y ) = Hn(X,Y )

    ⋃{A ↔ B | A,B ∈ Hn(X,Y )}

    ⋃{¬A | A ∈ Hn(X,Y )}

    allora H(X,Y ) =⋃Hn(X,Y ) e possiamo dimostrare il lemma per induzione:

    n = 0) H = X è indipendente da Y quindi ho due assegnamenti delle variabili X eY per cui H è vero, analogamente nel caso H = Y ;

    n→ n+ 1) H ∈ Hn+1 − Hn, allora H = ¬A oppure H = A ↔ B con A e B in Hn,quindi per ipotesi induttiva:

    #{α : {X,Y } −→ {F,V} | α̂(A) = V} = a ≡ 0 (mod 2)

    #{α : {X,Y } −→ {F,V} | α̂(B) = V} = b ≡ 0 (mod 2)

    quindi

    #{α | α̂(¬A) = V} = 4− a ≡ 0 (mod 2)

    mentre nel secondo caso:

    11

  • {α | α̂(A ↔ B) = V} = {α | α̂(A) = α̂(B)}

    se il numero di interpretazioni in cui A e B assumono lo stesso valore fossedispari, per parità sarebbe dispari anche il suo complementare, quindi a e b nonpotrebbero avere la stessa parità contro le ipotesi.

    In conseguenza del lemma, la formula X ∧ Y assume il valore V solo in un caso equindi non può essere logicamente equivalente a una formula in H(X,Y ).

    d) Definiamo F l’insieme delle formule in cui compare il solo connettivo l e

    C (F) = {A ∈ Form(L) | ∃F ∈ F t.c. A ≡ F}

    Mostriamo che C (F) ⊇ C (C) ⊇ Form(L).Per come abbiamo definito C per ottenere la tesi basterà dimostrare che le seguentiformule stanno in F:

    • ¬A ≡ A l A• A ∧ B ≡ ¬A l ¬B = (A l A) l (B l B)

    12

  • Esercizio 10

    Dimostrare che ogni formula è logicamente equivalente ad una formula DNF e ad unaformula CNF.

    Definizione 3. Si dice letterale una variabile proposizionale X o la sua negazione ¬X.Una formula si dice in forma normale disgiuntiva (DNF) se è una disgiunzione di con-giunzioni di letterali; si dice in forma normale congiuntiva (CNF) se è una congiunzionedi disgiunzioni di letterali.

    Dimostrazione. Mostreremo dapprima che ogni formula DNF è logicamente equivalentea una formula CNF e viceversa, per concludere basterà dimostrare che ogni formula èlogicamente equivalente a una formula DNF o CNF e sfruttare l’uguaglianza mostrataall’inizio.

    DNF = CNF) Vogliamo mostrare che per ogni A ∈DNF, ¬A ∈CNF e ¬A ∈DNF e cheper ogni B ∈CNF, ¬B ∈DNF.

    Dalle definizioni A = A1 ∪ . . . ∪ An e Ai =⋂ki

    j=1L(i)j dove L

    (i)j è un letterale e

    B = B1 ∩ . . . ∩ Bn e Bi =⋃ki

    j=1L(i)j .

    n = 1, k = 1) A è un letterale allora A e la sua negazione sono sia CNF che DNF;n = 1, k > 1) A =

    ⋂k

    j=1Lj allora ¬A =

    ⋃k

    j=1¬Lj che è in forma CNF con n = 1,

    se inoltre consideriamo ciascun Lj come una disgiunzione banale di letterali¬A è anche in forma DNF. Viceversa se B =

    ⋃k

    j=1Lj allora ¬B =

    ⋂k

    j=1¬Lj è

    in forma DNF;

    n > 1) Nel caso generale possiamo limitarci a considerare n = 2:

    Sia A = A1∪A2 e per ciascun i, Ai =⋂ki

    j=1L(i)j , allora ¬Ai =

    ⋃kij=1¬L(i)j , per

    cui ¬A = ¬A1 ∩ ¬A2 =(⋃k1

    j=1¬L(1)j

    )⋂(⋃k2h=1¬L(2)h

    )che è in forma CNF,

    inoltre, applicando la proprietà distributiva otteniamo:

    ¬A =⋃j,h

    (¬L(1)j ∩ ¬L

    (2)h

    )∈ DNF

    Viceversa se B = B1 ∩ B2 e per ciascun i, Ai =⋃ki

    j=1L(i)j , allora ¬B =

    ¬B1∪¬B2 e per il punto precedente sappiamo che ¬B1 e ¬B2 sono congiunzionidi letterali, quindi ¬B è DNF.

    Form(L) = DNF = CNF ) Dimostriamo per induzione che ciascun Fn è contenuto inDNF o CNF:

    n = 0) F0 è costituito dalle variabili, che sono letterali e stanno quindi in DNF ein CNF;

    13

  • n→ n+ 1) Supponiamo che Fn è contenuto in DNF o CNF e sia A ∈ Fn+1\Fn.

    Se A = ¬B, B ∈ Fn per ipotesi induttiva B ∈ DNF ma allora abbiamo giàvisto che A = ¬B ∈ CNF e in DNF;

    Se A = B ∧ C con B, C ∈ Fn sappiamo che esistono B′, C′ ∈ CNF tali cheB ≡ B′ e C ≡ C′ allora per il teorema di sostituzione:

    A ≡ A(C′/C,D′/D) = C′ ∧ D′ ∈ CNF

    Possiamo concludere osservando che ogni formula è logicamente equivalentea una formula in cui compaiono i connettivi ¬ e ∧, cioè DNF = C (C) comeera stato definito nel precedente esercizio e quindi DNF = C (C) = Form(L).

    14

  • Esercizio 11

    Verificare le seguenti implicazioni logiche, dove A e B sono formule qualunque:

    (1) (A ∧ B) |= A;

    (2) A |= (A ∨ B);

    (3) Se A |= B e B |= C, allora A |= C;

    (4) A |= B se e solo se ¬B |= ¬A

    Soluzione. (1) In ogni interpretazione I in cui I(A∧ B) è vera, I(A) deve essere neces-sariamente vera;

    (2) In ogni interpretazione in cui A è vera A ∨ B risulta vera;

    (3) Se nella interpretazione I risulta I(A) = V dalla prima implicazione logica segueche I(B) = V e dalla seconda implicazione abbiamo I(C) = V;

    (4) Per la proprietà contronominale dimostrata nell’esercizio 7 le formule A → B e¬B → ¬A sono logicamente equivalenti, quindi A → B è una tautologia se e solo se¬B → ¬A è una tautologia.

    15

  • Esercizio 12

    Stabilire se ciascuna delle seguenti proprietà è vera per ogni scelta delle formule A, B eC.

    1. Se A |= B e A |= C, allora A |= (B ∧ C);

    2. Se A |= (B ∧ C) allora A |= B e A |= C;

    3. Se A |= C o B |= C, allora (A ∨ B) |= C;

    4. Se (A ∨ B) |= C allora A |= C o B |= C;

    5. Se A |= B e A |= C, allora B |= C;

    6. Se A |= B e A |= (B → C), allora A |= C.

    Soluzione. 1. Se A è vera nell’interpretazione I allora per ipotesi B e C sono verenell’interpretazione I, quindi I(B ∧ C) = V ;

    2. SeA è vera nell’interpretazione I allora per ipotesi B∧C sono vere nell’interpretazioneI, ma osservando la tavola di verità, questo succede solo quando I(B) = V eI(C) = V ;

    3. SeA∨B è vera nell’interpretazione I allora almeno una traA e B è vera nell’interpretazioneI, per ipotesi quindi C è vera nell’interpretazione I;

    4. Se I è una interpretazione che rende vera A allora in I è vera A ∨ B per ogniformula B, allora C è vera in I, analogamente se I rende vera B allora rende veraA ∨ B e quindi rende vera anche C;

    5. Sia A = C = ′X ′ e B una tautologia: chiaramente A |= B e A |= C. Se perassurdo B |= C, poichè ogni interpretazione rende vera B avremmo che C sarebbeuna tautologia. Assurdo.

    6. Se A è vera nell’interpretazione I, allora sono vere B e B → C, allora per ModusPonens I(C) = V .

    16