Gerald Steinbauer Institute for Software Technology
|
|
- Francine Walton
- 5 years ago
- Views:
Transcription
1 Situation ti Calculus l and Golog Institute for Software Technology 1
2 Recap Situation Calculus Situation Calculus allows for reasoning about change and actions a dialect of the second-orderorder logic uses the concept of situations allows for proving properties solves the frame problem Basic Action Theory implements the situation calculus Foundation Axioms & Action Precondition & Successor Sate Ai Axioms &Ui Unique Name Assumption 2
3 Sates versus Situations situations are different to states they contain a history of what happened so far snapshots of properties of the world are retrieved by fluents, i.e. what predicates hold in a situation two situations are different if their sequence is different the state of fluents may be the same 3
4 Situation Tree do(a n,s 0 ) a n a 3 a 2 a n a 1 S 0 a 3 a 2 do(a n,do(a 1,S 0 )) a 1 do(a 1,S 0 ) a n a 3 a 2 a 1 4
5 Regression related to the projection problem does a sentence hold for some future situation used for automated reasoning and planning in the SC sketch: prove if sentence W is entailed by BAT W mention a relational fluent F(x1,,xn,do(a,σ)) xn successor state axiom F(x 1,,x n,do(a,s)) F (x 1,,x n,a,s) obtain W by substituting F by F eliminating complex situation do(a, σ) from W W is closer to S 0 as W repeat the substitution until W 0 uniform in S 0 now one can prove W in the initial database 5
6 Regressable Formulas a formula W in the situation calculus is regressable iff 1. situation terms mentioned in W are of the form do([α 1,,α n ],S 0 ) 2. for atoms of form Poss(α,s) mentioned in W α has the form A(t 1,,t n ) and is an action function 3. W does not quantify over situations 4. W does not mention the predicate symbol nor any equality atom σ=σ for situations 6
7 Examples for Regressable Formulas 1. Poss(walk(A,B)S 0 ) Poss(enter(office(Sue)),do(walk(A,B),S 0 )) Poss(giveCoffee(Sue),do([walk(A,B),enter(Office(Sue))],S enter(office(sue))] S 0 ) 2. ( a,a ).ontable(a,do(a,s 0 )) ( x).x A ontable(x,do([a,a ],S 0 )) Regressable? Poss(a,S 0 ) holding(x,do(pickup(a),s)) NO NO 7
8 Regression Operator 1. if W is situation-independent or a relational fluent F(τ,S 0 ) [W]=W 2. if W is a regressable Poss(A(t),α) atom and Poss(A(x),s) A (x,s) [W]= [ [ A (x,s)] 3. if W is a relational fluent F(t,do(α,σ)) and F(x,do(a,s)) (, F F( (x,a,s), [W]= [ F (x,a,s)] 4. [ W]= [W] [W 1 W 2 ]= [W 1 ] [W 2 ] [( v)w]=( v) [W] 8
9 Some Results from Regression if D is a basic action theory and W is a regressable sentence then, D W iff D D S 0 una [W] executable(s)= a,s s*.do(a,s s*) s Poss(a,s s*) D executable(do([a1,,an],s 0 )) iff D D S α ]S 0 una [Poss(αi,do([α 1,,α i-1 ],S 0 ))] [Poss(α 1,do([],S 0 ))] 9
10 Planning yet we cannot derive in which situation s a goal sentence G(s) holds s can be seen as a plan (a sequence of actions) started in situation S 0 iff D G(do([α 1,, α 1 ],S 0 ) we looking for an appropriate situation s a planning algorithm is needed 10
11 A very simple (naive) planner 1. test if goal G holds in initial situation S 0, if so return empty sequence of actions 2. if not set n=1 3. generate all sequences of actions of length n where the preconditions are satisfied 4. test if goal G holds in any of the situation generated by the sequences, if so return appropriate sequence of actions 5. if not increment n and continue with 3 11
12 coffee delivery robot go to a person serve a person S 0 : person(alice), person(bob) Lets Plan G(s)=served(Alice,s) 12
13 Golog 13
14 Golog Situation Calculus is yet only a theoretical construct Golog (algol for Logic) is based on the Situation Calculus it is a program language for dynamic systems it allows a balance between reasoning/planning i and imperative programming (i.e., planning is expensive) it allows complex actions there exist Prolog interpreters for Golog 14
15 Golog a Golog program is based SC it uses the macro Do(,s,s ) Do(,s,s ) will be macro-expand to a SC formula the formula Do states that s is reachable from s by executing the program the syntax supports primitive and complex actions 15
16 Primitive Action: a Golog Syntax (1) has a precondition Poss and the effects are modeled in the successor state axioms walk(r,l) Test action: φ?? tests if φ holds in a situation, does not change the situation ( ( x,y).nextto(x,y))? ( x,y).nextto(x,y))? Sequence: 1 ; 2 executes 1 and 2 one after each other walk(r,l);pickup(r,k) 16
17 Golog Syntax (2) Non-deterministic Choice of Actions: 1 2 (randomly) action 1 or 2 will be executed walk(r,a) walk(r,b) Non-deterministic Choice of Arguments: (π x) (x) (randomly) choose an argument x for the action (π x)pickup(r,x) Non-deterministic Iteration: * executes for a not defined number of times (n 0) (pickup(r,l);drop(r,l))* 17
18 Golog Syntax (3) Conditionals: if then 1 else 2 endif based on the truth value of either 1 or 2 is executed if low_battery(r) then recharge(r) else walk(r,party) endif Loops: while do endwhile as long as is true repeat action while low_battery(r) do pickup(r,l);drop(r,l) endwhile Procedures: proc P(x) endproc defines the procedure P with the parameters x proc d(n) (n=0)? d(n-1) endproc 18
19 On the Semantics of Golog Golog programs are macro-expanded to Situation Calculus formulas using the macro Do(,s,s ) what is the meaning of Golog and a program D (,s).do(,s S 0,s) Goals(s) the Basic Action Theory entails some program leads to the situation s from S 0 that satisfied the goals drawback: the macros are less expressive a program trace can be obtained by a constructive ti proof of the above sentence some properties are provable: e.g., termination 19
20 Semantics of Golog Parts (1) Primitive Action: a Do(a,s,s )=Poss(a[s],s) s =do(a[s],s) a[s] denotes restoring of all situation arguments in the functional fluents mentioned in a a=goto(location(sam)), a[s]=goto(location(sam,s)) Test action: φ? Do(?,s,s )= [s] s=s [s] denotes restoring of all situation arguments in the fluents mentioned in =( x).ontable(x), [s]=( x).ontable(x,s) Sequence: 1 ; 2 Do( 1 ; 2,s,s) ss )=( s ) ). Do( 1,s,s ss ) Do( 2,s s,s) s ) 20
21 Semantics of Golog Parts (2) Non-deterministic Choice of Actions: 1 2 Do(( 1 2 ),s,s )=Do( 1,s,s ) Do( 2,s,s ) Non-deterministic Choice of Arguments: (π x) (x) Do((π x) (x),s,s )=( x)do( (x),s,s )) Non-deterministic Iteration: * Do( *,s,s )=( P).{ s1.p(s 1,s 1 ) s 1,s 2,s 3.[P(s 1,s 2 ) Do(,s 2,s 3 ) P(s 1,s 3 )]} P(s,s ) 21
22 Semantics of Golog Parts (3) Conditionals: if then 1 else 2 endif expressed by the previous constructs Do(if then 1 else 2 endif)=do([?: 1?: 2 ],s,s) ss ) Loops: while do endwhile expressed by the previous constructs Do(while do endwhile,s,s )=Do(((?; )*;?),s,s ) 22
23 Semantics of Golog Parts (4) A Program: proc P 1 (x 1 ) 1 endproc; ;proc P n (x n ) n endproc; 0 a sequence of procedure declarations plus a main program a sequence of procedure declarations plus a main program 0 we define Do(P(t 1,,t n )ss )=P(t ),s,s)=p(t 1 [s],,t n [s],s,s) s s ) defines a procedure call t i [s] denotes the evaluation of t i in situation s before passing to P represents a call by value Do({ proc P1 ( v1) 1 endproc; ; proc Pn ( vn) n endproc; 0}, s, s ) n ( P1,, Pn ). ( s1, s2, vi ). Do( i, s1, s2) Pi ( vi, s1, s2 i 1 Do ( 0, s, s ) ) 23
24 =(π x)a(x);?;[b(x) C(x);?] Do(,S 0,s)? A Simple Example ( x).( s 1 ).Poss(A(x),S 0 ) s1=do(a(x),s 0 ) ( s 2 ). [s 1 ] s 1 =s 2 [Poss(B(x),s 2 ) s=do(b(x),s 2 ) ( s 3 ).Poss(C(x),s s 2 ) s 3 =do(c(x),s 2 ) [s 3 ] s 3 =s] ( x).poss(a(x),s 0 ) [do(a(x),s 0 )] [Poss(B(x), do(a(x),s 0 )) s=do(b(x),do(a(x),s 0 )) Poss(C(x), do(a(x),s 0 )) [do(c(x),do(a(x),s 0 ))] s=do(c(x) do(c(x),do(a(x),sdo(a(x) 0 ))] two possible traces: do(b(x),do(a(x),s 0 )), do(c(x),do(a(x),s 0 )) assuming and holds in the related situations 24
25 Situation Calculus vs. Golog Programs Situation Calculus and Golog Programs are related macro expansion uses the basic action theory (e.g., preconditions and successor state axioms) Golog is not a classical program language there are no side effects or states t program traces come from theorem proving Axioms ( s).do(,s S 0,s) allows for proving of properties of the program 25
26 Executing a Golog Program Golog Program Macro Expansion Logic Sentence in s and S 0 Theorem Prover Basic Action Theory Situation ti s Constructive Proof 26
27 proc toh() Planning versus Programming while solved do ( o) ( d) move(o,d) endwhile endproc do(toh(),s0) proc toh(n,o,d,h) toh(n-1,o,h,d) move(o,d) toh(n-1,h,d,o) endproc do(toh(3,a,b,c),s0) a b c
28 The famous Elevator Example Elevator several floors each floor has a door each floor has a call button Possible Actions up(n) down(n) trunoff(n) open close Task serve all requests 28
29 Fluents Elevator Part 1 currentfloor(s)=n, elevator is on floor n on(n,s), call button is on at floor n Primitive Action Preconditions Poss(up(n),s) currentfloor(s)<n Poss(down(n),s) currentfloor(s)>n Poss(open,s) s) true Poss(close,s) true Poss(turnoff(n),s) on(n,s) 29
30 Successor State Axioms Elevator Part 2 currentfloor(do(a,s))=m a=up(m) a=down(m) currentfloor(s)=m ( n).a=up(n) ( n).a=down(n) ( ) ) ( ) ( ) on(m,do(a,s)) on(m,s) a turnoff(m) Initial Situation currentfloor(s 0 )=4, on(3,s 0 ), on(5,s 0 ) A Litte Helper (a definition) nextfloor(n,s)=on(n,s) ( ) ( m).on(m,s) m-currentfloor(s) n-currentfloor(s) 30
31 Golog Procedures Elevator Part 3 proc serve(n) gofloor(n); turnoff(n);open;close ; endproc proc gofloor(n) (currentfloor=n)? up(n) down(n) endproc proc serveafloor (π n)[nextfloor(n)?;serve(n)] endproc proc control [while ( n)on(n) do serveafloor endwhile]; park endproc proc park if currentfloor=1 then open else down(0);open endproc 31
32 Running the Program Elevator Part 4 prove the following entailment : Axioms ( s).do(,s 0,s) s=do(open do(open,do(down(0),do(close,do(open,do(turnoff(5), do(down(0) do(close do(turnoff(5) do(up(5),do(close,do(open,do(turnoff(3),do(down(3,s 0 )))))))))) action sequence: down(3),turnoff(3),open,close,up(5), turnoff(5),open,close,down(0),openopen open there are multiple solutions 32
33 Golog - Summary Golog is logic program language Golog is based on Situation Calculus axioms its interpreter is a general purpose theorem prover Golog programs are executed for their side effects Golog programs are executed off-line 33
34 Implementation of Golog 34
35 Prolog as Implementation of Logic Prolog is a logic program language Prolog allows for declarative programming (i.e., concentrates on the problem formulation) Prolog can be used to implement a logical theory if some properties hold there is mapping between Prolog and the logical theory behind use a definitional theory use a proper Prolog interpreter Theorem of Clark 35
36 Definitional Theory definition axioms have the following form ( x 1,,x n ).P(x 1,,x n ), P is a predicate other the equality, is a FOL sentence can also be written as ( x 1,,x n ). P(x 1,,x n ) a set of definition axioms form a definitional theory an atom A is a formula of the form P(x 1,,x n ) a literal L is an atom or its negation a clause C has the form L 1 L m A, m 0 ( x,y).p(x,y) P(A,x) ( z)q(x,yz) ( x,y).q(a,f(x),y) y) 36
37 Prolog Interpreter Prolog represents a clause as A:-L 1,,L m. Prolog represents a goal as L 1,,L k. a proper Prolog interpreter has the following properties it interprets the negation not A as negation as failure it does so only if A is a ground literal if A is not ground the interpreter suspend the evaluation until A become ground or it may abort the computation the Clark s Theorem guarantees the right return value of a Prolog program 37
38 Clark s Theorem suppose T is a set of definitions for every predicate except equality if the following properties hold for two distinct function symbols: f(x) g(y) for a function symbol: f(x 1,,x, n )= f(y 1,,y,y n ) x 1= y 1 x 1 n = y n for every term t[x] that mentions the variable x t[x] x when a proper Prolog interpreter succeeds on a goal G then T ( )G when a proper Prolog interpreter fails on a goal G then T ( )G 38
39 Negation as Failure Prolog implements negation as negation as failure for not(p) Prolog tries to prove p, if p can be proved return false otherwise return true P(x) x=a, Q(x) x=b P(B) Q(B)? YES p(a). q(b). not p(x),q(x)? NO q(x),not p(x)? YES Prolog usually does no NAF on non-ground atoms 39
40 Lloyd-Topor Transformation Problem: ( x,y).subset(x,y) ( z).member(z,x) member(z,y) ( x,y).( z)[member(z,x) member(z,y)] subset(x,y) y)( z)[member(z x) member(z y)] subset(x is not a Prolog compatible clause the LT Transformation transforms a sentence W A in a clause suitable for Prolog there are 12 (syntactic) rules (e.g., replace (W 1 W 2 ) A with W 1 A, W 1 A p(x,y) subset(x,y), member(z,x) member(z,y) p(x,y) 40
41 an initial database D S 0 Closed Initial Database is closed iff for every relation fluent F there is only on sentence in the form F(x 1,,x, n,s 0 0) ) F F( (x 1,,x, n,s 0 0) for every non-fluent predicate P there is only on sentence in the form P(x 1,,x n ) P (x 1,,x n ) where P is situation independent for two distinct function symbols: f(x) g(y) for a function symbol: f(x 1,,x n )= f(y 1,,y n ) x 1 = y 1 x n = y n for every term t[x] that mentions the variable x t[x] x (objects) for every term [a] that mentions the variable a [a] a (actions) a restriction on the expressiveness, not allowed: F(A,S 0 ) F(B,S 0 ) ( x) F(x,S 0 ) murderer(caesar)=brutus 41
42 Implementation Theorem Let D be a basic action theory and P a Prolog program obtained by Lloyd-Topor rules for each non-fluent predicate of D S of form 0 P(x 1,,x n ) P (x 1,,x n ) : P (x 1,,x n ) P(x 1,,x n ) for each relational fluent predicate of D S of form 0 F(x 1,,x n,s 0 ) F (x 1,,x n,s 0 ) : F (x 1,,x n,s 0 ) F(x 1,,x n,s 0 ) for each action precondition axiom of D ap of form Poss(A(x 1,,x n ),s) A (x 1,,x n,s) : A (x 1,,x n,s) Poss(A(x 1,,x n )s) ),s) for each successor state axiom of D ssa of form F(x 1,,x n,do(a,s)) F (x 1,,x n,a,s) : F (x 1,,x n,a,s) F(x 1,,x n,do(a,s)) then P provides a correct Prolog implementation of D 42
43 A Golog Interpreter we will show a simple reference implementation (Raymond Reiter) it is based on Prolog for theorem proving the Situation Calculus is based on second-order logic Prolog does not support the whole power of secondorder logic the interpreter use some assumptions there are no functional fluents the initial database is closed special assumptions for of action preconditions and relational fluents 43
44 Directives and Definitions :- dynamic proc/2, restoresitarg/3. /* Compiler directives. Be sure some SWI Prolog related directives :- op(800, xfy, [&]). % Conjunction :- op(850, xfy, [v]). % Disjunction :- op(870, xfy, [=>]). % Implication :- op(880, xfy, [<=>]). % Equivalence :- op(950, xfy, [:]). % Action sequence :- op(960, xfy, [#]). % Nondeterministic action choice definition of operators 44
45 Definition of the do Function do(e1 : E2,S,S1) S1) :- do(e1,s,s2), S2) do(e2,s2,s1). S1) do(?(p),s,s) :- holds(p,s). do(e1 # E2,S,S1) :- do(e1,s,s1) ; do(e2,s,s1). do(if(p,e1,e2),s,s1) :- do((?(p) : E1) # (?(-P) : E2),S,S1). do(star(e),s,s1) :- S1 = S ; do(e : star(e),s,s1). do(while(p,e),s,s1): S1):- do(star(?(p) : E) :?(-P) P),S,S1). S1) do(pi(v,e),s,s1) :- sub(v,_,e,e1), do(e1,s,s1). do(e,s,s1) :- proc(e,e1), do(e1,s,s1). do(e,s,do(e,s)) :- primitive_action(e), poss(e,s). a query of the form do(e,s 0,S) will be answered ed by binding the final situation S 45
46 Definition of Substitution sub(x1,x2,t1,t2) X2 T2) :- var(t1), T2 = T1. sub(x1,x2,t1,t2) :- \+ var(t1), T1 = X1, T2 = X2. sub(x1,x2,t1,t2) :- \+ T1 = X1, T1 =..[F L1], sub_list(x1,x2,l1,l2), T2 =..[F L2]. sub_ list(x1,x2,[],[]).,[],[]) sub_list(x1,x2,[t1 L1],[T2 L2]) :- sub(x1,x2,t1,t2), sub_list(x1,x2,l1,l2). sub(name,new,term1,term2) Term2 is Term1 with name replaced by new 46
47 Test Conditions (Lloyd-Topor Transformation) holds(p & Q,S) :- holds(p,s), holds(q,s). holds(p v Q,S) :- holds(p,s); holds(q,s). holds(p => Q,S) :- holds(-p v Q,S). holds(p <=> Q,S) :- holds((p => Q) & (Q => P),S). holds(-(-p),s) :- holds(p,s). holds(-(p (P & Q),S) :- holds(-p v -Q,S). holds(-(p v Q),S) :- holds(-p & -Q,S). holds(-(p => Q),S) :- holds(-(-p v Q),S). holds(-(p <=> Q),S) :- holds(-((p => Q) & (Q => P)),S). holds(-all(v,p),s) :- holds(some(v,-p),s). holds(-some(v,p),s) ( ) :- \+ holds(some(v,p),s). ( ) holds(-p,s) :- isatom(p), \+ holds(p,s). holds(all(v,p),s) :- holds(-some(v,-p),s). holds(some(v,p),s) (V :- sub(v,_,p,p1), P1) holds(p1,s). 47
48 Treatment of the hold Predicate holds(a,s) :- restoresitarg(a,s,f), S F ; \+ restoresitarg(a,s,f), isatom(a), A. isatom(a) :- \+ (A = -W ; A = (W1 & W2) ; A = (W1 => W2) ; A = (W1 <=> W2) ; A = (W1 v W2) ; A = some(x,w) ; A = all(x,w)). restoresitarg(poss(a),s,poss(a,s)). RestoreSitArg have to be defined for all atoms taking a situation argument (i.e., action preconditions and fluents) 48
49 The famous Elevator Example Again A Demo in SWI Prolog 49
50 Golog Summary Golog is a program language for dynamic systems Golog used the principles of the Situation Calculus execution of a Golog program is related to theorem proving there exists a reference Golog interpreter t for Prolog if some assumptions hold the interpreter correctly executes the program 50
51 Questions? 51
Situation Calculus and Golog
Situation Calculus and Golog Institute for Software Technology 1 Recap Situation Calculus Situation Calculus allows for reasoning about change and actions a dialect of the second-order logic uses the concept
More informationSituation Calculus. Gerald Steinbauer. Institute for Software Technology. Gerald Steinbauer. Situation Calculus - Introduction
Situation Calculus Institute for Software Technology 1 Dates Organizational Issues 10.11.2016 8:45-11:00 (HS i12) lecture and first assignment 17.11.2016 8:45-11:00 (HS i12) lecture and programming assignment
More informationContinuing the KRR Journey
1 Weeks 1 3 Week 4 Week 5 Week 6 Continuing the KRR Journey Propositional and first-order logic (FOL) Expressiveness and Decidability: Propositional logic is decidable, FOL is not. Classical planning problems:
More informationLecture 3: High-level Programming in the Situation Calculus: Golog and ConGolog
DIS La Sapienza, PhD Course: Reasoning about Action and High-Level Programs Lecture 3: High-level Programming in the Situation Calculus: Golog and ConGolog Yves Lespérance Dept. of Computer Science & Engineering,
More informationThe Situation Calculus and Golog
and A Tutorial Gerhard Lakemeyer Dept. of Computer Science RWTH Aachen University Germany 2nd Hybris Workshop, Freiburg, May 27 28, 2013 Outline 1 2 3 May 28, 2013 2 / 34 Knowledge-Based Agents Example:
More information14. Actions. KR & R Brachman & Levesque Situation calculus
14. Actions KR & R Brachman & Levesque 2005 236 Situation calculus The situation calculus is a dialect of FOL for representing dynamically changing worlds in which all changes are the result of named actions.
More informationDIS La Sapienza PhD Course. Autonomous Agents and Multiagent Systems. Lecture 4: High-Level Programming in the Situation Calculus: Golog and ConGolog
DIS La Sapienza PhD Course Autonomous Agents and Multiagent Systems Lecture 4: High-Level Programming in the Situation Calculus: Golog and ConGolog Yves Lespérance Dept. of Computer Science & Engineering
More informationInterpreting Golog Programs in Flux
Interpreting Golog Programs in Flux Stephan Schiffel and Michael Thielscher Department of Computer Science Dresden University of Technology {stephan.schiffel,mit}@inf.tu-dresden.de Abstract A new semantics
More information14. Actions. Situation calculus. Fluents. Preconditions and effects
Situation calculus 14. Actions The situation calculus is a dialect of FOL for representing dynamically changing worlds in which all changes are the result of named actions. There are two distinguished
More informationReconciling Situation Calculus and Fluent Calculus
Reconciling Situation Calculus and Fluent Calculus Stephan Schiffel and Michael Thielscher Department of Computer Science Dresden University of Technology {stephan.schiffel,mit}@inf.tu-dresden.de Abstract
More informationOn the Progression of Situation Calculus Basic Action Theories: Resolving a 10-year-old Conjecture
On the Progression of Situation Calculus Basic Action Theories: Resolving a 10-year-old Conjecture Stavros Vassos and Hector J Levesque Department of Computer Science University of Toronto Toronto, ON,
More informationOn the Role of Possibility in Action Execution and Knowledge in the Situation Calculus
On the Role of Possibility in Action Execution and Knowledge in the Situation Calculus Vahid Vaezian (B) and James P. Delgrande School of Computing Science, Simon Fraser University, Burnaby, BC V5A 1S6,
More informationDecidable Reasoning in a Modified Situation Calculus
Decidable Reasoning in a Modified Situation Calculus Yilan Gu Dept. of Computer Science University of Toronto 10 King s College Road Toronto, ON, M5S 3G4, Canada Email: yilan@cs.toronto.edu Abstract We
More informationTractable Reasoning with Incomplete First-Order Knowledge in Dynamic Systems with Context-Dependent Actions
Tractable Reasoning with Incomplete First-Order Knowledge in Dynamic Systems with Context-Dependent Actions Yongmei Liu and Hector J. Levesque Department of Computer Science University of Toronto Toronto,
More informationAdvanced Topics in LP and FP
Lecture 1: Prolog and Summary of this lecture 1 Introduction to Prolog 2 3 Truth value evaluation 4 Prolog Logic programming language Introduction to Prolog Introduced in the 1970s Program = collection
More informationIntroduction to Logic in Computer Science: Autumn 2006
Introduction to Logic in Computer Science: Autumn 2006 Ulle Endriss Institute for Logic, Language and Computation University of Amsterdam Ulle Endriss 1 Plan for Today Today s class will be an introduction
More informationLogic (3A) Young W. Lim 12/5/13
Copyright (c) 2013. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software
More informationFirst-Order Logic First-Order Theories. Roopsha Samanta. Partly based on slides by Aaron Bradley and Isil Dillig
First-Order Logic First-Order Theories Roopsha Samanta Partly based on slides by Aaron Bradley and Isil Dillig Roadmap Review: propositional logic Syntax and semantics of first-order logic (FOL) Semantic
More informationLogic. Knowledge Representation & Reasoning Mechanisms. Logic. Propositional Logic Predicate Logic (predicate Calculus) Automated Reasoning
Logic Knowledge Representation & Reasoning Mechanisms Logic Logic as KR Propositional Logic Predicate Logic (predicate Calculus) Automated Reasoning Logical inferences Resolution and Theorem-proving Logic
More informationOn First-Order Definability and Computability of Progression for Local-Effect Actions and Beyond
On First-Order Definability and Computability of Progression for Local-Effect Actions and Beyond Yongmei Liu Dept. of Computer Science Sun Yat-sen University Guangzhou 510275, China ymliu@mail.sysu.edu.cn
More informationExtensions: Concurrency, Interrupts, Sensing
IIc. Procedural action programs 1 Extensions: Concurrency, Interrupts, Sensing Exogenous actions Concurrency and interrupts in GOLOG A transitional semantics for GOLOG Sensing actions Mailbot in a Constantly
More informationStrong AI vs. Weak AI Automated Reasoning
Strong AI vs. Weak AI Automated Reasoning George F Luger ARTIFICIAL INTELLIGENCE 6th edition Structures and Strategies for Complex Problem Solving Artificial intelligence can be classified into two categories:
More informationKnowledge base (KB) = set of sentences in a formal language Declarative approach to building an agent (or other system):
Logic Knowledge-based agents Inference engine Knowledge base Domain-independent algorithms Domain-specific content Knowledge base (KB) = set of sentences in a formal language Declarative approach to building
More information1 FUNDAMENTALS OF LOGIC NO.10 HERBRAND THEOREM Tatsuya Hagino hagino@sfc.keio.ac.jp lecture URL https://vu5.sfc.keio.ac.jp/slide/ 2 So Far Propositional Logic Logical connectives (,,, ) Truth table Tautology
More informationCS1021. Why logic? Logic about inference or argument. Start from assumptions or axioms. Make deductions according to rules of reasoning.
3: Logic Why logic? Logic about inference or argument Start from assumptions or axioms Make deductions according to rules of reasoning Logic 3-1 Why logic? (continued) If I don t buy a lottery ticket on
More informationLTCS Report. On the Decidability of Verifying LTL Properties of Golog Programs (Extended Version) LTCS-Report 13-10
Technische Universität Dresden Institute for Theoretical Computer Science Chair for Automata Theory LTCS Report On the Decidability of Verifying LTL Properties of Golog Programs (Extended Version) Benjamin
More informationFrom Causal Theories to Successor State Axioms and STRIPS-Like Systems
From: AAAI-00 Proceedings. Copyright 2000, AAAI (www.aaai.org). All rights reserved. From Causal Theories to Successor State Axioms and STRIPS-Like Systems Fangzhen Lin (flin@cs.ust.hk) Department of Computer
More informationProjection using Regression and Sensors
Projection using Regression and Sensors Giuseppe De Giacomo Dipartimento di Informatica e Sistemistica Università di Roma La Sapienza Via Salaria 11, 00198 Roma, Italy degiacomo@dis.uniroma1.it Hector
More informationChapter 7 Propositional Satisfiability Techniques
Lecture slides for Automated Planning: Theory and Practice Chapter 7 Propositional Satisfiability Techniques Dana S. Nau CMSC 722, AI Planning University of Maryland, Spring 2008 1 Motivation Propositional
More informationComputational Logic Automated Deduction Fundamentals
Computational Logic Automated Deduction Fundamentals 1 Elements of First-Order Predicate Logic First Order Language: An alphabet consists of the following classes of symbols: 1. variables denoted by X,
More informationCSE507. Satisfiability Modulo Theories. Computer-Aided Reasoning for Software. Emina Torlak
Computer-Aided Reasoning for Software CSE507 Satisfiability Modulo Theories courses.cs.washington.edu/courses/cse507/18sp/ Emina Torlak emina@cs.washington.edu Today Last lecture Practical applications
More informationComputational Logic. Davide Martinenghi. Spring Free University of Bozen-Bolzano. Computational Logic Davide Martinenghi (1/30)
Computational Logic Davide Martinenghi Free University of Bozen-Bolzano Spring 2010 Computational Logic Davide Martinenghi (1/30) Propositional Logic - sequent calculus To overcome the problems of natural
More informationPredicate Calculus - Syntax
Predicate Calculus - Syntax Lila Kari University of Waterloo Predicate Calculus - Syntax CS245, Logic and Computation 1 / 26 The language L pred of Predicate Calculus - Syntax L pred, the formal language
More informationINF5390 Kunstig intelligens. Logical Agents. Roar Fjellheim
INF5390 Kunstig intelligens Logical Agents Roar Fjellheim Outline Knowledge-based agents The Wumpus world Knowledge representation Logical reasoning Propositional logic Wumpus agent Summary AIMA Chapter
More informationReasoning about State Constraints in the Situation Calculus
Reasoning about State Constraints in the Situation Calculus Joint work with Naiqi Li and Yi Fan Yongmei Liu Dept. of Computer Science Sun Yat-sen University Guangzhou, China Presented at IRIT June 26,
More informationComputational Logic Fundamentals (of Definite Programs): Syntax and Semantics
Computational Logic Fundamentals (of Definite Programs): Syntax and Semantics 1 Towards Logic Programming Conclusion: resolution is a complete and effective deduction mechanism using: Horn clauses (related
More informationLloyd-Topor Completion and General Stable Models
Lloyd-Topor Completion and General Stable Models Vladimir Lifschitz and Fangkai Yang Department of Computer Science The University of Texas at Austin {vl,fkyang}@cs.utexas.edu Abstract. We investigate
More informationApplications of the Situation Calculus To Formalizing. Control and Strategic Information: The Prolog Cut Operator. Fangzhen Lin
Applications of the Situation Calculus To Formalizing Control and Strategic Information: The Prolog Cut Operator Fangzhen Lin (in@csusthk) Department of Computer Science The Hong Kong University of Science
More informationA description logic based situation calculus
Ann Math Artif Intell (2010) 58:3 83 DOI 10.1007/s10472-010-9176-z A description logic based situation calculus Yilan Gu Mikhail Soutchanski Published online: 18 March 2010 Springer Science+Business Media
More informationSection Summary. Section 1.5 9/9/2014
Section 1.5 Section Summary Nested Quantifiers Order of Quantifiers Translating from Nested Quantifiers into English Translating Mathematical Statements into Statements involving Nested Quantifiers Translated
More information1.3 Predicates and Quantifiers
1.3 Predicates and Quantifiers INTRODUCTION Statements x>3, x=y+3 and x + y=z are not propositions, if the variables are not specified. In this section we discuss the ways of producing propositions from
More informationHandling Uncertainty System in the Situation Calculus with Macro-actions. actions
Handling Uncertainty System in the Situation Calculus with Macro-actions actions Yilan Gu Department of Computer Science University of Toronto November 28, 2002 Outline Review the situation calculus Introducing
More informationExpressing Transactions with Savepoints as Non-Markovian Theories of Actions
Expressing Transactions with Savepoints as Non-Markovian Theories of Actions Iluju Kiringa School of Info. Technology and Eng. University of Ottawa Alfredo Gabaldon Department of Computer Science University
More informationDescription Logics. Deduction in Propositional Logic. franconi. Enrico Franconi
(1/20) Description Logics Deduction in Propositional Logic Enrico Franconi franconi@cs.man.ac.uk http://www.cs.man.ac.uk/ franconi Department of Computer Science, University of Manchester (2/20) Decision
More informationChapter 7 Propositional Satisfiability Techniques
Lecture slides for Automated Planning: Theory and Practice Chapter 7 Propositional Satisfiability Techniques Dana S. Nau University of Maryland 12:58 PM February 15, 2012 1 Motivation Propositional satisfiability:
More informationIntelligent Agents. First Order Logic. Ute Schmid. Cognitive Systems, Applied Computer Science, Bamberg University. last change: 19.
Intelligent Agents First Order Logic Ute Schmid Cognitive Systems, Applied Computer Science, Bamberg University last change: 19. Mai 2015 U. Schmid (CogSys) Intelligent Agents last change: 19. Mai 2015
More informationDeductive Verification
Deductive Verification Mooly Sagiv Slides from Zvonimir Rakamaric First-Order Logic A formal notation for mathematics, with expressions involving Propositional symbols Predicates Functions and constant
More informationIntroduction to Metalogic
Philosophy 135 Spring 2008 Tony Martin Introduction to Metalogic 1 The semantics of sentential logic. The language L of sentential logic. Symbols of L: Remarks: (i) sentence letters p 0, p 1, p 2,... (ii)
More information3. The Logic of Quantified Statements Summary. Aaron Tan August 2017
3. The Logic of Quantified Statements Summary Aaron Tan 28 31 August 2017 1 3. The Logic of Quantified Statements 3.1 Predicates and Quantified Statements I Predicate; domain; truth set Universal quantifier,
More informationIntroduction to Logic in Computer Science: Autumn 2007
Introduction to Logic in Computer Science: Autumn 2007 Ulle Endriss Institute for Logic, Language and Computation University of Amsterdam Ulle Endriss 1 Tableaux for First-order Logic The next part of
More informationSyntax of FOL. Introduction to Logic in Computer Science: Autumn Tableaux for First-order Logic. Syntax of FOL (2)
Syntax of FOL Introduction to Logic in Computer Science: Autumn 2007 Ulle Endriss Institute for Logic, Language and Computation University of Amsterdam The syntax of a language defines the way in which
More informationCS156: The Calculus of Computation Zohar Manna Winter 2010
Page 3 of 35 Page 4 of 35 quantifiers CS156: The Calculus of Computation Zohar Manna Winter 2010 Chapter 2: First-Order Logic (FOL) existential quantifier x. F [x] there exists an x such that F [x] Note:
More informationBrief Introduction to Prolog
Brief to Prolog Joana Côrte-Real jcr@dcc.fc.up.pt CRACS & INESC TEC Faculty of Sciences University of Porto University of Aizu 5th December 2014 1 / 27 Overview 1 to Prolog Prolog Syntax Tutorial 1 2 Lists
More informationPropositional Reasoning
Propositional Reasoning CS 440 / ECE 448 Introduction to Artificial Intelligence Instructor: Eyal Amir Grad TAs: Wen Pu, Yonatan Bisk Undergrad TAs: Sam Johnson, Nikhil Johri Spring 2010 Intro to AI (CS
More informationOn Ability to Autonomously Execute Agent Programs with Sensing
On Ability to Autonomously Execute Agent Programs with Sensing Sebastian Sardiña Dept. of Computer Science University of Toronto ssardina@cs.toronto.edu Yves Lespérance Dept. of Computer Science York University
More informationNon-Markovian Control in the Situation Calculus
From: AAAI-02 Proceedings. Copyright 2002, AAAI (www.aaai.org). All rights reserved. Non-Markovian Control in the Situation Calculus Alfredo Gabaldon Department of Computer Science University of Toronto
More informationLING 501, Fall 2004: Quantification
LING 501, Fall 2004: Quantification The universal quantifier Ax is conjunctive and the existential quantifier Ex is disjunctive Suppose the domain of quantification (DQ) is {a, b}. Then: (1) Ax Px Pa &
More informationPrice: $25 (incl. T-Shirt, morning tea and lunch) Visit:
Three days of interesting talks & workshops from industry experts across Australia Explore new computing topics Network with students & employers in Brisbane Price: $25 (incl. T-Shirt, morning tea and
More informationLogical reasoning - Can we formalise our thought processes?
Logical reasoning - Can we formalise our thought processes? Why study (mathematical) logic? Logic: the science or method of reasoning Logical: able to reason correctly Human reasoning poorly understood,
More informationHandling Implication and Universal Quantification Constraints in FLUX
Handling Implication and Universal Quantification Constraints in FLUX Michael Thielscher Dresden University of Technology, 01062 Dresden, Germany, mit@inf.tu-dresden.de Abstract. FLUX is a CLP-approach
More informationarxiv: v1 [cs.lo] 8 Jan 2013
Lloyd-Topor Completion and General Stable Models Vladimir Lifschitz and Fangkai Yang Department of Computer Science The University of Texas at Austin {vl,fkyang}@cs.utexas.edu arxiv:1301.1394v1 [cs.lo]
More informationPropositional Logic: Review
Propositional Logic: Review Propositional logic Logical constants: true, false Propositional symbols: P, Q, S,... (atomic sentences) Wrapping parentheses: ( ) Sentences are combined by connectives:...and...or
More informationIntroduction to Intelligent Systems
Logical Agents Objectives Inference and entailment Sound and complete inference algorithms Inference by model checking Inference by proof Resolution Forward and backward chaining Reference Russel/Norvig:
More informationInference in Propositional Logic
Inference in Propositional Logic Deepak Kumar November 2017 Propositional Logic A language for symbolic reasoning Proposition a statement that is either True or False. E.g. Bryn Mawr College is located
More information7. Propositional Logic. Wolfram Burgard and Bernhard Nebel
Foundations of AI 7. Propositional Logic Rational Thinking, Logic, Resolution Wolfram Burgard and Bernhard Nebel Contents Agents that think rationally The wumpus world Propositional logic: syntax and semantics
More informationThe Two-Variable Situation Calculus
The Two-Variable Situation Calculus 1. Introduction Yilan GU a, Mikhail SOUTCHANSKI b,1 a Department of Computer Science, University of Toronto, email: yilan@cs.toronto.edu b Department of Computer Science,
More informationNotation for Logical Operators:
Notation for Logical Operators: always true always false... and...... or... if... then...... if-and-only-if... x:x p(x) x:x p(x) for all x of type X, p(x) there exists an x of type X, s.t. p(x) = is equal
More informationCS 520: Introduction to Artificial Intelligence. Review
CS 520: Introduction to Artificial Intelligence Prof. Louis Steinberg : First-order Logic Proof Algorithms 1 Review Representing a Domain in FOL A domain is a portion of the world about which we wish to
More informationConvert to clause form:
Convert to clause form: Convert the following statement to clause form: x[b(x) ( y [ Q(x,y) P(y) ] y [ Q(x,y) Q(y,x) ] y [ B(y) E(x,y)] ) ] 1- Eliminate the implication ( ) E1 E2 = E1 E2 x[ B(x) ( y [
More informationFirst Order Logic vs Propositional Logic CS477 Formal Software Dev Methods
First Order Logic vs Propositional Logic CS477 Formal Software Dev Methods Elsa L Gunter 2112 SC, UIUC egunter@illinois.edu http://courses.engr.illinois.edu/cs477 Slides based in part on previous lectures
More informationUniversity of Aberdeen, Computing Science CS2013 Predicate Logic 4 Kees van Deemter
University of Aberdeen, Computing Science CS2013 Predicate Logic 4 Kees van Deemter 01/11/16 Kees van Deemter 1 First-Order Predicate Logic (FOPL) Lecture 4 Making numerical statements: >0, 1,>2,1,2
More informationReasoning by Regression: Pre- and Postdiction Procedures for Logics of Action and Change with Nondeterminism*
Reasoning by Regression: Pre- and Postdiction Procedures for Logics of Action and Change with Nondeterminism* Marcus Bjareland and Lars Karlsson Department of Computer and Information Science Linkopings
More informationPrecondition Control and the Progression Algorithm
From: ICAPS-04 Proceedings. Copyright 2004, AAAI (www.aaai.org). All rights reserved. Precondition Control and the Progression Algorithm Alfredo Gabaldon Department of Computer Science University of Toronto
More informationLogical Inference. Artificial Intelligence. Topic 12. Reading: Russell and Norvig, Chapter 7, Section 5
rtificial Intelligence Topic 12 Logical Inference Reading: Russell and Norvig, Chapter 7, Section 5 c Cara MacNish. Includes material c S. Russell & P. Norvig 1995,2003 with permission. CITS4211 Logical
More informationPropositional logic. First order logic. Alexander Clark. Autumn 2014
Propositional logic First order logic Alexander Clark Autumn 2014 Formal Logic Logical arguments are valid because of their form. Formal languages are devised to express exactly that relevant form and
More informationHoare Calculus and Predicate Transformers
Hoare Calculus and Predicate Transformers Wolfgang Schreiner Wolfgang.Schreiner@risc.uni-linz.ac.at Research Institute for Symbolic Computation (RISC) Johannes Kepler University, Linz, Austria http://www.risc.uni-linz.ac.at
More informationProgression of Situation Calculus Action Theories with Incomplete Information
Progression of Situation Calculus Action Theories with Incomplete Information Stavros Vassos and Hector Levesque Department of Computer Science University of Toronto Toronto, ON, CANADA {stavros,hector}@cs.toronto.edu
More informationCOMP9414: Artificial Intelligence Propositional Logic: Automated Reasoning
COMP9414, Monday 26 March, 2012 Propositional Logic 2 COMP9414: Artificial Intelligence Propositional Logic: Automated Reasoning Overview Proof systems (including soundness and completeness) Normal Forms
More informationAHoare-Style Proof System for Robot Programs
From: AAAI-02 Proceedings Copyright 2002, AAAI (wwwaaaiorg) All rights reserved AHoare-Style Proof System for Robot Programs Yongmei Liu Department of Computer Science University of Toronto Toronto, ON,
More informationArtificial Intelligence Chapter 7: Logical Agents
Artificial Intelligence Chapter 7: Logical Agents Michael Scherger Department of Computer Science Kent State University February 20, 2006 AI: Chapter 7: Logical Agents 1 Contents Knowledge Based Agents
More informationA Logic Primer. Stavros Tripakis University of California, Berkeley
EE 144/244: Fundamental Algorithms for System Modeling, Analysis, and Optimization Fall 2015 A Logic Primer Stavros Tripakis University of California, Berkeley Stavros Tripakis (UC Berkeley) EE 144/244,
More informationEmbracing Causality in Specifying the Indirect Effects of Actions*
Embracing Causality in Specifying the Indirect Effects of Actions* Fangzhen Lin Department of Computer Science University of Toronto Toronto, Canada M5S 1A4 Email: fl@cs.toronto.edu Abstract represented
More informationAnnouncements. Today s Menu
Announcements Reading Assignment: > Nilsson chapters 13-14 Announcements: > LISP and Extra Credit Project Assigned Today s Handouts in WWW: > Homework 10-13 > Outline for Class 26 > www.mil.ufl.edu/eel5840
More informationCOMP219: Artificial Intelligence. Lecture 19: Logic for KR
COMP219: Artificial Intelligence Lecture 19: Logic for KR 1 Overview Last time Expert Systems and Ontologies Today Logic as a knowledge representation scheme Propositional Logic Syntax Semantics Proof
More informationInference in first-order logic. Production systems.
CS 1571 Introduction to AI Lecture 17 Inference in first-order logic. Production systems. Milos Hauskrecht milos@cs.pitt.edu 5329 Sennott Square Sentences in Horn normal form Horn normal form (HNF) in
More informationNon-Markovian Control in the Situation Calculus
Non-Markovian Control in the Situation Calculus An Elaboration Niklas Hoppe Seminar Foundations Of Artificial Intelligence Knowledge-Based Systems Group RWTH Aachen May 3, 2009 1 Contents 1 Introduction
More informationDefinite Logic Programs
Chapter 2 Definite Logic Programs 2.1 Definite Clauses The idea of logic programming is to use a computer for drawing conclusions from declarative descriptions. Such descriptions called logic programs
More informationSome Rewriting Systems as a Background of Proving Methods
Some Rewriting Systems as a Background of Proving Methods Katalin Pásztor Varga Department of General Computer Science Eötvös Loránd University e-mail: pkata@ludens.elte.hu Magda Várterész Institute of
More informationFoundations of Artificial Intelligence
Foundations of Artificial Intelligence 7. Propositional Logic Rational Thinking, Logic, Resolution Joschka Boedecker and Wolfram Burgard and Bernhard Nebel Albert-Ludwigs-Universität Freiburg May 17, 2016
More informationKnowledge representation DATA INFORMATION KNOWLEDGE WISDOM. Figure Relation ship between data, information knowledge and wisdom.
Knowledge representation Introduction Knowledge is the progression that starts with data which s limited utility. Data when processed become information, information when interpreted or evaluated becomes
More informationIntelligent Agents. Formal Characteristics of Planning. Ute Schmid. Cognitive Systems, Applied Computer Science, Bamberg University
Intelligent Agents Formal Characteristics of Planning Ute Schmid Cognitive Systems, Applied Computer Science, Bamberg University Extensions to the slides for chapter 3 of Dana Nau with contributions by
More informationChapter 7 R&N ICS 271 Fall 2017 Kalev Kask
Set 6: Knowledge Representation: The Propositional Calculus Chapter 7 R&N ICS 271 Fall 2017 Kalev Kask Outline Representing knowledge using logic Agent that reason logically A knowledge based agent Representing
More informationOn the Decidability of Verifying LTL Properties of GOLOG Programs
On the Decidability of Verifying LTL Properties of GOLOG Programs Benjamin Zarrieß Theoretical Computer Science TU Dresden, Germany zarriess@tcs.inf.tu-dresden.de Jens Claßen Knowledge-Based Systems Group
More informationFrom Constructibility and Absoluteness to Computability and Domain Independence
From Constructibility and Absoluteness to Computability and Domain Independence Arnon Avron School of Computer Science Tel Aviv University, Tel Aviv 69978, Israel aa@math.tau.ac.il Abstract. Gödel s main
More informationIntroduction to Intelligent Systems
Logical Agents Objectives Inference and entailment Sound and complete inference algorithms Inference by model checking Inference by proof Resolution Forward and backward chaining Reference Russel/Norvig:
More informationWeb Science & Technologies University of Koblenz Landau, Germany. Models in First Order Logics
Web Science & Technologies University of Koblenz Landau, Germany Models in First Order Logics Overview First-order logic. Syntax and semantics. Herbrand interpretations; Clauses and goals; Datalog. 2 of
More informationMotivation. CS389L: Automated Logical Reasoning. Lecture 10: Overview of First-Order Theories. Signature and Axioms of First-Order Theory
Motivation CS389L: Automated Logical Reasoning Lecture 10: Overview of First-Order Theories Işıl Dillig Last few lectures: Full first-order logic In FOL, functions/predicates are uninterpreted (i.e., structure
More informationFoundations of Artificial Intelligence
Foundations of Artificial Intelligence 7. Propositional Logic Rational Thinking, Logic, Resolution Joschka Boedecker and Wolfram Burgard and Frank Hutter and Bernhard Nebel Albert-Ludwigs-Universität Freiburg
More informationCompiling Causal Theories to Successor State Axioms and STRIPS-Like Systems
Journal of Artificial Intelligence Research 19 (2003) 279-314 Submitted 09/02; published 10/03 Compiling Causal Theories to Successor State Axioms and STRIPS-Like Systems Fangzhen Lin Department of Computer
More informationFoundations of Logic Programming
Foundations of Logic Programming Deductive Logic e.g. of use: Gypsy specifications and proofs About deductive logic (Gödel, 1931) Interesting systems (with a finite number of axioms) are necessarily either:
More information