:-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/ThielscherCircuit20.e',95). % From E: % % :-call_pel_directive(translate(unskipped,'/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/ThielscherCircuit40.e.lps')). :- call_pel_directive(translate(unskipped, '/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/ThielscherCircuit40.e.lps')). :-include(library('ec_planner/ec_test_incl')). :-expects_dialect(lps). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/ThielscherCircuit20.e',95). % From E: % % :-call_pel_directive(translate(begining,'/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/ThielscherCircuit40.e.lps')). :- call_pel_directive(translate(begining, '/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/ThielscherCircuit40.e.lps')). % Sat, 10 Oct 2020 15:31:55 GMT File: (0x559e4b401d00)%; %; 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{Thielscher:1997, %; author = "Michael Thielscher", %; year = "1997", %; title = "Ramification and causality", %; journal = "Artificial Intelligence", %; volume = "89", %; pages = "317--364", %; } %; %; @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: %; timestamps %; :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/ThielscherCircuit40.e',39). % option renaming off % From E: % % :-call_pel_directive(option(renaming,off)). :- call_pel_directive(option(renaming, off)). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/ThielscherCircuit40.e',41). % 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/ThielscherCircuit40.e',41). % 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/ThielscherCircuit40.e',43). % load foundations/ECCausal.e % From E: % % :-call_pel_directive(load('foundations/ECCausal.e')). :- call_pel_directive(load('foundations/ECCausal.e')). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/ThielscherCircuit40.e',45). % event LightOn() % From E: % % event(lightOn()). events([lightOn/0]). % event Close1() :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/ThielscherCircuit40.e',45). % From E: % % event(close1()). events([close1/0]). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/ThielscherCircuit40.e',47). % event Open2() % From E: % % event(open2()). events([open2/0]). % event CloseRelay() :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/ThielscherCircuit40.e',47). % From E: % % event(closeRelay()). events([closeRelay/0]). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/ThielscherCircuit40.e',50). % fluent Light() % From E: % % fluent(light()). fluents([light/0]). % fluent Switch1() :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/ThielscherCircuit40.e',50). % From E: % % fluent(switch1()). fluents([switch1/0]). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/ThielscherCircuit40.e',52). % fluent Switch2() % From E: % % fluent(switch2()). fluents([switch2/0]). % fluent Switch3() :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/ThielscherCircuit40.e',52). % From E: % % fluent(switch3()). fluents([switch3/0]). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/ThielscherCircuit40.e',54). % fluent Relay() % From E: % % fluent(relay()). fluents([relay/0]). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/ThielscherCircuit40.e',56). % [time] % Stopped(Light(),time) & % Initiated(Switch1(),time) & % Initiated(Switch2(),time) -> % Happens(LightOn(),time). % From E: % % '->'( % (stopped(light(),Time) , % initiated(switch1(),Time) , % initiated(switch2(),Time)), % happens_at(lightOn(),Time)). % [Time]. if stopped(light, Time), initiated(switch1, Time), initiated(switch2, Time)then happens_at(lightOn, Time). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/ThielscherCircuit40.e',56). /* reactive_rule([ stopped(light,Time), initiated(switch1,Time), initiated(switch2,Time) ], [happens_at(lightOn,Time)]). */ % "% =================================". % [time] % Started(Switch2(),time) & % Initiated(Relay(),time) -> % Happens(Open2(),time). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/ThielscherCircuit40.e',63). % From E: % % '->'( % (started(switch2(),Time) , % initiated(relay(),Time)), % happens_at(open2(),Time)). % [Time]. if started(switch2, Time), initiated(relay, Time)then happens_at(open2, Time). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/ThielscherCircuit40.e',63). /* reactive_rule([started(switch2,Time),initiated(relay,Time)], [happens_at(open2,Time)]). */ % "% =================================". % [time] % Stopped(Relay(),time) & % Initiated(Switch1(),time) & % Initiated(Switch3(),time) -> % Happens(CloseRelay(),time). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/ThielscherCircuit40.e',68). % From E: % % '->'( % (stopped(relay(),Time) , % initiated(switch1(),Time) , % initiated(switch3(),Time)), % happens_at(closeRelay(),Time)). % [Time]. if stopped(relay, Time), initiated(switch1, Time), initiated(switch3, Time)then happens_at(closeRelay, Time). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/ThielscherCircuit40.e',68). /* reactive_rule([ stopped(relay,Time), initiated(switch1,Time), initiated(switch3,Time) ], [happens_at(closeRelay,Time)]). */ % "% =================================". % [time] % Initiates(LightOn(),Light(),time). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/ThielscherCircuit40.e',72). % From E: % % initiates_at(lightOn(),light(),Time). % [Time]. lightOn initiates light. % initiated(happens(lightOn,Time_From,Time_Until),light,[]). % "% =================================". % [time] % Terminates(Open2(),Switch2(),time). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/ThielscherCircuit40.e',74). % From E: % % terminates_at(open2(),switch2(),Time). % [Time]. open2 terminates switch2. % terminated(happens(open2,Time_From,Time_Until),switch2,[]). % "% =================================". % [time] % Initiates(CloseRelay(),Relay(),time). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/ThielscherCircuit40.e',76). % From E: % % initiates_at(closeRelay(),relay(),Time). % [Time]. closeRelay initiates relay. :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/ThielscherCircuit40.e',76). /* initiated(happens(closeRelay,Time_From,Time_Until), relay, []). */ % "% =================================". % [time] % Initiates(Close1(),Switch1(),time). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/ThielscherCircuit40.e',78). % From E: % % initiates_at(close1(),switch1(),Time). % [Time]. close1 initiates switch1. % initiated(happens(close1,Time_From,Time_Until),switch1,[]). % "% =================================". % !HoldsAt(Switch1(),0). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/ThielscherCircuit40.e',80). % From E: % % holds_at(not(switch1()),0). initially not switch1. % initial_state([not(switch1)]). % "% =================================". :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/ThielscherCircuit40.e',82). % HoldsAt(Switch2(),0). % From E: % % holds_at(switch2(),0). initially switch2. % initial_state([switch2]). % "% =================================". % HoldsAt(Switch3(),0). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/ThielscherCircuit40.e',82). % From E: % % holds_at(switch3(),0). initially switch3. % initial_state([switch3]). % "% =================================". :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/ThielscherCircuit40.e',84). % !HoldsAt(Relay(),0). % From E: % % holds_at(not(relay()),0). initially not relay. % initial_state([not(relay)]). % "% =================================". % !HoldsAt(Light(),0). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/ThielscherCircuit40.e',84). % From E: % % holds_at(not(light()),0). initially not light. % initial_state([not(light)]). % "% =================================". % Happens(Close1(),25). :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/ThielscherCircuit40.e',86). % From E: % % happens_at(close1(),25). observe close1 at 25. % observe([close1],25). % "% =================================". % completion Happens :-was_s_l('/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/ThielscherCircuit40.e',88). % 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/ThielscherCircuit40.e',91). % 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/ThielscherCircuit40.e',91). % 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/ThielscherCircuit40.e',94). % From E: % % :-call_pel_directive(translate(ending,'/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/ThielscherCircuit40.e.lps')). :- call_pel_directive(translate(ending, '/pack/logicmoo_ec/ext/ec_sources/examples/ecasp-decreasoner/ThielscherCircuit40.e.lps')).