Elementi di Informatica A. A. 2016/2017

Documenti analoghi
Proposizioni logiche e algebra di Boole

Corso di Elementi di Informatica Anno accademico 2015/16

Algebra di Boole. Da Boole a Shannon

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

Reti logiche: introduzione

Precedenza degli operatori

Elementi di Informatica

Operatori di relazione

Corso di Calcolatori Elettronici I

Circuiti digitali combinatori

A CHI E' RIVOLTA? CHI PUO' ESSERE DEFINITO PROPOSIZIONE LOGICA?

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

Logica booleana. Bogdan Maris ( )

Introduzione alla logica proposizionale

Fondamenti di Informatica

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.

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

Algebra di commutazione

Fondamenti di Informatica. Algebra di Boole

Fondamenti di Informatica

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

Algebra di Boole. Andrea Passerini Informatica. Algebra di Boole

Algebra di Boole ed elementi di logica

Richiami di Algebra di Commutazione

Algebra di Boole Cenni all Algebra di Boole. Algebra Booleana: definizione

Y = A + B e si legge A or B.

Algebra di Boole. Introdotta nel 1874 da George Boole per fornire una rappresentazione algebrica della logica

Algebra di Boole. Modulo 2. Università di Cagliari Dipartimento di Ingegneria Elettrica ed Elettronica Laboratorio di Elettronica (EOLAB)

Dispensa su. Funzioni Booleane. Jianyi Lin Università degli Studi di Milano

Elementi di informatica

Algebra di Boole Cenni all Algebra di Boole

Algebra di Boole Cenni all Algebra di Boole

Algebra di Boole. Cenni all Algebra di Boole

Prof. Pagani Corrado ALGEBRA BOOLEANA

Fondamenti di Informatica B

Funzioni booleane. Vitoantonio Bevilacqua.

Funzioni, espressioni e schemi logici

Condizioni, operatori di relazione e operatori logici (bozze, v. 1.0)

Informazione binaria: - rappresentazione di valori logici -

Proposizioni Algebra di Boole Condizioni Operatori di relazione

Algebra di Boole. Tavole di verità. Fondamenti di Informatica Algebra di Boole. Si basa su tre operazioni logiche: AND (*) OR (+) NOT (!

Algebra di Boole X Y Z V. Algebra di Boole

Calcolo numerico e programmazione Elementi di logica

Corso di studi in Ingegneria Elettronica A.A. 2006/2007. Calcolatori Elettronici. Esercitazione n 2

Introduzione ed elementi dell'algebra di Boole

Fondamenti dell Informatica Algebra di Boole. Prof.ssa Enrica Gentile

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

Circuiti digitali. Operazioni Logiche: Algebra di Boole. Esempio di circuito. Porte Logiche. Fondamenti di Informatica A Ingegneria Gestionale

ESEMPIO Un esempio di insieme vuoto è l insieme dei numeri reali di quadrato 4. B A

Luca Costabile Esercizi di Logica Matematica Dispensa Calcolo Proposizionale 1

Algebra di Boole ed elementi di logica

17/10/16. Espressioni Booleane

Reti Logiche Combinatorie

Algebra di Commutazione

George BOOLE ( ) L algebra booleana. (logica proposizionale)

Esercitazioni di Reti Logiche. Algebra Booleana e Porte Logiche

Algebra Booleana. 13. Rif:

Architettura degli Elaboratori e Laboratorio. Matteo Manzali Università degli Studi di Ferrara Anno Accademico

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

FUNZIONI BOOLEANE. Vero Falso

CODIFICA DELLE INFORMAZIONI MODULO 5

Architettura degli Elaboratori 4 - Reti Combinatorie e Algebra di Boole

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

ALGEBRA BOOLEANA. Proprietà dell'algebra booleana: P. COMMUTATIVA

CIRCUITI DIGITALI. La grandezza fisica utilizzata nella maggior parte dei circuiti digitali è la differenza di potenziale (tensione).

Fondamenti di Informatica B. Fondamenti di Informatica B. Fondamenti di Informatica B. Fondamenti di Informatica B.

Sperimentazioni di Fisica I mod. A Lezione 4

Algebra di Boole Algebra di Boole

Cenni di logica matematica e di teoria degli insiemi Paola Rubbioni

Operatori logici e algebra di boole

Teoria degli Insiemi

Teoria degli Insiemi

Codifica binaria: - valori logici e algebra di Boole -

CODIFICA DELLE INFORMAZIONI MODULO 5

Cenni di logica matematica e di teoria degli insiemi Paola Rubbioni

La codifica dell informazione

Cenni di logica matematica e di teoria degli insiemi. CORSI INTRODUTTIVI Dipartimento di Ingegneria di Perugia a.a. 2016/2017 Paola Rubbioni

I circuiti digitali: dalle funzioni logiche ai circuiti

Parte IV Indice. Algebra booleana. Esercizi

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

Marta Capiluppi Dipartimento di Informatica Università di Verona

Calcolatori Elettronici Lezione 2 Algebra delle reti Logiche

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

anno scolastico 2009 / 2010 ELETTRONICA per Elettrotecnica ed Automazione

FONDAMENTI DI INFORMATICA Lezione n. 2

Matematica per le scienze sociali Elementi di base. Francesco Lagona

4. Logica. Insegnamento di Informatica. Elisabetta Ronchieri. I semestre, anno Corso di Laurea di Economia, Universitá di Ferrara

I.3 Porte Logiche. Elisabetta Ronchieri. Ottobre 13, Università di Ferrara Dipartimento di Economia e Management. Insegnamento di Informatica

ELEMENTI DI ALGEBRA BOOLEANA

I.2 Logica. Elisabetta Ronchieri. Ottobre 13, Università di Ferrara Dipartimento di Economia e Management. Insegnamento di Informatica

Introduzione alla logica matematica

Programma del corso. Elementi di Programmazione. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Architettura del calcolatore

Algebra di commutazione

METODI MATEMATICI PER L INFORMATICA

Transcript:

Elementi di Informatica A. A. 2016/2017 Ing. Nicola Amatucci Università degli studi di Napoli Federico II Scuola Politecnica e Delle Scienze di Base nicola.amatucci@unina.it

Algebra di Boole Elementi di Informatica A.A. 2016/2017 Ing. Nicola Amatucci

Da Dove Studiare? Dispensa del libro: «Algebra di Boole»

Logica delle Proposizioni Condizioni Anche dette «predicati» o «proposizioni» Affermazioni da verificare o controllare nel corso della risoluzione di un problema Condizioni atomiche Non scomponibili in condizioni più semplici Condizioni composte Composte da condizioni atomiche, collegate da operatori logici

Condizioni Atomiche Una qualsiasi affermazione che può essere vera (1) o falsa (0) Ad es. Roma è la capitale dell Italia (Vero) 25 è un numero pari (Falso) Possono essere costruite utilizzando gli operatori di confronto o di relazione Gli operatori di relazione più noti sono quelli che permettono di confrontare quantità numeriche: uguale ( simbolo = ) diverso ( simbolo ) maggiore ( simbolo > ) minore ( simbolo < ) maggiore o uguale ( simbolo ) minore o uguale ( simbolo )

Condizioni Composte Condizioni semplici, connesse da operatori logici AND, OR, NOT Ad es. (Ciccio ha meno di 30 anni) AND (Ciccio non è sposato) (Oggi è Venerdì) AND (c è il sole) (La casa ha meno di 20 anni) OR (è stata ristrutturata da meno di 5 anni) (Oggi non è Domenica) AND (devo lavorare) Ciascuna condizione semplice può essere vera o falsa, e allo stesso modo la condizione composta può avere valore vero o falso La funzione logica che ha come ingresso il valore delle condizioni semplici componenti e come uscita il valore della proposizione composta risultante può essere rappresentata con una tabella di verità

Tabelle di Verità Possono essere usate per definire una qualunque funzione logica Funzione che ha valori logici come argomento e come risultato Prevedono un numero di colonne pari al numero di operandi (condizioni semplici) più una corrispondente al risultato e un numero di righe pari a tutte le possibili combinazioni dei valori di verità assunti dagli n argomenti della funzione 2 alla n righe

Operatori Logici Sulle proposizioni logiche è possibile effettuare delle operazioni tramite gli operatori logici: NOT - la NEGAZIONE ( ), operatore unario OR - la DISGIUNZIONE (v) o SOMMA LOGICA, operatore binario AND - la CONGIUNZIONE (^) o PRODOTTO LOGICO, operatore binario ^ F V F F F V F V v F V F F V V V V F V V F

Esempio (1) Il sabato sera lavoro solo se devo lavorare AND ho riposato OR ho bevuto il caffè A = devo lavorare B = ho riposato C = ho bevuto il caffè A AND (B OR C)

Esempio (2) Devi essere iscritto OR al terzo anno OR al secondo anno AND aver sostenuto almeno 12 esami di cui 7 del primo per iscriverti al terzo anno 3 OR (2 AND (ESAMI 12 AND ESAMI 1 12)) C1 = (ESAMI 12 AND ESAMI 1 12) C2 = (2 AND C1) C3 = 3 OR C2 Abbiamo 4 condizioni semplici La tabella di verità avrà 2 n combinazioni possibili di valori vero e falso

3 2 Esami 12 Esami 1 7 C1 C2 C3 F F F F F F F F F F V F F F F F V F F F F F F V V V F F F V F F F F F F V F V F F F F V V F F F F F V V V V V V V F F F F F V V F F V F F V V F V F F F V V F V V V F V V V F F F F V V V F V F F V V V V F F F V V V V V V V V

Proprietà degli Operatori COMMUTATIVA A AND B = B AND A A OR B = B OR A ASSOCIATIVA (A AND B) AND C = A AND (B AND C) Ci consente di scrivere tutto senza parentesi Si dimostra costruendo le tabella di verità

Proprietà Associativa (Dimostrazione) A B C (A AND B) AND C F F F F F F F V F F F V F F F F V V F F V F F F F V F V F F V V F V F V V V V V A B C (B AND C) AND A F F F F F F F V F F F V F F F F V V V F V F F F F V F V F F V V F F F V V V V V Poiché l ultima colonna è uguale, le due condizioni sono uguali!

Proprietà degli Operatori PRECEDENZA A OR B AND C equivale A OR (B AND C) AND precede OR NOT precede AND Esempi A OR B AND C = A OR (B AND C) A OR NOT B = A OR (NOT B) A OR NOT B AND C = A OR ((NOT B) AND C) NOT A AND B OR C OR A = (((NOT A) AND B) OR C) OR A IDEMPOTENZA A AND A = A A OR A = A

Proprietà degli Operatori DISTRIBUTIVA AND rispetto ad OR A AND (B OR C) = (A AND B) OR (A AND C) OR rispetto ad AND A OR (B AND C) = (A OR B) AND (A OR C) DEL MASSIMO E DEL MINIMO A AND F = F A OR V = V A AND V = A (V è l elemento neutro per AND) A OR F = A (F è l elemento neutro per OR)

Esempio Verificare l equivalenza dei predicati composti: A OR NOT B NOT (NOT A AND B) Procedimento Costruiamo le tabelle di verità delle due espressioni valore di verità dell espressione composta in corrispondenza di ogni possibile combinazione di valori di verità delle condizioni atomiche componenti (A e B) Le due condizioni sono equivalenti se le due tabelle di verità sono uguali

Esempio

Esercizi Si riscriva la seguente espressione indicando tutte le precedenze NOT A OR NOT B AND NOT C AND B AND NOT A OR B Si scriva utilizzando operatori appartiene all insieme: di relazione la condizione per cui x [-5, 3] U [8, 15] Esprimere la condizione opposta alla precedente Se a, b e c sono i lati di un triangolo, esprimere la condizione per cui il triangolo ha due lati uguali e diversi dal terzo

La logica delle Proposizioni e l algebra di Boole George Boole (1815-1864) studiò un mezzo matematico per descrivere in forma algebrica la logica delle proposizioni e definì la cosiddetta algebra di Boole Oggi quest algebra ha numerose applicazioni nelle scienze fisiche, in particolare nel campo dei calcolatori e dell elettronica Nel 1938, Claude Shannon ha introdotto l algebra di commutazione (o dei circuiti) in cui le porte logiche vengono usate al posto degli operatori logici e i valori logici vero/falso sono sostituiti da segnali elettrici alto/basso in ingresso o uscita da circuiti elettrici

Cos è un algebra? Nel linguaggio comune il termine algebra indica un capitolo della matematica elementare Più formalmente, si dice che un insieme K è un algebra, se in esso sono definite due leggi binarie di composizione interna, ossia due funzioni che facciano corrispondere ad una qualsiasi coppia di elementi di K ancora un elemento di K Indicando con + (OR) e (AND) le due leggi binarie, un algebra è la tripla <K, +, >

Definizione dell Algebra di Boole L algebra di Boole è un particolare tipo di algebra dotato di specifiche proprietà Può essere definita in base ad altre strutture algebriche (non c è un modo solo per definire l algebra di Boole) si può definire attraverso i «reticoli» o attraverso «gruppi» e «anelli» Noi vedremo la definizione che sfrutta il concetto di reticolo

Definizione dell Algebra di Boole (Reticoli) Un'algebra <K,+, > si dice reticolo se per ogni elemento di K valgono le seguenti proprietà Commutativa a + b = b + a a b = b a Associativa (a + b) + c = a + (b + c) = a + b + c (a b) c = a (b c) = a b c Idempotenza a + a = a a a = a Assorbimento a + (a b) = a a (a + b) = a

Proprietà dei reticoli In maniera equivalente, un reticolo può essere definito come un insieme parzialmente ordinato, che possiede cioè una relazione d ordine x y Ricordiamo che una relazione d ordine deve godere delle seguenti proprietà riflessiva: x x antisimmetrica: x y e y x => x = y transitiva: x y e y z => x z Data il nostro reticolo <K,+, >, la relazione d ordine è espressa dalle seguente relazione binaria: x + y = y o equivalentemente x y = x

Reticoli distributivi Un reticolo si dice distributivo se per ogni elemento di K vale la proprietà distributiva a (b + c) = a b + a c a + (b c) =(a + b) (a + c) Si noti che la proprietà è assegnata sia per la somma rispetto al prodotto che per il prodotto rispetto alla somma

Minimo e Massimo Un reticolo distributivo si dice dotato di minimo e massimo assoluti se in K sono presenti due elementi (che diremo 0 e 1 rispettivamente) i quali verificano la proprietà del minimo e massimo a 0 = 0 a + 1 = 1 Gli elementi 0 e 1 si dicono minimo e massimo in quanto si ha: a 1 e 0 a per ogni elemento di K

Complemento Un reticolo distributivo si dice complementato se per ogni elemento a di K esiste ed è unico un elemento che diremo complemento di a (!a o ā) per il quale è valida la proprietà del complemento a!a = 0 a +!a = 1 L operazione unaria che genera il complemento si dice complementazione e si indica con (NOT)

Algebra di Boole Un reticolo Distributivo dotato di minimo e massimo complementato si dice Algebra di Boole Un algebra di Boole è dunque una sestupla: <K,+,,-,0,1>

Ricapitolando Commutativa P1 a+b = b+a P 1 a b = b a Associativa P2 (a+b)+c = a+(b+c) P 2 (a b) c = a (b c) Idempotenza P3 a+a = a P 3 a a = a Assorbimento P4 a+a b = a P 4 a (a+b) = a Distributiva P5 a (b+c) = a b+a c P 5 a+b c = (a+b) (a+c) Min e max P6 a 0 = 0 P 6 a+1 = 1 Complemento P7 a ā = 0 P 7 a+ā = 1

Alcuni «teoremi» Complementi di 0 e 1 0 ed 1 sono l uno il complemento dell altro Convoluzione Negando due volte un elemento si ottiene l elemento stesso:!(!a) = a Assorbimento del complemento a +!a b = a + b Elementi neutri 0 è l elemento neutro della somma a + 0 = a 1 è l elemento neutro del prodotto a 1 = a

Legge di dualità Si può dimostrare che da qualsiasi identità booleana se ne può trarre un'altra equivalente per dualità, sostituendo cioè ad ogni operatore e agli elementi 0 ed 1 il rispettivo duale il duale di + è, il duale di 0 è 1 il duale di a è in generale!a (a negato, NOT a).

Teoremi di De Morgan p q p q NOT (A AND B) = (NOT A) OR (NOT B) pq p q NOT (A OR B) = (NOT A) OR (NOT B) Si può dimostrare con le tabelle di verità

Algebre di Boole La definizione di Algebra di Boole come reticolo non specifica quale sia K e come siano definite le operazioni +,, - Specifica soltanto un insieme di proprietà che devono essere soddisfatte da tali operazioni Sono così possibili diversi modelli di algebra di Boole l algebra degli insiemi l algebra della logica delle proposizioni l algebra dei circuiti, in cui K assume solo i due valori 0 e 1

Algebra della logica delle proposizioni L insieme K={F,V} su cui siano definite le operazioni Congiunzione(^) Disgiunzione (v) Negazione ( ) è un algebra di Boole con F = 0, V = 1, congiunzione =, disgiunzione = +, negazione = x y x ^ y F F F F V F V F F x y x v y F F F F V V V F V x F V x V F V V V V V V

Algebra di commutazione L algebra di commutazione, anche detta algebra di Boole a due valori o algebra dei circuiti, è caratterizzata da un supporto K con soli due valori 0 e 1 <{0,1}, +,,!, 0,1> Le operazioni + (OR), (AND),! (NOT), sono definite dalle tabelle di verità degli operatori logici

Circuiti logici I circuiti logici sono circuiti elettronici nei quali una grandezza elettrica ai morsetti di ingresso e di uscita può assumere solo due valori, convenzionalmente rappresentati con i due elementi dell algebra di Boole 0 ed 1 In elettronica digitale si studia come realizzare circuiti elettronici per i quali il legame tra ingressi ed uscite corrisponde a quello delle operazioni fondamentali AND, OR e NOT dell algebra di Boole PORTE LOGICHE

Algebra dei circuiti Associa i simboli 0 e 1 ai livelli logici basso e alto Un circuito è descritto dalla funzione y = ƒ(x 1, x 2,..., x n ) Dove y = bit di uscita x 1, x 2,..., x n = bit di ingresso

Algebra dei circuiti porte logiche o gate Circuiti elettronici che realizzano le operazioni fondamentali x y z z = x AND y x y x AND y 0 0 0 0 1 0 1 0 0 x y z z = x OR y 1 1 1 x y x OR y 0 0 0 0 1 1 x y y = NOT x 1 0 1 x NOT x 1 1 1 0 1 1 0

Esercizi Scrivere la tabella di verità corrispondente alla seguente funzione logica di 3 variabili ((not A) and B) OR ((A and B) and C) Scrivere la tabella di verità di una funzione logica a 3 variabili che dia risultato vero solo se almeno due dei suoi argomenti sono uguali a vero Usando operatori logici e operatori di relazione si scriva la condizione che esprime che il valore della variabile x appartiene all insieme [-5,3] U [8,15] Data la condizione «stasera esco se ho finito i compiti o se domani non vado a scuola» scriverne la formulazione in termini di proposizioni logiche e trovarne la formulazione duale