Lezione 5: Algebra di Boole 31 - 10 - 2006 Informatica I - UMG - G.Barbieri
Che cos’è? L'algebra di Boole (George Boole 1815-1864, uno dei fondatori della moderna logica simbolica, matematico inglese dell'University College di Cork) considera funzioni di variabili (o proposizioni) che possono assumere solo due valori logici: vero o falso A questi valori vengono generalmente associati i simboli: 1 (ad indicare il valore vero della variabile) 0 (ad indicare il valore falso della variabile) 31 - 10 - 2006 Informatica I - UMG - G.Barbieri
Le variabili e i loro valori Le variabili, che quindi possono assumere solo due valori (0,1), si indicano con le lettere A,B,C,X,Y,W,Z. 31 - 10 - 2006 Informatica I - UMG - G.Barbieri
Informatica I - UMG - G.Barbieri Funzioni booleane Le operazioni base, dette anche funzioni booleane, sono AND, OR, NOT di cui: AND e OR: sono dette operazioni binarie perché coinvolgono due (o più) variabili: A AND B A OR B NOT è detta operazione unaria perché coinvolge una ed una sola variabile: NOT (A) 31 - 10 - 2006 Informatica I - UMG - G.Barbieri
Funzioni booleane: NOT Proposizione: “Barney sta bevendo” falso vero 1 31 - 10 - 2006 Informatica I - UMG - G.Barbieri
Funzioni booleane: NOT NOT “Barney sta bevendo” == “Barney non sta bevendo” falso vero 1 31 - 10 - 2006 Informatica I - UMG - G.Barbieri
Informatica I - UMG - G.Barbieri NOT: tabella di verità (A) NOT (A) 1 1 31 - 10 - 2006 Informatica I - UMG - G.Barbieri
Funzioni booleane: AND Studiare la proposizione “Barney E Homer stanno bevendo”, significa andare a valutare che ambedue stiano bevendo. E’ come se si analizzasse la veridicità delle seguenti proposizioni contemporaneamente: “Barney sta bevendo” AND “Homer sta bevendo” 31 - 10 - 2006 Informatica I - UMG - G.Barbieri
Funzioni booleane: AND falso = 0 falso = 0 Barney E Homer stanno bevendo falso = 0 31 - 10 - 2006 Informatica I - UMG - G.Barbieri
Funzioni booleane: AND vero = 1 falso = 0 Barney E Homer stanno bevendo falso = 0 31 - 10 - 2006 Informatica I - UMG - G.Barbieri
Funzioni booleane: AND falso = 0 vero = 1 Barney E Homer stanno bevendo falso = 0 31 - 10 - 2006 Informatica I - UMG - G.Barbieri
Funzioni booleane: AND vero = 1 vero = 1 Barney E Homer stanno bevendo vero = 1 31 - 10 - 2006 Informatica I - UMG - G.Barbieri
Informatica I - UMG - G.Barbieri AND: tabella di verità (A) (B) (A) AND (B) 1 1 1 1 1 31 - 10 - 2006 Informatica I - UMG - G.Barbieri
Informatica I - UMG - G.Barbieri Funzioni booleane: OR Studiare la proposizione “Barney O Homer stanno bevendo”, significa andare a valutare che uno dei due stia bevendo. E’ come se si analizzasse la veridicità di una delle seguenti proposizioni: “Barney sta bevendo” OR “Homer sta bevendo” 31 - 10 - 2006 Informatica I - UMG - G.Barbieri
Informatica I - UMG - G.Barbieri Funzioni booleane: OR falso = 0 falso = 0 Barney O Homer stanno bevendo falso = 0 31 - 10 - 2006 Informatica I - UMG - G.Barbieri
Informatica I - UMG - G.Barbieri Funzioni booleane: OR vero = 1 falso = 0 Barney O Homer stanno bevendo vero = 1 31 - 10 - 2006 Informatica I - UMG - G.Barbieri
Informatica I - UMG - G.Barbieri Funzioni booleane: OR falso = 0 vero = 1 Barney O Homer stanno bevendo vero = 1 31 - 10 - 2006 Informatica I - UMG - G.Barbieri
Informatica I - UMG - G.Barbieri Funzioni booleane: OR vero = 1 vero = 1 Barney O Homer stanno bevendo vero = 1 31 - 10 - 2006 Informatica I - UMG - G.Barbieri
Informatica I - UMG - G.Barbieri OR: tabella di verità (A) (B) (A) OR (B) 1 1 1 1 1 1 1 31 - 10 - 2006 Informatica I - UMG - G.Barbieri
Simboli e ordine di valutazione NOT: ( ¯ ), ( ¬ ) AND: ( • ), ( Λ ) OR: ( + ), ( V ) In una espressione di tipo booleana prima si valuta il NOT, successivamente l’AND e solo al termine l’operatore OR. 31 - 10 - 2006 Informatica I - UMG - G.Barbieri
Informatica I - UMG - G.Barbieri Regole di De Morgan 31 - 10 - 2006 Informatica I - UMG - G.Barbieri
Informatica I - UMG - G.Barbieri Regole di De Morgan X Y X•Y ¬(X•Y) ¬X ¬Y ¬X+¬Y 1 31 - 10 - 2006 Informatica I - UMG - G.Barbieri
Informatica I - UMG - G.Barbieri Teoremi fondamentali Identità 1 • X = X 0 + X = X Nullo 0 • X = 0 1 + X = 1 Idempotenza X • X = X X + X = X Inverso ¬X • X = 0 ¬X + X = 1 Commutativa X • Y = Y • X X + Y = Y + X Associativa (X • Y)• Z = X • (Y • Z) (X + Y) + Z = X + (Y + Z) Distributiva X • (Y + Z) = (X • Y)+(X • Z) X + (Y • Z) = (X + Y)•(X + Z) Assorbimento X • (X + Z) = X X + (X • Y) = X 31 - 10 - 2006 Informatica I - UMG - G.Barbieri
Algebra di commutazione Not And Or A ¬A A ¬A A A Λ B B A A V B B 31 - 10 - 2006 Informatica I - UMG - G.Barbieri
Circuiti e reti logiche Una funzione del tipo: Si potrebbe rappresentare nel seguente modo: A ¬A B ¬A Λ B C (¬A Λ B) V C 31 - 10 - 2006 Informatica I - UMG - G.Barbieri
Valutazione reti logiche (¬A Λ B) V (C Λ A) A B C ¬A ¬A•B C • A (¬A•B)+(C • A) 1 A ¬A B ¬A Λ B C (¬A Λ B) V (C Λ A) 31 - 10 - 2006 Informatica I - UMG - G.Barbieri
Lezione 5: Algebra di Boole 31 - 10 - 2006 Informatica I - UMG - G.Barbieri