12.07.2015 Views

Calcul des etats atteignables de programmes Esterel partitionne ...

Calcul des etats atteignables de programmes Esterel partitionne ...

Calcul des etats atteignables de programmes Esterel partitionne ...

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

58 CHAPITRE 4. NOTATIONSalors Surface (N,E) (Y) est définie <strong>de</strong> la manière suivante :Surface (N,E) (Y) = µ(λX → Y ∪ (Succ (N,E) (X) P)) (4.20)La définition <strong>de</strong> cette fonction <strong>de</strong>meure correcte même si tous les éléments <strong>de</strong> Y ne sont pas <strong>de</strong>type pause.4.3 Une relation d’ordre pour les frontières du grapheCette section a pour but <strong>de</strong> formaliser les idées présentées à la section 3.5.1. Il s’agit <strong>de</strong>donner un ordre statique, a priori idéal pour une exploration exhaustive <strong><strong>de</strong>s</strong> états <strong>atteignables</strong>,et partiel sur l’ensemble <strong><strong>de</strong>s</strong> frontières du graphe.4.3.1 NotationsNous cherchons ici à définir formellement une relation d’ordre stricte notée “≺” entre lesfrontières du graphe. Cette relation nous permet <strong>de</strong> définir un ordre pour l’ouverture <strong><strong>de</strong>s</strong>frontières. Ainsi, si x et y désignent <strong>de</strong>ux frontières, alors le prédicat : «la frontière x doitêtre ouverte avant la frontière y» s’écrit :x ≺ yCette relation d’ordre se construit avec l’ai<strong>de</strong> <strong>de</strong> l’arbre syntaxique et complète l’informationdonnée par le graphe <strong>de</strong> flot <strong>de</strong> contrôle. L’arbre syntaxique ne permet pas <strong>de</strong> définir directementune relation entre les frontières puisque l’arbre ne se compose que d’instructions, autrement dit<strong>de</strong> noeuds. Ainsi, si u et v sont <strong>de</strong>ux instructions, alors nous cherchons avant tout à définir unprédicat : «l’accès à l’instruction u doit être ouvert avant l’accès à l’instruction v». Le prédicats’écrit <strong>de</strong> la même manière que précé<strong>de</strong>mment :u ≺ vDès lors, dire que l’accès à l’instruction u doit être ouvert avant l’accès à l’instruction v estéquivalent à dire que tout arc-frontière menant à u doit être ouvert avant tout arc-frontièremenant à v, quelle que soit l’origine <strong><strong>de</strong>s</strong> arcs. Ceci s’écrit :u ≺ v ⇐⇒ (x↦→u) ≺ (y↦→v) ∀x, ∀y (4.21)De cette manière, décrire une relation entre les noeuds <strong>de</strong> l’arbre est strictement équivalent àdécrire implicitement une relation entre les frontières du graphe. Par commodité, nous définissonségalement l’opérateur “Δ qui permet <strong>de</strong> définir <strong><strong>de</strong>s</strong> relations d’ordre à partir d’ensembles<strong>de</strong> noeuds. Ainsi, si U et V sont <strong>de</strong>ux ensembles <strong>de</strong> noeuds, alors l’opérateur “Δ est défini <strong>de</strong>la manière suivante :4.3.2 Définition structurelleU Î V ⇐⇒ u ≺ v ∀u ∈ U, ∀v ∈ V (4.22)La séquence. Comme il est écrit dans la section 3.5.1, dans un programme séquentiel <strong>de</strong> laforme P ; Q, toutes les frontières <strong>de</strong> P doivent être ouvertes avant n’importe quelle frontière<strong>de</strong> Q.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!