Top Banner
FMZ 1 Linguaggi di Programmazione Cenni di logica proposizionale
37

FMZ1 Linguaggi di Programmazione Cenni di logica proposizionale.

May 01, 2015

Download

Documents

Agnese Rostagno
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: FMZ1 Linguaggi di Programmazione Cenni di logica proposizionale.

FMZ 1

Linguaggi di Programmazione Cenni di logica proposizionale

Page 2: FMZ1 Linguaggi di Programmazione Cenni di logica proposizionale.

FMZ 2

Semplice Teorema di Geometria

A C

B

Dato un triangolo isoscele ovvero con AB=BC, si vuole dimostrare che gli angoli BAC e BCA sono uguali.

Page 3: FMZ1 Linguaggi di Programmazione Cenni di logica proposizionale.

FMZ 3

Semplice Teorema: conoscenze pregresse

• Se due triangoli sono uguali, i due triangoli hanno lati ed angoli uguali (A)

• Se due triangoli hanno due lati e l’angolo sotteso uguali, allora i due triangoli sono uguali (T)

A C

B

Page 4: FMZ1 Linguaggi di Programmazione Cenni di logica proposizionale.

FMZ 4

Semplice Teorema: Dimostrazione

• BH bisettrice di ABC cioè ABH=HBC (T2)

Dimostrazione• AB=BC per ipotesi• ABH=HBC per T2• Il triangolo HBC è uguale al

triangolo ABH per T• BAC=BCA per A

A C

B

H

Page 5: FMZ1 Linguaggi di Programmazione Cenni di logica proposizionale.

FMZ 5

Semplice Teorema: Dimostrazione

Abbiamo trasformato

T in Se AB=BC e BH=BH e ABH=HBC, allora

il triangolo ABH è uguale al triangolo HBC

A in Se triangolo ABH è uguale al triangolo

HBC, allora AB=BC e BH=BH e AH=HC e ABH=HBC e AHB=CHB e BAC=BCA

A C

B

H

Page 6: FMZ1 Linguaggi di Programmazione Cenni di logica proposizionale.

FMZ 6

Semplice Teorema: FormalizzazioneObbiettivo

Razionalizzare il processo che permette affermare:

A C

B

HAB=BC BAC=BCA

leggiamo “ ” come “è conseguenza logica di”

Page 7: FMZ1 Linguaggi di Programmazione Cenni di logica proposizionale.

FMZ 7

Abbiamo supposto che: • S={AB=BC, ABH=HBC, BH=BH}

Avevamo conoscenze pregresse:T: AB=BC BH=BH ABH=HBC trABH=trHBC

A: trABH=trHBC AB=BC BH=BH AH=HC ABH=HBC AHB=CHB BAC=BCA

Semplice Teorema: Formalizzazione

AB=BC BAC=BCA

Page 8: FMZ1 Linguaggi di Programmazione Cenni di logica proposizionale.

FMZ 8

Abbiamo costruito una catena di formule: P1: AB=BC da SP2: ABH=HBC da SP3: BH=BH da S

P4: AB=BC BH=BH ABH=HBC da P1,P2,P3 e REGOLA2

P5: trABH=trHBC da P4,T e REGOLA1

P6: AB=BC BH=BH AH=HC ABH=HBC AHB=CHB BAC=BCA da P5,A e REGOLA1

P7: BAC=BCA da P6 e REGOLA3

Semplice Teorema: Formalizzazione

AB=BC BAC=BCA

Page 9: FMZ1 Linguaggi di Programmazione Cenni di logica proposizionale.

FMZ 9

Una dimostrazione per F è conseguenza di S

è una sequenza

DIM=P1,P2,…,Pn

dove• Pn=F• PiS oppure Pi è ottenibile da Pi1,…,Pim (con i1<i,.., im<i)

applicando una regola di inferenza

Processo di dimostrazione

S F

Page 10: FMZ1 Linguaggi di Programmazione Cenni di logica proposizionale.

FMZ 10

Regole di inferenza (Regola1): Modus Ponens (MP)

Se piove, la strada è bagnata.

Piove.

Allora la strada è bagnata.

P B , P

BMP

Page 11: FMZ1 Linguaggi di Programmazione Cenni di logica proposizionale.

FMZ 11

Regole di inferenza: AND- Introduzione(AI) e AND- Eliminazione(AE)

A1,…,An

A1… An

A1… An

Ai

AND-Introduzione (Regola2)

AND-Eliminazione (Regola3)

AE

AI

Page 12: FMZ1 Linguaggi di Programmazione Cenni di logica proposizionale.

FMZ 12

Calcolo Proposizionale Sistema (d’assiomi)

SINTASSIIngredienti:

• Un insieme di simboli L– Letterali: A1,…An

– Connettivi Logici: ,,,,(,)

• Un sottoinsieme FBF di L* detto delle formule ben formate

Page 13: FMZ1 Linguaggi di Programmazione Cenni di logica proposizionale.

FMZ 13

Calcolo Proposizionale Sistema (d’assiomi)

SINTASSIIngredienti:

• Un insieme ASSIOMIFBF

• Un insieme R di regole di inferenza

Abbiamo a disposizione:

• Meccanismo della dimostrazione

S F

Page 14: FMZ1 Linguaggi di Programmazione Cenni di logica proposizionale.

FMZ 14

Connettivi Logici

SIMBOLO

NOT ~

AND

OR

IMPLIES

IFF

Page 15: FMZ1 Linguaggi di Programmazione Cenni di logica proposizionale.

FMZ 15

FBF formule ben formate

• I letterali sono formule ben formate

• Se AFBF e BFBF, alloraAFBF

ABFBF

ABFBF

ABFBF

Page 16: FMZ1 Linguaggi di Programmazione Cenni di logica proposizionale.

FMZ 16

Assiomi (Conoscenze pregresse)

• A1: A(BA)

• A2: (A(BC))((AB)(AC))

• A3: (BA)((BA)B)

• A4: (AA)

• A5: AA

Page 17: FMZ1 Linguaggi di Programmazione Cenni di logica proposizionale.

FMZ 17

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?

Page 18: FMZ1 Linguaggi di Programmazione Cenni di logica proposizionale.

FMZ 18

Procedimento

1. Esprimere il problema in forma di logica proposizionale

2. Individuare i teoremi da dimostrare

3. Dimostrare i teoremi

Page 19: FMZ1 Linguaggi di Programmazione Cenni di logica proposizionale.

FMZ 19

EsempioSe 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

Page 20: FMZ1 Linguaggi di Programmazione Cenni di logica proposizionale.

FMZ 20

EsempioSe 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:

UMUI

UMUI

UIUIUC

UCUMag

Page 21: FMZ1 Linguaggi di Programmazione Cenni di logica proposizionale.

FMZ 21

Esempioa) L’unicorno è mitico?

b) L’unicorno è magico?

c) L’unicorno è cornuto?

Traduzione:

S = {UMUI, UMUI, UIUIUC, UCUmag}

a) S UM

b) S UMag

c) S UC

Page 22: FMZ1 Linguaggi di Programmazione Cenni di logica proposizionale.

FMZ 22

Esempio

P1: UIUIUC da S

P2: UIUI da A4

P3: UC da P1, P2 e MP

S UC

Page 23: FMZ1 Linguaggi di Programmazione Cenni di logica proposizionale.

FMZ 23

Esempio

P1: UIUIUC da SP2: UIUI da A4P3: UC da P1, P2 e MPP4: UCUMag da SP5: UMag da P3, P4 e MP

Esercizio: DIMOSTRARE a)

S UMag

Page 24: FMZ1 Linguaggi di Programmazione Cenni di logica proposizionale.

FMZ 24

Ricapitolando

• Logica Proposizionale (fin qui vista)– Permette di imbrigliare dei ragionamenti in

dei simboli– Permette di dedurre simboli da altri simboli

– Che manca?

Il concetto di Vero e di Falso

Page 25: FMZ1 Linguaggi di Programmazione Cenni di logica proposizionale.

FMZ 25

Logica ProposizionaleSEMANTICA

Funzione di interpretazione II: FBF{V,F}

che è composizionale ovvero:date A e B in FBFI(A) = I(A)I(AB) = I(A)I(B)I(AB) = I(A)I(B)I(AB) = I(A)I(B)

Page 26: FMZ1 Linguaggi di Programmazione Cenni di logica proposizionale.

FMZ 26

Logica ProposizionaleSEMANTICA

Tavole delle verità dei connettivi logici

Page 27: FMZ1 Linguaggi di Programmazione Cenni di logica proposizionale.

FMZ 27

Scopo del calcolo

Assumere Vere le FBF in S e verificare che F sia Vera

Logica ProposizionaleSEMANTICA

S F

Page 28: FMZ1 Linguaggi di Programmazione Cenni di logica proposizionale.

FMZ 28

Esempio

AA

A A AAV F V

F V V

Page 29: FMZ1 Linguaggi di Programmazione Cenni di logica proposizionale.

FMZ 29

Esempio

A(BA)

A B BA A(BA)

V V V V

V F V V

F V F V

F F V V

Esercizio: Provare a costruire la tabella di verità degli altri assiomi.

Page 30: FMZ1 Linguaggi di Programmazione Cenni di logica proposizionale.

FMZ 30

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

Page 31: FMZ1 Linguaggi di Programmazione Cenni di logica proposizionale.

FMZ 31

Osservazione

S F

S F

Semantica

Sintassi

• Chi garantisce?

Page 32: FMZ1 Linguaggi di Programmazione Cenni di logica proposizionale.

FMZ 32

Ragioniamo sul “ragionare”

• Ragionamento=sequenza di passi=calcolo della tabella di verità

• I passi del ragionamento sono importanti• Quando gli schemi dei passi di ragionamento sono

corretti?• Esaminiamo dei sedicenti ragionamenti ben

fondati

Page 33: FMZ1 Linguaggi di Programmazione Cenni di logica proposizionale.

FMZ 33

Sedicente Ragionamento ben fondato

Premessa: Tutti gli uomini sono mortali

Premessa: Socrate è un uomo

Deduzione: Socrate è mortale

Page 34: FMZ1 Linguaggi di Programmazione Cenni di logica proposizionale.

FMZ 34

Sedicente Ragionamento ben fondato

Premessa: Nessun ristorante costa poco

Premessa: Alcune pizzerie costano poco

Deduzione: Alcuni ristoranti non sono pizzerie

Page 35: FMZ1 Linguaggi di Programmazione Cenni di logica proposizionale.

FMZ 35

Sedicente Ragionamento ben fondato

Premessa: Il fosforo è implicato attivamente nei processi di memoria

Deduzione: Fa bene alla memoria mangiare pesce e prendere ricostituenti ricchi di fosforo

Page 36: FMZ1 Linguaggi di Programmazione Cenni di logica proposizionale.

FMZ 36

Sedicente Ragionamento ben fondato

Dato l’impennarsi del prezzo alla produzione della carta il prezzo dei libri è destinato a crescere vertiginosamente

Dato l’impennarsi del prezzo del barile di petrolio il prezzo della benzina è destinato a crescere vertiginosamente

Page 37: FMZ1 Linguaggi di Programmazione Cenni di logica proposizionale.

FMZ 37

Sillogismo di Chiappori

L’uomo è un animale politico, quindi un uomo politico è un animale.

Persuasione rispetto ragionamento logico:

i sedicenti ragionamenti ben fondati lo sono veramente???