Reti logiche e Algebra di Boole

Reti logiche e rappresentazione

L’ algebra di Boole è un metodo formale per risolvere problemi che richiedono la realizzazione di particolari funzioni booleane. Infatti nei calcolatori le varie operazioni booleane (con due valori) sono realizzate da circuiti che hanno uno o due ingressi indipendenti ed una sola uscita e il cui valore è legato agli ingressi da una esatta relazione o funzione. Questi circuiti si chiamano «Blocchi logici» e sono fatti in vari modi, ovviamente dipendenti dalla tecnica utilizzata e dalla funzione da realizzare. Questi blocchi logici possono realizzare qualsiasi funzione booleana però per motivi tecnico-economici ne vengono costruiti soltanto alcuni detti «Blocchi logici elementari». Le funzioni booleane che essi non realizzano direttamente, sono ottenute mediante opportune combinazioni cioè le «reti logiche». I blocchi logici elementari sono realizzati utilizzando componenti elettronici collegati opportunamente diodi, transistors, resistenze e hanno caratteristiche di funzionamento analoghe a quelle di reti di interruttori.

Modelli elettronici, algebra e blocchi logici elementari .

I Blocchi logici elementari realizzano le operazioni fondamentali in un modello costituito da una serie di conduttori elettronici che assumono soltanto due valori di tensione diversi (0, 5v; -50V, +50V; ecc) che si indicano convenzionalmente con 0 e 1.

OR      La funzione  T = X +Y e la rappresentazione grafica usata è: Rappresentazione OR

L’operazione fondamentale somma «+» viene realizzata da un blocco logico elementare chiamato OR che ha due ingressi e una sola uscita T. Nella teoria degli insiemi corrisponde all’Unione. Il funzionamento del blocco OR, nel caso dei due ingressi X, Y è stabilito, come abbiamo visto dalla tavola di verità:

X Y T
0 0 0
0 1 1
1 0 1
1 1 1

AND   La funzione T = X x Y     e la rappresentazione grafica è: Rappresentazione AND

Invece l’operazione fondamentale moltiplicazione «x» viene realizzata da un blocco logico elementare chiamato AND. In tal caso abbiamo  due ingressi e una sola uscita, il suo funzionamento nel caso dei due ingressi X, Y è definito dalla tavola :

X Y T
0 0 0
0 1 0
1 0 0
1 1 1

 

 

NOT e la rappresentazione grafica è:  rappresentazione NOT

Il complemento di una variabile X viene realizzato con un blocco logico elementare detto NOT ed ha  un solo ingresso e una sola uscita il cui funzionamento è definito dalla seguente tavola della verità :

X X
0 1
1 0

 

X viene chiamata variabile negata, o variabile complementata di X e rappresenta fisicamente un conduttore che ha il livello di tensione opposto a quello assunto dal conduttore X. Abbiamo visto le tavole logiche dei blocchi elentari anche nell’ articolo precedente.

Tutte le funzioni dell’ algebra booleana, di due variabili indipendenti si possono realizzare combinando in modo opportuno i blocchi logici AND OR e NOT. Tale scelta di blocchi elementari non è l’unica, essa può variare a seconda della logica e della tecnologia utilizzata nel calcolatore. Ad esempio un’altra scelta è quella che utilizza solo blocchi logici NAND  ed la funzione NAND (NOT – AND) può essere realizzata collegando l’uscita di un blocco logico AND con l’ingresso di un NOT.

Ricordiamo alcune definizioni di matematica.

Gruppo

In matematica un gruppo è una struttura algebrica formata dall’abbinamento di un insieme non vuoto con un’operazione binaria interna (come ad esempio la addizione o la moltiplicazione), che soddisfa gli assiomi di associatività, di esistenza dell’elemento neutro e di esistenza dell’inverso di ogni elemento.

Anello

In matematica, in particolare in algebra astratta, un anello è una struttura algebrica composta da un insieme su cui sono definite due operazioni binarie, chiamate somma e prodotto, indicate rispettivamente con + + {\displaystyle +} e – ⋅ {\displaystyle \cdot } , che godono di proprietà simili a quelle verificate dai numeri interi.

Reticolo

In matematica, un reticolo è un insieme parzialmente ordinato in cui ogni coppia di elementi ha sia un estremo inferiore (inf) che un estremo superiore (sup). I reticoli possono anche essere caratterizzati come strutture algebriche che soddisfano determinate identità.

Criptomorfa

In matematica, due oggetti (solitamente sistemi di assiomi) sono detti criptomorfi se è possibile trovare tra essi un’equivalenza, ma non sia invece esplicitato un isomorfismo. La parola “criptomorfismo” è quindi quasi una parodia dei molti morfismi in matematica, e dire che esiste un criptomorfismo tra due oggetti equivale a dire che la parola in sé non indica alcun particolare morfismo, dato che se ad esempio fosse esplicitato un isomorfismo, i due oggetti si direbbero isomorfi, e non criptomorfi. Cioè sono legati ma in modo non ben enunciato.

Insieme ordinato

In matematica, una relazione d’ordine di un insieme è una relazione binaria tra elementi appartenenti all’insieme che gode delle seguenti proprietà: riflessiva, antisimmetrica, transitiva

Si definisce insieme parzialmente ordinato (oppure ordine) la coppia costituita da un insieme e da una relazione d’ordine su di esso. Le relazioni d’ordine si indicano spesso con i simboli del tipo  ≥≤ {\displaystyle \leq } , ⊆ {\displaystyle \subseteq } ⊑ {\displaystyle \sqsubseteq } ≼ {\displaystyle \preccurlyeq } .

Anello Booleano

In matematica un anello booleano (R,+,·) è un anello unitario per il quale x2 = x per ogni elemento x del suo sostegno R. In altre parole, è un anello costituito solo da elementi idempotenti.

Gli anelli booleani sono strutture criptomorfe (cioè logicamente equivalenti) alle algebre di Boole. L’esempio più noto è fornito dall’insieme delle parti di un qualsiasi insieme X, dove l’addizione di anello è la operazione insiemistica differenza simmetrica e la moltiplicazione è l’intersezione.

Ricordiamo ora la definizione formale dell’Algebra di Boole.

L’Algebra di Boole tratta di insiemi dotati di proprietà come la distributività, l’esistenza del complemento, o dell’elemento neutro e risulta associata biunivocamente in modo tale da risultare equivalente dal punto di vista logico a un insieme parzialmente ordinato.  Dal punto di vista matematico risulta criptomorfa ad un tipo particolare di Anello denominato Anello Booleano. La struttura può essere spiegata attraverso gruppi o anelli o reticoli.

Più precisamente, si parla di algebra di Boole in riferimento a un insieme K sul quale sono definite le operazioni di somma logica (+ OR) e prodotto logico (* AND) una terna cioè (K, +, x) che dà vita ad un reticolo in cui sono soddisfatte le proprietà: distributiva, l’esistenza del minimo e del massimo e l’esistenza del complemento.

Su ha un Algebra di Boole su (K, +, x) quando sono soddisfatte le proprietà:

Commutativa

a + b = b + a                            a x b = b x a

Associativa

a + (b + c) = (a + b) + c             a x (b x c) = (a x b) x c

Assorbimento

a + (a x b) = a                          a x (a + b) = a

Distributiva

a x (b + c) = (a x b) + (a x c)     a + (b x c) = (a + b) x (a + c)

Idempotenza

a + a = a                                 a x a = a

Esistenza di min e max

a x 0 = 0                                 a + 1 = 1

Esistenza del complemento

a x ā = 0               a + ā = 1        (il complemento è indicato col trattino sulla variabile)

Il modo in cui sono elencate le proprietà mette in risalto la simmetria che c’è tra i due operatori, che è poi all’origine della legge di dualità e altre proprietà importanti.

Le prime 4 proprietà riguardano i reticoli in generale. Mentre le restanti sono proprie dell’algebra di Boole, che sarà quindi indicata con la sestupla (K, +, x, !, 0, 1)  . Abbiamo poi la legge di dualità e alcune proprietà derivanti dagli assiomi visti, oltre a queste conseguenze, ci sono poi due importanti teoremi dell’algebra booleana che sono i teoremi di De Morgan e il teorema di Shannon.