:-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/OffOn.e',50). % From E: % % :-call_pel_directive(translate(unskipped,'/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e.lps')). :- call_pel_directive(translate(unskipped, '/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e.lps')). :-include(library('ec_planner/ec_test_incl')). :-expects_dialect(lps). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/OffOn.e',50). % From E: % % :-call_pel_directive(translate(begining,'/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e.lps')). :- call_pel_directive(translate(begining, '/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e.lps')). % Sat, 10 Oct 2020 15:32:01 GMT File: (0x559e4b323b00)%; %; Copyright (c) 2005 IBM Corporation and others. %; All rights reserved. This program and the accompanying materials %; are made available under the terms of the Common Public License v1.0 %; which accompanies this distribution, and is available at %; http://www.eclipse.org/legal/cpl-v10.html %; %; Contributors: %; IBM - Initial implementation %; %; @inproceedings{Mueller:2004b, %; author = "Erik T. Mueller", %; year = "2004", %; title = "A tool for satisfiability-based commonsense reasoning in the event calculus", %; editor = "Valerie Barr and Zdravko Markov", %; booktitle = "\uppercase{P}roceedings of the \uppercase{S}eventeenth \uppercase{I}nternational \uppercase{F}lorida \uppercase{A}rtificial \uppercase{I}ntelligence \uppercase{R}esearch \uppercase{S}ociety \uppercase{C}onference", %; pages = "147--152", %; address = "Menlo Park, CA", %; publisher = "AAAI Press", %; } %; :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',23). % load foundations/Root.e % From E: % % :-call_pel_directive(load('foundations/Root.e')). :- call_pel_directive(load('foundations/Root.e')). % load foundations/EC.e :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',23). % From E: % % :-call_pel_directive(load('foundations/EC.e')). :- call_pel_directive(load('foundations/EC.e')). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',26). % sort object % From E: % % sort(object). sort(object). % sort agent: object :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',26). % From E: % % subsort(agent,object). subsort(agent,object). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',28). % sort physobj: object % From E: % % subsort(physobj,object). subsort(physobj,object). % sort location :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',28). % From E: % % sort(location). sort(location). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',31). % fluent At(object,location) % From E: % % fluent(at_loc(object,location)). mpred_prop(at_loc(object,location),fluent). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',31). fluents([at_loc/2]). % fluent Holding(agent,physobj) % From E: % % fluent(holding(agent,physobj)). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',31). mpred_prop(holding(agent,physobj),fluent). fluents([holding/2]). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',33). % event PickUp(agent,physobj) % From E: % % event(pickUp(agent,physobj)). events([pickUp/2]). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',33). mpred_prop(pickUp(agent,physobj),action). actions([pickUp/2]). % event SetDown(agent,physobj) % From E: % % event(setDown(agent,physobj)). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',33). events([setDown/2]). mpred_prop(setDown(agent,physobj),action). actions([setDown/2]). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',35). % event Move(agent,location,location) % From E: % % event(move(agent,location,location)). events([move/3]). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',35). mpred_prop(move(agent,location,location),action). actions([move/3]). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',37). %; state constraints % [agent,location,physobj,time] % HoldsAt(At(agent,location),time) & % HoldsAt(Holding(agent,physobj),time) -> % HoldsAt(At(physobj,location),time). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',39). % From E: % % '->'( % (holds_at(at_loc(Agent,Location),Time) , % holds_at(holding(Agent,Physobj),Time)), % holds_at(at_loc(Physobj,Location),Time)). % [Time]. at_loc(Physobj, Location)if at_loc(Agent, Location), holding(Agent, Physobj). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',39). /* l_int(holds(at_loc(Physobj,Location),Time_At), [ holds(at_loc(Agent,Location),Time_At), holds(holding(Agent,Physobj),Time_At) ]). */ % "% =================================". % [object,location1,location2,time] % HoldsAt(At(object,location1),time) & % HoldsAt(At(object,location2),time) -> % location1=location2. :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',45). % From E: % % '->'( % (holds_at(at_loc(Object,Location1),Time) , % holds_at(at_loc(Object,Location2),Time)), % Location1=Location2). % [Time]. false not equals(Location1, Location2), at_loc(Object, Location1), at_loc(Object, Location2). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',45). /* d_pre([ not(equals(Location1,Location2)), holds(at_loc(Object,Location1),Time_At), holds(at_loc(Object,Location2),Time_At) ]). */ % "% =================================". %; effect axioms % [agent,location1,location2,time] % Initiates(Move(agent,location1,location2),At(agent,location2),time). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',51). % From E: % % initiates_at( % move(Agent,Location1,Location2), % at_loc(Agent,Location2), % Time). % [Time]. move(Agent, Location1, Location2)initiates at_loc(Agent, Location2). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',51). /* initiated(happens(move(Agent,Location1,Location2), Time_From, Time_Until), at_loc(Agent,Location2), []). */ % "% =================================". % [agent,location1,location2,time] % Terminates(Move(agent,location1,location2),At(agent,location1),time). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',55). % From E: % % terminates_at( % move(Agent,Location1,Location2), % at_loc(Agent,Location1), % Time). % [Time]. move(Agent, Location1, Location2)terminates at_loc(Agent, Location1). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',55). /* terminated(happens(move(Agent,Location1,Location2), Time_From, Time_Until), at_loc(Agent,Location1), []). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',57). % [agent,physobj,time] % Initiates(PickUp(agent,physobj),Holding(agent,physobj),time). % From E: % % initiates_at( % pickUp(Agent,Physobj), % holding(Agent,Physobj), % Time). % [Time]. pickUp(Agent, Physobj)initiates holding(Agent, Physobj). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',57). /* initiated(happens(pickUp(Agent,Physobj), Time_From, Time_Until), holding(Agent,Physobj), []). */ % "% =================================". % [agent,physobj,time] % Terminates(SetDown(agent,physobj),Holding(agent,physobj),time). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',61). % From E: % % terminates_at( % setDown(Agent,Physobj), % holding(Agent,Physobj), % Time). % [Time]. setDown(Agent, Physobj)terminates holding(Agent, Physobj). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',61). /* terminated(happens(setDown(Agent,Physobj), Time_From, Time_Until), holding(Agent,Physobj), []). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',63). %; preconditions % [agent,location1,location2,time] % Happens(Move(agent,location1,location2),time) -> % HoldsAt(At(agent,location1),time). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',65). % From E: % % '->'( % happens_at(move(Agent,Location1,Location2),Time), % holds_at(at_loc(Agent,Location1),Time)). % [Time]. at_loc(Agent, Location1)if move(Agent, Location1, Location2). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',65). /* l_int(holds(at_loc(Agent,Location1),Time_At), [ happens(move(Agent,Location1,Location2), Time_At, Time_At) ]). */ % "% =================================". % [agent,physobj,time] % Happens(PickUp(agent,physobj),time) -> % {location}% HoldsAt(At(agent,location),time) & % HoldsAt(At(physobj,location),time). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',70). % From E: % % exists( % [Location], % '->'( % happens_at(pickUp(Agent,Physobj),Time), % (holds_at(at_loc(Agent,Location),Time) , % holds_at(at_loc(Physobj,Location),Time)))). % [Time]. :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',70). exists([Location], if((at_loc(Agent, Location), at_loc(Physobj, Location)), pickUp(Agent, Physobj))). %; releases % [agent,physobj,location,time] % Releases(PickUp(agent,physobj),At(physobj,location),time). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',76). % From E: % % releases_at( % pickUp(Agent,Physobj), % at_loc(Physobj,Location), % Time). % [Time]. :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',76). releases(pickUp(Agent,Physobj), at_loc(Physobj,Location)). % [agent,physobj,location,time] % HoldsAt(At(agent,location),time) -> % Initiates(SetDown(agent,physobj),At(physobj,location),time). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',80). % From E: % % '->'( % holds_at(at_loc(Agent,Location),Time), % initiates_at( % setDown(Agent,Physobj), % at_loc(Physobj,Location), % Time)). % [Time]. setDown(Agent, Physobj)initiates at_loc(Physobj, Location)if at_loc(Agent, Location). /* initiated(happens(setDown(Agent,Physobj), Time_From, Time_Until), at_loc(Physobj,Location), [holds(at_loc(Agent,Location),Time_From)]). */ % "% =================================". %;[agent,physobj,location1,location2,time] %;HoldsAt(At(agent,location1),time) & %;location1 != location2 -> %;Terminates(SetDown(agent,physobj),At(physobj,location2),time). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',88). % agent James % From E: % % t(agent,james). agent(james). % physobj Coin :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',88). % From E: % % t(physobj,coin). physobj(coin). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',90). % location L1, L2, L3, L4 % From E: % % t(location,l1). location(l1). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',90). % From E: % % t(location,l2). location(l2). % From E: % % t(location,l3). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',90). location(l3). % From E: % % t(location,l4). location(l4). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',92). % !HoldsAt(Holding(James,Coin),0). % From E: % % holds_at(not(holding(james,coin)),0). initially not holding(james, coin). % initial_state([not(holding(james,coin))]). % "% =================================". % HoldsAt(At(Coin,L4),0). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',92). % From E: % % holds_at(at_loc(coin,l4),0). initially at_loc(coin, l4). % initial_state([at_loc(coin,l4)]). % "% =================================". :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',94). % HoldsAt(At(James,L1),0). % From E: % % holds_at(at_loc(james,l1),0). initially at_loc(james, l1). % initial_state([at_loc(james,l1)]). % "% =================================". % Happens(Move(James,L1,L2),0). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',94). % From E: % % happens_at(move(james,l1,l2),0). observe move(james, l1, l2)at 0. % observe([move(james,l1,l2)],0). % "% =================================". :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',96). % Happens(Move(James,L2,L3),1). % From E: % % happens_at(move(james,l2,l3),1). observe move(james, l2, l3)at 1. % observe([move(james,l2,l3)],1). % "% =================================". % Happens(Move(James,L3,L4),2). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',96). % From E: % % happens_at(move(james,l3,l4),2). observe move(james, l3, l4)at 2. % observe([move(james,l3,l4)],2). % "% =================================". :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',98). % Happens(PickUp(James,Coin),3). % From E: % % happens_at(pickUp(james,coin),3). observe pickUp(james, coin)at 3. % observe([pickUp(james,coin)],3). % "% =================================". % Happens(Move(James,L4,L3),4). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',98). % From E: % % happens_at(move(james,l4,l3),4). observe move(james, l4, l3)at 4. % observe([move(james,l4,l3)],4). % "% =================================". :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',100). % Happens(Move(James,L3,L2),5). % From E: % % happens_at(move(james,l3,l2),5). observe move(james, l3, l2)at 5. % observe([move(james,l3,l2)],5). % "% =================================". % Happens(SetDown(James,Coin),6). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',100). % From E: % % happens_at(setDown(james,coin),6). observe setDown(james, coin)at 6. % observe([setDown(james,coin)],6). % "% =================================". :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',102). % Happens(Move(James,L2,L3),7). % From E: % % happens_at(move(james,l2,l3),7). observe move(james, l2, l3)at 7. % observe([move(james,l2,l3)],7). % "% =================================". % Happens(Move(James,L3,L4),8). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',102). % From E: % % happens_at(move(james,l3,l4),8). observe move(james, l3, l4)at 8. % observe([move(james,l3,l4)],8). % "% =================================". % completion Happens :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',104). % From E: % % :-call_pel_directive(completion(happens_at)). :- call_pel_directive(completion(happens_at)). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',107). % range time 0 9 % From E: % % :-call_pel_directive(range(time,0,9)). :- call_pel_directive(range(time, 0, 9)). % range offset 1 1 :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',107). % From E: % % :-call_pel_directive(range(offset,1,1)). :- call_pel_directive(range(offset, 1, 1)). %; End of file. :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e',110). % From E: % % :-call_pel_directive(translate(ending,'/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e.lps')). :- call_pel_directive(translate(ending, '/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2004b/PickUp.e.lps')).