1:-include(library('ec_planner/ec_test_incl')). 2:-expects_dialect(pfc). 3 % loading(always,'ecnet/SmallFire.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%; SmallFire: matches, lighters, cigarettes, etc. 15%; 16 17% event Light(agent,physobj) 18 % event(light(agent,physobj)). 19==> mpred_prop(light(agent,physobj),event). 20==> meta_argtypes(light(agent,physobj)). 21 22% event LightWith(agent,physobj,physobj) 23 % event(lightWith(agent,physobj,physobj)). 24==> mpred_prop(lightWith(agent,physobj,physobj),event). 25==> meta_argtypes(lightWith(agent,physobj,physobj)). 26 27% event PutOut(agent,physobj) 28 % event(putOut(agent,physobj)). 29==> mpred_prop(putOut(agent,physobj),event). 30==> meta_argtypes(putOut(agent,physobj)). 31 32% event BlowOut(agent,physobj) 33 % event(blowOut(agent,physobj)). 34==> mpred_prop(blowOut(agent,physobj),event). 35==> meta_argtypes(blowOut(agent,physobj)). 36 37% fluent IsBurning(physobj) 38 % fluent(isBurning(physobj)). 39==> mpred_prop(isBurning(physobj),fluent). 40==> meta_argtypes(isBurning(physobj)). 41 42 43% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/SmallFire.e:19 44% [agent,physobj1,physobj2,time] 45% HoldsAt(IsBurning(physobj2),time) -> 46% Initiates(LightWith(agent,physobj1,physobj2), 47% IsBurning(physobj1), 48% time). 49% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/SmallFire.e:23 50axiom(initiates(lightWith(Agent, Physobj1, Physobj2), isBurning(Physobj1), Time), 51 [holds_at(isBurning(Physobj2), Time)]). 52 53 54% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/SmallFire.e:25 55% [agent,physobj1,physobj2,time] 56% Happens(LightWith(agent,physobj1,physobj2),time) -> 57% HoldsAt(Holding(agent,physobj1),time) & 58% HoldsAt(Holding(agent,physobj2),time) & 59% !HoldsAt(IsBurning(physobj1),time). 60% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/SmallFire.e:29 61axiom(requires(lightWith(Agent, Physobj1, Physobj2), Time), 62 63 [ holds_at(holding(Agent, Physobj1), Time), 64 holds_at(holding(Agent, Physobj2), Time), 65 not(holds_at(isBurning(Physobj1), Time)) 66 ]). 67 68 69% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/SmallFire.e:31 70% [agent,physobj,time] 71% Initiates(Light(agent,physobj), 72% IsBurning(physobj), 73% time). 74% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/SmallFire.e:34 75axiom(initiates(light(Agent, Physobj), isBurning(Physobj), Time), 76 []). 77 78 79% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/SmallFire.e:36 80% [agent,physobj,time] 81% Happens(Light(agent,physobj),time) -> 82% HoldsAt(Holding(agent,physobj),time) & 83% !HoldsAt(IsBurning(physobj),time). 84% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/SmallFire.e:39 85axiom(requires(light(Agent, Physobj), Time), 86 87 [ holds_at(holding(Agent, Physobj), Time), 88 not(holds_at(isBurning(Physobj), Time)) 89 ]). 90 91 92% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/SmallFire.e:41 93% [agent,physobj,time] 94% Terminates(PutOut(agent,physobj), 95% IsBurning(physobj), 96% time). 97% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/SmallFire.e:44 98axiom(terminates(putOut(Agent, Physobj), isBurning(Physobj), Time), 99 []). 100 101 102% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/SmallFire.e:46 103% [agent,physobj,time] 104% Happens(PutOut(agent,physobj),time) -> 105% HoldsAt(Holding(agent,physobj),time) & 106% HoldsAt(IsBurning(physobj),time). 107% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/SmallFire.e:49 108axiom(requires(putOut(Agent, Physobj), Time), 109 110 [ holds_at(holding(Agent, Physobj), Time), 111 holds_at(isBurning(Physobj), Time) 112 ]). 113 114 115% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/SmallFire.e:51 116% [agent,physobj,time] 117% Terminates(BlowOut(agent,physobj), 118% IsBurning(physobj), 119% time). 120% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/SmallFire.e:54 121axiom(terminates(blowOut(Agent, Physobj), isBurning(Physobj), Time), 122 []). 123 124 125% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/SmallFire.e:56 126% [agent,physobj,time] 127% Happens(BlowOut(agent,physobj),time) -> 128% HoldsAt(Holding(agent,physobj),time) & 129% HoldsAt(IsBurning(physobj),time). 130% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/SmallFire.e:59 131axiom(requires(blowOut(Agent, Physobj), Time), 132 133 [ holds_at(holding(Agent, Physobj), Time), 134 holds_at(isBurning(Physobj), Time) 135 ]). 136 137 138% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/SmallFire.e:61 139%; End of file.