Algebra booleana Alessandro Di Nuovo 1 ALGEBRA BOOLEANA n George Boole matematico inglese (XIX secolo) n Sua algebra utilizzata solo dall’inizio del XX secolo (primi sistemi di calcolo) n Si basa su variabili dette logiche o booleane aventi due soli possibili valori: è VERO (sinonimi: true, T, 1, acceso, ON, etc...) è FALSO (sinonimi: false, F, 0, spento, OFF etc...) Alessandro Di Nuovo 2 Funzioni booleane n Usando le variabili booleane, si possono costruire le funzioni booleane (o funzioni logiche). n Es. una funzione booleana di tre variabili: F(x,y,z) Il codominio e' costituito da due soli possibili stati: è true - vero - 1 è false - falso - 0 Alessandro Di Nuovo 3 Tabella della verità n Ogni funzione booleana è caratterizzata dalla propria tabella di verità Alessandro Di Nuovo x y z F 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 1 0 1 1 0 1 0 0 4 Funzioni booleane n Funzioni completamente specificate: se per tutte le combinazioni delle variabili il suo valore è determinato n Funzioni non completamente specificate: se a una o più combinazioni delle sue variabili non corrisponde alcun valore della funzione Alessandro Di Nuovo 5 Costanti booleane n Oltre alle variabili vi sono anche le costanti n Essendo l’Algebra Booleana definita su due soli simboli, esistono solo due costanti: è 0 è 1 Alessandro Di Nuovo 6 Operatori logici n Tra le variabili e le costanti possono intervenire delle relazioni n Esistono due tipi di operatori, in dipendenza dal numero di variabili che utilizzano: è Monadici → una variabile è Diadici → due variabili Alessandro Di Nuovo 7 L’operatore NOT n Il risultato è il complemento dell’unica variabile x 0 1 Alessandro Di Nuovo NOT x 1 0 8 L’operatore AND n Il risultato è vero se e solo se sono vere entrambe le variabili a 0 0 1 1 Alessandro Di Nuovo b 0 1 0 1 a AND b 0 0 0 1 9 L’operatore OR n Il risultato è vero se e solo se è vera almeno una delle variabili Alessandro Di Nuovo a b 0 0 1 1 0 1 0 1 a OR b 0 1 1 1 10 L’operatore XOR n Il risultato è vero se e solo se è vera solo una delle due variabili Alessandro Di Nuovo a b 0 0 1 1 0 1 0 1 a XOR b 0 1 1 0 11 Operatori – nomenclatura n NOT: n AND: n OR: n XOR: Alessandro Di Nuovo inversione prodotto logico somma logica or esclusivo e simbologia (¯) (·) (+) ( ) 12 Operatori universali n Con gli operatori NOT, OR, AND, XOR si possono costruire tutte le funzioni booleane n Esistono due operatori (NAND, NOR) che permettono la sintesi di qualsiasi funzione, utilizzando un unico tipo di operatori Alessandro Di Nuovo 13 L’operatore NAND n Il risultato è vero solo se è falso l’AND tra le due variabili Alessandro Di Nuovo a b a NAND b 0 0 1 1 0 1 0 1 1 1 1 0 14 L’operatore NOR n Il risultato è vero solo se è falso l’OR tra le due variabili Alessandro Di Nuovo a b 0 0 1 1 0 1 0 1 a NOR b 1 0 0 0 15 Precedenze tra operatori n Le precedenze sono simili al + e al x dell’algebra consueta: è priorità alta x è priorità bassa + Alessandro Di Nuovo 16 Proprietà dell’algebra booleana Alessandro Di Nuovo 17 Proprietà dell’algebra booleana Associativa X·(Y·Z) = (X·Y) ·Z = X·Y·Z X+(Y+Z) = (X+Y)+Z = X+Y+Z (X)=X X·Y = X + Y Alessandro Di Nuovo X+Y = X ·Y De Morgan 18