1:-include(library('ec_planner/ec_test_incl')).    2:-expects_dialect(pfc).    3 %  loading(always,'examples/Mueller2004b/TV1.e').
    4%;
    5%; Copyright (c) 2005 IBM Corporation and others.
    6%; All rights reserved. This program and the accompanying materials
    7%; are made available under the terms of the Common Public License v1.0
    8%; which accompanies this distribution, and is available at
    9%; http://www.eclipse.org/legal/cpl-v10.html
   10%;
   11%; Contributors:
   12%; IBM - Initial implementation
   13%;
   14%; @inproceedings{Mueller:2004b,
   15%;   author = "Erik T. Mueller",
   16%;   year = "2004",
   17%;   title = "A tool for satisfiability-based commonsense reasoning in the event calculus",
   18%;   editor = "Valerie Barr and Zdravko Markov",
   19%;   booktitle = "\uppercase{P}roceedings of the \uppercase{S}eventeenth \uppercase{I}nternational \uppercase{F}lorida \uppercase{A}rtificial \uppercase{I}ntelligence \uppercase{R}esearch \uppercase{S}ociety \uppercase{C}onference",
   20%;   pages = "147--152",
   21%;   address = "Menlo Park, CA",
   22%;   publisher = "AAAI Press",
   23%; }
   24%;
   25
   26% load foundations/Root.e
   27
   28% load foundations/EC.e
   29
   30% sort agent
   31==> sort(agent).
   32
   33% sort switch
   34==> sort(switch).
   35
   36% sort tv
   37==> sort(tv).
   38
   39% function TVOf(switch): tv
   40 %  functional_predicate(tVOf(switch,tv)).
   41==> mpred_prop(tVOf(switch,tv),functional_predicate).
   42==> meta_argtypes(tVOf(switch,tv)).
   43resultIsa(tVOf,tv).
   44
   45% fluent SwitchOn(switch)
   46 %  fluent(switchOn(switch)).
   47==> mpred_prop(switchOn(switch),fluent).
   48==> meta_argtypes(switchOn(switch)).
   49
   50% fluent TVOn(tv)
   51 %  fluent(tVOn(tv)).
   52==> mpred_prop(tVOn(tv),fluent).
   53==> meta_argtypes(tVOn(tv)).
   54
   55% fluent PluggedIn(tv)
   56 %  fluent(pluggedIn(tv)).
   57==> mpred_prop(pluggedIn(tv),fluent).
   58==> meta_argtypes(pluggedIn(tv)).
   59
   60% event TurnOn(agent,switch)
   61 %  event(turnOn(agent,switch)).
   62==> mpred_prop(turnOn(agent,switch),event).
   63==> meta_argtypes(turnOn(agent,switch)).
   64
   65% event TurnOff(agent,switch)
   66 %  event(turnOff(agent,switch)).
   67==> mpred_prop(turnOff(agent,switch),event).
   68==> meta_argtypes(turnOff(agent,switch)).
   69
   70
   71% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/examples/Mueller2004b/TV1.e:36
   72% [agent,switch,time]
   73 % Initiates(TurnOn(agent,switch),SwitchOn(switch),time).
   74axiom(initiates(turnOn(Agent, Switch), switchOn(Switch), Time),
   75    []).
   76
   77
   78% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/examples/Mueller2004b/TV1.e:38
   79% [agent,switch,tv,time]
   80% TVOf(switch)=tv & HoldsAt(PluggedIn(tv),time) ->
   81% Initiates(TurnOn(agent,switch),TVOn(tv),time).
   82% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/examples/Mueller2004b/TV1.e:40
   83axiom(initiates(turnOn(Agent, Switch), tVOn(Tv), Time),
   84   
   85    [ equals(tVOf(Switch), Tv),
   86      holds_at(pluggedIn(Tv), Time)
   87    ]).
   88
   89% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/examples/Mueller2004b/TV1.e:42
   90% agent James
   91% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/examples/Mueller2004b/TV1.e:43
   92==> t(agent,james).
   93
   94% switch Switch1
   95% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/examples/Mueller2004b/TV1.e:44
   96==> t(switch,switch1).
   97
   98% tv TV1
   99% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/examples/Mueller2004b/TV1.e:45
  100==> t(tv,tv1).
  101
  102
  103% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/examples/Mueller2004b/TV1.e:46
  104% TVOf(Switch1)=TV1.
  105tVOf(switch1,tv1).
  106
  107
  108% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/examples/Mueller2004b/TV1.e:47
  109% HoldsAt(PluggedIn(TV1),0).
  110axiom(initially(pluggedIn(tv1)),
  111    []).
  112
  113
  114% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/examples/Mueller2004b/TV1.e:48
  115% !HoldsAt(SwitchOn(Switch1),0).
  116 %  not(initially(switchOn(switch1))).
  117axiom(not(initially(switchOn(switch1))),
  118    []).
  119
  120
  121% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/examples/Mueller2004b/TV1.e:49
  122% !HoldsAt(TVOn(TV1),0).
  123 %  not(initially(tVOn(tv1))).
  124axiom(not(initially(tVOn(tv1))),
  125    []).
  126
  127
  128% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/examples/Mueller2004b/TV1.e:50
  129% Happens(TurnOn(James,Switch1),0).
  130axiom(happens(turnOn(james, switch1), t),
  131    [is_time(0)]).
  132
  133% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/examples/Mueller2004b/TV1.e:52
  134% range time 0 1
  135% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/examples/Mueller2004b/TV1.e:53
  136==> range(time,0,1).
  137
  138% range offset 1 1
  139% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/examples/Mueller2004b/TV1.e:54
  140==> range(offset,1,1).
  141%; End of file.