1:-include(library('ec_planner/ec_test_incl')).    2:-expects_dialect(pfc).    3 %  loading(always,'ecnet/Vision.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%; The Vision representation deals with some simple aspects
   15%; of vision.
   16%;
   17%; agent looks at object.
   18
   19% event LookAt(agent,object)
   20 %  event(lookAt(agent,object)).
   21==> mpred_prop(lookAt(agent,object),event).
   22==> meta_argtypes(lookAt(agent,object)).
   23
   24
   25% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Vision.e:17
   26%; agent sees object.
   27
   28% fluent See(agent,object)
   29 %  fluent(see(agent,object)).
   30% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Vision.e:19
   31==> mpred_prop(see(agent,object),fluent).
   32==> meta_argtypes(see(agent,object)).
   33
   34
   35% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Vision.e:20
   36%; An effect axiom states that if an agent looks at
   37%; an object, the agent will see the object:
   38% [agent,object,time]
   39% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Vision.e:23
   40% Initiates(LookAt(agent,object),
   41%           See(agent,object),
   42%           time).
   43% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Vision.e:25
   44axiom(initiates(lookAt(Agent, Object), see(Agent, Object), Time),
   45    []).
   46
   47
   48% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Vision.e:27
   49%; A precondition axiom states that for
   50%; an agent to look at an object,
   51%; there must be a location such that
   52%; the agent is at the location and
   53%; the object is at the location, or
   54%; there must be a door such that
   55%; the agent is near the door,
   56%; the object is near the door, and
   57%; the door is open:
   58%;[agent,object,time]
   59%;Happens(LookAt(agent,object),time) ->
   60%;({location}
   61%; HoldsAt(At(agent,location),time) &
   62%; HoldsAt(At(object,location),time))|
   63%;({door}
   64%; HoldsAt(NearPortal(agent,door),time) &
   65%; HoldsAt(NearPortal(object,door),time) &
   66%; HoldsAt(DoorIsOpen(door),time)).
   67%; An effect axiom states that if an agent
   68%; looks at an object, the agent will no longer
   69%; see other objects:
   70% [agent,object1,object2,time]
   71% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Vision.e:50
   72% object1!=% object2 ->
   73% Terminates(LookAt(agent,object1),
   74%            See(agent,object2),
   75%            time).
   76% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Vision.e:53
   77axiom(terminates(lookAt(Agent, Object1), see(Agent, Object2), Time),
   78    [{dif(Object1, Object2)}]).
   79
   80
   81% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Vision.e:55
   82%; Several effect axioms state that if an
   83%; agent walks through a door, up a staircase, or down a staircase,
   84%; the agent no longer sees an object:
   85% [agent,door,object,time]
   86% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Vision.e:59
   87% Terminates(WalkThroughDoor12(agent,door),
   88%            See(agent,object),
   89%            time).
   90% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Vision.e:61
   91axiom(terminates(walkThroughDoor12(Agent, Door), see(Agent, Object), Time),
   92    []).
   93
   94
   95% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Vision.e:62
   96% [agent,door,object,time]
   97% Terminates(WalkThroughDoor21(agent,door),
   98%            See(agent,object),
   99%            time).
  100% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Vision.e:65
  101axiom(terminates(walkThroughDoor21(Agent, Door), see(Agent, Object), Time),
  102    []).
  103
  104
  105% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Vision.e:66
  106% [agent,door,object,time]
  107% Terminates(WalkUpStaircase(agent,door),
  108%            See(agent,object),
  109%            time).
  110% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Vision.e:69
  111axiom(terminates(walkUpStaircase(Agent, Door), see(Agent, Object), Time),
  112    []).
  113
  114
  115% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Vision.e:70
  116% [agent,door,object,time]
  117% Terminates(WalkDownStaircase(agent,door),
  118%            See(agent,object),
  119%            time).
  120% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Vision.e:73
  121axiom(terminates(walkDownStaircase(Agent, Door), see(Agent, Object), Time),
  122    []).
  123
  124
  125% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Vision.e:75
  126%; End of file.