Algebra di Boole Cenni all Algebra di Boole

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

L algebra di Boole. Cenni Corso di Reti Logiche B. Mariagiovanna Sami

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

Algebra di Boole ed elementi di logica

Richiami di Algebra di Commutazione

I circuiti digitali: dalle funzioni logiche ai circuiti

Algebra di Boole, elementi di logica e Mappe di Karnaugh

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

Esercitazioni di Reti Logiche. Algebra Booleana e Porte Logiche

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

Reti logiche: introduzione

Algebra di Commutazione

I circuiti digitali: dalle funzioni logiche ai circuiti (le SOP)

Calcolatori Elettronici Lezione 2 Algebra delle reti Logiche

Algebra di Boole X Y Z V. Algebra di Boole

1 Minimizzazione di espressioni logiche con le proprietà dell algebra

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.

Algebra di commutazione

Fondamenti di Informatica

Algebra di Boole Algebra di Boole

17/10/16. Espressioni Booleane

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

Corso di Calcolatori Elettronici I

A.A. 2003/2004 Esercizi di Reti Logiche A

I circuiti digitali: dalle funzioni logiche ai circuiti

Algebra di Boole: mappe di Karnaugh e funzioni NAND e NOR

Matematica per le scienze sociali Elementi di base. Francesco Lagona

Per affrontare in modo sistematico lo studio dei sistemi di calcolo, abbiamo bisogno di un formalismo matematico definito su grandezze binarie

Corso di Elementi di Informatica Anno accademico 2015/16

Costruzione di. circuiti combinatori

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

Fondamenti di Informatica B

Algebra di Boole. Andrea Passerini Informatica. Algebra di Boole

Operatori di relazione

Il livello logico digitale

Algebra di Boole e circuiti dalle funzioni logiche ai circuiti digitali

Reti logiche: analisi, sintesi e minimizzazione Esercitazione. Venerdì 9 ottobre 2015

Algebra di Boole: mappe di Karnaugh

Elementi di informatica

Corso di Calcolatori Elettronici I

Esercitazioni di Reti Logiche. Lezione 2 Algebra Booleana e Porte Logiche. Zeynep KIZILTAN zkiziltan@deis.unibo.it

Funzioni booleane. Vitoantonio Bevilacqua.

1 ELEMENTI DI ALGEBRA BOOLEANA

2. I numeri reali e le funzioni di variabile reale

Esercitazioni di Reti Logiche. Lezione 3

Algebra di Boole. L'algebra della logica ( )

associate ai corrispondenti valori assunti dall uscita.

Università degli Studi di Cassino e del Lazio Meridionale

Definizione: Due monomi si dicono simili se hanno la stessa parte letterale.

Sperimentazioni di Fisica I mod. A Lezione 4

(b) le operazioni, sono distributive: (c) le operazioni, hanno un elemento neutro: cioè esistono O e I P(X) tali che A P(X) : A O = A, A I = A.

Algebra di Boole e circuiti

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

Sommario. 1 Algebra di Boole. 2 Algebra di commutazione. 4 Calcolo delle proposizioni

Il problema della sintesi

Algebra Booleana, Funzioni Logiche e Circuiti Logici

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

Sintesi di Reti Combinatorie Ottimizzazione di Reti Combinatorie a Due Livelli: Metodo di Karnaugh. Mariagiovanna Sami a.a.

Monomi L insieme dei monomi

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

I circuiti logici: definizione delle funzioni logiche

Algebra di Boole. Le reti logiche

1.3.POLINOMI ED OPERAZIONI CON ESSI

Cenni alle reti logiche. Luigi Palopoli

Minimizzazione a più livelli di reti combinatorie Cristina Silvano

Algebra di Boole: minimizzazione di funzioni booleane

Esercitazioni di Reti Logiche. Lezione 4

CORSO ZERO DI MATEMATICA per Ing. Chimica e Ing. delle Telecomunicazioni MONOMI E POLINOMI Prof. Erasmo Modica

Corso di ALGEBRA (M-Z) INSIEMI PARZIALMENTE ORDINATI E RETICOLI

Metodo di Quine-McCluskey. Algoritmo. Sommario. Sommario. M. Favalli

I POLINOMI. Si chiama POLINOMIO la somma algebrica di più monomi interi. Ad esempio sono polinomi: 3 x 2 +2x; 4 a 2 b 2 +b 3 ; ab+xy;

SCHEMI DI MATEMATICA

Appunti dal corso di Tecnologia dei Sistemi di Controllo Algebra booleana

(y O ) (x O) = O O = O Si noti che applicando ad entrambi i membri delle due relazioni di De Morgan la complementazione si ottiene:

senza stato una ed una sola

Metodo di Quine-McCluskey. Algoritmo. Sommario. Sommario. M. Favalli

Algebra di Boole e reti logiche

ELEMENTI di TEORIA degli INSIEMI

IL CALCOLO LETTERALE. La «traduzione» del linguaggio comune in linguaggio matematico

FUNZIONI BOOLEANE. Vero Falso

Il libro di Boole. L algebra di Boole

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

Algebra di Boole Esercizi risolti

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

Teoremi dell'lgebra ooleana lgebra degli Insiemi Dall'insieme di postulati çe possibile dimostrare i seguenti teoremi: 2 Idempotenza: a + a = a a æ a

I POLINOMI. La forma normale di un polinomio. Un polinomio è detto in FORMA NORMALE se in esso non compaiono monomi simili.

Operatori logici e algebra di boole

Capitolo 3 Reti Combinatorie. Reti Logiche T

270 Capitolo 10. Monomi. d ) 7 2 a3 x 4 y 2 per a = 1 2, x = 2, y = 1 2 ; e ) 8 3 abc2 per a = 3, b = 1 3, c = 1 2.

Si ottiene facendo precedere i numeri naturali dal segno + o dal segno -.

Arithmetic and Logic Unit e moltiplicatore

Minimizzazione di funzioni booleane:

Sezione 9.9. Esercizi 189

La descrizione algebrica delle reti combinatorie

1 ELEMENTI DI ALGEBRA BOOLEANA I postulati dell'algebra di Boole Alcuni teoremi I teoremi di De Morgan

Logica: materiale didattico

COMPITO A Esercizio 1 (13 punti) Dato il seguente automa:

LABORATORIO DI ARCHITETTURA DEI CALCOLATORI

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

Esercitazioni di Reti Logiche

Transcript:

Algebra di Boole Cenni all Algebra di Boole Introduzione Rappresentazione di una funzione combinatoria Proprietà dell algebra di commutazione Forme canoniche Teorema di espansione di Shannon Versione del 19/09/03

Algebra Booleana: sistema algebrico Operazione: una operazione α sull'insieme S={s1,s2,...} è una funzione che da SxS (S cartesiano S) porta in S. Quindi, per cui ad ogni coppia ordinata appartenente ad SxS corrisponde un elemento di S, cioè α: SxS S. Alcune considerazioni: L operazione * (di moltiplicazione) sull intervallo [0,1] consente di ottenere un valore incluso in [0,1] a partire da elementi inclusi in [0,1] La sottrazione sull insieme dei naturali non è una operazione. Es: 5-10 non appartiene ai naturali. Sistema Algebrico: Combinazione di un insieme e di una o più operazioni. esempio: ([0,1], *) è un sistema algebrico. - 2 -

Algebra Booleana: introduzione (1) Algebra Booleana B: è un sistema algebrico identificato dalla quintupla (B,+,*,0,1) dove: B è l'insieme su cui vengono definite le operazioni +,* sono le operazioni OR e AND (operazioni a due elementi) 0,1 sono elementi speciali di B. Esempio: 0 è l elemento neutro rispetto a + 1 è l elemento neutro rispetto a * Algebra Booleana a due valori: ({0,1},+,*,0,1) dove + e * sono definiti come + 0 1 0 0 1 1 1 1 * 0 1 0 0 0 1 0 1-3 -

Algebra Booleana: introduzione (2) Le variabili dell algebra booleana a due valori possono assumere solo i due valori 0 e 1 precisamente, se x indica una variabile, è x = 0 se e solo se x 1 x = 1 se e solo se x 0 Si considera inoltre una operazione a un solo elemento (unary operation) detta complementazione o negazione (NOT), definita come! 0 1 1 0 Nota: il simbolo associato al NOT è spesso indicato come (esempio x ),!(esempio!x) o sopra segnando la variabile. - 4 -

Algebra di Commutazione L'Algebra di Commutazione è un'algebra booleana a due elementi. Una funzione di commutazione a n variabili è una funzione del tipo: f: {0,1} n {0,1} Tra tutte le algebre booleane, l'algebra booleana a due valori...è la più utile. Essa è la base matematica della analisi e progetto di circuiti di commutazione che realizzano i sistemi digitali. [Lee, S.C., Digital Circuit And Logic Design. Englewood Cliffs, NJ: Prentice-Hall, 1976] - 5 -

Algebra di Commutazione: rappresentazione di una funzione Una funzione di commutazione a n variabili f: {0,1} n {0,1} può essere rappresenta in modo comodo utilizzando una tabella della funzione o tabella della verità Una tabella della verità specifica la relazione che esiste tra ogni elemento del dominio di f ({0,1} n ) e la corrispondente immagine (elemento del codominio) Esempio: a b c f(a,b,c) 0 0 0 0 0 0 1 1 0 1 0 0 0 1 1 1 1 0 0 1 1 0 1 1 1 1 0 0 1 1 1 1-6 -

Algebra di Commutazione: definizioni (1) Letterale: un letterale è una coppia (Variabile,Valore) (x,1) è indicato come x (variabile in forma naturale); (x,0)rappresenta la variabile x in forma negata (complementata) ed è indicato come x (oppure!x). In modo equivalente, dato a {0,1} un letterale è espresso come x a dove, per a=1 x a =x e per a=0 x a =x'. Ad esempio, il letterale z vale 1 ogni qual volta che la variabile z vale 1, mentre il letterale z vale 1 ogni qual volta che la variabile z vale 0. - 7 -

Algebra di Commutazione: definizioni (2) Termine prodotto: Un termine prodotto è il prodotto logico o disgiunzione (AND) di più letterali. Un termine prodotto in cui compaiono letterali corrispondenti a tutte le variabili della funzione e tale per cui la configurazione di valori delle variabili definite dai letterali genera un valore 1 della funzione stessa nella tabella delle verità, costituisce un mintermine della funzione (spesso si sottintende il segno *) Ad esempio, a b c e ab c rappresentano due mintermini della funzione di cui si è prima data la tabella delle verità Un termine prodotto in cui compaiono solo alcuni dei letterali e che corrisponda a un insieme di 1 della funzione è denominato implicante. Ad esempio, a c rappresenta un implicante della funzione data - 8 -

Algebra di Commutazione: Definizioni (3) Termine somma (duale): Un termine somma è la somma logica o congiunzione (OR) di più letterali. Un termine somma in cui compaiono letterali corrispondenti a tutte le variabili della funzione e tale per cui la configurazione di valori delle variabili definite dai letterali genera un valore 0 della funzione stessa nella tabella delle verità, costituisce un maxtermine della funzione Ad esempio, a+b+c e a+b +c rappresentano due maxtermini della funzione data Un termine somma in cui compaiono solo alcuni dei letterali e che corrisponda a un insieme di 0 della funzione è denominato implicato. Ad esempio, a+c rappresenta un implicato della funzione data - 9 -

Algebra di Commutazione: proprietà (1) 1: elemento neutro a+1=1 a*0=0 (elemento nullo) a+0=a a*1=a (identità) 2: idempotenza a+a=a a*a=a 3: inverso a+a =1 a*a =0 4: commutativa a+b=b+a a*b=b*a 5: associativa a+(b+c)=(a+b)+c a*(b*c)=(a*b)*c - 10 -

9: Algebra di Commutazione: proprietà (2) 6: distributiva a*(b+c) = a*b + b*c a+(b*c)=(a+b)*(a+c) Nota: vale per la somma rispetto al prodotto come per il prodotto rispetto alla somma non esiste precedenza fra le due operazioni, occorre sempre immaginare le parentesi sottintese intorno a ogni applicazione di un operazione. 7: assorbimento a+(a*b)=a a*(a+b)=a 8: Leggi di De Morgan (a+b) = a *b (a*b) = a +b a+a b = a+b a*(a +b) = a*b 10: consenso a*b+a *c+b*c = a*b + a *c (a+b)*(a +c)*(b+c)=(a+b)*(a +c) - 11 -

Algebra di Commutazione: proprietà (3) 11: principio di dualità Ogni identità deducibile dai postulati dell algebra di Boole è trasformata in un altra identità se: 1. Ogni operazione + viene sostituita da una operazione * e vice versa. 2. Ogni elemento identità 0 viene sostituito da un elemento identità 1 e vice versa. Esempio: (assorbimento) a+(a*b)=a a*(a+b)=a - 12 -

Algebra di Commutazione: proprietà (4) Il modo più semplice per dimostrare le proprietà è quello esaustivo (si dimostra per tutti i possibili valori di tutte le variabili). Sono possibili altri tipi di dimostrazione: Ad esempio, si voglia dimostrare a+a b = a+b Si sostituisce a con a*1 Dalla proprietà della negazione (b+b =1) applicata da destra verso sinistra si sostituisce a1 + a b con a(b+b )+a b Applicando la proprietà distributiva si ottiene ab+ab +a b Applicando la proprietà di idempotenza da destra verso sinistra al termine ab si ottiene ab + ab + ab + a b Applicando la proprietà distributiva da destra verso sinistra si ottiene a(b+b ) + b(a + a ) Applicando le proprietà delle negazione si ha infine a*1 + b*1= a + b - 13 -

Algebra di Commutazione: funzioni Una funzione booleana di n variabili può essere espressa attraverso una espressione booleana di n variabili costituita da letterali, costanti, operatori AND, OR e NOT. Esempio di espressione booleana: f(a,b,c)=ab+a c Le proprietà dell algebra di commutazione possono essere utilizzate per manipolare una espressione booleana ed ottenerne una equivalente. Due espressioni booleane sono equivalenti se e solo se sono riconducibili alla stessa funzione booleana. Esempio: f(a,b,c)= (a *b ) *a = (a+b)*a = a De Morgan Assorbimento - 14 -

Algebra di commutazione: espressioni e funzioni (1) Il numero di espressioni booleane di n variabili definite su una algebra booleana B è infinito. La relazione tra espressioni booleane e funzioni booleane non è 1 a 1. Esempio: a b c f(a,b,c) 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1 1 f(a,b,c)= (a *b ) *a f(a,b,c)=... f(a,b,c)= a - 15 -

Algebra di commutazione: espressioni e funzioni (2) Data una funzione booleana ad esempio, mediante la tabella delle verità - il problema è identificare almeno una espressione booleana ad essa corrispondente In molte applicazioni dell'algebra booleana uno scopo fondamentale è determinare una buona rappresentazione della funzione booleana, avendo preventivamente definito il concetto di buono ed un modo per valutarlo : obiettivo e cifra di merito Ad esempio: l obiettivo è minimizzare il costo del circuito corrispondente a un espressione, la cifra di merito usata è il numero di letterali presenti nell espressione. Solitamente la buona rappresentazione algebrica viene ricavata manipolando una soluzione iniziale. - 16 -

Algebra di commutazione: espressioni e funzioni (3) Data una funzione booleana, la soluzione iniziale al problema di determinare una sua espressione consiste nel ricorso alle forme canoniche. Le forme canoniche sono, rispettivamente, la forma somma di prodotti (SoP) e quella prodotto di somme (PoS). Data una funzione boolena esistono una ed una sola forma canonica SoP ed una e una sola forma PoS che la rappresenta. - 17 -

Algebra Booleana: Forme canoniche Si consideri il seguente esempio: a b f(a,b) 0 0 0 0 1 1 1 0 0 1 1 1 È intuitivo osservare che la funzione possa essere ottenuta dal OR delle seguenti funzioni: a b f(a,b) 0 0 0 0 1 1 1 0 0 1 1 1 a b f 1 (a,b) 0 0 0 0 1 1 1 0 0 1 1 0 = + a b f 2 (a,b) 0 0 0 0 1 0 1 0 0 1 1 1-18 -

Algebra Booleana: Forme canoniche Per cui, intuitivamente, si ottiene: a b f(a,b) 0 0 0 0 1 1 1 0 0 1 1 1 a b f 1 (a,b) 0 0 0 0 1 1 1 0 0 1 1 0 = + a b f 2 (a,b) 0 0 0 0 1 0 1 0 0 1 1 1 f 1 (a,b)=a b f 2 (a,b)=ab Poiché, ad esempio, quando a=0 e b=1 il prodotto a b assume valore 1 mentre vale 0 in tutti gli altri casi. - 19 -

Algebra Booleana: Forme canoniche Ne consegue: a b f(a,b) 0 0 0 0 1 1 1 0 0 1 1 1 a b f 1 (a,b) 0 0 0 0 1 1 1 0 0 1 1 0 = + a b f 2 (a,b) 0 0 0 0 1 0 1 0 0 1 1 1 f(a,b) = a b + Mettendo in OR i mintermini della funzione si ottiene l espressione booleana della funzione stessa espressa come somma di prodotti. Questa espressione booleana è denominata prima forma canonica. Si ricorda che nel mintermine una variabile compare nella forma naturale x se nella corrispondente configurazione di ingresso ha valore 1, nella forma complementata x se ha valore 0 ab - 20 -

Algebra Booleana: Forme canoniche Esempio: a b c f(a,b,c) 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 1 1 0 1 0 1 1 0 0 1 1 1 1 f(a,b,c)=a b c+a bc +a bc+ab c +abc Prima Forma Canonica - 21 -

Algebra Booleana: Forme canoniche Si consideri nuovamente lo stesso esempio: a b f(a,b) 0 0 0 0 1 1 1 0 0 1 1 1 È intuitivo osservare che la funzione possa essere ottenuta dall AND delle seguenti funzioni: a b f(a,b) 0 0 0 0 1 1 1 0 0 1 1 1 a b f 1 (a,b) 0 0 0 0 1 1 1 0 1 1 1 1 = * a b f 2 (a,b) 0 0 1 0 1 1 1 0 0 1 1 1-22 -

Algebra Booleana: Forme canoniche Per cui, intuitivamente, si ottiene: a b f(a,b) 0 0 0 0 1 1 1 0 0 1 1 1 a b f 1 (a,b) 0 0 0 0 1 1 1 0 1 1 1 1 = * a b f 2 (a,b) 0 0 1 0 1 1 1 0 0 1 1 1 f 1 (a,b)=(a b ) f 2 (a,b)=(ab ) Infatti, ad esempio, quando a=0 e b=0 il termine (a b ) assume valore 0 mentre vale 1 in tutti gli altri casi. o anche f 1 (a,b)= a+b - 23 - f 2 (a,b)= a +b

Algebra Booleana: Forme canoniche Applicando le leggi di De Morgan, si ottiene le seguente trasformazione: f 1 (a,b)=(a b ) f 2 (a,b)=(ab ) f 1 (a,b)=(a+b) f 2 (a,b)=(a +b) f(a,b) = (a+b)* (a +b) Mettendo in AND i maxtermini della funzione si ottiene l espressione booleana della funzione stessa espressa come prodotto di somme. Questa espressione booleana è denominata seconda forma canonica. Si ricorda che nel maxtermine una variabile compare nella forma naturale x se nella corrispondente configurazione di ingresso ha valore 0, nella forma complementata x se ha valore 1-24 -

Algebra Booleana: Forme canoniche Esempio: a b c f(a,b,c) 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 1 1 0 1 0 1 1 0 0 1 1 1 1 f(a,b,c)=(a+b+c)*(a +b+c )*(a +b +c) Seconda Forma Canonica - 25 -

Algebra Booleana: Espansione di Shannon Formalmente, quanto esposto dal punto di vista intuitivo produce le forme canoniche come segue: prima forma canonica: f = (x 1...x n )*f(0,...,0)+(x 1...x n )*f(0,...,1)+...+(x 1... x n )*f(1,...,1) dove (x 1...x n ), (x 1...x n ),..., (x 1...x n ) sono i mintermini della funzione f, f(0,...,0),..., f (1,...,1) sono i valori che la funzione assume quando la configurazione delle variabili sia, rispettivamente, (0,...,0),...,(1,...,1) seconda forma canonica: f=((x 1 +...+x n )+f(1,...,1))*((x 1 +...+x n )+f(1,..,0))*...*((x 1 +...+x n )+f(0,...,0)) dove (x 1 +...+x n ), (x 1 +...+x n ),..., (x 1 +...+x n ) sono i maxtermini di f. Nota: f(0,0,...,0), f(0,0,...,1)... f(1,1,...,1) sono noti con il nome di discriminante della funzione f e il loro valore appartiene a B. - 26 -

Algebra Booleana: Espansione di Shannon La descrizione formale introdotta in precedenza deriva direttamente dall applicazione iterativa del Teorema di espansione di Shannon se f: B n B è una funzione booleana si ha f(x 1,x 2,...,x n )= x 1 *f x1' + x 1 *f x1 per ogni (x 1,x 2,...,x n ) in B n. Ad esempio, f(a,b,c)=a *f(0,b,c)+a*f(1,b,c) Dualmente, se f: B n B è una funzione booleana si ha f(x 1,x 2,...,x n )= (x 1 +f x1 )*(x 1 +f x1 ) per ogni (x 1,x 2,...,x n ) in B n. Ad esempio, f(a,b,c)=(a +f(1,b,c))*(a+f(0,b,c)) - 27 -

Algebra Booleana: Espansione di Shannon e Forme canoniche Ad esempio: f(a,b,c)=a b c *f(0,0,0)+a b c*f(0,0,1)+a bc *f(0,1,0) +a bc*f(0,1,1)+ab c *f(1,0,0)+ab c*f(1,0,1)+ +abc *f(1,1,0)+abc*f(1,1,1) a b c f(a,b,c) 0 0 0 0 0 0 1 1 0 1 0 0 0 1 1 1 1 0 0 1 1 0 1 1 1 1 0 0 1 1 1 1 Prima Forma Canonica a b c+a bc+ab c +ab c+abc (a+b+c)*(a+b +c)*(a +b +c) Seconda forma Canonica - 28 -

Algebra Booleana: Espansione di Shannon Osservazione: il teorema di espansione di Shannon può essere utilizzato anche su espressioni Booleane. Esempio: Espandendo rispetto ad a l espressione booleana f(a,b,c)=ab+b +a bc, si ha la forma equivalente f(a,b,c)=a *(b +bc )+ a*(b+b )=a b +a bc +ab + ab = a b +a bc +a Espandendo rispetto ad a b e c la espressione booleana f(a,b,c)=ab+b +a bc, si ha la forma equivalente f(a,b,c)=a *(b +bc )+ a*(b+b ) =a *(b *(1)+b*(c ))+ a*(b *(1)+b*(1)) =a *(b *(c +c)+b*(c ))+a*(b (c +c)+b*(c +c)) =a b c +a b c+a bc +ab c +ab c+abc +abc» è la prima forma canonica della funzione associata alla espressione booleana di partenza. - 29 -

Algebra Booleana: Manipolazione delle espressioni (1) Data un espressione di una funzione booleana, le proprietà dell algebra di commutazione permettono di manipolarla in modo da ottenere un espressione equivalente, ma di forma diversa eventualmente con caratteristiche meglio rispondenti a particolari requisiti. Esempio: sia data la forma canonica f(x,y,z) = x yz + xyz + xyz e sia data la funzione di costo costituita dal numero di letterali presenti che in questo caso vale 9. Obiettivo: ridurre il costo. - 30 -

Algebra Booleana: Manipolazione delle espressioni (2) Una prima manipolazione mediante le regole dell algebra dà: f(x,y,z) = x yz + xyz + xyz 1. applicando la proprietà distributiva e quella della complementazione: f(x,y,z)= (x + x)yz +xyz= 1yz +xyz= yz +xyz. 2. poi, applicando di nuovo la proprietà distributiva f = y(z +xz) 3. E ricordando che a + a b = a + b, si ottiene infine f= y(z +x)= yz +xy - 31 -

Algebra Booleana: Manipolazione delle espressioni (3) Allo stesso risultato si sarebbe giunti anche: f(x,y,z) = x yz + xyz + xyz 1. applicando dapprima la proprietà dell idempotenza: f(x,y,z) = x yz + xyz + xyz + xyz 2. poi applicando la proprietà distributiva f = yz (x +x) + xy (z + z) 3. Da cui infine f = yz 1 +xy1 = yz + xy Si osservi che, rispetto alla forma canonica di partenza, l espressione logica ottenuta è di costo inferiore (4 letterali). - 32 -

Algebra Booleana: Manipolazione delle espressioni (5) Si osservi che l applicazione delle trasformazioni algebriche non permette di identificare una procedura sistematica Come conseguenza: Non è possibie identificare un algoritmo non possono essere realizzati strumenti CAD che consentano di produrre una soluzione ottima a due livelli utilizzando le proprietà dell algebra Non è possibile sapere se l espressione ottenuta è quella minima L immediatezza della bontà del risultato dipende molto dalla scelta delle proprietà da applicare e dall ordine in cui sono applicate. In pratica, non è questa la via che si sceglie! - 33 -