1 Théorie et s de la Topologie Algébrique Dirigée Emmanuel Haucourt (CEA-LIST) Projet PANDA 1 Jeudi 10 Octobre 2009 1 soutenu par l Agence Nationale pour la Recherche
2 Historique Théorie Partially ordered spaces (or Pospace) Eilenberg 40, Nachbin 48/65 Dijkstra 68, Coffman/Elphick/Shoshani 71, Carson/Reynolds 87 Fajstrup/Goubault/Raußen 98 d-spaces Marco Grandis 01 streams Sanjeevi Krishnan 06
Partially ordered spaces Théorie { Espace topologique X Obj Un ordre sur X dont le graphe est fermé dans X X Mor s croissantes et continues 3
4 Théorie Représentation combinatoire d un programme d après le langage Pakken/Vrijlaten de Edsger Wybe Dijkstra PaPbVaVb PbPaVbVa Va Vb Pa Pb Va Vb Pa Pb Pa Pb Va Vb Pa Pb Va Vb 18 states and 20 arrows
Une exécution du programme T 1 =PaPbVaVb T 2 =PbPaVbVa Va T 1 T 2 Vb Pa Pb Pa Pb Deadlock Pa Pb Va Vb Deadlock 5
Une autre exécution du programme T 1 =PaPbVaVb T 2 =PbPaVbVa T 1 T 2 Pa Pb Va Vb Va Vb Pa Pb Pa Pb Vb Pa Pb Va Vb Va Termination 6
Représentation géométrique Vb Va Pa Forbidden Pb Pa Pb Vb Va 7
8 Discret vs Continu Théorie
9 Le Cercle Dirigé Théorie Chemins dirigés sur un pospace X : applications continues croissantes de [0, 1] sur X { Problème z C z = 1 } Chemin dirigés : t [0, 1] e iθ(t) où θ : [0, 1] R continue croissante
d-spaces Théorie { Espace topologique X Obj Une famille dx de chemins dirigés sur X Mor s continues préservant les circulations 10
11 Streams Théorie { Espace topologique X Obj Une circulation W sur X Mor s continues préservant les chemins dirigés circulation : W ouvert de X W preordre sur W tq Vi = W i I pour tout ouvert W et tout recouvrement ouvert (V i ) i I de W
12 Directed homotopy what it is and looks like Théorie Morphism h from [0, 1] 2 to X such that U(h) is a homotopy from γ to δ β y α h(,s) h(t, ) x directed homotopy classical homotopy
13 Directed homotopy an example Théorie T 2 Vb T1 gets a and b before T2 => a=2 and b=4 T2 gets b and a before T1 => a=2 and b=3 Each of T1 and T2 gets a ressource => Deadlock with a=2 and b=1 Va b=2*b Pa b=b 1 Pb a=1 b=2 Pa Pb Vb Va a=a+1 b=b+1 T 1
Exemples de représentations géométriques de programmes parallèles Vb Vb Pb Va Pb Va Pa Pa Pa Va Pb Vb Pb Vb Pa Va 14
15 Théorie PoTop Str dtop π1 π1 π1 Cat
16 x y C[x, y] A A {σ x,y } B 1 B 1 {σ x,y } B 2 B 2 {σ x,y } C C {σ x,y } A B 1 {r x,y } A B 2 {h x,y } B 1 C {h x,y } B 2 C {r x,y } B 1 B 2 B 2 B 1 A C {u x,y, d x,y } B 2 h A r r C B 1 h
Le Cercle Dirigé Obects : S 1 Morphisms : S 1 N S 1 Identities : (x,0,x) for x S 1 y n + m m n y n z x x z m n + m + 1 17
Les outils MIEL et ALCOOL Principe de fonctionnement Principe Général Implémentation Entrées PoSix VXWORKS RTLinux 18
Les outils MIEL et ALCOOL Principe de fonctionnement Principe Général Implémentation Entrées PoSix VXWORKS RTLinux Miel Hydroml abstraction de PoSix 19
Les outils MIEL et ALCOOL Principe de fonctionnement Principe Général Implémentation Entrées PoSix VXWORKS RTLinux PROPRIÉTÉS fonctionnelles Interblocages Inatteignables Déterminisme Miel Perte de messages Scénarios Hydroml abstraction de PoSix Runtime Errors Alcool 20
21 Documentation du projet ALCOOL Théorie Principe Général Implémentation Documentation développeur/utilisateur de l outil ALCOOL
22 Théorie Principe Général Implémentation Le moteur de calcul des régions cubiques opérations disponibles : description de E (E) parenthésage E*E produit Cartésien E&E intersection E E union E/E différence!e complément up.e cône au-dessus do.e cône en-dessous in.e intérieur topologique cl.e clôture topologique cu.e enveloppe cubique bo.e frontière topologique no.e forme normale co.e forme réduite dl.e points morts da.e bassin d attraction des points morts ia.e bassin d attraction de l infini re.e sous-région atteignable mgd.e région dangeureuse mgi.e région vive gnz.e ginzu @(n) ù(n) Région vide de dimension n N Région pleine de dimension n N ]a,b[ [a,b[ ]a,b] [a,b] [a,-[ ]a,-[ {a} 9 >= Intervalles >;
Principe Général Implémentation CPO des sous-cubes d une région cubique Sous-cubes maximaux d une région cubique Une région cubique est égale à la réunion de ses sous-cubes maximaux 23
24 Théorie Principe Général Implémentation Régions cubiques vs Recouvrements cubiques une correspondance de Galois { Recouvrements cubiques } α { Régions cubiques } α ( (C i ) i=1,...,p ) := p γ C i i=1 γ ( X ) := { sous-cubes maximaux de X } Si les régions cubiques X 1 et X 2 contiennent tous les sous-cubes maximaux de α(x 1 ) et α(x 2 ), alors X 1 X 2 contient tous les sous-cubes maximaux de α(x 1 ) α(x 2 )
Principe Général Implémentation Complémentaire d une région cubique un exemple dans le plan 25
Principe Général Implémentation Quelques exemples d utilisations de fonctions fournies par le module Area.ml futur cone might go infinity might go deadlock deadlock attractor 26
Catégorie des composantes du drapeau suisse Principe Général Implémentation Vb Va Pa Pb Pa Pb Vb Va 27
Catégorie des composantes du drapeau suisse 3D Principe Général Implémentation forbidden area state space the four vertical maximal cubes 28
Catégorie des composantes d un 2-semaphore Principe Général Implémentation modèle composantes 29
La catégorie des composantes des 3 philosophes Principe Général Implémentation modèle première réduction composantes 30
Principe Général Implémentation 31 Fin