chr + d + a + o operational semantics in fluent calculus
DESCRIPTION
CHR + D + A + O Operational Semantics in Fluent Calculus. November, 2007. Simple Fluent Calculus (SFC). Introduction. A many-sorted first-order language with equality Includes: Sorts: FLUENT < STATE, ACTION, SIT Functions: Predicate. Abbreviations. Foundational Axioms (F state ). - PowerPoint PPT PresentationTRANSCRIPT
Introduction
• A many-sorted first-order language with equality• Includes:
– Sorts: FLUENT < STATE, ACTION, SIT
– Functions:
– Predicate
SFC Domain Axiomatization
• State Constraints
• Unique simple Action Precondition Axiom for each function symbol with range ACTION
• A set of State Update Axioms
• Foundational Axioms (Fstate)
• Possibly further domain-specific axioms
Domain Sorts
• RULE– Ex: gcd(0) <=> true | true.
• CONSTRAINT– p(1,2,7)
• UDC < CONSTRAINT
• BIC < CONSTRAINT
• EQUATION < BIC
Domain Functions (1/2)
• S0 : SIT– The initial situation
• InGoal : CONSTRAINT FLUENT– The constraint x is in G
• InUdc : UDC FLUENT– The user defined constraint x is in U
• InBic : BIC FLUENT– The built-in constraint x is in B
BUG ,,
Domain Functions (2/2)
• InPropHistory : RULE x Seq(UDC) FLUENT– f = InPropHistory(r, p)– The propagation (r,p) is in the propagation
history
Domain Predicates (1/3)
• InQuery : CONSTRAINT– The constraint is in the initial goal (query)
• Matching : Seq(UDC) x Seq(UDC) x Set(EQUATION) x STATE – Matching(h, m, e, s)– The sequence of constraints m is in s and
matches with h generating the matching equations in e
Domain Predicates (2/3)
• RenVars : RULE x RULE x STATE – RenVars(r, rc, s)– Rc is a copy of the rule r with all variables
renamed (using names not already being used in s)
• Ex: RenVars(“p(x) q(x)”, “p(x1) q(x1)”, s)– If x1 does not appear in s
Domain Predicates (3/3)
• entails : BIC x STATE x STATE x STATE – entails(s, c, s’+, s’-)– s’ = (s - s’-) o s’+
– CT |= (s ^ c s’)
• entails : STATE x Set(EQUATION) x Set(BIC)– entails(s, h, g)– CT |= s \exists x(h ^ g)
Domain Actions
• Solve: BIC ACTION
• Introduce: UDC ACTION
• Simplify: RULE x Seq(UDC) ACTION
• Propagate: RULE x Seq(UDC) ACTION
• Simpagate: RULE x Seq(UDC)x Seq(UDC) ACTION
Nondeterminism in Fluent Calculus
• Simple disjunctive state update axiom
– θn is a first-order formula without terms of any reserved sort
Domain Sorts
• CHOICE < CONSTRAINT– (a1 ; ... ; an), where a1, ..., an are sets of
CONSTRAINT– CHOICE = Set(Set(CONSTRAINT))
Domain Functions
• Just : CONSTRAINT x Set(JUSTIFICATION) FLUENT– Just(c,j)– The constraint c is justified by the justifications
in j
• JustSet : Set(CONSTRAINT) x STATE Set(JUSTIFICATION)
Domain Predicates
• entails : STATE x BIC x Set(FLUENT) x Set(FLUENT)– Assumptions:
• every change in the built–in constraint store should be justified
Domain Actions
• AddConstraint : CONSTRAINT x JUSTIFICATION ACTION
• RemoveConstraint : Set(JUSTIFICATION) ACTION
Domain Sorts
• FATOM < FMOLECULE < UDC
• CANDIDATE– CLASS_CANDIDATE < CANDIDATE
• CLASS x CLASS x FEATURE x VALUE
– OBJECT_CANDIDATE < CANDIDATE• OBJECT x CLASS x FEATURE x VALUE
Domain Predicates
• ValidTaxonomy : STATE• TaxonomyCompletion : STATE x STATE• FeaturesCompletion : STATE x STATE• Candidate: CANDIDATE x STATE
– ObjCandidate : OBJECT_CANDIDATE x STATE
– ClassCandidate : CLASS_CANDIDATE x STATE
– Candidate = ObjCandidate ClassCandidate
• Overriden : CANDIDATE x STATE
Domain Predicates
• JustifiedCandidate: CANDIDATE x Set(JUSTIFICATION) xSTATE– JustifiedObjCandidate : OBJECT_CANDIDATE x
Set(JUSTIFICATION) x STATE
– JustifiedClassCandidate : CLASS_CANDIDATE x Set(JUSTIFICATION) x STATE
– JustifiedCandidate = JustifiedObjCandidate JustifiedClassCandidate