Modeling and Reasoning in Event Calculus

Modeling and Reasoning in Event Calculus

9 Oct, 2019 [LOPSTR’19] Modeling and Reasoning in Event Calculus Using Goal-Directed Constraint Answer Set Programming Joaqu´ınArias1,2 Zhuo Chen3 Manuel Carro1,2 Gopal Gupta3 1IMDEA Software Institute, 2Universidad Politecnica´ de Madrid 3University of Texas at Dallas madrid institute for advanced studies in software development technologies www.software.imdea.org Introduction Example: Commonsense Reasoning (CR) • Requires modelling: • Non-monotonicity. • Continuous (i.e., non-discrete) characteristics of the world. • Event Calculus (EC): formalism that represents continuous change and captures law of inertia. • EC components: Narrative A description of the world we want to model. Assumes circumscription. A tap fills a vessel [Shanahan 1999]. Axioms A generic description of how the world behaves given a narrative. • Implementing EC: logic reasoning + continuous domains. madrid institute for advanced studies in software development technologies 1 / 12 www.software.imdea.org Introduction Example: Reasoning on EC: deduction / proving in first order logic (+ circumscription). Approaches • Non-interactive theorem prover: likely won’t always answer [12]. • Prolog: incomplete implementations [15; 10; 2]. • Constraint Answer Set Programming (CASP): requires grounding. • Has been used to model (discrete) EC [8; 9]. A tap fills a vessel [Shanahan 1999]. • Limited to variables ranging over discrete, finite domains. madrid institute for advanced studies in software development technologies 1 / 12 The program: Has two models: p :q. fp,:qg or fq,:pg q :p. • (Constraint) Answer Set Programming systems compute those stable models. • However, most (C)ASP systems require a grounding phase that restricts the domains and constraints supported. www.software.imdea.org (Constraint) Logic Programming + negation • A logic program P is a set of First Order Logic clauses. • Programs with negation in the body can have different, incomparable models: stable model semantics [Gelfond and Lifschitz 1988]. madrid institute for advanced studies in software development technologies 2 / 12 • (Constraint) Answer Set Programming systems compute those stable models. • However, most (C)ASP systems require a grounding phase that restricts the domains and constraints supported. www.software.imdea.org (Constraint) Logic Programming + negation • A logic program P is a set of First Order Logic clauses. • Programs with negation in the body can have different, incomparable models: stable model semantics [Gelfond and Lifschitz 1988]. The program: Has two models: p :q. fp,:qg or fq,:pg q :p. madrid institute for advanced studies in software development technologies 2 / 12 www.software.imdea.org (Constraint) Logic Programming + negation • A logic program P is a set of First Order Logic clauses. • Programs with negation in the body can have different, incomparable models: stable model semantics [Gelfond and Lifschitz 1988]. The program: Has two models: p :q. fp,:qg or fq,:pg q :p. • (Constraint) Answer Set Programming systems compute those stable models. • However, most (C)ASP systems require a grounding phase that restricts the domains and constraints supported. madrid institute for advanced studies in software development technologies 2 / 12 • Provides a constructive and sound default negation: • Make deductions in the absence of positive information. cross(T):- not train(T). • Dual rules (synthesized by s(CASP) compiler) infer conditions for goal to fail. • Provides support for classical negation. • Represent explicit (negative) knowledge. cross(T):--train(T) . • Allows rules with negated heads. -train(T):- not barrier(up,T). • Global constraints ensure consistency. :- train(T),-train(T) . www.software.imdea.org s(CASP) • Goal directed execution of CASP programs without grounding. • The execution starts with a query. ?-T #>5,T #<8, cross(T) . • Returns (partial) stable models [Gelfond and Lifschitz 1988] Only literals supporting the query. • For each successful top-down derivation, on backtracking returns: • A justification tree. Explanation for observations. • Bindings and constraints as part of the model. {T #> 5, T #< 7/3, cross(T), train(7.3)}. madrid institute for advanced studies in software development technologies 3 / 12 • Provides support for classical negation. • Represent explicit (negative) knowledge. cross(T):--train(T) . • Allows rules with negated heads. -train(T):- not barrier(up,T). • Global constraints ensure consistency. :- train(T),-train(T) . www.software.imdea.org s(CASP) • Goal directed execution of CASP programs without grounding. • The execution starts with a query. ?-T #>5,T #<8, cross(T) . • Returns (partial) stable models [Gelfond and Lifschitz 1988] Only literals supporting the query. • For each successful top-down derivation, on backtracking returns: • A justification tree. Explanation for observations. • Bindings and constraints as part of the model. {T #> 5, T #< 7/3, cross(T), train(7.3)}. • Provides a constructive and sound default negation: • Make deductions in the absence of positive information. cross(T):- not train(T). • Dual rules (synthesized by s(CASP) compiler) infer conditions for goal to fail. madrid institute for advanced studies in software development technologies 3 / 12 www.software.imdea.org s(CASP) • Goal directed execution of CASP programs without grounding. • The execution starts with a query. ?-T #>5,T #<8, cross(T) . • Returns (partial) stable models [Gelfond and Lifschitz 1988] Only literals supporting the query. • For each successful top-down derivation, on backtracking returns: • A justification tree. Explanation for observations. • Bindings and constraints as part of the model. {T #> 5, T #< 7/3, cross(T), train(7.3)}. • Provides a constructive and sound default negation: • Make deductions in the absence of positive information. cross(T):- not train(T). • Dual rules (synthesized by s(CASP) compiler) infer conditions for goal to fail. • Provides support for classical negation. • Represent explicit (negative) knowledge. cross(T):--train(T) . • Allows rules with negated heads. -train(T):- not barrier(up,T). • Global constraints ensure consistency. :- train(T),-train(T) . madrid institute for advanced studies in software development technologies 3 / 12 • State constraints are introduced to capture restrictions on the model: • Ensure consistency of the narrative w.r.t. the axioms. :- holds(F,T),-holds(F,T) . • Trajectories: a fluent depends on the time elapsed since another fluent: • The level of water level(L2) correspond directly to the time elapsed T2-T1. L2 = L1 + T2-T1 • Support for non-monotonic reasoning • EC theory includes negation in rules and infers negative knowledge. • Therefore, alternative worlds can appear. Vessel size either max_level(10) or max_level(16). www.software.imdea.org Event Calculus • EC uses a universal theory (axioms) to reason about scenarios (narrative). • An event happens at a time point. tapOn: The tap opens. • A fluent is a time-varying property of the world. filling: The vessel is being filled. • Time and/or fluents may have continuous quantities associated. level(X) Level of water. madrid institute for advanced studies in software development technologies 4 / 12 • Trajectories: a fluent depends on the time elapsed since another fluent: • The level of water level(L2) correspond directly to the time elapsed T2-T1. L2 = L1 + T2-T1 • Support for non-monotonic reasoning • EC theory includes negation in rules and infers negative knowledge. • Therefore, alternative worlds can appear. Vessel size either max_level(10) or max_level(16). www.software.imdea.org Event Calculus • EC uses a universal theory (axioms) to reason about scenarios (narrative). • An event happens at a time point. tapOn: The tap opens. • A fluent is a time-varying property of the world. filling: The vessel is being filled. • Time and/or fluents may have continuous quantities associated. level(X) Level of water. • State constraints are introduced to capture restrictions on the model: • Ensure consistency of the narrative w.r.t. the axioms. :- holds(F,T),-holds(F,T) . madrid institute for advanced studies in software development technologies 4 / 12 • Support for non-monotonic reasoning • EC theory includes negation in rules and infers negative knowledge. • Therefore, alternative worlds can appear. Vessel size either max_level(10) or max_level(16). www.software.imdea.org Event Calculus • EC uses a universal theory (axioms) to reason about scenarios (narrative). • An event happens at a time point. tapOn: The tap opens. • A fluent is a time-varying property of the world. filling: The vessel is being filled. • Time and/or fluents may have continuous quantities associated. level(X) Level of water. • State constraints are introduced to capture restrictions on the model: • Ensure consistency of the narrative w.r.t. the axioms. :- holds(F,T),-holds(F,T) . • Trajectories: a fluent depends on the time elapsed since another fluent: • The level of water level(L2) correspond directly to the time elapsed T2-T1. L2 = L1 + T2-T1 madrid institute for advanced studies in software development technologies 4 / 12 www.software.imdea.org Event Calculus • EC uses a universal theory (axioms) to reason about scenarios (narrative). • An event happens at a time point. tapOn: The tap opens. • A fluent is a time-varying property of the world. filling: The vessel is being filled. • Time and/or fluents may have continuous quantities associated. level(X) Level of water. • State constraints are introduced to capture restrictions on the model: • Ensure consistency of the narrative

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    39 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us