:-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/Happy2.e',65). % From E: % % :-call_pel_directive(translate(unskipped,'/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/Happy40.e.lps')). :- call_pel_directive(translate(unskipped, '/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/Happy40.e.lps')). :-include(library('ec_planner/ec_test_incl')). :-expects_dialect(lps). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/Happy2.e',65). % From E: % % :-call_pel_directive(translate(begining,'/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/Happy40.e.lps')). :- call_pel_directive(translate(begining, '/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/Happy40.e.lps')). % Sat, 10 Oct 2020 15:31:52 GMT File: (0x559e4b3f1a00)%; %; 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{Shanahan:1999, %; author = "Shanahan, Murray", %; year = "1999", %; title = "The Event Calculus explained", %; editor = "Michael J. Wooldridge and Manuela M. Veloso", %; booktitle = "Artificial Intelligence Today: Recent Trends and Developments", %; series = "Lecture Notes in Computer Science", %; volume = "1600", %; pages = "409--430", %; address = "Berlin", %; publisher = "Springer", %; } %; %; deduction %; %; modifications from Shanahan's formulation: %; InitiallyN -> !HoldsAt %; InitiallyP -> HoldsAt %; timestamps %; :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/Happy40.e',32). % load foundations/Root.e % From E: % % :-call_pel_directive(load('foundations/Root.e')). :- call_pel_directive(load('foundations/Root.e')). % load foundations/EC.e :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/Happy40.e',32). % From E: % % :-call_pel_directive(load('foundations/EC.e')). :- call_pel_directive(load('foundations/EC.e')). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/Happy40.e',35). % sort person % From E: % % sort(person). sort(person). % event Feed(person) :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/Happy40.e',35). % From E: % % event(feed(person)). mpred_prop(feed(person),event). events([feed/1]). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/Happy40.e',37). % event Clothe(person) % From E: % % event(clothe(person)). mpred_prop(clothe(person),event). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/Happy40.e',37). events([clothe/1]). % fluent Happy(person) % From E: % % fluent(happy(person)). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/Happy40.e',37). mpred_prop(happy(person),fluent). fluents([happy/1]). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/Happy40.e',39). % fluent Hungry(person) % From E: % % fluent(hungry(person)). mpred_prop(hungry(person),fluent). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/Happy40.e',39). fluents([hungry/1]). % fluent Cold(person) % From E: % % fluent(cold(person)). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/Happy40.e',39). mpred_prop(cold(person),fluent). fluents([cold/1]). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/Happy40.e',41). % noninertial Happy % From E: % % :-call_pel_directive(noninertial(happy)). :- call_pel_directive(noninertial(happy)). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/Happy40.e',43). % [person,time] % HoldsAt(Happy(person),time) <-> % !HoldsAt(Hungry(person),time) & % !HoldsAt(Cold(person),time). % From E: % % <->( % holds_at(happy(Person),Time), % (holds_at(not(hungry(Person)),Time) , % holds_at(not(cold(Person)),Time))). % [Time]. if happy(Person)then not hungry(Person), not cold(Person). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/Happy40.e',43). /* reactive_rule([holds(happy(Person),Time_At)], [ holds(not(hungry(Person)),Time_At3), holds(not(cold(Person)),Time_At3) ]). */ % "% =================================". happy(Person)if not hungry(Person), not cold(Person). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/Happy40.e',43). /* l_int(holds(happy(Person),Time_At4), [ holds(not(hungry(Person)),Time_At4), holds(not(cold(Person)),Time_At4) ]). */ % "% =================================". % [person,time] % Terminates(Feed(person),Hungry(person),time). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/Happy40.e',49). % From E: % % terminates_at( % feed(Person), % hungry(Person), % Time). % [Time]. feed(Person)terminates hungry(Person). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/Happy40.e',49). /* terminated(happens(feed(Person),Time_From,Time_Until), hungry(Person), []). */ % "% =================================". :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/Happy40.e',51). % [person,time] % Terminates(Clothe(person),Cold(person),time). % From E: % % terminates_at( % clothe(Person), % cold(Person), % Time). % [Time]. clothe(Person)terminates cold(Person). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/Happy40.e',51). /* terminated(happens(clothe(Person), Time_From, Time_Until), cold(Person), []). */ % "% =================================". % person Fred :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/Happy40.e',53). % From E: % % t(person,fred). person(fred). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/Happy40.e',56). % HoldsAt(Hungry(Fred),0). % From E: % % holds_at(hungry(fred),0). initially hungry(fred). % initial_state([hungry(fred)]). % "% =================================". % !HoldsAt(Cold(Fred),0). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/Happy40.e',56). % From E: % % holds_at(not(cold(fred)),0). initially not cold(fred). % initial_state([not(cold(fred))]). % "% =================================". :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/Happy40.e',58). % Happens(Feed(Fred),25). % From E: % % happens_at(feed(fred),25). observe feed(fred)at 25. % observe([feed(fred)],25). % "% =================================". :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/Happy40.e',60). % completion Happens % From E: % % :-call_pel_directive(completion(happens_at)). :- call_pel_directive(completion(happens_at)). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/Happy40.e',62). % range time 0 40 % From E: % % :-call_pel_directive(range(time,0,40)). :- call_pel_directive(range(time, 0, 40)). % range offset 1 1 :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/Happy40.e',62). % From E: % % :-call_pel_directive(range(offset,1,1)). :- call_pel_directive(range(offset, 1, 1)). %; End of file. :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/Happy40.e',65). % From E: % % :-call_pel_directive(translate(ending,'/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/Happy40.e.lps')). :- call_pel_directive(translate(ending, '/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/Happy40.e.lps')).