Sei sulla pagina 1di 6

1. Loperatore not(...) fu introdotto da G. Boole nella scomoda forma (1 - ...

); nel
1885 C. S. Peirce gi notava che meglio scrivere (1-x) come x
_
.
LALGEBRA BOOLEANA
Lalgebra booleana fu introdotta nel 1854 da George Boole, che defin i
tre operatori and, or e not e le loro propriet
1
. Fu arricchita nel 1860 con
due leggi da Augustus De Morgan. Nel 1981 Charles Sanders Peirce concep, ma
non rese noti, gli operatori nand e nor; essi furono invece introdotti, in mo-
do sistematico, nel 1913 da Henry M. Sheffer. Lalgebra booleana fu riformulata nel
1933 da Edward V. Huntington, che le pose come base 8 postulati. Nel 1938
Claude Shannon ne mostr lutilit per descrivere e quindi sintetizzare le
reti logiche (ovviamente con una tecnologia che allora si basava su inter-
ruttori e rel); formul inoltre un teorema che porta il suo nome e genera-
lizz le leggi di De Morgan. In quanto segue lalgebra booleana presen-
tata in modo sintetico evidenziando solo ci che pi serve.
Lalgebra booleana (binaria) una struttura algebrica nella quale sono
definite: i) due costanti comunemente dette bit 0 e bit 1; ii) un numero ar-
bitrario di variabili binarie che assumono, a seconda delle circostanze, uno
tra i due valori 0 e 1; iii) tre operatori and, or e not; iv) espressioni costituite
o da un bit o da una variabile o da una espressione a cui sia applicato
loperatore not o da due espressioni legate dalloperatore and o da due
espressioni legate dalloperatore or.
Nelle espressioni possono essere usate parentesi ad indicare lordine in
cui vanno applicati gli operatori; in assenza delle parentesi si conviene che
loperatore not abbia la precedenza sugli altri operatori e loperatore and
abbia la precedenza sulloperatore or.
Due espressioni che assumono lo stesso valore in corrispondenza di
ogni combinazione dei valori delle variabili che vi compaiono saranno det-
te equivalenti. Lequivalenza di due espressioni espr
A
e espr
B
sar indicata
come espr
A
espr
B
e sar detta affermazione vera.
In questa Appendice continueremo ad usare per gli operatori and, or, not
i classici simboli
.
, + ,
_
. Denoteremo le variabili con lettere minuscole
dellalfabeto latino e le espressioni con lettere minuscole dellalfabeto greco.
Una generica espressione in cui compaiano le variabili a, b, , w sar indica-
ta come (a, b, ..., w ; 0, 1; and, or, not); qualora sia sufficiente un minor detta-
glio, sar indicata come (a, b, ..., w) o come (...) o, semplicemente, come .
Date le espressioni booleane , , , baseremo lalgebra booleana sui
seguenti 3 postulati, che riassumono (con minor eleganza) gli 8 postulati
formulati da Huntington e che assicurano, fra laltro, che ogni espressio-
ne pu assumere esclusivamente il valore 0 o il valore 1.
1) Postulato per la definizione delloperatore and
Lespressione
.

.

.
vale 1 se tutte le espressioni , , , valgo-
no 1, altrimenti vale 0
2) Postulato per la definizione delloperatore or
Lespressione + + + vale 0 se tutte le espressioni , , , valgo-
no 0, altrimenti vale 1
3) Postulato per la definizione delloperatore not
Lespressione
_
vale 1 se lespressione vale 0, altrimenti vale 1
Una caratteristica dellalgebra booleana sta nel fatto che da una affer-
mazione vera si pu ottenere una nuova affermazione vera se nelle due
espressioni equivalenti si sostituiscono ogni bit 0 con un bit 1, ogni bit 1 con
un bit 0, ogni operatore and con un operatore or e ogni operatore or con un
operatore and, il tutto previo inserimento di parentesi ad indicare la priorit di
applicazione degli operatori. Questa caratteristica nota come legge di dua-
lit e deriva dal fatto che: i) applicando le sostituzioni ora dette, il primo
postulato si trasforma nel secondo, il secondo nel primo e il terzo in se stes-
so; ii) ci che vale per i postulati vale per tutte le affermazione vere che ad
essi si riconducono. Da un punto di vista formale, questa caratteristica non
un postulato e non un teorema. Edward J. McCluskey lha definita meta-
theorem, cio atto di fede o quasi.
Per operare algebricamente sulle espressioni, risultano utili alcune sem-
plici affermazioni vere, note in letteratura come propriet dellalgebra boo-
leana. La loro validit pu essere provata in vari modi, fra cui la coinci-
denza con un caso particolare di un postulato, lispezione diretta o lappli-
cazione della legge di dualit a propriet gi verificate.
Di seguito sono riportate alcune delle pi significative propriet, valide
quali che siano le espressioni , e che vi compaiono:

.
0 0 ;
.
1 ; +1 1 ; + 0 ;

.
;
.

_
0 ; + ; +
_
1 ;

.

.
; + + ;
(
.
)
.

.
(
.
) ; (+ ) + + (+ ) ;

.
+ ; (+)
.
;

.
+
.

.
(+ ) ; (+ )
.
(+ ) + (
.
) ;

.
+
.

_

.
+
.

_
+ ; (+ )
.
(+
_
) (+ )
.
(+
_
)
.
;

_
_
;
296 APPENDICE
Applicando in modo esaustivo le prime 8 propriet ad una qualunque
espressione, se ne trova una equivalente, che esclusi i casi banali in cui que-
sta venga a coincidere con il bit 0 o con il bit 1, sar costituita da variabili e
operatori and, or e not e non includer n bit 0, n bit 1 n doppioni. Ap-
plicando poi in modo opportuno le altre propriet troveremo una o pi
espressioni equivalenti irridondanti.
allora istruttivo valutare il numero di espressioni non equivalenti fra
di loro che si possono avere utilizzando N variabili. Consideriamo ad
esempio le espressioni
i
(a, b) con N = 2 variabili. Ognuna di tali espressio-
ni caratterizzata dai P = 2
N
= 4 bit
i
(0, 0),
i
(0, 1),
i
(1, 0),
i
(1, 1), che ne
specificano il valore in corrispondenza dei possibili P = 2
N
= 4 stati delle
variabili a e b. Le configurazioni che questi P bit possono assumere sono
2
P
= 16 e cio {0,0,0,0}, {0,0,0,1}, ..., {1,1,1,1}. Si hanno pertanto 2
P
= 16 espres-
sioni
i
(a, b), come dettagliato nella seguente tabella:
a b
0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15
0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
0 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1
1 0 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1
1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
Per N = 3 si avrebbe P = 2
N
= 8, per un totale di 2
P
= 256 espressioni non
equivalenti, e cos via.
Tornando al caso N = 2, le 16 espressioni non equivalenti, ridotte ad una
forma irridondante, si possono classificare come segue. Sei sono banali:
0
= 0,

15
= 1,
3
= a,
12
= a
_
,
5
= b,
10
= b
_
. Quattro sono i mintermini:
1
= a
.
b,

2
= a
.
b
_
,
4
= a
_
.
b,
8
= a
_
.
b
_
. Quattro sono i maxtermini:
7
= a + b,
11
= a + b
_
,

13
= a
_
+ b,
14
= a
_
+ b
_
. Una, nota come exclusive or o xor,
6
= (a
_
.
b) + (a
.
b
_
) e
vale 1 se e solo se a e b hanno valori diversi.Una, nota come not exclusive or
o nxor,
9
= (a
_
.
b
_
) + (a
.
b) e vale 1 se e solo se a e b hanno valori coincidenti.
Due importanti teoremi permettono di operare con sicurezza sulle espres-
sioni. Il primo teorema dovuto interamente a Shannon; il secondo una ge-
neralizzazione apportata da Shannon ad alcune leggi formulate originaria-
mente da De Morgan.
1) Teorema di Shannon per lespansione SdP: Se (a) una espressione che
include la sola variabile a, allora (a) (0)
.
a
_
+ (1)
.
a .
Tale teorema, la cui validit verificabile per ispezione diretta, pu es-
sere esteso, per induzione, al caso di una espressione che includa un nu-
mero arbitrario di variabili. Ad esempio, nel caso di due variabili si ha:
(a,b) = (0,0)
.
a
_
.
b
_
+ (0,1)
.
a
_
.
b+ (1,0)
.
a
.
b
_
+ (1,1)
.
a
.
b e cos via.
LALGEBRA BOOLEANA 297
3. Applicare loperatore not a tutte le variabili si traduce in pratica nella sua ap-
plicazione alle variabili a cui non applicato e nella sua rimozione dalle variabili a
cui applicato .
Lespansione SdP di Shannon permette anche di ottenere, in modo ele-
gante, la forma canonica SdP di una espressione: per ottenere la forma ca-
nonica basta infatti applicare allespansione le propriet (0
.
) 0, (1
.
)
e (0 + ) .
Ovviamente, per dualit, si ha il Teorema di Shannon per lespansione
PdS: (a) [(1) +a
_
]
.
[(0) +a ] . Anche ora la validit del teorema esten-
dibile al caso di espressioni con un numero arbitrario di variabili.
2) Teorema di De Morgan Generalizzato: Se ( a, b, ..., w; 0, 1; and, or, not) una
generica espressione in cui lordine di precedenza degli operatori and ed or
sia stabilito da opportune parentesi e se ( a
_
, b
_
, ..., w
_
; 1, 0; or, and, not)
lespressione ottenuta da essa applicando loperatore not ad ogni variabi-
le
3
, sostituendo ogni bit 0 con un bit 1, ogni bit 1 con un bit 0, ogni opera-
tore and con un operatore or e ogni operatore or con un operatore and, allo-
ra
_
(a, b, ..., w; 0, 1; and, or, not) ( a
_
, b
_
, ..., w
_
; 1, 0; or, and, not).
Una dimostrazione compatta del Teorema di De Morgan Generalizzato
pu essere rintracciata nei lavori scientifici di Shannon. Una dimostrazione
pi diluita di questo teorema pu essere fatta verificandone la validit, tra-
mite ispezione diretta, nel caso di espressioni a due variabili (in pratica so-
no dieci e tutte semplici) e procedendo per induzione nel seguente modo. Si
applica allespressione
_
(...) il Teorema di Shannon per lespansione PdS,
ottenendo:

_
(a, b, ..., w; 0, 1; and, or, not)
_
(0, b, ..., w; 0, 1; and, or, not)
.
a
_
+

_
(1, b, ..., w; 0, 1; and, or, not)
.
a
Si applica il Teorema di De Morgan Generalizzato alle due espressioni
_
(...)
che compaiono nellespansione e che hanno una variabile in meno rispetto
allespressione
_
(...) iniziale, ottenendo:

_
(a, b, ..., w; 0, 1; and, or, not) (1, b
_
, ..., w
_
; 1, 0; or, and, not)
.
a
_
+
(0, b
_
, ..., w
_
; 1, 0; or, and, not)
.
a
Poich il secondo membro della relazione precedente lespansione PdS di
Shannon dellespressione ( a
_
, b
_
, ..., w
_
; 1, 0; or, and, not), si ha, come voleva-
si dimostrare,
_
(a, b, ..., w; 0, 1; and, or, not) ( a
_
, b
_
, ..., w
_
; 1, 0; or, and, not).
bene notare che mentre la legge di dualit permette di passare da affer-
mazioni vere ad altre affermazioni vere, i due teoremi precedenti permettono
di costruire affermazioni vere a partire da una qualunque espressione. Il Teo-
298 APPENDICE
rema di De Morgan Generalizzato ci permette anche di affermare che se z
una variabile funzione delle (cio dipendente dalle) variabili a, b, ..., w e se z
_

stata espressa come z


_
= (a, b, ..., w; 0, 1; and, or, not), allora essendo vero che
z =
_
(a, b, ..., w; 0, 1; and, or, not) anche vero che z = ( a
_
, b
_
, ..., w
_
; 1, 0; or, and, not).
Notiamo infine che, come caso particolare del Teorema di Morgan Ge-
neralizzato, si hanno le leggi formulate originariamente da De Morgan:
+ + ... +
_
.

_
.
...
.

_

.

.
...
.

_
+
_
+ ...+
_
Introducendo gli operatori nand come not-and e nor come not-or ed usan-
do per essi i simboli e potremo riscrivere le leggi di De Morgan anche
nella seguente forma:
+ + ... +
_

_
...
_

.

.
...
.

_

_
...
_
Le leggi di De Morgan permettono pertanto di eliminare loperatore or
e/o loperatore and da una qualunque espressione e stanno alla base della
costruzione di espressioni basate esclusivamente: i) sulla coppia di opera-
tori {not, and}; ii) sulla coppia di operatori {not, or}; sulloperatore nand; iv)
sulloperatore nor. Ovviamente le leggi di De Morgan possono essere di-
mostrate in modo autonomo verificandole per ispezione diretta nel caso di
due espressioni e provando che, se valgono per N- 1 espressioni, allora val-
gono anche per N espressioni.
LALGEBRA BOOLEANA 299

Potrebbero piacerti anche