Graphes de décision binaires



Documents pareils
Techniques d analyse de circuits

Intégrale et primitives

STI2D Logique binaire SIN. L' Algèbre de BOOLE

Synthèse de cours (Terminale S) Calcul intégral

Chapitre 2 Le problème de l unicité des solutions

FONDATION CLEMENTINE ET MAURICE ANTILLE

L'algèbre de BOOLE ou algèbre logique est l'algèbre définie pour des variables ne pouvant prendre que deux états.

Théorème de Poincaré - Formule de Green-Riemann

RadioCommunications CDMA

LICENCE DE MATHÉMATIQUES DEUXIÈME ANNÉE. Unité d enseignement LCMA 4U11 ANALYSE 3. Françoise GEANDIER

Algorithmes sur les mots (séquences)

Correction de l épreuve CCP 2001 PSI Maths 2 PREMIÈRE PARTIE ) (

Séquence 8. Probabilité : lois à densité. Sommaire

La plateforme Next Generation Mini guide

SYSTEME DE TELEPHONIE

McAfee Firewall Enterprise Control Center

LANGAGES - GRAMMAIRES - AUTOMATES

Notes de révision : Automates et langages

Chapitre VI Contraintes holonomiques

GABARIT À PÊNE DORMANT ÉLECTRONIQUE

Tout ce qu il faut savoir en math

Probabilités sur un univers fini

- Phénoméne aérospatial non identifié ( 0.V.N.I )

semestre 3 des Licences MISM annnée universitaire

INSTRUCTIONS POUR L INSTALLATION ET LE FONCTIONNEMENT DES SERRURES À POIGNÉE BÉQUILLE

COMPARAISON MULTIPLICATIVE DE GRANDEURS. schéma CE2 CM1 CM2

Cours d Analyse IV Suites et Séries de fonctions

Licence M.A.S.S. Cours d Analyse S4

COURS D ANALYSE. Licence d Informatique, première. Laurent Michel

Exercices - Fonctions de plusieurs variables : corrigé. Pour commencer

Chapitre 11 : L inductance

l appareil et vérifier les composants Module tambour-cartouche de toner (pré-installé)

Outils pour un. partenariat. renouvelé. entre propriétaires et gestionnaires. résidences sociales et logements-foyers

Compte rendu de la validation d'un observateur cascade pour la MAS sans capteurs mécaniques sur la plate-forme d'essai de l'irccyn

Turbine hydraulique Girard simplifiée pour faibles et très faibles puissances

ANALYSE NUMERIQUE NON-LINEAIRE

L élia 40% 13% Chaudière gaz à condensation. Son secret : Chauffage et Eau Chaude Sanitaire Murale ou sol Cheminée ou ventouse

Structures algébriques

LITE-FLOOR. Dalles de sol et marches d escalier. Information technique

TOUT CE QU IL FAUT SAVOIR POUR LE BREVET

BASE DE BIOÉTHIQUE SECTION 1 : SYLLABUS PROGRAMME D ÉDUCATION EN ÉTHIQUE

McAfee Firewall Enterprise, Multi Firewall Edition

AVENTICUM. Petit guide actif pour découvrir l ancienne capitale de l Helvétie romaine cycle 2 degré 5-6 PER. Un jour à. Moi c est Camillus, et toi?

INFORMATIONS TECHNIQUES

Revue des Sciences et de la Technologie - RST- Volume 5 N 1 / janvier 2014

L éditorial. rapport d activité Francis Daumas. décembre 2014 éditorial

Groupe symétrique. Chapitre II. 1 Définitions et généralités

Format UNIMARC Bibliographique abrégé

l'appareil et vérifiez les composants Cartouches d'encre incluses [x4] CD-ROM d'installation CD-ROM de documentation

Etude de fonctions: procédure et exemple

Introduction à la modélisation et à la vérication p. 1/8

essais dossier Oser s équi Prothèses auditives

Université Paris-Dauphine DUMI2E. UFR Mathématiques de la décision. Notes de cours. Analyse 2. Filippo SANTAMBROGIO

Statuts ASF Association Suisse Feldenkrais

3- Les taux d'intérêt

CTC Generic LITHO FLEXO. PANTONE a mm/dd/yy xxxxxx. PANTONE a mm/dd/yy xxxxxx PANTONE a mm/dd/yy xxxxxx.

Informatique III: Programmation en C++

Chapitre 1 : Fonctions analytiques - introduction

ANALYSE : FONCTIONS D UNE VARIABLE RÉELLE

Équations différentielles et systèmes dynamiques. M. Jean-Christophe Yoccoz, membre de l'institut (Académie des Sciences), professeur

Théorème du point fixe - Théorème de l inversion locale

Influence du milieu d étude sur l activité (suite) Inhibition et activation

Avant d utiliser l appareil, lisez ce Guide de référence rapide pour connaître la procédure de configuration et d installation.

Wieland-Werke AG, Ulm, Allemagne Février 2012

AUTOUR D UN MÉMOIRE INÉDIT : LA CONTRIBUTION D HERMITE AU DÉVELOPPEMENT DE LA THÉORIE DES FONCTIONS ELLIPTIQUES. Bruno BELHOSTE (*)

Module 2 : Déterminant d une matrice

ManSafe. pour les Utilitiés. La Protection antichute pour les Industries de l'energie. Français. TowerLatch LadderLatch

Comment évaluer la qualité d un résultat? Plan

Conseils et astuces pour les structures de base de la Ligne D30

Relation d ordre. Manipulation des relations d ordre. Lycée Pierre de Fermat 2012/2013 Feuille d exercices

Classeur courtier d assurance. Comment organiser son activité et se préparer à un contrôle

De même, le périmètre P d un cercle de rayon 1 vaut P = 2π (par définition de π). Mais, on peut démontrer (difficilement!) que

La protection différentielle dans les installations électriques basse tension

Guide des bonnes pratiques

Electrovanne double Dimension nominale Rp 3/8 - Rp 2 DMV-D/11 DMV-DLE/11

Conditions Générales d Assurances Edition

Thèse Présentée Pour obtenir le diplôme de doctorat en sciences En génie civil Option : structure

Le canal étroit du crédit : une analyse critique des fondements théoriques

I. RACINE CARREE D UN NOMBRE POSITIF : La racine carrée d un nombre positif a est le nombre positif noté a dont le carré est a.

Pour développer votre entreprise LES LOGICIELS EN LIGNE, VOUS ALLEZ DIRE OUI!

PRÉPARATIFS NOTIONS ÉLÉMENTAIRES DE COUTURE POINTS DE COUTURE COURANTS ANNEXE. Manuel d instructions. Machine à coudre informatisée

a et b étant deux nombres relatifs donnés, une fonction affine est une fonction qui a un nombre x associe le nombre ax + b

Directives COV et alternative lipochimique : peintures, encres, nettoyage, dégraissage...

Guide d'utilisation Easy Interactive Tools Ver. 2

Guide pratique. L emploi des personnes handicapées

TUBES ET PROFILS CREUX

NEWS PRO ACTIV. [Juillet 2015] Ce mois-ci on vous parle de. L arrêté est applicable à compter du 1er Juillet 2015.

La pratique institutionnelle «à plusieurs»

Partie 4 : La monnaie et l'inflation

Quatrième partie IV. Test. Test 15 février / 71

LOGICIEL FONCTIONNEL EMC VNX

3 Approximation de solutions d équations

Chapitre 3. Mesures stationnaires. et théorèmes de convergence

/HVV\VWqPHVFRPELQDWRLUHV

Développements limités, équivalents et calculs de limites

Projet INF242. Stéphane Devismes & Benjamin Wack. Pour ce projet les étudiants doivent former des groupes de 3 ou 4 étudiants.

Production statistique: passage d une démarche axée sur les domaines à une démarche axée sur les processus

Cours Premier semestre

Chapitre 3: TESTS DE SPECIFICATION

Transcription:

Chpitre 3 : Grphes de déision inires Chpitre 3 Grphes de déision inires Pour répondre u prolème posé pr l roissement de l tille des fontions logiques à triter (grnd nomre de fontions, de monômes et de vriles), de nouvelles tehniques de représenttion des fontions ooléennes ont été développées. Elles sont générlement sées sur l réursivité du théorème de Shnnon et non plus sur les théorèmes hituels du lul ooléen. Les Grphes de Déision Binires (BDD pour Binry Deision Digrm) sont des modèles de représenttion prtiulièrement effies pour représenter et mnipuler de telles fontions logiques. Ils ont été introduits pr Akers en 978. En 986, Brynt propose les OBDD (Ordered Binry Deision Digrm), une représenttion nonique des BDD insi que des lgorithmes pour luler effiement les opértions ooléennes sur es strutures de données. 3.. Arres de déision inire Les rres de déision inires onstituent un modèle de représenttion des fontions ooléennes. Un rre de déision inire est un rre orienté omposé d une rine, de sommets intermédiires et de sommets terminux vlnt ou. L rine et les sommets intermédiires sont indexés et possèdent deux sommets fils, un fils guhe et un fils droit. Le fils guhe est tteint en empruntnt l rnhe, le fils droit en empruntnt l rnhe. Un rre de déision inire est otenu en ppliqunt réursivement l première forme du théorème de Shnnon sur l ensemle des vriles de l fontion. Théorème de Shnnon (rppel): f(x,x 2,...,x i,...,x n ) = x i. f(x,x 2,...,,...,x n ) + x i. f(x,x 2,...,,...,x n ) Si e théorème est ppliqué à f pour x, puis ux deux sous-fontions otenues pour x 2, et insi de suite jusqu à x n, on peut réliser un rre de déision inire. Exemple : f(,,) =.. +. f(,,) =.f(,.) +.f(,,) f(,,) =. f(,,) = f(,,) =.f(,.) +.f(,,) f(,,) = f(,,) = f(,,) =.f(,,) +.f(,,) f(,,) = f(,,) = f(,,) =. f(,,) +.f(,,) f(,,) =

Chpitre 3 : Grphes de déision inires f(,,) = f(,,) =.f(,.) +.f(,,) f(,,) = f(,,) = f(,,) =.f(,,) +.f(,,) f(,,) = f(,,) = f(,,) =. f(,,) +.f(,,) f(,,) = f(,,) = Ces reltions peuvent être exprimées sous forme d rre de déision inire de l fçon suivnte : Figure 3.. Arre de déision inire ssoié à l fontion f = + Notons qu il est possile de réduire l tille de l rre en s rrêtnt dns l pplition du théorème de Shnnon dès que l on se trouve en présene d une onstnte ou. Ainsi, dns l exemple préédent nous voyons que f(,,)=, est à dire que f= quelle que soit l vleur qui ser ssignée à. En s rrêtnt à e niveu dns l pplition du théorème de Shnnon, l rre de déision inire ssoié à l fontion f devient: Figure 3.2. Arre de déision inire simplifié ssoié à l fontion f = + 3.2. Digrmmes de déision inires (BDD) Après s onstrution, un rre de déision inire peut être réduit pr trnsformtion en un grphe ylique orienté ppelé grphe de déision inire (BDD). En effet, nous vons pu remrquer qu un rre de déision

Chpitre 3 : Grphes de déision inires inire peut posséder des feuilles, voir des sous-grphes identiques. L représenttion peut être simplifiée en ne onservnt qu une seule représenttion des feuilles et sous-grphes onernés, et en remplçnt les utres feuilles et sous-grphes pr un r vers le premiers. Le grphe de déision inire insi otenu peut églement être réduit pr élimintion des sommets redondnts, est à dire des sommets ynt un fils guhe et un fils droit identique. Figure 3.3. Rédution pr élimintion des feuilles et sous-grphes identiques Figure 3.4. Rédution pr élimintion sommets redondnts En herhnt et remplçnt tous les sous-rres équivlents d un digrmme de déision inire, on otient le digrmme de déision inire miniml pour l ordre orrespondnt des vriles (ROBDD pour Redued Ordered BDD). Il est importnt de noter que pour un ordre donné de vriles, le grphe de déision inire miniml est unique. Cette uniité peut évidemment être utilisée pour montrer l équivlene de deux expressions logiques. Remrques : - L omplexité de l proédure de rédution d un BDD est O(nlog(n)). - L struture du BDD (et en prtiulier s tille) dépend de l ordre dns lequel sont onsidérées les vriles. Ainsi, pour deux ordres différents, les BDD peuvent être de tilles très différentes. 3

Chpitre 3 : Grphes de déision inires niveu = niveu = 2 niveu = 3 niveu = niveu = 2 niveu = 3 Figure 3.5. OBDDs et ROBDD de l fontion f = (+). Figure 3.6. ROBDD de l fontion f = (+). sous l'ordre,,. 3.3. Constrution des BDDs Afin de grntir l noniité de l représenttion, les ontrintes suivntes sont imposées : - hque vrile ne peut pprître qu une fois u plus sur hque hemin entre l rine et une feuille - les vriles sont ordonnées de telle fçon que si un sommet de lel x i un fils de lel x j lors ord(x i ) < ord (x j ) Il y 2 strtégies priniples de onstrution des BDDs :

Chpitre 3 : Grphes de déision inires - de l rine vers les feuilles (top-down). Cette méthode est utilisée lorsque on prt d une formule lgérique - des feuilles vers l rine (ottom-upp) lorsque l on prt d une desription struturelle du iruit. 3.3.. Méthode top-down On utilise l formule de Shnnon. Exemple : soit f(,,)= + ve ord()<ord()<ord() - Si l on fit l expnsion pr rpport à on otient l Fig.3.7. - En fisnt l expnsion pr rpport à on otient l Fig.3.7. - En fisnt l expnsion pr rpport à on otient l Fig.3.7. ' ' ) ) ) Figure 3.7. Constrution du BDD de l fontion f = + 3.3.2. Méthode ottom-up Le niveu d une formule est défini pr : - les vriles d entrée sont de niveu - hque sous-formule f=g<op>h un niveu égl à Mx (niveu(g), niveu(h)) + Méthode pour onstruire le BDD d une fontion f de n vriles :. onstruire les BDD des vriles 2. onstruire les BDDs des formules de niveu à l ide de l fontion : ppliquer (f : BDD, f2 : BDD, opérteur <Op>) : BDD 3. répéter l étpe 2 jusqu à e que tous les niveux soient onsidérés. Pr exemple si f = xy + z : on onstruit les BDD de x, y et z puis elui de x.y puis elui de x.y + z. 3.4. Opértions logiques entre deux fontions représentées pr BDD Les opértions logiques ppliles sur les BDD on été définies pr Brynt. Ces opértions sont les opértions de omplémenttion, de test d implition, de ET logique, de OU logique, et de OU Exlusif. L lgorithme permettnt de déterminer le BDD résultnt d une opértion logique entre deux fontions est sé sur l pplition réursive du théorème de Shnnon. 5

Chpitre 3 : Grphes de déision inires Etnt donné deux fontions f et g, un opérteur Op et un ordre des vriles on : f<op>g = x i.(f/x i = <Op> g/x i = ) + x i.(f/x i = <Op> g/x i =) Le BDD résultnt d une opértion logique entre deux fontions peut être onçu à prtir des deux BDD originux en ppliqunt l proédure suivnte : Considérer les sommets rines des BDD. En fontion de l nture de es deux sommets, ppliquer réursivement l une des règles suivntes. Itérer le proessus jusqu à l génértion des sommets terminux. R : Si les deux sommets Sf et Sg sont des sommets terminux lors le sommet résultnt est un sommet terminl de vleur Vleur(Sf) <Op> Vleur(Sg). R2 : Si le sommet Sf est un sommet terminl mis ps le sommet Sg, réer le sommet Sg en lui ssoint omme fils droit le résultt de l omprison (Sg, fils droit de Sf) et omme fils guhe le résultt de l omprison (Sg, fils guhe de Sf). R3 : Si ni le sommet Sf ni le sommet Sg ne sont des sommet terminux lors : R3. : Si Sf et Sg représentent l même vrile, réer un sommet représentnt l vrile en lui ssoint omme fils droit le résultt de l omprison (fils droit de Sg, fils droit de Sf) et omme fils guhe le résultt de l omprison (fils guhe de Sg, fils guhe de Sf). R3.2 : Si Sf et Sg ne représentent ps l même vrile, réer un sommet S représentnt l vrile intervennt l première dns l ordonnnement onsidéré (S=min[ord(Sf), ord(sg)] en lui ssoint omme fils droit (guhe) le résultt de l omprison entre le fils droit (guhe) de min[ord(sf), ord(sg)] et l utre sommet (mx[ord(sf), ord(sg)]). Remrque : Etnt donné deux fontions f et g dont les BDD respetifs ont n et m sommets. En termes d ppels réursif, l omplexité de l proédure d pplition d une opértion entre es deux BDD est 2.n.m. R: op => <op> R2: op => R3.: op => d e d e R3.2: op => d e f d Figure 3.8. Illustrtion des règles de ominisons de BDD

Chpitre 3 : Grphes de déision inires Remrque : Etnt donné deux fontions f et g dont les BDD respetifs ont n et m sommets. En termes d ppels réursifs, l omplexité de l proédure d pplition d une opértion entre es deux BDD est 2.n.m. Remrque : Cette méthode permet (outre les opértions) : - de onstruire un BDD de fçon sendnte, - de luler l inverse d une fontion en fisnt "f " - de luler une implition f => f2 <=> not ( f. not(f2)) Exemple : Soit les fontions f(,,) = '+' et g(,,) =. représentées pr leurs BDD. Construire le BDD de l fontion h(,,) = f(,,) + g(,,). n n2 m m2 n3 n4 m3 m4 f(,,) = '+' g(,,) =. (n3,m) (n3,m2) (n3,m3) (n,m) (n2,m) (n2,m3) (n2,m2) (n3,m3) (n3,m4)(n3,m3) (n4,m3)(n3,m3) (n4,m4) h(,,) = f(,,) + g(,g,) h(,g,) près rédution Figure 3.9. Opértion entre deux BDD 7

Chpitre 3 : Grphes de déision inires 3.5 Implnttion informtique des BDD L struture informtique permettnt de représenter un BDD peut être un tleu tel que hque ligne omporte 3 hmps : un hmps «Identifiteur» permettnt d identifier le sommet dns le BDD, un hmps Ar_ donnnt l dresse du fils guhe du sommet en question et un hmps Ar_ donnnt l dresse du fils droit. Identifiteur Ar_ Ar_ - - - - Vrile sommet i Adresse sommet guhe Adresse sommet droit Exemple : soit une fontion f(,,) = ' + ' +. 2 3 4 5 6 7 Figure 3.. BDD de l fontion f = ' + ' +. Le BDD de l fontion f peut se représenter informtiquement pr le tleu suivnt : - - - - 2 3 4 3 5 4 6 7 5 6 7 3.6. Algorithme de rédution des BDD L lgorithme de rédution d un BDD pour ojetif de supprimer les sommets redondnts et les sous-grphes isomorphes. Le prinipe de lgorithme est le suivnt : Fire id(v) = pour hque feuille v ve vleur (v) = ;

Chpitre 3 : Grphes de déision inires Fire id(v) = pour hque feuille v ve vleur (v) = ; Initiliser le ROBDD ve 2 feuilles ve id = et id = ; Nextid = ; /* Nextid = identifiteur suivnt disponile */ Pour (i = n to ve i=i-) { V(i) = { v V / niveu(v) = i }; Pour hque v V(i) { if (id(guhe(v)) = id (droit(v)) { /* sommet redondnt */ id(v) = id(guhe(v)) enlever v de V(i)} else lef(v) = id (guhe(v)), id (droit(v)) } /* l lef est définie omme l pire d identifiteurs des fils*/ nienne_lef =, ; Pour hque v V(i) trié selon l lef { if lef(v) = nienne_lef id(v) = nextid /* le grphe de rine v est redondnt */ else { Nextid++; id(v)=nextid; nienne_lef = lef (v); jouter v u ROBDD ve des rs llnt ux sommets dont l id est égle à eux de guhe(v) et droit(v)) }}} L figure 3. donne un exemple d pplition de et lgorithme de rédution d un BDD. niveu = id=4 id=4 niveu = 2 niveu = 3 2 id=3 3 id=2 id=3 4 id=2 5 id=2 id=2 id= id= id= id= id= id= id= Figure 3.. Constrution du ROBDD de l fontion f = (+) 3.7. Applitions diretes des BDD 3.7.. Evlution d une fontion représentée sous forme de BDD Etnt donnée une ssigntion des vriles d entrées d une fontion f, l vleur de l fontion f peut être trouvée en trversnt le BDD depuis l rine jusqu à une feuille en empruntnt l rnhe guhe ou droite de 9

Chpitre 3 : Grphes de déision inires hque sommet selon l vleur de l vrile d entrée orrespondnt. Dns le pire s, le BDD orrespondnt à une fontion f de n vriles est omposé de 2 n - sommets. De plus, le nomre de rnhes entre l rine et une feuille est u plus égl à n. L omplexité d une proédure d évlution d une fontion, est à dire de trversée d un BDD depuis s rine jusqu à une feuille est O(n). L représenttion sous forme de BDD d une fontion f permet de trouver rpidement une ominison des entrées telles que f= ou telle que f=. L proédure permettnt de trouver une solution x de f(x) = ( = ou ) est en O(n). 3.7.2. Equivlene de 2 fontions Puisque pour un ordre donné le ROBDD d une fontion est unique, pour que 2 fontions soit identiques, il suffit que leurs ROBBDs respetifs soient isomorphes. 3.7.3. Cofteurs Pour otenir le ofteur pr rpport à x i il suffit de supprimer le sommet x i et de lier les sommets pointnt sur x i u fils droit de x i. Pour otenir le ofteur pr rpport à x i il suffit de supprimer le sommet x i ' et de lier les sommets pointnt sur x i u fils guhe de x i f f ' Figure 3.2. BDD des ofteurs 3.7.4. Preuve de tutologie Une fontion simple est une tutologie si elle est toujours égle à. Démontrer qu une fontion est une tutologie est reltivement simple en élornt l rre de déision inire de l fontion. En effet, une ondition néessire et suffisnte pour qu une fontion soit une tutologie est que tous les sommets terminux (feuilles) de l rre de déision inire villent (uun sommet terminl à ). Exemple : L fontion f(,,) = '.. +.. +.' + ' est une tutologie r tous les sommets terminux de l rre de déision inire sont à.

Chpitre 3 : Grphes de déision inires Figure 3.3. Arre de déision inire de l fontion f =.. +.. +. + Pour démontrer qu une fontion est ou n est ps une tutologie, on peut risonner de l mnière suivnte: Si l un des s suivnts est déteté, il est possile d rrêter le tritement, l fontion n est ps une tutologie. - Toutes les vriles de F sont monoformes, - Une vrile monoforme est présente dns tous les monômes, - L somme des tilles (dns le sens nomre de points ouverts) des monômes est inférieure à 2n. (rppel : un monôme de p termes ouvre 2(n-p) points) Si uune des onditions préédentes n est remplie, réliser l rre de déision inire. Pour simplifier le tritement, on pourr ppliquer le théorème suivnt : Théorème : Soit f une ouverture monoforme pr rpport à une vrile x (f=x.g + h), h le sous-ensemle de f ne dépendnt ps de x. f est une tutologie si et seulement si h est une tutologie. Preuve : Soit f monoforme en x: f=x.g + h () : h = => f = don h tutologie => f tutologie (2) : f tutologie => f = quelque soit l vleur de x Si x=, f = h => h = Ainsi, on pourr églement onsidérer les vriles de l mnière suivnte: - Si des monômes sont omposés d une seule vrile prendre es vriles en premier, - Si une vrile x pprît toujours sous s forme direte, ne ps ontinuer le grphe sur l rnhe (f = <=> f x' = ) puisque f = x.f x + f x' ve f x' indépendnt de x. - Si une vrile x pprît toujours sous s forme omplémentée, ne ps ontinuer le grphe sur l rnhe (f = <=> f x = ) puisque f = f x + x.f x' ve f x indépendnt de x. Exemple : Soit l fontion f(,,) = '.. +.. +.' + '. - Il existe des vriles iformes - Auune vrile monoforme n est présente dns tous les monômes - L somme des tilles des monômes (++2+4=8) n est ps inférieure à 2 n. L rre de déision inire doit être rélisé. Un monôme est onstitué d une seule vrile (') => ser pris en premier. Auune vrile n pprît uniquement sous s forme normle ou uniquement sous s forme omplémentée.

Chpitre 3 : Grphes de déision inires Figure 3.4. Arre de déision inire de l fontion f = '.. +.. +.' + ' Exemple2 : Soit l fontion f(,,) =.' +. +..' +. - Il existe des vriles iformes - Auune vrile monoforme n est présente dns tous les monômes - L somme des tille des monômes (2+2+2+2=8) n est ps inférieure à 2 n. L rre de déision inire doit être rélisé. L vrile est monoforme direte, ne ps développer suivnt l rnhe. Figure 3.5. Arre de déision inire l fontion f =.' +. +..' +. Exemple3 : Soit l fontion f(,,) =.' + ' +. +.' - Il existe des vriles iformes. - Auune vrile monoforme n est présente dns tous les monômes. - L somme des tille des monômes (++2+4=8) n est ps inférieure à 2 n. L rre de déision inire doit être rélisé. L vrile est monoforme direte, ne ps développer suivnt l rnhe.

Chpitre 3 : Grphes de déision inires Figure 3.6. Arre de déision inire de l fontion f =.' + ' +. +.' 3.7.5. Test d'inlusion Svoir si un monôme est inlus dns l expression de l fontion, est à dire ouvert pr une fontion, peut être un prolème omplexe. Le théorème d inlusion permet de rmener e prolème à une prolème de preuve de tutologie sur des ofteurs. Rppel du théorème d inlusion : Une expression F ontient un monôme m si et seulement si le ofteur de F pr rpport à m (F m ) est une tutologie. m F F m = Exemple : Soit l fontion f(,,) =. +. + ' Cherhons à svoir si le monôme est ouvert pr ette expression. L onstrution du BDD de l fontion f représenté sur l figure 3.7 nous permet de onlure imméditement à l inlusion (omme onfirmé pr lz tle de Krnugh) f f Figure 3.7. Arre de déision inire de l fontion f 3

Chpitre 3 : Grphes de déision inires 3.8. Représenttion des multi-fontions L représenttion des multi-fontions peut se fire soit en rélisnt un BDD pr fontion, soit on prtgent des sous-rres. Cette dernière possiilité peut onduire à un gin de ple onséquent. Exemple : f(,) =. ' f2(,) = f3(,) = ' f4(,) = + ' f f2 f3 f4 Figure 3.8. BDD d'une multi-fontion L représenttion informtique d un tel BDD peut être : - - - - 2 3 f3 4 3 f 5 2 3 f2 6 3 f4 3.9. Mnipultion des ROBDDs : fontion ITE On peut mnipuler simplement les ROBDD à l ide de l fontion ITE (f,g,h) (if then else) définie pr : ITE (f,g,h) = f.g + f.h (i.e. If f Then g Else h) Soit x l première vrile (i.e. Ord(x) = ) de f,g,h. Soit z = ITE (f,g,h). L fontion z est ssoiée u sommet de vrile x et dont les fils implntent : ITE(f x, g x, h x ) et ITE (f x, g x, h x ).

Chpitre 3 : Grphes de déision inires On : z = x.z x + x.z x = x.(f.g + f h) x + x.(f.g + f h) x = x.(f x. g x + f x h x ) + x (f x.g x + f x.h x ) = ITE (x, ITE (f x, g x, h x ), ITE (f x, g x, h x )) Identités remrqules : ITE (f,,) = f ITE (,g,h) = g ITE (,g,h) = h ITE (f,g,g) = g ITE (f,,) = f De plus toutes les opértions hituelles peuvent être trduites en terme d opérteur ITE : => => f => f f => ITE (f,,) f.g => ITE (f,g,) f.g => ITE (f,g,) f g => ITE (f,,g) f g => ITE (f,g,g) f + g => ITE (f,,g) (f+g) => ITE (f,,g ) f + g => ITE (f,,g ) f + g => ITE (f,g,) (f.g) => ITE (f,g,) Exemple : Constrution du ROBDD à l ide de l fontion ITE. Soit f(,,) =. +. et l ordre (,,). Soit les ROBDDs de, et sur l figure suivnte 3.9. Le ROBDD de. est lulé omme ITE (,, ). Le ROBDD de. est otenu pr ITE (,, ) Le ROBDD de f est otenu pr : f = ITE (,, ) = ITE (, ITE(,,.), ITE (,,.)) = ITE (,,.). L vrile top est, l rnhe guhe est le ROBDD de. et l rnhe droite est le ROBDD de. De plus puisque il y dns le ROBBD de. un sommet, e sommet est utilisé pour noter l rnhe guhe. Le résultt est dérit sur l figure 3.9. 5

Chpitre 3 : Grphes de déision inires Figure 3.9. ROBDDs de, et. ROBDDs de., de. et de f =. +. Algorithme : ITE(f,g,h) { if (s terminl) /* -àd ou figurnt dns l tle lulée */ return ( r = résultt trivil) else { if ( l tle-lulee une entrée {(f,g,h),r} ) /* déjà lulé */ return (r à prtir de l tle-lulée) else { x = vrile top de f, g, h ; t = ITE (fx, gx, hx); e = ITE (fx, gx, hx ); if ( t == e) /* fils guhe et droit isomorphes */ return (t); r = trouve-ou-joute-dns-tle (x, t, e); /* jout r à tle*/ mise--jour-tle-lulee ve {(f,g,h), r}; return (r); } } } } Cet lgorithme utilise deux tles : Tle et Tle_lulee. Tle est un tleu dont hque ligne représente un sommet (-à-d le tleu préédent). Ses olonnes sont l identifiteur du sommet, le nom de l vrile ssoiée, l identifiteur du fils guhe et l identifiteur du fils droit. Tle-lulée est utilisée pour élérer l lgorithme. Elle mémorise pour hque triplet (f,g,h) le sommet implntnt ITE (f,g,h).

Chpitre 3 : Grphes de déision inires Exemple : l Tle orrespondnt à l exemple de l Figure 3.2. est l suivnte : Clef Identifiteur Vrile Fils guhe Fils droit 4 3 2 3 2 2 id=4 id=3 id=2 id= id= Figure 3.2. ROBDD et tle-unique 3.. Ordre des vriles L'ordre peut euoup influer sur le tille (nomre de nœuds) du BDD. L reherhe de l'ordre optiml est un prolème NP-omplet. En prtique on peut reherher l'ordre optiml jusqu'à 2 vriles. Pour plus de vriles on utilise des heuristiques Règles empiriques : Prendre en priorité. Les vriles qui ontrôlent le plus l fontion - Vriles pprissnt sous l même forme dns tous les monômes - Vriles onstitunt un monôme à elles seules - Vriles d ourrene mximle 2. les groupes de vriles ynt une reltion "prohe". Exemple : f = x x 2 + x 3 x 4 +x 5 x 6 +x 7 x 8 Si on prend l'ordre x,x 2,x 3,...,x 8 => 8 sommets pour 8 vriles Si on prend l'ordre x, x 8, x 2, x 7,... => 3 (2 n/2+ -2) sommets Exemple : un multiplexeur 8 voies (,...,7) ve 3 its de ontrôle (,,2). Ordre,,2,,,..., 7 => 7+8 sommets Ordre,,...,7,,,2 => 2 sommets 7

Chpitre 3 : Grphes de déision inires 3.. Comprison ve d utres représenttions Le tleu suivnt donne l omplexité de ertins lgorithmes en fontion du type de représenttion des fontions logiques. non F SIGMA - PI Glois BDD O ( f f /2+ ) O () O () f => g O ( ( f + g ) ( f + g ) /2+ ) O ( f * g ) log( f * g )) O ( f * g ) f <=> g O ( ( f + g ) ( f + g ) /2+ ) O ( f + g ) log( f + g )) O ( f * g ) f et g O ( f * g ) O ( f * g ) log( f * g )) O ( f * g ) f ou g O ( f + g ) O ( f * g ) log( f * g )) O ( f * g ) Stisftion NP-omplet O (n) O (n) Tutologie NP-omplet O () O () Dns le s d une représenttion pr BDD, dns l mjorité des s, l orne supérieure du nomre de nœuds n est ps tteinte. Cei justifie en fit l effiité des BDD ompré à d utres représenttions.