ALGEBRE DE BOOLE Mohamed Yassine Haouam www.univ-tebessa.dz
2.1 Algèbre de Boole Définition Système algébrique constitué de l'ensemble { 0, 1 } Variable booléenne : variable qui prend une valeur 0 ou 1 Trois opérateurs de base: Somme (+): a + b Produit (. ): a.b / ab Inverse/complémentation ( ¯ ) : Company Logo
Somme logique (+) Propriétés: Elément neutre (0): a+0 = a Complémentation: a+ā = 1 Commutativité: a+b = b+a Associativité: (a+b)+c = a+(b+c) Distributivité: a+(b.c) = (a+b).(a+c) Company Logo
Produit logique (.) Propriétés: Elément neutre (1): a.1 = a Complémentation: a.ā = 0 Commutativité: a.b = b.a Associativité: (a.b).c = a.(b.c) Distributivité: a.(b+c) = (a.b)+(a.c) Company Logo
Inverse/complémentation ( ¯ ) Propriétés Complémentation: a+ā =1 et a.ā=0 Involution : Company Logo
Théorèmes Idempotence a + a = a et a.a = a Elément absorbant Absorption a + a.b = a et a.(a + b) = a Lois de De Morgan Simplification et Company Logo
2.2 Fonctions Booléennes Définition 1 On appelle fonction booléenne de n variables, toute combinaison de ces variables au moyen des trois opérations booléennes (+, . , ¯ ). Exemple: fonction booléenne de 3 variables a, b et c Company Logo
Mintermes et Maxtermes On appelle "minterme" de n variables, l'un des produits booléens de ces variables ou de leurs complémentaires. Exemple: Si on considère 4 variables a, b, c et d, m= est un minterme, m= n’est pas un minterme. Il existe 2n Mintermes distincts pour n variables. Le symbole ‘mj’‘ est utilisé pour représenter un Minterme particulier j est égale au décimal équivalent au code binaire associé en posant 1 si une variable est présente, 0 si son complémentaire est présent. Company Logo
Mintermes et Maxtermes On appelle «Maxterme » de n variables, l’une des sommes booléennes de ces variables ou de leurs complémentaires. Exemple: Si on considère 4 variables a, b, c et d, est un Maxterme, n’est pas un Maxterme. Il existe 2n Maxtermes distincts pour n variables. Le symbole ‘Mj’‘ est utilisé pour représenter un Maxterme particulier. j est égale au décimal équivalent au code binaire associé en posant 0 si une variable est présente, 1 si son complémentaire est présent. Company Logo
Mintermes et Maxtermes Propriétés Le complémentaire d’un Minterme est un Maxterme, le complémentaire d’un Maxterme est un Minterme. Exemple: Company Logo
Mintermes et Maxtermes Company Logo
Mintermes et Maxtermes Soit f une expression booléenne écrite sous la forme d’une somme de Mintermes (respectivement d’un produit de Maxterme) alors son complémentaire est la somme de tous les Mintermes (respectivement le produit de tous les Maxtermes) qui ne figurent pas dans l’écriture de f. Exemple: Si Alors Company Logo
Formes canoniques d’une fonction Première forme: Ecrire f sous forme canonique disjonctive (ou première forme canonique) revient à l’écrire comme la somme de mintermes des n variables. Exemple: Deuxième forme: Ecrire f sous forme canonique conjonctive (ou deuxième forme canonique) revient à l’écrire comme le produit de maxtermes des n variables. Company Logo
Formes canoniques d’une fonction Détermination des formes canoniques Utiliser le calcul booléen pour avoir une forme développée, Dans chaque monôme (terme), faire apparaitre les «variables » manquantes. On s'appuie sur les propriétés de l'algèbre de Boole, et notamment les règles: a+ā =1 et a.ā=0 Exemple 1: Pour 3 variables a, b et c Exemple 2: Pour 4 variables a, b, c et d Company Logo
Formes canoniques d’une fonction Passage d’une forme canonique à une autre On utilise la règle Exemple: Company Logo
Passage de la fonction logique à la table de vérité Pour chaque combinaison de valeurs possibles pour les variables, on détermine la valeur booléenne de f. Exemple: Company Logo
Passage de la table de vérité à la fonction logique (1ère forme canonique) Pour chaque valeur de f égale à 1, On définit un minterme de toutes les variables tel que: Si une variable a = 1 on note a, sinon on note ā La première forme canonique de f(X) est la somme de ces mintermes. Exemple: A partir de la table de vérité de l'exemple précédent, f(a,b,c)= 1 quand : Company Logo
Passage de la table de vérité à la fonction logique (2ème forme canonique) Pour chaque valeur de f égale à 0, On définit un minterme de toutes les variables tel que: Si une variable a = 1 on note a, sinon on note ā la somme de ces mintermes est (X). Après calcul de on obtient 2ème forme canonique Exemple: A partir de la table de vérité de l'exemple précédent, f(a,b,c)= 0 quand : Company Logo
2.3 Simplification des fonctions Booléennes Les formes canoniques d'une fonction logique sont une définition correcte de la fonction, mais elles peuvent être simplifiées Pour écrire la même fonction avec le moins de termes et les plus simples possibles Pour réaliser la fonction avec moins d'éléments électroniques (portes logiques) Trois méthodes pour simplifier l'écriture d'une fonction logique Utiliser les propriétés de l'algèbre de Boole Utiliser la méthode des tableaux de Karnaugh Utiliser la méthode de Quine-Mc Cluskey Company Logo
Simplification des fonctions Booléennes Simplification via algèbre de Boole A partir des propriétés de l'algèbre de Boole, transformer la fonction pour la simplifier Simplifier la fonction initiale à l'aide des propriétés de l'algèbre de Boole Essayer de déduire d'autres simplifications après chaque simplification Exemple: Company Logo
En factorisant, on obtient: car ( ) Company Logo
On distribue et calcule le complément Company Logo
Simplification des fonctions Booléennes Simplification par la méthode des tableaux de Karnaugh Représentation sous une forme particulière de la table de vérité d'une fonction logique Détermination des blocs rectangulaires de taille 2n (1, 2, 4, 8...) bits adjacents à 1 On en déduit la fonction simplifiée associée à la table de vérité Company Logo
Méthode des tableaux de Karnaugh On représente un tableau à 2 dimensions Chaque dimension concerne une ou 2 variables Le passage d'une colonne à une colonne adjacente ou d'une ligne à une ligne adjacente modifie la valeur d'une seule variable Le tableau se referme sur lui-même : la colonne la plus à gauche est voisine de la colonne la plus à droite, (même chose pour les lignes du haut et du bas) Une case du tableau contient une valeur booléenne, déterminée à partir de la table de vérité et des valeurs des variables Company Logo
Méthode des tableaux de Karnaugh Regroupement en blocs rectangulaires des bits à 1 adjacents Tous les bits à 1 du tableau doivent être englobés dans au moins un bloc (un bloc à une taille de 1, 2, 4, 8 ... bits) Un bit à 1 peut appartenir à plusieurs blocs On doit créer les blocs les plus gros possibles chaque bloc correspond un terme formé comme suit: Pour le bloc, si une variable prend les valeurs 0 et 1, on ne la prend pas en compte On ne conserve que les variables qui ne varient pas. Si une variable a reste à 1 : on note a, si reste à 0 : on note ā Le terme logique du bloc correspond au produit de ces variables qui ne changent pas La fonction logique simplifiée est la somme de tous les termes des blocs trouvés Company Logo
Méthode des tableaux de Karnaugh tableau de Karnaugh pour 2 variables: 2 groupes de 2 bits adjacents : Le groupe vertical: on a toujours b = 1 donc cela donne le terme b Pour l’horizontal: on a toujours a = 1 donc cela donne le terme a f(a, b) = a+b Company Logo
Méthode des tableaux de Karnaugh tableau de Karnaugh pour 3 variables: Un groupe de 4 bits adjacents Le terme : a Un groupe de 2 bits adjacents Le terme: Company Logo
Méthode des tableaux de Karnaugh tableau de Karnaugh pour 4 variables: Un groupe de 8 bits adjacents Le terme: b Un groupe de 4 bits adjacents Le terme: Un groupe de 2 bits adjacents Company Logo
Méthode des tableaux de Karnaugh tableau de Karnaugh pour 5 variables: Company Logo
Simplification des fonctions Booléennes Méthode de Quine-Mc Cluskey La méthode consiste: Ecrire la fonction sous la 1ère forme canonique Utiliser la formule de simplification : Exemple: Soit la fonction logique suivante : Company Logo
Méthode de Quine-Mc Cluskey 1ère forme canonique Company Logo
Méthode de Quine-Mc Cluskey Etape 0: On classe les mintermes selon le nombre de ”1” de leur écriture : classe sans ”1”, classe avec un seul ”1”, etc... On obtient le tableau suivant : Classes Etape 0 Repère 0000 1 0010 1000 2 0011 0110 1001 1100 3 0111 1101 1110 4 1111 Company Logo
Méthode de Quine-Mc Cluskey Etape 1: On additionne chaque minterme de la classe j avec chaque minterme de la classe j+1. Lorsqu’il est possible d’utiliser la formule de simplification et d’éliminer ainsi une variable, on écrit le résultat dans la colonne Etape 1. Le symbole ”x” remplace la variable éliminée. On repère à l’aide du symbole ”1” dans la colonne repère les deux mintermes concernés afin de montrer qu’ils disparaissent de la formule Company Logo
Méthode de Quine-Mc Cluskey Classes Etape 0 Repère Etape 1 0000 1 00X0 X000 0010 1000 001X 0X10 100X 1X00 2 0011 0110 1001 1100 0X11 011X X110 1X01 110X 11X0 3 0111 1101 1110 X111 11X1 111X 4 1111 Company Logo
Méthode de Quine-Mc Cluskey Etape 2: On procède comme à l’étape précédente avec les termes des classes 0, 1, 2, etc... On inscrit dans la colonne Etape 2, les nouveaux termes obtenus. Si un terme a déjà été obtenu, on ne le réinscrit pas, par contre on marque avec des ”1”, les termes dont il est issu. Company Logo
Méthode de Quine-Mc Cluskey Classes Etape 0 Repère Etape 1 Etape 2 0000 1 00X0 X000 0010 1000 001X 0X10 100X 1X00 0X1X 1X0X 2 0011 0110 1001 1100 0X11 011X X110 1X01 110X 11X0 X11X 11XX 3 0111 1101 1110 X111 11X1 111X 4 1111 Company Logo
Méthode de Quine-Mc Cluskey Etape 3,4…: On réitère le processus jusqu’à ce qu’il n’y ait plus de simplifications. Dans l’exemple, il n’y a pas d’étape 4 et on obtient : Company Logo
Méthode de Quine-Mc Cluskey Classes Etape 0 Repère Etape 1 Etape 2 Etape3 0000 1 00X0 X000 0010 1000 001X 0X10 100X 1X00 0X1X 1X0X 2 0011 0110 1001 1100 0X11 011X X110 1X01 110X 11X0 X11X 11XX 3 0111 1101 1110 X111 11X1 111X 4 1111 Company Logo
Méthode de Quine-Mc Cluskey Les termes qui ont pour repère 0 sont les implicants premiers de f. Dans notre exemple, les implicants premiers sont: 00X0 X000 0X1X 1X0X X11X 11XX La forme simplifiée de f n’est pas optimale Company Logo
Méthode de Quine-Mc Cluskey On construit la grille de Mc Cluskey Company Logo
Méthode de Quine-Mc Cluskey Les barres verticales représentent les mintermes de la fonction f et les barres horizontales ses implicants premiers. Les mintermes construits à partir des implicants premiers sont marqués d’une croix. Lorsqu’il n’y a qu’une croix sur une ligne verticale, elle est entourée. Cela signifie que les implicants premiers correspondants doivent figurer impérativement dans l’expression simplifiée de f. On a donc: Company Logo
Méthode de Quine-Mc Cluskey On remarque ensuite qu’avec et on peut construire tous les mintermes de f sauf : Pour les couvrir on a le choix entre: ce qui donne les quatre formes simplifiées minimales de f: Company Logo
Les circuits logiques Portes logiques Une porte logique est un circuit électronique élémentaire qui Permet de réaliser la fonction d’un opérateur logique de base . Porte NOT (NON) Porte AND (ET) Porte OR (OU) Company Logo
Les circuits logiques Porte NAND Porte NOR Porte XOR (OU exclusif) A B 1 Company Logo
Les circuits logiques Schéma d’un circuit logique ( Logigramme) C’est la traduction de la fonction logique en un schéma électronique. Le principe consiste à remplacer chaque opérateur logique par la porte logique qui lui correspond. Exemple 1: Company Logo
Les circuits logiques Exemple 2: Company Logo
Définition textuelle d’une fonction logique Généralement la définition du fonctionnement d’un système est donnée sous un format textuelle . Pour faire l’étude et la réalisation d’un tel système on doit avoir son modèle mathématique (fonction logique). Donc il faut tirer ( déduire ) la fonction logique a partir de la description textuelle. Company Logo
Étapes de conception et de réalisation d’un circuit logique Pour faire l’étude et la réalisation d’un circuit il faut suivre le étapes suivantes : Il faut bien comprendre le fonctionnement du système. Il faut définir les variables d’entrée. Il faut définir les variables de sortie. Etablir la table de vérité. Ecrire les équations algébriques des sorties ( à partir de la table de vérité ). Effectuer des simplifications ( algébrique , par Karnaugh, ou par Quine-Mc Cluskey). Faire le schéma avec un minimum de portes logiques. Company Logo
Exemple : définition textuelle du fonctionnement d’un système Une serrure de sécurité s’ouvre en fonction de trois clés. Le fonctionnement de la serrure est définie comme suit : La serrure est ouverte si au moins deux clés sont utilisées. La serrure reste fermée dans les autres cas . Donner la schéma du circuit qui permet de contrôler l’ouverture de la serrure ? Company Logo
Le système possède trois entrées : chaque entrée représente une clé. On va correspondre à chaque clé une variable logique: clé 1 A , la clé 2 B , la clé 3 C Si la clé 1 est utilisée alors la variable A=1 sinon A =0 Si la clé 2 est utilisée alors la variable B=1 sinon B =0 Si la clé 3 est utilisée alors la variable C=1 sinon C =0 Le système possède une seule sortie qui correspond à l’état de la serrure ( ouverte ou fermé ). On va correspondre une variable S pour designer la sortie : S=1 si la serrure est ouverte , S=0 si elle est fermée Company Logo