Chapitre 3 Problèmes sur les machines séquentielles Nous nous intéressons ici aux manipu<strong>la</strong>tions formelles susceptibles <strong>de</strong> résoudre efficacement une <strong>la</strong>rge c<strong>la</strong>sse <strong>de</strong> problèmes portant sur les machines à états finis. Nous donnons d’abord le modèle <strong>de</strong> machine séquentielle sur lequel porteront ces manipu<strong>la</strong>tions, puis nous donnons trois grands aspects <strong>de</strong>s problèmes posés sur les machines séquentielles. Nous réduirons alors ces trois problèmes à l’étu<strong>de</strong> <strong>de</strong> quelques primitives <strong>de</strong> manipu<strong>la</strong>tion formelle, à savoir le calcul <strong>de</strong> l’image d’une fonction, le calcul <strong>de</strong> l’image réciproque d’une fonction, <strong>la</strong> minimisation combinatoire, l’élimination <strong>de</strong>s variables d’états redondantes, et le réencodage. 3.1 Modèle d’une machine séquentielle Figure 16. Modèle d’une machine séquentielle. 69
70 CHAPITRE 3. PROBLÈMES SUR LES MACHINES SÉQUENTIELLES Nous considérons ici que <strong>la</strong> machine séquentielle qui est traitée est une machine incomplètement spécifiée [75, 83]. Cette machine M est définie par un 6–uplet (n,m,r,ω,δ,Init), où : • n est le nombre <strong>de</strong> variables d’état <strong>de</strong> M. Son espace d’états est donc {0,1} n . • m est le nombre d’entrées <strong>de</strong> <strong>la</strong> machine, donc l’ensemble <strong>de</strong>s entrées qui peuvent être utilisées pour calculer les sorties et l’état successeur est {0,1} m . • ω est le vecteur <strong>de</strong>s r fonctions <strong>de</strong> sortie partiellement définies <strong>de</strong> <strong>la</strong> machine. Chacune <strong>de</strong>s fonctions du vecteur ω est une fonction <strong>de</strong> {0,1} n ×{0,1} m dans {0,1} r ⊥. • δ est <strong>la</strong> fonction <strong>de</strong> transition partiellement définie <strong>de</strong> <strong>la</strong> machine. δ est une fonction <strong>de</strong> {0,1} n ×{0,1} m dans {0,1} n ⊥, et est dénotée par un couple (Cns, ⃗ f) tel que : δ = λ⃗y.λ⃗x.(if Cns(⃗y,⃗x) = 1 then ⃗ f(⃗y,⃗x) else ⊥) Cns dénote le domaine où <strong>la</strong> fonction <strong>de</strong> transition est définie, et ⃗ f définit sur le domaine Cns <strong>la</strong> valeur <strong>de</strong> l’état successeur. Cns est une fonction booléenne <strong>de</strong> {0,1} n ×{0,1} m dans {0,1} ; ⃗ f est une fonction vectorielle [f 1 ...f n ], où chaque f k est une fonction <strong>de</strong> {0,1} n ×{0,1} m vers {0,1}. • Init est l’ensemble <strong>de</strong>s états initiaux <strong>de</strong> <strong>la</strong> machine. Si ω ne dépend que <strong>de</strong>s variables d’état <strong>de</strong> <strong>la</strong> machine, on dira que M est une machine <strong>de</strong> Moore. Sinon, on dira que M est une machine <strong>de</strong> Mealy. <strong>Une</strong> machine <strong>de</strong> Moore a un pouvoir <strong>de</strong> dénotation équivalent à celui d’une machine <strong>de</strong> Mealy, car toute machine <strong>de</strong> Mealy peut se transformer en une machine <strong>de</strong> Moore équivalente [74, 83]. La figure 17 illustre le processus d’obtention du 6–uplet qui décrit une machine séquentielle, tel qu’il est par exemple mis en oeuvre dans PÂRIS [53]. PÂRIS prend en entrée <strong>la</strong> <strong>de</strong>scription d’un réseau <strong>de</strong> machines communicantes, écrite dans le <strong>la</strong>ngage VHDL [7, 87, 41]. Un processus d’exécution symbolique, tel que celui décrit dans [19, 89, 94], permet <strong>de</strong> calculer les fonctions booléennes décrivant le comportement <strong>de</strong> chaque machine. Puis un processus <strong>de</strong> composition symbolique <strong>de</strong> machines [53] permet d’obtenir le comportement global du réseau <strong>de</strong> machines, sous <strong>la</strong> forme d’une machine <strong>de</strong> Mealy décrite par un 6–uplet (n,m,r,ω,δ,Init). Durant cette compi<strong>la</strong>tion, <strong>de</strong>s vérifications statiques sont faites pour s’assurer que le réseau <strong>de</strong> machines respecte un certain nombre <strong>de</strong> règles. Ainsi, il faut s’assurer qu’il n’y a pas <strong>de</strong> boucle fonctionnelle, sous peine d’avoir un système asynchrone. On vérifie aussi que <strong>la</strong> sémantique <strong>de</strong> VHDL n’est pas violée par une association <strong>de</strong> machines. Onappellere<strong>la</strong>tion <strong>de</strong> transition oure<strong>la</strong>tion d’accessiblilité <strong>de</strong><strong>la</strong>machineM<strong>la</strong>fonction ∆ définie <strong>de</strong> {0,1} n ×{0,1} n dans {0,1}, telle que ∆(⃗y,⃗y ′ ) = 1 si et seulement si il existe une transition <strong>de</strong> l’état ⃗y à l’état ⃗y ′ . De même, on appelle re<strong>la</strong>tion <strong>de</strong> sortie <strong>la</strong> fonction Λ définie <strong>de</strong> {0,1} n ×{0,1} r dans {0,1}, telle que Λ(⃗y,⃗z) = 1 si et seulement si à partir <strong>de</strong> l’état ⃗y <strong>de</strong> <strong>la</strong> machine, on peut produire <strong>la</strong> sortie ⃗z en acceptant une entrée. Plus
- Page 1 and 2:
THESE présentée pour obtenir le t
- Page 3 and 4:
A mes parents A Toi, si délicieuse
- Page 5 and 6:
2 2.4.4 Forme sans quantificateur d
- Page 8 and 9:
Liste de Figures Représentation de
- Page 10 and 11:
Liste de Tableaux Représentation d
- Page 12 and 13:
INTRODUCTION 9 Introduction Motivat
- Page 14 and 15:
INTRODUCTION 11 la vérification de
- Page 16 and 17:
INTRODUCTION 13 Le Chapitre 2 étud
- Page 18:
Partie I Logique propositionnelle q
- Page 21 and 22: 18 CHAPITRE 1. LOGIQUE PROPOSITIONN
- Page 23 and 24: 20 CHAPITRE 1. LOGIQUE PROPOSITIONN
- Page 25 and 26: 22 CHAPITRE 1. LOGIQUE PROPOSITIONN
- Page 27 and 28: 24 CHAPITRE 1. LOGIQUE PROPOSITIONN
- Page 29 and 30: 26 CHAPITRE 1. LOGIQUE PROPOSITIONN
- Page 31 and 32: 28 CHAPITRE 2. REPRÉSENTATION DES
- Page 33 and 34: 30 CHAPITRE 2. REPRÉSENTATION DES
- Page 35 and 36: 32 CHAPITRE 2. REPRÉSENTATION DES
- Page 37 and 38: 34 CHAPITRE 2. REPRÉSENTATION DES
- Page 39 and 40: 36 CHAPITRE 2. REPRÉSENTATION DES
- Page 41 and 42: 38 CHAPITRE 2. REPRÉSENTATION DES
- Page 43 and 44: 40 CHAPITRE 2. REPRÉSENTATION DES
- Page 45 and 46: 42 CHAPITRE 2. REPRÉSENTATION DES
- Page 47 and 48: 44 CHAPITRE 2. REPRÉSENTATION DES
- Page 49 and 50: 46 CHAPITRE 2. REPRÉSENTATION DES
- Page 51 and 52: 48 CHAPITRE 2. REPRÉSENTATION DES
- Page 53 and 54: 50 CHAPITRE 2. REPRÉSENTATION DES
- Page 55 and 56: 52 CHAPITRE 2. REPRÉSENTATION DES
- Page 57 and 58: 54 CHAPITRE 2. REPRÉSENTATION DES
- Page 59 and 60: 56 CHAPITRE 2. REPRÉSENTATION DES
- Page 61 and 62: 58 CHAPITRE 2. REPRÉSENTATION DES
- Page 63 and 64: 60 CHAPITRE 2. REPRÉSENTATION DES
- Page 65 and 66: 62 CHAPITRE 2. REPRÉSENTATION DES
- Page 67 and 68: 64 CHAPITRE 2. REPRÉSENTATION DES
- Page 69 and 70: 66 CHAPITRE 2. REPRÉSENTATION DES
- Page 74 and 75: 3.2. COMPARAISON DE MACHINES SÉQUE
- Page 76 and 77: 3.2. COMPARAISON DE MACHINES SÉQUE
- Page 78 and 79: 3.3. VÉRIFICATION DE PROPRIÉTÉS
- Page 80 and 81: 3.3. VÉRIFICATION DE PROPRIÉTÉS
- Page 82 and 83: 3.4. MINIMISATION DE MACHINES SÉQU
- Page 84 and 85: 3.4. MINIMISATION DE MACHINES SÉQU
- Page 86 and 87: 3.5. CONCLUSION 83 suivants.
- Page 88 and 89: Chapitre 4 Calcul de l’image d’
- Page 90 and 91: 4.2. CALCUL DIRECT DE IMG( ⃗ F,χ
- Page 92 and 93: 4.3. DÉCOMPOSITION DU CALCUL DE L
- Page 94 and 95: 4.3. DÉCOMPOSITION DU CALCUL DE L
- Page 96 and 97: 4.4. RESTRICTEUR D’IMAGE 93 du Th
- Page 98 and 99: 4.5. L’OPÉRATEUR “CONSTRAIN”
- Page 100 and 101: 4.5. L’OPÉRATEUR “CONSTRAIN”
- Page 102 and 103: 4.5. L’OPÉRATEUR “CONSTRAIN”
- Page 104 and 105: 4.6. CHOIX D’UNE COUVERTURE 101 l
- Page 106 and 107: 4.7. RÉSULTATS EXPÉRIMENTAUX ET D
- Page 108 and 109: 4.7. RÉSULTATS EXPÉRIMENTAUX ET D
- Page 110 and 111: 4.8. CONCLUSION 107 4.8 Conclusion
- Page 112 and 113: Chapitre 5 Calcul de l’image réc
- Page 114 and 115: 5.2. CALCUL DE PRE( F,CNS,χ) ⃗
- Page 116 and 117: 5.3. EVALUATION DE PRE( ⃗ F,CNS,
- Page 118 and 119: 5.3. EVALUATION DE PRE( ⃗ F,CNS,
- Page 120 and 121: 5.5. CONCLUSION 117 graphes de la f
- Page 122 and 123:
CONCLUSION 119 Conclusion Lavérifi
- Page 124:
Annexes 121
- Page 127 and 128:
124 ANNEXE A. TERME, RÉÉCRITURE,
- Page 129 and 130:
126 ANNEXE B. AUTRES GRAPHES TYPÉS
- Page 131 and 132:
128 ANNEXE B. AUTRES GRAPHES TYPÉS
- Page 133 and 134:
130 ANNEXE B. AUTRES GRAPHES TYPÉS
- Page 135 and 136:
132 ANNEXE C. DÉNOTATION D’ENSEM
- Page 137 and 138:
134 ANNEXE D. ENSEMBLE DE FONCTIONS
- Page 139 and 140:
136 ANNEXE D. ENSEMBLE DE FONCTIONS
- Page 141 and 142:
138 ANNEXE E. RÉDUCTION ET MINIMIS
- Page 143 and 144:
140 ANNEXE E. RÉDUCTION ET MINIMIS
- Page 145 and 146:
142 ANNEXE E. RÉDUCTION ET MINIMIS
- Page 147 and 148:
144 BIBLIOGRAPHIE [14] G. Berry,
- Page 149 and 150:
146 BIBLIOGRAPHIE [47] O. Coudert,
- Page 151 and 152:
148 BIBLIOGRAPHIE [78] J.Hsiang,“
- Page 153 and 154:
150 BIBLIOGRAPHIE [108] D. E. Ross,
- Page 155 and 156:
152 BIBLIOGRAPHIE
- Page 157 and 158:
154 INDEX ⇓ (restrict), 111, 138
- Page 159:
156 INDEX redondante, 80 vectochar,