L'algèbre de Boole, ou calcul booléen, est la partie des mathématiques
qui s'intéresse à une approche algébrique de la logique, vue en
termes de variables, d'opérateurs et de fonctions sur les variables logiques.
Ce qui permet d'utiliser des techniques algébriques pour traiter les
expressions à deux valeurs du calcul des propositions. Elle fut initiée
en 1854 par le mathématicien britannique George
Boole.
L'algèbre de Boole des fonctions logiques permet de modéliser des raisonnements logiques, en exprimant un « état » en fonction de conditions. Par exemple dans les expressions
Communication = Émetteur ET Récepteur
Communication serait « VRAI » si à la fois Émetteur ET Récepteur étaient actifs (c'est une fonction logique dépendant des variables Émetteur et Récepteur)
Décrocher = ( Décision de répondre ET Sonnerie ) OU décision d'appeler
Décrocher serait « VRAI » soit si à la fois on entend la sonnerie ET l'on décide de répondre, soit (OU) si simplement l'on décide d'appeler.
L'algèbre de Boole étant un domaine commun à trois disciplines, on rencontre des notations différentes pour désigner un même objet. Dans le reste de l'article, on indiquera les diverses notations, mais on en privilégiera une pour conserver une certaine homogénéité.
On appelle B l'ensemble constitué de deux éléments appelés valeurs de vérité {VRAI, FAUX}. Cet ensemble est aussi noté
On privilégiera dans la suite la notation B = {1, 0}.
Sur cet ensemble on peut définir deux lois (ou opérations ou foncteurs), les lois ET et OU et une transformation appelée complémentaire, inversion ou contraire.
Table de la loi ET |
||
b\a |
0 |
1 |
0 |
0 |
0 |
1 |
0 |
1 |
Elle est définie de la manière suivante : a ET b est VRAI si et seulement si a est VRAI et b est VRAI. Cette loi est aussi notée
On privilégiera dans la suite la notation « ».
On peut construire la table de cette loi (comme une table d'addition ou de multiplication de notre enfance) mais on ne la confondra pas avec une table de vérité.
Table de la loi OU |
||
b\a |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
Elle est définie de la manière suivante : a OU b est VRAI si et seulement si a est VRAI ou b est VRAI. (En particulier, si a est vrai et que b est vrai aussi, alors a OU b est vrai.) Cette loi est aussi notée
On privilégiera dans la suite la notation mais
on prendra garde du fait que cette loi n'est pas l'addition usuelle . C'est
pourquoi, en mathématiques et en logique mathématique, la notation
n'est
pas utilisée pour désigner le « ou inclusif » : elle est
réservée au « ou
exclusif .
La négation de a est VRAIE si et seulement si a est FAUX. La négation de a est notée
On privilégiera dans la suite la notation .
On obtient alors et
Associativité
Comme avec les opérations habituelles, certaines parenthèses sont inutiles:
Commutativité
L'ordre est sans importance:
Distributivité
Idempotence
Éléments neutres
Absorption
Simplification
Redondance
Complémentarité
"La lumière est allumée" = "la lumière n'est pas non allumée", "la lumière n'est pas éteinte"
"lumière allumée" OU "lumière non allumée" est toujours VRAI
"lumière_allumée" ET
"lumière_non_allumée" est toujours FAUX.
On retrouve alors toutes les propriétés qui confèrent à B une structure d'algèbre de Boole
Pour faciliter leur compréhension, on a décidé que ces opérations seraient soumises aux mêmes règles que les opérations « de tous les jours », la fonction ET (multiplication logique) est ainsi prioritaire par rapport à la fonction OU (somme logique) ; on peut, pour s'aider, placer des parenthèses dans les opérations.
Première loi de De Morgan (négation de la conjonction/ET) s'exprime
par l'égalité suivante
Dans les deux cas, l'expression ne
sera VRAIE |
Deuxième loi de De Morgan (négation de la disjonction/OU)
Dans les deux cas, l'expression ne
sera FAUSSE |
Mathématiquement, une fonction logique ou opérateur logique est une application de Bn dans B.
En électronique, une fonction logique est une boîte noire qui reçoit en entrée un certain nombre de variables logiques et qui rend en sortie une variable logique dépendant des variables d'entrée. Une table de vérité permet de préciser l'état de la sortie en fonction des états des entrées. Elle caractérise la fonction logique.
Toute table de vérité, et donc toute fonction logique, peut se décrire à l'aide des trois opérations de base :
Elles sont issues des trois opérations de base et définissent alors
|
|
|
|
Ce sont les fonctions logiques à deux variables. Parmi celles-ci, on en dénombre certaines suffisamment intéressantes pour qu'on leur donne un nom.
Table de vérité de XOR |
||
a |
b |
a |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
0 |
Le OU étudié jusqu'à présent doit se comprendre de la manière suivante : « l'un ou l'autre ou les deux ». Il est également appelé « OU inclusif ». Le OU exclusif (ou XOR pour ' eXclusive OR') s'entend comme : « l'un ou l'autre, mais pas les deux ».
a XOR b
On peut également le définir avec un modulo sur une somme ordinaire :
Le « ou exclusif » est parfois noté par le signe arithmétique (différent
de). Fonctionnellement, on utilise aussi un + entouré :
.
Propriété - Toute table de vérité, toute fonction logique, peut se
décrire à l'aide de la constante 1 et des deux opérations : disjonction
exclusive et conjonction, car : ,
et
Table de vérité de EQV |
||
a |
b |
a |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
L'équivalence (notée EQV ou XNOR) est vraie si les deux entrées ont la même valeur et fausse sinon. C'est la négation du « ou exclusif ».
L'équivalence peut s'écrire
L'équivalence est souvent notée par le signe .
Elle peut aussi être notée « == » dans certains langages (C, C++,
PHP…) et « ⊙ » en électronique.
Table de vérité de IMP |
||
a |
b |
a |
0 |
0 |
1 |
0 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
L'implication (notée IMP) s'écrit de la manière suivante
Cette opération n'est pas commutative. a est une condition suffisante pour b, qui, elle, est une condition nécessaire pour a.
Mais
illustration :
De l'affirmation « SI j'habite en France (métropolitaine), ALORS j'habite en Europe. », on peut déduire « SI je n'habite pas en Europe, ALORS je n'habite pas en France. » mais pas « SI je n'habite pas en France, ALORS je n'habite pas en Europe. » car je peux habiter en Europe ailleurs qu'en France, sans contredire l'énoncé initial.
Table de vérité de INH |
||
a |
b |
|
0 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
0 |
L'inhibition (notée INH) se compose comme suit
Si a est VRAI, l'expression vaut VRAI, SAUF si b est VRAI.
Cette opération n'est pas commutative.
Opération manipulant les données de manière binaires, directement au niveau des bits. Elles sont utiles dès qu'il s'agit de manipuler les données à bas niveau : codages, couches basses du réseau (par exemple TCP/IP), cryptographie,. Les opérations bit à bit courantes comprennent des opérations logiques bit par bit, et des opérations de décalage des bits, vers la droite ou vers la gauche.
Représente la négation logique, le complément d'une expression.
Par exemple, NOT 7 = 8 :
NOT 0111
= 1000
Le et logique de deux expressions.
Ex : 5 AND 3 = 1 :
0101
AND 0011
= 0001
Le ou logique de deux expressions.
Ex : 5 OR 3 = 7 :
0101
OR 0011
= 0111
Le ou exclusif de deux expressions.
Ex : 5 XOR 3 = 6 :
0101
XOR 0011
= 0110
Décalage de bit à gauche.
00010111 (+23) LEFT-SHIFT
= 00101110 (+46)
Décalage de bit à droite.
00010111 (+23) RIGHT-SHIFT
= 00001011 (+11)