You are on page 1of 4

1

Annexe 2
Rappels d'algbre de Boole
Cette structure algbrique a t tudie par le mathmaticien anglais Georges Boole (1815-
1864) pour formaliser les rgles de la logique des propositions. Elle a t publie dans son
ouvrage: "The Mathematical Analysis of Logic" en 1847
A2.1. Dfinition
On appelle algbre de Boole, un quadruplet (B, -, , +) compos d'un ensemble B = {0, 1}, d'une
opration unaire: - B B appele complmentation , et de deux oprations binaires: , +
BxB B appeles respectivement "et" et "ou".
Pour tout a, b ,c B on a les galits suivantes:
(a b) C = a (b c)
a c = c a
a (b + c) = (a b) + (a c)
a + 0 = a
a -a = 0
(a + b) + c = a + (b + c)
a + b = b + a
a + (b c) = (a + b) (a + c)
a 1 = a
a + -a = 1
En partant de ces dix axiomes on constate que 0 est l'lment neutre de l'opration + et 1
celui de l'opration .
De mme, on montre que:
-(a b) = -a + -b
-(a + b) = -a -b
appele la loi de De Morgan.
Il existe plusieurs formes possibles d'criture de l'algbre de Boole. Les lments de
l'ensemble B peuvent, par exemple, tre appels V, F et les oprations , . La
complmentation est quelquefois note par un surlignement, ce qui est difficile reproduire
avec les outils typographiques habituels. Il est aussi possible de reprsenter une algbre de
Boole avec un seul oprateur binaire, par exemple le NI. On montre l'quivalence de cette forme
en crivant:
NI(a,b) = -(a + b)
d'ou
-a = NI(a,a)
a + b = NI(NI(a, b), NI(a, b))
a b = NI(NI(a, a), NI(b, b))
Annexe: Rappels d'algbre de Boole
2
Une autre forme est l'anneau boolen not (B, , +) dans lequel l'oprateur est le
ou-exclusif qui peut tre dfini par:
a b = (a -b) + (-a b)
A2.2. Interprtation
L'algbre de Boole, initialement dveloppe pour formaliser les problmes de la logique des
propositions, s'applique de trs nombreux domaines dans lesquels l'ensemble des valeurs se
rduit deux lments. Dans le cas de l'lectronique, ces valeurs pourront tre deux niveaux de
tension, deux intensits ou bien le fait qu'un lment soit conducteur ou isolant.
Comme beaucoup de ces grandeurs physiques sont continues, la dfinition des deux niveaux
correspondant des valeurs boolennes se fera via l'introduction de seuils hauts et bas.












Lorsque la valeur du signal est infrieure au seuil bas, on dira que sa valeur logique est 0,
elle sera dite gale 1 lorsque la valeur du signal est suprieure au seuil haut (ou
rciproquement!). Lorsque la valeur du signal est entre les deux seuils, on dira que sa valeur
logique n'est pas dfinie.
En fait beaucoup de montages lectroniques se modlisent l'aide de fonctions
incompltement dfinies. En plus des valeurs logiques, il est ncessaire de reprsenter soit une
valeur non dfinie, soit un tat isol. Ceci peut tre formalis en utilisant des logiques
multivalues, ternaires, ou d'arit plus importante, oprant sur des treillis de valeurs (c'est le cas
du type std_ulogic de la librairie IEEE de VHDL).

ex: treillis des tats boolens + isol









De telles approches nous permettent de parler d'interrupteurs qui peuvent isoler ou connecter
des sources logiques.
A2.3. Fonctions boolennes
Nous dfinirons des fonctions boolennes n arguments comme des applications: f B
n
B.
Les n arguments d'une telle fonction constituent un vecteur boolen qui peut prendre 2
n
valeurs
distinctes. Une fonction boolenne revient attribuer des valeurs boolennes ces valeurs des
arguments. Elle peut donc tre reprsente par le tableau des 2
n
valeurs de ces arguments
seuil haut
seuil bas
valeur logique 1
valeur logique 0
valeur logique indfinie
grandeur physique
court-circuit
isol
1 0
Annexe: Rappels d'algbre de Boole
3
auxquelles on associe la valeur de la fonction. Ce tableau est appel la table de vrit de la
fonction.
A2.3.1 Terme
On appelle terme un produit de variables boolennes directes ou complmentes.
ex: a-bc
A2.3.2 Forme canonique d'une fonction boolenne
On appelle forme canonique d'une fonction boolenne son criture sous la forme d'une somme
de termes, appels monmes, car contenant l'ensemble des variables directes ou complmentes.
ex: f = a-bc + a-b-c + ab-c
Cette criture est assez lourde car elle comporte autant de termes que de valeurs 1 dans la
table de vrit de la fonction.
A2.3.3 Simplification d'une fonction boolenne.
Il est possible de rduire la complexit de l'criture prcdente en regroupant des monmes pour
obtenir un nombre plus rduit de termes. Par exemple, les monmes a-bc et a-b-c pourront
tre condenss dans le terme a-b.
ex: f peut ainsi s'crire: a-b + a -c
Si la fonction ne comporte que quelques variables, ce processus de simplification pourra tre
ralis sur une reprsentation tabule de cette fonction appele table de Karnaugh.

ex: table de Karnaugh de la fonction prcdente:













Les zones rectangulaires pointilles dans ce tableau reprsentent des termes.
L'criture comportant le minimum de terme sera appele forme minimale et ses termes des
min-termes. Elle sera utilise pour minimiser la complexit de certains organes comme des
PLA.
Il existe des outils informatiques [1, 2] trs puissants, capables de minimiser des fonctions
boolennes trs complexes.
A2.3.4 Duale d'une fonction boolenne.
On appelle duale d'une fonction boolenne f (a, b, c) la fonction f* = -f(-a, -b, -c). On montre
que la fonction f* s'obtient simplement en remplaant les occurrences des oprateurs par + et +
par .
terme a-b
a = 1 a = 0
b = 1 b = 0 b = 0
c = 0
c = 1
1
1 1
terme a-c
Annexe: Rappels d'algbre de Boole
4
ex: si f = a+b alors f* = ab
si f = a(b+-c) alors f* = a+(b-c)
La notion de duale intervient dans l'tude des montages CMOS.
A2.3.5 Fonction auto-duales.
On appelle auto-duale une fonction boolenne gale sa duale.
ex: f = a b c = -(-a -b -c) = f*


Bibliographie:
[1] R.E. Bryant: Graph-Based Algorithms For Boolean Function Manipulation, IEEE Transaction on
Computers, Vol C-35 n8, August 1986
[2] J-C. Madre, J-P. Billon: Proving Circuit Correctness by Formaly Comparing their Expected and
Extracted Behaviour, Proceeding of the 25
th
Design Automation Conference, Anaheim, june 1988