La Logica Booleana

Le funzioni AND, OR e NOT

Abbiamo detto che le operazioni AND, OR e NOT sostituiscono in un certo senso le funzioni di Unione, Intersezione e Complemento della Logica degli Insiemi. Ed infatti in questo paragrafo vedremo che è esattamente così. Per comprendere meglio la loro funzione, prendiamo come riferimento l'esempio degli insiemi del primo paragrafo.

A = Tutte le persone con i capelli neri
B = Tutte le persone con i capelli biondi 
C = Tutte le persone che hanno 18 anni
  

L'operazione OR, che sostituisce l'Unione, si può tradurre con un semplice "oppure" nel nostro linguaggio parlato. Ecco perché abbiamo scritto risaltando la preposizione "o" in grassetto:

U = Tutte le persone con i capelli neri o con i capelli biondi.

In altri termini, traducendo questo in Logica Booleana possiamo dire che nell'insieme U rientrano le persone con i capelli neri oppure con i capelli biondi. Perciò, significa che se la persona in questione ha i capelli biondi (B=1) o ha i capelli neri (A=1) oppure, caso estremo, i capelli neri con le ciocche bionde per esempio (A=1, B=1), essa rientrerà nell'insieme (A+B = 1). Se, invece, essa ha i capelli rossi, castani o di qualunque altro colore, non rientrerà nell'insieme (A + B = 0). Allora possiamo stabilire una cosiddetta Tabella di Verità:   

A  B        OR (A + B)
0  0 | 0
  0  1 | 1
1  0 | 1
1  1 | 1

In sintesi si dice che: la OR dà valore logico alto (1) se almeno una delle due variabili booleane (A e B) ha valore alto. Il caso A=1 e B=1 risulta essere più particolare degli altri, ma rispecchia senza ambiguità tale logica.

L'operazione di AND (•), che sostituisce l'Intersezione I, invece è la cosiddetta duale della OR. Infatti abbiamo usato la congiunzione "e":

I = Tutte le persone con i capelli biondi (B) e che hanno 18 anni (C).

Ciò significa che: se la persona ha i capelli biondi (B=1) e al contempo ha anche 18 anni (C=1) allora rientrerà nell'insieme e la AND darà valore logico "1" (B • C = 1). In tutti gli altri casi, ovvero in cui non sono rispettate"contemporaneamente" queste due caratteristiche, non rientrerà nell'insieme e la AND darà valore logico bass (0). Strutturando la Tabella Di Verità:

A  B         AND (A • B)
0  0 | 0
  0  1 | 0
1  0 | 0
1  1 | 1

In sintesi si dice infatti che: la AND dà valore logico alto (1) se le due variabili booleane hanno entrambe valore logico alto (A=1 e B=1). Dà valore logico basso (0) in tutti gli altri casi come si vede dalla tabella.   

L'operazione NOT, che sostituisce il Complemento, invece, non ha bisogno di essere presentata. Essa rappresenta una semplice  negazione, ecco perché il "non":

D = Tutte le persone che hanno i cappelli neri che non hanno 18 anni

Ciò significa che: le persone che non hanno 18 anni (C=0) rientreranno nell'insieme, perciò la NOT darà valore logico alto (1). Quelle che invece hanno 18 anni (C=1) non rientreranno nell'insieme e pertanto la NOT darà valore logico basso (0). La Tabella di verità è cioè la seguente:

C   NOT (¯C)
0   | 1
1   |

Si parla perciò di negazione della variabile booleana ¯C (si legge "C negata").