1:-include(library('ec_planner/ec_test_incl')).    2:-expects_dialect(pfc).    3 %  loading(always,'ecnet/Smoking.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%; @article{Mueller:2004c,
   15%;   author = "Erik T. Mueller",
   16%;   year = "2004",
   17%;   title = "Understanding script-based stories using commonsense reasoning",
   18%;   journal = "Cognitive Systems Research",
   19%;   volume = "5",
   20%;   number = "4",
   21%;   pages = "307--340",
   22%; }
   23%;
   24
   25% option modeldiff on
   26:- set_ec_option(modeldiff, on).   27
   28% ignore Love, ThreatenedBy
   29ignore(love).
   30ignore(threatenedBy).
   31
   32% ignore LookOutOnto, Floor, BuildingOf, SkyOf, GroundOf
   33ignore(lookOutOnto).
   34ignore(floor).
   35ignore(buildingOf).
   36ignore(skyOf).
   37ignore(groundOf).
   38
   39% ignore Near, WalkFrom, WalkFromTo, RunFromTo
   40ignore(near).
   41ignore(walkFrom).
   42ignore(walkFromTo).
   43ignore(runFromTo).
   44
   45% ignore Side1, Side2
   46ignore(side1).
   47ignore(side2).
   48
   49% load foundations/Root.e
   50
   51% load foundations/EC.e
   52
   53% load answers/Mueller2003/Ontology.e
   54
   55% load answers/Mueller2004c/RTSpaceM.e
   56load('answers/Mueller2004c/RTSpaceM.e').
   57
   58% load answers/Mueller2004c/OTSpaceM.e
   59load('answers/Mueller2004c/OTSpaceM.e').
   60
   61% load answers/Mueller2004c/Container.e
   62
   63% load answers/Mueller2003/Sleep.e
   64
   65% load answers/Mueller2004c/SmallFire.e
   66
   67% load answers/Mueller2004c/Smoke.e
   68
   69% location Location1
   70==> t(location,location1).
   71
   72% portal DummyPortal1
   73==> t(portal,dummyPortal1).
   74
   75% agent Smoker1
   76==> t(agent,smoker1).
   77
   78% cigarette Cigarette1
   79==> t(cigarette,cigarette1).
   80
   81% container Package1
   82==> t(container,package1).
   83
   84% physobj Surface1
   85==> t(physobj,surface1).
   86
   87% physobj LightingDevice1
   88==> t(physobj,lightingDevice1).
   89
   90% ashtray AshTray1
   91==> t(ashtray,ashTray1).
   92
   93% physobj Trash1
   94==> t(physobj,trash1).
   95
   96% smoke Smoke1
   97==> t(smoke,smoke1).
   98%; prune
   99
  100% sort ona, onb
  101==> sort(ona).
  102==> sort(onb).
  103
  104% fluent! On(ona,onb)
  105 %  fluent(on(ona,onb)).
  106==> mpred_prop(on(ona,onb),fluent).
  107==> meta_argtypes(on(ona,onb)).
  108
  109% event! PlaceOn(agent,ona,onb)
  110 %  event(placeOn(agent,ona,onb)).
  111==> mpred_prop(placeOn(agent,ona,onb),event).
  112==> meta_argtypes(placeOn(agent,ona,onb)).
  113
  114% event! TakeOffOf(agent,ona,onb)
  115 %  event(takeOffOf(agent,ona,onb)).
  116==> mpred_prop(takeOffOf(agent,ona,onb),event).
  117==> meta_argtypes(takeOffOf(agent,ona,onb)).
  118
  119% ona! LightingDevice1, Package1, Cigarette1
  120==> t(ona,lightingDevice1).
  121==> t(ona,package1).
  122==> t(ona,cigarette1).
  123
  124% onb! Surface1, AshTray1
  125==> t(onb,surface1).
  126==> t(onb,ashTray1).
  127
  128% sort insidea, insideb
  129==> sort(insidea).
  130==> sort(insideb).
  131
  132% fluent! Inside(insidea,insideb)
  133 %  fluent(inside(insidea,insideb)).
  134==> mpred_prop(inside(insidea,insideb),fluent).
  135==> meta_argtypes(inside(insidea,insideb)).
  136
  137% event! PutInside(agent,insidea,insideb)
  138 %  event(putInside(agent,insidea,insideb)).
  139==> mpred_prop(putInside(agent,insidea,insideb),event).
  140==> meta_argtypes(putInside(agent,insidea,insideb)).
  141
  142% event! TakeOutOf(agent,insidea,insideb)
  143 %  event(takeOutOf(agent,insidea,insideb)).
  144==> mpred_prop(takeOutOf(agent,insidea,insideb),event).
  145==> meta_argtypes(takeOutOf(agent,insidea,insideb)).
  146
  147% insidea! Cigarette1
  148==> t(insidea,cigarette1).
  149
  150% insideb! Package1, Trash1
  151==> t(insideb,package1).
  152==> t(insideb,trash1).
  153
  154% sort lighta, lightb, lightc
  155==> sort(lighta).
  156==> sort(lightb).
  157==> sort(lightc).
  158
  159% event! LightWith(lighta,lightb,lightc)
  160 %  event(lightWith(lighta,lightb,lightc)).
  161==> mpred_prop(lightWith(lighta,lightb,lightc),event).
  162==> meta_argtypes(lightWith(lighta,lightb,lightc)).
  163
  164% lighta! Smoker1
  165==> t(lighta,smoker1).
  166
  167% lightb! Cigarette1
  168==> t(lightb,cigarette1).
  169
  170% lightc! LightingDevice1
  171==> t(lightc,lightingDevice1).
  172%; initial state
  173% [agent,object]
  174 % !HoldsAt(Holding(agent,object),0).
  175 %  not(initially(holding(Agent,Object))).
  176axiom(not(initially(holding(Holding_Param, Holding_Ret))),
  177    []).
  178
  179
  180% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Smoking.e:81
  181% [agent,physobj]
  182 % !HoldsAt(SittingOn(agent,physobj),0).
  183 %  not(initially(sittingOn(Agent,Physobj))).
  184axiom(not(initially(sittingOn(SittingOn_Param, SittingOn_Ret))),
  185    []).
  186
  187
  188% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Smoking.e:82
  189% [agent,physobj]
  190 % !HoldsAt(LyingOn(agent,physobj),0).
  191 %  not(initially(lyingOn(Agent,Physobj))).
  192axiom(not(initially(lyingOn(LyingOn_Param, LyingOn_Ret))),
  193    []).
  194
  195
  196% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Smoking.e:83
  197% HoldsAt(On(Package1,Surface1),0).
  198axiom(initially(on(package1, surface1)),
  199    []).
  200
  201
  202% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Smoking.e:84
  203% [physobj1,physobj2]
  204% !(physobj1=Package1 & physobj2=Surface1) ->
  205% !HoldsAt(On(physobj1, physobj2),0).
  206% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Smoking.e:86
  207axiom(not(holds_at(on(Physobj1, Physobj2), t)),
  208    [not(equals(Physobj1, package1))]).
  209axiom(not(holds_at(on(Physobj1, Physobj2), t)),
  210    [not(equals(Physobj2, surface1))]).
  211
  212
  213% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Smoking.e:87
  214% HoldsAt(Dressed(Smoker1),0).
  215axiom(initially(dressed(smoker1)),
  216    []).
  217
  218
  219% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Smoking.e:88
  220% HoldsAt(Awake(Smoker1),0).
  221axiom(initially(awake(smoker1)),
  222    []).
  223
  224
  225% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Smoking.e:89
  226% HoldsAt(Sleep3(Smoker1),0).
  227axiom(initially(sleep3(smoker1)),
  228    []).
  229
  230
  231% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Smoking.e:90
  232% HoldsAt(Standing(Smoker1),0).
  233axiom(initially(standing(smoker1)),
  234    []).
  235
  236
  237% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Smoking.e:91
  238% HoldsAt(CraveNicotine(Smoker1),0).
  239axiom(initially(craveNicotine(smoker1)),
  240    []).
  241
  242
  243% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Smoking.e:92
  244% HoldsAt(ContainerClosed(Package1),0).
  245axiom(initially(containerClosed(package1)),
  246    []).
  247
  248
  249% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Smoking.e:93
  250% [physobj]
  251 % !HoldsAt(IsBurning(physobj),0).
  252 %  not(initially(isBurning(Physobj))).
  253axiom(not(initially(isBurning(IsBurning_Ret))),
  254    []).
  255
  256
  257% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Smoking.e:94
  258% HoldsAt(Inside(Cigarette1,Package1),0).
  259axiom(initially(inside(cigarette1, package1)),
  260    []).
  261
  262
  263% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Smoking.e:95
  264% [physobj1,physobj2]
  265% !(physobj1=Cigarette1 & physobj2=Package1) ->
  266% !HoldsAt(Inside(physobj1, physobj2),0).
  267% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Smoking.e:97
  268axiom(not(holds_at(inside(Physobj1, Physobj2), t)),
  269    [not(equals(Physobj1, cigarette1))]).
  270axiom(not(holds_at(inside(Physobj1, Physobj2), t)),
  271    [not(equals(Physobj2, package1))]).
  272
  273
  274% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Smoking.e:99
  275%; narrative
  276
  277
  278% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Smoking.e:100
  279% Happens(TakeOffOf(Smoker1,Package1,Surface1),0).
  280axiom(happens(takeOffOf(smoker1, package1, surface1), t),
  281    [is_time(0)]).
  282
  283
  284% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Smoking.e:101
  285% Happens(ContainerOpen(Smoker1,Package1),1).
  286axiom(happens(containerOpen(smoker1, package1), start),
  287    [is_time(1), b(t, start), ignore(t+1=start)]).
  288
  289
  290% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Smoking.e:102
  291% Happens(TakeOutOf(Smoker1,Cigarette1,Package1),2).
  292axiom(happens(takeOutOf(smoker1, cigarette1, package1), t2),
  293    [is_time(2), b(t, t2), ignore(t+2=t2)]).
  294
  295
  296% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Smoking.e:103
  297% Happens(PickUp(Smoker1,LightingDevice1),3).
  298axiom(happens(pickUp(smoker1, lightingDevice1), t3),
  299    [is_time(3), b(t, t3), ignore(t+3=t3)]).
  300
  301
  302% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Smoking.e:104
  303% Happens(Light(Smoker1,LightingDevice1),4).
  304axiom(happens(light(smoker1, lightingDevice1), t4),
  305    [is_time(4), b(t, t4), ignore(t+4=t4)]).
  306
  307
  308% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Smoking.e:105
  309% Happens(LightWith(Smoker1,Cigarette1,LightingDevice1),5).
  310axiom(happens(lightWith(smoker1, cigarette1, lightingDevice1), t5),
  311    [is_time(5), b(t, t5), ignore(t+5=t5)]).
  312
  313
  314% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Smoking.e:106
  315% Happens(BlowOut(Smoker1,LightingDevice1),6).
  316axiom(happens(blowOut(smoker1, lightingDevice1), t6),
  317    [is_time(6), b(t, t6), ignore(t+6=t6)]).
  318
  319
  320% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Smoking.e:107
  321% Happens(PlaceOn(Smoker1,LightingDevice1,Surface1),7).
  322axiom(happens(placeOn(smoker1, lightingDevice1, surface1), t7),
  323    [is_time(7), b(t, t7), ignore(t+7=t7)]).
  324
  325
  326% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Smoking.e:108
  327% Happens(PlaceOn(Smoker1,Package1,Surface1),8).
  328axiom(happens(placeOn(smoker1, package1, surface1), t8),
  329    [is_time(8), b(t, t8), ignore(t+8=t8)]).
  330
  331
  332% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Smoking.e:109
  333% Happens(Puff(Smoker1,Cigarette1),9).
  334axiom(happens(puff(smoker1, cigarette1), t9),
  335    [is_time(9), b(t, t9), ignore(t+9=t9)]).
  336
  337
  338% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Smoking.e:110
  339% Happens(BlowOutSmoke(Smoker1,Smoke1),10).
  340axiom(happens(blowOutSmoke(smoker1, smoke1), t10),
  341    [is_time(10), b(t, t10), ignore(t+10=t10)]).
  342
  343
  344% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Smoking.e:111
  345% Happens(PlaceOn(Smoker1,Cigarette1,AshTray1),11).
  346axiom(happens(placeOn(smoker1, cigarette1, ashTray1), t11),
  347    [is_time(11), b(t, t11), ignore(t+11=t11)]).
  348
  349
  350% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Smoking.e:112
  351% Happens(TakeOffOf(Smoker1,Cigarette1,AshTray1),12).
  352axiom(happens(takeOffOf(smoker1, cigarette1, ashTray1), t12),
  353    [is_time(12), b(t, t12), ignore(t+12=t12)]).
  354
  355
  356% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Smoking.e:113
  357% Happens(Puff(Smoker1,Cigarette1),13).
  358axiom(happens(puff(smoker1, cigarette1), t13),
  359    [is_time(13), b(t, t13), ignore(t+13=t13)]).
  360
  361
  362% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Smoking.e:114
  363% Happens(PutOut(Smoker1,Cigarette1),14).
  364axiom(happens(putOut(smoker1, cigarette1), t14),
  365    [is_time(14), b(t, t14), ignore(t+14=t14)]).
  366
  367
  368% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Smoking.e:115
  369% Happens(PutInside(Smoker1,Cigarette1,Trash1),15).
  370axiom(happens(putInside(smoker1, cigarette1, trash1), t15),
  371    [is_time(15), b(t, t15), ignore(t+15=t15)]).
  372
  373% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Smoking.e:117
  374% range time 0 16
  375% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Smoking.e:118
  376==> range(time,0,16).
  377
  378% range offset 0 0
  379% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Smoking.e:119
  380==> range(offset,0,0).
  381
  382% range diameter 0 0
  383% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Smoking.e:120
  384==> range(diameter,0,0).
  385
  386% completion Happens
  387% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Smoking.e:122
  388==> completion(happens).
  389%; End of file.