Modèles du Vrai
Parallélisme

Eric Goubault
Commissariat à l'Energie Atomique, Saclay
email: Eric.Goubault@cea.fr
http://www.di.ens.fr/~goubault
http://www.enseignement.polytechnique.fr/profs/informatique/
Eric.Goubault

avec Pierre-Louis Curien (PPS)
James Leifer (INRIA Rocquencourt)
Jean-Jacques Lévy (INRIA Rocquencourt)
Catuscia Palamidessi (INRIA Futurs)

Exemple d'adjonction




Foncteur inclusion ST TS adjoint à gauche de Unfold: TS ® ST: Unfold(T=(S,i,L,Tran))=(S',i',L,Tran') avec, (en fait, coréflexion, on oublie les boucles - application: préservation des produits)

Systèmes de transition asynchrone



Définition 1   Un système de transition asynchrone est un quintuplet (S,i,E,I,Tran),

Condition (3)






Condition (4)






Morphismes




Ce sont les morphismes de systèmes de transition f préservant la relation d'indépendance:
a I b Þ f(a) I' f(b)

Produit cartésien




Soient T0=(S0,i0,E0,I0,Tran0) et T1=(S1,i1,E1,I1,Tran1) deux systèmes de transitions asynchrones. Leur produit T0 × T1 est (S,i,E,I,Tran) où, Exercice: montrer que cela est bien un produit cartésien

Coproduit




Soient T0=(S0,i0,E0,I0,Tran0) et T1=(S1,i1,E1,I1,Tran1) deux systèmes de transitions asynchrones. Leur coproduit T0 + T1 est (S,i,E,I,Tran) où, Système de transition concurrent


Définition 2   Un système de transition concurrent (CTS) est une structure (G,­),

Suite


soumis aux conditions suivantes, L'axiome du cube





Morphismes



Définition 3   Un morphisme de systèmes de transition concurrent est une paire de fonctions r=(rO,rA): (O,A,dom,cod,id,­) ® (O',A',dom',cod',id',­') telle que,

Automates de trace




Un automate de trace est un triplet A=(E,Q,T), Automates de Trace



Tout cela est soumis aux conditions suivantes, Equivalence par permutation et résidus





Idée similaire!

Langages de traces


Reflexion (ou on oublie la structure de branchement - sl adjoint à gauche de ls)

Traces de Mazurkiewicz non-généralisées


Equivalence de traces



Soit (M,L,I) un langage de trace. Pour s,t Î M on définit @ comme la plus petite relation d'équivalence t.q.
sabt @ sbat
si aI b, pour tout sabt,sbat Î M.

On appelle {s}
@ une trace de M.

Un exemple


Un exemple


SYS=(VM | VM' | C) \ {b,c,c1,c2,t}
Système de transition



En suppose la synchronisation possible sur a? et a! donnant l'action observable a:

Langage de trace


Ordre partiel sur les traces



(ne voit pas que le système peut avoir un point mort après que C fasse c2! - il faudrait différencier les 2 types de c2)

Propriétés


Les traces de Mazurkiewicz généralisées


Définition 4   Un language de traces généralisé est un triplet (M,I,L) où,

Suite




tel que, si on définit @ comme la plus petite relation d'équivalence sur L* telle que sabu @ sbau si a Is b, et, Morphismes


Définition 5   Mazurkiewitz trace language!morphism of Soient (M,I,L) et (M',I',L') deux langages de trace généralisés. Une fonction partielle l: L ® L' est un morphisme de (M,I,L) vers (M',I',L') ssi,

Relations systèmes de transitions asynchrones/langages de traces


Relations systèmes de transitions asynchrones/langages de traces

tla et atl forment une adjonction...

Structures d'événements




Une structure d'événements première est une structure (E,£,#) où E est un ensemble d'événements partiellement ordonné par £ appelé relation de dépendance causale et où # Í E × E est une relation symétrique irreflexive, la relation de conflit satisfaisant, On écrit e co e' ssi ¬ (e £ e' ou e' £ e ou e # e').

Morphismes



Définition 6   Soit S={E,£,#} et S'={E',£',#'} des structures d'événements premières. Un morphisme de structures d'événe--ments de S vers S' est une fonction partielle f: E ® E' telle que,

NB: si f est définie, alors f préserve co.



Exemple





Ensemble de configurations




Soit (E,£,#) une structure d'événements. D(E,£,#) est l'ensemble des configurations de E, sous-ensembles x Í E de E qui sont, On définit la configuration particulière é e ù={e'Î E | e' £ e}. On définit D0 les configuration finies.

Propriétés


Relation avec les systèmes de transition



Soit e Î E et c Î D(E,£,#) alors e est permis en la configuration c, ce que l'on écrit par c |- e si, Les configurations finies sont des traces quand on ordonne ses éléments avec la dépendance causale. {e1 < e2 < ... < en} est une garantie pour c ssi {e1,...,ei-1} |- ei pour i=1,...,n. On écrit aussi les garanties comme des chaines e1... en.

Relation avec les systèmes de transition




Soient x,x' Î D(E,£,#). On écrit
x ®e x' Û eÏx & x'=xÈ{e}

Exemple: un interrupteur parallèle






Exemple: les configurations correspondantes






Propriétés catégoriques




Référence: Voir G. Winskel et al. (Models of Concurrency, Handbook in Logic in Computer Science, Vol.3).

Avec ces définitions, il est possible d'avoir des algèbres de modèles avec des équivalents pour les produits synchronisés etc.

Exercices



This document was translated from LATEX by HEVEA.