1
Séminaire Interne Contraintes, Paris Rocquencourt 16/9/2009
1
TMT for CHRv in SFC
Pierre Deransartwith
Rafael Ferreira Oliveira
CR INRIA-Paris-Rocquencourt
16 septembre 2009
2
Séminaire Interne Contraintes, Paris Rocquencourt 16/9/2009
2
Development Methodology of a Generic Trace for CHRv based on the Simple Fluent
Calculus
• Development Methodology: Trace Meta-Theory (TMT)
• Constraint Handling Rules with Disjunction (CHRv)
• Simple Fluent Calculus (SFC)
3
Séminaire Interne Contraintes, Paris Rocquencourt 16/9/2009
3
1. TMT , Generic Trace Development
2. SFC (short introduction)
3. CHRv semantics in SFC (t)
4. OS of CHRv in SFC
5. GT Development, next steps
4
Séminaire Interne Contraintes, Paris Rocquencourt 16/9/2009
4
Trace Meta Theory
Pierre Deransart, Mireille Ducassé and Gérard Ferrand, Observational Semantics of the Resolution Box Model, Proceedings of the 17th Workshop on Logic-based Methods in Programming Environments (WLPE'07), 2007, eds.Wim Vanhoof and Patricia Hill, Porto, Portugal
Pierre DeransartConception de traces et applications (vers une méta-théorie des traces), Progress reports on http://hal.inria.fr/ (last march 2009)
Followup work of OADymPPaC Project (2001-2004)Outils d'Analyse Dynamique Pour la Programmation Par Contrainteshttp://contraintes.inria.fr/OADymPPaC
5
Séminaire Interne Contraintes, Paris Rocquencourt 16/9/2009
5
TMT, Generic Trace Development
1. Valid for several processes
2. Usable by several analysers
3. Easy to extend and to standardize
4. Generic trace: generic query language
5. Several levels of analysis (abstr/subtrace)
Objectives
6
Séminaire Interne Contraintes, Paris Rocquencourt 16/9/2009
6
(Full) Actual Trace Twt = <s0,wt*>
Unbounded sequence of trace events wt (t > 0)
wt : (t, at)
•t : chrono: « time » of the trace
•at: set of attributes
or current full actual state
Interpretative Semantics (IS):
Tvt = I(Tw
t)
7
Séminaire Interne Contraintes, Paris Rocquencourt 16/9/2009
7
(Full) Virtual Trace Tvt = <(s0,)et*>
Unbounded sequence of trace events(t > 0)
et: (t, rt, st)
•t: chrono: timestamps of the trace event
•rt: type of trace event: an identifier characterizing the type of action which produced the transition st-1 to st
rt belongs to a finite set R.
•st = p1,t..., pn,t : set of parameter values at chrono t. st is the current virtual state
Observational Semantics (OS):
Twt = E(Tv
t)
8
Séminaire Interne Contraintes, Paris Rocquencourt 16/9/2009
8
The two traces of a process
•Virtual Trace TV = <S0,et*> OS
•Actual Trace TA = <S0,wt*> IS
TV
Tw
IE
E: extraction
I: interpretation (reconstruction)
E ° I = I ° E = i
Illustration
(Informal equations)
Condition to satisfy: (faithfulness)
Twt = E(Tv
t) et Tvt = I(Tw
t)
9
Séminaire Interne Contraintes, Paris Rocquencourt 16/9/2009
9
Sémantique Observationnelle (“Labelled Transition System”)
SO: < S, R, E, T, S0 > où
• S ensemble des états virtuels,
• R est un ensemble fini de type d’évènements de trace
• T fonction de transition d’état T : R x S -> S
• E fonction d’extraction de l’événement de trace lors d’une transition E : R x S -> A
• S0 ensemble des états initiaux I S
10
Séminaire Interne Contraintes, Paris Rocquencourt 16/9/2009
10
Sémantique Observationnelle (représentation)
Schéma de règle de transition:
TypeAction : {un identificateur r}
ActionCond : { Conditions d'exécution de l'action, portant sur l'état virtuel courant : une formule logique du premier ordre utilisant des prédicats sur les paramètres }
Extcond : { Conditions d'exécution de l'action faisant intervenir des variables externes à l'état (donc non décrite dans le modèle).
Sera dite condition externe ou influence}
VSEffect : { Effet de l'action r sur l'état courant s, résultant en un nouvel état s’ }
Etrace : { Trace produite par l'action r : l'état actuel extrait a}
11
Séminaire Interne Contraintes, Paris Rocquencourt 16/9/2009
11
Idealized (biologically unrealistic) rabbit population (Fibonacci)
SO: < S, R, E, T, S0 >
< N*, {mg}, E, T, {[1,1]} >
st = [popu(0,…,popu(t),popu(t+1)], s0 = [1,1]
TypeAct : {Mg (monthly growing)}
ActionCd : {true}
Extcond : {true}
VSEffect : {s’= s [plast(s)+last(s)] } (T)
Etrace : {last(s’)} = w = E(r,s)
Tv5 = <[1,1],[(1,Mg,[1,1,2]), (2, Mg,[1,1,2,3]),…,
(4, Mg,[1,1,2,3,5,8]),(5, Mg,[1,1,2,3,5,8,13])]>
Tw5 = <[1,1],[(1,2),(2,3),(3,5),(4,8),(5,13)]>
I(Twt)= et =(t,Mg,[1,1,a1, a2,…, at-1, at])
12
Séminaire Interne Contraintes, Paris Rocquencourt 16/9/2009
12
1. TMT , Generic Trace Development
2. SFC (short introduction) and OS in SFC
3. CHRv semantics in SFC (t)
4. OS of CHRv in SFC
5. GT Development, next steps
13
Séminaire Interne Contraintes, Paris Rocquencourt 16/9/2009
13
Fluent Calculus
M. Thielscher, Introduction to the fluent calculus,Electronic Transactions on Artificial Intelligence, 1998, pp 179--192, v 2, n 3-4, http://www.ep.liu.se/ej/etai/1998/006/
14
Séminaire Interne Contraintes, Paris Rocquencourt 16/9/2009
14
FC interesting because…
• Easy expression of OS: the idea of trace is “naturally” contained in the notion of situation
• Logical proofs become simpler in the SFC (less deductions, at least for “direct closed” effects)
• A solution to the “frame problem” (persistence of unafected partial state)
• Symetry of “state axioms” allows forward and bakward reasonning (useful for proofs of faithfulness)
15
Séminaire Interne Contraintes, Paris Rocquencourt 16/9/2009
15
Simple Fluent Calculus(Partial) state: set of fluents
Fluents
Actions
16
Séminaire Interne Contraintes, Paris Rocquencourt 16/9/2009
16
Simple Fluent Calculus (ctd)
17
Séminaire Interne Contraintes, Paris Rocquencourt 16/9/2009
17
OS in SFC As many pairs of axioms as there are action types
The actual trace is in the situation
18
Séminaire Interne Contraintes, Paris Rocquencourt 16/9/2009
18
OS of Fibonacci in SFC
19
Séminaire Interne Contraintes, Paris Rocquencourt 16/9/2009
19
Frame Problem
20
Séminaire Interne Contraintes, Paris Rocquencourt 16/9/2009
20
1. TMT , Generic Trace Development
2. SFC (short introduction) and OS in SFC
3. CHRv semantics in SFC (t)
4. OS of CHRv in SFC
5. GT Development, next steps
21
Séminaire Interne Contraintes, Paris Rocquencourt 16/9/2009
21
CHRv semantics in SFC (vt)
Marcos Aurélio Almeida da Silva, CHORD: Constraint Handling Object-Oriented Rules with Disjunctions, Mestrado Thesis, Feb 2009
Gregory J.Duck, Peter Stuckey, Maria Garcia de la Banda, Christian Holzbaur, The refined Operational Semantics of CHR, In Proceedings of the 20th International Conference on Logic Programming (ICLP’04), pp 90-104, Saint-Malo, France, 2004, Springer Verlag
22
Séminaire Interne Contraintes, Paris Rocquencourt 16/9/2009
22
Different semantics of CHR (t r vt v
r)
3 actions for CHR t semantics (th. Oper. Sem.) solve, introduce, apply
6 actions for CHR r semantics (refined. Oper. Sem.) solve, activate, reactivate, drop, simplify, propagate
3 actions for CHR vt semantics (th. Oper. Sem.)
derive, clean, split
8? actions for CHR vr semantics
23
Séminaire Interne Contraintes, Paris Rocquencourt 16/9/2009
23
CHR semantics in SFC (t)6 parameters (virtual state)
Initial state:S0 = Goal(Q) o Udcs([])o InBics(true) o InPropHistory([]) o NextId(1)
24
Séminaire Interne Contraintes, Paris Rocquencourt 16/9/2009
24
CHR semantics in SFC (t)
25
Séminaire Interne Contraintes, Paris Rocquencourt 16/9/2009
25
CHR semantics in SFC (t)
26
Séminaire Interne Contraintes, Paris Rocquencourt 16/9/2009
26
CHR semantics in SFC (t)
27
Séminaire Interne Contraintes, Paris Rocquencourt 16/9/2009
27
CHR semantics in SFC (t) (ctd)
28
Séminaire Interne Contraintes, Paris Rocquencourt 16/9/2009
28
1. TMT , Generic Trace Development
2. SFC (short introduction) and OS in SFC
3. CHR semantics in SFC (t)
4. OS of CHR in SFC (t)
5. GT Development, next steps
29
Séminaire Interne Contraintes, Paris Rocquencourt 16/9/2009
29
OS of CHR in SFC (t)6 parameters (virtual state)
30
Séminaire Interne Contraintes, Paris Rocquencourt 16/9/2009
30
OS of CHR in SFC (t) (ctd)
31
Séminaire Interne Contraintes, Paris Rocquencourt 16/9/2009
31
OS of CHR in SFC (t) (ctd)
32
Séminaire Interne Contraintes, Paris Rocquencourt 16/9/2009
32
1. TMT , Generic Trace Development
2. SFC (short introduction) and OS in SFC
3. CHR semantics in SFC (t)
4. OS of CHR in SFC
5. GT Development, next steps
33
Séminaire Interne Contraintes, Paris Rocquencourt 16/9/2009
33
CONCLUSIONGT Development, next steps
1. CHRv refined operational semantics in SFC (vr): 8 basic
actions
2. Interpretative semantics (reconstruction function in SFC?)
3. Proof methods of OS/IS properties using SFC and Flux
4. Equivalente specification in OOSFC (Object Oriented SFC) using the platform CHROME-REF
5. Implementation in Java and tests
34
Séminaire Interne Contraintes, Paris Rocquencourt 16/9/2009
34
Top Related