:-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test.e',4647). % From E: % % :-call_pel_directive(translate(unskipped,'/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e.lps')). :- call_pel_directive(translate(unskipped, '/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e.lps')). :-include(library('ec_planner/ec_test_incl')). :-expects_dialect(lps). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test.e',4647). % From E: % % :-call_pel_directive(translate(begining,'/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e.lps')). :- call_pel_directive(translate(begining, '/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e.lps')). % Sat, 10 Oct 2020 15:32:10 GMT File: (0x559e4b3e7600)%; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %; FILE: foundations/Root.e %; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %; %; 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 %; :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',18). % sort boolean % From E: % % sort(boolean). sort(boolean). % sort integer :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',18). % From E: % % sort(integer). sort(integer). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',20). % reified sort predicate % From E: % % reified_sort(predicate). reified_sorts([predicate/0]). % reified sort function :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',20). % From E: % % reified_sort(function). reified_sorts([function/0]). %; End of file. %; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %; FILE: foundations/EC.e %; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %; %; 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 %; %; Event Calculus (EC) %; %; @incollection{MillerShanahan:2002, %; author = "Rob Miller and Murray Shanahan", %; year = "2002", %; title = "Some alternative formulations of the event calculus", %; editor = "Antonis C. Kakas and Fariba Sadri", %; booktitle = "Computational Logic: Logic Programming and Beyond: Essays in Honour of \uppercase{R}obert \uppercase{A}. \uppercase{K}owalski, Part \uppercase{II}", %; series = "Lecture Notes in Computer Science", %; volume = "2408", %; pages = "452--490", %; address = "Berlin", %; publisher = "Springer", %; } %; :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',57). % sort time: integer % From E: % % subsort(time,integer). subsort(time,integer). % sort offset: integer :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',57). % From E: % % subsort(offset,integer). subsort(offset,integer). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',60). % reified sort fluent % From E: % % reified_sort(fluent). reified_sorts([fluent/0]). % reified sort event :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',60). % From E: % % reified_sort(event). reified_sorts([event/0]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',63). % predicate Happens(event,time) % From E: % % predicate(happens_at(event,time)). mpred_prop(happens_at(event,time),predicate). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',63). predicates([happens_at/2]). % predicate HoldsAt(fluent,time) % From E: % % predicate(holds_at(fluent,time)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',63). mpred_prop(holds_at(fluent,time),predicate). predicates([holds_at/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',65). % predicate ReleasedAt(fluent,time) % From E: % % predicate(released_at(fluent,time)). mpred_prop(released_at(fluent,time),predicate). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',65). predicates([released_at/2]). % predicate Initiates(event,fluent,time) % From E: % % predicate(initiates_at(event,fluent,time)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',65). mpred_prop(initiates_at(event,fluent,time),predicate). predicates([initiates_at/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',67). % predicate Terminates(event,fluent,time) % From E: % % predicate(terminates_at(event,fluent,time)). mpred_prop(terminates_at(event,fluent,time),predicate). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',67). predicates([terminates_at/3]). % predicate Releases(event,fluent,time) % From E: % % predicate(releases_at(event,fluent,time)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',67). mpred_prop(releases_at(event,fluent,time),predicate). predicates([releases_at/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',69). % predicate Trajectory(fluent,time,fluent,offset) % From E: % % predicate(trajectory(fluent,time,fluent,offset)). mpred_prop(trajectory(fluent,time,fluent,offset),predicate). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',69). predicates([trajectory/4]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',71). %; End of file. %; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %; FILE: foundations/DEC.e %; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %; %; 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 %; %; Discrete Event Calculus (DEC) %; %; @article{Mueller:2004a, %; author = "Erik T. Mueller", %; year = "2004", %; title = "Event calculus reasoning through satisfiability", %; journal = "Journal of Logic and Computation", %; volume = "14", %; number = "5", %; pages = "703--730", %; } %; :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',102). % sort time: integer % From E: % % subsort(time,integer). subsort(time,integer). % sort offset: integer :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',102). % From E: % % subsort(offset,integer). subsort(offset,integer). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',105). % reified sort fluent % From E: % % reified_sort(fluent). reified_sorts([fluent/0]). % reified sort event :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',105). % From E: % % reified_sort(event). reified_sorts([event/0]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',108). % predicate Happens(event,time) % From E: % % predicate(happens_at(event,time)). mpred_prop(happens_at(event,time),predicate). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',108). predicates([happens_at/2]). % predicate HoldsAt(fluent,time) % From E: % % predicate(holds_at(fluent,time)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',108). mpred_prop(holds_at(fluent,time),predicate). predicates([holds_at/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',110). % predicate ReleasedAt(fluent,time) % From E: % % predicate(released_at(fluent,time)). mpred_prop(released_at(fluent,time),predicate). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',110). predicates([released_at/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',112). % predicate Initiates(event,fluent,time) % From E: % % predicate(initiates_at(event,fluent,time)). mpred_prop(initiates_at(event,fluent,time),predicate). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',112). predicates([initiates_at/3]). % predicate Terminates(event,fluent,time) % From E: % % predicate(terminates_at(event,fluent,time)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',112). mpred_prop(terminates_at(event,fluent,time),predicate). predicates([terminates_at/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',114). % predicate Releases(event,fluent,time) % From E: % % predicate(releases_at(event,fluent,time)). mpred_prop(releases_at(event,fluent,time),predicate). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',114). predicates([releases_at/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',116). % [fluent,time] % (HoldsAt(fluent,time) & % !ReleasedAt(fluent,time+1) & % !({event} Happens(event,time) & Terminates(event,fluent,time))) -> % HoldsAt(fluent,time+1). % From E: % % '->'( % (holds_at(Fluent,Time) , % not(released_at(Fluent,Time+1)) , % not( % exists( % [Event], % (happens_at(Event,Time) , % terminates_at(Event,Fluent,Time))))), % holds_at(Fluent,Time+1)). % [Time, Time+1]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',116). holds_at(Fluent, Time), not(released_at(Fluent, Time+1)), false((happens_at(Event, Time), terminates_at(Event, Fluent, Time))) -> holds_at(Fluent, Time+1). % [fluent,time] % (!HoldsAt(fluent,time) & % !ReleasedAt(fluent,time+1) & % !({event} Happens(event,time) & Initiates(event,fluent,time))) -> % !HoldsAt(fluent,time+1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',123). % From E: % % '->'( % (holds_at(not(Fluent),Time) , % not(released_at(Fluent,Time+1)) , % not( % exists( % [Event], % (happens_at(Event,Time) , % initiates_at(Event,Fluent,Time))))), % holds_at(not(Fluent),Time+1)). % [Time, Time+1]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',123). false(holds_at(Fluent, Time)), not(released_at(Fluent, Time+1)), false((happens_at(Event, Time), initiates_at(Event, Fluent, Time))) -> holds_at(not(Fluent), Time+1). % [fluent,time] % (!ReleasedAt(fluent,time) & % !({event} Happens(event,time) & Releases(event,fluent,time))) -> % !ReleasedAt(fluent,time+1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',129). % From E: % % '->'( % (not(released_at(Fluent,Time)) , % not( % exists( % [Event], % (happens_at(Event,Time) , % releases_at(Event,Fluent,Time))))), % not(released_at(Fluent,Time+1))). % [Time, Time+1]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',129). not(released_at(Fluent, Time)), false((happens_at(Event, Time), releases_at(Event, Fluent, Time))) -> not(released_at(Fluent, Time+1)). % [fluent,time] % (ReleasedAt(fluent,time) & % !({event} Happens(event,time) & % (Initiates(event,fluent,time) | % Terminates(event,fluent,time)))) -> % ReleasedAt(fluent,time+1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',134). % From E: % % '->'( % (released_at(Fluent,Time) , % not( % exists( % [Event], % (happens_at(Event,Time) , % (initiates_at(Event,Fluent,Time) ; % terminates_at(Event,Fluent,Time)))))), % released_at(Fluent,Time+1)). % [Time, Time+1]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',134). released_at(Fluent, Time), not((happens_at(Event, Time), false((not(initiates_at(Event, Fluent, Time)), not(terminates_at(Event, Fluent, Time)))))) -> released_at(Fluent, Time+1). % [event,fluent,time] % (Happens(event,time) & Initiates(event,fluent,time)) -> % (HoldsAt(fluent,time+1) & !ReleasedAt(fluent,time+1)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',141). % From E: % % '->'( % (happens_at(Event,Time) , % initiates_at(Event,Fluent,Time)), % (holds_at(Fluent,Time+1) , % not(released_at(Fluent,Time+1)))). % [Time, Time+1]. happens_at(Event, Time), initiates(Event, at(Fluent, Time)) -> holds_at(Fluent, Time+1), not(released_at(Fluent, Time+1)). % [event,fluent,time] % (Happens(event,time) & Terminates(event,fluent,time)) -> % (!HoldsAt(fluent,time+1) & !ReleasedAt(fluent,time+1)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',145). % From E: % % '->'( % (happens_at(Event,Time) , % terminates_at(Event,Fluent,Time)), % (holds_at(not(Fluent),Time+1) , % not(released_at(Fluent,Time+1)))). % [Time, Time+1]. happens_at(Event, Time), terminates(Event, at(Fluent, Time)) -> holds_at(not(Fluent), Time+1), not(released_at(Fluent, Time+1)). % [event,fluent,time] % (Happens(event,time) & Releases(event,fluent,time)) -> % ReleasedAt(fluent,time+1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',149). % From E: % % '->'( % (happens_at(Event,Time) , % releases_at(Event,Fluent,Time)), % released_at(Fluent,Time+1)). % [Time, Time+1]. happens_at(Event, Time), releases_at(Event, Fluent, Time) -> released_at(Fluent, Time+1). %; End of file. %; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %; FILE: foundations/ECCausal.e %; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %; %; 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 %; %; Causal Constraints %; %; @inproceedings{Shanahan:1999a, %; author = "Murray Shanahan", %; year = "1999", %; title = "The ramification problem in the event calculus", %; booktitle = "\uppercase{P}roceedings of the \uppercase{S}ixteenth \uppercase{I}nternational \uppercase{J}oint \uppercase{C}onference on \uppercase{A}rtificial \uppercase{I}ntelligence", %; pages = "140--146", %; address = "San Mateo, CA", %; publisher = "Morgan Kaufmann", %; } %; :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',183). % predicate Started(fluent,time) % From E: % % predicate(started(fluent,time)). mpred_prop(started(fluent,time),predicate). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',183). predicates([started/2]). % predicate Stopped(fluent,time) % From E: % % predicate(stopped(fluent,time)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',183). mpred_prop(stopped(fluent,time),predicate). predicates([stopped/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',186). % [fluent,time] % Started(fluent,time) <-> % (HoldsAt(fluent,time) | % ({event} Happens(event,time) & Initiates(event,fluent,time))). % From E: % % <->( % started(Fluent,Time), % (holds_at(Fluent,Time) ; % exists( % [Event], % (happens_at(Event,Time) , % initiates_at(Event,Fluent,Time))))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',186). started(Fluent, Time) <-> ( holds_at(Fluent, Time) ; exists([Event], (happens_at(Event, Time), initiates(Event, at(Fluent, Time)))) ). % [fluent,time] % Stopped(fluent,time) <-> % (!HoldsAt(fluent,time) | % ({event} Happens(event,time) & Terminates(event,fluent,time))). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',192). % From E: % % <->( % stopped(Fluent,Time), % (holds_at(not(Fluent),Time) ; % exists( % [Event], % (happens_at(Event,Time) , % terminates_at(Event,Fluent,Time))))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',192). stopped(Fluent, Time) <-> ( false(holds_at(Fluent, Time)) ; exists([Event], (happens_at(Event, Time), terminates(Event, at(Fluent, Time)))) ). % predicate Initiated(fluent,time) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',195). % From E: % % predicate(initiated(fluent,time)). mpred_prop(initiated(fluent,time),predicate). predicates([initiated/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',197). % predicate Terminated(fluent,time) % From E: % % predicate(terminated(fluent,time)). mpred_prop(terminated(fluent,time),predicate). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',197). predicates([terminated/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',199). % [fluent,time] % Initiated(fluent,time) <-> % (Started(fluent,time) & % !({event} Happens(event,time) & Terminates(event,fluent,time))). % From E: % % <->( % initiated(Fluent,Time), % (started(Fluent,Time) , % not( % exists( % [Event], % (happens_at(Event,Time) , % terminates_at(Event,Fluent,Time)))))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',199). initiated(Fluent, Time) <-> started(Fluent, Time), false((happens_at(Event, Time), terminates_at(Event, Fluent, Time))). % [fluent,time] % Terminated(fluent,time) <-> % (Stopped(fluent,time) & % !({event} Happens(event,time) & Initiates(event,fluent,time))). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',205). % From E: % % <->( % terminated(Fluent,Time), % (stopped(Fluent,Time) , % not( % exists( % [Event], % (happens_at(Event,Time) , % initiates_at(Event,Fluent,Time)))))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',205). terminated(Fluent, Time) <-> stopped(Fluent, Time), false((happens_at(Event, Time), initiates_at(Event, Fluent, Time))). %; End of file. %; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %; FILE: foundations/ECTraj.e %; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %; %; 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 %; %; @incollection{MillerShanahan:2002, %; author = "Rob Miller and Murray Shanahan", %; year = "2002", %; title = "Some alternative formulations of the event calculus", %; editor = "Antonis C. Kakas and Fariba Sadri", %; booktitle = "Computational Logic: Logic Programming and Beyond: Essays in Honour of \uppercase{R}obert \uppercase{A}. \uppercase{K}owalski, Part \uppercase{II}", %; series = "Lecture Notes in Computer Science", %; volume = "2408", %; pages = "452--490", %; address = "Berlin", %; publisher = "Springer", %; } %; :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',241). % predicate Clipped(time,fluent,time) % From E: % % predicate(clipped(time,fluent,time)). mpred_prop(clipped(time,fluent,time),predicate). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',241). predicates([clipped/3]). % predicate Declipped(time,fluent,time) % From E: % % predicate(declipped(time,fluent,time)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',241). mpred_prop(declipped(time,fluent,time),predicate). predicates([declipped/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',244). % predicate Trajectory(fluent,time,fluent,offset) % From E: % % predicate(trajectory(fluent,time,fluent,offset)). mpred_prop(trajectory(fluent,time,fluent,offset),predicate). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',244). predicates([trajectory/4]). % predicate AntiTrajectory(fluent,time,fluent,offset) % From E: % % predicate(antiTrajectory(fluent,time,fluent,offset)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',244). mpred_prop(antiTrajectory(fluent,time,fluent,offset),predicate). predicates([antiTrajectory/4]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',247). % [event,fluent,fluent2,offset,time] % Happens(event,time) & % Initiates(event,fluent,time) & % 0 < offset & % Trajectory(fluent,time,fluent2,offset) & % !Clipped(time,fluent,time+offset) -> % HoldsAt(fluent2,time+offset). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',247). % From E: % % '->'( % (happens_at(Event,Time) , % initiates_at(Event,Fluent,Time) , % 0 holds_at(Fluent2, Time+Offset). % [event,fluent,fluent2,offset,time] % Happens(event,time) & % Terminates(event,fluent,time) & % 0 < offset & % AntiTrajectory(fluent,time,fluent2,offset) & % !Declipped(time,fluent,time+offset) -> % HoldsAt(fluent2,time+offset). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',256). % From E: % % '->'( % (happens_at(Event,Time) , % terminates_at(Event,Fluent,Time) , % 0 holds_at(Fluent2, Time+Offset). %; End of file. %; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %; FILE: ecnet/Ontology.e %; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %; %; 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 %; %; integer %; :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',284). % sort diameter: integer % From E: % % subsort(diameter,integer). subsort(diameter,integer). %; object :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',288). % sort object % From E: % % sort(object). sort(object). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',290). % sort agent: object % From E: % % subsort(agent,object). subsort(agent,object). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',292). % sort physobj: object % From E: % % subsort(physobj,object). subsort(physobj,object). % sort bed: physobj :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',292). % From E: % % subsort(bed,physobj). subsort(bed,physobj). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',294). % sort snowflake: physobj % From E: % % subsort(snowflake,physobj). subsort(snowflake,physobj). % sort sky: physobj :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',294). % From E: % % subsort(sky,physobj). subsort(sky,physobj). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',297). % sort stuff: physobj % From E: % % subsort(stuff,physobj). subsort(stuff,physobj). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',299). % sort surface: physobj % From E: % % subsort(surface,physobj). subsort(surface,physobj). % sort ground: surface :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',299). % From E: % % subsort(ground,surface). subsort(ground,surface). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',302). % sort snow: stuff % From E: % % subsort(snow,stuff). subsort(snow,stuff). % sort ball :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',302). % From E: % % sort(ball). sort(ball). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',305). % sort food: physobj % From E: % % subsort(food,physobj). subsort(food,physobj). % sort fruit: food :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',305). % From E: % % subsort(fruit,food). subsort(fruit,food). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',307). % sort orange: fruit % From E: % % subsort(orange,fruit). subsort(orange,fruit). % sort salad: food :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',307). % From E: % % subsort(salad,food). subsort(salad,food). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',310). % sort clothing: physobj % From E: % % subsort(clothing,physobj). subsort(clothing,physobj). % sort scarf: clothing :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',310). % From E: % % subsort(scarf,clothing). subsort(scarf,clothing). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',312). % sort hat: clothing % From E: % % subsort(hat,clothing). subsort(hat,clothing). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',314). % sort vegetablematter: physobj % From E: % % subsort(vegetablematter,physobj). subsort(vegetablematter,physobj). % sort coal: vegetablematter :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',314). % From E: % % subsort(coal,vegetablematter). subsort(coal,vegetablematter). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',317). % sort bodypart: physobj % From E: % % subsort(bodypart,physobj). subsort(bodypart,physobj). % sort hand: bodypart :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',317). % From E: % % subsort(hand,bodypart). subsort(hand,bodypart). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',320). % sort papertowels: physobj % From E: % % subsort(papertowels,physobj). subsort(papertowels,physobj). % sort device: physobj :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',320). % From E: % % subsort(device,physobj). subsort(device,physobj). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',322). % sort electronicdevice: device % From E: % % subsort(electronicdevice,device). subsort(electronicdevice,device). % sort lamp: electronicdevice :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',322). % From E: % % subsort(lamp,electronicdevice). subsort(lamp,electronicdevice). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',325). % sort cat: physobj % From E: % % subsort(cat,physobj). subsort(cat,physobj). % sort horse: physobj :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',325). % From E: % % subsort(horse,physobj). subsort(horse,physobj). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',328). % sort weapon: physobj % From E: % % subsort(weapon,physobj). subsort(weapon,physobj). % sort gun: weapon :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',328). % From E: % % subsort(gun,weapon). subsort(gun,weapon). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',330). % sort bomb: weapon % From E: % % subsort(bomb,weapon). subsort(bomb,weapon). % sort bullet: weapon :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',330). % From E: % % subsort(bullet,weapon). subsort(bullet,weapon). %; location :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',335). % sort location % From E: % % sort(location). sort(location). % sort room: location, outside: location :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',335). % From E: % % subsort(room,location). subsort(room,location). % From E: % % subsort(outside,location). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',335). subsort(outside,location). %; portal :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',340). % sort portal % From E: % % sort(portal). sort(portal). % sort door: portal, staircase: portal :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',340). % From E: % % subsort(door,portal). subsort(door,portal). % From E: % % subsort(staircase,portal). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',340). subsort(staircase,portal). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',342). % sort street: portal % From E: % % subsort(street,portal). subsort(street,portal). % sort track: portal :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',342). % From E: % % subsort(track,portal). subsort(track,portal). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',345). % sort building % From E: % % sort(building). sort(building). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',347). % sort fire: object % From E: % % subsort(fire,object). subsort(fire,object). % sort smoke: physobj :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',347). % From E: % % subsort(smoke,physobj). subsort(smoke,physobj). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',350). % sort furniture: physobj % From E: % % subsort(furniture,physobj). subsort(furniture,physobj). % sort chair: furniture :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',350). % From E: % % subsort(chair,furniture). subsort(chair,furniture). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',352). % sort table: furniture % From E: % % subsort(table,furniture). subsort(table,furniture). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',354). % sort bill: physobj % From E: % % subsort(bill,physobj). subsort(bill,physobj). % sort ticket: physobj :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',354). % From E: % % subsort(ticket,physobj). subsort(ticket,physobj). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',356). % sort envelope: physobj % From E: % % subsort(envelope,physobj). subsort(envelope,physobj). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',358). % sort text: physobj % From E: % % subsort(text,physobj). subsort(text,physobj). % sort book: text :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',358). % From E: % % subsort(book,text). subsort(book,text). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',360). % sort letter: text % From E: % % subsort(letter,text). subsort(letter,text). % sort menu: text :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',360). % From E: % % subsort(menu,text). subsort(menu,text). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',363). % sort paper: physobj % From E: % % subsort(paper,physobj). subsort(paper,physobj). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',365). % sort content % From E: % % sort(content). sort(content). % sort script :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',365). % From E: % % sort(script). sort(script). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',368). % sort container: physobj % From E: % % subsort(container,physobj). subsort(container,physobj). % sort cigarette: physobj :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',368). % From E: % % subsort(cigarette,physobj). subsort(cigarette,physobj). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',370). % sort ashtray: physobj % From E: % % subsort(ashtray,physobj). subsort(ashtray,physobj). % sort umbrella: physobj :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',370). % From E: % % subsort(umbrella,physobj). subsort(umbrella,physobj). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',373). % sort pen: physobj % From E: % % subsort(pen,physobj). subsort(pen,physobj). %; End of file. %; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %; FILE: ecnet/RTSpace.e %; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %; %; 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 %; %; RTSpace: room-scale topological space %; %; We use topological and metric representations of space, %; at two levels of granularity---room-scale and object-scale. %; The RTSpace representation deals with topological space at %; the scale of rooms and outdoor locations. %; This representation of space consists of locations, which %; are connected by portals. There are two types of locations: %; rooms and outside areas (outsides). %; %; object is at location. % fluent At(object,location) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',404). % From E: % % fluent(at_loc(object,location)). mpred_prop(at_loc(object,location),fluent). fluents([at_loc/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',406). % manualrelease At % From E: % % :-call_pel_directive(manualrelease(at_loc)). :- call_pel_directive(manualrelease(at_loc)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',408). % [object1,location,time] % (% {object2} PartOf(object1,object2)) -> % ReleasedAt(At(object1,location),time). % From E: % % exists( % [Object2], % '->'( % partOf(Object1,Object2), % released_at(at_loc(Object1,Location),Time))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',408). exists([Object2], if(released(at_loc(Object1,Location)), partOf(Object1,Object2))). %; A state constraint says that an object %; is at one location at a time: % [object,location1,location2,time] % HoldsAt(At(object,location1),time) & % HoldsAt(At(object,location2),time) -> % location1=location2. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',414). % 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/test/ec_planner/ectest/ec_reader_test_ecnet.e',414). /* d_pre([ not(equals(Location1,Location2)), holds(at_loc(Object,Location1),Time_At), holds(at_loc(Object,Location2),Time_At) ]). */ % "% =================================". %; connectivity %; Side one of portal is location. % function Side1(portal): location :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',421). % From E: % % function(side1(portal),location). function(side1(portal),location). %; Side two of portal is location. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',424). % function Side2(portal): location % From E: % % function(side2(portal),location). function(side2(portal),location). %; The building of room is building. % function BuildingOf(room): building :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',426). % From E: % % function(buildingOf(room),building). function(buildingOf(room),building). %; object is at a location that has portal. % fluent NearPortal(object,portal) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',429). % From E: % % fluent(nearPortal(object,portal)). mpred_prop(nearPortal(object,portal),fluent). fluents([nearPortal/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',431). % noninertial NearPortal % From E: % % :-call_pel_directive(noninertial(nearPortal)). :- call_pel_directive(noninertial(nearPortal)). %; A state constraint says that an object is near %; a portal if and only if there is a location such that %; the object is at the location and one of the sides %; of the portal is the location: % [object,portal,time] % HoldsAt(NearPortal(object,portal),time) <-> :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',437). % {location}% % (Side1(portal)=location| % Side2(portal)=location) & % HoldsAt(At(object,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',439). % From E: % % exists( % [Location], % <->( % holds_at(nearPortal(Object,Portal),Time), % ((side1(Portal)=Location ; % side2(Portal)=Location) , % holds_at(at_loc(Object,Location),Time)))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',439). exists([Location], (nearPortal(Object, Portal)<->false((not(side1(Portal, Location)), not(side2(Portal, Location)))), at_loc(Object, Location))). %; locking and unlocking doors %; agent unlocks door. % event DoorUnlock(agent,door) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',446). % From E: % % event(doorUnlock(agent,door)). events([doorUnlock/2]). mpred_prop(doorUnlock(agent,door),action). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',446). actions([doorUnlock/2]). %; agent locks door. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',449). % event DoorLock(agent,door) % From E: % % event(doorLock(agent,door)). events([doorLock/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',449). mpred_prop(doorLock(agent,door),action). actions([doorLock/2]). %; door is unlocked. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',451). % fluent DoorUnlocked(door) % From E: % % fluent(doorUnlocked(door)). mpred_prop(doorUnlocked(door),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',451). fluents([doorUnlocked/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',453). %; A precondition axiom states that %; for an agent to unlock a door, %; the agent must be awake, %; the door must not already be unlocked, and %; the agent must be near the door: % [agent,door,time] % Happens(DoorUnlock(agent,door),time) -> % HoldsAt(Awake(agent),time) & % !HoldsAt(DoorUnlocked(door),time) & % HoldsAt(NearPortal(agent,door),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',458). % From E: % % '->'( % happens_at(doorUnlock(Agent,Door),Time), % (holds_at(awake(Agent),Time) , % holds_at(not(doorUnlocked(Door)),Time) , % holds_at(nearPortal(Agent,Door),Time))). % [Time]. if doorUnlock(Agent, Door)then awake(Agent), not doorUnlocked(Door), nearPortal(Agent, Door). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',458). /* reactive_rule([ happens(doorUnlock(Agent,Door), Time_From, Time_Until) ], [ holds(awake(Agent),Time_At), holds(not(doorUnlocked(Door)),Time_At), nearPortal(Agent,Door) ]). */ % "% =================================". %; An effect axiom states that %; if an agent unlocks a door, %; the door will be unlocked: % [agent,door,time] % Initiates(DoorUnlock(agent,door),DoorUnlocked(door),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',467). % From E: % % initiates_at( % doorUnlock(Agent,Door), % doorUnlocked(Door), % Time). % [Time]. doorUnlock(Agent, Door)initiates doorUnlocked(Door). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',467). /* initiated(happens(doorUnlock(Agent,Door), Time_From, Time_Until), doorUnlocked(Door), []). */ % "% =================================". %; A precondition axiom states that %; for an agent to lock a door, %; the agent must be awake, %; the door must be unlocked, and %; the agent must be near the door: % [agent,door,time] % Happens(DoorLock(agent,door),time) -> % HoldsAt(Awake(agent),time) & % HoldsAt(DoorUnlocked(door),time) & % HoldsAt(NearPortal(agent,door),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',475). % From E: % % '->'( % happens_at(doorLock(Agent,Door),Time), % (holds_at(awake(Agent),Time) , % holds_at(doorUnlocked(Door),Time) , % holds_at(nearPortal(Agent,Door),Time))). % [Time]. if doorLock(Agent, Door)then awake(Agent), doorUnlocked(Door), nearPortal(Agent, Door). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',475). /* reactive_rule([ happens(doorLock(Agent,Door), Time_From, Time_Until) ], [ holds(awake(Agent),Time_At), holds(doorUnlocked(Door),Time_At), nearPortal(Agent,Door) ]). */ % "% =================================". %; An effect axiom states that %; if an agent locks a door, %; the door will no longer be unlocked. % [agent,door,time] % Terminates(DoorLock(agent,door),DoorUnlocked(door),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',484). % From E: % % terminates_at( % doorLock(Agent,Door), % doorUnlocked(Door), % Time). % [Time]. doorLock(Agent, Door)terminates doorUnlocked(Door). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',484). /* terminated(happens(doorLock(Agent,Door), Time_From, Time_Until), doorUnlocked(Door), []). */ % "% =================================". %; A state constraint says that if a door is open, %; it is unlocked: % [door,time] % HoldsAt(DoorIsOpen(door),time) -> HoldsAt(DoorUnlocked(door),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',489). % From E: % % '->'( % holds_at(doorIsOpen(Door),Time), % holds_at(doorUnlocked(Door),Time)). % [Time]. doorUnlocked(Door)if doorIsOpen(Door). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',489). /* l_int(holds(doorUnlocked(Door),Time_At), [holds(doorIsOpen(Door),Time_At)]). */ % "% =================================". %; opening and closing doors %; agent opens door. % event DoorOpen(agent,door) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',494). % From E: % % event(doorOpen(agent,door)). events([doorOpen/2]). mpred_prop(doorOpen(agent,door),action). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',494). actions([doorOpen/2]). %; agent closes door. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',497). % event DoorClose(agent,door) % From E: % % event(doorClose(agent,door)). events([doorClose/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',497). mpred_prop(doorClose(agent,door),action). actions([doorClose/2]). %; door is open. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',499). % fluent DoorIsOpen(door) % From E: % % fluent(doorIsOpen(door)). mpred_prop(doorIsOpen(door),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',499). fluents([doorIsOpen/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',501). %; A precondition axiom states that %; for an agent to open a door, %; the agent must be awake, %; the door must not already be open, %; the door must be unlocked, and %; the agent must be near the door: % [agent,door,time] % Happens(DoorOpen(agent,door),time) -> % HoldsAt(Awake(agent),time) & % !HoldsAt(DoorIsOpen(door),time) & % HoldsAt(DoorUnlocked(door),time) & % HoldsAt(NearPortal(agent,door),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',507). % From E: % % '->'( % happens_at(doorOpen(Agent,Door),Time), % (holds_at(awake(Agent),Time) , % holds_at(not(doorIsOpen(Door)),Time) , % holds_at(doorUnlocked(Door),Time) , % holds_at(nearPortal(Agent,Door),Time))). % [Time]. if doorOpen(Agent, Door)then awake(Agent), not doorIsOpen(Door), doorUnlocked(Door), nearPortal(Agent, Door). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',507). /* reactive_rule([ happens(doorOpen(Agent,Door), Time_From, Time_Until) ], [ holds(awake(Agent),Time_At), holds(not(doorIsOpen(Door)),Time_At), holds(doorUnlocked(Door),Time_At), nearPortal(Agent,Door) ]). */ % "% =================================". %; An effect axiom states that %; if an agent opens a door, %; the door will be open: % [agent,door,time] % Initiates(DoorOpen(agent,door),DoorIsOpen(door),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',517). % From E: % % initiates_at( % doorOpen(Agent,Door), % doorIsOpen(Door), % Time). % [Time]. doorOpen(Agent, Door)initiates doorIsOpen(Door). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',517). /* initiated(happens(doorOpen(Agent,Door), Time_From, Time_Until), doorIsOpen(Door), []). */ % "% =================================". %; A precondition axiom states that %; for an agent to close a door, %; the agent must be awake, %; the door must be open, %; the door must be unlocked, and %; the agent must be near the door: % [agent,door,time] % Happens(DoorClose(agent,door),time) -> % HoldsAt(Awake(agent),time) & % HoldsAt(DoorIsOpen(door),time) & % HoldsAt(DoorUnlocked(door),time) & % HoldsAt(NearPortal(agent,door),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',526). % From E: % % '->'( % happens_at(doorClose(Agent,Door),Time), % (holds_at(awake(Agent),Time) , % holds_at(doorIsOpen(Door),Time) , % holds_at(doorUnlocked(Door),Time) , % holds_at(nearPortal(Agent,Door),Time))). % [Time]. if doorClose(Agent, Door)then awake(Agent), doorIsOpen(Door), doorUnlocked(Door), nearPortal(Agent, Door). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',526). /* reactive_rule([ happens(doorClose(Agent,Door), Time_From, Time_Until) ], [ holds(awake(Agent),Time_At), holds(doorIsOpen(Door),Time_At), holds(doorUnlocked(Door),Time_At), nearPortal(Agent,Door) ]). */ % "% =================================". %; An effect axiom states that %; if an agent closes a door, %; the door will no longer be open: % [agent,door,time] % Terminates(DoorClose(agent,door),DoorIsOpen(door),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',536). % From E: % % terminates_at( % doorClose(Agent,Door), % doorIsOpen(Door), % Time). % [Time]. doorClose(Agent, Door)terminates doorIsOpen(Door). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',536). /* terminated(happens(doorClose(Agent,Door), Time_From, Time_Until), doorIsOpen(Door), []). */ % "% =================================". %; passing through doors %; agent walks through side one of door. % event WalkThroughDoor12(agent,door) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',541). % From E: % % event(walkThroughDoor12(agent,door)). events([walkThroughDoor12/2]). mpred_prop(walkThroughDoor12(agent,door),action). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',541). actions([walkThroughDoor12/2]). %; agent walks through side two of door. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',544). % event WalkThroughDoor21(agent,door) % From E: % % event(walkThroughDoor21(agent,door)). events([walkThroughDoor21/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',544). mpred_prop(walkThroughDoor21(agent,door),action). actions([walkThroughDoor21/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',546). %; Precondition axioms state that %; for an agent to walk through a side of a door, %; the agent must be awake and standing, %; the door must be open, and %; the agent must be at the side of the door that %; the agent walks through: % [agent,door,time] % Happens(WalkThroughDoor12(agent,door),time) -> % HoldsAt(Awake(agent),time) & % HoldsAt(Standing(agent),time) & % HoldsAt(DoorIsOpen(door),time) & % HoldsAt(At(agent,Side1(door)),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',552). % From E: % % '->'( % happens_at(walkThroughDoor12(Agent,Door),Time), % (holds_at(awake(Agent),Time) , % holds_at(standing(Agent),Time) , % holds_at(doorIsOpen(Door),Time) , % holds_at(at_loc(Agent,side1(Door)),Time))). % [Time]. if walkThroughDoor12(Agent, Door)then awake(Agent), standing(Agent), doorIsOpen(Door), at_loc(Agent, side1(Door)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',552). /* reactive_rule([ happens(walkThroughDoor12(Agent,Door), Time_From, Time_Until) ], [ holds(awake(Agent),Time_At), holds(standing(Agent),Time_At), holds(doorIsOpen(Door),Time_At), holds(at_loc(Agent,side1(Door)), Time_At) ]). */ % "% =================================". % [agent,door,time] % Happens(WalkThroughDoor21(agent,door),time) -> % HoldsAt(Awake(agent),time) & % HoldsAt(Standing(agent),time) & % HoldsAt(DoorIsOpen(door),time) & % HoldsAt(At(agent,Side2(door)),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',560). % From E: % % '->'( % happens_at(walkThroughDoor21(Agent,Door),Time), % (holds_at(awake(Agent),Time) , % holds_at(standing(Agent),Time) , % holds_at(doorIsOpen(Door),Time) , % holds_at(at_loc(Agent,side2(Door)),Time))). % [Time]. if walkThroughDoor21(Agent, Door)then awake(Agent), standing(Agent), doorIsOpen(Door), at_loc(Agent, side2(Door)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',560). /* reactive_rule([ happens(walkThroughDoor21(Agent,Door), Time_From, Time_Until) ], [ holds(awake(Agent),Time_At), holds(standing(Agent),Time_At), holds(doorIsOpen(Door),Time_At), holds(at_loc(Agent,side2(Door)), Time_At) ]). */ % "% =================================". %; Effect axioms state that %; if an agent walks through one side of a door, %; the agent will be at the other side of the door: % [agent,door,location,time] % Side2(door)=location -> % Initiates(WalkThroughDoor12(agent,door),At(agent,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',569). % From E: % % '->'( % side2(Door)=Location, % initiates_at( % walkThroughDoor12(Agent,Door), % at_loc(Agent,Location), % Time)). % [Time]. walkThroughDoor12(Agent, Door)initiates at_loc(Agent, Location)if side2(Door, Location). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',569). /* initiated(happens(walkThroughDoor12(Agent,Door), Time_From, Time_Until), at_loc(Agent,Location), [side2(Door,Location)]). */ % "% =================================". % [agent,door,location,time] % Side1(door)=location -> % Initiates(WalkThroughDoor21(agent,door),At(agent,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',574). % From E: % % '->'( % side1(Door)=Location, % initiates_at( % walkThroughDoor21(Agent,Door), % at_loc(Agent,Location), % Time)). % [Time]. walkThroughDoor21(Agent, Door)initiates at_loc(Agent, Location)if side1(Door, Location). /* initiated(happens(walkThroughDoor21(Agent,Door), Time_From, Time_Until), at_loc(Agent,Location), [side1(Door,Location)]). */ % "% =================================". % [agent,door,location,time] % Side1(door)=location -> % Terminates(WalkThroughDoor12(agent,door),At(agent,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',578). % From E: % % '->'( % side1(Door)=Location, % terminates_at( % walkThroughDoor12(Agent,Door), % at_loc(Agent,Location), % Time)). % [Time]. walkThroughDoor12(Agent, Door)terminates at_loc(Agent, Location)if side1(Door, Location). /* terminated(happens(walkThroughDoor12(Agent,Door), Time_From, Time_Until), at_loc(Agent,Location), [side1(Door,Location)]). */ % "% =================================". % [agent,door,location,time] % Side2(door)=location -> % Terminates(WalkThroughDoor21(agent,door),At(agent,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',582). % From E: % % '->'( % side2(Door)=Location, % terminates_at( % walkThroughDoor21(Agent,Door), % at_loc(Agent,Location), % Time)). % [Time]. walkThroughDoor21(Agent, Door)terminates at_loc(Agent, Location)if side2(Door, Location). /* terminated(happens(walkThroughDoor21(Agent,Door), Time_From, Time_Until), at_loc(Agent,Location), [side2(Door,Location)]). */ % "% =================================". %; walking from one end of a street to another %; agent walks from the first end of street to the second end. % event WalkStreet12(agent,street) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',587). % From E: % % event(walkStreet12(agent,street)). events([walkStreet12/2]). mpred_prop(walkStreet12(agent,street),action). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',587). actions([walkStreet12/2]). %; agent walks from the second end of street to the first end. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',590). % event WalkStreet21(agent,street) % From E: % % event(walkStreet21(agent,street)). events([walkStreet21/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',590). mpred_prop(walkStreet21(agent,street),action). actions([walkStreet21/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',592). %; Precondition axioms state that %; for an agent to walk from one end of a street to another, %; the agent must be awake, %; the agent must be standing, and %; the agent must be at the first end of the street: % [agent,street,time] % Happens(WalkStreet12(agent,street),time) -> % HoldsAt(Awake(agent),time) & % HoldsAt(Standing(agent),time) & % HoldsAt(At(agent,Side1(street)),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',597). % From E: % % '->'( % happens_at(walkStreet12(Agent,Street),Time), % (holds_at(awake(Agent),Time) , % holds_at(standing(Agent),Time) , % holds_at(at_loc(Agent,side1(Street)),Time))). % [Time]. if walkStreet12(Agent, Street)then awake(Agent), standing(Agent), at_loc(Agent, side1(Street)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',597). /* reactive_rule([ happens(walkStreet12(Agent,Street), Time_From, Time_Until) ], [ holds(awake(Agent),Time_At), holds(standing(Agent),Time_At), holds(at_loc(Agent,side1(Street)), Time_At) ]). */ % "% =================================". % [agent,street,time] % Happens(WalkStreet21(agent,street),time) -> % HoldsAt(Awake(agent),time) & % HoldsAt(Standing(agent),time) & % HoldsAt(At(agent,Side2(street)),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',604). % From E: % % '->'( % happens_at(walkStreet21(Agent,Street),Time), % (holds_at(awake(Agent),Time) , % holds_at(standing(Agent),Time) , % holds_at(at_loc(Agent,side2(Street)),Time))). % [Time]. if walkStreet21(Agent, Street)then awake(Agent), standing(Agent), at_loc(Agent, side2(Street)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',604). /* reactive_rule([ happens(walkStreet21(Agent,Street), Time_From, Time_Until) ], [ holds(awake(Agent),Time_At), holds(standing(Agent),Time_At), holds(at_loc(Agent,side2(Street)), Time_At) ]). */ % "% =================================". %; Effect axioms state that %; if an agent walks from one end of a street to another, %; the agent will be at the other end of the street: % [agent,street,location,time] % Side2(street)=location -> % Initiates(WalkStreet12(agent,street),At(agent,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',612). % From E: % % '->'( % side2(Street)=Location, % initiates_at( % walkStreet12(Agent,Street), % at_loc(Agent,Location), % Time)). % [Time]. walkStreet12(Agent, Street)initiates at_loc(Agent, Location)if side2(Street, Location). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',612). /* initiated(happens(walkStreet12(Agent,Street), Time_From, Time_Until), at_loc(Agent,Location), [side2(Street,Location)]). */ % "% =================================". % [agent,street,location,time] % Side1(street)=location -> % Initiates(WalkStreet21(agent,street),At(agent,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',617). % From E: % % '->'( % side1(Street)=Location, % initiates_at( % walkStreet21(Agent,Street), % at_loc(Agent,Location), % Time)). % [Time]. walkStreet21(Agent, Street)initiates at_loc(Agent, Location)if side1(Street, Location). /* initiated(happens(walkStreet21(Agent,Street), Time_From, Time_Until), at_loc(Agent,Location), [side1(Street,Location)]). */ % "% =================================". % [agent,street,location,time] % Side1(street)=location -> % Terminates(WalkStreet12(agent,street),At(agent,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',621). % From E: % % '->'( % side1(Street)=Location, % terminates_at( % walkStreet12(Agent,Street), % at_loc(Agent,Location), % Time)). % [Time]. walkStreet12(Agent, Street)terminates at_loc(Agent, Location)if side1(Street, Location). /* terminated(happens(walkStreet12(Agent,Street), Time_From, Time_Until), at_loc(Agent,Location), [side1(Street,Location)]). */ % "% =================================". % [agent,street,location,time] % Side2(street)=location -> % Terminates(WalkStreet21(agent,street),At(agent,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',625). % From E: % % '->'( % side2(Street)=Location, % terminates_at( % walkStreet21(Agent,Street), % at_loc(Agent,Location), % Time)). % [Time]. walkStreet21(Agent, Street)terminates at_loc(Agent, Location)if side2(Street, Location). /* terminated(happens(walkStreet21(Agent,Street), Time_From, Time_Until), at_loc(Agent,Location), [side2(Street,Location)]). */ % "% =================================". %; floors %; The floor of room is integer. % function Floor(room): integer :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',630). % From E: % % function(floor(room),integer). function(floor(room),integer). %; walking up and down staircases %; agent walks down staircase. % event WalkDownStaircase(agent,staircase) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',635). % From E: % % event(walkDownStaircase(agent,staircase)). events([walkDownStaircase/2]). mpred_prop(walkDownStaircase(agent,staircase),action). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',635). actions([walkDownStaircase/2]). %; agent walks up staircase. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',638). % event WalkUpStaircase(agent,staircase) % From E: % % event(walkUpStaircase(agent,staircase)). events([walkUpStaircase/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',638). mpred_prop(walkUpStaircase(agent,staircase),action). actions([walkUpStaircase/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',640). %; Precondition axioms state that %; for an agent to walk down (up) a staircase, %; the agent must be awake, standing, and %; at the top (bottom) of the staircase: % [agent,staircase,time] % Happens(WalkDownStaircase(agent,staircase),time) -> % HoldsAt(Awake(agent),time) & % HoldsAt(Standing(agent),time) & % HoldsAt(At(agent,Side2(staircase)),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',644). % From E: % % '->'( % happens_at(walkDownStaircase(Agent,Staircase),Time), % (holds_at(awake(Agent),Time) , % holds_at(standing(Agent),Time) , % holds_at(at_loc(Agent,side2(Staircase)),Time))). % [Time]. if walkDownStaircase(Agent, Staircase)then awake(Agent), standing(Agent), at_loc(Agent, side2(Staircase)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',644). /* reactive_rule([ happens(walkDownStaircase(Agent,Staircase), Time_From, Time_Until) ], [ holds(awake(Agent),Time_At), holds(standing(Agent),Time_At), holds(at_loc(Agent,side2(Staircase)), Time_At) ]). */ % "% =================================". % [agent,staircase,time] % Happens(WalkUpStaircase(agent,staircase),time) -> % HoldsAt(Awake(agent),time) & % HoldsAt(Standing(agent),time) & % HoldsAt(At(agent,Side1(staircase)),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',651). % From E: % % '->'( % happens_at(walkUpStaircase(Agent,Staircase),Time), % (holds_at(awake(Agent),Time) , % holds_at(standing(Agent),Time) , % holds_at(at_loc(Agent,side1(Staircase)),Time))). % [Time]. if walkUpStaircase(Agent, Staircase)then awake(Agent), standing(Agent), at_loc(Agent, side1(Staircase)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',651). /* reactive_rule([ happens(walkUpStaircase(Agent,Staircase), Time_From, Time_Until) ], [ holds(awake(Agent),Time_At), holds(standing(Agent),Time_At), holds(at_loc(Agent,side1(Staircase)), Time_At) ]). */ % "% =================================". %; Effect axioms state that %; if an agent walks down (up) a staircase, %; the agent will be at the bottom (top) of the staircase: % [agent,staircase,room,time] % Side1(staircase)=room -> % Initiates(WalkDownStaircase(agent,staircase),At(agent,room),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',659). % From E: % % '->'( % side1(Staircase)=Room, % initiates_at( % walkDownStaircase(Agent,Staircase), % at_loc(Agent,Room), % Time)). % [Time]. walkDownStaircase(Agent, Staircase)initiates at_loc(Agent, Room)if side1(Staircase, Room). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',659). /* initiated(happens(walkDownStaircase(Agent,Staircase), Time_From, Time_Until), at_loc(Agent,Room), [side1(Staircase,Room)]). */ % "% =================================". % [agent,staircase,room,time] % Side2(staircase)=room -> % Terminates(WalkDownStaircase(agent,staircase),At(agent,room),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',664). % From E: % % '->'( % side2(Staircase)=Room, % terminates_at( % walkDownStaircase(Agent,Staircase), % at_loc(Agent,Room), % Time)). % [Time]. walkDownStaircase(Agent, Staircase)terminates at_loc(Agent, Room)if side2(Staircase, Room). /* terminated(happens(walkDownStaircase(Agent,Staircase), Time_From, Time_Until), at_loc(Agent,Room), [side2(Staircase,Room)]). */ % "% =================================". % [agent,staircase,room,time] % Side2(staircase)=room -> % Initiates(WalkUpStaircase(agent,staircase),At(agent,room),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',668). % From E: % % '->'( % side2(Staircase)=Room, % initiates_at( % walkUpStaircase(Agent,Staircase), % at_loc(Agent,Room), % Time)). % [Time]. walkUpStaircase(Agent, Staircase)initiates at_loc(Agent, Room)if side2(Staircase, Room). /* initiated(happens(walkUpStaircase(Agent,Staircase), Time_From, Time_Until), at_loc(Agent,Room), [side2(Staircase,Room)]). */ % "% =================================". % [agent,staircase,room,time] % Side1(staircase)=room -> % Terminates(WalkUpStaircase(agent,staircase),At(agent,room),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',672). % From E: % % '->'( % side1(Staircase)=Room, % terminates_at( % walkUpStaircase(Agent,Staircase), % at_loc(Agent,Room), % Time)). % [Time]. walkUpStaircase(Agent, Staircase)terminates at_loc(Agent, Room)if side1(Staircase, Room). /* terminated(happens(walkUpStaircase(Agent,Staircase), Time_From, Time_Until), at_loc(Agent,Room), [side1(Staircase,Room)]). */ % "% =================================". %; A state constraint says that if an agent is outside, %; the agent is dressed. % [agent,outside,time] % HoldsAt(At(agent,outside),time) -> % HoldsAt(Dressed(agent),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',677). % From E: % % '->'( % holds_at(at_loc(Agent,Outside),Time), % holds_at(dressed(Agent),Time)). % [Time]. dressed(Agent)if at_loc(Agent, Outside). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',677). /* l_int(holds(dressed(Agent),Time_At), [holds(at_loc(Agent,Outside),Time_At)]). */ % "% =================================". %; room looks out onto outside. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',682). % function LookOutOnto(room): outside % From E: % % function(lookOutOnto(room),outside). function(lookOutOnto(room),outside). %; location1 is adjacent to location2. % predicate Adjacent(location,location) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',684). % From E: % % predicate(adjacent(location,location)). mpred_prop(adjacent(location,location),predicate). predicates([adjacent/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',687). %; A state constraint says that %; two locations are adjacent if and only if %; they have a portal in common: % [location1,location2] :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',690). % Adjacent(location1,location2) <-> % {portal}% % (Side1(portal)=location1 & % Side2(portal)=location2) | % (Side2(portal)=location1 & % Side1(portal)=location2). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',690). % From E: % % exists( % [Portal], % <->( % adjacent(Location1,Location2), % ((side1(Portal)=Location1 , % side2(Portal)=Location2) ; % (side2(Portal)=Location1 , % side1(Portal)=Location2)))). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',690). exists([Portal], (adjacent(Location1, Location2)<->side1(Portal, Location1), side2(Portal, Location2);side2(Portal, Location1), side1(Portal, Location2))). %; The ground of outside is ground. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',698). % function GroundOf(outside): ground % From E: % % function(groundOf(outside),ground). function(groundOf(outside),ground). %; The sky of outside is sky. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',700). % function SkyOf(outside): sky % From E: % % function(skyOf(outside),sky). function(skyOf(outside),sky). %; State constraints fix the location of ground and sky: % [outside,ground,time] :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',704). % GroundOf(outside) = ground -> % HoldsAt(At(ground,outside),time). % From E: % % '->'( % groundOf(Outside)=Ground, % holds_at(at_loc(Ground,Outside),Time)). % [Time]. at_loc(Ground, Outside)if groundOf(Outside, Ground). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',704). /* l_int(holds(at_loc(Ground,Outside),Time_At), [groundOf(Outside,Ground)]). */ % "% =================================". % [outside,sky,time] % SkyOf(outside) = sky -> % HoldsAt(At(sky,outside),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',708). % From E: % % '->'( % skyOf(Outside)=Sky, % holds_at(at_loc(Sky,Outside),Time)). % [Time]. at_loc(Sky, Outside)if skyOf(Outside, Sky). /* l_int(holds(at_loc(Sky,Outside),Time_At), [skyOf(Outside,Sky)]). */ % "% =================================". %; End of file. %; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %; FILE: ecnet/OTSpace.e %; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %; %; 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 %; %; OTSpace: object-scale topological space %; %; The OTSpace representation deals with topological space at %; the scale of objects such as agents (humans and animals) %; and physical objects. %; %; PartOf %; physobj is a part of object. % predicate PartOf(physobj,object) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',738). % From E: % % predicate(partOf(physobj,object)). mpred_prop(partOf(physobj,object),predicate). predicates([partOf/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',741). %; A state constraint says that if a physical object %; is part of an object, the location of the %; physical object is the same as the location of the object: % [physobj,object,location,time] % PartOf(physobj,object) & % HoldsAt(At(object,location),time) -> % HoldsAt(At(physobj,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',744). % From E: % % '->'( % (partOf(Physobj,Object) , % holds_at(at_loc(Object,Location),Time)), % holds_at(at_loc(Physobj,Location),Time)). % [Time]. at_loc(Physobj, Location)if partOf(Physobj, Object), at_loc(Object, Location). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',744). /* l_int(holds(at_loc(Physobj,Location),Time_At), [ partOf(Physobj,Object), holds(at_loc(Object,Location),Time_At) ]). */ % "% =================================". %; rolling a snowball bigger %; agent rolls stuff1 along stuff2. % event RollAlong(agent,stuff,stuff) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',751). % From E: % % event(rollAlong(agent,stuff,stuff)). events([rollAlong/3]). mpred_prop(rollAlong(agent,stuff,stuff),action). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',751). actions([rollAlong/3]). %; The diameter of ball is diameter. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',754). % fluent Diameter(ball,diameter) % From E: % % fluent(diameter(ball,diameter)). mpred_prop(diameter(ball,diameter),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',754). fluents([diameter/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',756). %; A state constraint says that a ball has a unique diameter: % [ball,diameter1,diameter2,time] % HoldsAt(Diameter(ball,diameter1),time) & % HoldsAt(Diameter(ball,diameter2),time) -> % diameter1=diameter2. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',758). % From E: % % '->'( % (holds_at(diameter(Ball,Diameter1),Time) , % holds_at(diameter(Ball,Diameter2),Time)), % Diameter1=Diameter2). % [Time]. false not equals(Diameter1, Diameter2), diameter(Ball, Diameter1), diameter(Ball, Diameter2). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',758). /* d_pre([ not(equals(Diameter1,Diameter2)), holds(diameter(Ball,Diameter1),Time_At), holds(diameter(Ball,Diameter2),Time_At) ]). */ % "% =================================". %; Effect axiom state that if an agent rolls some snow along %; some other snow, the diameter of the first snow will increase: % [agent,snow1,snow2,diameter1,diameter2,time] % HoldsAt(Diameter(snow1,diameter1),time) & % diameter2 = diameter1+1 -> % Initiates(RollAlong(agent,snow1,snow2), % Diameter(snow1,diameter2), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',764). % From E: % % '->'( % (holds_at(diameter(Snow1,Diameter1),Time) , % Diameter2=Diameter1+1), % initiates_at( % rollAlong(Agent,Snow1,Snow2), % diameter(Snow1,Diameter2), % Time)). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',764). diameter(Snow1, Diameter1), Diameter2=Diameter1+1 -> initiates(rollAlong(Agent, Snow1, Snow2), diameter(Snow1, Diameter2)). % [agent,snow1,snow2,diameter1,time] % HoldsAt(Diameter(snow1,diameter1),time) -> % Terminates(RollAlong(agent,snow1,snow2), % Diameter(snow1,diameter1), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',772). % From E: % % '->'( % holds_at(diameter(Snow1,Diameter1),Time), % terminates_at( % rollAlong(Agent,Snow1,Snow2), % diameter(Snow1,Diameter1), % Time)). % [Time]. rollAlong(Agent, Snow1, Snow2)terminates diameter(Snow1, Diameter1)if diameter(Snow1, Diameter1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',772). /* terminated(happens(rollAlong(Agent,Snow1,Snow2), Time_From, Time_Until), diameter(Snow1,Diameter1), [ holds(diameter(Snow1,Diameter1), Time_From) ]). */ % "% =================================". %; A precondition axiom states that %; for an agent to roll some snow along some other snow, %; there must be a location such that %; the agent is at the location, %; the first snow is at the location, and %; the second snow is at the location: %;[agent,snow1,snow2,time] %;Happens(RollAlong(agent,snow1,snow2),time) -> %;{location} %;HoldsAt(At(agent,location),time) & %;HoldsAt(At(snow1,location),time) & %;HoldsAt(At(snow2,location),time). %; motion %; object moves (in place). % event Move(object) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',792). % From E: % % event(move(object)). mpred_prop(move(object),event). events([move/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',795). %; Holding %; agent is holding physobj. % fluent Holding(agent,physobj) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',797). % From E: % % fluent(holding(agent,physobj)). mpred_prop(holding(agent,physobj),fluent). fluents([holding/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',797). %; agent holds or picks up physobj. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',800). % event Hold(agent,physobj) % From E: % % event(hold(agent,physobj)). events([hold/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',800). mpred_prop(hold(agent,physobj),action). actions([hold/2]). %; agent picks up some stuff1 from stuff2. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',802). % event HoldSome(agent,stuff,stuff) % From E: % % event(holdSome(agent,stuff,stuff)). events([holdSome/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',802). mpred_prop(holdSome(agent,stuff,stuff),action). actions([holdSome/3]). %; agent releases or lets go of physobj. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',804). % event LetGoOf(agent,physobj) % From E: % % event(letGoOf(agent,physobj)). events([letGoOf/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',804). mpred_prop(letGoOf(agent,physobj),action). actions([letGoOf/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',806). %; An effect axiom states that if an agent holds %; a physical object, the agent will be holding the %; physical object: % [agent,physobj,time] % Initiates(Hold(agent,physobj),Holding(agent,physobj),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',809). % From E: % % initiates_at( % hold(Agent,Physobj), % holding(Agent,Physobj), % Time). % [Time]. hold(Agent, Physobj)initiates holding(Agent, Physobj). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',809). /* initiated(happens(hold(Agent,Physobj), Time_From, Time_Until), holding(Agent,Physobj), []). */ % "% =================================". %; A precondition axiom states that %; for an agent to hold a physical object, %; there must be a location such that %; the agent is at the location and %; the physical object is at the location: %;[agent,physobj,time] %;Happens(Hold(agent,physobj),time) -> %;{location} %; HoldsAt(At(agent,location),time) & %; HoldsAt(At(physobj,location),time). %; An effect axiom states that if an agent %; lets go of a physical object, the agent is no longer holding %; the physical object: % [agent,physobj,time] % Terminates(LetGoOf(agent,physobj),Holding(agent,physobj),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',826). % From E: % % terminates_at( % letGoOf(Agent,Physobj), % holding(Agent,Physobj), % Time). % [Time]. letGoOf(Agent, Physobj)terminates holding(Agent, Physobj). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',826). /* terminated(happens(letGoOf(Agent,Physobj), Time_From, Time_Until), holding(Agent,Physobj), []). */ % "% =================================". %; A precondition axiom states that %; for an agent to let go of a physical object, %; the agent must be holding the physical object: % [agent,physobj,time] % Happens(LetGoOf(agent,physobj),time) -> % HoldsAt(Holding(agent,physobj),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',832). % From E: % % '->'( % happens_at(letGoOf(Agent,Physobj),Time), % holds_at(holding(Agent,Physobj),Time)). % [Time]. holding(Agent, Physobj)if letGoOf(Agent, Physobj). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',832). /* l_int(holds(holding(Agent,Physobj),Time_At), [ happens(letGoOf(Agent,Physobj), Time_At, Time_At) ]). */ % "% =================================". %; A releases axiom states that if an agent holds %; a physical object, %; the physical object's location will be released %; from inertia: % [agent,physobj,location,time] % Releases(Hold(agent,physobj),At(physobj,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',840). % From E: % % releases_at( % hold(Agent,Physobj), % at_loc(Physobj,Location), % Time). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',840). releases(hold(Agent,Physobj), at_loc(Physobj,Location)). %; A state constraint says that if an agent is holding %; a physical object and the agent is at a location, %; the physical object is also at the location: % [agent,physobj,location,time] % HoldsAt(Holding(agent,physobj),time) & % HoldsAt(At(agent,location),time) -> % HoldsAt(At(physobj,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',846). % From E: % % '->'( % (holds_at(holding(Agent,Physobj),Time) , % holds_at(at_loc(Agent,Location),Time)), % holds_at(at_loc(Physobj,Location),Time)). % [Time]. at_loc(Physobj, Location)if holding(Agent, Physobj), at_loc(Agent, Location). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',846). /* l_int(holds(at_loc(Physobj,Location),Time_At), [ holds(holding(Agent,Physobj),Time_At), holds(at_loc(Agent,Location),Time_At) ]). */ % "% =================================". %; A releases axiom states that if an agent holds %; a physical object, %; the locations of the parts of the physical object %; will be released from inertia: % [agent,physobj1,physobj2,location,time] % PartOf(physobj1,physobj2) -> % Releases(Hold(agent,physobj2),At(physobj1,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',855). % From E: % % '->'( % partOf(Physobj1,Physobj2), % releases_at( % hold(Agent,Physobj2), % at_loc(Physobj1,Location), % Time)). % [Time]. if partOf(Physobj1, Physobj2)then releases(hold(Agent, Physobj2), at_loc(Physobj1, Location)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',855). /* reactive_rule([partOf(Physobj1,Physobj2)], [ releases(hold(Agent,Physobj2), at_loc(Physobj1,Location)) ]). */ % "% =================================". %; Further, if an agent holds a physical object, %; the locations of the physical objects of which %; the physical object is a part %; will be released from inertia: % [agent,physobj1,physobj2,location,time] % PartOf(physobj1,physobj2) -> % Releases(Hold(agent,physobj1),At(physobj2,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',863). % From E: % % '->'( % partOf(Physobj1,Physobj2), % releases_at( % hold(Agent,Physobj1), % at_loc(Physobj2,Location), % Time)). % [Time]. if partOf(Physobj1, Physobj2)then releases(hold(Agent, Physobj1), at_loc(Physobj2, Location)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',863). /* reactive_rule([partOf(Physobj1,Physobj2)], [ releases(hold(Agent,Physobj1), at_loc(Physobj2,Location)) ]). */ % "% =================================". %;[agent,physobj,location1,location2,time] %;(!{object} PartOf(physobj,object)) & %;HoldsAt(At(agent,location1),time) & %;location1 != location2 -> %;Terminates(LetGoOf(agent,physobj),At(physobj,location2),time). % [agent,physobj,location,time] % (!{object} PartOf(physobj,object)) & % HoldsAt(At(agent,location),time) -> % Initiates(LetGoOf(agent,physobj),At(physobj,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',873). % From E: % % '->'( % (not( % exists( % [Object], % partOf(Physobj,Object))) , % holds_at(at_loc(Agent,Location),Time)), % initiates_at( % letGoOf(Agent,Physobj), % at_loc(Physobj,Location), % Time)). % [Time]. letGoOf(Agent, Physobj)initiates at_loc(Physobj, Location)if not partOf(Physobj, Object), at_loc(Agent, Location). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',873). /* initiated(happens(letGoOf(Agent,Physobj), Time_From, Time_Until), at_loc(Physobj,Location), [ not(partOf(Physobj,Object)), holds(at_loc(Agent,Location),Time_From) ]). */ % "% =================================". %;[agent,physobj1,physobj2,location1,location2,time] %;PartOf(physobj1,physobj2) & %;(!{object} PartOf(physobj2,object)) & %;HoldsAt(At(agent,location1),time) & %;location1 != location2 -> %;Terminates(LetGoOf(agent,physobj1),At(physobj2,location2),time). % [agent,physobj1,physobj2,location,time] % PartOf(physobj1,physobj2) & % (!{object} PartOf(physobj2,object)) & % HoldsAt(At(agent,location),time) -> % Initiates(LetGoOf(agent,physobj1),At(physobj2,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',885). % From E: % % '->'( % (partOf(Physobj1,Physobj2) , % not( % exists( % [Object], % partOf(Physobj2,Object))) , % holds_at(at_loc(Agent,Location),Time)), % initiates_at( % letGoOf(Agent,Physobj1), % at_loc(Physobj2,Location), % Time)). % [Time]. letGoOf(Agent, Physobj1)initiates at_loc(Physobj2, Location)if partOf(Physobj1, Physobj2), not partOf(Physobj2, Object), at_loc(Agent, Location). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',885). /* initiated(happens(letGoOf(Agent,Physobj1), Time_From, Time_Until), at_loc(Physobj2,Location), [ partOf(Physobj1,Physobj2), not(partOf(Physobj2,Object)), holds(at_loc(Agent,Location),Time_From) ]). */ % "% =================================". %; An effect axiom states that if an agent is at a location %; and lets go of a physical object, the physical object %; will be at the location: % [agent,physobj,location,time] % HoldsAt(At(agent,location),time) -> % Initiates(LetGoOf(agent,physobj),At(physobj,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',894). % From E: % % '->'( % holds_at(at_loc(Agent,Location),Time), % initiates_at( % letGoOf(Agent,Physobj), % at_loc(Physobj,Location), % Time)). % [Time]. letGoOf(Agent, Physobj)initiates at_loc(Physobj, Location)if at_loc(Agent, Location). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',894). /* initiated(happens(letGoOf(Agent,Physobj), Time_From, Time_Until), at_loc(Physobj,Location), [holds(at_loc(Agent,Location),Time_From)]). */ % "% =================================". %; An effect axiom states that if an agent picks up %; some stuff out of some other stuff, the agent will %; be holding the first stuff: % [agent,stuff1,stuff2,time] % Initiates(HoldSome(agent,stuff1,stuff2), % Holding(agent,stuff1), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',901). % From E: % % initiates_at( % holdSome(Agent,Stuff1,Stuff2), % holding(Agent,Stuff1), % Time). % [Time]. holdSome(Agent, Stuff1, Stuff2)initiates holding(Agent, Stuff1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',901). /* initiated(happens(holdSome(Agent,Stuff1,Stuff2), Time_From, Time_Until), holding(Agent,Stuff1), []). */ % "% =================================". %; A precondition axiom states that %; for an agent to pick up some stuff out of some other stuff, %; the first stuff must be a part of the second stuff and %; there must be a location such that the agent is at the location, %; the first stuff is at the location, and the second stuff is %; at the location: % [agent,stuff1,stuff2,time] % Happens(HoldSome(agent,stuff1,stuff2),time) -> % PartOf(stuff1,stuff2) & :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',912). % {location}% % HoldsAt(At(agent,location),time) & % HoldsAt(At(stuff1,location),time) & % HoldsAt(At(stuff2,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',915). % From E: % % exists( % [Location], % '->'( % happens_at(holdSome(Agent,Stuff1,Stuff2),Time), % (partOf(Stuff1,Stuff2) , % holds_at(at_loc(Agent,Location),Time) , % holds_at(at_loc(Stuff1,Location),Time) , % holds_at(at_loc(Stuff2,Location),Time)))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',915). exists([Location], if((partOf(Stuff1, Stuff2), at_loc(Agent, Location), at_loc(Stuff1, Location), at_loc(Stuff2, Location)), holdSome(Agent, Stuff1, Stuff2))). %; A releases axiom states that if an agent picks up some %; stuff out of some other stuff, %; the first stuff's location will be released %; from inertia: % [agent,stuff1,stuff2,location,time] % Releases(HoldSome(agent,stuff1,stuff2),At(stuff1,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',924). % From E: % % releases_at( % holdSome(Agent,Stuff1,Stuff2), % at_loc(Stuff1,Location), % Time). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',924). releases(holdSome(Agent,Stuff1,Stuff2), at_loc(Stuff1,Location)). %; Inside %; physobj1 is inside physobj2. % fluent Inside(physobj,physobj) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',929). % From E: % % fluent(inside(physobj,physobj)). mpred_prop(inside(physobj,physobj),fluent). fluents([inside/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',929). %; agent puts physobj1 inside physobj2. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',932). % event PutInside(agent,physobj,physobj) % From E: % % event(putInside(agent,physobj,physobj)). events([putInside/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',932). mpred_prop(putInside(agent,physobj,physobj),action). actions([putInside/3]). %; agent takes physobj1 out of physobj2. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',934). % event TakeOutOf(agent,physobj,physobj) % From E: % % event(takeOutOf(agent,physobj,physobj)). events([takeOutOf/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',934). mpred_prop(takeOutOf(agent,physobj,physobj),action). actions([takeOutOf/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',936). %; A state constraint says that a physical object cannot %; be inside itself: % [physobj1,physobj2,time] % HoldsAt(Inside(physobj1,physobj2),time) -> % physobj1!=physobj2. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',938). % From E: % % '->'( % holds_at(inside(Physobj1,Physobj2),Time), % Physobj1\=Physobj2). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',938). inside(Physobj1, Physobj2) -> Physobj1\=Physobj2. %; A state constraint says that if a physical object is %; inside another physical object, the second physical object %; is not inside the first physical object: % [physobj1,physobj2,time] % HoldsAt(Inside(physobj1,physobj2),time) -> % !HoldsAt(Inside(physobj2,physobj1),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',945). % From E: % % '->'( % holds_at(inside(Physobj1,Physobj2),Time), % holds_at(not(inside(Physobj2,Physobj1)),Time)). % [Time]. not inside(Physobj2, Physobj1)if inside(Physobj1, Physobj2). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',945). /* l_int(holds(not(inside(Physobj2,Physobj1)),Time_At), [holds(inside(Physobj1,Physobj2),Time_At)]). */ % "% =================================". %; An effect axiom states that if an agent puts a physical %; object inside another physical object, the first %; physical object will be inside the second physical object: % [agent,physobj1,physobj2,time] % Initiates(PutInside(agent,physobj1,physobj2), % Inside(physobj1,physobj2),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',952). % From E: % % initiates_at( % putInside(Agent,Physobj1,Physobj2), % inside(Physobj1,Physobj2), % Time). % [Time]. putInside(Agent, Physobj1, Physobj2)initiates inside(Physobj1, Physobj2). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',952). /* initiated(happens(putInside(Agent,Physobj1,Physobj2), Time_From, Time_Until), inside(Physobj1,Physobj2), []). */ % "% =================================". %; An effect axiom states that if an agent puts a physical %; object inside another physical object, the agent will %; no longer be holding the first physical object: % [agent,physobj1,physobj2,time] % Terminates(PutInside(agent,physobj1,physobj2), % Holding(agent,physobj1),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',959). % From E: % % terminates_at( % putInside(Agent,Physobj1,Physobj2), % holding(Agent,Physobj1), % Time). % [Time]. putInside(Agent, Physobj1, Physobj2)terminates holding(Agent, Physobj1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',959). /* terminated(happens(putInside(Agent,Physobj1,Physobj2), Time_From, Time_Until), holding(Agent,Physobj1), []). */ % "% =================================". %; A precondition axiom states that %; for an agent to put a physical object inside another %; physical object, %; the agent must be holding the first physical object %; and there must be a location such that %; the agent is at the location and %; the second physical object is at the location: %;[agent,physobj1,physobj2,time] %;Happens(PutInside(agent,physobj1,physobj2),time) -> %;HoldsAt(Holding(agent,physobj1),time) & %;{location} %; HoldsAt(At(agent,location),time) & %; HoldsAt(At(physobj2,location),time). %; An effect axiom states that %; if an agent takes a physical object out of another %; physical object, the first physical object %; will no longer be inside the second physical object: % [agent,physobj1,physobj2,time] % Terminates(TakeOutOf(agent,physobj1,physobj2), % Inside(physobj1,physobj2),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',981). % From E: % % terminates_at( % takeOutOf(Agent,Physobj1,Physobj2), % inside(Physobj1,Physobj2), % Time). % [Time]. takeOutOf(Agent, Physobj1, Physobj2)terminates inside(Physobj1, Physobj2). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',981). /* terminated(happens(takeOutOf(Agent,Physobj1,Physobj2), Time_From, Time_Until), inside(Physobj1,Physobj2), []). */ % "% =================================". %; A precondition axiom states that %; for an agent to take a physical object out of another %; physical object, %; the first physical object must be inside the second physical object %; and there must be a location such that %; the agent is at the location, %; the first physical object is at the location, and %; the second physical object is at the location: % [agent,physobj1,physobj2,time] % Happens(TakeOutOf(agent,physobj1,physobj2),time) -> % HoldsAt(Inside(physobj1,physobj2),time) & :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',993). % {location}% % HoldsAt(At(agent,location),time) & % HoldsAt(At(physobj1,location),time) & % HoldsAt(At(physobj2,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',996). % From E: % % exists( % [Location], % '->'( % happens_at(takeOutOf(Agent,Physobj1,Physobj2),Time), % (holds_at(inside(Physobj1,Physobj2),Time) , % holds_at(at_loc(Agent,Location),Time) , % holds_at(at_loc(Physobj1,Location),Time) , % holds_at(at_loc(Physobj2,Location),Time)))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',996). exists([Location], if((inside(Physobj1, Physobj2), at_loc(Agent, Location), at_loc(Physobj1, Location), at_loc(Physobj2, Location)), takeOutOf(Agent, Physobj1, Physobj2))). %; A releases axiom states that if an agent puts a physical %; object inside another physical object, %; the first physical object's location will be released %; from inertia: % [agent,physobj1,physobj2,location,time] % Releases(PutInside(agent,physobj1,physobj2), % At(physobj1,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1005). % From E: % % releases_at( % putInside(Agent,Physobj1,Physobj2), % at_loc(Physobj1,Location), % Time). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1005). releases(putInside(Agent,Physobj1,Physobj2), at_loc(Physobj1,Location)). %; A state constraint says that if a physical object is inside %; another physical object and the second physical object is %; at a location, the first physical object is also at the location: % [physobj1,physobj2,location,time] % HoldsAt(Inside(physobj1,physobj2),time) & % HoldsAt(At(physobj2,location),time) -> % HoldsAt(At(physobj1,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1012). % From E: % % '->'( % (holds_at(inside(Physobj1,Physobj2),Time) , % holds_at(at_loc(Physobj2,Location),Time)), % holds_at(at_loc(Physobj1,Location),Time)). % [Time]. at_loc(Physobj1, Location)if inside(Physobj1, Physobj2), at_loc(Physobj2, Location). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1012). /* l_int(holds(at_loc(Physobj1,Location),Time_At), [ holds(inside(Physobj1,Physobj2),Time_At), holds(at_loc(Physobj2,Location),Time_At) ]). */ % "% =================================". %; An effect axiom states that if an agent takes a physical %; object out of another physical object, %; the agent will be holding the first physical object: % [agent,physobj1,physobj2,time] % Initiates(TakeOutOf(agent,physobj1,physobj2), % Holding(agent,physobj1), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1020). % From E: % % initiates_at( % takeOutOf(Agent,Physobj1,Physobj2), % holding(Agent,Physobj1), % Time). % [Time]. takeOutOf(Agent, Physobj1, Physobj2)initiates holding(Agent, Physobj1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1020). /* initiated(happens(takeOutOf(Agent,Physobj1,Physobj2), Time_From, Time_Until), holding(Agent,Physobj1), []). */ % "% =================================". %; On %; physobj1 is on physobj2. % fluent On(physobj,physobj) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1027). % From E: % % fluent(on(physobj,physobj)). mpred_prop(on(physobj,physobj),fluent). fluents([on/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1030). %; agent places physobj1 on physobj2. % event PlaceOn(agent,physobj,physobj) % From E: % % event(placeOn(agent,physobj,physobj)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1030). events([placeOn/3]). mpred_prop(placeOn(agent,physobj,physobj),action). actions([placeOn/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1030). %; agent takes physobj1 off of physobj2. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1033). % event TakeOffOf(agent,physobj,physobj) % From E: % % event(takeOffOf(agent,physobj,physobj)). events([takeOffOf/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1033). mpred_prop(takeOffOf(agent,physobj,physobj),action). actions([takeOffOf/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1035). %; A state constraint says that a physical object cannot %; be on itself: % [physobj1,physobj2,time] % HoldsAt(On(physobj1,physobj2),time) -> % physobj1!=physobj2. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1037). % From E: % % '->'( % holds_at(on(Physobj1,Physobj2),Time), % Physobj1\=Physobj2). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1037). on(Physobj1, Physobj2) -> Physobj1\=Physobj2. %; A state constraint says that if a physical object is %; on another physical object, the second physical object %; is not on the first physical object: % [physobj1,physobj2,time] % HoldsAt(On(physobj1,physobj2),time) -> % !HoldsAt(On(physobj2,physobj1),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1044). % From E: % % '->'( % holds_at(on(Physobj1,Physobj2),Time), % holds_at(not(on(Physobj2,Physobj1)),Time)). % [Time]. not on(Physobj2, Physobj1)if on(Physobj1, Physobj2). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1044). /* l_int(holds(not(on(Physobj2,Physobj1)),Time_At), [holds(on(Physobj1,Physobj2),Time_At)]). */ % "% =================================". %; An effect axiom states that if an agent places a physical %; object on another physical object, the first %; physical object will be on the second physical object: % [agent,physobj1,physobj2,time] % Initiates(PlaceOn(agent,physobj1,physobj2), % On(physobj1,physobj2),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1051). % From E: % % initiates_at( % placeOn(Agent,Physobj1,Physobj2), % on(Physobj1,Physobj2), % Time). % [Time]. placeOn(Agent, Physobj1, Physobj2)initiates on(Physobj1, Physobj2). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1051). /* initiated(happens(placeOn(Agent,Physobj1,Physobj2), Time_From, Time_Until), on(Physobj1,Physobj2), []). */ % "% =================================". %; An effect axiom states that if an agent places a physical %; object on another physical object, the agent will %; no longer be holding the first physical object: % [agent,physobj1,physobj2,time] % Terminates(PlaceOn(agent,physobj1,physobj2), % Holding(agent,physobj1),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1058). % From E: % % terminates_at( % placeOn(Agent,Physobj1,Physobj2), % holding(Agent,Physobj1), % Time). % [Time]. placeOn(Agent, Physobj1, Physobj2)terminates holding(Agent, Physobj1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1058). /* terminated(happens(placeOn(Agent,Physobj1,Physobj2), Time_From, Time_Until), holding(Agent,Physobj1), []). */ % "% =================================". %; A precondition axiom states that %; for an agent to place a physical object on another %; physical object, %; the agent must be holding the first physical object %; and there must be a location such that %; the agent is at the location and %; the second physical object is at the location: %;[agent,physobj1,physobj2,time] %;Happens(PlaceOn(agent,physobj1,physobj2),time) -> %;HoldsAt(Holding(agent,physobj1),time) & %;{location} %; HoldsAt(At(agent,location),time) & %; HoldsAt(At(physobj2,location),time). %; An effect axiom states that %; if an agent takes a physical object off of another %; physical object, the first physical object %; will no longer be on the second physical object: % [agent,physobj1,physobj2,time] % Terminates(TakeOffOf(agent,physobj1,physobj2), % On(physobj1,physobj2),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1080). % From E: % % terminates_at( % takeOffOf(Agent,Physobj1,Physobj2), % on(Physobj1,Physobj2), % Time). % [Time]. takeOffOf(Agent, Physobj1, Physobj2)terminates on(Physobj1, Physobj2). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1080). /* terminated(happens(takeOffOf(Agent,Physobj1,Physobj2), Time_From, Time_Until), on(Physobj1,Physobj2), []). */ % "% =================================". %; An effect axiom states that if an agent takes a physical %; object off of another physical object, %; the agent will be holding the first physical object: % [agent,physobj1,physobj2,time] % Initiates(TakeOffOf(agent,physobj1,physobj2), % Holding(agent,physobj1),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1087). % From E: % % initiates_at( % takeOffOf(Agent,Physobj1,Physobj2), % holding(Agent,Physobj1), % Time). % [Time]. takeOffOf(Agent, Physobj1, Physobj2)initiates holding(Agent, Physobj1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1087). /* initiated(happens(takeOffOf(Agent,Physobj1,Physobj2), Time_From, Time_Until), holding(Agent,Physobj1), []). */ % "% =================================". %; A precondition axiom states that %; for an agent to take a physical object off of another %; physical object, %; the first physical object must be on the second physical object %; and there must be a location such that %; the agent is at the location and %; the first physical object is at the location: %; the second physical object is at the location: % [agent,physobj1,physobj2,time] % Happens(TakeOffOf(agent,physobj1,physobj2),time) -> % HoldsAt(On(physobj1,physobj2),time) & :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1099). % {location}% % HoldsAt(At(agent,location),time) & % HoldsAt(At(physobj1,location),time) & % HoldsAt(At(physobj2,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1102). % From E: % % exists( % [Location], % '->'( % happens_at(takeOffOf(Agent,Physobj1,Physobj2),Time), % (holds_at(on(Physobj1,Physobj2),Time) , % holds_at(at_loc(Agent,Location),Time) , % holds_at(at_loc(Physobj1,Location),Time) , % holds_at(at_loc(Physobj2,Location),Time)))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1102). exists([Location], if((on(Physobj1, Physobj2), at_loc(Agent, Location), at_loc(Physobj1, Location), at_loc(Physobj2, Location)), takeOffOf(Agent, Physobj1, Physobj2))). %; A releases axiom states that if an agent places a physical %; object on another physical object, %; the first physical object's location will be released %; from inertia: % [agent,physobj1,physobj2,location,time] % Releases(PlaceOn(agent,physobj1,physobj2), % At(physobj1,location), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1111). % From E: % % releases_at( % placeOn(Agent,Physobj1,Physobj2), % at_loc(Physobj1,Location), % Time). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1111). releases(placeOn(Agent,Physobj1,Physobj2), at_loc(Physobj1,Location)). %; A state constraint says that if a physical object is on %; another physical object and the second physical object is %; at a location, the first physical object is also at the location: % [physobj1,physobj2,location,time] % HoldsAt(On(physobj1,physobj2),time) & % HoldsAt(At(physobj2,location),time) -> % HoldsAt(At(physobj1,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1119). % From E: % % '->'( % (holds_at(on(Physobj1,Physobj2),Time) , % holds_at(at_loc(Physobj2,Location),Time)), % holds_at(at_loc(Physobj1,Location),Time)). % [Time]. at_loc(Physobj1, Location)if on(Physobj1, Physobj2), at_loc(Physobj2, Location). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1119). /* l_int(holds(at_loc(Physobj1,Location),Time_At), [ holds(on(Physobj1,Physobj2),Time_At), holds(at_loc(Physobj2,Location),Time_At) ]). */ % "% =================================". % fluent Near(agent,object) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1123). % From E: % % fluent(near(agent,object)). mpred_prop(near(agent,object),fluent). fluents([near/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1125). % event WalkFromTo(agent,object,object) % From E: % % event(walkFromTo(agent,object,object)). events([walkFromTo/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1125). mpred_prop(walkFromTo(agent,object,object),action). actions([walkFromTo/3]). % event WalkFrom(agent,object) % From E: % % event(walkFrom(agent,object)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1125). events([walkFrom/2]). mpred_prop(walkFrom(agent,object),action). actions([walkFrom/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1127). % event RunFromTo(agent,object,object) % From E: % % event(runFromTo(agent,object,object)). events([runFromTo/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1127). mpred_prop(runFromTo(agent,object,object),action). actions([runFromTo/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1129). % [agent,object1,object2,time] % Initiates(WalkFromTo(agent,object1,object2), % Near(agent,object2), % time). % From E: % % initiates_at( % walkFromTo(Agent,Object1,Object2), % near(Agent,Object2), % Time). % [Time]. walkFromTo(Agent, Object1, Object2)initiates near(Agent, Object2). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1129). /* initiated(happens(walkFromTo(Agent,Object1,Object2), Time_From, Time_Until), near(Agent,Object2), []). */ % "% =================================". % [agent,object1,object2,time] % Terminates(WalkFromTo(agent,object1,object2), % Near(agent,object1), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1135). % From E: % % terminates_at( % walkFromTo(Agent,Object1,Object2), % near(Agent,Object1), % Time). % [Time]. walkFromTo(Agent, Object1, Object2)terminates near(Agent, Object1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1135). /* terminated(happens(walkFromTo(Agent,Object1,Object2), Time_From, Time_Until), near(Agent,Object1), []). */ % "% =================================". % [agent,object1,object2,time] % Happens(WalkFromTo(agent,object1,object2),time) -> % {location}% % HoldsAt(At(agent,location),time) & % HoldsAt(At(object1,location),time) & % HoldsAt(At(object2,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1140). % From E: % % exists( % [Location], % '->'( % happens_at(walkFromTo(Agent,Object1,Object2),Time), % (holds_at(at_loc(Agent,Location),Time) , % holds_at(at_loc(Object1,Location),Time) , % holds_at(at_loc(Object2,Location),Time)))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1140). exists([Location], if((at_loc(Agent, Location), at_loc(Object1, Location), at_loc(Object2, Location)), walkFromTo(Agent, Object1, Object2))). % [agent,object1,object2,time] % Initiates(RunFromTo(agent,object1,object2), % Near(agent,object2), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1147). % From E: % % initiates_at( % runFromTo(Agent,Object1,Object2), % near(Agent,Object2), % Time). % [Time]. runFromTo(Agent, Object1, Object2)initiates near(Agent, Object2). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1147). /* initiated(happens(runFromTo(Agent,Object1,Object2), Time_From, Time_Until), near(Agent,Object2), []). */ % "% =================================". % [agent,object1,object2,time] % Terminates(RunFromTo(agent,object1,object2), % Near(agent,object1), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1152). % From E: % % terminates_at( % runFromTo(Agent,Object1,Object2), % near(Agent,Object1), % Time). % [Time]. runFromTo(Agent, Object1, Object2)terminates near(Agent, Object1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1152). /* terminated(happens(runFromTo(Agent,Object1,Object2), Time_From, Time_Until), near(Agent,Object1), []). */ % "% =================================". % [agent,object1,object2,time] % Happens(RunFromTo(agent,object1,object2),time) -> % {location}% % HoldsAt(At(agent,location),time) & % HoldsAt(At(object1,location),time) & % HoldsAt(At(object2,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1157). % From E: % % exists( % [Location], % '->'( % happens_at(runFromTo(Agent,Object1,Object2),Time), % (holds_at(at_loc(Agent,Location),Time) , % holds_at(at_loc(Object1,Location),Time) , % holds_at(at_loc(Object2,Location),Time)))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1157). exists([Location], if((at_loc(Agent, Location), at_loc(Object1, Location), at_loc(Object2, Location)), runFromTo(Agent, Object1, Object2))). % [agent,object,time] % Terminates(WalkFrom(agent,object), % Near(agent,object), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1164). % From E: % % terminates_at( % walkFrom(Agent,Object), % near(Agent,Object), % Time). % [Time]. walkFrom(Agent, Object)terminates near(Agent, Object). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1164). /* terminated(happens(walkFrom(Agent,Object), Time_From, Time_Until), near(Agent,Object), []). */ % "% =================================". % [agent,object,location,door,time] % HoldsAt(Near(agent,object),time) & % HoldsAt(At(agent,location),time) & % HoldsAt(At(object,location),time) & % Side1(door)=location & % Happens(WalkThroughDoor12(agent,door),time) -> % Happens(WalkFrom(agent,object),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1169). % From E: % % '->'( % (holds_at(near(Agent,Object),Time) , % holds_at(at_loc(Agent,Location),Time) , % holds_at(at_loc(Object,Location),Time) , % side1(Door)=Location , % happens_at(walkThroughDoor12(Agent,Door),Time)), % happens_at(walkFrom(Agent,Object),Time)). % [Time]. walkFrom(Agent, Object)if near(Agent, Object), at_loc(Agent, Location), at_loc(Object, Location), side1(Door, Location), walkThroughDoor12(Agent, Door). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1169). /* l_events(happens(walkFrom(Agent,Object), Time_From, Time_Until), [ holds(near(Agent,Object),Time_From), holds(at_loc(Agent,Location),Time_From), holds(at_loc(Object,Location),Time_From), side1(Door,Location), happens(walkThroughDoor12(Agent,Door), Time_From, Time_Until) ]). */ % "% =================================". % [agent,object,location,door,time] % HoldsAt(Near(agent,object),time) & % HoldsAt(At(agent,location),time) & % HoldsAt(At(object,location),time) & % Side2(door)=location & % Happens(WalkThroughDoor21(agent,door),time) -> % Happens(WalkFrom(agent,object),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1177). % From E: % % '->'( % (holds_at(near(Agent,Object),Time) , % holds_at(at_loc(Agent,Location),Time) , % holds_at(at_loc(Object,Location),Time) , % side2(Door)=Location , % happens_at(walkThroughDoor21(Agent,Door),Time)), % happens_at(walkFrom(Agent,Object),Time)). % [Time]. walkFrom(Agent, Object)if near(Agent, Object), at_loc(Agent, Location), at_loc(Object, Location), side2(Door, Location), walkThroughDoor21(Agent, Door). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1177). /* l_events(happens(walkFrom(Agent,Object), Time_From, Time_Until), [ holds(near(Agent,Object),Time_From), holds(at_loc(Agent,Location),Time_From), holds(at_loc(Object,Location),Time_From), side2(Door,Location), happens(walkThroughDoor21(Agent,Door), Time_From, Time_Until) ]). */ % "% =================================". % [agent,object,room,staircase,time] % HoldsAt(Near(agent,object),time) & % HoldsAt(At(agent,room),time) & % HoldsAt(At(object,room),time) & % Side1(staircase)=room & % Happens(WalkUpStaircase(agent,staircase),time) -> % Happens(WalkFrom(agent,object),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1185). % From E: % % '->'( % (holds_at(near(Agent,Object),Time) , % holds_at(at_loc(Agent,Room),Time) , % holds_at(at_loc(Object,Room),Time) , % side1(Staircase)=Room , % happens_at(walkUpStaircase(Agent,Staircase),Time)), % happens_at(walkFrom(Agent,Object),Time)). % [Time]. walkFrom(Agent, Object)if near(Agent, Object), at_loc(Agent, Room), at_loc(Object, Room), side1(Staircase, Room), walkUpStaircase(Agent, Staircase). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1185). /* l_events(happens(walkFrom(Agent,Object), Time_From, Time_Until), [ holds(near(Agent,Object),Time_From), holds(at_loc(Agent,Room),Time_From), holds(at_loc(Object,Room),Time_From), side1(Staircase,Room), happens(walkUpStaircase(Agent,Staircase), Time_From, Time_Until) ]). */ % "% =================================". % [agent,object,room,staircase,time] % HoldsAt(Near(agent,object),time) & % HoldsAt(At(agent,room),time) & % HoldsAt(At(object,room),time) & % Side2(staircase)=room & % Happens(WalkDownStaircase(agent,staircase),time) -> % Happens(WalkFrom(agent,object),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1193). % From E: % % '->'( % (holds_at(near(Agent,Object),Time) , % holds_at(at_loc(Agent,Room),Time) , % holds_at(at_loc(Object,Room),Time) , % side2(Staircase)=Room , % happens_at(walkDownStaircase(Agent,Staircase),Time)), % happens_at(walkFrom(Agent,Object),Time)). % [Time]. walkFrom(Agent, Object)if near(Agent, Object), at_loc(Agent, Room), at_loc(Object, Room), side2(Staircase, Room), walkDownStaircase(Agent, Staircase). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1193). /* l_events(happens(walkFrom(Agent,Object), Time_From, Time_Until), [ holds(near(Agent,Object),Time_From), holds(at_loc(Agent,Room),Time_From), holds(at_loc(Object,Room),Time_From), side2(Staircase,Room), happens(walkDownStaircase(Agent,Staircase), Time_From, Time_Until) ]). */ % "% =================================". %; End of file. %; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %; FILE: ecnet/OMSpace.e %; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %; %; 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 %; %; OMSpace: object-scale metric space %; %; The OMSpace representation deals with metric space at %; the scale of objects. %; %; @article{Morgenstern:2001, %; author = "Morgenstern, Leora", %; year = "2001", %; title = "Mid-sized axiomatizations of commonsense problems: A case study in egg cracking", %; journal = "Studia Logica", %; volume = "67", %; pages = "333--384", %; } %; %; @article{Shanahan:2003, %; author = "Shanahan, Murray", %; year = "2004", %; title = "An attempt to formalise a non-trivial benchmark problem in common sense reasoning", %; journal = "Artificial Intelligence", %; volume = "153", %; pages = "141--165", %; } %; :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1242). % sort height: integer % From E: % % subsort(height,integer). subsort(height,integer). % sort distance: integer :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1242). % From E: % % subsort(distance,integer). subsort(distance,integer). %; Height %; The height of object is height. % fluent Height(object,height) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1247). % From E: % % fluent(height(object,height)). mpred_prop(height(object,height),fluent). fluents([height/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1250). %; State constraint represent the fact that each %; object has a unique height: % [object,height1,height2,time] % HoldsAt(Height(object,height1),time) & % HoldsAt(Height(object,height2),time) -> % height1=height2. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1252). % From E: % % '->'( % (holds_at(height(Object,Height1),Time) , % holds_at(height(Object,Height2),Time)), % Height1=Height2). % [Time]. false not equals(Height1, Height2), height(Object, Height1), height(Object, Height2). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1252). /* d_pre([ not(equals(Height1,Height2)), holds(height(Object,Height1),Time_At), holds(height(Object,Height2),Time_At) ]). */ % "% =================================". % [object,time] :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1258). % {height}% HoldsAt(Height(object,height),time). % From E: % % exists( % [Height], % holds_at(height(Object,Height),Time)). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1258). exists([Height], height(Object,Height)). %; falling %; physobj1 is falling from physobj2 to physobj3. % fluent FallingFromTo(physobj,physobj,physobj) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1263). % From E: % % fluent(fallingFromTo(physobj,physobj,physobj)). mpred_prop(fallingFromTo(physobj,physobj,physobj),fluent). fluents([fallingFromTo/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1263). %; physobj1 starts falling from physobj2 to physobj3. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1266). % event StartFallingFromTo(physobj,physobj,physobj) % From E: % % event(startFallingFromTo(physobj,physobj,physobj)). mpred_prop(startFallingFromTo(physobj,physobj,physobj),event). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1266). events([startFallingFromTo/3]). %; physobj1 collides with physobj2. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1268). % event CollideWith(physobj,physobj) % From E: % % event(collideWith(physobj,physobj)). mpred_prop(collideWith(physobj,physobj),event). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1268). events([collideWith/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1270). %; An effect axiom states that if a first physical object starts %; falling from a second physical object to a third physical %; object, the first physical object will be falling from the %; second physical object to the third physical object: % [physobj1,physobj2,physobj3,time] % Initiates(StartFallingFromTo(physobj1,physobj2,physobj3), % FallingFromTo(physobj1,physobj2,physobj3), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1274). % From E: % % initiates_at( % startFallingFromTo(Physobj1,Physobj2,Physobj3), % fallingFromTo(Physobj1,Physobj2,Physobj3), % Time). % [Time]. startFallingFromTo(Physobj1, Physobj2, Physobj3)initiates fallingFromTo(Physobj1, Physobj2, Physobj3). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1274). /* initiated(happens(startFallingFromTo(Physobj1, Physobj2, Physobj3), Time_From, Time_Until), fallingFromTo(Physobj1,Physobj2,Physobj3), []). */ % "% =================================". %; A precondition axiom states that for %; a first physical object to start %; falling from a second physical object to a third physical %; object, %; the height of the first physical object and the %; second physical object must be the same. % [physobj1,physobj2,physobj3,height1,height2,time] % Happens(StartFallingFromTo(physobj1,physobj2,physobj3),time) & % HoldsAt(Height(physobj1,height1),time) & % HoldsAt(Height(physobj2,height2),time) -> % height1=height2. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1285). % From E: % % '->'( % (happens_at(startFallingFromTo(Physobj1,Physobj2,Physobj3),Time) , % holds_at(height(Physobj1,Height1),Time) , % holds_at(height(Physobj2,Height2),Time)), % Height1=Height2). % [Time]. false not equals(Height1, Height2), startFallingFromTo(Physobj1, Physobj2, Physobj3), height(Physobj1, Height1), height(Physobj2, Height2). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1285). /* d_pre([ not(equals(Height1,Height2)), happens(startFallingFromTo(Physobj1, Physobj2, Physobj3), Time_From, Time_Until), holds(height(Physobj1,Height1),Time_From), holds(height(Physobj2,Height2),Time_From) ]). */ % "% =================================". %; A state constraint says that a physical object %; cannot fall from itself, cannot fall to itself, %; and cannot fall from and to the same physical object: % [physobj1,physobj2,physobj3,time] % HoldsAt(FallingFromTo(physobj1,physobj2,physobj3),time) -> % physobj1!=physobj2 & % physobj1!=physobj3 & % physobj2!=physobj3. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1294). % From E: % % '->'( % holds_at(fallingFromTo(Physobj1,Physobj2,Physobj3),Time), % (Physobj1\=Physobj2 , % Physobj1\=Physobj3 , % Physobj2\=Physobj3)). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1294). fallingFromTo(Physobj1, Physobj2, Physobj3) -> Physobj1\=Physobj2, Physobj1\=Physobj3, Physobj2\=Physobj3. %; A state constraint says that the sky cannot fall: % [sky,physobj1,physobj2,time] % !HoldsAt(FallingFromTo(sky,physobj1,physobj2),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1301). % From E: % % holds_at(not(fallingFromTo(Sky,Physobj1,Physobj2)),Time). % [Time]. not fallingFromTo(Sky, Physobj1, Physobj2). /* l_int(holds(not(fallingFromTo(Sky,Physobj1,Physobj2)), Time_At), []). */ % "% =================================". %; A releases axiom states that if %; if a first physical object starts %; falling from a second physical object to a third physical %; object, the height of the first physical object %; will be released from inertia: % [physobj1,physobj2,physobj3,height,time] % Releases(StartFallingFromTo(physobj1,physobj2,physobj3), % Height(physobj1,height), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1309). % From E: % % releases_at( % startFallingFromTo(Physobj1,Physobj2,Physobj3), % height(Physobj1,Height), % Time). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1309). releases(startFallingFromTo(Physobj1, Physobj2, Physobj3), height(Physobj1,Height)). %; A trajectory axiom states that %; if a first physical object starts falling %; from a second physical object %; to a third physical object %; at a time and %; the first physical object has a height at the time, %; then the first physical object will have a height %; equal to the height minus an offset %; at a time equal to the time plus the offset: % [physobj1,physobj2,physobj3,height1,height2,offset,time] % HoldsAt(Height(physobj1,height1),time) & % height2=height1-offset -> % Trajectory(FallingFromTo(physobj1,physobj2,physobj3),time, % Height(physobj1,height2),offset). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1323). % From E: % % '->'( % (holds_at(height(Physobj1,Height1),Time) , % Height2=Height1-Offset), % trajectory( % fallingFromTo(Physobj1,Physobj2,Physobj3), % Time, Time, % height(Physobj1,Height2), % Offset)). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1323). holds_at(height(Physobj1, Height1), Time), Height2=Height1-Offset -> trajectory(fallingFromTo(Physobj1, Physobj2, Physobj3), Time, height(Physobj1, Height2), Offset). %; A trigger axiom states that %; if a first physical object is falling %; from a second physical object %; to a third physical object and %; the height of the first physical object %; is the same as the height of the third physical object, %; the first physical object collides with the %; third physical object: % [physobj1,physobj2,physobj3,height,time] % HoldsAt(FallingFromTo(physobj1,physobj2,physobj3),time) & % HoldsAt(Height(physobj1,height),time) & % HoldsAt(Height(physobj3,height),time) -> % Happens(CollideWith(physobj1,physobj3),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1337). % From E: % % '->'( % (holds_at(fallingFromTo(Physobj1,Physobj2,Physobj3),Time) , % holds_at(height(Physobj1,Height),Time) , % holds_at(height(Physobj3,Height),Time)), % happens_at(collideWith(Physobj1,Physobj3),Time)). % [Time]. collideWith(Physobj1, Physobj3)if fallingFromTo(Physobj1, Physobj2, Physobj3), height(Physobj1, Height), height(Physobj3, Height). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1337). /* l_events(happens(collideWith(Physobj1,Physobj3), Time_From, Time_From), [ holds(fallingFromTo(Physobj1, Physobj2, Physobj3), Time_From), holds(height(Physobj1,Height),Time_From), holds(height(Physobj3,Height),Time_From) ]). */ % "% =================================". %; An effect axiom states that %; if a first physical object is falling %; from a second physical object %; to a third physical object and %; the first physical object collides with %; the third physical object, %; the first physical object will be on the third physical object: % [physobj1,physobj2,physobj3,time] % HoldsAt(FallingFromTo(physobj1,physobj2,physobj3),time) -> % Initiates(CollideWith(physobj1,physobj3), % On(physobj1,physobj3), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1350). % From E: % % '->'( % holds_at(fallingFromTo(Physobj1,Physobj2,Physobj3),Time), % initiates_at( % collideWith(Physobj1,Physobj3), % on(Physobj1,Physobj3), % Time)). % [Time]. collideWith(Physobj1, Physobj3)initiates on(Physobj1, Physobj3)if fallingFromTo(Physobj1, Physobj2, Physobj3). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1350). /* initiated(happens(collideWith(Physobj1,Physobj3), Time_From, Time_Until), on(Physobj1,Physobj3), [ holds(fallingFromTo(Physobj1, Physobj2, Physobj3), Time_From) ]). */ % "% =================================". %; An effect axiom states that %; if a physical object collides with another %; physical object, %; the height of the first physical object will %; be the height of the second physical object: % [physobj1,physobj2,height,time] % HoldsAt(Height(physobj2,height),time) -> % Initiates(CollideWith(physobj1,physobj2), % Height(physobj1,height), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1361). % From E: % % '->'( % holds_at(height(Physobj2,Height),Time), % initiates_at( % collideWith(Physobj1,Physobj2), % height(Physobj1,Height), % Time)). % [Time]. collideWith(Physobj1, Physobj2)initiates height(Physobj1, Height)if height(Physobj2, Height). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1361). /* initiated(happens(collideWith(Physobj1,Physobj2), Time_From, Time_Until), height(Physobj1,Height), [holds(height(Physobj2,Height),Time_From)]). */ % "% =================================". %;[physobj1,physobj2,height1,height2,time] %;HoldsAt(Height(physobj2,height1),time) & %;height1 != height2 -> %;Terminates(CollideWith(physobj1,physobj2), %; Height(physobj1,height2), %; time). %; An effect axiom states that %; if a first physical object is falling %; from a second physical object %; to a third physical object and %; the first physical object collides with %; the third physical object, %; the first physical object will no longer be %; falling from the second physical object to the %; third physical object: % [physobj1,physobj2,physobj3,time] % HoldsAt(FallingFromTo(physobj1,physobj2,physobj3),time) -> % Terminates(CollideWith(physobj1,physobj3), % FallingFromTo(physobj1,physobj2,physobj3), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1383). % From E: % % '->'( % holds_at(fallingFromTo(Physobj1,Physobj2,Physobj3),Time), % terminates_at( % collideWith(Physobj1,Physobj3), % fallingFromTo(Physobj1,Physobj2,Physobj3), % Time)). % [Time]. collideWith(Physobj1, Physobj3)terminates fallingFromTo(Physobj1, Physobj2, Physobj3)if fallingFromTo(Physobj1, Physobj2, Physobj3). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1383). /* terminated(happens(collideWith(Physobj1,Physobj3), Time_From, Time_Until), fallingFromTo(Physobj1,Physobj2,Physobj3), [ holds(fallingFromTo(Physobj1, Physobj2, Physobj3), Time_From) ]). */ % "% =================================". %; flying %; agent is flying from physobj1 to physobj2. % fluent FlyingFromTo(agent,physobj,physobj) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1391). % From E: % % fluent(flyingFromTo(agent,physobj,physobj)). mpred_prop(flyingFromTo(agent,physobj,physobj),fluent). fluents([flyingFromTo/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1391). %; agent starts flying from physobj1 to physobj2. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1394). % event StartFlyingFromTo(agent,physobj,physobj) % From E: % % event(startFlyingFromTo(agent,physobj,physobj)). events([startFlyingFromTo/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1394). mpred_prop(startFlyingFromTo(agent,physobj,physobj),action). actions([startFlyingFromTo/3]). %; agent reaches physobj. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1396). % event Reach(agent,physobj) % From E: % % event(reach(agent,physobj)). events([reach/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1396). mpred_prop(reach(agent,physobj),action). actions([reach/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1398). %; An effect axiom states that if an agent starts %; flying from a physical object to another physical object, %; the agent will be flying from the first physical object %; to the second physical object: % [agent,physobj1,physobj2,time] % Initiates(StartFlyingFromTo(agent,physobj1,physobj2), % FlyingFromTo(agent,physobj1,physobj2), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1402). % From E: % % initiates_at( % startFlyingFromTo(Agent,Physobj1,Physobj2), % flyingFromTo(Agent,Physobj1,Physobj2), % Time). % [Time]. startFlyingFromTo(Agent, Physobj1, Physobj2)initiates flyingFromTo(Agent, Physobj1, Physobj2). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1402). /* initiated(happens(startFlyingFromTo(Agent, Physobj1, Physobj2), Time_From, Time_Until), flyingFromTo(Agent,Physobj1,Physobj2), []). */ % "% =================================". %; A precondition axiom states that for %; an agent to start flying from a physical object to %; another physical object, %; the height of the agent and %; the first physical object must be the same: % [agent,physobj1,physobj2,height1,height2,time] % Happens(StartFlyingFromTo(agent,physobj1,physobj2),time) & % HoldsAt(Height(agent,height1),time) & % HoldsAt(Height(physobj1,height2),time) -> % height1=height2. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1412). % From E: % % '->'( % (happens_at(startFlyingFromTo(Agent,Physobj1,Physobj2),Time) , % holds_at(height(Agent,Height1),Time) , % holds_at(height(Physobj1,Height2),Time)), % Height1=Height2). % [Time]. false not equals(Height1, Height2), startFlyingFromTo(Agent, Physobj1, Physobj2), height(Agent, Height1), height(Physobj1, Height2). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1412). /* d_pre([ not(equals(Height1,Height2)), happens(startFlyingFromTo(Agent, Physobj1, Physobj2), Time_From, Time_Until), holds(height(Agent,Height1),Time_From), holds(height(Physobj1,Height2),Time_From) ]). */ % "% =================================". %; A state constraint says that an agent %; cannot fly from and to the same physical object: % [agent,physobj1,physobj2,time] % HoldsAt(FlyingFromTo(agent,physobj1,physobj2),time) -> % physobj1!=physobj2. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1420). % From E: % % '->'( % holds_at(flyingFromTo(Agent,Physobj1,Physobj2),Time), % Physobj1\=Physobj2). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1420). flyingFromTo(Agent, Physobj1, Physobj2) -> Physobj1\=Physobj2. %; A releases axiom states that if an agent %; starts flying from a physical object to another %; physical object, the height of the agent will %; be released from inertia: % [agent,physobj1,physobj2,height,time] % Releases(StartFlyingFromTo(agent,physobj1,physobj2), % Height(agent,height), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1428). % From E: % % releases_at( % startFlyingFromTo(Agent,Physobj1,Physobj2), % height(Agent,Height), % Time). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1428). releases(startFlyingFromTo(Agent,Physobj1,Physobj2), height(Agent,Height)). %; A trajectory axiom states that %; if an agent starts flying from %; from a physical object %; to another physical object %; at a time and %; the agent has a height at the time, %; then the agent will have a height %; equal to the height plus an offset %; at a time equal to the time plus the offset: % [agent,physobj1,physobj2,height1,height2,offset,time] % HoldsAt(Height(agent,height1),time) & % height2=height1+offset -> % Trajectory(FlyingFromTo(agent,physobj1,physobj2),time, % Height(agent,height2),offset). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1442). % From E: % % '->'( % (holds_at(height(Agent,Height1),Time) , % Height2=Height1+Offset), % trajectory( % flyingFromTo(Agent,Physobj1,Physobj2), % Time, Time, % height(Agent,Height2), % Offset)). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1442). holds_at(height(Agent, Height1), Time), Height2=Height1+Offset -> trajectory(flyingFromTo(Agent, Physobj1, Physobj2), Time, height(Agent, Height2), Offset). %; A trigger axiom states that %; if an agent is flying %; from a physical object %; to another physical object and %; the height of the agent %; is the same as the height of the second physical object, %; the agent reaches the second physical object: % [agent,physobj1,physobj2,height,time] % HoldsAt(FlyingFromTo(agent,physobj1,physobj2),time) & % HoldsAt(Height(agent,height),time) & % HoldsAt(Height(physobj2,height),time) -> % Happens(Reach(agent,physobj2),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1455). % From E: % % '->'( % (holds_at(flyingFromTo(Agent,Physobj1,Physobj2),Time) , % holds_at(height(Agent,Height),Time) , % holds_at(height(Physobj2,Height),Time)), % happens_at(reach(Agent,Physobj2),Time)). % [Time]. reach(Agent, Physobj2)if flyingFromTo(Agent, Physobj1, Physobj2), height(Agent, Height), height(Physobj2, Height). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1455). /* l_events(happens(reach(Agent,Physobj2), Time_From, Time_From), [ holds(flyingFromTo(Agent, Physobj1, Physobj2), Time_From), holds(height(Agent,Height),Time_From), holds(height(Physobj2,Height),Time_From) ]). */ % "% =================================". %; An effect axiom states that %; if an agent reaches a physical object, %; the height of the agent will be the %; height of the physical object: % [agent,physobj,height,time] % HoldsAt(Height(physobj,height),time) -> % Initiates(Reach(agent,physobj),Height(agent,height),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1465). % From E: % % '->'( % holds_at(height(Physobj,Height),Time), % initiates_at( % reach(Agent,Physobj), % height(Agent,Height), % Time)). % [Time]. reach(Agent, Physobj)initiates height(Agent, Height)if height(Physobj, Height). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1465). /* initiated(happens(reach(Agent,Physobj), Time_From, Time_Until), height(Agent,Height), [holds(height(Physobj,Height),Time_From)]). */ % "% =================================". %;[agent,physobj,height1,height2,time] %;HoldsAt(Height(physobj,height1),time) & %;height1!=height2 -> %;Terminates(Reach(agent,physobj),Height(agent,height2),time). %; An effect axiom states that %; if an agent is flying %; from a physical object %; to another physical object and %; the agent reaches the second physical object, %; the agent will no longer be %; flying from the first physical object %; to the second physical object: % [agent,physobj1,physobj2,time] % HoldsAt(FlyingFromTo(agent,physobj1,physobj2),time) -> % Terminates(Reach(agent,physobj2), % FlyingFromTo(agent,physobj1,physobj2), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1482). % From E: % % '->'( % holds_at(flyingFromTo(Agent,Physobj1,Physobj2),Time), % terminates_at( % reach(Agent,Physobj2), % flyingFromTo(Agent,Physobj1,Physobj2), % Time)). % [Time]. reach(Agent, Physobj2)terminates flyingFromTo(Agent, Physobj1, Physobj2)if flyingFromTo(Agent, Physobj1, Physobj2). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1482). /* terminated(happens(reach(Agent,Physobj2), Time_From, Time_Until), flyingFromTo(Agent,Physobj1,Physobj2), [ holds(flyingFromTo(Agent, Physobj1, Physobj2), Time_From) ]). */ % "% =================================". %; A releases axiom states that %; if an agent holds a physical object, %; the height of the physical object is released from inertia: % [agent,physobj,height,time] % Releases(Hold(agent,physobj),Height(physobj,height),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1491). % From E: % % releases_at( % hold(Agent,Physobj), % height(Physobj,Height), % Time). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1491). releases(hold(Agent,Physobj), height(Physobj,Height)). %;[agent,physobj,height1,height2,time] %;(!{object} PartOf(physobj,object)) & %;HoldsAt(Height(physobj,height1),time) & %;height1 != height2 -> %;Terminates(LetGoOf(agent,physobj),Height(physobj,height2),time). % [agent,physobj,height,time] % (!{object} PartOf(physobj,object)) & % HoldsAt(Height(physobj,height),time) -> % Initiates(LetGoOf(agent,physobj),Height(physobj,height),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1500). % From E: % % '->'( % (not( % exists( % [Object], % partOf(Physobj,Object))) , % holds_at(height(Physobj,Height),Time)), % initiates_at( % letGoOf(Agent,Physobj), % height(Physobj,Height), % Time)). % [Time]. letGoOf(Agent, Physobj)initiates height(Physobj, Height)if not partOf(Physobj, Object), height(Physobj, Height). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1500). /* initiated(happens(letGoOf(Agent,Physobj), Time_From, Time_Until), height(Physobj,Height), [ not(partOf(Physobj,Object)), holds(height(Physobj,Height),Time_From) ]). */ % "% =================================". %; A state constraint says that %; if an agent is holding a physical object and %; the height of the agent is height, %; the height of the physical object is height: % [agent,physobj,height,time] % HoldsAt(Holding(agent,physobj),time) & % HoldsAt(Height(agent,height),time) -> % HoldsAt(Height(physobj,height),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1509). % From E: % % '->'( % (holds_at(holding(Agent,Physobj),Time) , % holds_at(height(Agent,Height),Time)), % holds_at(height(Physobj,Height),Time)). % [Time]. height(Physobj, Height)if holding(Agent, Physobj), height(Agent, Height). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1509). /* l_int(holds(height(Physobj,Height),Time_At), [ holds(holding(Agent,Physobj),Time_At), holds(height(Agent,Height),Time_At) ]). */ % "% =================================". %; A state constraint says that if a physical object %; is part of an object, %; the height of the physical object %; is the same as the height of the object: % [physobj,object,height,time] % PartOf(physobj,object) & % HoldsAt(Height(object,height),time) -> % HoldsAt(Height(physobj,height),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1518). % From E: % % '->'( % (partOf(Physobj,Object) , % holds_at(height(Object,Height),Time)), % holds_at(height(Physobj,Height),Time)). % [Time]. height(Physobj, Height)if partOf(Physobj, Object), height(Object, Height). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1518). /* l_int(holds(height(Physobj,Height),Time_At), [ partOf(Physobj,Object), holds(height(Object,Height),Time_At) ]). */ % "% =================================". %;event Catch(agent,physobj) %;event HitFromTo(agent,physobj,object,object) %;fluent Distance(physobj,physobj,distance) %;fluent FlyingAcrossFromTo(physobj,object,object) %;[agent,physobj1,physobj2,physobj3,time] %;Initiates(HitFromTo(agent,physobj1,physobj2,physobj3), %; FlyingAcrossFromTo(physobj1,physobj2,physobj3), %; time). %;[agent,physobj1,physobj2,physobj3,distance,time] %;Releases(HitFromTo(agent,physobj1,physobj2,physobj3), %; Distance(physobj1,physobj2,distance), %; time). %;[agent,physobj1,physobj2,physobj3,distance,time] %;Releases(HitFromTo(agent,physobj1,physobj2,physobj3), %; Distance(physobj1,physobj3,distance), %; time). %;[physobj1,physobj2,physobj3,offset,time] %;Trajectory(FlyingAcrossFromTo(physobj1,physobj2,physobj3),time, %; Distance(physobj1,physobj2,offset),offset). %;[physobj1,physobj2,physobj3,distance1,distance2,offset,time] %;HoldsAt(Distance(physobj2,physobj3,distance1),time) & %;distance2 = distance1 - time -> %;Trajectory(FlyingAcrossFromTo(physobj1,physobj2,physobj3),time, %; Distance(physobj1,physobj3,distance2),offset). %;[agent,physobj1,physobj2,physobj3,time] %;HoldsAt(FlyingAcrossFromTo(physobj1,physobj2,physobj3),time) -> %;Initiates(Catch(agent,physobj1), %; Holding(agent,physobj1), %; time). %;[agent,physobj1,physobj2,physobj3,time] %;HoldsAt(FlyingAcrossFromTo(physobj1,physobj2,physobj3),time) -> %;Terminates(Catch(agent,physobj1), %; FlyingAcrossFromTo(physobj1,physobj2,physobj3), %; time). %; End of file. %; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %; FILE: ecnet/GSpace.e %; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %; %; 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 %; %; GSpace: grid space %; %; @book{Mueller:1998, %; author = "Erik T. Mueller", %; year = "1998", %; title = "Natural Language Processing with \uppercase{T}hought\uppercase{T}reasure", %; address = "New York", %; publisher = "Signiform", %; } %; :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1594). % sort coord: integer % From E: % % subsort(coord,integer). subsort(coord,integer). % sort grid :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1594). % From E: % % sort(grid). sort(grid). %; object is at (coord1, coord2) in grid. % fluent GridAt(grid,object,coord,coord) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1597). % From E: % % fluent(gridAt(grid,object,coord,coord)). mpred_prop(gridAt(grid,object,coord,coord),fluent). fluents([gridAt/4]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1600). %; agent walks from (coord1, coord2) %; to (coord3, coord4) in grid. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1602). % event GridWalk(grid,agent,coord,coord,coord,coord) % From E: % % event(gridWalk(grid,agent,coord,coord,coord,coord)). mpred_prop(gridWalk(grid,agent,coord,coord,coord,coord),event). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1602). events([gridWalk/6]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1604). %; A state constraint says that for a given grid an %; object is at one cell in that grid at a time: % [grid,object,coord1,coord2,coord3,coord4,time] % HoldsAt(GridAt(grid,object,coord1,coord2),time) & % HoldsAt(GridAt(grid,object,coord3,coord4),time) -> % coord1=coord3 & coord2=coord4. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1606). % From E: % % '->'( % (holds_at(gridAt(Grid,Object,Coord1,Coord2),Time) , % holds_at(gridAt(Grid,Object,Coord3,Coord4),Time)), % (Coord1=Coord3 , % Coord2=Coord4)). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1606). gridAt(Grid, Object, Coord1, Coord2), gridAt(Grid, Object, Coord3, Coord4) -> Coord1=Coord3, Coord2=Coord4. %; An effect axiom states that %; if an agent walks from one cell in a grid to another cell, %; the agent will be at second cell: % [grid,agent,coord1,coord2,coord3,coord4,time] % Initiates(GridWalk(grid,agent,coord1,coord2,coord3,coord4), % GridAt(grid,agent,coord3,coord4), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1614). % From E: % % initiates_at( % gridWalk(Grid,Agent,Coord1,Coord2,Coord3,Coord4), % gridAt(Grid,Agent,Coord3,Coord4), % Time). % [Time]. gridWalk(Grid, Agent, Coord1, Coord2, Coord3, Coord4)initiates gridAt(Grid, Agent, Coord3, Coord4). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1614). /* initiated(happens(gridWalk(Grid, Agent, Coord1, Coord2, Coord3, Coord4), Time_From, Time_Until), gridAt(Grid,Agent,Coord3,Coord4), []). */ % "% =================================". %; An effect axiom states that %; if an agent walks from one cell in a grid to another cell, %; the agent will no longer be at the first cell: % [grid,agent,coord1,coord2,coord3,coord4,time] % Terminates(GridWalk(grid,agent,coord1,coord2,coord3,coord4), % GridAt(grid,agent,coord1,coord2), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1622). % From E: % % terminates_at( % gridWalk(Grid,Agent,Coord1,Coord2,Coord3,Coord4), % gridAt(Grid,Agent,Coord1,Coord2), % Time). % [Time]. gridWalk(Grid, Agent, Coord1, Coord2, Coord3, Coord4)terminates gridAt(Grid, Agent, Coord1, Coord2). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1622). /* terminated(happens(gridWalk(Grid, Agent, Coord1, Coord2, Coord3, Coord4), Time_From, Time_Until), gridAt(Grid,Agent,Coord1,Coord2), []). */ % "% =================================". %; A precondition axiom states that for an agent to walk %; from one cell in a grid to another cell, the agent %; must be at the first cell, the second cell must not %; be occupied, and the first cell must be adjacent to %; the second cell: % [grid,agent,coord1,coord2,coord3,coord4,time] % Happens(GridWalk(grid,agent,coord1,coord2,coord3,coord4),time) -> % HoldsAt(GridAt(grid,agent,coord1,coord2),time) & % (!{object} HoldsAt(GridAt(grid,object,coord3,coord4),time)) & % (coord1=coord3 | % coord1=coord3+1 | % coord1=coord3-1) & % (coord2=coord4 | % coord2=coord4+1 | % coord2=coord4-1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1632). % From E: % % '->'( % happens_at(gridWalk(Grid,Agent,Coord1,Coord2,Coord3,Coord4),Time), % (holds_at(gridAt(Grid,Agent,Coord1,Coord2),Time) , % not( % exists( % [Object], % holds_at(gridAt(Grid,Object,Coord3,Coord4),Time))) , % (Coord1=Coord3 ; % Coord1=Coord3+1 ; % Coord1=Coord3-1) , % (Coord2=Coord4 ; % Coord2=Coord4+1 ; % Coord2=Coord4-1))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1632). gridWalk(Grid, Agent, Coord1, Coord2, Coord3, Coord4) -> gridAt(Grid, Agent, Coord1, Coord2), not(gridAt(Grid, Object, Coord3, Coord4)), ( Coord1=Coord3 ; Coord1=Coord3+1 ; Coord1=Coord3-1 ), ( Coord2=Coord4 ; Coord2=Coord4+1 ; Coord2=Coord4-1 ). %; End of file. %; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %; FILE: ecnet/PolySpace.e %; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %; %; 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 %; %; @phdthesis{Cassimatis:2002, %; author = "Nicholas L. Cassimatis", %; year = "2002", %; title = "Polyscheme: A Cognitive Architecture for Integrating Multiple Representation and Inference Schemes", %; address = "Cambridge, MA", %; school = "Program in Media Arts and Sciences, School of Architecture and Planning, Massachusetts Institute of Technology", %; } %; %; sorts % sort object :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1670). % From E: % % sort(object). sort(object). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1672). % sort xcoord: integer % From E: % % subsort(xcoord,integer). subsort(xcoord,integer). % sort ycoord: integer :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1672). % From E: % % subsort(ycoord,integer). subsort(ycoord,integer). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1674). % sort grid % From E: % % sort(grid). sort(grid). % sort shape :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1674). % From E: % % sort(shape). sort(shape). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1676). % sort color % From E: % % sort(color). sort(color). %; constants % shape Round,Square :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1678). % From E: % % t(shape,round). shape(round). % From E: % % t(shape,square). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1678). shape(square). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1680). % color Red,Green % From E: % % t(color,red). color(red). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1680). % From E: % % t(color,green). color(green). %; predicates, fluents, and events % predicate Equal(object,object) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1682). % From E: % % predicate(equal(object,object)). mpred_prop(equal(object,object),predicate). predicates([equal/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1684). % predicate Shape(object,shape) % From E: % % predicate(shape(object,shape)). mpred_prop(shape(object,shape),predicate). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1684). predicates([shape/2]). % predicate Color(object,color) % From E: % % predicate(color(object,color)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1684). mpred_prop(color(object,color),predicate). predicates([color/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1686). % fluent Location(grid,object,xcoord,ycoord) % From E: % % fluent(location(grid,object,xcoord,ycoord)). mpred_prop(location(grid,object,xcoord,ycoord),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1686). fluents([location/4]). % event Move(grid,object,xcoord,ycoord,xcoord,ycoord) % From E: % % event(move(grid,object,xcoord,ycoord,xcoord,ycoord)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1686). mpred_prop(move(grid,object,xcoord,ycoord,xcoord,ycoord),event). events([move/6]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1689). %; axioms % [object1,object2] % Equal(object1,object2) -> Equal(object2,object1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1691). % From E: % % '->'( % equal(Object1,Object2), % equal(Object2,Object1)). if equal(Object1, Object2)then equal(Object2, Object1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1691). /* reactive_rule([equal(Object1,Object2)], [equal(Object2,Object1)]). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1693). %; objects have unique shape % [object,shape1,shape2] % Shape(object,shape1) & Shape(object,shape2) -> % shape1=shape2. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1695). % From E: % % '->'( % (shape(Object,Shape1) , % shape(Object,Shape2)), % Shape1=Shape2). false not equals(Shape1, Shape2), shape(Object, Shape1), shape(Object, Shape2). /* d_pre([ not(equals(Shape1,Shape2)), shape(Object,Shape1), shape(Object,Shape2) ]). */ % "% =================================". %; objects have unique color % [object,color1,color2] % Color(object,color1) & Color(object,color2) -> % color1=color2. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1699). % From E: % % '->'( % (color(Object,Color1) , % color(Object,Color2)), % Color1=Color2). false not equals(Color1, Color2), color(Object, Color1), color(Object, Color2). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1699). /* d_pre([ not(equals(Color1,Color2)), color(Object,Color1), color(Object,Color2) ]). */ % "% =================================". %; if objects are the same, they have the same shape % [object1,object2] % Equal(object1,object2) -> % ({shape} Shape(object1,shape) & Shape(object2,shape)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1704). % From E: % % '->'( % equal(Object1,Object2), % exists( % [Shape], % (shape(Object1,Shape) , % shape(Object2,Shape)))). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1704). equal(Object1, Object2) -> exists([Shape], (shape(Object1, Shape), shape(Object2, Shape))). %; if objects are the same, they have the same color % [object1,object2] % Equal(object1,object2) -> % ({color} Color(object1,color) & Color(object2,color)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1709). % From E: % % '->'( % equal(Object1,Object2), % exists( % [Color], % (color(Object1,Color) , % color(Object2,Color)))). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1709). equal(Object1, Object2) -> exists([Color], (color(Object1, Color), color(Object2, Color))). %; if objects are the same, they have the same location % [grid,object1,object2,xcoord1,ycoord1,xcoord2,ycoord2,time] % Equal(object1,object2) -> % (HoldsAt(Location(grid,object1,xcoord1,ycoord1),time) & % HoldsAt(Location(grid,object2,xcoord2,ycoord2),time) -> % xcoord1=xcoord2 & ycoord1=ycoord2). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1714). % From E: % % '->'( % equal(Object1,Object2), % '->'( % (holds_at(location(Grid,Object1,Xcoord1,Ycoord1),Time) , % holds_at(location(Grid,Object2,Xcoord2,Ycoord2),Time)), % (Xcoord1=Xcoord2 , % Ycoord1=Ycoord2))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1714). equal(Object1, Object2) -> ( location(Grid, Object1, Xcoord1, Ycoord1), location(Grid, Object2, Xcoord2, Ycoord2)->Xcoord1=Xcoord2, Ycoord1=Ycoord2 ). %; object in one location at a time % [grid,object,xcoord1,ycoord1,xcoord2,ycoord2,time] % HoldsAt(Location(grid,object,xcoord1,ycoord1),time) & % HoldsAt(Location(grid,object,xcoord2,ycoord2),time) -> % xcoord1=xcoord2 & ycoord1=ycoord2. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1721). % From E: % % '->'( % (holds_at(location(Grid,Object,Xcoord1,Ycoord1),Time) , % holds_at(location(Grid,Object,Xcoord2,Ycoord2),Time)), % (Xcoord1=Xcoord2 , % Ycoord1=Ycoord2)). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1721). location(Grid, Object, Xcoord1, Ycoord1), location(Grid, Object, Xcoord2, Ycoord2) -> Xcoord1=Xcoord2, Ycoord1=Ycoord2. %; objects have locations % [grid,object,time] % (% {xcoord,ycoord} HoldsAt(Location(grid,object,xcoord,ycoord),time)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1727). % From E: % % exists( % [ Xcoord, % Ycoord ], % holds_at(location(Grid,Object,Xcoord,Ycoord),Time)). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1727). exists([Xcoord,Ycoord], location(Grid,Object,Xcoord,Ycoord)). %; different objects are not at same location % [grid,object1,object2,xcoord1,ycoord1,time] % HoldsAt(Location(grid,object1,xcoord1,ycoord1),time) & % HoldsAt(Location(grid,object2,xcoord1,ycoord1),time) -> % Equal(object1,object2). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1731). % From E: % % '->'( % (holds_at(location(Grid,Object1,Xcoord1,Ycoord1),Time) , % holds_at(location(Grid,Object2,Xcoord1,Ycoord1),Time)), % equal(Object1,Object2)). % [Time]. if location(Grid, Object1, Xcoord1, Ycoord1), location(Grid, Object2, Xcoord1, Ycoord1)then equal(Object1, Object2). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1731). /* reactive_rule([ holds(location(Grid, Object1, Xcoord1, Ycoord1), Time_At), holds(location(Grid, Object2, Xcoord1, Ycoord1), Time_At) ], [equal(Object1,Object2)]). */ % "% =================================". %; moving to a location causes an object to be at that location % [grid,object,xcoord1,ycoord1,xcoord2,ycoord2,time] % Initiates(Move(grid,object,xcoord1,ycoord1,xcoord2,ycoord2), % Location(grid,object,xcoord2,ycoord2), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1737). % From E: % % initiates_at( % move(Grid,Object,Xcoord1,Ycoord1,Xcoord2,Ycoord2), % location(Grid,Object,Xcoord2,Ycoord2), % Time). % [Time]. move(Grid, Object, Xcoord1, Ycoord1, Xcoord2, Ycoord2)initiates location(Grid, Object, Xcoord2, Ycoord2). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1737). /* initiated(happens(move(Grid, Object, Xcoord1, Ycoord1, Xcoord2, Ycoord2), Time_From, Time_Until), location(Grid,Object,Xcoord2,Ycoord2), []). */ % "% =================================". %; moving to a location causes the object no longer to be at its previous %; location % [grid,object,xcoord1,ycoord1,xcoord2,ycoord2,time] % Terminates(Move(grid,object,xcoord1,ycoord1,xcoord2,ycoord2), % Location(grid,object,xcoord1,ycoord1), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1744). % From E: % % terminates_at( % move(Grid,Object,Xcoord1,Ycoord1,Xcoord2,Ycoord2), % location(Grid,Object,Xcoord1,Ycoord1), % Time). % [Time]. move(Grid, Object, Xcoord1, Ycoord1, Xcoord2, Ycoord2)terminates location(Grid, Object, Xcoord1, Ycoord1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1744). /* terminated(happens(move(Grid, Object, Xcoord1, Ycoord1, Xcoord2, Ycoord2), Time_From, Time_Until), location(Grid, Object, Xcoord1, Ycoord1), []). */ % "% =================================". %;; allow diagonal movements %;[grid,object,xcoord1,ycoord1,xcoord2,ycoord2,time] %;Happens(Move(grid,object,xcoord1,ycoord1,xcoord2,ycoord2),time) -> %;HoldsAt(Location(grid,object,xcoord1,ycoord1),time) & %;(xcoord1=xcoord2 | %; xcoord1=xcoord2+1 | %; xcoord1=xcoord2-1) & %;(ycoord1=ycoord2 | %; ycoord1=ycoord2+1 | %; ycoord1=ycoord2-1). %; only allow right angle movements % [grid,object,xcoord1,ycoord1,xcoord2,ycoord2,time] :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1762). % Happens(Move(grid,object,xcoord1,ycoord1,xcoord2,ycoord2),time) -> % HoldsAt(Location(grid,object,xcoord1,ycoord1),time) & % ((xcoord1=xcoord2 & (ycoord1=ycoord2+1 | ycoord1=ycoord2-1)) | % (ycoord1=ycoord2 & (xcoord1=xcoord2+1 | xcoord1=xcoord2-1))). % From E: % % '->'( % happens_at(move(Grid,Object,Xcoord1,Ycoord1,Xcoord2,Ycoord2),Time), % (holds_at(location(Grid,Object,Xcoord1,Ycoord1),Time) , % ((Xcoord1=Xcoord2 , % (Ycoord1=Ycoord2+1 ; % Ycoord1=Ycoord2-1)) ; % (Ycoord1=Ycoord2 , % (Xcoord1=Xcoord2+1 ; % Xcoord1=Xcoord2-1))))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1762). move(Grid, Object, Xcoord1, Ycoord1, Xcoord2, Ycoord2) -> location(Grid, Object, Xcoord1, Ycoord1), ( Xcoord1=Xcoord2, ( Ycoord1=Ycoord2+1 ; Ycoord1=Ycoord2-1 ) ; Ycoord1=Ycoord2, ( Xcoord1=Xcoord2+1 ; Xcoord1=Xcoord2-1 ) ). %; End of file. %; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %; FILE: ecnet/HandTo.e %; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %; %; 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 %; :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1786). % event HandTo(agent,agent,physobj) % From E: % % event(handTo(agent,agent,physobj)). events([handTo/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1786). mpred_prop(handTo(agent,agent,physobj),action). actions([handTo/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1788). % [agent1,agent2,physobj,time] % Initiates(HandTo(agent1,agent2,physobj), % Holding(agent2,physobj), % time). % From E: % % initiates_at( % handTo(Agent1,Agent2,Physobj), % holding(Agent2,Physobj), % Time). % [Time]. handTo(Agent1, Agent2, Physobj)initiates holding(Agent2, Physobj). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1788). /* initiated(happens(handTo(Agent1,Agent2,Physobj), Time_From, Time_Until), holding(Agent2,Physobj), []). */ % "% =================================". % [agent1,agent2,physobj,time] % Terminates(HandTo(agent1,agent2,physobj), % Holding(agent1,physobj), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1794). % From E: % % terminates_at( % handTo(Agent1,Agent2,Physobj), % holding(Agent1,Physobj), % Time). % [Time]. handTo(Agent1, Agent2, Physobj)terminates holding(Agent1, Physobj). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1794). /* terminated(happens(handTo(Agent1,Agent2,Physobj), Time_From, Time_Until), holding(Agent1,Physobj), []). */ % "% =================================". % [agent1,agent2,physobj,time] % Happens(HandTo(agent1,agent2,physobj),time) -> % HoldsAt(Holding(agent1,physobj),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1799). % From E: % % '->'( % happens_at(handTo(Agent1,Agent2,Physobj),Time), % holds_at(holding(Agent1,Physobj),Time)). % [Time]. holding(Agent1, Physobj)if handTo(Agent1, Agent2, Physobj). /* l_int(holds(holding(Agent1,Physobj),Time_At), [ happens(handTo(Agent1,Agent2,Physobj), Time_At, Time_At) ]). */ % "% =================================". % event ShakeHands(agent,agent) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1801). % From E: % % event(shakeHands(agent,agent)). events([shakeHands/2]). mpred_prop(shakeHands(agent,agent),action). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1801). actions([shakeHands/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1804). % event WriteOn(agent,paper,pen) % From E: % % event(writeOn(agent,paper,pen)). events([writeOn/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1804). mpred_prop(writeOn(agent,paper,pen),action). actions([writeOn/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1808). %; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %; FILE: ecnet/Container.e %; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %; %; 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 %; %; %; Container: container %; %; linkage to OTSpace(M): % [agent,container1,container2,time] :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1828). % Happens(TakeOutOf(agent,container1,container2),time) -> % HoldsAt(ContainerIsOpen(container2),time). % From E: % % '->'( % happens_at(takeOutOf(Agent,Container1,Container2),Time), % holds_at(containerIsOpen(Container2),Time)). % [Time]. containerIsOpen(Container2)if takeOutOf(Agent, Container1, Container2). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1828). /* l_int(holds(containerIsOpen(Container2),Time_At), [ happens(takeOutOf(Agent, Container1, Container2), Time_At, Time_At) ]). */ % "% =================================". % [agent,container1,container2,time] % Happens(PutInside(agent,container1,container2),time) -> % HoldsAt(ContainerIsOpen(container2),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1832). % From E: % % '->'( % happens_at(putInside(Agent,Container1,Container2),Time), % holds_at(containerIsOpen(Container2),Time)). % [Time]. containerIsOpen(Container2)if putInside(Agent, Container1, Container2). /* l_int(holds(containerIsOpen(Container2),Time_At), [ happens(putInside(Agent, Container1, Container2), Time_At, Time_At) ]). */ % "% =================================". %; agent opens container. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1836). % event ContainerOpen(agent,container) % From E: % % event(containerOpen(agent,container)). events([containerOpen/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1836). mpred_prop(containerOpen(agent,container),action). actions([containerOpen/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1838). %; agent closes container. % event ContainerClose(agent,container) % From E: % % event(containerClose(agent,container)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1838). events([containerClose/2]). mpred_prop(containerClose(agent,container),action). actions([containerClose/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1841). %; container is open. % fluent ContainerIsOpen(container) % From E: % % fluent(containerIsOpen(container)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1841). mpred_prop(containerIsOpen(container),fluent). fluents([containerIsOpen/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1844). % fluent ContainerClosed(container) % From E: % % fluent(containerClosed(container)). mpred_prop(containerClosed(container),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1844). fluents([containerClosed/1]). % noninertial ContainerClosed % From E: % % :-call_pel_directive(noninertial(containerClosed)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1844). :- call_pel_directive(noninertial(containerClosed)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1847). % [container,time] % HoldsAt(ContainerClosed(container),time) <-> % !HoldsAt(ContainerIsOpen(container),time). % From E: % % <->( % holds_at(containerClosed(Container),Time), % holds_at(not(containerIsOpen(Container)),Time)). % [Time]. not containerIsOpen(Container)if containerClosed(Container). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1847). /* l_int(holds(not(containerIsOpen(Container)),Time_At), [containerClosed(Container)]). */ % "% =================================". if not containerIsOpen(Container)then containerClosed(Container). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1847). /* reactive_rule([ holds(not(containerIsOpen(Container)), Time_At3) ], [containerClosed(Container)]). */ % "% =================================". %; A precondition axiom states that %; for an agent to open a container, %; the agent must be awake, %; the container must not already be open, and %; the agent must be holding the container. % [agent,container,time] % Happens(ContainerOpen(agent,container),time) -> % HoldsAt(Awake(agent),time) & % !HoldsAt(ContainerIsOpen(container),time) & % HoldsAt(Holding(agent,container),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1856). % From E: % % '->'( % happens_at(containerOpen(Agent,Container),Time), % (holds_at(awake(Agent),Time) , % holds_at(not(containerIsOpen(Container)),Time) , % holds_at(holding(Agent,Container),Time))). % [Time]. if containerOpen(Agent, Container)then awake(Agent), not containerIsOpen(Container), holding(Agent, Container). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1856). /* reactive_rule([ happens(containerOpen(Agent,Container), Time_From, Time_Until) ], [ holds(awake(Agent),Time_At), holds(not(containerIsOpen(Container)), Time_At), holds(holding(Agent,Container), Time_At) ]). */ % "% =================================". %; An effect axiom states that %; if an agent opens a container, %; the container will be open: % [agent,container,time] % Initiates(ContainerOpen(agent,container),ContainerIsOpen(container),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1865). % From E: % % initiates_at( % containerOpen(Agent,Container), % containerIsOpen(Container), % Time). % [Time]. containerOpen(Agent, Container)initiates containerIsOpen(Container). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1865). /* initiated(happens(containerOpen(Agent,Container), Time_From, Time_Until), containerIsOpen(Container), []). */ % "% =================================". %; A precondition axiom states that %; for an agent to close a container, %; the agent must be awake, %; the container must be open, and %; the agent must be holding the container. % [agent,container,time] % Happens(ContainerClose(agent,container),time) -> % HoldsAt(Awake(agent),time) & % HoldsAt(ContainerIsOpen(container),time) & % HoldsAt(Holding(agent,container),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1873). % From E: % % '->'( % happens_at(containerClose(Agent,Container),Time), % (holds_at(awake(Agent),Time) , % holds_at(containerIsOpen(Container),Time) , % holds_at(holding(Agent,Container),Time))). % [Time]. if containerClose(Agent, Container)then awake(Agent), containerIsOpen(Container), holding(Agent, Container). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1873). /* reactive_rule([ happens(containerClose(Agent,Container), Time_From, Time_Until) ], [ holds(awake(Agent),Time_At), holds(containerIsOpen(Container),Time_At), holds(holding(Agent,Container), Time_At) ]). */ % "% =================================". %; An effect axiom states that %; if an agent closes a container, %; the container will no longer be open: % [agent,container,time] % Terminates(ContainerClose(agent,container),ContainerIsOpen(container),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1882). % From E: % % terminates_at( % containerClose(Agent,Container), % containerIsOpen(Container), % Time). % [Time]. containerClose(Agent, Container)terminates containerIsOpen(Container). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1882). /* terminated(happens(containerClose(Agent,Container), Time_From, Time_Until), containerIsOpen(Container), []). */ % "% =================================". %; End of file. %; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %; FILE: ecnet/SpeechAct.e %; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %; %; 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 %; %; The SpeechAct representation deals with a few speech acts %; \fullcite{Searle:1969}. %; %; @book{Searle:1969, %; author = "John R. Searle", %; year = "1969", %; title = "Speech Acts: An Essay in the Philosophy of Language", %; address = "Cambridge", %; publisher = "Cambridge University Press", %; } %; %; We handle %; the illocutionary acts of %; inviting someone into one's house (a form of request) and %; greeting someone, %; and the expressive speech act of crying for joy. %; %; inviting in %; agent1 invites agent2 into room. % event InviteIn(agent,agent,room) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1923). % From E: % % event(inviteIn(agent,agent,room)). events([inviteIn/3]). mpred_prop(inviteIn(agent,agent,room),action). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1923). actions([inviteIn/3]). %; agent1 is invited into room by agent2. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1926). % fluent InvitedIn(agent,room,agent) % From E: % % fluent(invitedIn(agent,room,agent)). mpred_prop(invitedIn(agent,room,agent),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1926). fluents([invitedIn/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1928). %; A precondition axiom states that for %; an agent to invite another agent into a room, %; the first agent must be in the room and %; there must be an outside area such that %; the second agent is at the outside area and %; the outside area is adjacent to the room: % [agent1,agent2,room,time] % Happens(InviteIn(agent1,agent2,room),time) -> % HoldsAt(At(agent1,room),time) & :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1934). % {outside}% % HoldsAt(At(agent2,outside),time) & % Adjacent(room,outside). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1937). % From E: % % exists( % [Outside], % '->'( % happens_at(inviteIn(Agent1,Agent2,Room),Time), % (holds_at(at_loc(Agent1,Room),Time) , % holds_at(at_loc(Agent2,Outside),Time) , % adjacent(Room,Outside)))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1937). exists([Outside], if((at_loc(Agent1, Room), at_loc(Agent2, Outside), adjacent(Room, Outside)), inviteIn(Agent1, Agent2, Room))). %; An effect axiom states that if %; an agent invites another agent into a room, %; the second agent will be invited into the room by the first agent: % [agent1,agent2,room,time] % Initiates(InviteIn(agent1,agent2,room), % InvitedIn(agent2,room,agent1), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1944). % From E: % % initiates_at( % inviteIn(Agent1,Agent2,Room), % invitedIn(Agent2,Room,Agent1), % Time). % [Time]. inviteIn(Agent1, Agent2, Room)initiates invitedIn(Agent2, Room, Agent1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1944). /* initiated(happens(inviteIn(Agent1,Agent2,Room), Time_From, Time_Until), invitedIn(Agent2,Room,Agent1), []). */ % "% =================================". %; agent intends to walk into room. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1950). % event IntendToWalkIn(agent,room) % From E: % % event(intendToWalkIn(agent,room)). events([intendToWalkIn/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1950). mpred_prop(intendToWalkIn(agent,room),action). actions([intendToWalkIn/2]). %; agent has the intention to walk into room. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1952). % fluent IntentionToWalkIn(agent,room) % From E: % % fluent(intentionToWalkIn(agent,room)). mpred_prop(intentionToWalkIn(agent,room),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1952). fluents([intentionToWalkIn/2]). %; agent acts on the intention to walk into room. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1954). % fluent ActOnIntentionToWalkIn(agent,room) % From E: % % fluent(actOnIntentionToWalkIn(agent,room)). mpred_prop(actOnIntentionToWalkIn(agent,room),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1954). fluents([actOnIntentionToWalkIn/2]). % noninertial ActOnIntentionToWalkIn % From E: % % :-call_pel_directive(noninertial(actOnIntentionToWalkIn)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1954). :- call_pel_directive(noninertial(actOnIntentionToWalkIn)). %; A trigger axiom states that %; if an agent is invited into a room by another agent, %; the first agent likes the second agent, and %; the first agent does not already have the intention to %; walk into the room, %; the first agent intends to walk into the room: % [agent1,agent2,room,time] % HoldsAt(InvitedIn(agent1,room,agent2),time) & % HoldsAt(Like(agent1,agent2),time) & % !HoldsAt(IntentionToWalkIn(agent1,room),time) -> % Happens(IntendToWalkIn(agent1,room),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1963). % From E: % % '->'( % (holds_at(invitedIn(Agent1,Room,Agent2),Time) , % holds_at(like(Agent1,Agent2),Time) , % holds_at(not(intentionToWalkIn(Agent1,Room)),Time)), % happens_at(intendToWalkIn(Agent1,Room),Time)). % [Time]. intendToWalkIn(Agent1, Room)if invitedIn(Agent1, Room, Agent2), like(Agent1, Agent2), not intentionToWalkIn(Agent1, Room). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1963). /* l_events(happens(intendToWalkIn(Agent1,Room), Time_From, Time_From), [ holds(invitedIn(Agent1,Room,Agent2), Time_From), like(Agent1,Agent2), holds(not(intentionToWalkIn(Agent1,Room)), Time_From) ]). */ % "% =================================". %; An effect axiom states that %; if an agent intends to walk into a room, %; the agent will have the intention to walk into the room: % [agent,room,time] % Initiates(IntendToWalkIn(agent,room), % IntentionToWalkIn(agent,room), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1972). % From E: % % initiates_at( % intendToWalkIn(Agent,Room), % intentionToWalkIn(Agent,Room), % Time). % [Time]. intendToWalkIn(Agent, Room)initiates intentionToWalkIn(Agent, Room). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1972). /* initiated(happens(intendToWalkIn(Agent,Room), Time_From, Time_Until), intentionToWalkIn(Agent,Room), []). */ % "% =================================". %; Two trigger axioms state that %; if an agent has the intention to walk into a room, %; the agent acts on the intention to walk into the room, %; the agent is at a location, %; side one (two) of a door is the room, %; side two (one) of the door is the location, %; agent will walk through side two (one) of the door: % [agent,room,location,door,time] % HoldsAt(IntentionToWalkIn(agent,room),time) & % HoldsAt(ActOnIntentionToWalkIn(agent,room),time) & % HoldsAt(At(agent,location),time) & % Side1(door)=room & % Side2(door)=location -> % Happens(WalkThroughDoor21(agent,door),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1984). % From E: % % '->'( % (holds_at(intentionToWalkIn(Agent,Room),Time) , % holds_at(actOnIntentionToWalkIn(Agent,Room),Time) , % holds_at(at_loc(Agent,Location),Time) , % side1(Door)=Room , % side2(Door)=Location), % happens_at(walkThroughDoor21(Agent,Door),Time)). % [Time]. walkThroughDoor21(Agent, Door)if intentionToWalkIn(Agent, Room), actOnIntentionToWalkIn(Agent, Room), at_loc(Agent, Location), side1(Door, Room), side2(Door, Location). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1984). /* l_events(happens(walkThroughDoor21(Agent,Door), Time_From, Time_From), [ holds(intentionToWalkIn(Agent,Room), Time_From), actOnIntentionToWalkIn(Agent,Room), holds(at_loc(Agent,Location),Time_From), side1(Door,Room), side2(Door,Location) ]). */ % "% =================================". % [agent,room,location,door,time] % HoldsAt(IntentionToWalkIn(agent,room),time) & % HoldsAt(ActOnIntentionToWalkIn(agent,room),time) & % HoldsAt(At(agent,location),time) & % Side2(door)=room & % Side1(door)=location -> % Happens(WalkThroughDoor12(agent,door),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1993). % From E: % % '->'( % (holds_at(intentionToWalkIn(Agent,Room),Time) , % holds_at(actOnIntentionToWalkIn(Agent,Room),Time) , % holds_at(at_loc(Agent,Location),Time) , % side2(Door)=Room , % side1(Door)=Location), % happens_at(walkThroughDoor12(Agent,Door),Time)). % [Time]. walkThroughDoor12(Agent, Door)if intentionToWalkIn(Agent, Room), actOnIntentionToWalkIn(Agent, Room), at_loc(Agent, Location), side2(Door, Room), side1(Door, Location). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',1993). /* l_events(happens(walkThroughDoor12(Agent,Door), Time_From, Time_From), [ holds(intentionToWalkIn(Agent,Room), Time_From), actOnIntentionToWalkIn(Agent,Room), holds(at_loc(Agent,Location),Time_From), side2(Door,Room), side1(Door,Location) ]). */ % "% =================================". %; Two effect axioms state that %; if side one (two) of a door is a room and %; an agent walks through side two (one) of the door, %; the agent will no longer have the intention to %; walk into the room: % [agent,room,door,time] % Side1(door)=room -> % Terminates(WalkThroughDoor21(agent,door), % IntentionToWalkIn(agent,room), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2005). % From E: % % '->'( % side1(Door)=Room, % terminates_at( % walkThroughDoor21(Agent,Door), % intentionToWalkIn(Agent,Room), % Time)). % [Time]. walkThroughDoor21(Agent, Door)terminates intentionToWalkIn(Agent, Room)if side1(Door, Room). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2005). /* terminated(happens(walkThroughDoor21(Agent,Door), Time_From, Time_Until), intentionToWalkIn(Agent,Room), [side1(Door,Room)]). */ % "% =================================". % [agent,room,door,time] % Side2(door)=room -> % Terminates(WalkThroughDoor12(agent,door), % IntentionToWalkIn(agent,room), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2012). % From E: % % '->'( % side2(Door)=Room, % terminates_at( % walkThroughDoor12(Agent,Door), % intentionToWalkIn(Agent,Room), % Time)). % [Time]. walkThroughDoor12(Agent, Door)terminates intentionToWalkIn(Agent, Room)if side2(Door, Room). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2012). /* terminated(happens(walkThroughDoor12(Agent,Door), Time_From, Time_Until), intentionToWalkIn(Agent,Room), [side2(Door,Room)]). */ % "% =================================". %; agent greets object. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2018). % event Greet(agent,object) % From E: % % event(greet(agent,object)). events([greet/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2018). mpred_prop(greet(agent,object),action). actions([greet/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2020). % event SayPleasedToMeet(agent,agent) % From E: % % event(sayPleasedToMeet(agent,agent)). events([sayPleasedToMeet/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2020). mpred_prop(sayPleasedToMeet(agent,agent),action). actions([sayPleasedToMeet/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2022). %; agent says goodbye to object. % event SayGoodbye(agent,object) % From E: % % event(sayGoodbye(agent,object)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2022). events([sayGoodbye/2]). mpred_prop(sayGoodbye(agent,object),action). actions([sayGoodbye/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2025). % event TalkAbout(agent,content) % From E: % % event(talkAbout(agent,content)). events([talkAbout/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2025). mpred_prop(talkAbout(agent,content),action). actions([talkAbout/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2027). % event Converse(agent,agent) % From E: % % event(converse(agent,agent)). events([converse/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2027). mpred_prop(converse(agent,agent),action). actions([converse/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2029). % [agent1,agent2,time] % Happens(Converse(agent1,agent2),time) -> % {location}% % HoldsAt(At(agent1,location),time) & % HoldsAt(At(agent2,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2031). % From E: % % exists( % [Location], % '->'( % happens_at(converse(Agent1,Agent2),Time), % (holds_at(at_loc(Agent1,Location),Time) , % holds_at(at_loc(Agent2,Location),Time)))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2031). exists([Location], if((at_loc(Agent1, Location), at_loc(Agent2, Location)), converse(Agent1, Agent2))). %; A precondition axiom states that for %; an agent to greet an object, %; there must be a location such that %; the agent is at the location and %; the object is at the location: % [agent,object,time] % Happens(Greet(agent,object),time) -> :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2040). % {location}% % HoldsAt(At(agent,location),time) & % HoldsAt(At(object,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2042). % From E: % % exists( % [Location], % '->'( % happens_at(greet(Agent,Object),Time), % (holds_at(at_loc(Agent,Location),Time) , % holds_at(at_loc(Object,Location),Time)))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2042). exists([Location], if((at_loc(Agent, Location), at_loc(Object, Location)), greet(Agent, Object))). % [agent,object,time] % Happens(SayGoodbye(agent,object),time) -> % {location}% % HoldsAt(At(agent,location),time) & % HoldsAt(At(object,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2047). % From E: % % exists( % [Location], % '->'( % happens_at(sayGoodbye(Agent,Object),Time), % (holds_at(at_loc(Agent,Location),Time) , % holds_at(at_loc(Object,Location),Time)))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2047). exists([Location], if((at_loc(Agent, Location), at_loc(Object, Location)), sayGoodbye(Agent, Object))). %; speech: expression of emotions %; agent cries for joy. % event CryForJoy(agent) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2054). % From E: % % event(cryForJoy(agent)). events([cryForJoy/1]). mpred_prop(cryForJoy(agent),action). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2054). actions([cryForJoy/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2057). %; A precondition axiom states that for %; an agent to cry for joy, %; the agent must be happy: % [agent,time] % Happens(CryForJoy(agent),time) -> % HoldsAt(Happy(agent),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2060). % From E: % % '->'( % happens_at(cryForJoy(Agent),Time), % holds_at(happy(Agent),Time)). % [Time]. happy(Agent)if cryForJoy(Agent). % l_int(holds(happy(Agent),Time_At),[cryForJoy(Agent)]). % "% =================================". % event Threaten(agent,agent,weapon) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2063). % From E: % % event(threaten(agent,agent,weapon)). events([threaten/3]). mpred_prop(threaten(agent,agent,weapon),action). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2063). actions([threaten/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2066). % event ReleaseFromThreat(agent,agent) % From E: % % event(releaseFromThreat(agent,agent)). events([releaseFromThreat/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2066). mpred_prop(releaseFromThreat(agent,agent),action). actions([releaseFromThreat/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2068). % fluent ThreatenedBy(agent,agent) % From E: % % fluent(threatenedBy(agent,agent)). mpred_prop(threatenedBy(agent,agent),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2068). fluents([threatenedBy/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2070). % [agent1,agent2,weapon,time] % Happens(Threaten(agent1,agent2,weapon), time) -> % HoldsAt(Holding(agent1,weapon),time) & % {location}% % HoldsAt(At(agent1,location),time) & % HoldsAt(At(agent2,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2073). % From E: % % exists( % [Location], % '->'( % happens_at(threaten(Agent1,Agent2,Weapon),Time), % (holds_at(holding(Agent1,Weapon),Time) , % holds_at(at_loc(Agent1,Location),Time) , % holds_at(at_loc(Agent2,Location),Time)))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2073). exists([Location], if((holding(Agent1, Weapon), at_loc(Agent1, Location), at_loc(Agent2, Location)), threaten(Agent1, Agent2, Weapon))). % [agent1,agent2,weapon,time] % Happens(Threaten(agent1,agent2,weapon), time) -> % Happens(BecomeAngryAt(agent2,agent1),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2078). % From E: % % '->'( % happens_at(threaten(Agent1,Agent2,Weapon),Time), % happens_at(becomeAngryAt(Agent2,Agent1),Time)). % [Time]. becomeAngryAt(Agent2, Agent1)if threaten(Agent1, Agent2, Weapon). /* l_events(happens(becomeAngryAt(Agent2,Agent1), Time_From, Time_Until), [ happens(threaten(Agent1,Agent2,Weapon), Time_From, Time_Until) ]). */ % "% =================================". % [agent1,agent2,weapon,time] % Initiates(Threaten(agent1,agent2,weapon), % ThreatenedBy(agent2,agent1), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2082). % From E: % % initiates_at( % threaten(Agent1,Agent2,Weapon), % threatenedBy(Agent2,Agent1), % Time). % [Time]. threaten(Agent1, Agent2, Weapon)initiates threatenedBy(Agent2, Agent1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2082). /* initiated(happens(threaten(Agent1,Agent2,Weapon), Time_From, Time_Until), threatenedBy(Agent2,Agent1), []). */ % "% =================================". % [agent1,agent2,time] % Terminates(ReleaseFromThreat(agent1,agent2), % ThreatenedBy(agent2,agent1), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2087). % From E: % % terminates_at( % releaseFromThreat(Agent1,Agent2), % threatenedBy(Agent2,Agent1), % Time). % [Time]. releaseFromThreat(Agent1, Agent2)terminates threatenedBy(Agent2, Agent1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2087). /* terminated(happens(releaseFromThreat(Agent1,Agent2), Time_From, Time_Until), threatenedBy(Agent2,Agent1), []). */ % "% =================================". % event Order(agent,agent,physobj) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2090). % From E: % % event(order(agent,agent,physobj)). events([order/3]). mpred_prop(order(agent,agent,physobj),action). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2090). actions([order/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2093). % fluent KnowOrder(agent,agent,physobj) % From E: % % fluent(knowOrder(agent,agent,physobj)). mpred_prop(knowOrder(agent,agent,physobj),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2093). fluents([knowOrder/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2095). % [agent1,agent2,physobj,time] % Initiates(Order(agent1,agent2,physobj), % KnowOrder(agent2,agent1,physobj), % time). % From E: % % initiates_at( % order(Agent1,Agent2,Physobj), % knowOrder(Agent2,Agent1,Physobj), % Time). % [Time]. order(Agent1, Agent2, Physobj)initiates knowOrder(Agent2, Agent1, Physobj). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2095). /* initiated(happens(order(Agent1,Agent2,Physobj), Time_From, Time_Until), knowOrder(Agent2,Agent1,Physobj), []). */ % "% =================================". % [agent1,agent2,physobj,time] % Happens(Order(agent1,agent2,physobj),time) -> % {location}% % HoldsAt(At(agent1,location),time) & % HoldsAt(At(agent2,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2101). % From E: % % exists( % [Location], % '->'( % happens_at(order(Agent1,Agent2,Physobj),Time), % (holds_at(at_loc(Agent1,Location),Time) , % holds_at(at_loc(Agent2,Location),Time)))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2101). exists([Location], if((at_loc(Agent1, Location), at_loc(Agent2, Location)), order(Agent1, Agent2, Physobj))). % event Request(agent,agent,physobj) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2105). % From E: % % event(request(agent,agent,physobj)). events([request/3]). mpred_prop(request(agent,agent,physobj),action). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2105). actions([request/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2108). % fluent KnowRequest(agent,agent,physobj) % From E: % % fluent(knowRequest(agent,agent,physobj)). mpred_prop(knowRequest(agent,agent,physobj),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2108). fluents([knowRequest/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2110). % [agent1,agent2,physobj,time] % Initiates(Request(agent1,agent2,physobj), % KnowRequest(agent2,agent1,physobj), % time). % From E: % % initiates_at( % request(Agent1,Agent2,Physobj), % knowRequest(Agent2,Agent1,Physobj), % Time). % [Time]. request(Agent1, Agent2, Physobj)initiates knowRequest(Agent2, Agent1, Physobj). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2110). /* initiated(happens(request(Agent1,Agent2,Physobj), Time_From, Time_Until), knowRequest(Agent2,Agent1,Physobj), []). */ % "% =================================". % [agent1,agent2,physobj,time] % Happens(Request(agent1,agent2,physobj),time) -> % {location}% % HoldsAt(At(agent1,location),time) & % HoldsAt(At(agent2,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2116). % From E: % % exists( % [Location], % '->'( % happens_at(request(Agent1,Agent2,Physobj),Time), % (holds_at(at_loc(Agent1,Location),Time) , % holds_at(at_loc(Agent2,Location),Time)))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2116). exists([Location], if((at_loc(Agent1, Location), at_loc(Agent2, Location)), request(Agent1, Agent2, Physobj))). %; End of file. %; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %; FILE: ecnet/Sleep.e %; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %; %; 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 %; %; The Sleep representation deals with the activity of sleeping and %; body posture. %; It is similar to the finite automaton representation of sleep %; used in ThoughtTreasure \fullcite[chap. 7]{Mueller:1998}. %; %; @book{Mueller:1998, %; author = "Erik T. Mueller", %; year = "1998", %; title = "Natural Language Processing with \uppercase{T}hought\uppercase{T}reasure", %; address = "New York", %; publisher = "Signiform", %; } %; %; sleep %; agent wakes up. % event WakeUp(agent) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2155). % From E: % % event(wakeUp(agent)). events([wakeUp/1]). mpred_prop(wakeUp(agent),action). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2155). actions([wakeUp/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2158). %; agent gets tired. % event GetTired(agent) % From E: % % event(getTired(agent)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2158). events([getTired/1]). mpred_prop(getTired(agent),action). actions([getTired/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2161). %; agent falls asleep. % event FallAsleep(agent) % From E: % % event(fallAsleep(agent)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2161). events([fallAsleep/1]). mpred_prop(fallAsleep(agent),action). actions([fallAsleep/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2164). %; agent is asleep. % fluent Sleep0(agent) % From E: % % fluent(sleep0(agent)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2164). mpred_prop(sleep0(agent),fluent). fluents([sleep0/1]). %; agent is awake and in bed. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2167). % fluent Sleep1(agent) % From E: % % fluent(sleep1(agent)). mpred_prop(sleep1(agent),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2167). fluents([sleep1/1]). %; agent is awake, out of bed, and undressed. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2169). % fluent Sleep2(agent) % From E: % % fluent(sleep2(agent)). mpred_prop(sleep2(agent),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2169). fluents([sleep2/1]). %; agent is awake and dressed. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2171). % fluent Sleep3(agent) % From E: % % fluent(sleep3(agent)). mpred_prop(sleep3(agent),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2171). fluents([sleep3/1]). %; agent is tired and dressed. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2173). % fluent Sleep4(agent) % From E: % % fluent(sleep4(agent)). mpred_prop(sleep4(agent),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2173). fluents([sleep4/1]). %; agent is tired and undressed. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2175). % fluent Sleep5(agent) % From E: % % fluent(sleep5(agent)). mpred_prop(sleep5(agent),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2175). fluents([sleep5/1]). %; agent is in bed, waiting to fall asleep. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2177). % fluent Sleep6(agent) % From E: % % fluent(sleep6(agent)). mpred_prop(sleep6(agent),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2177). fluents([sleep6/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2179). %; At any time, an agent is in one of seven sleep states: % xor Sleep0, Sleep1, Sleep2, Sleep3, Sleep4, Sleep5, Sleep6 % From E: % % xor([sleep0,sleep1,sleep2,sleep3,sleep4,sleep5,sleep6]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2179). xor([sleep0,sleep1,sleep2,sleep3,sleep4,sleep5,sleep6]). %; constraints %; agent is asleep. % fluent Asleep(agent) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2184). % From E: % % fluent(asleep(agent)). mpred_prop(asleep(agent),fluent). fluents([asleep/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2184). %; agent is awake. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2187). % fluent Awake(agent) % From E: % % fluent(awake(agent)). mpred_prop(awake(agent),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2187). fluents([awake/1]). % noninertial Asleep % From E: % % :-call_pel_directive(noninertial(asleep)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2187). :- call_pel_directive(noninertial(asleep)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2189). % noninertial Awake % From E: % % :-call_pel_directive(noninertial(awake)). :- call_pel_directive(noninertial(awake)). %; Sleep0 indicates that the agent is asleep: % [agent,time] % HoldsAt(Asleep(agent),time) <-> HoldsAt(Sleep0(agent),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2191). % From E: % % <->( % holds_at(asleep(Agent),Time), % holds_at(sleep0(Agent),Time)). % [Time]. sleep0(Agent)if asleep(Agent). % l_int(holds(sleep0(Agent),Time_At),[asleep(Agent)]). % "% =================================". if sleep0(Agent)then asleep(Agent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2191). /* reactive_rule([holds(sleep0(Agent),Time_At3)], [asleep(Agent)]). */ % "% =================================". %; In all other sleep states, the agent is awake: % [agent,time] % HoldsAt(Awake(agent),time) <-> % HoldsAt(Sleep1(agent),time) | % HoldsAt(Sleep2(agent),time) | % HoldsAt(Sleep3(agent),time) | % HoldsAt(Sleep4(agent),time) | % HoldsAt(Sleep5(agent),time) | % HoldsAt(Sleep6(agent),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2195). % From E: % % <->( % holds_at(awake(Agent),Time), % (holds_at(sleep1(Agent),Time) ; % holds_at(sleep2(Agent),Time) ; % holds_at(sleep3(Agent),Time) ; % holds_at(sleep4(Agent),Time) ; % holds_at(sleep5(Agent),Time) ; % holds_at(sleep6(Agent),Time))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2195). awake(Agent) <-> ( sleep1(Agent) ; sleep2(Agent) ; sleep3(Agent) ; sleep4(Agent) ; false((not(sleep5(Agent)), not(sleep6(Agent)))) ). %; A number of axioms are used to specify the transitions of %; a finite automaton. %;-- %; Waking up causes a transition from Sleep0 %; to Sleep1: % [agent,time] :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2210). % Terminates(WakeUp(agent),Sleep0(agent),time). % From E: % % terminates_at( % wakeUp(Agent), % sleep0(Agent), % Time). % [Time]. wakeUp(Agent)terminates sleep0(Agent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2210). /* terminated(happens(wakeUp(Agent), Time_From, Time_Until), sleep0(Agent), []). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2212). % [agent,time] % Initiates(WakeUp(agent),Sleep1(agent),time). % From E: % % initiates_at( % wakeUp(Agent), % sleep1(Agent), % Time). % [Time]. wakeUp(Agent)initiates sleep1(Agent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2212). /* initiated(happens(wakeUp(Agent),Time_From,Time_Until), sleep1(Agent), []). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2214). % [agent,time] % Happens(WakeUp(agent),time) -> HoldsAt(Sleep0(agent),time). % From E: % % '->'( % happens_at(wakeUp(Agent),Time), % holds_at(sleep0(Agent),Time)). % [Time]. sleep0(Agent)if wakeUp(Agent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2214). /* l_int(holds(sleep0(Agent),Time_At), [happens(wakeUp(Agent),Time_At,Time_At)]). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2216). %;-- %; Getting out of bed causes a transition from Sleep1 %; to Sleep2: % [agent,bed,time] :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2220). % Terminates(RiseFrom(agent,bed),Sleep1(agent),time). % From E: % % terminates_at( % riseFrom(Agent,Bed), % sleep1(Agent), % Time). % [Time]. riseFrom(Agent, Bed)terminates sleep1(Agent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2220). /* terminated(happens(riseFrom(Agent,Bed), Time_From, Time_Until), sleep1(Agent), []). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2222). % [agent,bed,time] % Initiates(RiseFrom(agent,bed),Sleep2(agent),time). % From E: % % initiates_at( % riseFrom(Agent,Bed), % sleep2(Agent), % Time). % [Time]. riseFrom(Agent, Bed)initiates sleep2(Agent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2222). /* initiated(happens(riseFrom(Agent,Bed), Time_From, Time_Until), sleep2(Agent), []). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2224). % [agent,bed,time] % Happens(RiseFrom(agent,bed),time) -> HoldsAt(Sleep1(agent),time). % From E: % % '->'( % happens_at(riseFrom(Agent,Bed),Time), % holds_at(sleep1(Agent),Time)). % [Time]. sleep1(Agent)if riseFrom(Agent, Bed). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2224). /* l_int(holds(sleep1(Agent),Time_At), [ happens(riseFrom(Agent,Bed), Time_At, Time_At) ]). */ % "% =================================". %;-- %; Getting dressed causes a transition from Sleep2 %; to Sleep3, the normal state of awakeness: % [agent,time] :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2231). % Terminates(GetDressed(agent),Sleep2(agent),time). % From E: % % terminates_at( % getDressed(Agent), % sleep2(Agent), % Time). % [Time]. getDressed(Agent)terminates sleep2(Agent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2231). /* terminated(happens(getDressed(Agent), Time_From, Time_Until), sleep2(Agent), []). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2233). % [agent,time] % Initiates(GetDressed(agent),Sleep3(agent),time). % From E: % % initiates_at( % getDressed(Agent), % sleep3(Agent), % Time). % [Time]. getDressed(Agent)initiates sleep3(Agent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2233). /* initiated(happens(getDressed(Agent), Time_From, Time_Until), sleep3(Agent), []). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2235). % [agent,time] % Happens(GetDressed(agent),time) -> HoldsAt(Sleep2(agent),time). % From E: % % '->'( % happens_at(getDressed(Agent),Time), % holds_at(sleep2(Agent),Time)). % [Time]. sleep2(Agent)if getDressed(Agent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2235). /* l_int(holds(sleep2(Agent),Time_At), [happens(getDressed(Agent),Time_At,Time_At)]). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2237). %;-- %; Getting tired causes a transition from Sleep3 %; to Sleep4: % [agent,time] :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2241). % Terminates(GetTired(agent),Sleep3(agent),time). % From E: % % terminates_at( % getTired(Agent), % sleep3(Agent), % Time). % [Time]. getTired(Agent)terminates sleep3(Agent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2241). /* terminated(happens(getTired(Agent), Time_From, Time_Until), sleep3(Agent), []). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2243). % [agent,time] % Initiates(GetTired(agent),Sleep4(agent),time). % From E: % % initiates_at( % getTired(Agent), % sleep4(Agent), % Time). % [Time]. getTired(Agent)initiates sleep4(Agent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2243). /* initiated(happens(getTired(Agent), Time_From, Time_Until), sleep4(Agent), []). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2245). % [agent,time] % Happens(GetTired(agent),time) -> HoldsAt(Sleep3(agent),time). % From E: % % '->'( % happens_at(getTired(Agent),Time), % holds_at(sleep3(Agent),Time)). % [Time]. sleep3(Agent)if getTired(Agent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2245). /* l_int(holds(sleep3(Agent),Time_At), [happens(getTired(Agent),Time_At,Time_At)]). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2247). %;-- %; Getting undressed causes a transition from Sleep4 %; to Sleep5: % [agent,time] :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2251). % Terminates(GetUndressed(agent),Sleep4(agent),time). % From E: % % terminates_at( % getUndressed(Agent), % sleep4(Agent), % Time). % [Time]. getUndressed(Agent)terminates sleep4(Agent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2251). /* terminated(happens(getUndressed(Agent), Time_From, Time_Until), sleep4(Agent), []). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2253). % [agent,time] % Initiates(GetUndressed(agent),Sleep5(agent),time). % From E: % % initiates_at( % getUndressed(Agent), % sleep5(Agent), % Time). % [Time]. getUndressed(Agent)initiates sleep5(Agent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2253). /* initiated(happens(getUndressed(Agent), Time_From, Time_Until), sleep5(Agent), []). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2255). % [agent,time] % Happens(GetUndressed(agent),time) -> HoldsAt(Sleep4(agent),time). % From E: % % '->'( % happens_at(getUndressed(Agent),Time), % holds_at(sleep4(Agent),Time)). % [Time]. sleep4(Agent)if getUndressed(Agent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2255). /* l_int(holds(sleep4(Agent),Time_At), [happens(getUndressed(Agent),Time_At,Time_At)]). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2257). %;-- %; Lying on a bed causes a transition from Sleep5 %; to Sleep6: % [agent,bed,time] :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2261). % Terminates(LieOn(agent,bed),Sleep5(agent),time). % From E: % % terminates_at( % lieOn(Agent,Bed), % sleep5(Agent), % Time). % [Time]. lieOn(Agent, Bed)terminates sleep5(Agent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2261). /* terminated(happens(lieOn(Agent,Bed), Time_From, Time_Until), sleep5(Agent), []). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2263). % [agent,bed,time] % Initiates(LieOn(agent,bed),Sleep6(agent),time). % From E: % % initiates_at( % lieOn(Agent,Bed), % sleep6(Agent), % Time). % [Time]. lieOn(Agent, Bed)initiates sleep6(Agent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2263). /* initiated(happens(lieOn(Agent,Bed), Time_From, Time_Until), sleep6(Agent), []). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2265). % [agent,bed,time] % Happens(LieOn(agent,bed),time) -> HoldsAt(Sleep5(agent),time). % From E: % % '->'( % happens_at(lieOn(Agent,Bed),Time), % holds_at(sleep5(Agent),Time)). % [Time]. sleep5(Agent)if lieOn(Agent, Bed). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2265). /* l_int(holds(sleep5(Agent),Time_At), [ happens(lieOn(Agent,Bed), Time_At, Time_At) ]). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2267). %;-- %; Falling asleep causes a transition from Sleep6 %; to Sleep0: % [agent,time] :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2271). % Terminates(FallAsleep(agent),Sleep6(agent),time). % From E: % % terminates_at( % fallAsleep(Agent), % sleep6(Agent), % Time). % [Time]. fallAsleep(Agent)terminates sleep6(Agent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2271). /* terminated(happens(fallAsleep(Agent), Time_From, Time_Until), sleep6(Agent), []). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2273). % [agent,time] % Initiates(FallAsleep(agent),Sleep0(agent),time). % From E: % % initiates_at( % fallAsleep(Agent), % sleep0(Agent), % Time). % [Time]. fallAsleep(Agent)initiates sleep0(Agent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2273). /* initiated(happens(fallAsleep(Agent), Time_From, Time_Until), sleep0(Agent), []). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2275). % [agent,time] % Happens(FallAsleep(agent),time) -> HoldsAt(Sleep6(agent),time). % From E: % % '->'( % happens_at(fallAsleep(Agent),Time), % holds_at(sleep6(Agent),Time)). % [Time]. sleep6(Agent)if fallAsleep(Agent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2275). /* l_int(holds(sleep6(Agent),Time_At), [happens(fallAsleep(Agent),Time_At,Time_At)]). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2277). %;-- %; agent acts on being in state Sleep5. % fluent ActOnSleep5(agent) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2279). % From E: % % fluent(actOnSleep5(agent)). mpred_prop(actOnSleep5(agent),fluent). fluents([actOnSleep5/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2281). % noninertial ActOnSleep5 % From E: % % :-call_pel_directive(noninertial(actOnSleep5)). :- call_pel_directive(noninertial(actOnSleep5)). %; We reduce the number of models by asserting that %; an agent only acts on being in state Sleep5 while in %; that state: % [agent,time] % !HoldsAt(Sleep5(agent),time) -> % !HoldsAt(ActOnSleep5(agent),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2286). % From E: % % '->'( % holds_at(not(sleep5(Agent)),Time), % holds_at(not(actOnSleep5(Agent)),Time)). % [Time]. if not sleep5(Agent)then not actOnSleep5(Agent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2286). /* reactive_rule([holds(not(sleep5(Agent)),Time_At)], [not(actOnSleep5(Agent))]). */ % "% =================================". %; Undressed is like IntentionToPlay %; ActOnSleep5 is like ActOnIntentionToPlay %; A trigger axiom states that if an agent is in state Sleep5, %; the agent acts on this state, the agent is in a room, and %; a bed is at the room, the agent lies on the bed: % [agent,room,bed,time] % HoldsAt(Sleep5(agent),time) & % HoldsAt(ActOnSleep5(agent),time) & % HoldsAt(At(agent,room),time) & % HoldsAt(At(bed,room),time) -> % Happens(LieOn(agent,bed),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2296). % From E: % % '->'( % (holds_at(sleep5(Agent),Time) , % holds_at(actOnSleep5(Agent),Time) , % holds_at(at_loc(Agent,Room),Time) , % holds_at(at_loc(Bed,Room),Time)), % happens_at(lieOn(Agent,Bed),Time)). % [Time]. lieOn(Agent, Bed)if sleep5(Agent), actOnSleep5(Agent), at_loc(Agent, Room), at_loc(Bed, Room). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2296). /* l_events(happens(lieOn(Agent,Bed), Time_From, Time_From), [ holds(sleep5(Agent),Time_From), actOnSleep5(Agent), holds(at_loc(Agent,Room),Time_From), holds(at_loc(Bed,Room),Time_From) ]). */ % "% =================================". %; A precondition axiom states that for %; an agent to lie on a bed, %; the agent must be in state Sleep5, %; the agent must act on this state, and %; there must be a room such that %; the agent is in the room and the bed is in the room: % [agent,bed,time] % Happens(LieOn(agent,bed),time) -> % HoldsAt(Sleep5(agent),time) & % HoldsAt(ActOnSleep5(agent),time) & :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2309). % {room}% % HoldsAt(At(agent,room),time) & % HoldsAt(At(bed,room),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2313). % From E: % % exists( % [Room], % '->'( % happens_at(lieOn(Agent,Bed),Time), % (holds_at(sleep5(Agent),Time) , % holds_at(actOnSleep5(Agent),Time) , % holds_at(at_loc(Agent,Room),Time) , % holds_at(at_loc(Bed,Room),Time)))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2313). exists([Room], if((sleep5(Agent), actOnSleep5(Agent), at_loc(Agent, Room), at_loc(Bed, Room)), lieOn(Agent, Bed))). %; (body) posture %; agent lies on physobj. % event LieOn(agent,physobj) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2319). % From E: % % event(lieOn(agent,physobj)). events([lieOn/2]). mpred_prop(lieOn(agent,physobj),action). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2319). actions([lieOn/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2322). %; agent sits on physobj. % event SitOn(agent,physobj) % From E: % % event(sitOn(agent,physobj)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2322). events([sitOn/2]). mpred_prop(sitOn(agent,physobj),action). actions([sitOn/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2325). % [agent,physobj,time] % Happens(SitOn(agent,physobj),time) -> % {location}% % HoldsAt(At(agent,location),time) & % HoldsAt(At(physobj,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2327). % From E: % % exists( % [Location], % '->'( % happens_at(sitOn(Agent,Physobj),Time), % (holds_at(at_loc(Agent,Location),Time) , % holds_at(at_loc(Physobj,Location),Time)))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2327). exists([Location], if((at_loc(Agent, Location), at_loc(Physobj, Location)), sitOn(Agent, Physobj))). %; agent rises from physobj. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2332). % event RiseFrom(agent,physobj) % From E: % % event(riseFrom(agent,physobj)). events([riseFrom/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2332). mpred_prop(riseFrom(agent,physobj),action). actions([riseFrom/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2334). %; agent is lying on physobj. % fluent LyingOn(agent,physobj) % From E: % % fluent(lyingOn(agent,physobj)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2334). mpred_prop(lyingOn(agent,physobj),fluent). fluents([lyingOn/2]). %; agent is sitting on physobj. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2337). % fluent SittingOn(agent,physobj) % From E: % % fluent(sittingOn(agent,physobj)). mpred_prop(sittingOn(agent,physobj),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2337). fluents([sittingOn/2]). %; agent is standing. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2339). % fluent Standing(agent) % From E: % % fluent(standing(agent)). mpred_prop(standing(agent),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2339). fluents([standing/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2341). %; agent is lying down. % fluent Lying(agent) % From E: % % fluent(lying(agent)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2341). mpred_prop(lying(agent),fluent). fluents([lying/1]). %; agent is sitting. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2344). % fluent Sitting(agent) % From E: % % fluent(sitting(agent)). mpred_prop(sitting(agent),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2344). fluents([sitting/1]). % noninertial Lying % From E: % % :-call_pel_directive(noninertial(lying)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2344). :- call_pel_directive(noninertial(lying)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2346). % noninertial Sitting % From E: % % :-call_pel_directive(noninertial(sitting)). :- call_pel_directive(noninertial(sitting)). %; At any time, an agent is either lying, sitting, or standing: % xor Lying, Sitting, Standing :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2348). % From E: % % xor([lying,sitting,standing]). xor([lying,sitting,standing]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2351). % [agent,physobj,time] % HoldsAt(LyingOn(agent,physobj),time) -> % HoldsAt(Lying(agent),time). % From E: % % '->'( % holds_at(lyingOn(Agent,Physobj),Time), % holds_at(lying(Agent),Time)). % [Time]. if lyingOn(Agent, Physobj)then lying(Agent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2351). /* reactive_rule([holds(lyingOn(Agent,Physobj),Time_At)], [lying(Agent)]). */ % "% =================================". % [agent,physobj,time] % HoldsAt(SittingOn(agent,physobj),time) -> % HoldsAt(Sitting(agent),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2356). % From E: % % '->'( % holds_at(sittingOn(Agent,Physobj),Time), % holds_at(sitting(Agent),Time)). % [Time]. if sittingOn(Agent, Physobj)then sitting(Agent). /* reactive_rule([ holds(sittingOn(Agent,Physobj), Time_At) ], [sitting(Agent)]). */ % "% =================================". %; State constraints represent that an agent can lie or sit %; on at most one object at a time: % [agent,physobj1,physobj2,time] % HoldsAt(LyingOn(agent,physobj1),time) & % HoldsAt(LyingOn(agent,physobj2),time) -> % physobj1=physobj2. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2361). % From E: % % '->'( % (holds_at(lyingOn(Agent,Physobj1),Time) , % holds_at(lyingOn(Agent,Physobj2),Time)), % Physobj1=Physobj2). % [Time]. false not equals(Physobj1, Physobj2), lyingOn(Agent, Physobj1), lyingOn(Agent, Physobj2). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2361). /* d_pre([ not(equals(Physobj1,Physobj2)), holds(lyingOn(Agent,Physobj1),Time_At), holds(lyingOn(Agent,Physobj2),Time_At) ]). */ % "% =================================". % [agent,physobj1,physobj2,time] % HoldsAt(SittingOn(agent,physobj1),time) & % HoldsAt(SittingOn(agent,physobj2),time) -> % physobj1=physobj2. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2367). % From E: % % '->'( % (holds_at(sittingOn(Agent,Physobj1),Time) , % holds_at(sittingOn(Agent,Physobj2),Time)), % Physobj1=Physobj2). % [Time]. false not equals(Physobj1, Physobj2), sittingOn(Agent, Physobj1), sittingOn(Agent, Physobj2). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2367). /* d_pre([ not(equals(Physobj1,Physobj2)), holds(sittingOn(Agent,Physobj1),Time_At), holds(sittingOn(Agent,Physobj2),Time_At) ]). */ % "% =================================". %; An effect axiom states that if an agent is standing and %; lies on a physical object, the agent will be lying on %; the physical object: % [agent,physobj,time] % HoldsAt(Standing(agent),time) -> % Initiates(LieOn(agent,physobj), % LyingOn(agent,physobj), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2374). % From E: % % '->'( % holds_at(standing(Agent),Time), % initiates_at( % lieOn(Agent,Physobj), % lyingOn(Agent,Physobj), % Time)). % [Time]. lieOn(Agent, Physobj)initiates lyingOn(Agent, Physobj)if standing(Agent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2374). /* initiated(happens(lieOn(Agent,Physobj), Time_From, Time_Until), lyingOn(Agent,Physobj), [holds(standing(Agent),Time_From)]). */ % "% =================================". %; An effect axiom states that if an agent %; lies on a physical object, the agent will no longer %; be standing: % [agent,physobj,time] % Terminates(LieOn(agent,physobj), % Standing(agent), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2383). % From E: % % terminates_at( % lieOn(Agent,Physobj), % standing(Agent), % Time). % [Time]. lieOn(Agent, Physobj)terminates standing(Agent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2383). /* terminated(happens(lieOn(Agent,Physobj), Time_From, Time_Until), standing(Agent), []). */ % "% =================================". %; An effect axiom states that if an agent is standing and %; sits on a physical object, the agent will be sitting on %; the physical object: % [agent,physobj,time] % HoldsAt(Standing(agent),time) -> % Initiates(SitOn(agent,physobj), % SittingOn(agent,physobj), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2391). % From E: % % '->'( % holds_at(standing(Agent),Time), % initiates_at( % sitOn(Agent,Physobj), % sittingOn(Agent,Physobj), % Time)). % [Time]. sitOn(Agent, Physobj)initiates sittingOn(Agent, Physobj)if standing(Agent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2391). /* initiated(happens(sitOn(Agent,Physobj), Time_From, Time_Until), sittingOn(Agent,Physobj), [holds(standing(Agent),Time_From)]). */ % "% =================================". %; An effect axiom states that if an agent %; sits on a physical object, the agent will no longer %; be standing: % [agent,physobj,time] % Terminates(SitOn(agent,physobj), % Standing(agent), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2400). % From E: % % terminates_at( % sitOn(Agent,Physobj), % standing(Agent), % Time). % [Time]. sitOn(Agent, Physobj)terminates standing(Agent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2400). /* terminated(happens(sitOn(Agent,Physobj), Time_From, Time_Until), standing(Agent), []). */ % "% =================================". %; An effect axiom states that if an agent %; is sitting or lying on a physical object and %; the agent rises from the physical object, %; the agent will be standing: % [agent,physobj,time] % (HoldsAt(SittingOn(agent,physobj),time) | % HoldsAt(LyingOn(agent,physobj),time)) -> % Initiates(RiseFrom(agent,physobj), % Standing(agent), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2409). % From E: % % '->'( % (holds_at(sittingOn(Agent,Physobj),Time) ; % holds_at(lyingOn(Agent,Physobj),Time)), % initiates_at( % riseFrom(Agent,Physobj), % standing(Agent), % Time)). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2409). false((not(sittingOn(Agent, Physobj)), not(lyingOn(Agent, Physobj)))) -> initiates(riseFrom(Agent, Physobj), standing(Agent)). %; An effect axiom states that if an agent is sitting on %; a physical object and the agent rises from the physical %; object, the agent will no longer be sitting on the %; physical object: % [agent,physobj,time] % HoldsAt(SittingOn(agent,physobj),time) -> % Terminates(RiseFrom(agent,physobj), % SittingOn(agent,physobj), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2420). % From E: % % '->'( % holds_at(sittingOn(Agent,Physobj),Time), % terminates_at( % riseFrom(Agent,Physobj), % sittingOn(Agent,Physobj), % Time)). % [Time]. riseFrom(Agent, Physobj)terminates sittingOn(Agent, Physobj)if sittingOn(Agent, Physobj). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2420). /* terminated(happens(riseFrom(Agent,Physobj), Time_From, Time_Until), sittingOn(Agent,Physobj), [ holds(sittingOn(Agent,Physobj), Time_From) ]). */ % "% =================================". %; An effect axiom states that if an agent is lying on %; a physical object and the agent rises from the physical %; object, the agent will no longer be lying on the %; physical object: % [agent,physobj,time] % HoldsAt(LyingOn(agent,physobj),time) -> % Terminates(RiseFrom(agent,physobj), % LyingOn(agent,physobj), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2430). % From E: % % '->'( % holds_at(lyingOn(Agent,Physobj),Time), % terminates_at( % riseFrom(Agent,Physobj), % lyingOn(Agent,Physobj), % Time)). % [Time]. riseFrom(Agent, Physobj)terminates lyingOn(Agent, Physobj)if lyingOn(Agent, Physobj). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2430). /* terminated(happens(riseFrom(Agent,Physobj), Time_From, Time_Until), lyingOn(Agent,Physobj), [holds(lyingOn(Agent,Physobj),Time_From)]). */ % "% =================================". %; dressing %; agent gets undressed. % event GetDressed(agent) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2438). % From E: % % event(getDressed(agent)). events([getDressed/1]). mpred_prop(getDressed(agent),action). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2438). actions([getDressed/1]). %; agent gets dressed. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2441). % event GetUndressed(agent) % From E: % % event(getUndressed(agent)). events([getUndressed/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2441). mpred_prop(getUndressed(agent),action). actions([getUndressed/1]). %; agent is dressed. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2443). % fluent Dressed(agent) % From E: % % fluent(dressed(agent)). mpred_prop(dressed(agent),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2443). fluents([dressed/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2445). %; Effect axioms deal with getting dressed and undressed: % [agent,time] % Initiates(GetDressed(agent),Dressed(agent),time). % From E: % % initiates_at( % getDressed(Agent), % dressed(Agent), % Time). % [Time]. getDressed(Agent)initiates dressed(Agent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2445). /* initiated(happens(getDressed(Agent), Time_From, Time_Until), dressed(Agent), []). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2447). % [agent,time] % Terminates(GetUndressed(agent),Dressed(agent),time). % From E: % % terminates_at( % getUndressed(Agent), % dressed(Agent), % Time). % [Time]. getUndressed(Agent)terminates dressed(Agent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2447). /* terminated(happens(getUndressed(Agent), Time_From, Time_Until), dressed(Agent), []). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2449). %; End of file. %; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %; FILE: ecnet/Sleeping.e %; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %; %; 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 %; %; @article{Mueller:2004c, %; author = "Erik T. Mueller", %; year = "2004", %; title = "Understanding script-based stories using commonsense reasoning", %; journal = "Cognitive Systems Research", %; volume = "5", %; number = "4", %; pages = "307--340", %; } %; :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2478). % option modeldiff on % From E: % % :-call_pel_directive(option(modeldiff,on)). :- call_pel_directive(option(modeldiff, on)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2480). % ignore Love, ThreatenedBy % From E: % % :-call_pel_directive(ignore(love)). :- call_pel_directive(ignore(love)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2480). % From E: % % :-call_pel_directive(ignore(threatenedBy)). :- call_pel_directive(ignore(threatenedBy)). % ignore LookOutOnto, Floor, BuildingOf, SkyOf, GroundOf :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2480). % From E: % % :-call_pel_directive(ignore(lookOutOnto)). :- call_pel_directive(ignore(lookOutOnto)). % From E: % % :-call_pel_directive(ignore(floor)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2480). :- call_pel_directive(ignore(floor)). % From E: % % :-call_pel_directive(ignore(buildingOf)). :- call_pel_directive(ignore(buildingOf)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2480). % From E: % % :-call_pel_directive(ignore(skyOf)). :- call_pel_directive(ignore(skyOf)). % From E: % % :-call_pel_directive(ignore(groundOf)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2480). :- call_pel_directive(ignore(groundOf)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2482). % ignore Inside, Near % From E: % % :-call_pel_directive(ignore(inside)). :- call_pel_directive(ignore(inside)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2482). % From E: % % :-call_pel_directive(ignore(near)). :- call_pel_directive(ignore(near)). % ignore See :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2482). % From E: % % :-call_pel_directive(ignore(see)). :- call_pel_directive(ignore(see)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2485). % ignore ActOnSleep5 % From E: % % :-call_pel_directive(ignore(actOnSleep5)). :- call_pel_directive(ignore(actOnSleep5)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2487). % option renaming off % From E: % % :-call_pel_directive(option(renaming,off)). :- call_pel_directive(option(renaming, off)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2489). % 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/test/ec_planner/ectest/ec_reader_test_ecnet.e',2489). % From E: % % :-call_pel_directive(load('foundations/EC.e')). :- call_pel_directive(load('foundations/EC.e')). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2491). % load answers/Mueller2003/Ontology.e % From E: % % :-call_pel_directive(load('answers/Mueller2003/Ontology.e')). :- call_pel_directive(load('answers/Mueller2003/Ontology.e')). % load answers/Mueller2004c/RTSpaceM.e :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2491). % From E: % % :-call_pel_directive(load('answers/Mueller2004c/RTSpaceM.e')). :- call_pel_directive(load('answers/Mueller2004c/RTSpaceM.e')). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2493). % load answers/Mueller2004c/OTSpaceM.e % From E: % % :-call_pel_directive(load('answers/Mueller2004c/OTSpaceM.e')). :- call_pel_directive(load('answers/Mueller2004c/OTSpaceM.e')). % load answers/Mueller2004c/Cognition.e :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2493). % From E: % % :-call_pel_directive(load('answers/Mueller2004c/Cognition.e')). :- call_pel_directive(load('answers/Mueller2004c/Cognition.e')). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2495). % load answers/Mueller2003/Sleep.e % From E: % % :-call_pel_directive(load('answers/Mueller2003/Sleep.e')). :- call_pel_directive(load('answers/Mueller2003/Sleep.e')). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2497). % door Door1 % From E: % % t(door,door1). door(door1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2499). % room Room0 % From E: % % t(room,room0). room(room0). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2501). % room Room1 % From E: % % t(room,room1). room(room1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2503). % Side1(Door1)=Room0. % From E: % % side1(door1)=room0. side1(door1,room0). % Side2(Door1)=Room1. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2503). % From E: % % side2(door1)=room1. side2(door1,room1). % agent Sleeper1 :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2505). % From E: % % t(agent,sleeper1). agent(sleeper1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2508). % bed Bed1 % From E: % % t(bed,bed1). bed(bed1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2510). % outside Outside1 % From E: % % t(outside,outside1). outside(outside1). %; initial state % [agent,object] % !HoldsAt(Holding(agent,object),0). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2512). % From E: % % holds_at(not(holding(Agent,Object)),0). initially not holding(Agent, Object). % initial_state([not(holding(Agent,Object))]). % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2514). % [agent,physobj] % !HoldsAt(SittingOn(agent,physobj),0). % From E: % % holds_at(not(sittingOn(Agent,Physobj)),0). initially not sittingOn(Agent, Physobj). % initial_state([not(sittingOn(Agent,Physobj))]). % "% =================================". % [agent,physobj] % !HoldsAt(LyingOn(agent,physobj),0). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2514). % From E: % % holds_at(not(lyingOn(Agent,Physobj)),0). initially not lyingOn(Agent, Physobj). % initial_state([not(lyingOn(Agent,Physobj))]). % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2516). % HoldsAt(Dressed(Sleeper1),0). % From E: % % holds_at(dressed(sleeper1),0). initially dressed(sleeper1). % initial_state([dressed(sleeper1)]). % "% =================================". % HoldsAt(Awake(Sleeper1),0). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2516). % From E: % % holds_at(awake(sleeper1),0). initially awake(sleeper1). % initial_state([awake(sleeper1)]). % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2518). % HoldsAt(Sleep3(Sleeper1),0). % From E: % % holds_at(sleep3(sleeper1),0). initially sleep3(sleeper1). % initial_state([sleep3(sleeper1)]). % "% =================================". % HoldsAt(Standing(Sleeper1),0). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2518). % From E: % % holds_at(standing(sleeper1),0). initially standing(sleeper1). % initial_state([standing(sleeper1)]). % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2520). % HoldsAt(DoorUnlocked(Door1),0). % From E: % % holds_at(doorUnlocked(door1),0). initially doorUnlocked(door1). % initial_state([doorUnlocked(door1)]). % "% =================================". % HoldsAt(DoorIsOpen(Door1),0). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2520). % From E: % % holds_at(doorIsOpen(door1),0). initially doorIsOpen(door1). % initial_state([doorIsOpen(door1)]). % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2522). % HoldsAt(At(Sleeper1,Room0),0). % From E: % % holds_at(at_loc(sleeper1,room0),0). initially at_loc(sleeper1, room0). % initial_state([at_loc(sleeper1,room0)]). % "% =================================". % HoldsAt(At(Bed1,Room1),0). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2522). % From E: % % holds_at(at_loc(bed1,room1),0). initially at_loc(bed1, room1). % initial_state([at_loc(bed1,room1)]). % "% =================================". %; narrative :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2526). % Happens(GetTired(Sleeper1),0). % From E: % % happens_at(getTired(sleeper1),0). observe getTired(sleeper1)at 0. % observe([getTired(sleeper1)],0). % "% =================================". % Happens(WalkThroughDoor12(Sleeper1,Door1),1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2526). % From E: % % happens_at(walkThroughDoor12(sleeper1,door1),1). observe walkThroughDoor12(sleeper1, door1)at 1. % observe([walkThroughDoor12(sleeper1,door1)],1). % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2528). % Happens(GetUndressed(Sleeper1),2). % From E: % % happens_at(getUndressed(sleeper1),2). observe getUndressed(sleeper1)at 2. % observe([getUndressed(sleeper1)],2). % "% =================================". % Happens(LieOn(Sleeper1,Bed1),3). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2528). % From E: % % happens_at(lieOn(sleeper1,bed1),3). observe lieOn(sleeper1, bed1)at 3. % observe([lieOn(sleeper1,bed1)],3). % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2530). % Happens(FallAsleep(Sleeper1),4). % From E: % % happens_at(fallAsleep(sleeper1),4). observe fallAsleep(sleeper1)at 4. % observe([fallAsleep(sleeper1)],4). % "% =================================". % Happens(Dream(Sleeper1),5). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2530). % From E: % % happens_at(dream(sleeper1),5). observe dream(sleeper1)at 5. % observe([dream(sleeper1)],5). % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2532). % Happens(WakeUp(Sleeper1),6). % From E: % % happens_at(wakeUp(sleeper1),6). observe wakeUp(sleeper1)at 6. % observe([wakeUp(sleeper1)],6). % "% =================================". % Happens(RiseFrom(Sleeper1,Bed1),7). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2532). % From E: % % happens_at(riseFrom(sleeper1,bed1),7). observe riseFrom(sleeper1, bed1)at 7. % observe([riseFrom(sleeper1,bed1)],7). % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2534). % Happens(GetDressed(Sleeper1),8). % From E: % % happens_at(getDressed(sleeper1),8). observe getDressed(sleeper1)at 8. % observe([getDressed(sleeper1)],8). % "% =================================". % Happens(WalkThroughDoor21(Sleeper1,Door1),9). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2534). % From E: % % happens_at(walkThroughDoor21(sleeper1,door1),9). observe walkThroughDoor21(sleeper1, door1)at 9. % observe([walkThroughDoor21(sleeper1,door1)],9). % "% =================================". % range time 0 10 :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2536). % From E: % % :-call_pel_directive(range(time,0,10)). :- call_pel_directive(range(time, 0, 10)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2538). % range offset 0 0 % From E: % % :-call_pel_directive(range(offset,0,0)). :- call_pel_directive(range(offset, 0, 0)). % range diameter 0 0 :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2538). % From E: % % :-call_pel_directive(range(diameter,0,0)). :- call_pel_directive(range(diameter, 0, 0)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2541). % completion Happens % From E: % % :-call_pel_directive(completion(happens_at)). :- call_pel_directive(completion(happens_at)). %; End of file. %; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %; FILE: ecnet/Rest.e %; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %; %; 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 %; %; @article{Mueller:InPress, %; author = "Erik T. Mueller", %; year = "in press", %; title = "Modelling space and time in narratives about restaurants", %; journal = "Literary and Linguistic Computing", %; } %; :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2569). % option renaming off % From E: % % :-call_pel_directive(option(renaming,off)). :- call_pel_directive(option(renaming, off)). % option encoding 3 :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2569). % From E: % % :-call_pel_directive(option(encoding,3)). :- call_pel_directive(option(encoding, 3)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2572). % 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/test/ec_planner/ectest/ec_reader_test_ecnet.e',2572). % From E: % % :-call_pel_directive(load('foundations/EC.e')). :- call_pel_directive(load('foundations/EC.e')). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2574). % load answers/Mueller2003/Ontology.e % From E: % % :-call_pel_directive(load('answers/Mueller2003/Ontology.e')). :- call_pel_directive(load('answers/Mueller2003/Ontology.e')). % load answers/MuellerInPress/RepRest.e :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2574). % From E: % % :-call_pel_directive(load('answers/MuellerInPress/RepRest.e')). :- call_pel_directive(load('answers/MuellerInPress/RepRest.e')). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2577). % door MainEntrance1 % From E: % % t(door,mainEntrance1). door(mainEntrance1). %; room-scale topological space % outside Street1 :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2579). % From E: % % t(outside,street1). outside(street1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2581). % room DiningRoom1 % From E: % % t(room,diningRoom1). room(diningRoom1). % door KitchenDoor1 :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2581). % From E: % % t(door,kitchenDoor1). door(kitchenDoor1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2583). % room Kitchen1 % From E: % % t(room,kitchen1). room(kitchen1). % Side1(MainEntrance1)=Street1. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2583). % From E: % % side1(mainEntrance1)=street1. side1(mainEntrance1,street1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2585). % Side2(MainEntrance1)=DiningRoom1. % From E: % % side2(mainEntrance1)=diningRoom1. side2(mainEntrance1,diningRoom1). % Side1(KitchenDoor1)=DiningRoom1. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2585). % From E: % % side1(kitchenDoor1)=diningRoom1. side1(kitchenDoor1,diningRoom1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2587). % Side2(KitchenDoor1)=Kitchen1. % From E: % % side2(kitchenDoor1)=kitchen1. side2(kitchenDoor1,kitchen1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2589). % agent Customer1 % From E: % % t(agent,customer1). agent(customer1). % menu Menu1 :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2589). % From E: % % t(menu,menu1). menu(menu1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2591). % chair Chair1 % From E: % % t(chair,chair1). chair(chair1). % food Food1 :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2591). % From E: % % t(food,food1). food(food1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2593). % HoldsAt(At(Customer1,Street1),0). % From E: % % holds_at(at_loc(customer1,street1),0). initially at_loc(customer1, street1). % initial_state([at_loc(customer1,street1)]). % "% =================================". % HoldsAt(Hungry(Customer1),0). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2593). % From E: % % holds_at(hungry(customer1),0). initially hungry(customer1). % initial_state([hungry(customer1)]). % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2595). % HoldsAt(At(Chair1,DiningRoom1),0). % From E: % % holds_at(at_loc(chair1,diningRoom1),0). initially at_loc(chair1, diningRoom1). % initial_state([at_loc(chair1,diningRoom1)]). % "% =================================". % HoldsAt(At(Menu1,DiningRoom1),0). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2595). % From E: % % holds_at(at_loc(menu1,diningRoom1),0). initially at_loc(menu1, diningRoom1). % initial_state([at_loc(menu1,diningRoom1)]). % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2597). % HoldsAt(On(Menu1,Table1),0). % From E: % % holds_at(on(menu1,table1),0). initially on(menu1, table1). % initial_state([on(menu1,table1)]). % "% =================================". % HoldsAt(At(Food1,Kitchen1),0). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2597). % From E: % % holds_at(at_loc(food1,kitchen1),0). initially at_loc(food1, kitchen1). % initial_state([at_loc(food1,kitchen1)]). % "% =================================". % waiter Waiter1 :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2599). % From E: % % t(waiter,waiter1). waiter(waiter1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2601). % cook Cook1 % From E: % % t(cook,cook1). cook(cook1). %; props % table Table1 :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2603). % From E: % % t(table,table1). table table1. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2605). % bill Bill1 % From E: % % t(bill,bill1). bill(bill1). %; restaurant % restaurant Restaurant1 :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2607). % From E: % % t(restaurant,restaurant1). restaurant(restaurant1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2609). % CookOf(Restaurant1)=Cook1. % From E: % % cookOf(restaurant1)=cook1. cookOf(restaurant1,cook1). % TableOf(Restaurant1)=Table1. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2609). % From E: % % tableOf(restaurant1)=table1. tableOf(restaurant1,table1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2611). % WaiterOf(Restaurant1)=Waiter1. % From E: % % waiterOf(restaurant1)=waiter1. waiterOf(restaurant1,waiter1). % KitchenDoorOf(Restaurant1)=KitchenDoor1. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2611). % From E: % % kitchenDoorOf(restaurant1)=kitchenDoor1. kitchenDoorOf(restaurant1,kitchenDoor1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2613). % BillOf(Restaurant1)=Bill1. % From E: % % billOf(restaurant1)=bill1. billOf(restaurant1,bill1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2615). %; prune % sort ona, onb % From E: % % sort(ona). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2615). sort(ona). % From E: % % sort(onb). sort(onb). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2617). % fluent! On(ona,onb) % From E: % % fluent(on(ona,onb)). mpred_prop(on(ona,onb),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2617). fluents([on/2]). % event! PlaceOn(agent,ona,onb) % From E: % % event(placeOn(agent,ona,onb)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2617). events([placeOn/3]). mpred_prop(placeOn(agent,ona,onb),action). actions([placeOn/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2619). % event! TakeOffOf(agent,ona,onb) % From E: % % event(takeOffOf(agent,ona,onb)). events([takeOffOf/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2619). mpred_prop(takeOffOf(agent,ona,onb),action). actions([takeOffOf/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2621). % sort ordera, orderb, orderc % From E: % % sort(ordera). sort(ordera). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2621). % From E: % % sort(orderb). sort(orderb). % From E: % % sort(orderc). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2621). sort(orderc). % event! Order(ordera,orderb,orderc) % From E: % % event(order(ordera,orderb,orderc)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2621). mpred_prop(order(ordera,orderb,orderc),event). events([order/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2623). % fluent! KnowOrder(orderb,ordera,orderc) % From E: % % fluent(knowOrder(orderb,ordera,orderc)). mpred_prop(knowOrder(orderb,ordera,orderc),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2623). fluents([knowOrder/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2625). % sort requesta, requestb, requestc % From E: % % sort(requesta). sort(requesta). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2625). % From E: % % sort(requestb). sort(requestb). % From E: % % sort(requestc). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2625). sort(requestc). % event! Request(requesta,requestb,requestc) % From E: % % event(request(requesta,requestb,requestc)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2625). mpred_prop(request(requesta,requestb,requestc),event). events([request/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2627). % fluent! KnowRequest(requestb,requesta,requestc) % From E: % % fluent(knowRequest(requestb,requesta,requestc)). mpred_prop(knowRequest(requestb,requesta,requestc),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2627). fluents([knowRequest/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2629). % sort holda, holdb, holdc % From E: % % sort(holda). sort(holda). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2629). % From E: % % sort(holdb). sort(holdb). % From E: % % sort(holdc). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2629). sort(holdc). % event! TakeOffOf(holda,holdb,holdc) % From E: % % event(takeOffOf(holda,holdb,holdc)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2629). mpred_prop(takeOffOf(holda,holdb,holdc),event). events([takeOffOf/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2631). % event! PickUp(holda,holdb) % From E: % % event(pickUp(holda,holdb)). mpred_prop(pickUp(holda,holdb),event). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2631). events([pickUp/2]). % event! LetGoOf(holda,holdb) % From E: % % event(letGoOf(holda,holdb)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2631). mpred_prop(letGoOf(holda,holdb),event). events([letGoOf/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2633). % event! Hold(holda,holdb) % From E: % % event(hold(holda,holdb)). mpred_prop(hold(holda,holdb),event). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2633). events([hold/2]). % fluent! Holding(holda,holdb) % From E: % % fluent(holding(holda,holdb)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2633). mpred_prop(holding(holda,holdb),fluent). fluents([holding/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2636). % sort sita, sitb % From E: % % sort(sita). sort(sita). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2636). % From E: % % sort(sitb). sort(sitb). % event! LieOn(sita,sitb) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2636). % From E: % % event(lieOn(sita,sitb)). mpred_prop(lieOn(sita,sitb),event). events([lieOn/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2638). % event! SitOn(sita,sitb) % From E: % % event(sitOn(sita,sitb)). mpred_prop(sitOn(sita,sitb),event). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2638). events([sitOn/2]). % event! RiseFrom(sita,sitb) % From E: % % event(riseFrom(sita,sitb)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2638). mpred_prop(riseFrom(sita,sitb),event). events([riseFrom/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2640). % fluent! LyingOn(sita,sitb) % From E: % % fluent(lyingOn(sita,sitb)). mpred_prop(lyingOn(sita,sitb),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2640). fluents([lyingOn/2]). % fluent! SittingOn(sita,sitb) % From E: % % fluent(sittingOn(sita,sitb)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2640). mpred_prop(sittingOn(sita,sitb),fluent). fluents([sittingOn/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2643). % sort greeta, greetb % From E: % % sort(greeta). sort(greeta). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2643). % From E: % % sort(greetb). sort(greetb). % event! Greet(greeta,greetb) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2643). % From E: % % event(greet(greeta,greetb)). mpred_prop(greet(greeta,greetb),event). events([greet/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2646). % ona! Menu1, Food1, Bill1 % From E: % % t(ona,menu1). ona(menu1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2646). % From E: % % t(ona,food1). ona(food1). % From E: % % t(ona,bill1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2646). ona(bill1). % onb! Table1 % From E: % % t(onb,table1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2646). onb(table1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2648). % ordera! Customer1, Waiter1 % From E: % % t(ordera,customer1). ordera(customer1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2648). % From E: % % t(ordera,waiter1). ordera(waiter1). % orderb! Waiter1, Cook1 :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2648). % From E: % % t(orderb,waiter1). orderb(waiter1). % From E: % % t(orderb,cook1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2648). orderb(cook1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2650). % orderc! Food1 % From E: % % t(orderc,food1). orderc(food1). % requesta! Customer1 :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2650). % From E: % % t(requesta,customer1). requesta(customer1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2652). % requestb! Waiter1 % From E: % % t(requestb,waiter1). requestb(waiter1). % requestc! Bill1 :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2652). % From E: % % t(requestc,bill1). requestc(bill1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2654). % holda! Customer1, Waiter1 % From E: % % t(holda,customer1). holda(customer1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2654). % From E: % % t(holda,waiter1). holda(waiter1). % holdb! Menu1, Food1, Bill1 :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2654). % From E: % % t(holdb,menu1). holdb(menu1). % From E: % % t(holdb,food1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2654). holdb(food1). % From E: % % t(holdb,bill1). holdb(bill1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2656). % holdc! Table1 % From E: % % t(holdc,table1). holdc(table1). % sita! Customer1 :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2656). % From E: % % t(sita,customer1). sita(customer1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2658). % sitb! Chair1 % From E: % % t(sitb,chair1). sitb(chair1). % greeta! Customer1, Waiter1 :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2658). % From E: % % t(greeta,customer1). greeta(customer1). % From E: % % t(greeta,waiter1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2658). greeta(waiter1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2660). % greetb! Customer1, Waiter1 % From E: % % t(greetb,customer1). greetb(customer1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2660). % From E: % % t(greetb,waiter1). greetb(waiter1). %; initial situation % HoldsAt(At(Waiter1,DiningRoom1),0). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2662). % From E: % % holds_at(at_loc(waiter1,diningRoom1),0). initially at_loc(waiter1, diningRoom1). % initial_state([at_loc(waiter1,diningRoom1)]). % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2664). % HoldsAt(At(Cook1,Kitchen1),0). % From E: % % holds_at(at_loc(cook1,kitchen1),0). initially at_loc(cook1, kitchen1). % initial_state([at_loc(cook1,kitchen1)]). % "% =================================". % HoldsAt(At(Table1,DiningRoom1),0). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2664). % From E: % % holds_at(at_loc(table1,diningRoom1),0). initially at_loc(table1, diningRoom1). % initial_state([at_loc(table1,diningRoom1)]). % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2666). % !HoldsAt(On(Bill1,Table1),0). % From E: % % holds_at(not(on(bill1,table1)),0). initially not on(bill1, table1). % initial_state([not(on(bill1,table1))]). % "% =================================". % HoldsAt(At(Bill1,DiningRoom1),0). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2666). % From E: % % holds_at(at_loc(bill1,diningRoom1),0). initially at_loc(bill1, diningRoom1). % initial_state([at_loc(bill1,diningRoom1)]). % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2668). % [agent] % HoldsAt(Standing(agent),0). % From E: % % holds_at(standing(Agent),0). initially standing(Agent). % initial_state([standing(Agent)]). % "% =================================". % [agent,object] % !HoldsAt(Holding(agent,object),0). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2668). % From E: % % holds_at(not(holding(Agent,Object)),0). initially not holding(Agent, Object). % initial_state([not(holding(Agent,Object))]). % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2670). % [agent1,agent2,physobj] % !HoldsAt(KnowOrder(agent1,agent2,physobj),0). % From E: % % holds_at(not(knowOrder(Agent1,Agent2,Physobj)),0). initially not knowOrder(Agent1, Agent2, Physobj). % initial_state([not(knowOrder(Agent1,Agent2,Physobj))]). % "% =================================". % [agent1,agent2,physobj] % !HoldsAt(KnowRequest(agent1,agent2,physobj),0). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2670). % From E: % % holds_at(not(knowRequest(Agent1,Agent2,Physobj)),0). initially not knowRequest(Agent1, Agent2, Physobj). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2670). /* initial_state([ not(knowRequest(Agent1, Agent2, Physobj)) ]). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2672). % HoldsAt(BeWaiter0(Waiter1),0). % From E: % % holds_at(beWaiter0(waiter1),0). initially beWaiter0(waiter1). % initial_state([beWaiter0(waiter1)]). % "% =================================". % HoldsAt(BeCook0(Cook1),0). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2672). % From E: % % holds_at(beCook0(cook1),0). initially beCook0(cook1). % initial_state([beCook0(cook1)]). % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2674). % [food] % !HoldsAt(FoodPrepared(food),0). % From E: % % holds_at(not(foodPrepared(Food)),0). initially not foodPrepared(Food). % initial_state([not(foodPrepared(Food))]). % "% =================================". % !HoldsAt(Hungry(Cook1),0). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2674). % From E: % % holds_at(not(hungry(cook1)),0). initially not hungry(cook1). % initial_state([not(hungry(cook1))]). % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2676). % !HoldsAt(Hungry(Waiter1),0). % From E: % % holds_at(not(hungry(waiter1)),0). initially not hungry(waiter1). % initial_state([not(hungry(waiter1))]). % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2678). % Happens(WalkThroughDoor12(Customer1,MainEntrance1),0). % From E: % % happens_at(walkThroughDoor12(customer1,mainEntrance1),0). observe walkThroughDoor12(customer1, mainEntrance1)at 0. % observe([walkThroughDoor12(customer1,mainEntrance1)],0). % "% =================================". % Happens(Greet(Waiter1,Customer1),1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2678). % From E: % % happens_at(greet(waiter1,customer1),1). observe greet(waiter1, customer1)at 1. % observe([greet(waiter1,customer1)],1). % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2680). % Happens(SitOn(Customer1,Chair1),2). % From E: % % happens_at(sitOn(customer1,chair1),2). observe sitOn(customer1, chair1)at 2. % observe([sitOn(customer1,chair1)],2). % "% =================================". % Happens(TakeOffOf(Customer1,Menu1,Table1),3). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2680). % From E: % % happens_at(takeOffOf(customer1,menu1,table1),3). observe takeOffOf(customer1, menu1, table1)at 3. % observe([takeOffOf(customer1,menu1,table1)],3). % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2682). % Happens(Order(Customer1,Waiter1,Food1),4). % From E: % % happens_at(order(customer1,waiter1,food1),4). observe order(customer1, waiter1, food1)at 4. % observe([order(customer1,waiter1,food1)],4). % "% =================================". % Happens(PlaceOn(Customer1,Menu1,Table1),5). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2682). % From E: % % happens_at(placeOn(customer1,menu1,table1),5). observe placeOn(customer1, menu1, table1)at 5. % observe([placeOn(customer1,menu1,table1)],5). % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2684). % Happens(Eat(Customer1,Food1),11). % From E: % % happens_at(eat(customer1,food1),11). observe eat(customer1, food1)at 11. % observe([eat(customer1,food1)],11). % "% =================================". % Happens(Request(Customer1,Waiter1,Bill1),12). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2684). % From E: % % happens_at(request(customer1,waiter1,bill1),12). observe request(customer1, waiter1, bill1)at 12. % observe([request(customer1,waiter1,bill1)],12). % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2686). % Happens(Pay(Customer1,Waiter1),15). % From E: % % happens_at(pay(customer1,waiter1),15). observe pay(customer1, waiter1)at 15. % observe([pay(customer1,waiter1)],15). % "% =================================". % Happens(Tip(Customer1,Waiter1),15). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2686). % From E: % % happens_at(tip(customer1,waiter1),15). observe tip(customer1, waiter1)at 15. % observe([tip(customer1,waiter1)],15). % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2688). % Happens(RiseFrom(Customer1,Chair1),16). % From E: % % happens_at(riseFrom(customer1,chair1),16). observe riseFrom(customer1, chair1)at 16. % observe([riseFrom(customer1,chair1)],16). % "% =================================". % Happens(SayGoodbye(Customer1,Waiter1),17). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2688). % From E: % % happens_at(sayGoodbye(customer1,waiter1),17). observe sayGoodbye(customer1, waiter1)at 17. % observe([sayGoodbye(customer1,waiter1)],17). % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2690). % Happens(WalkThroughDoor21(Customer1,MainEntrance1),18). % From E: % % happens_at(walkThroughDoor21(customer1,mainEntrance1),18). observe walkThroughDoor21(customer1, mainEntrance1)at 18. % observe([walkThroughDoor21(customer1,mainEntrance1)],18). % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2692). % range time 0 19 % From E: % % :-call_pel_directive(range(time,0,19)). :- call_pel_directive(range(time, 0, 19)). % range offset 0 0 :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2692). % From E: % % :-call_pel_directive(range(offset,0,0)). :- call_pel_directive(range(offset, 0, 0)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2694). % range diameter 0 0 % From E: % % :-call_pel_directive(range(diameter,0,0)). :- call_pel_directive(range(diameter, 0, 0)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2696). % completion Happens % From E: % % :-call_pel_directive(completion(happens_at)). :- call_pel_directive(completion(happens_at)). %; End of file. %; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %; FILE: ecnet/RepRest.e %; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %; %; 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 %; %; @article{Mueller:InPress, %; author = "Erik T. Mueller", %; year = "in press", %; title = "Modelling space and time in narratives about restaurants", %; journal = "Literary and Linguistic Computing", %; } %; %;sort boolean %;sort integer %;reified sort predicate %;reified sort function %; %;sort time: integer %;sort offset: integer %; %;reified sort fluent %;reified sort event %; %;predicate Happens(event,time) %;predicate HoldsAt(fluent,time) %;predicate ReleasedAt(fluent,time) %;predicate Initiates(event,fluent,time) %;predicate Terminates(event,fluent,time) %;predicate Releases(event,fluent,time) %; %;sort diameter: integer %; %;sort object %; %;sort agent: object %; %;sort physobj: object %;sort bed: physobj %;sort snowflake: physobj %;sort sky: physobj %; %;sort stuff: physobj %; %;sort surface: physobj %;sort ground: surface %; %;sort snow: stuff %;sort ball %; %;sort food: physobj %;sort fruit: food %;sort orange: fruit %;sort salad: food %; %;sort clothing: physobj %;sort scarf: clothing %;sort hat: clothing %; %;sort vegetablematter: physobj %;sort coal: vegetablematter %; %;sort bodypart: physobj %;sort hand: bodypart %; %;sort papertowels: physobj %;sort device: physobj %;sort electronicdevice: device %;sort lamp: electronicdevice %; %;sort cat: physobj %; %;sort weapon: physobj %;sort gun: weapon %;sort bomb: weapon %;sort bullet: weapon %; %;sort location %;sort room: location, outside: location %; %;sort portal %;sort door: portal, staircase: portal %;sort street: portal %; %;sort building %; %;sort fire: object %; %;sort furniture: physobj %;sort chair: furniture %;sort table: furniture %; %;sort menu: physobj %;sort bill: physobj %; %;sort script %; :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2808). % fluent Holding(agent,physobj) % From E: % % fluent(holding(agent,physobj)). mpred_prop(holding(agent,physobj),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2808). fluents([holding/2]). % event PickUp(agent,physobj) % From E: % % event(pickUp(agent,physobj)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2808). events([pickUp/2]). mpred_prop(pickUp(agent,physobj),action). actions([pickUp/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2810). % event LetGoOf(agent,physobj) % From E: % % event(letGoOf(agent,physobj)). events([letGoOf/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2810). mpred_prop(letGoOf(agent,physobj),action). actions([letGoOf/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2812). % [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/test/ec_planner/ectest/ec_reader_test_ecnet.e',2812). /* initiated(happens(pickUp(Agent,Physobj), Time_From, Time_Until), holding(Agent,Physobj), []). */ % "% =================================". % [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/test/ec_planner/ectest/ec_reader_test_ecnet.e',2816). % 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/test/ec_planner/ectest/ec_reader_test_ecnet.e',2816). exists([Location], if((at_loc(Agent, Location), at_loc(Physobj, Location)), pickUp(Agent, Physobj))). % [agent,physobj,time] % Terminates(LetGoOf(agent,physobj),Holding(agent,physobj),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2822). % From E: % % terminates_at( % letGoOf(Agent,Physobj), % holding(Agent,Physobj), % Time). % [Time]. letGoOf(Agent, Physobj)terminates holding(Agent, Physobj). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2822). /* terminated(happens(letGoOf(Agent,Physobj), Time_From, Time_Until), holding(Agent,Physobj), []). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2824). % [agent,physobj,time] % Happens(LetGoOf(agent,physobj),time) -> % HoldsAt(Holding(agent,physobj),time). % From E: % % '->'( % happens_at(letGoOf(Agent,Physobj),Time), % holds_at(holding(Agent,Physobj),Time)). % [Time]. holding(Agent, Physobj)if letGoOf(Agent, Physobj). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2824). /* l_int(holds(holding(Agent,Physobj),Time_At), [ happens(letGoOf(Agent,Physobj), Time_At, Time_At) ]). */ % "% =================================". % [agent,physobj,location,time] % Releases(PickUp(agent,physobj),At(physobj,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2829). % From E: % % releases_at( % pickUp(Agent,Physobj), % at_loc(Physobj,Location), % Time). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2829). releases(pickUp(Agent,Physobj), at_loc(Physobj,Location)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2831). % [agent,physobj,location,time] % HoldsAt(Holding(agent,physobj),time) & % HoldsAt(At(agent,location),time) -> % HoldsAt(At(physobj,location),time). % From E: % % '->'( % (holds_at(holding(Agent,Physobj),Time) , % holds_at(at_loc(Agent,Location),Time)), % holds_at(at_loc(Physobj,Location),Time)). % [Time]. at_loc(Physobj, Location)if holding(Agent, Physobj), at_loc(Agent, Location). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2831). /* l_int(holds(at_loc(Physobj,Location),Time_At), [ holds(holding(Agent,Physobj),Time_At), holds(at_loc(Agent,Location),Time_At) ]). */ % "% =================================". %;[agent,physobj,location1,location2,time] %;HoldsAt(At(agent,location1),time) & %;location1!=location2 -> %;Terminates(LetGoOf(agent,physobj),At(physobj,location2),time). % [agent,physobj,location,time] % HoldsAt(At(agent,location),time) -> % Initiates(LetGoOf(agent,physobj),At(physobj,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2841). % From E: % % '->'( % holds_at(at_loc(Agent,Location),Time), % initiates_at( % letGoOf(Agent,Physobj), % at_loc(Physobj,Location), % Time)). % [Time]. letGoOf(Agent, Physobj)initiates at_loc(Physobj, Location)if at_loc(Agent, Location). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2841). /* initiated(happens(letGoOf(Agent,Physobj), Time_From, Time_Until), at_loc(Physobj,Location), [holds(at_loc(Agent,Location),Time_From)]). */ % "% =================================". % fluent On(physobj,physobj) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2844). % From E: % % fluent(on(physobj,physobj)). mpred_prop(on(physobj,physobj),fluent). fluents([on/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2847). % event PlaceOn(agent,physobj,physobj) % From E: % % event(placeOn(agent,physobj,physobj)). events([placeOn/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2847). mpred_prop(placeOn(agent,physobj,physobj),action). actions([placeOn/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2849). % event TakeOffOf(agent,physobj,physobj) % From E: % % event(takeOffOf(agent,physobj,physobj)). events([takeOffOf/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2849). mpred_prop(takeOffOf(agent,physobj,physobj),action). actions([takeOffOf/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2851). % [physobj1,physobj2,time] % HoldsAt(On(physobj1,physobj2),time) -> % physobj1!=physobj2. % From E: % % '->'( % holds_at(on(Physobj1,Physobj2),Time), % Physobj1\=Physobj2). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2851). on(Physobj1, Physobj2) -> Physobj1\=Physobj2. % [physobj1,physobj2,time] % HoldsAt(On(physobj1,physobj2),time) -> % !HoldsAt(On(physobj2,physobj1),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2856). % From E: % % '->'( % holds_at(on(Physobj1,Physobj2),Time), % holds_at(not(on(Physobj2,Physobj1)),Time)). % [Time]. not on(Physobj2, Physobj1)if on(Physobj1, Physobj2). /* l_int(holds(not(on(Physobj2,Physobj1)),Time_At), [holds(on(Physobj1,Physobj2),Time_At)]). */ % "% =================================". % [agent,physobj1,physobj2,time] % Initiates(PlaceOn(agent,physobj1,physobj2), % On(physobj1,physobj2),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2860). % From E: % % initiates_at( % placeOn(Agent,Physobj1,Physobj2), % on(Physobj1,Physobj2), % Time). % [Time]. placeOn(Agent, Physobj1, Physobj2)initiates on(Physobj1, Physobj2). /* initiated(happens(placeOn(Agent,Physobj1,Physobj2), Time_From, Time_Until), on(Physobj1,Physobj2), []). */ % "% =================================". % [agent,physobj1,physobj2,time] % Terminates(PlaceOn(agent,physobj1,physobj2), % Holding(agent,physobj1),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2864). % From E: % % terminates_at( % placeOn(Agent,Physobj1,Physobj2), % holding(Agent,Physobj1), % Time). % [Time]. placeOn(Agent, Physobj1, Physobj2)terminates holding(Agent, Physobj1). /* terminated(happens(placeOn(Agent,Physobj1,Physobj2), Time_From, Time_Until), holding(Agent,Physobj1), []). */ % "% =================================". % [agent,physobj1,physobj2,time] % Happens(PlaceOn(agent,physobj1,physobj2),time) -> % HoldsAt(Holding(agent,physobj1),time) & :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2868). % {location}% % HoldsAt(At(agent,location),time) & % HoldsAt(At(physobj2,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2870). % From E: % % exists( % [Location], % '->'( % happens_at(placeOn(Agent,Physobj1,Physobj2),Time), % (holds_at(holding(Agent,Physobj1),Time) , % holds_at(at_loc(Agent,Location),Time) , % holds_at(at_loc(Physobj2,Location),Time)))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2870). exists([Location], if((holding(Agent, Physobj1), at_loc(Agent, Location), at_loc(Physobj2, Location)), placeOn(Agent, Physobj1, Physobj2))). % [agent,physobj1,physobj2,time] % Terminates(TakeOffOf(agent,physobj1,physobj2), % On(physobj1,physobj2),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2875). % From E: % % terminates_at( % takeOffOf(Agent,Physobj1,Physobj2), % on(Physobj1,Physobj2), % Time). % [Time]. takeOffOf(Agent, Physobj1, Physobj2)terminates on(Physobj1, Physobj2). /* terminated(happens(takeOffOf(Agent,Physobj1,Physobj2), Time_From, Time_Until), on(Physobj1,Physobj2), []). */ % "% =================================". % [agent,physobj1,physobj2,time] % Initiates(TakeOffOf(agent,physobj1,physobj2), % Holding(agent,physobj1),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2879). % From E: % % initiates_at( % takeOffOf(Agent,Physobj1,Physobj2), % holding(Agent,Physobj1), % Time). % [Time]. takeOffOf(Agent, Physobj1, Physobj2)initiates holding(Agent, Physobj1). /* initiated(happens(takeOffOf(Agent,Physobj1,Physobj2), Time_From, Time_Until), holding(Agent,Physobj1), []). */ % "% =================================". % [agent,physobj1,physobj2,location,time] % Releases(TakeOffOf(agent,physobj1,physobj2), % At(physobj1,location), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2883). % From E: % % releases_at( % takeOffOf(Agent,Physobj1,Physobj2), % at_loc(Physobj1,Location), % Time). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2883). releases(takeOffOf(Agent,Physobj1,Physobj2), at_loc(Physobj1,Location)). % [agent,physobj1,physobj2,time] % Happens(TakeOffOf(agent,physobj1,physobj2),time) -> % HoldsAt(On(physobj1,physobj2),time) & :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2888). % {location}% % HoldsAt(At(agent,location),time) & % HoldsAt(At(physobj1,location),time) & % HoldsAt(At(physobj2,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2890). % From E: % % exists( % [Location], % '->'( % happens_at(takeOffOf(Agent,Physobj1,Physobj2),Time), % (holds_at(on(Physobj1,Physobj2),Time) , % holds_at(at_loc(Agent,Location),Time) , % holds_at(at_loc(Physobj1,Location),Time) , % holds_at(at_loc(Physobj2,Location),Time)))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2890). exists([Location], if((on(Physobj1, Physobj2), at_loc(Agent, Location), at_loc(Physobj1, Location), at_loc(Physobj2, Location)), takeOffOf(Agent, Physobj1, Physobj2))). % [agent,physobj1,physobj2,location,time] % Releases(PlaceOn(agent,physobj1,physobj2), % At(physobj1,location), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2896). % From E: % % releases_at( % placeOn(Agent,Physobj1,Physobj2), % at_loc(Physobj1,Location), % Time). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2896). releases(placeOn(Agent,Physobj1,Physobj2), at_loc(Physobj1,Location)). % [physobj1,physobj2,location,time] % HoldsAt(On(physobj1,physobj2),time) & % HoldsAt(At(physobj2,location),time) -> % HoldsAt(At(physobj1,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2901). % From E: % % '->'( % (holds_at(on(Physobj1,Physobj2),Time) , % holds_at(at_loc(Physobj2,Location),Time)), % holds_at(at_loc(Physobj1,Location),Time)). % [Time]. at_loc(Physobj1, Location)if on(Physobj1, Physobj2), at_loc(Physobj2, Location). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2901). /* l_int(holds(at_loc(Physobj1,Location),Time_At), [ holds(on(Physobj1,Physobj2),Time_At), holds(at_loc(Physobj2,Location),Time_At) ]). */ % "% =================================". % fluent At(object,location) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2904). % From E: % % fluent(at_loc(object,location)). mpred_prop(at_loc(object,location),fluent). fluents([at_loc/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2907). % [object,time] % {location} % HoldsAt(At(object,location),time). % From E: % % exists( % [Location], % holds_at(at_loc(Object,Location),Time)). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2907). exists([Location], at_loc(Object,Location)). % [object,location1,location2,time] % HoldsAt(At(object,location1),time) & % HoldsAt(At(object,location2),time) -> % location1=location2. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2911). % 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/test/ec_planner/ectest/ec_reader_test_ecnet.e',2911). /* d_pre([ not(equals(Location1,Location2)), holds(at_loc(Object,Location1),Time_At), holds(at_loc(Object,Location2),Time_At) ]). */ % "% =================================". % function Side1(portal): location :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2914). % From E: % % function(side1(portal),location). function(side1(portal),location). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2916). % function Side2(portal): location % From E: % % function(side2(portal),location). function(side2(portal),location). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2918). % fluent NearPortal(object,portal) % From E: % % fluent(nearPortal(object,portal)). mpred_prop(nearPortal(object,portal),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2918). fluents([nearPortal/2]). % noninertial NearPortal % From E: % % :-call_pel_directive(noninertial(nearPortal)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2918). :- call_pel_directive(noninertial(nearPortal)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2921). % [object,portal,time] % HoldsAt(NearPortal(object,portal),time) <-> % {location}% % (Side1(portal)=location| % Side2(portal)=location) & % HoldsAt(At(object,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2923). % From E: % % exists( % [Location], % <->( % holds_at(nearPortal(Object,Portal),Time), % ((side1(Portal)=Location ; % side2(Portal)=Location) , % holds_at(at_loc(Object,Location),Time)))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2923). exists([Location], (nearPortal(Object, Portal)<->false((not(side1(Portal, Location)), not(side2(Portal, Location)))), at_loc(Object, Location))). % event WalkThroughDoor12(agent,door) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2927). % From E: % % event(walkThroughDoor12(agent,door)). events([walkThroughDoor12/2]). mpred_prop(walkThroughDoor12(agent,door),action). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2927). actions([walkThroughDoor12/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2929). % event WalkThroughDoor21(agent,door) % From E: % % event(walkThroughDoor21(agent,door)). events([walkThroughDoor21/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2929). mpred_prop(walkThroughDoor21(agent,door),action). actions([walkThroughDoor21/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2931). % [agent,door,time] % Happens(WalkThroughDoor12(agent,door),time) -> % HoldsAt(Standing(agent),time) & % HoldsAt(At(agent,Side1(door)),time). % From E: % % '->'( % happens_at(walkThroughDoor12(Agent,Door),Time), % (holds_at(standing(Agent),Time) , % holds_at(at_loc(Agent,side1(Door)),Time))). % [Time]. if walkThroughDoor12(Agent, Door)then standing(Agent), at_loc(Agent, side1(Door)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2931). /* reactive_rule([ happens(walkThroughDoor12(Agent,Door), Time_From, Time_Until) ], [ holds(standing(Agent),Time_At), holds(at_loc(Agent,side1(Door)), Time_At) ]). */ % "% =================================". % [agent,door,time] % Happens(WalkThroughDoor21(agent,door),time) -> % HoldsAt(Standing(agent),time) & % HoldsAt(At(agent,Side2(door)),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2937). % From E: % % '->'( % happens_at(walkThroughDoor21(Agent,Door),Time), % (holds_at(standing(Agent),Time) , % holds_at(at_loc(Agent,side2(Door)),Time))). % [Time]. if walkThroughDoor21(Agent, Door)then standing(Agent), at_loc(Agent, side2(Door)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2937). /* reactive_rule([ happens(walkThroughDoor21(Agent,Door), Time_From, Time_Until) ], [ holds(standing(Agent),Time_At), holds(at_loc(Agent,side2(Door)), Time_At) ]). */ % "% =================================". % [agent,door,location,time] % Side2(door)=location -> % Initiates(WalkThroughDoor12(agent,door),At(agent,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2942). % From E: % % '->'( % side2(Door)=Location, % initiates_at( % walkThroughDoor12(Agent,Door), % at_loc(Agent,Location), % Time)). % [Time]. walkThroughDoor12(Agent, Door)initiates at_loc(Agent, Location)if side2(Door, Location). /* initiated(happens(walkThroughDoor12(Agent,Door), Time_From, Time_Until), at_loc(Agent,Location), [side2(Door,Location)]). */ % "% =================================". % [agent,door,location,time] % Side1(door)=location -> % Initiates(WalkThroughDoor21(agent,door),At(agent,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2946). % From E: % % '->'( % side1(Door)=Location, % initiates_at( % walkThroughDoor21(Agent,Door), % at_loc(Agent,Location), % Time)). % [Time]. walkThroughDoor21(Agent, Door)initiates at_loc(Agent, Location)if side1(Door, Location). /* initiated(happens(walkThroughDoor21(Agent,Door), Time_From, Time_Until), at_loc(Agent,Location), [side1(Door,Location)]). */ % "% =================================". % [agent,door,location,time] % Side1(door)=location -> % Terminates(WalkThroughDoor12(agent,door),At(agent,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2950). % From E: % % '->'( % side1(Door)=Location, % terminates_at( % walkThroughDoor12(Agent,Door), % at_loc(Agent,Location), % Time)). % [Time]. walkThroughDoor12(Agent, Door)terminates at_loc(Agent, Location)if side1(Door, Location). /* terminated(happens(walkThroughDoor12(Agent,Door), Time_From, Time_Until), at_loc(Agent,Location), [side1(Door,Location)]). */ % "% =================================". % [agent,door,location,time] % Side2(door)=location -> % Terminates(WalkThroughDoor21(agent,door),At(agent,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2954). % From E: % % '->'( % side2(Door)=Location, % terminates_at( % walkThroughDoor21(Agent,Door), % at_loc(Agent,Location), % Time)). % [Time]. walkThroughDoor21(Agent, Door)terminates at_loc(Agent, Location)if side2(Door, Location). /* terminated(happens(walkThroughDoor21(Agent,Door), Time_From, Time_Until), at_loc(Agent,Location), [side2(Door,Location)]). */ % "% =================================". % fluent Hungry(agent) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2956). % From E: % % fluent(hungry(agent)). mpred_prop(hungry(agent),fluent). fluents([hungry/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2959). % fluent Satiated(agent) % From E: % % fluent(satiated(agent)). mpred_prop(satiated(agent),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2959). fluents([satiated/1]). % noninertial Satiated % From E: % % :-call_pel_directive(noninertial(satiated)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2959). :- call_pel_directive(noninertial(satiated)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2962). % [agent,time] % HoldsAt(Hungry(agent),time) <-> !HoldsAt(Satiated(agent),time). % From E: % % <->( % holds_at(hungry(Agent),Time), % holds_at(not(satiated(Agent)),Time)). % [Time]. if hungry(Agent)then not satiated(Agent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2962). /* reactive_rule([holds(hungry(Agent),Time_At)], [not(satiated(Agent))]). */ % "% =================================". hungry(Agent)if not satiated(Agent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2962). /* l_int(holds(hungry(Agent),Time_At3), [not(satiated(Agent))]). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2964). % event Eat(agent,food) % From E: % % event(eat(agent,food)). events([eat/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2964). mpred_prop(eat(agent,food),action). actions([eat/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2966). % [agent,food,time] % Happens(Eat(agent,food),time) -> % {location}% % HoldsAt(At(agent,location),time) & % HoldsAt(At(food,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2968). % From E: % % exists( % [Location], % '->'( % happens_at(eat(Agent,Food),Time), % (holds_at(at_loc(Agent,Location),Time) , % holds_at(at_loc(Food,Location),Time)))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2968). exists([Location], if((at_loc(Agent, Location), at_loc(Food, Location)), eat(Agent, Food))). % [agent,food,time] % Terminates(Eat(agent,food),Hungry(agent),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2973). % From E: % % terminates_at( % eat(Agent,Food), % hungry(Agent), % Time). % [Time]. eat(Agent, Food)terminates hungry(Agent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2973). /* terminated(happens(eat(Agent,Food), Time_From, Time_Until), hungry(Agent), []). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2975). % sort restaurant: script % From E: % % subsort(restaurant,script). subsort(restaurant,script). % sort waiter: agent :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2975). % From E: % % subsort(waiter,agent). subsort(waiter,agent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2977). % sort cook: agent % From E: % % subsort(cook,agent). subsort(cook,agent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2979). % function BillOf(restaurant): bill % From E: % % function(billOf(restaurant),bill). function(billOf(restaurant),bill). % function CookOf(restaurant): cook :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2979). % From E: % % function(cookOf(restaurant),cook). function(cookOf(restaurant),cook). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2981). % function TableOf(restaurant): table % From E: % % function(tableOf(restaurant),table). function(tableOf(restaurant),table). % function WaiterOf(restaurant): waiter :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2981). % From E: % % function(waiterOf(restaurant),waiter). function(waiterOf(restaurant),waiter). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2983). % function KitchenDoorOf(restaurant): door % From E: % % function(kitchenDoorOf(restaurant),door). function(kitchenDoorOf(restaurant),door). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2985). % fluent BeWaiter0(waiter) % From E: % % fluent(beWaiter0(waiter)). mpred_prop(beWaiter0(waiter),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2985). fluents([beWaiter0/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2987). % fluent BeWaiter1(waiter) % From E: % % fluent(beWaiter1(waiter)). mpred_prop(beWaiter1(waiter),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2987). fluents([beWaiter1/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2989). % fluent BeWaiter2(waiter) % From E: % % fluent(beWaiter2(waiter)). mpred_prop(beWaiter2(waiter),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2989). fluents([beWaiter2/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2991). % fluent BeWaiter3(waiter) % From E: % % fluent(beWaiter3(waiter)). mpred_prop(beWaiter3(waiter),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2991). fluents([beWaiter3/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2993). % fluent BeWaiter4(waiter) % From E: % % fluent(beWaiter4(waiter)). mpred_prop(beWaiter4(waiter),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2993). fluents([beWaiter4/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2995). % fluent BeWaiter5(waiter) % From E: % % fluent(beWaiter5(waiter)). mpred_prop(beWaiter5(waiter),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2995). fluents([beWaiter5/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2997). % fluent BeWaiter6(waiter) % From E: % % fluent(beWaiter6(waiter)). mpred_prop(beWaiter6(waiter),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2997). fluents([beWaiter6/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2999). % fluent BeWaiter7(waiter) % From E: % % fluent(beWaiter7(waiter)). mpred_prop(beWaiter7(waiter),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',2999). fluents([beWaiter7/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3001). % fluent BeWaiter8(waiter) % From E: % % fluent(beWaiter8(waiter)). mpred_prop(beWaiter8(waiter),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3001). fluents([beWaiter8/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3003). % fluent BeWaiter9(waiter) % From E: % % fluent(beWaiter9(waiter)). mpred_prop(beWaiter9(waiter),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3003). fluents([beWaiter9/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3005). % xor BeWaiter0, BeWaiter1, BeWaiter2, BeWaiter3, BeWaiter4, BeWaiter5, BeWaiter6, BeWaiter7, BeWaiter8, BeWaiter9 % From E: % % xor([beWaiter0,beWaiter1,beWaiter2,beWaiter3,beWaiter4,beWaiter5,beWaiter6,beWaiter7,beWaiter8,beWaiter9]). xor([ beWaiter0, beWaiter1, beWaiter2, beWaiter3, beWaiter4, beWaiter5, beWaiter6, beWaiter7, beWaiter8, beWaiter9 ]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3007). % [waiter,agent,time] % HoldsAt(BeWaiter0(waiter),time) -> % Terminates(Greet(waiter,agent), % BeWaiter0(waiter), % time). % From E: % % '->'( % holds_at(beWaiter0(Waiter),Time), % terminates_at( % greet(Waiter,Agent), % beWaiter0(Waiter), % Time)). % [Time]. greet(Waiter, Agent)terminates beWaiter0(Waiter)if beWaiter0(Waiter). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3007). /* terminated(happens(greet(Waiter,Agent), Time_From, Time_Until), beWaiter0(Waiter), [holds(beWaiter0(Waiter),Time_From)]). */ % "% =================================". % [waiter,agent,time] % HoldsAt(BeWaiter0(waiter),time) -> % Initiates(Greet(waiter,agent), % BeWaiter1(waiter), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3014). % From E: % % '->'( % holds_at(beWaiter0(Waiter),Time), % initiates_at( % greet(Waiter,Agent), % beWaiter1(Waiter), % Time)). % [Time]. greet(Waiter, Agent)initiates beWaiter1(Waiter)if beWaiter0(Waiter). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3014). /* initiated(happens(greet(Waiter,Agent), Time_From, Time_Until), beWaiter1(Waiter), [holds(beWaiter0(Waiter),Time_From)]). */ % "% =================================". % [waiter,agent,food,time] % HoldsAt(BeWaiter1(waiter),time) -> % Terminates(Order(agent,waiter,food), % BeWaiter1(waiter), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3020). % From E: % % '->'( % holds_at(beWaiter1(Waiter),Time), % terminates_at( % order(Agent,Waiter,Food), % beWaiter1(Waiter), % Time)). % [Time]. order(Agent, Waiter, Food)terminates beWaiter1(Waiter)if beWaiter1(Waiter). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3020). /* terminated(happens(order(Agent,Waiter,Food), Time_From, Time_Until), beWaiter1(Waiter), [holds(beWaiter1(Waiter),Time_From)]). */ % "% =================================". % [waiter,agent,food,time] % HoldsAt(BeWaiter1(waiter),time) -> % Initiates(Order(agent,waiter,food), % BeWaiter2(waiter), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3026). % From E: % % '->'( % holds_at(beWaiter1(Waiter),Time), % initiates_at( % order(Agent,Waiter,Food), % beWaiter2(Waiter), % Time)). % [Time]. order(Agent, Waiter, Food)initiates beWaiter2(Waiter)if beWaiter1(Waiter). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3026). /* initiated(happens(order(Agent,Waiter,Food), Time_From, Time_Until), beWaiter2(Waiter), [holds(beWaiter1(Waiter),Time_From)]). */ % "% =================================". % [restaurant,waiter,time] % WaiterOf(restaurant)=waiter & % HoldsAt(BeWaiter2(waiter),time) -> % Happens(WalkThroughDoor12(waiter,KitchenDoorOf(restaurant)),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3032). % From E: % % '->'( % (waiterOf(Restaurant)=Waiter , % holds_at(beWaiter2(Waiter),Time)), % happens_at(walkThroughDoor12(Waiter,kitchenDoorOf(Restaurant)),Time)). % [Time]. walkThroughDoor12(Waiter, kitchenDoorOf(Restaurant))if waiterOf(Restaurant, Waiter), beWaiter2(Waiter). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3032). /* l_events(happens(walkThroughDoor12(Waiter, kitchenDoorOf(Restaurant)), Time_From, Time_From), [ waiterOf(Restaurant,Waiter), holds(beWaiter2(Waiter),Time_From) ]). */ % "% =================================". % [restaurant,waiter,door,time] % HoldsAt(BeWaiter2(waiter),time) & % WaiterOf(restaurant)=waiter & % KitchenDoorOf(restaurant)=door -> % Terminates(WalkThroughDoor12(waiter,door), % BeWaiter2(waiter), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3037). % From E: % % '->'( % (holds_at(beWaiter2(Waiter),Time) , % waiterOf(Restaurant)=Waiter , % kitchenDoorOf(Restaurant)=Door), % terminates_at( % walkThroughDoor12(Waiter,Door), % beWaiter2(Waiter), % Time)). % [Time]. walkThroughDoor12(Waiter, Door)terminates beWaiter2(Waiter)if beWaiter2(Waiter), waiterOf(Restaurant, Waiter), kitchenDoorOf(Restaurant, Door). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3037). /* terminated(happens(walkThroughDoor12(Waiter,Door), Time_From, Time_Until), beWaiter2(Waiter), [ holds(beWaiter2(Waiter),Time_From), waiterOf(Restaurant,Waiter), kitchenDoorOf(Restaurant,Door) ]). */ % "% =================================". % [restaurant,waiter,door,time] % HoldsAt(BeWaiter2(waiter),time) & % WaiterOf(restaurant)=waiter & % KitchenDoorOf(restaurant)=door -> % Initiates(WalkThroughDoor12(waiter,door), % BeWaiter3(waiter), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3045). % From E: % % '->'( % (holds_at(beWaiter2(Waiter),Time) , % waiterOf(Restaurant)=Waiter , % kitchenDoorOf(Restaurant)=Door), % initiates_at( % walkThroughDoor12(Waiter,Door), % beWaiter3(Waiter), % Time)). % [Time]. walkThroughDoor12(Waiter, Door)initiates beWaiter3(Waiter)if beWaiter2(Waiter), waiterOf(Restaurant, Waiter), kitchenDoorOf(Restaurant, Door). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3045). /* initiated(happens(walkThroughDoor12(Waiter,Door), Time_From, Time_Until), beWaiter3(Waiter), [ holds(beWaiter2(Waiter),Time_From), waiterOf(Restaurant,Waiter), kitchenDoorOf(Restaurant,Door) ]). */ % "% =================================". % [restaurant,food,time] % HoldsAt(BeWaiter3(WaiterOf(restaurant)),time) & % ({agent} HoldsAt(KnowOrder(WaiterOf(restaurant),agent,food),time)) -> % Happens(Order(WaiterOf(restaurant),CookOf(restaurant),food),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3053). % From E: % % '->'( % (holds_at(beWaiter3(waiterOf(Restaurant)),Time) , % exists( % [Agent], % holds_at(knowOrder(waiterOf(Restaurant),Agent,Food),Time))), % happens_at(order(waiterOf(Restaurant),cookOf(Restaurant),Food),Time)). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3053). beWaiter3(waiterOf(Restaurant)), exists([Agent], knowOrder(waiterOf(Restaurant), Agent, Food)) -> order(waiterOf(Restaurant), cookOf(Restaurant), Food). % [restaurant,waiter,cook,food,time] % WaiterOf(restaurant)=waiter & % CookOf(restaurant)=cook & % HoldsAt(BeWaiter3(waiter),time) -> % Terminates(Order(waiter,cook,food), % BeWaiter3(waiter), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3058). % From E: % % '->'( % (waiterOf(Restaurant)=Waiter , % cookOf(Restaurant)=Cook , % holds_at(beWaiter3(Waiter),Time)), % terminates_at( % order(Waiter,Cook,Food), % beWaiter3(Waiter), % Time)). % [Time]. order(Waiter, Cook, Food)terminates beWaiter3(Waiter)if waiterOf(Restaurant, Waiter), cookOf(Restaurant, Cook), beWaiter3(Waiter). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3058). /* terminated(happens(order(Waiter,Cook,Food), Time_From, Time_Until), beWaiter3(Waiter), [ waiterOf(Restaurant,Waiter), cookOf(Restaurant,Cook), holds(beWaiter3(Waiter),Time_From) ]). */ % "% =================================". % [restaurant,waiter,cook,food,time] % WaiterOf(restaurant)=waiter & % CookOf(restaurant)=cook & % HoldsAt(BeWaiter3(waiter),time) -> % Initiates(Order(waiter,cook,food), % BeWaiter4(waiter), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3066). % From E: % % '->'( % (waiterOf(Restaurant)=Waiter , % cookOf(Restaurant)=Cook , % holds_at(beWaiter3(Waiter),Time)), % initiates_at( % order(Waiter,Cook,Food), % beWaiter4(Waiter), % Time)). % [Time]. order(Waiter, Cook, Food)initiates beWaiter4(Waiter)if waiterOf(Restaurant, Waiter), cookOf(Restaurant, Cook), beWaiter3(Waiter). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3066). /* initiated(happens(order(Waiter,Cook,Food), Time_From, Time_Until), beWaiter4(Waiter), [ waiterOf(Restaurant,Waiter), cookOf(Restaurant,Cook), holds(beWaiter3(Waiter),Time_From) ]). */ % "% =================================". % [waiter,food,time] % HoldsAt(BeWaiter4(waiter),time) & % ({agent} HoldsAt(KnowOrder(waiter,agent,food),time)) & % HoldsAt(FoodPrepared(food),time) -> % Happens(PickUp(waiter,food),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3074). % From E: % % '->'( % (holds_at(beWaiter4(Waiter),Time) , % exists( % [Agent], % holds_at(knowOrder(Waiter,Agent,Food),Time)) , % holds_at(foodPrepared(Food),Time)), % happens_at(pickUp(Waiter,Food),Time)). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3074). beWaiter4(Waiter), exists([Agent], knowOrder(Waiter, Agent, Food)), foodPrepared(Food) -> pickUp(Waiter, Food). % [waiter,food,time] % HoldsAt(BeWaiter4(waiter),time) & % ({agent} HoldsAt(KnowOrder(waiter,agent,food),time)) -> % Terminates(PickUp(waiter,food), % BeWaiter4(waiter), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3080). % From E: % % '->'( % (holds_at(beWaiter4(Waiter),Time) , % exists( % [Agent], % holds_at(knowOrder(Waiter,Agent,Food),Time))), % terminates_at( % pickUp(Waiter,Food), % beWaiter4(Waiter), % Time)). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3080). beWaiter4(Waiter), exists([Agent], knowOrder(Waiter, Agent, Food)) -> terminates(pickUp(Waiter, Food), beWaiter4(Waiter)). % [waiter,food,time] % HoldsAt(BeWaiter4(waiter),time) & % ({agent} HoldsAt(KnowOrder(waiter,agent,food),time)) -> % Initiates(PickUp(waiter,food), % BeWaiter5(waiter), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3087). % From E: % % '->'( % (holds_at(beWaiter4(Waiter),Time) , % exists( % [Agent], % holds_at(knowOrder(Waiter,Agent,Food),Time))), % initiates_at( % pickUp(Waiter,Food), % beWaiter5(Waiter), % Time)). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3087). beWaiter4(Waiter), exists([Agent], knowOrder(Waiter, Agent, Food)) -> initiates(pickUp(Waiter, Food), beWaiter5(Waiter)). % [restaurant,waiter,time] % WaiterOf(restaurant)=waiter & % HoldsAt(BeWaiter5(waiter),time) -> % Happens(WalkThroughDoor21(waiter,KitchenDoorOf(restaurant)),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3094). % From E: % % '->'( % (waiterOf(Restaurant)=Waiter , % holds_at(beWaiter5(Waiter),Time)), % happens_at(walkThroughDoor21(Waiter,kitchenDoorOf(Restaurant)),Time)). % [Time]. walkThroughDoor21(Waiter, kitchenDoorOf(Restaurant))if waiterOf(Restaurant, Waiter), beWaiter5(Waiter). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3094). /* l_events(happens(walkThroughDoor21(Waiter, kitchenDoorOf(Restaurant)), Time_From, Time_From), [ waiterOf(Restaurant,Waiter), holds(beWaiter5(Waiter),Time_From) ]). */ % "% =================================". % [restaurant,waiter,door,time] % HoldsAt(BeWaiter5(waiter),time) & % WaiterOf(restaurant)=waiter & % KitchenDoorOf(restaurant)=door -> % Terminates(WalkThroughDoor21(waiter,door), % BeWaiter5(waiter), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3099). % From E: % % '->'( % (holds_at(beWaiter5(Waiter),Time) , % waiterOf(Restaurant)=Waiter , % kitchenDoorOf(Restaurant)=Door), % terminates_at( % walkThroughDoor21(Waiter,Door), % beWaiter5(Waiter), % Time)). % [Time]. walkThroughDoor21(Waiter, Door)terminates beWaiter5(Waiter)if beWaiter5(Waiter), waiterOf(Restaurant, Waiter), kitchenDoorOf(Restaurant, Door). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3099). /* terminated(happens(walkThroughDoor21(Waiter,Door), Time_From, Time_Until), beWaiter5(Waiter), [ holds(beWaiter5(Waiter),Time_From), waiterOf(Restaurant,Waiter), kitchenDoorOf(Restaurant,Door) ]). */ % "% =================================". % [restaurant,waiter,door,time] % HoldsAt(BeWaiter5(waiter),time) & % WaiterOf(restaurant)=waiter & % KitchenDoorOf(restaurant)=door -> % Initiates(WalkThroughDoor21(waiter,door), % BeWaiter6(waiter), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3107). % From E: % % '->'( % (holds_at(beWaiter5(Waiter),Time) , % waiterOf(Restaurant)=Waiter , % kitchenDoorOf(Restaurant)=Door), % initiates_at( % walkThroughDoor21(Waiter,Door), % beWaiter6(Waiter), % Time)). % [Time]. walkThroughDoor21(Waiter, Door)initiates beWaiter6(Waiter)if beWaiter5(Waiter), waiterOf(Restaurant, Waiter), kitchenDoorOf(Restaurant, Door). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3107). /* initiated(happens(walkThroughDoor21(Waiter,Door), Time_From, Time_Until), beWaiter6(Waiter), [ holds(beWaiter5(Waiter),Time_From), waiterOf(Restaurant,Waiter), kitchenDoorOf(Restaurant,Door) ]). */ % "% =================================". % [restaurant,waiter,table,food,time] % WaiterOf(restaurant)=waiter & % TableOf(restaurant)=table & % HoldsAt(BeWaiter6(waiter),time) & % HoldsAt(Holding(waiter,food),time) -> % Happens(PlaceOn(waiter,food,table),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3115). % From E: % % '->'( % (waiterOf(Restaurant)=Waiter , % tableOf(Restaurant)=Table , % holds_at(beWaiter6(Waiter),Time) , % holds_at(holding(Waiter,Food),Time)), % happens_at(placeOn(Waiter,Food,Table),Time)). % [Time]. placeOn(Waiter, Food, Table)if waiterOf(Restaurant, Waiter), tableOf(Restaurant, Table), beWaiter6(Waiter), holding(Waiter, Food). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3115). /* l_events(happens(placeOn(Waiter,Food,Table), Time_From, Time_From), [ waiterOf(Restaurant,Waiter), tableOf(Restaurant,Table), holds(beWaiter6(Waiter),Time_From), holds(holding(Waiter,Food),Time_From) ]). */ % "% =================================". % [waiter,food,table,time] % HoldsAt(BeWaiter6(waiter),time) -> % Terminates(PlaceOn(waiter,food,table), % BeWaiter6(waiter), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3122). % From E: % % '->'( % holds_at(beWaiter6(Waiter),Time), % terminates_at( % placeOn(Waiter,Food,Table), % beWaiter6(Waiter), % Time)). % [Time]. placeOn(Waiter, Food, Table)terminates beWaiter6(Waiter)if beWaiter6(Waiter). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3122). /* terminated(happens(placeOn(Waiter,Food,Table), Time_From, Time_Until), beWaiter6(Waiter), [holds(beWaiter6(Waiter),Time_From)]). */ % "% =================================". % [waiter,food,table,time] % HoldsAt(BeWaiter6(waiter),time) -> % Initiates(PlaceOn(waiter,food,table), % BeWaiter7(waiter), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3128). % From E: % % '->'( % holds_at(beWaiter6(Waiter),Time), % initiates_at( % placeOn(Waiter,Food,Table), % beWaiter7(Waiter), % Time)). % [Time]. placeOn(Waiter, Food, Table)initiates beWaiter7(Waiter)if beWaiter6(Waiter). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3128). /* initiated(happens(placeOn(Waiter,Food,Table), Time_From, Time_Until), beWaiter7(Waiter), [holds(beWaiter6(Waiter),Time_From)]). */ % "% =================================". % [waiter,agent,bill,time] % HoldsAt(BeWaiter7(waiter),time) -> % Terminates(Request(agent,waiter,bill), % BeWaiter7(waiter), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3134). % From E: % % '->'( % holds_at(beWaiter7(Waiter),Time), % terminates_at( % request(Agent,Waiter,Bill), % beWaiter7(Waiter), % Time)). % [Time]. request(Agent, Waiter, Bill)terminates beWaiter7(Waiter)if beWaiter7(Waiter). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3134). /* terminated(happens(request(Agent,Waiter,Bill), Time_From, Time_Until), beWaiter7(Waiter), [holds(beWaiter7(Waiter),Time_From)]). */ % "% =================================". % [waiter,agent,bill,time] % HoldsAt(BeWaiter7(waiter),time) -> % Initiates(Request(agent,waiter,bill), % BeWaiter8(waiter), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3140). % From E: % % '->'( % holds_at(beWaiter7(Waiter),Time), % initiates_at( % request(Agent,Waiter,Bill), % beWaiter8(Waiter), % Time)). % [Time]. request(Agent, Waiter, Bill)initiates beWaiter8(Waiter)if beWaiter7(Waiter). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3140). /* initiated(happens(request(Agent,Waiter,Bill), Time_From, Time_Until), beWaiter8(Waiter), [holds(beWaiter7(Waiter),Time_From)]). */ % "% =================================". % [restaurant,waiter,bill,time] % WaiterOf(restaurant)=waiter & % BillOf(restaurant)=bill & % HoldsAt(BeWaiter8(waiter),time) -> % Happens(PickUp(waiter,bill),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3146). % From E: % % '->'( % (waiterOf(Restaurant)=Waiter , % billOf(Restaurant)=Bill , % holds_at(beWaiter8(Waiter),Time)), % happens_at(pickUp(Waiter,Bill),Time)). % [Time]. pickUp(Waiter, Bill)if waiterOf(Restaurant, Waiter), billOf(Restaurant, Bill), beWaiter8(Waiter). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3146). /* l_events(happens(pickUp(Waiter,Bill), Time_From, Time_From), [ waiterOf(Restaurant,Waiter), billOf(Restaurant,Bill), holds(beWaiter8(Waiter),Time_From) ]). */ % "% =================================". % [waiter,bill,time] % HoldsAt(BeWaiter8(waiter),time) -> % Terminates(PickUp(waiter,bill), % BeWaiter8(waiter), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3152). % From E: % % '->'( % holds_at(beWaiter8(Waiter),Time), % terminates_at( % pickUp(Waiter,Bill), % beWaiter8(Waiter), % Time)). % [Time]. pickUp(Waiter, Bill)terminates beWaiter8(Waiter)if beWaiter8(Waiter). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3152). /* terminated(happens(pickUp(Waiter,Bill), Time_From, Time_Until), beWaiter8(Waiter), [holds(beWaiter8(Waiter),Time_From)]). */ % "% =================================". % [waiter,bill,time] % HoldsAt(BeWaiter8(waiter),time) -> % Initiates(PickUp(waiter,bill), % BeWaiter9(waiter), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3158). % From E: % % '->'( % holds_at(beWaiter8(Waiter),Time), % initiates_at( % pickUp(Waiter,Bill), % beWaiter9(Waiter), % Time)). % [Time]. pickUp(Waiter, Bill)initiates beWaiter9(Waiter)if beWaiter8(Waiter). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3158). /* initiated(happens(pickUp(Waiter,Bill), Time_From, Time_Until), beWaiter9(Waiter), [holds(beWaiter8(Waiter),Time_From)]). */ % "% =================================". % [restaurant,waiter,bill,table,time] % WaiterOf(restaurant)=waiter & % BillOf(restaurant)=bill & % TableOf(restaurant)=table & % HoldsAt(BeWaiter9(waiter),time) -> % Happens(PlaceOn(waiter,bill,table),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3164). % From E: % % '->'( % (waiterOf(Restaurant)=Waiter , % billOf(Restaurant)=Bill , % tableOf(Restaurant)=Table , % holds_at(beWaiter9(Waiter),Time)), % happens_at(placeOn(Waiter,Bill,Table),Time)). % [Time]. placeOn(Waiter, Bill, Table)if waiterOf(Restaurant, Waiter), billOf(Restaurant, Bill), tableOf(Restaurant, Table), beWaiter9(Waiter). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3164). /* l_events(happens(placeOn(Waiter,Bill,Table), Time_From, Time_From), [ waiterOf(Restaurant,Waiter), billOf(Restaurant,Bill), tableOf(Restaurant,Table), holds(beWaiter9(Waiter),Time_From) ]). */ % "% =================================". % [waiter,bill,table,time] % HoldsAt(BeWaiter9(waiter),time) -> % Terminates(PlaceOn(waiter,bill,table), % BeWaiter9(waiter), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3171). % From E: % % '->'( % holds_at(beWaiter9(Waiter),Time), % terminates_at( % placeOn(Waiter,Bill,Table), % beWaiter9(Waiter), % Time)). % [Time]. placeOn(Waiter, Bill, Table)terminates beWaiter9(Waiter)if beWaiter9(Waiter). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3171). /* terminated(happens(placeOn(Waiter,Bill,Table), Time_From, Time_Until), beWaiter9(Waiter), [holds(beWaiter9(Waiter),Time_From)]). */ % "% =================================". % [waiter,bill,table,time] % HoldsAt(BeWaiter9(waiter),time) -> % Initiates(PlaceOn(waiter,bill,table), % BeWaiter0(waiter), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3177). % From E: % % '->'( % holds_at(beWaiter9(Waiter),Time), % initiates_at( % placeOn(Waiter,Bill,Table), % beWaiter0(Waiter), % Time)). % [Time]. placeOn(Waiter, Bill, Table)initiates beWaiter0(Waiter)if beWaiter9(Waiter). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3177). /* initiated(happens(placeOn(Waiter,Bill,Table), Time_From, Time_Until), beWaiter0(Waiter), [holds(beWaiter9(Waiter),Time_From)]). */ % "% =================================". % fluent BeCook0(cook) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3181). % From E: % % fluent(beCook0(cook)). mpred_prop(beCook0(cook),fluent). fluents([beCook0/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3184). % fluent BeCook1(cook) % From E: % % fluent(beCook1(cook)). mpred_prop(beCook1(cook),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3184). fluents([beCook1/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3186). % xor BeCook0, BeCook1 % From E: % % xor([beCook0,beCook1]). xor([beCook0,beCook1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3188). % [cook,agent,food,time] % HoldsAt(BeCook0(cook),time) -> % Terminates(Order(agent,cook,food), % BeCook0(cook), % time). % From E: % % '->'( % holds_at(beCook0(Cook),Time), % terminates_at( % order(Agent,Cook,Food), % beCook0(Cook), % Time)). % [Time]. order(Agent, Cook, Food)terminates beCook0(Cook)if beCook0(Cook). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3188). /* terminated(happens(order(Agent,Cook,Food), Time_From, Time_Until), beCook0(Cook), [holds(beCook0(Cook),Time_From)]). */ % "% =================================". % [cook,agent,food,time] % HoldsAt(BeCook0(cook),time) -> % Initiates(Order(agent,cook,food), % BeCook1(cook), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3195). % From E: % % '->'( % holds_at(beCook0(Cook),Time), % initiates_at( % order(Agent,Cook,Food), % beCook1(Cook), % Time)). % [Time]. order(Agent, Cook, Food)initiates beCook1(Cook)if beCook0(Cook). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3195). /* initiated(happens(order(Agent,Cook,Food), Time_From, Time_Until), beCook1(Cook), [holds(beCook0(Cook),Time_From)]). */ % "% =================================". % event FoodPrepare(agent,food) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3199). % From E: % % event(foodPrepare(agent,food)). events([foodPrepare/2]). mpred_prop(foodPrepare(agent,food),action). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3199). actions([foodPrepare/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3202). % fluent FoodPrepared(food) % From E: % % fluent(foodPrepared(food)). mpred_prop(foodPrepared(food),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3202). fluents([foodPrepared/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3204). % [agent,food,time] % Initiates(FoodPrepare(agent,food), % FoodPrepared(food), % time). % From E: % % initiates_at( % foodPrepare(Agent,Food), % foodPrepared(Food), % Time). % [Time]. foodPrepare(Agent, Food)initiates foodPrepared(Food). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3204). /* initiated(happens(foodPrepare(Agent,Food), Time_From, Time_Until), foodPrepared(Food), []). */ % "% =================================". % [agent,food,time] % Happens(FoodPrepare(agent,food),time) -> % {location}% % HoldsAt(At(agent,location),time) & % HoldsAt(At(food,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3210). % From E: % % exists( % [Location], % '->'( % happens_at(foodPrepare(Agent,Food),Time), % (holds_at(at_loc(Agent,Location),Time) , % holds_at(at_loc(Food,Location),Time)))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3210). exists([Location], if((at_loc(Agent, Location), at_loc(Food, Location)), foodPrepare(Agent, Food))). % [cook,agent,food,time] % HoldsAt(BeCook1(cook),time) & % HoldsAt(KnowOrder(cook,agent,food),time) -> % Happens(FoodPrepare(cook,food),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3216). % From E: % % '->'( % (holds_at(beCook1(Cook),Time) , % holds_at(knowOrder(Cook,Agent,Food),Time)), % happens_at(foodPrepare(Cook,Food),Time)). % [Time]. foodPrepare(Cook, Food)if beCook1(Cook), knowOrder(Cook, Agent, Food). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3216). /* l_events(happens(foodPrepare(Cook,Food), Time_From, Time_From), [ holds(beCook1(Cook),Time_From), holds(knowOrder(Cook,Agent,Food), Time_From) ]). */ % "% =================================". % [cook,food,time] % HoldsAt(BeCook1(cook),time) -> % Terminates(FoodPrepare(cook,food), % BeCook1(cook), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3221). % From E: % % '->'( % holds_at(beCook1(Cook),Time), % terminates_at( % foodPrepare(Cook,Food), % beCook1(Cook), % Time)). % [Time]. foodPrepare(Cook, Food)terminates beCook1(Cook)if beCook1(Cook). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3221). /* terminated(happens(foodPrepare(Cook,Food), Time_From, Time_Until), beCook1(Cook), [holds(beCook1(Cook),Time_From)]). */ % "% =================================". % [cook,food,time] % HoldsAt(BeCook1(cook),time) -> % Initiates(FoodPrepare(cook,food), % BeCook0(cook), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3227). % From E: % % '->'( % holds_at(beCook1(Cook),Time), % initiates_at( % foodPrepare(Cook,Food), % beCook0(Cook), % Time)). % [Time]. foodPrepare(Cook, Food)initiates beCook0(Cook)if beCook1(Cook). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3227). /* initiated(happens(foodPrepare(Cook,Food), Time_From, Time_Until), beCook0(Cook), [holds(beCook1(Cook),Time_From)]). */ % "% =================================". % event Pay(agent,agent) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3231). % From E: % % event(pay(agent,agent)). events([pay/2]). mpred_prop(pay(agent,agent),action). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3231). actions([pay/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3234). % event Tip(agent,agent) % From E: % % event(tip(agent,agent)). events([tip/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3234). mpred_prop(tip(agent,agent),action). actions([tip/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3236). % [agent,physobj,time] % Happens(LieOn(agent,physobj),time) -> % {room}% % HoldsAt(At(agent,room),time) & % HoldsAt(At(physobj,room),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3238). % From E: % % exists( % [Room], % '->'( % happens_at(lieOn(Agent,Physobj),Time), % (holds_at(at_loc(Agent,Room),Time) , % holds_at(at_loc(Physobj,Room),Time)))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3238). exists([Room], if((at_loc(Agent, Room), at_loc(Physobj, Room)), lieOn(Agent, Physobj))). % [agent,physobj,time] % Happens(SitOn(agent,physobj),time) -> % {room}% % HoldsAt(At(agent,room),time) & % HoldsAt(At(physobj,room),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3243). % From E: % % exists( % [Room], % '->'( % happens_at(sitOn(Agent,Physobj),Time), % (holds_at(at_loc(Agent,Room),Time) , % holds_at(at_loc(Physobj,Room),Time)))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3243). exists([Room], if((at_loc(Agent, Room), at_loc(Physobj, Room)), sitOn(Agent, Physobj))). % event LieOn(agent,physobj) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3247). % From E: % % event(lieOn(agent,physobj)). events([lieOn/2]). mpred_prop(lieOn(agent,physobj),action). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3247). actions([lieOn/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3250). % event SitOn(agent,physobj) % From E: % % event(sitOn(agent,physobj)). events([sitOn/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3250). mpred_prop(sitOn(agent,physobj),action). actions([sitOn/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3252). % event RiseFrom(agent,physobj) % From E: % % event(riseFrom(agent,physobj)). events([riseFrom/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3252). mpred_prop(riseFrom(agent,physobj),action). actions([riseFrom/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3254). % fluent LyingOn(agent,physobj) % From E: % % fluent(lyingOn(agent,physobj)). mpred_prop(lyingOn(agent,physobj),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3254). fluents([lyingOn/2]). % fluent SittingOn(agent,physobj) % From E: % % fluent(sittingOn(agent,physobj)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3254). mpred_prop(sittingOn(agent,physobj),fluent). fluents([sittingOn/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3256). % fluent Standing(agent) % From E: % % fluent(standing(agent)). mpred_prop(standing(agent),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3256). fluents([standing/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3258). % fluent Lying(agent) % From E: % % fluent(lying(agent)). mpred_prop(lying(agent),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3258). fluents([lying/1]). % fluent Sitting(agent) % From E: % % fluent(sitting(agent)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3258). mpred_prop(sitting(agent),fluent). fluents([sitting/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3260). % noninertial Lying % From E: % % :-call_pel_directive(noninertial(lying)). :- call_pel_directive(noninertial(lying)). % noninertial Sitting :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3260). % From E: % % :-call_pel_directive(noninertial(sitting)). :- call_pel_directive(noninertial(sitting)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3263). % xor Lying, Sitting, Standing % From E: % % xor([lying,sitting,standing]). xor([lying,sitting,standing]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3265). % [agent,physobj,time] % HoldsAt(LyingOn(agent,physobj),time) -> % HoldsAt(Lying(agent),time). % From E: % % '->'( % holds_at(lyingOn(Agent,Physobj),Time), % holds_at(lying(Agent),Time)). % [Time]. if lyingOn(Agent, Physobj)then lying(Agent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3265). /* reactive_rule([holds(lyingOn(Agent,Physobj),Time_At)], [lying(Agent)]). */ % "% =================================". % [agent,physobj,time] % HoldsAt(SittingOn(agent,physobj),time) -> % HoldsAt(Sitting(agent),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3270). % From E: % % '->'( % holds_at(sittingOn(Agent,Physobj),Time), % holds_at(sitting(Agent),Time)). % [Time]. if sittingOn(Agent, Physobj)then sitting(Agent). /* reactive_rule([ holds(sittingOn(Agent,Physobj), Time_At) ], [sitting(Agent)]). */ % "% =================================". % [agent,physobj1,physobj2,time] % HoldsAt(LyingOn(agent,physobj1),time) & % HoldsAt(LyingOn(agent,physobj2),time) -> % physobj1=physobj2. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3274). % From E: % % '->'( % (holds_at(lyingOn(Agent,Physobj1),Time) , % holds_at(lyingOn(Agent,Physobj2),Time)), % Physobj1=Physobj2). % [Time]. false not equals(Physobj1, Physobj2), lyingOn(Agent, Physobj1), lyingOn(Agent, Physobj2). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3274). /* d_pre([ not(equals(Physobj1,Physobj2)), holds(lyingOn(Agent,Physobj1),Time_At), holds(lyingOn(Agent,Physobj2),Time_At) ]). */ % "% =================================". % [agent,physobj1,physobj2,time] % HoldsAt(SittingOn(agent,physobj1),time) & % HoldsAt(SittingOn(agent,physobj2),time) -> % physobj1=physobj2. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3279). % From E: % % '->'( % (holds_at(sittingOn(Agent,Physobj1),Time) , % holds_at(sittingOn(Agent,Physobj2),Time)), % Physobj1=Physobj2). % [Time]. false not equals(Physobj1, Physobj2), sittingOn(Agent, Physobj1), sittingOn(Agent, Physobj2). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3279). /* d_pre([ not(equals(Physobj1,Physobj2)), holds(sittingOn(Agent,Physobj1),Time_At), holds(sittingOn(Agent,Physobj2),Time_At) ]). */ % "% =================================". % [agent,physobj,time] % HoldsAt(Standing(agent),time) -> % Initiates(LieOn(agent,physobj), % LyingOn(agent,physobj), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3284). % From E: % % '->'( % holds_at(standing(Agent),Time), % initiates_at( % lieOn(Agent,Physobj), % lyingOn(Agent,Physobj), % Time)). % [Time]. lieOn(Agent, Physobj)initiates lyingOn(Agent, Physobj)if standing(Agent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3284). /* initiated(happens(lieOn(Agent,Physobj), Time_From, Time_Until), lyingOn(Agent,Physobj), [holds(standing(Agent),Time_From)]). */ % "% =================================". % [agent,physobj,time] % Terminates(LieOn(agent,physobj), % Standing(agent), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3290). % From E: % % terminates_at( % lieOn(Agent,Physobj), % standing(Agent), % Time). % [Time]. lieOn(Agent, Physobj)terminates standing(Agent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3290). /* terminated(happens(lieOn(Agent,Physobj), Time_From, Time_Until), standing(Agent), []). */ % "% =================================". % [agent,physobj,time] % HoldsAt(Standing(agent),time) -> % Initiates(SitOn(agent,physobj), % SittingOn(agent,physobj), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3295). % From E: % % '->'( % holds_at(standing(Agent),Time), % initiates_at( % sitOn(Agent,Physobj), % sittingOn(Agent,Physobj), % Time)). % [Time]. sitOn(Agent, Physobj)initiates sittingOn(Agent, Physobj)if standing(Agent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3295). /* initiated(happens(sitOn(Agent,Physobj), Time_From, Time_Until), sittingOn(Agent,Physobj), [holds(standing(Agent),Time_From)]). */ % "% =================================". % [agent,physobj,time] % Terminates(SitOn(agent,physobj), % Standing(agent), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3301). % From E: % % terminates_at( % sitOn(Agent,Physobj), % standing(Agent), % Time). % [Time]. sitOn(Agent, Physobj)terminates standing(Agent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3301). /* terminated(happens(sitOn(Agent,Physobj), Time_From, Time_Until), standing(Agent), []). */ % "% =================================". % [agent,physobj,time] % (HoldsAt(SittingOn(agent,physobj),time) | % HoldsAt(LyingOn(agent,physobj),time)) -> % Initiates(RiseFrom(agent,physobj), % Standing(agent), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3306). % From E: % % '->'( % (holds_at(sittingOn(Agent,Physobj),Time) ; % holds_at(lyingOn(Agent,Physobj),Time)), % initiates_at( % riseFrom(Agent,Physobj), % standing(Agent), % Time)). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3306). false((not(sittingOn(Agent, Physobj)), not(lyingOn(Agent, Physobj)))) -> initiates(riseFrom(Agent, Physobj), standing(Agent)). % [agent,physobj,time] % HoldsAt(LyingOn(agent,physobj),time) -> % Terminates(RiseFrom(agent,physobj), % LyingOn(agent,physobj), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3313). % From E: % % '->'( % holds_at(lyingOn(Agent,Physobj),Time), % terminates_at( % riseFrom(Agent,Physobj), % lyingOn(Agent,Physobj), % Time)). % [Time]. riseFrom(Agent, Physobj)terminates lyingOn(Agent, Physobj)if lyingOn(Agent, Physobj). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3313). /* terminated(happens(riseFrom(Agent,Physobj), Time_From, Time_Until), lyingOn(Agent,Physobj), [holds(lyingOn(Agent,Physobj),Time_From)]). */ % "% =================================". % [agent,physobj,time] % HoldsAt(SittingOn(agent,physobj),time) -> % Terminates(RiseFrom(agent,physobj), % SittingOn(agent,physobj), % time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3319). % From E: % % '->'( % holds_at(sittingOn(Agent,Physobj),Time), % terminates_at( % riseFrom(Agent,Physobj), % sittingOn(Agent,Physobj), % Time)). % [Time]. riseFrom(Agent, Physobj)terminates sittingOn(Agent, Physobj)if sittingOn(Agent, Physobj). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3319). /* terminated(happens(riseFrom(Agent,Physobj), Time_From, Time_Until), sittingOn(Agent,Physobj), [ holds(sittingOn(Agent,Physobj), Time_From) ]). */ % "% =================================". % event Greet(agent,agent) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3323). % From E: % % event(greet(agent,agent)). events([greet/2]). mpred_prop(greet(agent,agent),action). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3323). actions([greet/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3326). % event SayGoodbye(agent,agent) % From E: % % event(sayGoodbye(agent,agent)). events([sayGoodbye/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3326). mpred_prop(sayGoodbye(agent,agent),action). actions([sayGoodbye/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3328). % [agent1,agent2,time] % Happens(Greet(agent1,agent2),time) -> % {location}% % HoldsAt(At(agent1,location),time) & % HoldsAt(At(agent2,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3330). % From E: % % exists( % [Location], % '->'( % happens_at(greet(Agent1,Agent2),Time), % (holds_at(at_loc(Agent1,Location),Time) , % holds_at(at_loc(Agent2,Location),Time)))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3330). exists([Location], if((at_loc(Agent1, Location), at_loc(Agent2, Location)), greet(Agent1, Agent2))). % [agent1,agent2,time] % Happens(SayGoodbye(agent1,agent2),time) -> % {location}% % HoldsAt(At(agent1,location),time) & % HoldsAt(At(agent2,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3335). % From E: % % exists( % [Location], % '->'( % happens_at(sayGoodbye(Agent1,Agent2),Time), % (holds_at(at_loc(Agent1,Location),Time) , % holds_at(at_loc(Agent2,Location),Time)))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3335). exists([Location], if((at_loc(Agent1, Location), at_loc(Agent2, Location)), sayGoodbye(Agent1, Agent2))). % event Order(agent,agent,physobj) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3339). % From E: % % event(order(agent,agent,physobj)). events([order/3]). mpred_prop(order(agent,agent,physobj),action). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3339). actions([order/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3342). % fluent KnowOrder(agent,agent,physobj) % From E: % % fluent(knowOrder(agent,agent,physobj)). mpred_prop(knowOrder(agent,agent,physobj),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3342). fluents([knowOrder/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3344). % [agent1,agent2,physobj,time] % Initiates(Order(agent1,agent2,physobj), % KnowOrder(agent2,agent1,physobj), % time). % From E: % % initiates_at( % order(Agent1,Agent2,Physobj), % knowOrder(Agent2,Agent1,Physobj), % Time). % [Time]. order(Agent1, Agent2, Physobj)initiates knowOrder(Agent2, Agent1, Physobj). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3344). /* initiated(happens(order(Agent1,Agent2,Physobj), Time_From, Time_Until), knowOrder(Agent2,Agent1,Physobj), []). */ % "% =================================". % [agent1,agent2,physobj,time] % Happens(Order(agent1,agent2,physobj),time) -> % {location}% % HoldsAt(At(agent1,location),time) & % HoldsAt(At(agent2,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3350). % From E: % % exists( % [Location], % '->'( % happens_at(order(Agent1,Agent2,Physobj),Time), % (holds_at(at_loc(Agent1,Location),Time) , % holds_at(at_loc(Agent2,Location),Time)))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3350). exists([Location], if((at_loc(Agent1, Location), at_loc(Agent2, Location)), order(Agent1, Agent2, Physobj))). % event Request(agent,agent,physobj) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3354). % From E: % % event(request(agent,agent,physobj)). events([request/3]). mpred_prop(request(agent,agent,physobj),action). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3354). actions([request/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3357). % fluent KnowRequest(agent,agent,physobj) % From E: % % fluent(knowRequest(agent,agent,physobj)). mpred_prop(knowRequest(agent,agent,physobj),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3357). fluents([knowRequest/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3359). % [agent1,agent2,physobj,time] % Initiates(Request(agent1,agent2,physobj), % KnowRequest(agent2,agent1,physobj), % time). % From E: % % initiates_at( % request(Agent1,Agent2,Physobj), % knowRequest(Agent2,Agent1,Physobj), % Time). % [Time]. request(Agent1, Agent2, Physobj)initiates knowRequest(Agent2, Agent1, Physobj). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3359). /* initiated(happens(request(Agent1,Agent2,Physobj), Time_From, Time_Until), knowRequest(Agent2,Agent1,Physobj), []). */ % "% =================================". % [agent1,agent2,physobj,time] % Happens(Request(agent1,agent2,physobj),time) -> % {location}% % HoldsAt(At(agent1,location),time) & % HoldsAt(At(agent2,location),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3365). % From E: % % exists( % [Location], % '->'( % happens_at(request(Agent1,Agent2,Physobj),Time), % (holds_at(at_loc(Agent1,Location),Time) , % holds_at(at_loc(Agent2,Location),Time)))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3365). exists([Location], if((at_loc(Agent1, Location), at_loc(Agent2, Location)), request(Agent1, Agent2, Physobj))). %; End of file. %; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %; FILE: ecnet/Diving.e %; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %; %; 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 %; %; scuba diving %; :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3391). % sort object % From E: % % sort(object). sort(object). % sort agent: object :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3391). % From E: % % subsort(agent,object). subsort(agent,object). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3393). % sort diver: agent % From E: % % subsort(diver,agent). subsort(diver,agent). % sort depth: integer :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3393). % From E: % % subsort(depth,integer). subsort(depth,integer). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3395). % sort boat: object % From E: % % subsort(boat,object). subsort(boat,object). %; reference line, anchor line, shotline, SMB line, ... % sort line: object :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3397). % From E: % % subsort(line,object). subsort(line,object). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3400). % sort equipment: object % From E: % % subsort(equipment,object). subsort(equipment,object). % sort weight: equipment :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3400). % From E: % % subsort(weight,equipment). subsort(weight,equipment). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3402). % sort fin: equipment % From E: % % subsort(fin,equipment). subsort(fin,equipment). % sort airtank: equipment :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3402). % From E: % % subsort(airtank,equipment). subsort(airtank,equipment). %; buoyancy compensator (BC) %; buoyancy control device (BCD) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3407). % sort computer: equipment % From E: % % subsort(computer,equipment). subsort(computer,equipment). % sort bc: equipment :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3407). % From E: % % subsort(bc,equipment). subsort(bc,equipment). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3410). % fluent AtDepth(object,depth) % From E: % % fluent(atDepth(object,depth)). mpred_prop(atDepth(object,depth),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3410). fluents([atDepth/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3412). % [object,depth1,depth2,time] % HoldsAt(AtDepth(object,depth1),time) & % HoldsAt(AtDepth(object,depth2),time) -> % depth1 = depth2. % From E: % % '->'( % (holds_at(atDepth(Object,Depth1),Time) , % holds_at(atDepth(Object,Depth2),Time)), % Depth1=Depth2). % [Time]. false not equals(Depth1, Depth2), atDepth(Object, Depth1), atDepth(Object, Depth2). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3412). /* d_pre([ not(equals(Depth1,Depth2)), holds(atDepth(Object,Depth1),Time_At), holds(atDepth(Object,Depth2),Time_At) ]). */ % "% =================================". % event Ascend(diver,depth) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3416). % From E: % % event(ascend(diver,depth)). events([ascend/2]). mpred_prop(ascend(diver,depth),action). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3416). actions([ascend/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3419). % event Descend(diver,depth) % From E: % % event(descend(diver,depth)). events([descend/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3419). mpred_prop(descend(diver,depth),action). actions([descend/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3421). % [diver,depth1,depth2,time] % HoldsAt(AtDepth(diver,depth1),time) & % Happens(Descend(diver,depth2),time) -> % depth2>depth1. % From E: % % '->'( % (holds_at(atDepth(Diver,Depth1),Time) , % happens_at(descend(Diver,Depth2),Time)), % Depth2>Depth1). % [Time]. false not comparison(Depth2, Depth1, >), atDepth(Diver, Depth1), descend(Diver, Depth2). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3421). /* d_pre([ not(comparison(Depth2,Depth1,>)), holds(atDepth(Diver,Depth1),Time_At), happens(descend(Diver,Depth2), Time_At, Time_Until) ]). */ % "% =================================". % [diver,depth1,depth2,time] % HoldsAt(AtDepth(diver,depth1),time) & % Happens(Ascend(diver,depth2),time) -> % depth2'( % (holds_at(atDepth(Diver,Depth1),Time) , % happens_at(ascend(Diver,Depth2),Time)), % Depth2 % Terminates(Descend(diver,depth2),AtDepth(diver,depth1),time). % From E: % % '->'( % holds_at(atDepth(Diver,Depth1),Time), % terminates_at( % descend(Diver,Depth2), % atDepth(Diver,Depth1), % Time)). % [Time]. descend(Diver, Depth2)terminates atDepth(Diver, Depth1)if atDepth(Diver, Depth1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3434). /* terminated(happens(descend(Diver,Depth2), Time_From, Time_Until), atDepth(Diver,Depth1), [holds(atDepth(Diver,Depth1),Time_From)]). */ % "% =================================". % [diver,depth,time] % Initiates(Ascend(diver,depth),AtDepth(diver,depth),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3439). % From E: % % initiates_at( % ascend(Diver,Depth), % atDepth(Diver,Depth), % Time). % [Time]. ascend(Diver, Depth)initiates atDepth(Diver, Depth). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3439). /* initiated(happens(ascend(Diver,Depth), Time_From, Time_Until), atDepth(Diver,Depth), []). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3441). % [diver,depth1,depth2,time] % HoldsAt(AtDepth(diver,depth1),time) -> % Terminates(Ascend(diver,depth2),AtDepth(diver,depth1),time). % From E: % % '->'( % holds_at(atDepth(Diver,Depth1),Time), % terminates_at( % ascend(Diver,Depth2), % atDepth(Diver,Depth1), % Time)). % [Time]. ascend(Diver, Depth2)terminates atDepth(Diver, Depth1)if atDepth(Diver, Depth1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3441). /* terminated(happens(ascend(Diver,Depth2), Time_From, Time_Until), atDepth(Diver,Depth1), [holds(atDepth(Diver,Depth1),Time_From)]). */ % "% =================================". % fluent Wearing(diver,equipment) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3444). % From E: % % fluent(wearing(diver,equipment)). mpred_prop(wearing(diver,equipment),fluent). fluents([wearing/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3447). % event PutOn(diver,equipment) % From E: % % event(putOn(diver,equipment)). events([putOn/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3447). mpred_prop(putOn(diver,equipment),action). actions([putOn/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3449). % event TakeOff(diver,equipment) % From E: % % event(takeOff(diver,equipment)). events([takeOff/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3449). mpred_prop(takeOff(diver,equipment),action). actions([takeOff/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3451). % event Lose(diver,equipment) % From E: % % event(lose(diver,equipment)). events([lose/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3451). mpred_prop(lose(diver,equipment),action). actions([lose/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3453). % [diver,equipment,depth,time] % Releases(PutOn(diver,equipment),AtDepth(equipment,depth),time). % From E: % % releases_at( % putOn(Diver,Equipment), % atDepth(Equipment,Depth), % Time). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3453). releases(putOn(Diver,Equipment), atDepth(Equipment,Depth)). % [diver,equipment,time] % Releases(PutOn(diver,equipment),UnderWater(equipment),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3457). % From E: % % releases_at( % putOn(Diver,Equipment), % underWater(Equipment), % Time). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3457). releases(putOn(Diver,Equipment), underWater(Equipment)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3459). % [diver,equipment,time] % Happens(PutOn(diver,equipment),time) -> % !{diver1} HoldsAt(Wearing(diver1,equipment),time). % From E: % % '->'( % happens_at(putOn(Diver,Equipment),Time), % not( % exists( % [Diver1], % holds_at(wearing(Diver1,Equipment),Time)))). % [Time]. not wearing(Diver1, Equipment)if putOn(Diver, Equipment). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3459). /* l_int(holds(not(wearing(Diver1,Equipment)),Time_At), [ happens(putOn(Diver,Equipment), Time_At, Time_At) ]). */ % "% =================================". % [diver,depth,equipment,time] % HoldsAt(Wearing(diver,equipment),time) -> % (HoldsAt(AtDepth(diver,depth),time) <-> % HoldsAt(AtDepth(equipment,depth),time)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3464). % From E: % % '->'( % holds_at(wearing(Diver,Equipment),Time), % <->( % holds_at(atDepth(Diver,Depth),Time), % holds_at(atDepth(Equipment,Depth),Time))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3464). wearing(Diver, Equipment) -> [ if(atDepth(Equipment, Depth), atDepth(Diver, Depth)), if(atDepth(Diver, Depth), atDepth(Equipment, Depth)) ]. % [diver,depth,object,time] % HoldsAt(Holding(diver,object),time) -> % (HoldsAt(AtDepth(diver,depth),time) <-> % HoldsAt(AtDepth(object,depth),time)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3469). % From E: % % '->'( % holds_at(holding(Diver,Object),Time), % <->( % holds_at(atDepth(Diver,Depth),Time), % holds_at(atDepth(Object,Depth),Time))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3469). holding(Diver, Object) -> [ if(atDepth(Object, Depth), atDepth(Diver, Depth)), if(atDepth(Diver, Depth), atDepth(Object, Depth)) ]. % [diver,equipment,time] % HoldsAt(Wearing(diver,equipment),time) -> % (HoldsAt(UnderWater(diver),time) <-> % HoldsAt(UnderWater(equipment),time)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3474). % From E: % % '->'( % holds_at(wearing(Diver,Equipment),Time), % <->( % holds_at(underWater(Diver),Time), % holds_at(underWater(Equipment),Time))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3474). wearing(Diver, Equipment) -> [ if(underWater(Equipment), underWater(Diver)), if(underWater(Diver), underWater(Equipment)) ]. % [diver,object,time] % HoldsAt(Holding(diver,object),time) -> % (HoldsAt(UnderWater(diver),time) <-> % HoldsAt(UnderWater(object),time)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3479). % From E: % % '->'( % holds_at(holding(Diver,Object),Time), % <->( % holds_at(underWater(Diver),Time), % holds_at(underWater(Object),Time))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3479). holding(Diver, Object) -> [ if(underWater(Object), underWater(Diver)), if(underWater(Diver), underWater(Object)) ]. % [diver,depth,equipment,time] % HoldsAt(AtDepth(diver,depth),time) & % HoldsAt(Wearing(diver,equipment),time) -> % Initiates(TakeOff(diver,equipment),AtDepth(equipment,depth),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3484). % From E: % % '->'( % (holds_at(atDepth(Diver,Depth),Time) , % holds_at(wearing(Diver,Equipment),Time)), % initiates_at( % takeOff(Diver,Equipment), % atDepth(Equipment,Depth), % Time)). % [Time]. takeOff(Diver, Equipment)initiates atDepth(Equipment, Depth)if atDepth(Diver, Depth), wearing(Diver, Equipment). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3484). /* initiated(happens(takeOff(Diver,Equipment), Time_From, Time_Until), atDepth(Equipment,Depth), [ holds(atDepth(Diver,Depth),Time_From), holds(wearing(Diver,Equipment),Time_From) ]). */ % "% =================================". % [diver,depth,equipment,time] % !HoldsAt(AtDepth(diver,depth),time) & % HoldsAt(Wearing(diver,equipment),time) -> % Terminates(TakeOff(diver,equipment),AtDepth(equipment,depth),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3489). % From E: % % '->'( % (holds_at(not(atDepth(Diver,Depth)),Time) , % holds_at(wearing(Diver,Equipment),Time)), % terminates_at( % takeOff(Diver,Equipment), % atDepth(Equipment,Depth), % Time)). % [Time]. takeOff(Diver, Equipment)terminates atDepth(Equipment, Depth)if not atDepth(Diver, Depth), wearing(Diver, Equipment). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3489). /* terminated(happens(takeOff(Diver,Equipment), Time_From, Time_Until), atDepth(Equipment,Depth), [ holds(not(atDepth(Diver,Depth)), Time_From), holds(wearing(Diver,Equipment), Time_From) ]). */ % "% =================================". % [diver,equipment,time] % HoldsAt(UnderWater(diver),time) -> % Initiates(TakeOff(diver,equipment),UnderWater(equipment),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3494). % From E: % % '->'( % holds_at(underWater(Diver),Time), % initiates_at( % takeOff(Diver,Equipment), % underWater(Equipment), % Time)). % [Time]. takeOff(Diver, Equipment)initiates underWater(Equipment)if underWater(Diver). /* initiated(happens(takeOff(Diver,Equipment), Time_From, Time_Until), underWater(Equipment), [holds(underWater(Diver),Time_From)]). */ % "% =================================". % [diver,equipment,time] % !HoldsAt(UnderWater(diver),time) -> % Terminates(TakeOff(diver,equipment),UnderWater(equipment),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3498). % From E: % % '->'( % holds_at(not(underWater(Diver)),Time), % terminates_at( % takeOff(Diver,Equipment), % underWater(Equipment), % Time)). % [Time]. takeOff(Diver, Equipment)terminates underWater(Equipment)if not underWater(Diver). /* terminated(happens(takeOff(Diver,Equipment), Time_From, Time_Until), underWater(Equipment), [holds(not(underWater(Diver)),Time_From)]). */ % "% =================================". % [diver,equipment,depth,time] % HoldsAt(AtDepth(diver,depth),time) & % HoldsAt(Wearing(diver,equipment),time) -> % Initiates(Lose(diver,equipment),AtDepth(equipment,depth),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3502). % From E: % % '->'( % (holds_at(atDepth(Diver,Depth),Time) , % holds_at(wearing(Diver,Equipment),Time)), % initiates_at( % lose(Diver,Equipment), % atDepth(Equipment,Depth), % Time)). % [Time]. lose(Diver, Equipment)initiates atDepth(Equipment, Depth)if atDepth(Diver, Depth), wearing(Diver, Equipment). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3502). /* initiated(happens(lose(Diver,Equipment), Time_From, Time_Until), atDepth(Equipment,Depth), [ holds(atDepth(Diver,Depth),Time_From), holds(wearing(Diver,Equipment),Time_From) ]). */ % "% =================================". % [diver,equipment,depth,time] % !HoldsAt(AtDepth(diver,depth),time) & % HoldsAt(Wearing(diver,equipment),time) -> % Terminates(Lose(diver,equipment),AtDepth(equipment,depth),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3507). % From E: % % '->'( % (holds_at(not(atDepth(Diver,Depth)),Time) , % holds_at(wearing(Diver,Equipment),Time)), % terminates_at( % lose(Diver,Equipment), % atDepth(Equipment,Depth), % Time)). % [Time]. lose(Diver, Equipment)terminates atDepth(Equipment, Depth)if not atDepth(Diver, Depth), wearing(Diver, Equipment). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3507). /* terminated(happens(lose(Diver,Equipment), Time_From, Time_Until), atDepth(Equipment,Depth), [ holds(not(atDepth(Diver,Depth)), Time_From), holds(wearing(Diver,Equipment), Time_From) ]). */ % "% =================================". % [diver,equipment,time] % HoldsAt(UnderWater(diver),time) -> % Initiates(Lose(diver,equipment),UnderWater(equipment),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3512). % From E: % % '->'( % holds_at(underWater(Diver),Time), % initiates_at( % lose(Diver,Equipment), % underWater(Equipment), % Time)). % [Time]. lose(Diver, Equipment)initiates underWater(Equipment)if underWater(Diver). /* initiated(happens(lose(Diver,Equipment), Time_From, Time_Until), underWater(Equipment), [holds(underWater(Diver),Time_From)]). */ % "% =================================". % [diver,equipment,time] % !HoldsAt(UnderWater(diver),time) -> % Terminates(Lose(diver,equipment),UnderWater(equipment),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3516). % From E: % % '->'( % holds_at(not(underWater(Diver)),Time), % terminates_at( % lose(Diver,Equipment), % underWater(Equipment), % Time)). % [Time]. lose(Diver, Equipment)terminates underWater(Equipment)if not underWater(Diver). /* terminated(happens(lose(Diver,Equipment), Time_From, Time_Until), underWater(Equipment), [holds(not(underWater(Diver)),Time_From)]). */ % "% =================================". % fluent Holding(diver,object) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3518). % From E: % % fluent(holding(diver,object)). mpred_prop(holding(diver,object),fluent). fluents([holding/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3521). % [diver1,diver2,time] % HoldsAt(Holding(diver1,diver2),time) -> % !HoldsAt(Holding(diver2,diver1),time). % From E: % % '->'( % holds_at(holding(Diver1,Diver2),Time), % holds_at(not(holding(Diver2,Diver1)),Time)). % [Time]. not holding(Diver2, Diver1)if holding(Diver1, Diver2). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3521). /* l_int(holds(not(holding(Diver2,Diver1)),Time_At), [holds(holding(Diver1,Diver2),Time_At)]). */ % "% =================================". % event Grab(diver,object) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3524). % From E: % % event(grab(diver,object)). events([grab/2]). mpred_prop(grab(diver,object),action). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3524). actions([grab/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3527). % event LetGoOf(diver,object) % From E: % % event(letGoOf(diver,object)). events([letGoOf/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3527). mpred_prop(letGoOf(diver,object),action). actions([letGoOf/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3529). % [diver,object,time] % Initiates(Grab(diver,object),Holding(diver,object),time). % From E: % % initiates_at( % grab(Diver,Object), % holding(Diver,Object), % Time). % [Time]. grab(Diver, Object)initiates holding(Diver, Object). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3529). /* initiated(happens(grab(Diver,Object), Time_From, Time_Until), holding(Diver,Object), []). */ % "% =================================". % [diver,object,time] % Terminates(LetGoOf(diver,object),Holding(diver,object),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3533). % From E: % % terminates_at( % letGoOf(Diver,Object), % holding(Diver,Object), % Time). % [Time]. letGoOf(Diver, Object)terminates holding(Diver, Object). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3533). /* terminated(happens(letGoOf(Diver,Object), Time_From, Time_Until), holding(Diver,Object), []). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3535). % [diver,object,depth,time] % Releases(Grab(diver,object),AtDepth(object,depth),time). % From E: % % releases_at( % grab(Diver,Object), % atDepth(Object,Depth), % Time). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3535). releases(grab(Diver,Object), atDepth(Object,Depth)). % [diver,object,time] % Releases(Grab(diver,object),UnderWater(object),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3539). % From E: % % releases_at( % grab(Diver,Object), % underWater(Object), % Time). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3539). releases(grab(Diver,Object),underWater(Object)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3541). % [diver,object,depth,time] % HoldsAt(AtDepth(diver,depth),time) & % HoldsAt(Holding(diver,object),time) -> % Initiates(LetGoOf(diver,object),AtDepth(object,depth),time). % From E: % % '->'( % (holds_at(atDepth(Diver,Depth),Time) , % holds_at(holding(Diver,Object),Time)), % initiates_at( % letGoOf(Diver,Object), % atDepth(Object,Depth), % Time)). % [Time]. letGoOf(Diver, Object)initiates atDepth(Object, Depth)if atDepth(Diver, Depth), holding(Diver, Object). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3541). /* initiated(happens(letGoOf(Diver,Object), Time_From, Time_Until), atDepth(Object,Depth), [ holds(atDepth(Diver,Depth),Time_From), holds(holding(Diver,Object),Time_From) ]). */ % "% =================================". % [diver,object,depth,time] % !HoldsAt(AtDepth(diver,depth),time) & % HoldsAt(Holding(diver,object),time) -> % Terminates(LetGoOf(diver,object),AtDepth(object,depth),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3547). % From E: % % '->'( % (holds_at(not(atDepth(Diver,Depth)),Time) , % holds_at(holding(Diver,Object),Time)), % terminates_at( % letGoOf(Diver,Object), % atDepth(Object,Depth), % Time)). % [Time]. letGoOf(Diver, Object)terminates atDepth(Object, Depth)if not atDepth(Diver, Depth), holding(Diver, Object). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3547). /* terminated(happens(letGoOf(Diver,Object), Time_From, Time_Until), atDepth(Object,Depth), [ holds(not(atDepth(Diver,Depth)), Time_From), holds(holding(Diver,Object),Time_From) ]). */ % "% =================================". % [diver,object,time] % HoldsAt(UnderWater(diver),time) -> % Initiates(LetGoOf(diver,object),UnderWater(object),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3552). % From E: % % '->'( % holds_at(underWater(Diver),Time), % initiates_at( % letGoOf(Diver,Object), % underWater(Object), % Time)). % [Time]. letGoOf(Diver, Object)initiates underWater(Object)if underWater(Diver). /* initiated(happens(letGoOf(Diver,Object), Time_From, Time_Until), underWater(Object), [holds(underWater(Diver),Time_From)]). */ % "% =================================". % [diver,object,time] % !HoldsAt(UnderWater(diver),time) -> % Terminates(LetGoOf(diver,object),UnderWater(object),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3556). % From E: % % '->'( % holds_at(not(underWater(Diver)),Time), % terminates_at( % letGoOf(Diver,Object), % underWater(Object), % Time)). % [Time]. letGoOf(Diver, Object)terminates underWater(Object)if not underWater(Diver). /* terminated(happens(letGoOf(Diver,Object), Time_From, Time_Until), underWater(Object), [holds(not(underWater(Diver)),Time_From)]). */ % "% =================================". % [diver,equipment,time] % Initiates(PutOn(diver,equipment),Wearing(diver,equipment),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3560). % From E: % % initiates_at( % putOn(Diver,Equipment), % wearing(Diver,Equipment), % Time). % [Time]. putOn(Diver, Equipment)initiates wearing(Diver, Equipment). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3560). /* initiated(happens(putOn(Diver,Equipment), Time_From, Time_Until), wearing(Diver,Equipment), []). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3562). % [diver,equipment,time] % Happens(PutOn(diver,equipment),time) -> % !HoldsAt(UnderWater(diver),time). % From E: % % '->'( % happens_at(putOn(Diver,Equipment),Time), % holds_at(not(underWater(Diver)),Time)). % [Time]. not underWater(Diver)if putOn(Diver, Equipment). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3562). /* l_int(holds(not(underWater(Diver)),Time_At), [ happens(putOn(Diver,Equipment), Time_At, Time_At) ]). */ % "% =================================". % [diver,equipment,time] % Terminates(TakeOff(diver,equipment),Wearing(diver,equipment),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3567). % From E: % % terminates_at( % takeOff(Diver,Equipment), % wearing(Diver,Equipment), % Time). % [Time]. takeOff(Diver, Equipment)terminates wearing(Diver, Equipment). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3567). /* terminated(happens(takeOff(Diver,Equipment), Time_From, Time_Until), wearing(Diver,Equipment), []). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3569). % [diver,equipment,time] % Terminates(Lose(diver,equipment),Wearing(diver,equipment),time). % From E: % % terminates_at( % lose(Diver,Equipment), % wearing(Diver,Equipment), % Time). % [Time]. lose(Diver, Equipment)terminates wearing(Diver, Equipment). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3569). /* terminated(happens(lose(Diver,Equipment), Time_From, Time_Until), wearing(Diver,Equipment), []). */ % "% =================================". % fluent Vertical(diver) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3571). % From E: % % fluent(vertical(diver)). mpred_prop(vertical(diver),fluent). fluents([vertical/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3574). % fluent HorizontalDown(diver) % From E: % % fluent(horizontalDown(diver)). mpred_prop(horizontalDown(diver),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3574). fluents([horizontalDown/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3576). % fluent Inverted(diver) % From E: % % fluent(inverted(diver)). mpred_prop(inverted(diver),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3576). fluents([inverted/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3578). % fluent HorizontalUp(diver) % From E: % % fluent(horizontalUp(diver)). mpred_prop(horizontalUp(diver),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3578). fluents([horizontalUp/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3580). % xor Vertical, HorizontalDown, Inverted, HorizontalUp % From E: % % xor([vertical,horizontalDown,inverted,horizontalUp]). xor([vertical,horizontalDown,inverted,horizontalUp]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3582). % event RotatePitch(diver) % From E: % % event(rotatePitch(diver)). events([rotatePitch/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3582). mpred_prop(rotatePitch(diver),action). actions([rotatePitch/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3584). % [diver,time] % HoldsAt(Vertical(diver),time) -> % Initiates(RotatePitch(diver),HorizontalDown(diver),time). % From E: % % '->'( % holds_at(vertical(Diver),Time), % initiates_at( % rotatePitch(Diver), % horizontalDown(Diver), % Time)). % [Time]. rotatePitch(Diver)initiates horizontalDown(Diver)if vertical(Diver). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3584). /* initiated(happens(rotatePitch(Diver), Time_From, Time_Until), horizontalDown(Diver), [holds(vertical(Diver),Time_From)]). */ % "% =================================". % [diver,time] % HoldsAt(HorizontalDown(diver),time) -> % Initiates(RotatePitch(diver),Inverted(diver),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3589). % From E: % % '->'( % holds_at(horizontalDown(Diver),Time), % initiates_at( % rotatePitch(Diver), % inverted(Diver), % Time)). % [Time]. rotatePitch(Diver)initiates inverted(Diver)if horizontalDown(Diver). /* initiated(happens(rotatePitch(Diver), Time_From, Time_Until), inverted(Diver), [holds(horizontalDown(Diver),Time_From)]). */ % "% =================================". % [diver,time] % HoldsAt(HorizontalDown(diver),time) -> % Terminates(RotatePitch(diver),HorizontalDown(diver),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3593). % From E: % % '->'( % holds_at(horizontalDown(Diver),Time), % terminates_at( % rotatePitch(Diver), % horizontalDown(Diver), % Time)). % [Time]. rotatePitch(Diver)terminates horizontalDown(Diver)if horizontalDown(Diver). /* terminated(happens(rotatePitch(Diver), Time_From, Time_Until), horizontalDown(Diver), [holds(horizontalDown(Diver),Time_From)]). */ % "% =================================". % [diver,time] % HoldsAt(Inverted(diver),time) -> % Initiates(RotatePitch(diver),HorizontalUp(diver),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3597). % From E: % % '->'( % holds_at(inverted(Diver),Time), % initiates_at( % rotatePitch(Diver), % horizontalUp(Diver), % Time)). % [Time]. rotatePitch(Diver)initiates horizontalUp(Diver)if inverted(Diver). /* initiated(happens(rotatePitch(Diver), Time_From, Time_Until), horizontalUp(Diver), [holds(inverted(Diver),Time_From)]). */ % "% =================================". % [diver,time] % HoldsAt(Inverted(diver),time) -> % Terminates(RotatePitch(diver),Inverted(diver),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3601). % From E: % % '->'( % holds_at(inverted(Diver),Time), % terminates_at( % rotatePitch(Diver), % inverted(Diver), % Time)). % [Time]. rotatePitch(Diver)terminates inverted(Diver)if inverted(Diver). /* terminated(happens(rotatePitch(Diver), Time_From, Time_Until), inverted(Diver), [holds(inverted(Diver),Time_From)]). */ % "% =================================". % [diver,time] % HoldsAt(HorizontalUp(diver),time) -> % Initiates(RotatePitch(diver),Vertical(diver),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3605). % From E: % % '->'( % holds_at(horizontalUp(Diver),Time), % initiates_at( % rotatePitch(Diver), % vertical(Diver), % Time)). % [Time]. rotatePitch(Diver)initiates vertical(Diver)if horizontalUp(Diver). /* initiated(happens(rotatePitch(Diver), Time_From, Time_Until), vertical(Diver), [holds(horizontalUp(Diver),Time_From)]). */ % "% =================================". % [diver,time] % HoldsAt(HorizontalUp(diver),time) -> % Terminates(RotatePitch(diver),HorizontalUp(diver),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3609). % From E: % % '->'( % holds_at(horizontalUp(Diver),Time), % terminates_at( % rotatePitch(Diver), % horizontalUp(Diver), % Time)). % [Time]. rotatePitch(Diver)terminates horizontalUp(Diver)if horizontalUp(Diver). /* terminated(happens(rotatePitch(Diver), Time_From, Time_Until), horizontalUp(Diver), [holds(horizontalUp(Diver),Time_From)]). */ % "% =================================". % event RotateYaw(diver) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3611). % From E: % % event(rotateYaw(diver)). events([rotateYaw/1]). mpred_prop(rotateYaw(diver),action). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3611). actions([rotateYaw/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3614). %; try taking out Holding condition here % [diver,time] % Happens(Ascend1(diver),time) & % !Happens(RapidAscendToSurface(diver),time) & % !({diver1} HoldsAt(Holding(diver,diver1),time)) -> % Happens(RotateYaw(diver),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3616). % From E: % % '->'( % (happens_at(ascend1(Diver),Time) , % not(happens_at(rapidAscendToSurface(Diver),Time)) , % not( % exists( % [Diver1], % holds_at(holding(Diver,Diver1),Time)))), % happens_at(rotateYaw(Diver),Time)). % [Time]. if ascend1(Diver), not rapidAscendToSurface(Diver), not holding(Diver, Diver1)then rotateYaw(Diver). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3616). /* reactive_rule([ ascend1(Diver), not(rapidAscendToSurface(Diver)), holds(not(holding(Diver,Diver1)), Time_At) ], [rotateYaw(Diver)]). */ % "% =================================". % fluent UnderWater(object) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3620). % From E: % % fluent(underWater(object)). mpred_prop(underWater(object),fluent). fluents([underWater/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3623). % [object,depth,time] % depth>% 0 & % HoldsAt(AtDepth(object,depth),time) -> % HoldsAt(UnderWater(object),time). % From E: % % '->'( % (Depth>0 , % holds_at(atDepth(Object,Depth),Time)), % holds_at(underWater(Object),Time)). % [Time]. false not underWater(Object), comparison(Depth, 0, >), atDepth(Object, Depth). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3623). /* d_pre([ holds(not(underWater(Object)),Time_At), comparison(Depth,0,>), holds(atDepth(Object,Depth),Time_At) ]). */ % "% =================================". % event EnterWater(object) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3627). % From E: % % event(enterWater(object)). mpred_prop(enterWater(object),event). events([enterWater/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3630). % event Surface(object) % From E: % % event(surface(object)). mpred_prop(surface(object),event). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3630). events([surface/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3632). % [object,time] % Initiates(EnterWater(object),UnderWater(object),time). % From E: % % initiates_at( % enterWater(Object), % underWater(Object), % Time). % [Time]. enterWater(Object)initiates underWater(Object). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3632). /* initiated(happens(enterWater(Object), Time_From, Time_Until), underWater(Object), []). */ % "% =================================". % [diver,time] % Happens(EnterWater(diver),time) -> % !{diver1} HoldsAt(Holding(diver1,diver),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3636). % From E: % % '->'( % happens_at(enterWater(Diver),Time), % not( % exists( % [Diver1], % holds_at(holding(Diver1,Diver),Time)))). % [Time]. not holding(Diver1, Diver)if enterWater(Diver). /* l_int(holds(not(holding(Diver1,Diver)),Time_At), [happens(enterWater(Diver),Time_At,Time_At)]). */ % "% =================================". % [object,depth,time] % depth=% 0 -> % Initiates(EnterWater(object),AtDepth(object,depth),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3640). % From E: % % '->'( % Depth=0, % initiates_at( % enterWater(Object), % atDepth(Object,Depth), % Time)). % [Time]. false not (enterWater(Object)initiates atDepth(Object, Depth)), equals(Depth, 0). /* d_pre([ not(initiates(enterWater(Object), atDepth(Object,Depth))), equals(Depth,0) ]). */ % "% =================================". % [object,time] % Terminates(Surface(object),UnderWater(object),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3644). % From E: % % terminates_at( % surface(Object), % underWater(Object), % Time). % [Time]. surface(Object)terminates underWater(Object). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3644). /* terminated(happens(surface(Object), Time_From, Time_Until), underWater(Object), []). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3646). % [diver,time] % Terminates(Surface(diver),PositivelyBuoyant(diver),time). % From E: % % terminates_at( % surface(Diver), % positivelyBuoyant(Diver), % Time). % [Time]. surface(Diver)terminates positivelyBuoyant(Diver). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3646). /* terminated(happens(surface(Diver), Time_From, Time_Until), positivelyBuoyant(Diver), []). */ % "% =================================". % [diver,time] % Terminates(Surface(diver),NegativelyBuoyant(diver),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3650). % From E: % % terminates_at( % surface(Diver), % negativelyBuoyant(Diver), % Time). % [Time]. surface(Diver)terminates negativelyBuoyant(Diver). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3650). /* terminated(happens(surface(Diver), Time_From, Time_Until), negativelyBuoyant(Diver), []). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3652). % [diver,time] % Terminates(Surface(diver),NeutrallyBuoyant(diver),time). % From E: % % terminates_at( % surface(Diver), % neutrallyBuoyant(Diver), % Time). % [Time]. surface(Diver)terminates neutrallyBuoyant(Diver). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3652). /* terminated(happens(surface(Diver), Time_From, Time_Until), neutrallyBuoyant(Diver), []). */ % "% =================================". % [object,depth,time] % Terminates(Surface(object),AtDepth(object,depth),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3656). % From E: % % terminates_at( % surface(Object), % atDepth(Object,Depth), % Time). % [Time]. surface(Object)terminates atDepth(Object, Depth). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3656). /* terminated(happens(surface(Object), Time_From, Time_Until), atDepth(Object,Depth), []). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3658). % [diver,time] % Happens(EnterWater(diver),time) -> % HoldsAt(Vertical(diver),time). % From E: % % '->'( % happens_at(enterWater(Diver),Time), % holds_at(vertical(Diver),Time)). % [Time]. vertical(Diver)if enterWater(Diver). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3658). /* l_int(holds(vertical(Diver),Time_At), [happens(enterWater(Diver),Time_At,Time_At)]). */ % "% =================================". % fluent StandingOn(diver,boat) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3660). % From E: % % fluent(standingOn(diver,boat)). mpred_prop(standingOn(diver,boat),fluent). fluents([standingOn/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3663). % event StandOn(diver,boat) % From E: % % event(standOn(diver,boat)). events([standOn/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3663). mpred_prop(standOn(diver,boat),action). actions([standOn/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3665). % [diver,boat,time] % Terminates(EnterWater(diver),StandingOn(diver,boat),time). % From E: % % terminates_at( % enterWater(Diver), % standingOn(Diver,Boat), % Time). % [Time]. enterWater(Diver)terminates standingOn(Diver, Boat). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3665). /* terminated(happens(enterWater(Diver), Time_From, Time_Until), standingOn(Diver,Boat), []). */ % "% =================================". % [diver,boat,time] % Initiates(StandOn(diver,boat),StandingOn(diver,boat),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3669). % From E: % % initiates_at( % standOn(Diver,Boat), % standingOn(Diver,Boat), % Time). % [Time]. standOn(Diver, Boat)initiates standingOn(Diver, Boat). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3669). /* initiated(happens(standOn(Diver,Boat), Time_From, Time_Until), standingOn(Diver,Boat), []). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3671). % fluent PositivelyBuoyant(diver) % From E: % % fluent(positivelyBuoyant(diver)). mpred_prop(positivelyBuoyant(diver),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3671). fluents([positivelyBuoyant/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3673). % fluent NeutrallyBuoyant(diver) % From E: % % fluent(neutrallyBuoyant(diver)). mpred_prop(neutrallyBuoyant(diver),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3673). fluents([neutrallyBuoyant/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3675). % fluent NegativelyBuoyant(diver) % From E: % % fluent(negativelyBuoyant(diver)). mpred_prop(negativelyBuoyant(diver),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3675). fluents([negativelyBuoyant/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3677). % mutex PositivelyBuoyant, NeutrallyBuoyant, NegativelyBuoyant % From E: % % :-call_pel_directive(mutex(positivelyBuoyant)). :- call_pel_directive(mutex(positivelyBuoyant)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3677). % From E: % % :-call_pel_directive(mutex(neutrallyBuoyant)). :- call_pel_directive(mutex(neutrallyBuoyant)). % From E: % % :-call_pel_directive(mutex(negativelyBuoyant)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3677). :- call_pel_directive(mutex(negativelyBuoyant)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3679). % [diver,time] % HoldsAt(PositivelyBuoyant(diver),time) -> % HoldsAt(UnderWater(diver),time). % From E: % % '->'( % holds_at(positivelyBuoyant(Diver),Time), % holds_at(underWater(Diver),Time)). % [Time]. underWater(Diver)if positivelyBuoyant(Diver). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3679). /* l_int(holds(underWater(Diver),Time_At), [holds(positivelyBuoyant(Diver),Time_At)]). */ % "% =================================". % [diver,time] % HoldsAt(NeutrallyBuoyant(diver),time) -> % HoldsAt(UnderWater(diver),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3684). % From E: % % '->'( % holds_at(neutrallyBuoyant(Diver),Time), % holds_at(underWater(Diver),Time)). % [Time]. underWater(Diver)if neutrallyBuoyant(Diver). /* l_int(holds(underWater(Diver),Time_At), [holds(neutrallyBuoyant(Diver),Time_At)]). */ % "% =================================". % [diver,time] % HoldsAt(NegativelyBuoyant(diver),time) -> % HoldsAt(UnderWater(diver),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3688). % From E: % % '->'( % holds_at(negativelyBuoyant(Diver),Time), % holds_at(underWater(Diver),Time)). % [Time]. underWater(Diver)if negativelyBuoyant(Diver). /* l_int(holds(underWater(Diver),Time_At), [holds(negativelyBuoyant(Diver),Time_At)]). */ % "% =================================". % event PressDeflateButton(diver,bc) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3690). % From E: % % event(pressDeflateButton(diver,bc)). events([pressDeflateButton/2]). mpred_prop(pressDeflateButton(diver,bc),action). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3690). actions([pressDeflateButton/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3693). % event PressDumpButton(diver,bc) % From E: % % event(pressDumpButton(diver,bc)). events([pressDumpButton/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3693). mpred_prop(pressDumpButton(diver,bc),action). actions([pressDumpButton/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3695). % event PressInflateButton(diver,bc) % From E: % % event(pressInflateButton(diver,bc)). events([pressInflateButton/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3695). mpred_prop(pressInflateButton(diver,bc),action). actions([pressInflateButton/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3697). % [diver,bc,time] % Happens(PressDeflateButton(diver,bc),time) -> % HoldsAt(Vertical(diver),time) & % HoldsAt(UnderWater(bc),time). % From E: % % '->'( % happens_at(pressDeflateButton(Diver,Bc),Time), % (holds_at(vertical(Diver),Time) , % holds_at(underWater(Bc),Time))). % [Time]. if pressDeflateButton(Diver, Bc)then vertical(Diver), underWater(Bc). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3697). /* reactive_rule([ happens(pressDeflateButton(Diver,Bc), Time_From, Time_Until) ], [ holds(vertical(Diver),Time_At), holds(underWater(Bc),Time_At) ]). */ % "% =================================". % [diver,bc,time] % Happens(PressDumpButton(diver,bc),time) -> % HoldsAt(Vertical(diver),time) & % HoldsAt(UnderWater(bc),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3703). % From E: % % '->'( % happens_at(pressDumpButton(Diver,Bc),Time), % (holds_at(vertical(Diver),Time) , % holds_at(underWater(Bc),Time))). % [Time]. if pressDumpButton(Diver, Bc)then vertical(Diver), underWater(Bc). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3703). /* reactive_rule([ happens(pressDumpButton(Diver,Bc), Time_From, Time_Until) ], [ holds(vertical(Diver),Time_At), holds(underWater(Bc),Time_At) ]). */ % "% =================================". % [diver,bc,time] % Happens(PressDumpButton(diver,bc),time) -> % HoldsAt(UncontrolledBuoyancy(diver),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3706). % From E: % % '->'( % happens_at(pressDumpButton(Diver,Bc),Time), % holds_at(uncontrolledBuoyancy(Diver),Time)). % [Time]. uncontrolledBuoyancy(Diver)if pressDumpButton(Diver, Bc). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3706). /* l_int(holds(uncontrolledBuoyancy(Diver),Time_At), [ happens(pressDumpButton(Diver,Bc), Time_At, Time_At) ]). */ % "% =================================". % [diver,bc,time] % HoldsAt(Wearing(diver,bc),time) -> % Initiates(PressDeflateButton(diver,bc),NegativelyBuoyant(diver),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3711). % From E: % % '->'( % holds_at(wearing(Diver,Bc),Time), % initiates_at( % pressDeflateButton(Diver,Bc), % negativelyBuoyant(Diver), % Time)). % [Time]. pressDeflateButton(Diver, Bc)initiates negativelyBuoyant(Diver)if wearing(Diver, Bc). /* initiated(happens(pressDeflateButton(Diver,Bc), Time_From, Time_Until), negativelyBuoyant(Diver), [holds(wearing(Diver,Bc),Time_From)]). */ % "% =================================". % [diver,bc,time] % HoldsAt(Wearing(diver,bc),time) -> % Terminates(PressDeflateButton(diver,bc),NeutrallyBuoyant(diver),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3715). % From E: % % '->'( % holds_at(wearing(Diver,Bc),Time), % terminates_at( % pressDeflateButton(Diver,Bc), % neutrallyBuoyant(Diver), % Time)). % [Time]. pressDeflateButton(Diver, Bc)terminates neutrallyBuoyant(Diver)if wearing(Diver, Bc). /* terminated(happens(pressDeflateButton(Diver,Bc), Time_From, Time_Until), neutrallyBuoyant(Diver), [holds(wearing(Diver,Bc),Time_From)]). */ % "% =================================". % [diver,bc,time] % HoldsAt(Wearing(diver,bc),time) -> % Terminates(PressDeflateButton(diver,bc),PositivelyBuoyant(diver),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3719). % From E: % % '->'( % holds_at(wearing(Diver,Bc),Time), % terminates_at( % pressDeflateButton(Diver,Bc), % positivelyBuoyant(Diver), % Time)). % [Time]. pressDeflateButton(Diver, Bc)terminates positivelyBuoyant(Diver)if wearing(Diver, Bc). /* terminated(happens(pressDeflateButton(Diver,Bc), Time_From, Time_Until), positivelyBuoyant(Diver), [holds(wearing(Diver,Bc),Time_From)]). */ % "% =================================". % [diver,bc,time] % HoldsAt(Wearing(diver,bc),time) -> % Initiates(PressDumpButton(diver,bc),NegativelyBuoyant(diver),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3723). % From E: % % '->'( % holds_at(wearing(Diver,Bc),Time), % initiates_at( % pressDumpButton(Diver,Bc), % negativelyBuoyant(Diver), % Time)). % [Time]. pressDumpButton(Diver, Bc)initiates negativelyBuoyant(Diver)if wearing(Diver, Bc). /* initiated(happens(pressDumpButton(Diver,Bc), Time_From, Time_Until), negativelyBuoyant(Diver), [holds(wearing(Diver,Bc),Time_From)]). */ % "% =================================". % [diver,bc,time] % HoldsAt(Wearing(diver,bc),time) -> % Terminates(PressDumpButton(diver,bc),NeutrallyBuoyant(diver),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3727). % From E: % % '->'( % holds_at(wearing(Diver,Bc),Time), % terminates_at( % pressDumpButton(Diver,Bc), % neutrallyBuoyant(Diver), % Time)). % [Time]. pressDumpButton(Diver, Bc)terminates neutrallyBuoyant(Diver)if wearing(Diver, Bc). /* terminated(happens(pressDumpButton(Diver,Bc), Time_From, Time_Until), neutrallyBuoyant(Diver), [holds(wearing(Diver,Bc),Time_From)]). */ % "% =================================". % [diver,bc,time] % HoldsAt(Wearing(diver,bc),time) -> % Terminates(PressDumpButton(diver,bc),PositivelyBuoyant(diver),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3731). % From E: % % '->'( % holds_at(wearing(Diver,Bc),Time), % terminates_at( % pressDumpButton(Diver,Bc), % positivelyBuoyant(Diver), % Time)). % [Time]. pressDumpButton(Diver, Bc)terminates positivelyBuoyant(Diver)if wearing(Diver, Bc). /* terminated(happens(pressDumpButton(Diver,Bc), Time_From, Time_Until), positivelyBuoyant(Diver), [holds(wearing(Diver,Bc),Time_From)]). */ % "% =================================". % [diver,bc,time] % HoldsAt(Wearing(diver,bc),time) -> % Initiates(PressInflateButton(diver,bc),NeutrallyBuoyant(diver),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3735). % From E: % % '->'( % holds_at(wearing(Diver,Bc),Time), % initiates_at( % pressInflateButton(Diver,Bc), % neutrallyBuoyant(Diver), % Time)). % [Time]. pressInflateButton(Diver, Bc)initiates neutrallyBuoyant(Diver)if wearing(Diver, Bc). /* initiated(happens(pressInflateButton(Diver,Bc), Time_From, Time_Until), neutrallyBuoyant(Diver), [holds(wearing(Diver,Bc),Time_From)]). */ % "% =================================". % [diver,bc,time] % HoldsAt(Wearing(diver,bc),time) -> % Terminates(PressInflateButton(diver,bc),PositivelyBuoyant(diver),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3739). % From E: % % '->'( % holds_at(wearing(Diver,Bc),Time), % terminates_at( % pressInflateButton(Diver,Bc), % positivelyBuoyant(Diver), % Time)). % [Time]. pressInflateButton(Diver, Bc)terminates positivelyBuoyant(Diver)if wearing(Diver, Bc). /* terminated(happens(pressInflateButton(Diver,Bc), Time_From, Time_Until), positivelyBuoyant(Diver), [holds(wearing(Diver,Bc),Time_From)]). */ % "% =================================". % [diver,bc,time] % HoldsAt(Wearing(diver,bc),time) -> % Terminates(PressInflateButton(diver,bc),NegativelyBuoyant(diver),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3743). % From E: % % '->'( % holds_at(wearing(Diver,Bc),Time), % terminates_at( % pressInflateButton(Diver,Bc), % negativelyBuoyant(Diver), % Time)). % [Time]. pressInflateButton(Diver, Bc)terminates negativelyBuoyant(Diver)if wearing(Diver, Bc). /* terminated(happens(pressInflateButton(Diver,Bc), Time_From, Time_Until), negativelyBuoyant(Diver), [holds(wearing(Diver,Bc),Time_From)]). */ % "% =================================". % [diver,weight,time] % HoldsAt(Wearing(diver,weight),time) -> % Initiates(TakeOff(diver,weight),PositivelyBuoyant(diver),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3747). % From E: % % '->'( % holds_at(wearing(Diver,Weight),Time), % initiates_at( % takeOff(Diver,Weight), % positivelyBuoyant(Diver), % Time)). % [Time]. takeOff(Diver, Weight)initiates positivelyBuoyant(Diver)if wearing(Diver, Weight). /* initiated(happens(takeOff(Diver,Weight), Time_From, Time_Until), positivelyBuoyant(Diver), [holds(wearing(Diver,Weight),Time_From)]). */ % "% =================================". % [diver,weight,time] % HoldsAt(Wearing(diver,weight),time) -> % Terminates(TakeOff(diver,weight),NegativelyBuoyant(diver),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3751). % From E: % % '->'( % holds_at(wearing(Diver,Weight),Time), % terminates_at( % takeOff(Diver,Weight), % negativelyBuoyant(Diver), % Time)). % [Time]. takeOff(Diver, Weight)terminates negativelyBuoyant(Diver)if wearing(Diver, Weight). /* terminated(happens(takeOff(Diver,Weight), Time_From, Time_Until), negativelyBuoyant(Diver), [holds(wearing(Diver,Weight),Time_From)]). */ % "% =================================". % [diver,weight,time] % HoldsAt(Wearing(diver,weight),time) -> % Terminates(TakeOff(diver,weight),NeutrallyBuoyant(diver),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3755). % From E: % % '->'( % holds_at(wearing(Diver,Weight),Time), % terminates_at( % takeOff(Diver,Weight), % neutrallyBuoyant(Diver), % Time)). % [Time]. takeOff(Diver, Weight)terminates neutrallyBuoyant(Diver)if wearing(Diver, Weight). /* terminated(happens(takeOff(Diver,Weight), Time_From, Time_Until), neutrallyBuoyant(Diver), [holds(wearing(Diver,Weight),Time_From)]). */ % "% =================================". % fluent UncontrolledBuoyancy(diver) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3757). % From E: % % fluent(uncontrolledBuoyancy(diver)). mpred_prop(uncontrolledBuoyancy(diver),fluent). fluents([uncontrolledBuoyancy/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3760). % event LoseBuoyancyControl(diver) % From E: % % event(loseBuoyancyControl(diver)). events([loseBuoyancyControl/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3760). mpred_prop(loseBuoyancyControl(diver),action). actions([loseBuoyancyControl/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3762). % predicate IsInexperiencedDiver(diver) % From E: % % predicate(isInexperiencedDiver(diver)). mpred_prop(isInexperiencedDiver(diver),predicate). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3762). predicates([isInexperiencedDiver/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3764). % [diver,time] % Happens(LoseBuoyancyControl(diver),time) -> % IsInexperiencedDiver(diver). % From E: % % '->'( % happens_at(loseBuoyancyControl(Diver),Time), % isInexperiencedDiver(Diver)). % [Time]. if loseBuoyancyControl(Diver)then isInexperiencedDiver(Diver). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3764). /* reactive_rule([ happens(loseBuoyancyControl(Diver), Time_From, Time_Until) ], [isInexperiencedDiver(Diver)]). */ % "% =================================". % [diver,time] % Initiates(LoseBuoyancyControl(diver),UncontrolledBuoyancy(diver),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3769). % From E: % % initiates_at( % loseBuoyancyControl(Diver), % uncontrolledBuoyancy(Diver), % Time). % [Time]. loseBuoyancyControl(Diver)initiates uncontrolledBuoyancy(Diver). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3769). /* initiated(happens(loseBuoyancyControl(Diver), Time_From, Time_Until), uncontrolledBuoyancy(Diver), []). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3771). % [diver,time] % Initiates(LoseBuoyancyControl(diver),PositivelyBuoyant(diver),time). % From E: % % initiates_at( % loseBuoyancyControl(Diver), % positivelyBuoyant(Diver), % Time). % [Time]. loseBuoyancyControl(Diver)initiates positivelyBuoyant(Diver). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3771). /* initiated(happens(loseBuoyancyControl(Diver), Time_From, Time_Until), positivelyBuoyant(Diver), []). */ % "% =================================". % [diver,time] % Terminates(LoseBuoyancyControl(diver),NegativelyBuoyant(diver),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3775). % From E: % % terminates_at( % loseBuoyancyControl(Diver), % negativelyBuoyant(Diver), % Time). % [Time]. loseBuoyancyControl(Diver)terminates negativelyBuoyant(Diver). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3775). /* terminated(happens(loseBuoyancyControl(Diver), Time_From, Time_Until), negativelyBuoyant(Diver), []). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3777). % [diver,time] % Terminates(LoseBuoyancyControl(diver),NeutrallyBuoyant(diver),time). % From E: % % terminates_at( % loseBuoyancyControl(Diver), % neutrallyBuoyant(Diver), % Time). % [Time]. loseBuoyancyControl(Diver)terminates neutrallyBuoyant(Diver). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3777). /* terminated(happens(loseBuoyancyControl(Diver), Time_From, Time_Until), neutrallyBuoyant(Diver), []). */ % "% =================================". %; determining fluent :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3781). % fluent AscendDescendAmount(diver,depth) % From E: % % fluent(ascendDescendAmount(diver,depth)). mpred_prop(ascendDescendAmount(diver,depth),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3781). fluents([ascendDescendAmount/2]). % noninertial AscendDescendAmount % From E: % % :-call_pel_directive(noninertial(ascendDescendAmount)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3781). :- call_pel_directive(noninertial(ascendDescendAmount)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3784). % [diver,depth1,depth2,time] % HoldsAt(AscendDescendAmount(diver,depth1),time) & % HoldsAt(AscendDescendAmount(diver,depth2),time) -> % depth1=depth2. % From E: % % '->'( % (holds_at(ascendDescendAmount(Diver,Depth1),Time) , % holds_at(ascendDescendAmount(Diver,Depth2),Time)), % Depth1=Depth2). % [Time]. false not equals(Depth1, Depth2), ascendDescendAmount(Diver, Depth1), ascendDescendAmount(Diver, Depth2). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3784). /* d_pre([ not(equals(Depth1,Depth2)), ascendDescendAmount(Diver,Depth1), ascendDescendAmount(Diver,Depth2) ]). */ % "% =================================". % [diver,depth,time] % Happens(Descend(diver,depth),time) -> % HoldsAt(NegativelyBuoyant(diver),time) & % ({depth1} % HoldsAt(AscendDescendAmount(diver,depth1),time) & % HoldsAt(AtDepth(diver,depth-depth1),time)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3790). % From E: % % '->'( % happens_at(descend(Diver,Depth),Time), % (holds_at(negativelyBuoyant(Diver),Time) , % exists( % [Depth1], % (holds_at(ascendDescendAmount(Diver,Depth1),Time) , % holds_at(atDepth(Diver,Depth-Depth1),Time))))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3790). descend(Diver, Depth) -> negativelyBuoyant(Diver), exists([Depth1], (ascendDescendAmount(Diver, Depth1), atDepth(Diver, Depth-Depth1))). % event KickUp(diver) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3795). % From E: % % event(kickUp(diver)). events([kickUp/1]). mpred_prop(kickUp(diver),action). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3795). actions([kickUp/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3798). % [diver,depth,time] % Happens(Ascend(diver,depth),time) -> % (HoldsAt(PositivelyBuoyant(diver),time) | % (HoldsAt(NeutrallyBuoyant(diver),time) & Happens(KickUp(diver),time))) & % ({depth1} % HoldsAt(AscendDescendAmount(diver,depth1),time) & % HoldsAt(AtDepth(diver,depth+depth1),time)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3798). % From E: % % '->'( % happens_at(ascend(Diver,Depth),Time), % ((holds_at(positivelyBuoyant(Diver),Time) ; % (holds_at(neutrallyBuoyant(Diver),Time) , % happens_at(kickUp(Diver),Time))) , % exists( % [Depth1], % (holds_at(ascendDescendAmount(Diver,Depth1),Time) , % holds_at(atDepth(Diver,Depth+Depth1),Time))))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3798). ascend(Diver, Depth) -> ( positivelyBuoyant(Diver) ; neutrallyBuoyant(Diver), kickUp(Diver) ), exists([Depth1], (ascendDescendAmount(Diver, Depth1), atDepth(Diver, Depth+Depth1))). % [diver,time] % Happens(KickUp(diver),time) -> % HoldsAt(Vertical(diver),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3807). % From E: % % '->'( % happens_at(kickUp(Diver),Time), % holds_at(vertical(Diver),Time)). % [Time]. vertical(Diver)if kickUp(Diver). % l_int(holds(vertical(Diver),Time_At),[kickUp(Diver)]). % "% =================================". % event SwimAround(diver) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3809). % From E: % % event(swimAround(diver)). events([swimAround/1]). mpred_prop(swimAround(diver),action). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3809). actions([swimAround/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3812). % [diver,time] % Happens(SwimAround(diver),time) -> % HoldsAt(HorizontalDown(diver),time). % From E: % % '->'( % happens_at(swimAround(Diver),Time), % holds_at(horizontalDown(Diver),Time)). % [Time]. horizontalDown(Diver)if swimAround(Diver). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3812). /* l_int(holds(horizontalDown(Diver),Time_At), [swimAround(Diver)]). */ % "% =================================". %; signaling :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3818). % event SignalDescend(diver,diver) % From E: % % event(signalDescend(diver,diver)). events([signalDescend/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3818). mpred_prop(signalDescend(diver,diver),action). actions([signalDescend/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3820). % event SignalOutOfTime(diver,diver) % From E: % % event(signalOutOfTime(diver,diver)). events([signalOutOfTime/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3820). mpred_prop(signalOutOfTime(diver,diver),action). actions([signalOutOfTime/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3822). % event SignalAscend(diver,diver) % From E: % % event(signalAscend(diver,diver)). events([signalAscend/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3822). mpred_prop(signalAscend(diver,diver),action). actions([signalAscend/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3824). %;[diver1,diver2,time] %;Happens(SignalAscend(diver1,diver2),time) -> %;Happens(SignalOutOfTime(diver1,diver2),time-1). %;[diver1,diver2,time] %;Happens(SignalDescend(diver1,diver2),time) -> %;HoldsAt(See(diver1,diver2),time) & %;HoldsAt(See(diver2,diver1),time). %;[diver1,diver2,time] %;Happens(SignalOutOfTime(diver1,diver2),time) -> %;HoldsAt(See(diver1,diver2),time) & %;HoldsAt(See(diver2,diver1),time). %;[diver1,diver2,time] %;Happens(SignalAscend(diver1,diver2),time) -> %;HoldsAt(See(diver1,diver2),time) & %;HoldsAt(See(diver2,diver1),time). %;event LookAt(agent,object) %;fluent See(agent,object) %;[agent,object,time] %;Initiates(LookAt(agent,object),See(agent,object),time). %;[agent,object1,object2,time] %;object1!=object2 -> %;Terminates(LookAt(agent,object1), %; See(agent,object2), %; time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3856). % event Descend1(diver) % From E: % % event(descend1(diver)). events([descend1/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3856). mpred_prop(descend1(diver),action). actions([descend1/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3858). % event Ascend1(diver) % From E: % % event(ascend1(diver)). events([ascend1/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3858). mpred_prop(ascend1(diver),action). actions([ascend1/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3860). %;[diver,object,time] %;Terminates(Descend1(diver),See(diver,object),time). %;[diver,object,time] %;Terminates(Ascend1(diver),See(diver,object),time). %;[diver,object,time] %;Terminates(RotateYaw(diver),See(diver,object),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3869). % event RapidAscendToSurface(diver) % From E: % % event(rapidAscendToSurface(diver)). events([rapidAscendToSurface/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3869). mpred_prop(rapidAscendToSurface(diver),action). actions([rapidAscendToSurface/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3871). % [diver,time] % Happens(Descend1(diver),time) <-> % ({depth} Happens(Descend(diver,depth),time)). % From E: % % <->( % happens_at(descend1(Diver),Time), % exists( % [Depth], % happens_at(descend(Diver,Depth),Time))). % [Time]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3871). descend1(Diver) <-> exists([Depth], descend(Diver, Depth)). % [diver,time] % Happens(Ascend1(diver),time) <-> % ({depth} Happens(Ascend(diver,depth),time)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3876). % From E: % % <->( % happens_at(ascend1(Diver),Time), % exists( % [Depth], % happens_at(ascend(Diver,Depth),Time))). % [Time]. ascend1(Diver) <-> exists([Depth], ascend(Diver, Depth)). % [diver,time] % Happens(RapidAscendToSurface(diver),time) -> % Happens(Ascend(diver,0),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3880). % From E: % % '->'( % happens_at(rapidAscendToSurface(Diver),Time), % happens_at(ascend(Diver,0),Time)). % [Time]. ascend(Diver, 0)if rapidAscendToSurface(Diver). /* l_events(happens(ascend(Diver,0),Time_From,Time_From), [rapidAscendToSurface(Diver)]). */ % "% =================================". % event AscendLine(diver,line) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3882). % From E: % % event(ascendLine(diver,line)). events([ascendLine/2]). mpred_prop(ascendLine(diver,line),action). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3882). actions([ascendLine/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3885). % [diver,line,time] % Happens(AscendLine(diver,line),time) -> % Happens(Ascend1(diver),time). % From E: % % '->'( % happens_at(ascendLine(Diver,Line),Time), % happens_at(ascend1(Diver),Time)). % [Time]. if ascendLine(Diver, Line)then ascend1(Diver). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3885). /* reactive_rule([ascendLine(Diver,Line)], [ascend1(Diver)]). */ % "% =================================". % fluent Disoriented(diver) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3888). % From E: % % fluent(disoriented(diver)). mpred_prop(disoriented(diver),fluent). fluents([disoriented/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3891). % event BecomeDisoriented(diver) % From E: % % event(becomeDisoriented(diver)). events([becomeDisoriented/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3891). mpred_prop(becomeDisoriented(diver),action). actions([becomeDisoriented/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3893). % event BecomeReoriented(diver) % From E: % % event(becomeReoriented(diver)). events([becomeReoriented/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3893). mpred_prop(becomeReoriented(diver),action). actions([becomeReoriented/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3895). % [diver,time] % Initiates(BecomeDisoriented(diver),Disoriented(diver),time). % From E: % % initiates_at( % becomeDisoriented(Diver), % disoriented(Diver), % Time). % [Time]. becomeDisoriented(Diver)initiates disoriented(Diver). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3895). /* initiated(happens(becomeDisoriented(Diver), Time_From, Time_Until), disoriented(Diver), []). */ % "% =================================". % [diver,time] % Terminates(BecomeReoriented(diver),Disoriented(diver),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3899). % From E: % % terminates_at( % becomeReoriented(Diver), % disoriented(Diver), % Time). % [Time]. becomeReoriented(Diver)terminates disoriented(Diver). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3899). /* terminated(happens(becomeReoriented(Diver), Time_From, Time_Until), disoriented(Diver), []). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3901). % fluent DisturbedSilt() % From E: % % fluent(disturbedSilt()). fluents([disturbedSilt/0]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3903). % event DisturbSilt(diver) % From E: % % event(disturbSilt(diver)). events([disturbSilt/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3903). mpred_prop(disturbSilt(diver),action). actions([disturbSilt/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3905). % [diver,time] % Initiates(DisturbSilt(diver),DisturbedSilt(),time). % From E: % % initiates_at(disturbSilt(Diver),disturbedSilt(),Time). % [Time]. disturbSilt(Diver)initiates disturbedSilt. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3905). /* initiated(happens(disturbSilt(Diver), Time_From, Time_Until), disturbedSilt, []). */ % "% =================================". % [diver,time] % Happens(BecomeDisoriented(diver),time) -> % (!HoldsAt(DisturbedSilt(),time-1) & % HoldsAt(DisturbedSilt(),time)). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3909). % From E: % % '->'( % happens_at(becomeDisoriented(Diver),Time), % (holds_at(not(disturbedSilt()),Time-1) , % holds_at(disturbedSilt(),Time))). % [Time, Time-1]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3909). happens_at(becomeDisoriented(Diver), Time) -> holds_at(not(disturbedSilt), Time-1), holds_at(disturbedSilt, Time). % event Panic(diver) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3912). % From E: % % event(panic(diver)). events([panic/1]). mpred_prop(panic(diver),action). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3912). actions([panic/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3915). % [diver,time] % Happens(Panic(diver),time) -> % HoldsAt(Disoriented(diver),time) | % HoldsAt(UncontrolledBuoyancy(diver),time) | % ({equipment} Happens(Lose(diver,equipment),time-1)) | % Happens(Vomit(diver),time-1). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3915). % From E: % % '->'( % happens_at(panic(Diver),Time), % (holds_at(disoriented(Diver),Time) ; % holds_at(uncontrolledBuoyancy(Diver),Time) ; % exists( % [Equipment], % happens_at(lose(Diver,Equipment),Time-1)) ; % happens_at(vomit(Diver),Time-1))). % [Time, Time-1]. :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3915). happens_at(panic(Diver), Time) -> ( holds_at(disoriented(Diver), Time) ; holds_at(uncontrolledBuoyancy(Diver), Time) ; exists([Equipment], happens_at(lose(Diver, Equipment), Time-1)) ; happens_at(vomit(Diver), Time-1) ). % event Vomit(diver) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3920). % From E: % % event(vomit(diver)). events([vomit/1]). mpred_prop(vomit(diver),action). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3920). actions([vomit/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3923). %; conditions :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3925). % fluent Unconscious(diver) % From E: % % fluent(unconscious(diver)). mpred_prop(unconscious(diver),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3925). fluents([unconscious/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3927). % event GoUnconscious(diver) % From E: % % event(goUnconscious(diver)). events([goUnconscious/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3927). mpred_prop(goUnconscious(diver),action). actions([goUnconscious/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3929). % event RegainConsciousness(diver) % From E: % % event(regainConsciousness(diver)). events([regainConsciousness/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3929). mpred_prop(regainConsciousness(diver),action). actions([regainConsciousness/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3931). % [diver,time] % Initiates(GoUnconscious(diver),Unconscious(diver),time). % From E: % % initiates_at( % goUnconscious(Diver), % unconscious(Diver), % Time). % [Time]. goUnconscious(Diver)initiates unconscious(Diver). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3931). /* initiated(happens(goUnconscious(Diver), Time_From, Time_Until), unconscious(Diver), []). */ % "% =================================". % [diver,time] % Terminates(RegainConsciousness(diver),Unconscious(diver),time). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3935). % From E: % % terminates_at( % regainConsciousness(Diver), % unconscious(Diver), % Time). % [Time]. regainConsciousness(Diver)terminates unconscious(Diver). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3935). /* terminated(happens(regainConsciousness(Diver), Time_From, Time_Until), unconscious(Diver), []). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3937). % [diver,time] % Happens(GoUnconscious(diver),time) -> % Happens(RapidAscendToSurface(diver),time). % From E: % % '->'( % happens_at(goUnconscious(Diver),Time), % happens_at(rapidAscendToSurface(Diver),Time)). % [Time]. if goUnconscious(Diver)then rapidAscendToSurface(Diver). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3937). /* reactive_rule([ happens(goUnconscious(Diver), Time_From, Time_Until) ], [rapidAscendToSurface(Diver)]). */ % "% =================================". % fluent HasEarPain(diver) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3940). % From E: % % fluent(hasEarPain(diver)). mpred_prop(hasEarPain(diver),fluent). fluents([hasEarPain/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3943). % event StartEarPain(diver) % From E: % % event(startEarPain(diver)). events([startEarPain/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3943). mpred_prop(startEarPain(diver),action). actions([startEarPain/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3945). % [diver,time] % Initiates(StartEarPain(diver),HasEarPain(diver),time). % From E: % % initiates_at( % startEarPain(Diver), % hasEarPain(Diver), % Time). % [Time]. startEarPain(Diver)initiates hasEarPain(Diver). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3945). /* initiated(happens(startEarPain(Diver), Time_From, Time_Until), hasEarPain(Diver), []). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3947). % fluent HasRupturedEardrum(diver) % From E: % % fluent(hasRupturedEardrum(diver)). mpred_prop(hasRupturedEardrum(diver),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3947). fluents([hasRupturedEardrum/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3949). % event RuptureEardrum(diver) % From E: % % event(ruptureEardrum(diver)). events([ruptureEardrum/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3949). mpred_prop(ruptureEardrum(diver),action). actions([ruptureEardrum/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3951). % [diver,time] % Initiates(RuptureEardrum(diver),HasRupturedEardrum(diver),time). % From E: % % initiates_at( % ruptureEardrum(Diver), % hasRupturedEardrum(Diver), % Time). % [Time]. ruptureEardrum(Diver)initiates hasRupturedEardrum(Diver). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3951). /* initiated(happens(ruptureEardrum(Diver), Time_From, Time_Until), hasRupturedEardrum(Diver), []). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3953). % fluent ConditionOK(diver) % From E: % % fluent(conditionOK(diver)). mpred_prop(conditionOK(diver),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3953). fluents([conditionOK/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3955). % fluent HasDecompressionIllness(diver) % From E: % % fluent(hasDecompressionIllness(diver)). mpred_prop(hasDecompressionIllness(diver),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3955). fluents([hasDecompressionIllness/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3957). % event StartDecompressionIllness(diver) % From E: % % event(startDecompressionIllness(diver)). events([startDecompressionIllness/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3957). mpred_prop(startDecompressionIllness(diver),action). actions([startDecompressionIllness/1]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3959). % [diver,time] % Initiates(StartDecompressionIllness(diver), % HasDecompressionIllness(diver), % time). % From E: % % initiates_at( % startDecompressionIllness(Diver), % hasDecompressionIllness(Diver), % Time). % [Time]. startDecompressionIllness(Diver)initiates hasDecompressionIllness(Diver). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3959). /* initiated(happens(startDecompressionIllness(Diver), Time_From, Time_Until), hasDecompressionIllness(Diver), []). */ % "% =================================". % fluent SignalingDecompress(computer,diver) :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3963). % From E: % % fluent(signalingDecompress(computer,diver)). mpred_prop(signalingDecompress(computer,diver),fluent). fluents([signalingDecompress/2]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3966). % fluent SignalingLowOnAir(computer,airtank,diver) % From E: % % fluent(signalingLowOnAir(computer,airtank,diver)). mpred_prop(signalingLowOnAir(computer,airtank,diver),fluent). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3966). fluents([signalingLowOnAir/3]). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3968). % [computer,airtank,diver,time] % HoldsAt(SignalingLowOnAir(computer,airtank,diver),time) -> % HoldsAt(LowOnAir(airtank),time). % From E: % % '->'( % holds_at(signalingLowOnAir(Computer,Airtank,Diver),Time), % holds_at(lowOnAir(Airtank),Time)). % [Time]. lowOnAir(Airtank)if signalingLowOnAir(Computer, Airtank, Diver). :-was_s_l('/pack/logicmoo_ec/test/ec_planner/ectest/ec_reader_test_ecnet.e',3968). /* l_int(holds(lowOnAir(Airtank),Time_At), [signalingLowOnAir(Computer,Airtank,Diver)]). */ % "% =================================". % [computer,diver,time] % HoldsAt(SignalingDecompress(computer,diver),time) -> % !{time1} time1