:-include(library('ec_planner/ec_test_incl')). :-expects_dialect(pfc). % Tue, 06 Oct 2020 04:57:59 GMT % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.pel:4 /* loading(load_e_pl, '/pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.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 %; %; @book{Mueller:2006, %; author = "Erik T. Mueller", %; year = "2006", %; title = "Commonsense Reasoning", %; address = "San Francisco", %; publisher = "Morgan Kaufmann/Elsevier", %; } %; % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:19 % load foundations/Root.e % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:20 % load foundations/EC.e % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:22 % sort agent % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:23 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:23 sort(agent). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:23 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:23 sort(agent). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:23 % sort clock % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:24 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:24 sort(clock). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:24 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:24 sort(clock). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:25 % fluent Beeping(clock) % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:26 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:26 fluent(beeping(clock)). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:26 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:26 fluents([beeping/1]). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:26 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:26 fluents([beeping/1]). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:26 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:26 meta_argtypes(beeping(clock)). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:26 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:26 meta_argtypes(beeping(clock)). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:26 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:26 mpred_prop(beeping(clock),fluent). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:26 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:26 mpred_prop(beeping(clock),fluent). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:26 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:26 meta_argtypes(beeping(clock)). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:26 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:26 meta_argtypes(beeping(clock)). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:26 % fluent AlarmTime(clock,time) % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:27 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:27 fluent(alarmTime(clock,time)). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:27 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:27 fluents([alarmTime/2]). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:27 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:27 fluents([alarmTime/2]). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:27 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:27 meta_argtypes(alarmTime(clock,time)). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:27 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:27 meta_argtypes(alarmTime(clock,time)). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:27 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:27 mpred_prop(alarmTime(clock,time),fluent). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:27 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:27 mpred_prop(alarmTime(clock,time),fluent). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:27 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:27 meta_argtypes(alarmTime(clock,time)). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:27 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:27 meta_argtypes(alarmTime(clock,time)). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:27 % fluent AlarmOn(clock) % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:28 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:28 fluent(alarmOn(clock)). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:28 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:28 fluents([alarmOn/1]). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:28 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:28 fluents([alarmOn/1]). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:28 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:28 meta_argtypes(alarmOn(clock)). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:28 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:28 meta_argtypes(alarmOn(clock)). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:28 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:28 mpred_prop(alarmOn(clock),fluent). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:28 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:28 mpred_prop(alarmOn(clock),fluent). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:28 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:28 meta_argtypes(alarmOn(clock)). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:28 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:28 meta_argtypes(alarmOn(clock)). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:29 % event SetAlarmTime(agent,clock,time) % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:30 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:30 event(setAlarmTime(agent,clock,time)). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:30 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:30 actions([setAlarmTime/3]). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:30 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:30 actions([setAlarmTime/3]). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:30 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:30 meta_argtypes(setAlarmTime(agent,clock,time)). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:30 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:30 meta_argtypes(setAlarmTime(agent,clock,time)). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:30 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:30 mpred_prop(setAlarmTime(agent,clock,time),event). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:30 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:30 mpred_prop(setAlarmTime(agent,clock,time),event). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:30 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:30 meta_argtypes(setAlarmTime(agent,clock,time)). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:30 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:30 meta_argtypes(setAlarmTime(agent,clock,time)). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:30 % event StartBeeping(clock) % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:31 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:31 event(startBeeping(clock)). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:31 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:31 events([startBeeping/1]). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:31 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:31 events([startBeeping/1]). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:31 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:31 meta_argtypes(startBeeping(clock)). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:31 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:31 meta_argtypes(startBeeping(clock)). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:31 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:31 mpred_prop(startBeeping(clock),event). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:31 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:31 mpred_prop(startBeeping(clock),event). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:31 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:31 meta_argtypes(startBeeping(clock)). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:31 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:31 meta_argtypes(startBeeping(clock)). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:31 % event TurnOnAlarm(agent,clock) % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:32 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:32 event(turnOnAlarm(agent,clock)). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:32 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:32 actions([turnOnAlarm/2]). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:32 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:32 actions([turnOnAlarm/2]). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:32 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:32 meta_argtypes(turnOnAlarm(agent,clock)). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:32 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:32 meta_argtypes(turnOnAlarm(agent,clock)). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:32 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:32 mpred_prop(turnOnAlarm(agent,clock),event). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:32 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:32 mpred_prop(turnOnAlarm(agent,clock),event). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:32 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:32 meta_argtypes(turnOnAlarm(agent,clock)). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:32 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:32 meta_argtypes(turnOnAlarm(agent,clock)). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:32 % event TurnOffAlarm(agent,clock) % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:33 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:33 event(turnOffAlarm(agent,clock)). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:33 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:33 actions([turnOffAlarm/2]). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:33 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:33 actions([turnOffAlarm/2]). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:33 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:33 meta_argtypes(turnOffAlarm(agent,clock)). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:33 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:33 meta_argtypes(turnOffAlarm(agent,clock)). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:33 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:33 mpred_prop(turnOffAlarm(agent,clock),event). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:33 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:33 mpred_prop(turnOffAlarm(agent,clock),event). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:33 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:33 meta_argtypes(turnOffAlarm(agent,clock)). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:33 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:33 meta_argtypes(turnOffAlarm(agent,clock)). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:34 % agent Nathan % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:35 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:35 t(agent,nathan). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:35 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:35 agent(nathan). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:35 % clock Clock % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:36 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:36 t(clock,clock). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:36 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:36 clock(clock). %; Sigma % [agent,clock,time1,time2,time] % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:40 % HoldsAt(AlarmTime(clock,time1),time) & % time1!=time2 -> % Initiates(SetAlarmTime(agent,clock,time2),AlarmTime(clock,time2),time). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:42 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:42 holds_at(alarmTime(Clock, Time1), Time), diff(Time1, Time2) -> initiates(setAlarmTime(Agent, Clock, Time2), alarmTime(Clock, Time2), Time). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:42 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:42 reactive_rule([ holds(alarmTime(Clock,Time1),Time), diff(Time1,Time2) ], [ initiates(setAlarmTime(Agent, Clock, Time2), at(alarmTime(Clock,Time2), Time)) ]). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:44 % [agent,clock,time1,time2,time] % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:45 % HoldsAt(AlarmTime(clock,time1),time) & % time1!=time2 -> % Terminates(SetAlarmTime(agent,clock,time2),AlarmTime(clock,time1),time). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:47 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:47 holds_at(alarmTime(Clock, Time1), Time), diff(Time1, Time2) -> terminates(setAlarmTime(Agent, Clock, Time2), alarmTime(Clock, Time1), Time). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:47 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:47 reactive_rule([ holds(alarmTime(Clock,Time1),Time), diff(Time1,Time2) ], [ terminates(setAlarmTime(Agent, Clock, Time2), at(alarmTime(Clock,Time1), Time)) ]). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:49 % [agent,clock,time] % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:50 % Initiates(TurnOnAlarm(agent,clock),AlarmOn(clock),time). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:50 /* [] -> ta(Time, tvs1=[Time], tvs2=[Time], initiates(turnOnAlarm(Agent, Clock), alarmOn(Clock), Time)). */ % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:50 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:50 initiates(turnOnAlarm(_,Turnonalarm), alarmOn(Turnonalarm), Initiates). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:50 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:50 initiated(happens(turnOnAlarm(_,Turnonalarm), Maptime, Happens), alarmOn(Turnonalarm), []). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:52 % [agent,clock,time] % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:53 % Terminates(TurnOffAlarm(agent,clock),AlarmOn(clock),time). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:53 /* [] -> ta(Time, tvs1=[Time], tvs2=[Time], terminates(turnOffAlarm(Agent, Clock), alarmOn(Clock), Time)). */ % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:53 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:53 terminates(turnOffAlarm(_,Turnoffalarm), alarmOn(Turnoffalarm), Terminates). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:53 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:53 terminated(happens(turnOffAlarm(_,Turnoffalarm), Maptime, Happens), alarmOn(Turnoffalarm), []). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:55 % [clock,time] % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:56 % Initiates(StartBeeping(clock),Beeping(clock),time). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:56 /* [] -> ta(Time, tvs1=[Time], tvs2=[Time], initiates(startBeeping(Clock), beeping(Clock), Time)). */ % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:56 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:56 initiates(startBeeping(Startbeeping), beeping(Startbeeping), Initiates). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:56 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:56 initiated(happens(startBeeping(Startbeeping), Maptime, Happens), beeping(Startbeeping), []). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:58 % [agent,clock,time] % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:59 % Terminates(TurnOffAlarm(agent,clock),Beeping(clock),time). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:59 /* [] -> ta(Time, tvs1=[Time], tvs2=[Time], terminates(turnOffAlarm(Agent, Clock), beeping(Clock), Time)). */ % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:59 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:59 terminates(turnOffAlarm(_,Turnoffalarm), beeping(Turnoffalarm), Terminates). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:59 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:59 terminated(happens(turnOffAlarm(_,Turnoffalarm), Maptime, Happens), beeping(Turnoffalarm), []). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:61 %; Delta % [clock,time] % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:64 % HoldsAt(AlarmTime(clock,time),time) & % HoldsAt(AlarmOn(clock),time) -> % Happens(StartBeeping(clock),time). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:66 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:66 holds_at(alarmTime(Clock, Time), Time), holds_at(alarmOn(Clock), Time) -> happens(startBeeping(Clock), Time). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:66 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:66 reactive_rule([ holds(alarmTime(Clock,Time),Time), holds(alarmOn(Clock),Time) ], [happens(startBeeping(Clock),Time)]). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:68 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:68 % Happens(SetAlarmTime(Nathan,Clock,2),0). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:68 /* [] -> ta(TaP_Num4_V, tvs1=[start], tvs2=[start], happens(setAlarmTime(nathan, clock, 2), start)). */ % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:68 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:68 happens(setAlarmTime(nathan,clock,2),start). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:68 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:68 observe(at(setAlarmTime(nathan,clock,2),start)). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:68 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:68 observe(at(setAlarmTime(nathan,clock,2),start)). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:69 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:69 % Happens(TurnOnAlarm(Nathan,Clock),1). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:69 /* [b(start, Maptime), ignore(start+1==Maptime)] -> ta(TaP_Num4_V, tvs1=[start+1], tvs2=[Maptime, start], happens(turnOnAlarm(nathan, clock), Maptime)). */ % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:69 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:69 b(start, Maptime2) -> happens(turnOnAlarm(nathan, clock), Maptime2). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:69 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:69 reactive_rule([b(start,Maptime2)], [happens(turnOnAlarm(nathan,clock),Maptime2)]). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:71 %; Psi % [clock,time1,time2,time] % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:74 % HoldsAt(AlarmTime(clock,time1),time) & % HoldsAt(AlarmTime(clock,time2),time) -> % time1=time2. % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:76 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:76 holds_at(alarmTime(Clock, Time1), Time), holds_at(alarmTime(Clock, Time2), Time) -> equals(Time1, Time2). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:76 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:76 reactive_rule([ holds(alarmTime(Clock,Time1),Time), holds(alarmTime(Clock,Time2),Time) ], [equals(Time1,Time2)]). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:78 %; Gamma % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:80 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:80 % !HoldsAt(AlarmOn(Clock),0). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:80 /* [] -> ta(TaP_Num4_V, tvs1=[], tvs2=[], initially(neg(alarmOn(clock)))). */ % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:80 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:80 initially(neg(alarmOn(clock))). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:80 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:80 initial_state([not(alarmOn(clock))]). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:81 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:81 % !HoldsAt(Beeping(Clock),0). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:81 /* [] -> ta(TaP_Num4_V, tvs1=[], tvs2=[], initially(neg(beeping(clock)))). */ % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:81 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:81 initially(neg(beeping(clock))). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:81 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:81 initial_state([not(beeping(clock))]). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:82 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:82 % HoldsAt(AlarmTime(Clock,3),0). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:82 /* [] -> ta(TaP_Num4_V, tvs1=[], tvs2=[], initially(alarmTime(clock, 3))). */ % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:82 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:82 initially(alarmTime(clock,3)). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:82 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:82 initial_state([alarmTime(clock,3)]). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:84 % completion Happens % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:85 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:85 completion(happens). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:85 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:85 completion(happens). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:86 % range time 0 3 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:87 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:87 range(time,0,3). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:87 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:87 range(time,0,3). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:87 % range offset 1 1 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:88 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:88 range(offset,1,1). % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:88 % From /pack/logicmoo_ec/ext/ec_sources/examples/Mueller2006/Chapter4/AlarmClock.e:88 range(offset,1,1). %; End of file.