Algèbre de Boole/Simplification des expressions booléennes

Un livre de Wikibooks.
Aller à : Navigation, rechercher
Algèbre de Boole
Algèbre de Boole
Sommaire
Modifier ce modèle

Une expression booléenne peut souvent se simplifier.

Sections

Table de Karnaugh [modifier]

Comme une table de vérité, une table de Karnaugh pour une expression booléenne établit l'ensemble des résultats possibles pour chacune des combinaisons de ses paramètres d'entrée. Toutefois cette table est organisée de manière différente. Chaque case de cette table contient le résultat de l'expression (vrai ou faux) pour la combinaison de paramètres désignée par la ligne et la colonne.

L'ordre des combinaisons désignant les lignes et les colonnes est l'ordre . Dans cet ordre, chaque nouvelle combinaison de paramètre ne diffère de la précédente que par la valeur d'un seul paramètre.

Exemple [modifier]

Dans cet exemple, on représente l'expression booléenne suivante :

(a ET b) OU (b ET NON c) ou (NON c ET b ET a)
0 0 1 1 a
0 1 1 0 b
0 0 1 1 0
1 0 0 1 0
c

Les lignes et colonnes, au lieu d'utiliser des 0 et des 1, peuvent utiliser un espace vierge et une barre. Selon la convention choisie, la barre peut symboliser la valeur vrai (1) ou bien la valeur fausse c'est à dire la barre de l'opérateur NON (a par ex).

_ _ a
_ _ b
0 1 1 0
| 0 0 1 0
c

Simplification de l'expression [modifier]

Une fois la table de Karnaugh créée, il faut construire l'expression simplifiée en regroupant les "1" de la table par groupe ayant une taille qui soit une puissance de 2.

Pour l'exemple précédent, on peut établir les groupes suivants :

Groupe 1 [modifier]

_ _ a
_ _ b
0 1 1 0
| 0 0 1 0
c

a ET b

Groupe 2 [modifier]

_ _ a
_ _ b
0 1 1 0
| 0 0 1 0
c

b ET NON c

Résultat [modifier]

L'expression simplifiée est donc :

_ _ a
_ _ b
0 1 1 0
| 0 0 1 0
c

(a ET b) OU (b ET NON c)


Groupement circulaire [modifier]

Il faut considérer la table comme circulaire : un groupe peut se poursuivre sur le bord opposé de la table.

Exemple : Simplifions l'expression suivante :

(NON a ET NON b ET NON c et NON d) OU (a ET NON b ET NON c et NON d) OU
    (NON a ET NON b ET c et NON d) OU (a ET NON b ET c et NON d)

La table de Karnaugh et la suivante :

_ _ a
_ _ b
1 0 0 1
| 0 0 0 0
| | 0 0 0 0
| 1 0 0 1
c d

On simplifie l'expression en trouvant le groupe suivant :

_ _ a
_ _ b
1 0 0 1
| 0 0 0 0
| | 0 0 0 0
| 1 0 0 1
c d

NON b ET NON d