Sémantique d'Esterel1 Sémantique dEsterel t, P b t, E t instruction au début de linstant t instruction à la fin de linstant P signaux présents E signaux émis b booléen de terminaison (vrai = terminé)
Sémantique d'Esterel2 Instructions de base nothing pause emit nothing, P vrai nothing, {} pause, P faux nothing, {} emit S, P vrai nothing, {S}
Sémantique d'Esterel3 Séquence la partie gauche ne termine pas la partie gauche termine t;u, P faux t;u, E t, P faux t, E t;u, P b u, E+E t, P vrai t, E u, P b u, E
Sémantique d'Esterel4 Parallélisme terminaison globale quand les 2 branches terminent t || u, P b1 et b2 t || u, E+E t, P b1 t, E u, P b2 u, E
Sémantique d'Esterel5 Boucle boucle infinie loop t end, P b t;loop t end, E t, P b t, E (boucle instantanée = pas de réécriture)
Sémantique d'Esterel6 Présence/absence présence absence b t, E b present S then t else u end, P t, P S dans P b u, E present S then t else u end, P u, P S pas dans P b
Sémantique d'Esterel7 Préemption premier instant instants suivants b t, P b t, E abort t when S, P b u, E b present S else abort t when S end, P abort t when immediate S, P abort t when immediate S, E
Sémantique d'Esterel8 Signaux locaux hypothèse de présence hypothèse dabsence b t, P+S b t, E signal S in t end, Psignal S in t end, E S dans E b t, P-S b t, E signal S in t end, Psignal S in t end, E S pas dans E E semblable à E, sauf pour S qui est défini par P
Sémantique d'Esterel9 Programme correct present S then emit T end, {S} signal S in present S then emit T end || emit S end, {} emit T, {S} nothing, {S,T} vrai nothing, {S,T} vrai present S then emit T end || emit S, {S}nothing, {S,T} vrai emit S, {S} nothing, {S} vrai nothing, {T} vrai present S then emit T end, {} signal S in present S then emit T end || emit S end, {} nothing, {} vrai nothing, {} vrai present S then emit T end || emit S, {}nothing, {S} vrai emit S, {} nothing, {S} vrai ? present S then emit T end || emit S
Sémantique d'Esterel10 Non-déterminisme present S then emit S; emit T end, {S} signal S in present S then emit S; emit T end end, {} emit T, {S} nothing, {S,T} vrai nothing, {S,T} vrai emit S, {S} nothing, {S} vrai nothing, {T} vrai present S then emit S; emit T end, {} signal S in present S then emit S; emit T end end, {} nothing, {} vrai nothing, {} vrai nothing, {} vrai present S then emit S end
Sémantique d'Esterel11 Absence de solution present S else emit S end present S else emit S; emit T end, {}nothing, {S} vrai emit S; emit T, {} nothing, {S, T} vrai present S else emit S; emit T end, {S} signal S in present S else emit S; emit T end end, {} nothing, {} vrai nothing, {S} nothing, {} vrai ? signal S in present S else emit S; emit T end end, {} ? emit S, {} nothing, {S} vrai emit T, {} nothing, {T} vrai
Sémantique d'Esterel12 Solutions non-causales... present S then emit T end; emit S present S then emit T end, {S} signal S in present S then emit T end; emit S end, {} emit T, {S} nothing, {S,T} vrai nothing, {S,T} vrai present S then emit T end; emit S, {S}nothing, {S,T} vrai emit S, {S} nothing, {S} vrai nothing, {T} vrai Cest la seule solution : le programme est accepté
Sémantique d'Esterel13 Conclusion Sémantique opérationnelle comportementale abstraite (macro-step) : une réécriture = un instant simple : structurelle Mais : nexprime pas comment trouver la solution accepte des programmes non-causaux inefficace
Sémantique d'Esterel14 Conclusion - 2 La réaction retardée à labsence (instant suivant) permet déliminer les problèmes de causalité : 0 ou plusieurs solutions, ou 1 solution mais non-causale Privilégier la solution où le signal est absent (pour éliminer les solutions non-causales) Sémantique concrète exprimant comment calculer la solution Programmation réactive