La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Introduzione alla LOGICA MATEMATICA Corso di Matematica Discreta. Corso di laurea in Informatica. Prof. Luigi Borzacchini III. La logica delle proposizioni.

Presentazioni simili


Presentazione sul tema: "Introduzione alla LOGICA MATEMATICA Corso di Matematica Discreta. Corso di laurea in Informatica. Prof. Luigi Borzacchini III. La logica delle proposizioni."— Transcript della presentazione:

1 Introduzione alla LOGICA MATEMATICA Corso di Matematica Discreta. Corso di laurea in Informatica. Prof. Luigi Borzacchini III. La logica delle proposizioni. Sintassi.

2 Dalla semantica alla sintassi Le tavole di verità sono una procedura semantica, cioè descrivono le correlazioni ‘statiche’ dei valori di verità tra proposizioni complesse e i loro componenti atomici. Ma la matematica e in generale l’intelligenza umana ha sempre utilizzato tecniche di ragionamento ‘dinamico’ per raggiungere la verità: l’esempio più famoso è la dimostrazione matematica. Pensate ad una dimostrazione di geometria: le ipotesi, una serie di frasi collegate fra di loro come anelli di una catena, fino alla tesi finale.

3 Una formula è conseguenza logica (semantica) di altre formule se è vera quando queste sono vere. So che se piove, mi posso bagnare, e quindi ogni qual volta piove mi posso bagnare,,, allora, i numeri pari sono divisibili per 2, quindi ogni numero pari è divisibile per 2,,, allora sintattica: se A  B, A allora B A  B A regola di inferenza (modus ponens) B La dimostrazione è una sequenza finita di formule, ciascuna delle quali o è una premessa o si ricava da formule precedenti tramite una regola di inferenza. L’ultima formula è il teorema. Le premesse sono formule assunte come vere. Una via sintattica alla verità: l’inferenza:

4 La dimostrazione L’idea di dimostrazione prima di Euclide era sostanzialmente quella di una costruzione geometrica che rendeva evidente una certa proprietà: ad esempio il teorema di Pitagora. Con Aristotele e Euclide la dimostrazione assume una forma sintattica, quasi una traduzione della costruzione, con Frege anche le inferenze diventano sintattiche. La verità è un concetto semantico, la dimostrazione è un concetto sintattico, quasi meccanico E’ necessario ‘capire’ una dimostrazione? Si e no Se la formula T è stata dimostrata dalle premesse A 1, A 2, … A n, scriveremo A 1, A 2, … A n  T, se la formula T è conseguenza logica delle premesse A 1, A 2, … A n, scriveremo A 1, A 2, … A n  T

5 Un esempio: A  B, B  C, A  C Ad esempio:,, . A B C A  B B  C 0 0 0 1 1 0 0 1 1 1 0 1 0 1 0 0 1 1 1 1 1 0 0 0 1 1 0 1 0 1 1 1 0 1 0 1 1 1 1 1 A premessa A  B premessa B modus ponens B  C premessa C modus ponens Il modus ponens è una regola corretta: se A  B e A sono vere, allora è vera anche B.

6 Abbiamo usato per il costrutto due simboli diversi:  e . Qual è la differenza? ABABAB A  (A  B)(A  (A  B) )  B 00101 01101 10001 11111 A e A  B sono contemporaneamente vere in un solo caso: la quarta riga, e in tale caso anche B è vera. Equivalentemente basterebbe dimostrare che (A  (A  B) )  B è una tautologia. In generale la regola Premesse è corretta Conseguenze sse Premesse  Conseguenza è una tautologia.

7 La deduzione naturale La dimostrazione è intesa come una procedura in cui si ‘smantellano’ le premesse e con i ‘frammenti’ si ‘costruisce’ il teorema. E quindi occorrono regole per eliminare i connettivi e regole per introdurli.  -eliminazione A  B A B Dalle tavole di verità si verifica che sono regole di inferenza corrette.

8 Ad esempio: A  (B  C), A  B  C. Scriviamo le premesse lasciamo dello spazio e poi il teorema da dimostrare: A  (B  C) A  B ………… C Smantelliamo le premesse A  (B  C) A  B A  -elim. B  -elim. (B  C)  -elim. ………… C Riempiamo lo spazio rimasto per ottenere il teorema: A  (B  C) A  B A B (B  C) C  -elim La dimostrazione così costruita è corretta! Il teorema è soddisfatto se lo sono le premesse: A  (B  C), A  B  C premesse teorema

9 A  (B  C), A  B  C ABC ABABB  CA  (B  C)(A  (B  C))  (A  B) C (A  (B  C))  (A  B)  C 000010001 001010011 010000001 011010011 100011001 101011011 110100001 111111111 Non accade mai che (A  (B  C))  (A  B) sia vera e C sia falsa (A  (B  C))  (A  B)  C è una tautologia

10 Le sottoderivazioni. Abbiamo quattro connettivi ( , , ,  ) e quindi abbiamo bisogno di otto regole, mentre ne abbiamo date solo cinque. Le tre mancanti (le due del  e la  -introduzione) sono date come sottoderivazioni, cioè ‘dimostrazioni locali’, simili alle subroutines in un programma. Una sottoderivazione ha delle ‘assunzioni’ che sono delle premesse locali, può ‘importare’ tutte le formule dalla derivazione principale, e si può ‘chiudere’ se sono soddisfatte certe condizioni e in tal caso ‘esportare’ un risultato nella derivazione principale

11 La  -introduzione Per introdurre la  si usa una sottoderivazione, una sottodimostrazione da usare all’interno di una dimostrazione principale, che ricorda il ‘lemma’ delle dimostrazioni geometriche. Per introdurre una formula A  B si usa A come ‘assunzione’, si importano formule dalla dimostrazione principale, e se alla fine si ottiene B, si può esportare nella dimostrazione principale A  B. …… A assunz. ….. ….. import B A  B ……..

12 Dimostrare che A  B, B  C  A  C A  B premessa B  C premessa A assunz. per  -intro A  B import B  -elim B  C import C  -elim A  C export  -intro

13 Dimostrare che A  (B  C)  (A  B)  (A  C) A  (B  C) premessa A  B assunz. per (A  B)  (A  C) A assunz. per A  C A  B import B  -elim. A  (B  C) import B  C  -elim. C  -elim. A  C export per  -intro (A  B)  (A  C) export per  -intro La correttezza della regola deriva non dalla tavola di verità dell’ , ma da un teorema: Se K, A  B allora K  A  B

14 E la coppia di regole, il modus ponens come  -eliminazione e la sottoderivazione della  -introduzione, ci fanno notare che derivare T da A equivale a dimostrare A  T, e che, assumendo A, da A  T si ottiene T. Otteniamo quindi la interscambiabilità tra l’implicazione statica data dal connettivo  e quella dinamica data dalla relazione di dimostrabilità . In realtà abbiamo qui in sostanza solo ridotto il connettivo , per introdurlo nella dimostrazione, alla dimostrazione espressa dall’ . Sarà questo il contenuto del ‘teorema di deduzione’: A 1, A 2, …., A n  T se e solo se, qualunque sia i, A 1, A 2, …., A i-1, A i+1,…. A n  A i  T

15 Il teorema di deduzione A 1, A 2, …., A n  T se e solo se, qualunque sia i, A 1, A 2, …., A i-1, A i+1,…. A n  A i  T Per una sola premessa (n=1): A  T se e solo se  A  T, e ogni dimostrazione Premesse  T è anche una regola (derivata) Premesse Ma lo stesso non vale per premesse infinite. A 1 A 1 A 2 A 2 A 2 A 2 …. …. …. … A n A n A n A n …… A i A i l A i …… ……. ….. …… T T T T A i  T indica il posto vuoto lasciato da Ai A 1 A 1 A 1 …….. ……… …….. A i-1 A i-1 A i+1 A i+1 …….. ………… A n A n A n …….. ……… ……. A i  T A i  T A i T T T

16 Trattamento del  La sottoderivazione che consente introduzione ed eliminazione del  è sostanzialmente la dimostrazione per assurdo. La  -introduzione si usa per costruire la formula  A. L’assunzione di partenza è A, e se si ottiene una contraddizione (B   B, per un qualsiasi B), si può esportare  A nella dimostrazione principale. Analogamente per la  -eliminazione: l’assunzione è  A, e se si ottiene una contraddizione si esporta A. La correttezza delle due regole deriva dalla tavola di verità del .

17 Esempio: modus tollens P  Q  Q  P P  Q,  Q   P, PQ PP QQPQPQ(P  Q)  (  Q) 001111 011010 100100 110010 P  Q prem.  Q prem. P assunz. P  Q import Q  -elim.  Q import Q  Q  -intro. assurdo  P  -intro. P  Q,  Q   P

18 P  Q   (  P  Q) B  C   C  B P  Q premessa  P  Q assunz.  (  P  Q)  -intro. Legge di de Morgan B  C premessa  C assunz.  B  -intro.  C  B  -intro. regola di B  C conversione  C  B  P  -elim. P  Q import Q  -elim.  Q  -elim.  Q  Q  -intro. B assunz. B  C import C  -elim.  C import C  C  -intro.

19 Correttezza e Completezza La dimostrazione è oggetto di un calcolo logico Una proposizione può essere ‘vera’ in una certa interpretazione, falsa in un’altra:, è soddisfatta nei numeri interi, ma non nei relativi, vera è una proposizione soddisfatta in tutte le interpretazioni (una tautologia, come A  A) Una calcolo logico è corretto se tutto ciò che è dimostrabile è vero, è completo se tutto ciò che è vero è dimostrabile. Un calcolo logico è corretto se Premesse  T implica Premesse  T, è completo se Premesse  T implica Premesse  T

20 Per garantire la correttezza è necessario e sufficiente che le regole di inferenza siano truth- preserving, cioè nella conclusione ‘conservino la verità’ delle ipotesi. In tal caso poiché le premesse sono soddisfatte nei loro modelli e le regole trasformano verità in verità tutte le formule della dimostrazione sono soddisfate nei modelli delle premesse. Le tautologie sono sempre vere e quindi possono sempre essere introdotte in una dimostrazione. A B A  B 0 0 1 0 1 1 1 0 0 1 1 1 Ad esempio nel modus ponens le ipotesi sono A e A  B, la conclusione è B: Quando le ipotesi sono vere è vera anche B.

21 Se il calcolo logico è corretto e completo, possiamo distinguere due casi in base alla natura delle premesse: Nel calcolo logico puro le premesse (gli assiomi) possono essere solo tautologie, e ne segue che tutte le righe della dimostrazione (incluso il teorema) sono tautologie. In una teoria assiomatica gli assiomi non sono tautologie e siamo interessati alle interpretazioni che soddisfano gli assiomi (i loro modelli) e quindi anche i teoremi. Ad esempio: in geometria «per due punti passa una e una solo retta», e in tutti i modelli in cui gli assiomi della geometria sono validi, sono validi anche tutti i teoremi.

22 Ne consegue che in un calcolo corretto e completo c’è una corrispondenza perfetta tra sintassi e semantica, tra Teoremi: Premesse  T, conseguenze logiche: Premesse  T e regole derivate: In una teoria assiomatizzata con un sistema finito di assiomi vale anche l’equivalenza (nel calcolo logico puro con  Premesse  T, e quindi ogni teorema è anche una tautologia Premesse  T. Ad esempio se Assiomi_Geometria  Teorema_di_Pitagora, allora  Assiomi_Geometria  Teorema_di_Pitagora Premesse T

23 Basta infatti verificare che Premesse  T sia una tautologia. A B C  A A  B  A  C Premesse B  C  C 0 0 0 1 0 1 0 0 1 0 0 1 1 0 1 0 1 0 0 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 0 1 0 0 0 1 0 0 0 1 1 0 1 0 1 1 1 1 0 1 1 0 0 1 0 0 1 1 1 1 1 0 1 1 1 1 0 Premesse = { A  B,  A  C }. Premesse  B  C Premesse   C

24 Dimostrare con le tavole di verità che: C  B, A  (A  B)  C. A B C C  B Premesse (A  B) (A  B)  C. 0 0 0 1 0 1 0 0 0 1 1 0 1 1 0 1 0 0 0 1 0 0 1 1 1 0 1 1 1 0 0 1 1 0 1 1 0 1 1 1 0 1 1 1 0 0 0 1 0 1 1 1 1 1 1 1 La tesi è vera in tutti i modelli delle premesse, e quindi è dimostrata

25 Dimostrare con la deduzione naturale che: C  B, A  (A  B)  C. C  B premessa A premessa A  B assunzione in una sottoderivazione per la  - introduzione A import B modus ponens dalle due righe precedenti C  B import C or-eliminazione dalle due righe precedenti, chiusura della sottoderivazione (A  B)  C  -introduzione CVD

26 Il calcolo logico puro Il calcolo logico sulle tautologie (  T) assume un ruolo speciale. Ogni dimostrazione del tipo A 1, A 2, …., A n  T corrisponde ad una tautologia  A 1  A 2  ….  A n  T e ad una regola A 1 A 2 …. A n tautologie proposizioni T Il calcolo logico puro descrive quindi compiutamente gli aspetti formali della logica: ogni teorema ha un numero finito di premesse. Così che l’insieme delle tautologie della forma A  T include tutti i possibili teoremi e tutte le possibili regole di inferenza., …., An A1, A2, …., An 2 A  T 2

27 Ad esempio la tautologia ((P  Q)   Q)   P (verificabile anche con le tavole di verità) corrisponde alla dimostrazione P  Q,  Q   P e alla regola derivata P  Q  Q (modus tollens),  P del tipo,<non prendo l’ombrello> e quindi. Analogamente per la regola derivata P  Q (conversione)  Q   P Se invece la tautologia è una doppia implicazione, come (P  Q)  (  P  Q) allora abbiamo una equivalenza tra le due formule e due regole derivate P  Q  P  Q  P  Q P  Q e si può dimostrare sia P  Q   P  Q che  P  Q  P  Q Analogamente dalle leggi di de Morgan:  (P  Q)  (P  Q)  P   Q  P   Q

28 Sin dal Medioevo si conosce il teorema dello pseudo- Scoto: P,  P  B, qualunque sia B, cioè da una contraddizione si può derivare P prem. qualsiasi formula. Infatti: P  B  -intro Altro risultato notevole la  P prem. consequentia mirabilis: (P   P)   P B  -elim. nella quale una proposizione non P   P prem. tautologica è dimostrata senza P ass. contenuti ad essa estranei, ma solo P   P import dalla sua relazione con la sua  P  -elim. negazione  P  P  -intro  P  -intro.

29 La logica proposizionale è corretta e completa Abbiamo visto che la correttezza di un calcolo logico è facilmente verificabile, e del resto nessuno ha mai dubitato della correttezza della logica delle nostre dimostrazioni (ad esempio in geometria). Meno ovvia la completezza: chi ci assicura che tutte le proprietà vere della nostra geometria siano dimostrabili dai nostri assiomi? Non la dimostriamo Del resto verità e dimostrabilità sono due cose molto diverse. Dimostrare che è una paginetta nel libro di geometria, verificarlo significa effettuare infinite misure!

30 Condizione necessaria e sufficiente A condizione sufficiente per B (se A, B) vuol dire A  B: A condizione necessaria per B (A solo se B) vuol dire B  A: (questo spesso trae in inganno poiché sembra strano che una ‘condizione’ sia una conseguenza) A condizione necessaria e sufficiente per B (A se e solo se B) vuol dire ovviamente che A  B e B  A

31 La decidibilità Un altro problema (ad esempio decidere se una certa formula è dimostrabile da certe premesse) si dice decidibile se esiste un algoritmo (una procedura meccanica) che per qualsiasi input in tempo finito ci dà la risposta (positiva o negativa). L’algoritmo che decide se una formula è dimostrabile è noto come general theorem prover Premesse,T gtp La logica proposizionale, essendo completa, è decidibile tramite le tavole di verità Premesse  T Premesse  T

32 Per certe logiche il general theorem prover non sempre termina nel caso di risposta negativa (semidecidibile) Premesse, teorema gtp Degli algoritmi visti fino ad ora: le tavole di verità e la verifica che una sequenza di formule è una dimostrazione sono decidibili e di esecuzione rapida. La verifica di una equivalenza tramite una sequenza di equivalenze elementari è decidibile, ma c’è il problema del controllo sulle regole da applicare. In generale la esistenza e la eventuale costruzione di una dimostrazione sarà un problema semidecidibile. Premesse  T Premesse  T

33 Con le tavole di verità fai vedere che: A  B  C  B  A A  B  C   A A B C  A B  C A  B  C B  A 0 0 0 1 0 1 1 0 0 1 1 0 1 1 0 1 0 1 0 1 1 0 1 1 1 1 1 1 1 0 0 0 0 0 0 1 0 1 0 0 0 0 1 1 0 0 0 0 1 1 1 1 0 1 1 1

34 Dimostrare con la deduzione naturale che  B  A, B  C  A  C, usando anche regole derivate  B  A premessa B  C premessa  (A  C) assunzione  A   C de Morgan  A  -eliminazione  C  -eliminazione  B  A import B modus tollens B  C import  B modus tollens  B  B  -introduzione, contraddizione (A  C)

35 A B C  B  A B  C Premesse A  C 0 0 0 0 1 0 0 0 0 1 0 1 0 1 0 1 0 1 0 0 0 0 1 1 1 1 1 1 1 0 0 1 1 1 1 1 0 1 1 1 1 1 1 1 0 1 0 0 1 1 1 1 1 1 1 1  B  A, B  C  A  C con le tavole di verità:

36 Perché è sbagliata la seguente derivazione ? A  B  (A  B)   A A  B premessa A  B assunzione B  -eliminazione A  B import  A  B equival. riga preced.  A  -eliminazione (A  B)   A  -introduzione La  -eliminazione non è corretta poiché. ci sarebbe stato bisogno di avere dimostrato  B


Scaricare ppt "Introduzione alla LOGICA MATEMATICA Corso di Matematica Discreta. Corso di laurea in Informatica. Prof. Luigi Borzacchini III. La logica delle proposizioni."

Presentazioni simili


Annunci Google