1 Linguaggi di Programmazione Cenni di logica proposizionale
2 Semplice Teorema di Geometria AC B Dato un triangolo isoscele ovvero con AB=BC, si vuole dimostrare che gli angoli  e Ĉ sono uguali.
3 Semplice Teorema: conoscenze pregresse Se due triangoli sono uguali, i due triangoli hanno lati ed angoli uguali (1) Se due triangoli hanno due lati e l ’ angolo sotteso uguali, allora i due triangoli sono uguali (2) AC B
4 Semplice Teorema: Dimostrazione BH bisettrice di ABC cioè ABH=HBC (3) Dimostrazione AB=BC per ipotesi ABH=HBC per (3) Il triangolo HBC è uguale al triangolo ABH per (2) Â=Ĉ per (1) AC B H
5 Semplice Teorema: Dimostrazione Abbiamo trasformato (2) in Se AB=BC e BH=BH e ABH=HBC, allora il triangolo ABH è uguale al triangolo HBC e (1) in Se triangolo ABH è uguale al triangolo HBC, allora AB=BC e BH=BH e AH=HC e ABH=HBC e AHB=CHB e Â=Ĉ AC B H
6 Semplice Teorema: Formalizzazione Obbiettivo Razionalizzare il processo che permette affermare: AC B H AB=BCÂ=ĈÂ=Ĉ
7 Abbiamo supposto che: S={ AB=BC, ABH=HBC, BH=BH } Avevamo conoscenze pregresse: (2): AB=BC BH=BH ABH=HBC trABH=trHBC (1): trABH=trHBC AB=BC BH=BH AH=HC ABH=HBC AHB=CHB Â= Ĉ Semplice Teorema: Formalizzazione AB=BCÂ=ĈÂ=Ĉ
8 Abbiamo costruito una catena di formule: P1: AB=BC da S P2: ABH=HBC da S P3: BH=BH da S P4: AB=BC BH=BH ABH=HBC da P1,P2,P3 e REGOLA 2 P5: trABH=trHBC da P4,(2) e REGOLA 1 P6: AB=BC BH=BH AH=HC ABH=HBC AHB=CHB Â= Ĉ da P5,(1) e Modus Ponens P7: Â= Ĉda P6 e AND elimination Semplice Teorema: Formalizzazione AB=BCÂ=ĈÂ=Ĉ
9 Una dimostrazione per F è conseguenza di S è una sequenza DIM=P 1,P 2,…,P n dove P n =F P i S oppure P i è ottenibile da P i1,…,P im (con i1<i,.., im<i) applicando una regola di inferenza Processo di dimostrazione SF
10 Regole di inferenza: Modus Ponens (MP) Se piove, la strada è bagnata. Piove. Allora la strada è bagnata. P B, P B MP
11 Regole di inferenza: AND- Introduzione(AI) e AND- Eliminazione(AE) A 1,…,A n A 1 … A n AiAi AND-Introduzione AND-Eliminazione AE AI
12 W 1,3 W 1,2 W 2,2 W 1,1, ¬W 1,1 W 1,3 W 1,2 W 2,2 UR=Unit-Resolution, ¬W 2,2 W 1,3 W 1,2, ¬W 1,2 UR W 1,3 Regole di inferenza: Unit Resolution
13 Calcolo Proposizionale Sistema (d’assiomi) SINTASSI Ingredienti: Un insieme di simboli L –Letterali: A 1,…A n –Connettivi Logici: , , , ,(,) Un sottoinsieme FBF di L* detto delle formule ben formate
14 Calcolo Proposizionale Sistema (d’assiomi) SINTASSI Ingredienti: Un insieme ASSIOMI FBF Un insieme R di regole di inferenza Abbiamo a disposizione: Meccanismo della dimostrazione SF
15 Connettivi Logici SIMBOLO NOT ~ AND OR IMPLIES IFF
16 FBF formule ben formate I letterali sono formule ben formate Se A FBF e B FBF, allora A FBF A B FBF A B FBF A B FBF
17 Assiomi (Conoscenze pregresse) A1: A (B A) A2: (A (B C)) ((A B) (A C)) A3: ( B A) (( B A) B) A4: (A A) A5: A A
18 Esempio Se l’unicorno è mitico, allora è immortale, ma se non è mitico allora è mortale. Se è mortale o immortale, allora è cornuto. L’unicorno è magico se è cornuto. Domande: a)L’unicorno è mitico? b)L’unicorno è magico? c)L’unicorno è cornuto?
19 Procedimento 1.Esprimere il problema in forma di logica dei predicati 2.Individuare i teoremi da dimostrare 3.Dimostrare i teoremi
20 Esempio Se l’(unicorno è mitico), allora l’(unicorno è immortale), ma se non (è mitico) allora (è mortale). Se l’(unicorno è mortale) o l’(unicorno è immortale), allora (unicorno è cornuto). L’(unicorno è magico) se l’(unicorno è cornuto). Letterali: UM = unicorno è mitico UI = unicorno è immortale UMag = unicorno è magico UC = unicorno è cornuto
21 Esempio Se l’(unicorno è mitico) UM, allora l’(unicorno è immortale) UI, ma se non (è mitico) UM allora (è mortale) UI. Se l’(unicorno è mortale) UI o l’(unicorno è immortale) UI, allora (unicorno è cornuto) UC. L’(unicorno è magico) UMag se l’(unicorno è cornuto) UC. Traduzione: UM UI UM UI UI UI UC UC UMag
22 Esempio a)L’unicorno è mitico? b)L’unicorno è magico? c)L’unicorno è cornuto? Traduzione: S = {UM UI, UM UI, UI UI UC, UC Umag} a) SUM b) SUMag c) SUC
23 Esempio P1: UI UI UCda S P2: UI UIda A5 P3: UCda P1, P2 e MP SUC
24 Esempio P1: UI UI UCda S P2: UI UIda A5 P3: UCda P1, P2 e MP P4: UC UMag da S P5: UMag da P3, P4 e MP Esercizio: DIMOSTRARE a) SUMag
25 Ricapitolando Logica Proposizionale (fin qui vista) –Permette di rappresentare dei ragionamenti in modo simbolico (mediante simboli) –Permette di dedurre simboli da altri simboli –Che manca? Il concetto di Vero e di Falso
26 Logica Proposizionale SEMANTICA Funzione di interpretazione I I: FBF {V,F} che è composizionale ovvero: date A e B in FBF I( A)= I(A) I(A B)= I(A) I(B) I(A B)= I(A) I(B) I(A B)= I(A) I(B)
27 Logica Proposizionale SEMANTICA Tavole delle verità dei connettivi logici
28 Scopo del calcolo Assumere Vere le FBF in S e verificare che F sia Vera Logica Proposizionale SEMANTICA SF
29 Esempio A A A AA VFV FVV
30 Esempio A (B A) AB BABA VVVV VFVV FVFV FFVV Esercizio: Provare a costruire la tabella di verità degli altri assiomi.
31 Tautologie e modelli Una FBF sempre vera indipendentemente dal valore dei letterali viene detta tautologia Un modello di un insieme F di FBF è una particolare interpretazione I che rende vere tutte le formule in F
32 Logica proposizionale vs. Logica del primo ordine “Aggiunte”: Strutturazione dei letterali Introduzione delle variabili Introduzione dei quantificatori
33 Logica del primo ordine Socrate è un uomo. Gli uomini sono mortali. Allora Socrate è mortale. Costanti individuali {Socrate, Pino, Gino, Rino} Lettere predicative {Uomo,Mortale}
34 Logica del primo ordine Socrate è un uomo. Gli uomini sono mortali. Allora Socrate è mortale. Traduzione affermazioni Uomo(Socrate) x.(Uomo(x) Mortale(x)) Traduzione goal Mortale(Socrate)
35 Logica del primo ordine x.(Uomo(x) Mortale(x)) (SUBST({x/Socrate},Uomo(x) Mortale(x)) Universal Elimination Uomo(Socrate) Mortale(Socrate), Uomo(Socrate) MP Mortale(Socrate)