Elementi introduttivi di Logica Matematica

Documenti analoghi
Introduzione alla logica proposizionale

Corso di Calcolatori Elettronici I A.A Algebra di Boole Lezione 4

Relazione d ordine in un algebra di Boole ed implicanti di una funzione

Algebra di Boole. Da Boole a Shannon

Le variabili logiche possono essere combinate per mezzo di operatori detti connettivi logici. I principali sono:

Precorsi di matematica

METODI MATEMATICI PER L INFORMATICA

Algebra di Boole. Andrea Passerini Informatica. Algebra di Boole

Segnali in circuiti elettronici digitali

LOGICA PER LA PROGRAMMAZIONE a.a. 2014/15 Seconda esercitazione 21/10/2014

Logica per la Programmazione

Università degli Studi di Cagliari Dipartimento di Ingegneria Elettrica ed Elettronica ALGEBRA BOOLEANA

Fondamenti di Informatica. Algebra di Boole

Fondamenti di Informatica 2, Linguaggi e Complessità : Logica I Parte Lucidi di M.Schaerf e A.Marchetti Spaccamela

CODIFICA DELLE INFORMAZIONI MODULO 5

Elementi di Informatica A. A. 2016/2017

LOGICA DEL PRIMO ORDINE: PROOF SYSTEM. Corso di Logica per la Programmazione A.A. 2013/14 Andrea Corradini

IL CALCOLO DEL PRIMO ORDINE. Corso di Logica per la Programmazione A.A. 2010/11 Andrea Corradini, Paolo Mancarella

Logica per la Programmazione

Operatori di relazione

Logica per la Programmazione

Elementi di Algebra e Logica Determinare la tavola della verità di ciascuna delle seguenti forme proposizionali:

Logica per la Programmazione

Programma del Corso di Matematica Discreta (Elementi) lettere P-Z anno accademico 2004/2005

Architettura degli elaboratori Ricapitolando (ciascuna freccia rappresenta un procedimento, che vedremo)

Introduzione alla logica matematica. Logica matematica. Paolo Bison

Fondamenti di Informatica

LOGICA DEL PRIMO ORDINE CON INSIEMI E INTERVALLI. Corso di Logica per la Programmazione

Avviate Specifi dall icona presente sul vostro Desktop.

Proposizioni logiche e algebra di Boole

Logica Proposizionale

Logica booleana. Bogdan Maris ( )

Qualche informazione su gruppi e anelli

Pagina 1 di 7. Il seguente capitolo introdurrà l utente ad un uso efficace ed efficiente di WinPEP.

Attraverso la minimizzazione, si è così tornati all espressione di partenza.

Fondamenti di Informatica 2, Linguaggi e Complessità : Logica I Parte Lucidi di M.Schaerf e A.Marchetti Spaccamela

Circuiti digitali combinatori

CODIFICA DELLE INFORMAZIONI MODULO 5

Relazioni e Principio di Induzione

Programma del Corso di Matematica Discreta (Elementi) anno accademico 2005/2006

Richiami di Algebra di Commutazione

Elementi di Logica Teoria degli insiemi

S O M M A R I O. Programma svolto nella classe I sezione A LM. pag. 2. Programma svolto nella classe I sezione A IGEA. pag. 3

Windows. La prima realizzazione di un ambiente grafico si deve alla Apple (1984) per il suo Macintosh. La gestione dei file conserva la logica del DOS

Logica per la Programmazione

LIBRO ADOTTATO. G.M. PIACENTINI CATTANEO: MATEMATICA DISCRETA, ed. ZANICHELLI LIBRI CONSIGLIATI

Introduzione ad alcuni sistemi di logica modale

Elementi di informatica

Elementi di teoria degli insiemi

4 Insiemi e algebre di Boole

17/10/16. Espressioni Booleane

Luca Costabile Esercizi di Logica Matematica Dispensa Calcolo Proposizionale 1

LOGICA PER LA PROGRAMMAZIONE a.a. 2016/17 Seconda esercitazione - 11/10/16 - Soluzioni Proposte

PORTE LOGICHE. Si effettua su due o più variabili, l uscita assume lo stato logico 1 se almeno una variabile di ingresso è allo stato logico 1.

Primi passi con Geogebra

Fondamenti di Informatica

LEZIONE 8. k e w = wx ı + w y j + w z. k di R 3 definiamo prodotto scalare di v e w il numero

$marina/did/md

Corso di Access. Prerequisiti. Modulo L2 A (Access) Le query

Fondamenti di Informatica

Logica per la Programmazione Corso di Laurea in INFORMATICA a.a. 2016/17

Linguaggio della logica Calcolo della verità/falsità di «affermazioni»

Introduzione all algebra di Boole. Introduzione all'algebra di Boole

Lezione 9 : Algebra di Boole e Codifica Binaria (p. 1) Lunedì 29 Novembre 2010

Logica: materiale didattico

Corso di Calcolatori Elettronici I

WebDisk. TeamPortal - WebDisk

Algebra di Boole. L'algebra della logica ( )

LOGICA E ALGEBRA. 5 febbraio Parte di Logica

Circuiti e reti combinatorie. Appendice A (libro italiano) + dispense

ALGEBRA DI BOOLE. In caso di errori di battitura o se si volesse contribuire a migliorare la seguente guida contattare:

Logica per la Programmazione Corso di Laurea in INFORMATICA a.a. 2015/16

Tecnologie per il web e lo sviluppo multimediale. Rappresentazione delle informazioni

Esercizi assegnati il 17 ottobre

1 ELEMENTI DI ALGEBRA BOOLEANA

Informazione binaria: - rappresentazione di valori logici -

Algebra di Boole X Y Z V. Algebra di Boole

Algebra di Commutazione

Cenni di logica matematica e di teoria degli insiemi Paola Rubbioni

Introduzione alla logica matematica

Logica per la Programmazione

WINDOWS 2000, XP tutti, 7 Tutti

Sperimentazioni di Fisica I mod. A Lezione 4

INSIEMI. DEF. Un INSIEME è una qualsiasi collezione di oggetti.

Cenni di logica matematica e di teoria degli insiemi Paola Rubbioni

LOGICA DEL PRIMO ORDINE CON INSIEMI E INTERVALLI. Corso di Logica per la Programmazione A.A. 2010/11 Andrea Corradini, Paolo Mancarella

Algebra di commutazione

Tutorial. Funzioni di personalizzazione dei software.

TEORIA degli INSIEMI 1

anno scolastico 2009 / 2010 ELETTRONICA per Elettrotecnica ed Automazione

Esercitazioni per il corso di Logica Matematica

API. Ripasso di logica. Davide Martinenghi. Politecnico di Milano. API Davide Martinenghi (1/30)

Algebra Booleana. 13. Rif:

Logica degli enunciati; Operazioni con le proposizioni; Proprietà delle operazioni logiche; Tautologie; Regole di deduzione; Logica dei predicati;

Strumenti di elaborazioni testi

Transcript:

Conseguenza logica Elementi introduttivi di Logica Matematica G. Rosolini Non abbiamo a disposizione tutti gli strumenti necessari per fornire la definizione precisa di quando una formula ben formata è conseguenza logica di un altra. Ma, per nostra fortuna, la conseguenza logica tra formule è determinata in modo compatto da alcune proprietà che diamo qui sotto. Introduciamo una notazione per indicare quando la formula F 2 è conseguenza logica della formula F 1 scrivendo F 1 = F 2 Si legge A = B come da A segue logicamente B. Se si usa notazione abbreviata in un testo scritto, è opportuno indicare una tale conseguenza con il segno al posto del quale, troppo spesso, viene usato erroneamente il segno. Proprietà riflessiva transitiva passante Nel seguito A, B e C indicano generiche formule ben formate. A = A se A = B e B = C, allora A = C se A = B, allora A[t/x] = B[t/x] I connettivi come aggiunti C = A B se e solo se C = A e C = B A B = C se e solo se A = C e B = C C = x. A se e solo se C = A a patto che x non sia libera in C x. A = C se e solo se A = C a patto che x non sia libera in C C = tt se e solo se sempre ff = C se e solo se sempre C = A B se e solo se C A = B Abbreviazioni A B def = (A B) (B A) A def = A ff Proprietà fondamentale A = B se e solo se B = A Equivalenza logica La situazione in cui F 1 = F 2 e pure F 2 = F 1 si abbrevia F 1 = F 2, leggendola F 1 è (logicamente) equivalente a F 2. Proprietà Nel seguito A, B, C, D e P indicheranno generiche formule ben formate. = è una congruenza tra formule ben formate:

prop. riflessiva prop. transitiva prop. sostitutiva prop. simmetrica A = A. Se e B = C, allora A = C. Se, allora D[A/X] = D[B/X]. Se, allora B = A. Rispetto a =, le operazioni (,, ) formano un algebra di Boole: prop. associativa (A B) C = A (B C) prop. commutativa prop. di assorbimento A B = B A A (B A) = A prop. distributiva A (B C) = (A B) (A C) prop. dell elemento neutro prop. di De Morgan prop. involutiva A (B B) = A Rispetto a =, le operazioni e si definiscono come prop. definiente dello pseudocomplemento (A B) = ( A) ( B) A = A A B = ( A) B prop. definiente della doppia implicazione A B = (A B) (B A) Rispetto a =, le operazioni e soddisfano: prop. di conservazione ( x. A) ( x. B) = x. (A B) prop. dell unità prop. della counità A ( x. A) = A xp = P prop. quant. di De Morgan ( x. A) = x. A prop. di α-conversione x. (P [x/y]) = y. P prop. di scambio y. ( x. A) = x. ( y. A) prop. Beck-Chevalley a patto che x non compaia in P. x. (A P ) = ( x. A) P Osservazione Avrete notato che molte delle equivalenze sopra ricordano l uguaglianza di certe funzioni booleane: precisamente, se si scrivono elementi generici p, q, r,... dell insieme B al posto delle formule A, B, C,..., le funzioni determinate da ciascun membro di un equivalenza coincidono. Questo può indurre a pensare che, per verificare se un equivalenza è corretta, basti controllare le tavole di verità determinate a primo e secondo membro. Attenzione: non è così! In particolare, è necessario prestare molta cura nel trattare casi con quantificatori: [ x(xdorme)] Carlo dorme = x(xdorme), ma, in generale, p q p, ad esempio con p = T e q = F.

Il calcolo con JAPE Le regole del calcolo deduttivo sono codificate con il file LaB.jt, in riferimento a due tra i massimi artefici della loro realizzazione teorica: F. William Lawvere e Georg Boole. I pannelli contengono affermazioni che devono essere dimostrate utilizzando le regole. Facendo doppio-click su una delle affermazioni, si apre una finestra che mostra che cosa si deve ottenere. Una volta dimostrata, un affermazione può venire utilizzata in altre dimostrazioni. Le dimostrazioni si svolgono applicando opportunamente le regole del calcolo. Queste si trovano in alcuni menù: uno con quelle di base, gli altri con quelle derivate sulle equivalenze. Il suffisso in indica l introduzione di un segno, il suffisso out indica l eliminazione del segno. Le dimostrazioni si svolgono 1. selezionando con il tasto sinistro una formula della conseguenza che si desidera ottenere 2. scegliendo la regola da applicare dai menù Una volta dimostrato, un teorema può essere applicato usando il tasto Apply : è necessario 1. selezionare il teorema da usare 2. premere il tasto Apply del pannello relativo. Le equivalenze, una volta dimostrate, possono essere applicate per sostituire formule equivalenti: è necessario 1. selezionare con il secondo tasto del mouse il testo da sostituire 2. scegliere l equivalenza da applicare da un menù, oppure da uno dei pannelli e premere il tasto Apply del pannello. Doppio-click su una formula applica sempre la regola più elementare rispetto al segno principale della formula, rispetto alla sua posizione, a sinistra o a destra, del segno di conseguenza e, in quattro casi, rispetto anche alla formula dall altra parte del segno di conseguenza: P = P Q -in1 x. P =... -out Q = P Q -in2... = x. P -in P Q = P -out1 x. P =... -in P Q = Q P Q =... -out2 -out... = x. P -out P =... -def... = P Q -in... = P -def P Q =... -out P Q =... -def... = P Q -in... = P Q -def

Le proprietà riflessiva, tt-in e ff-in vengono applicate automaticamente. Nel menù Edit, si può scegliere come visualizzare le dimostrazioni: Full tree mostra, in ogni sostituzione, quale esempio di regola è stato appli- l opzione cato; l opzione Hidden branches abbrevia l albero, nascondendo gli esempi e lasciando una menzione alla regola nella giustificazione. C è anche un tasto per applicare proprietà non dimostrate: ATTENZIONE! Mentre questo può essere utile durante un tentatiovo per cercare una strategia dimostrativa, è assolutamente sbagliato usarlo su versioni definitive. Se lo usate (l utilizzo non è per nulla necessario), tenete presente che lo fate con un notevole rischio. Regole principali Tutte le proprietà della conseguenza sono reversibili a parte due: la proprietà transitiva e la proprietà passante. Per questo, però tutte vengono mostrate in una direzione. A = B B = C A = B riflessiva transitiva passante A = A A = C A[t/x] = B[t/x] C = A C = B C = A B C = A B -in -out1 -out2 C = A B C = A C = B A = C B = C A B = C A B = C -in -out1 -out2 A B = C A = C B = C tt-in C = tt -in ff-in ff = C C A = B C = A B per P senza x libera: P = A -in P = x. A A = P -in x. A = P -out -out -out C = A B C A = B P = x. A P = A x. A = P A = P

nome proprietà proprietà duale involutiva A = A associativa (A B) C = A (B C) (A B) C = A (B C) commutativa A B = B A A B = B A di assorbimento A (B A) = A A (B A) = A distributiva A (B C) = (A B) (A C) A (B C) = (A B) (A C) dell elemento neutro A tt = A A ff = A di De Morgan (A B) = ( A) ( B) (A B) = ( A) ( B) pseudocomplemento A B = ( A) B conservazione x. (A B) = ( x. A) ( x. B) x. (A B) = ( x. A) ( x. B) unità A ( x. A) = A xp = P counità xp = P A ( x. A) = A De Morgan ( x. A) = x. A ( x. A) = x. A α-conversione x. (P [x/y]) = y. P x. (P [x/y]) = y. P Beck-Chevalley x. (A P ) = ( x. A) P x. (A P ) = ( x. A) P funzionalità definizione di di A = B C = D di A C = B D C = D di A C = B D C = D di A C = B D di x. A = x. B A = A ff dove x non è libera in P. definizione di A B = (A B) (B A) di di C = D A C = B D x. A = x. B

Conseguenza logica Elementi introduttivi di Logica Matematica G. Rosolini Non abbiamo a disposizione tutti gli strumenti necessari per fornire la definizione precisa di quando una formula ben formata è conseguenza logica di un altra. Ma, per nostra fortuna, la conseguenza logica tra formule è determinata in modo compatto da alcune proprietà che diamo qui sotto. Introduciamo una notazione per indicare quando la formula F 2 è conseguenza logica della formula F 1 scrivendo F 1 = F 2 Si legge A = B come da A segue logicamente B. Se si usa notazione abbreviata in un testo scritto, è opportuno indicare una tale conseguenza con il segno al posto del quale, troppo spesso, viene usato erroneamente il segno =>. Proprietà riflessiva transitiva passante Nel seguito A, B e C indicano generiche formule ben formate. A = A se A = B e B = C, allora A = C se A = B, allora A[t/x] = B[t/x] I connettivi come aggiunti C = A & B se e solo se C = A e C = B A B = C se e solo se A = C e B = C C =! x. A se e solo se C = A a patto che x non sia libera in C? x. A = C se e solo se A = C a patto che x non sia libera in C C = tt se e solo se sempre ff = C se e solo se sempre C = A => B se e solo se C & A = B Abbreviazioni A <=> B def = (A => B) &(B => A) ~ A def = A => ff Proprietà fondamentale ~ A = B se e solo se ~ B = A Equivalenza logica La situazione in cui F 1 = F 2 e pure F 2 = F 1 si abbrevia F 1 = F 2, leggendola F 1 è (logicamente) equivalente a F 2. Proprietà Nel seguito A, B, C, D e P indicheranno generiche formule ben formate. = è una congruenza tra formule ben formate:

prop. riflessiva prop. transitiva prop. sostitutiva prop. simmetrica A = A. Se e B = C, allora A = C. Se, allora D[A/X] = D[B/X]. Se, allora B = A. Rispetto a =, le operazioni (&,, ) formano un algebra di Boole: ~ prop. associativa (A & B) & C = A &(B & C) prop. commutativa prop. di assorbimento A & B = B & A A &(B A) = A prop. distributiva A &(B C) = (A & B) (A & C) prop. dell elemento neutro A &(B ~ B) = A prop. di De Morgan ~ (A & B) = ( ~ A) ( ~ B) prop. involutiva Rispetto a =, le operazioni => e <=> si definiscono come prop. definiente dello pseudocomplemento ~~ A = A A => B = ( ~ A) B prop. definiente della doppia implicazione A <=> B = (A => B) &(B => A) Rispetto a =, le operazioni! e? soddisfano: prop. di conservazione (? x. A) (? x. B) =? x. (A B) prop. dell unità prop. della counità prop. quant. di De Morgan prop. di α-conversione A &(? x. A) = A? xp = P ~ (? x. A) =! x. ~ A? x. (P [x/y]) =? y. P prop. di scambio? y. (? x. A) =? x. (? y. A) prop. Beck-Chevalley a patto che x non compaia in P.? x. (A & P ) = (? x. A) & P Osservazione Avrete notato che molte delle equivalenze sopra ricordano l uguaglianza di certe funzioni booleane: precisamente, se si scrivono elementi generici p, q, r,... dell insieme B al posto delle formule A, B, C,..., le funzioni determinate da ciascun membro di un equivalenza coincidono. Questo può indurre a pensare che, per verificare se un equivalenza è corretta, basti controllare le tavole di verità determinate a primo e secondo membro. Attenzione: non è così! In particolare, è necessario prestare molta cura nel trattare casi con quantificatori: [! x(xdorme)] => ~ Carlo dorme = ~! x(xdorme), ma, in generale, p => ~ q p, ad esempio con p = T e q = F. ~

Il calcolo con JAPE Le regole del calcolo deduttivo sono codificate con il file LaB.jt, in riferimento a due tra i massimi artefici della loro realizzazione teorica: F. William Lawvere e Georg Boole. I pannelli contengono affermazioni che devono essere dimostrate utilizzando le regole. Facendo doppio-click su una delle affermazioni, si apre una finestra che mostra che cosa si deve ottenere. Una volta dimostrata, un affermazione può venire utilizzata in altre dimostrazioni. Le dimostrazioni si svolgono applicando opportunamente le regole del calcolo. Queste si trovano in alcuni menù: uno con quelle di base, gli altri con quelle derivate sulle equivalenze. Il suffisso in indica l introduzione di un segno, il suffisso out indica l eliminazione del segno. Le dimostrazioni si svolgono 1. selezionando con il tasto sinistro una formula della conseguenza che si desidera ottenere 2. scegliendo la regola da applicare dai menù Una volta dimostrato, un teorema può essere applicato usando il tasto Apply : è necessario 1. selezionare il teorema da usare 2. premere il tasto Apply del pannello relativo. Le equivalenze, una volta dimostrate, possono essere applicate per sostituire formule equivalenti: è necessario 1. selezionare con il secondo tasto del mouse il testo da sostituire 2. scegliere l equivalenza da applicare da un menù, oppure da uno dei pannelli e premere il tasto Apply del pannello. Doppio-click su una formula applica sempre la regola più elementare rispetto al segno principale della formula, rispetto alla sua posizione, a sinistra o a destra, del segno di conseguenza e, in quattro casi, rispetto anche alla formula dall altra parte del segno di conseguenza: P = P Q Q = P Q P & Q = P P & Q = Q -in1 -in2 &-out1 &-out2! x. P =...!-out... =! x. P!-in? x. P =...?-in... =? x. P?-out P & Q =... =>-out... = P & Q &-in ~ P =... ~ -def... = ~ P ~ -def P Q =... -out P <=> Q =... <=>-def... = P => Q =>-in... = P <=> Q <=>-def

Le proprietà riflessiva, tt-in e ff-in vengono applicate automaticamente. Nel menù Edit, si può scegliere come visualizzare le dimostrazioni: Full tree mostra, in ogni sostituzione, quale esempio di regola è stato appli- l opzione cato; l opzione Hidden branches abbrevia l albero, nascondendo gli esempi e lasciando una menzione alla regola nella giustificazione. C è anche un tasto per applicare proprietà non dimostrate: ATTENZIONE! Mentre questo può essere utile durante un tentatiovo per cercare una strategia dimostrativa, è assolutamente sbagliato usarlo su versioni definitive. Se lo usate (l utilizzo non è per nulla necessario), tenete presente che lo fate con un notevole rischio. Regole principali Tutte le proprietà della conseguenza sono reversibili a parte due: la proprietà transitiva e la proprietà passante. Per questo, però tutte vengono mostrate in una direzione. A = B B = C A = B riflessiva transitiva passante A = A A = C A[t/x] = B[t/x] C = A C = B C = A & B C = A & B &-in &-out1 &-out2 C = A & B C = A C = B A = C B = C A B = C A B = C -in -out1 -out2 A B = C A = C B = C tt-in C = tt =>-in ff-in ff = C C & A = B C = A => B per P senza x libera: P = A!-in P =! x. A A = P?-in? x. A = P =>-out!-out?-out C = A => B C & A = B P =! x. A P = A? x. A = P A = P

nome proprietà proprietà duale involutiva ~~ A = A associativa (A & B) & C = A &(B & C) (A B) C = A (B C) commutativa A & B = B & A A B = B A di assorbimento A &(B A) = A A (B & A) = A distributiva A &(B C) = (A & B) (A & C) A (B & C) = (A B) &(A C) dell elemento neutro A & tt = A A ff = A di De Morgan ~ (A & B) = ( ~ A) ( ~ B) ~ (A B) = ( ~ A) &( ~ B) pseudocomplemento A => B = ( ~ A) B conservazione? x. (A B) = (? x. A) (? x. B)! x. (A B) = (! x. A) &(! x. B) unità A &(? x. A) = A! xp = P counità? xp = P A (! x. A) = A De Morgan ~ (? x. A) =! x. ~ A ~ (! x. A) =? x. ~ A α-conversione? x. (P [x/y]) =? y. P! x. (P [x/y]) =! y. P Beck-Chevalley? x. (A & P ) = (? x. A) & P x. (A P ) = (! x. A) P dove x non è libera in P. funzionalità di ~ A = ~ B C = D di & A & C = B & D di => C = D A => C = B => D di <=> C = D A <=> C = B <=> D di?? x. A =? x. B definizione di ~ A = A => ff ~ definizione di <=> A <=> B = (A => B) &(B => A) di di! C = D A C = B D! x. A =! x. B