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.