1:-include(library('ec_planner/ec_test_incl')).    2:-expects_dialect(pfc).    3 %  loading(always,'ectest/TestBoxRoom.e').
    4%; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    5%; FILE: examples/Mueller2006/Chapter10/MovingNewspaperAndBox.e
    6%; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    7%;
    8%; Copyright (c) 2005 IBM Corporation and others.
    9%; All rights reserved. This program and the accompanying materials
   10%; are made available under the terms of the Common Public License v1.0
   11%; which accompanies this distribution, and is available in
   12%; http://www.eclipse.org/legal/cpl-v10.html
   13%;
   14%; Contributors:
   15%; IBM - Initial implementation
   16%;
   17%; @book{Mueller:2006,
   18%;   author = "Erik T. Mueller",
   19%;   year = "2006",
   20%;   title = "Commonsense Reasoning",
   21%;   address = "San Francisco",
   22%;   publisher = "Morgan Kaufmann/Elsevier",
   23%; }
   24%;
   25 
   26
   27% load foundations/Root.e
   28
   29% load foundations/EC.e
   30
   31% sort object
   32==> sort(object).
   33
   34% sort agent: object
   35==> subsort(agent,object).
   36
   37% sort physobj: object
   38==> subsort(physobj,object).
   39
   40% sort room: object
   41==> subsort(room,object).
   42
   43% fluent directlyIn(object,object)
 %  fluent(directlyIn(object,object)).
   44==> mpred_prop(directlyIn(object,object),fluent).
   45==> meta_argtypes(directlyIn(object,object)).
   46
   47% fluent inRoom(object,room)
 %  fluent(inRoom(object,room)).
   48==> mpred_prop(inRoom(object,room),fluent).
   49==> meta_argtypes(inRoom(object,room)).
   50
   51% noninertial inRoom
   52==> noninertial(inRoom).
   53%;; executable(move(agent,object,object,object))
   54
   55% agent Lisa
   56==> t(agent,lisa).
   57
   58% physobj Box, Newspaper
   59==> t(physobj,box).
   60==> t(physobj,newspaper).
   61
   62% room Kitchen, LivingRoom
   63==> t(room,kitchen).
   64==> t(room,livingRoom).
   65%; Sigma
   66%; RS10
   67% [agent,physobj1,physobj2,room,time]
   68% HoldsAt(directlyIn(agent,room),time) &
% 
   69% HoldsAt(directlyIn(physobj1,room),time) &
% 
   70% HoldsAt(inRoom(physobj2,room),time) ->
% 
   71% Initiates(move(agent,physobj1,room,physobj2),directlyIn(physobj1,physobj2),time).
   72axiom(initiates(move(Agent, Physobj1, Room, Physobj2), directlyIn(Physobj1, Physobj2), Time),
   73   
   74    [ holds_at(directlyIn(Agent, Room), Time),
   75      holds_at(directlyIn(Physobj1, Room), Time),
   76      holds_at(inRoom(Physobj2, Room), Time)
   77    ]).
   78
   79
   80% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:50
   81%; RS11
   82% [agent,physobj1,physobj2,room,time]
   83% HoldsAt(directlyIn(agent,room),time) &
% 
   84% HoldsAt(directlyIn(physobj1,room),time) &
% 
   85% HoldsAt(inRoom(physobj2,room),time) ->
% 
   86% Terminates(move(agent,physobj1,room,physobj2),directlyIn(physobj1,room),time).
   87% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:55
   88axiom(terminates(move(Agent, Physobj1, Room, Physobj2), directlyIn(Physobj1, Room), Time),
   89   
   90    [ holds_at(directlyIn(Agent, Room), Time),
   91      holds_at(directlyIn(Physobj1, Room), Time),
   92      holds_at(inRoom(Physobj2, Room), Time)
   93    ]).
   94
   95
   96% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:57
   97%; RS12
   98% [agent,physobj1,physobj2,room,time]
   99% HoldsAt(directlyIn(agent,room),time) ->
% 
  100% Initiates(move(agent,physobj1,physobj2,room),directlyIn(physobj1,room),time).
  101% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:60
  102axiom(initiates(move(Agent, Physobj1, Physobj2, Room), directlyIn(Physobj1, Room), Time),
  103    [holds_at(directlyIn(Agent, Room), Time)]).
  104
  105
  106% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:62
  107%; RS13
  108% [agent,physobj1,physobj2,room,time]
  109% HoldsAt(directlyIn(agent,room),time) ->
% 
  110% Terminates(move(agent,physobj1,physobj2,room),directlyIn(physobj1,physobj2),time).
  111% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:65
  112axiom(terminates(move(Agent, Physobj1, Physobj2, Room), directlyIn(Physobj1, Physobj2), Time),
  113    [holds_at(directlyIn(Agent, Room), Time)]).
  114
  115
  116% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:67
  117%; RS14
  118% [agent,room1,room2,time]
  119% HoldsAt(directlyIn(agent,room1),time) ->
% 
  120% Initiates(move(agent,agent,room1,room2),directlyIn(agent,room2),time).
  121% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:70
  122axiom(initiates(move(Agent, Agent, Room1, Room2), directlyIn(Agent, Room2), Time),
  123    [holds_at(directlyIn(Agent, Room1), Time)]).
  124
  125
  126% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:72
  127%; RS15
  128% [agent,room1,room2,time]
  129% HoldsAt(directlyIn(agent,room1),time) ->
% 
  130% Terminates(move(agent,agent,room1,room2),directlyIn(agent,room1),time).
  131% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:75
  132axiom(terminates(move(Agent, Agent, Room1, Room2), directlyIn(Agent, Room1), Time),
  133    [holds_at(directlyIn(Agent, Room1), Time)]).
  134
  135
  136% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:77
  137%; RS16
  138% [agent,physobj,room,time]
  139% HoldsAt(directlyIn(agent,room),time) &
% 
  140% HoldsAt(directlyIn(physobj,room),time) ->
% 
  141% Initiates(move(agent,physobj,room,agent),directlyIn(physobj,agent),time).
  142% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:81
  143axiom(initiates(move(Agent, Physobj, Room, Agent), directlyIn(Physobj, Agent), Time),
  144   
  145    [ holds_at(directlyIn(Agent, Room), Time),
  146      holds_at(directlyIn(Physobj, Room), Time)
  147    ]).
  148
  149
  150% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:83
  151%; RS17
  152% [agent,physobj,room,time]
  153% HoldsAt(directlyIn(agent,room),time) &
% 
  154% HoldsAt(directlyIn(physobj,room),time) ->
% 
  155% Terminates(move(agent,physobj,room,agent),directlyIn(physobj,room),time).
  156% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:87
  157axiom(terminates(move(Agent, Physobj, Room, Agent), directlyIn(Physobj, Room), Time),
  158   
  159    [ holds_at(directlyIn(Agent, Room), Time),
  160      holds_at(directlyIn(Physobj, Room), Time)
  161    ]).
  162
  163
  164% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:89
  165%; RS18
  166% [agent,physobj,room,time]
  167% HoldsAt(directlyIn(physobj,agent),time) &
% 
  168% HoldsAt(directlyIn(agent,room),time) ->
% 
  169% Initiates(move(agent,physobj,agent,room),directlyIn(physobj,room),time).
  170% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:93
  171axiom(initiates(move(Agent, Physobj, Agent, Room), directlyIn(Physobj, Room), Time),
  172   
  173    [ holds_at(directlyIn(Physobj, Agent), Time),
  174      holds_at(directlyIn(Agent, Room), Time)
  175    ]).
  176
  177
  178% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:95
  179%; RS19
  180% [agent,physobj,room,time]
  181% HoldsAt(directlyIn(physobj,agent),time) &
% 
  182% HoldsAt(directlyIn(agent,room),time) ->
% 
  183% Terminates(move(agent,physobj,agent,room),directlyIn(physobj,agent),time).
  184% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:99
  185axiom(terminates(move(Agent, Physobj, Agent, Room), directlyIn(Physobj, Agent), Time),
  186   
  187    [ holds_at(directlyIn(Physobj, Agent), Time),
  188      holds_at(directlyIn(Agent, Room), Time)
  189    ]).
  190
  191
  192% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:101
  193%; Delta
  194
  195
  196% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:103
  197% Happens(move(Lisa,Newspaper,LivingRoom,Box),0).
  198axiom(happens(move(lisa, newspaper, livingRoom, box), t),
  199    [is_time(0)]).
  200
  201
  202% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:104
  203% Happens(move(Lisa,Box,LivingRoom,Lisa),1).
  204axiom(happens(move(lisa, box, livingRoom, lisa), start),
  205    [is_time(1), b(t, start), ignore(t+1=start)]).
  206
  207
  208% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:105
  209% Happens(move(Lisa,Lisa,LivingRoom,Kitchen),2).
  210axiom(happens(move(lisa, lisa, livingRoom, kitchen), t2),
  211    [is_time(2), b(t, t2), ignore(t+2=t2)]).
  212
  213
  214% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:106
  215% Happens(move(Lisa,Box,Lisa,Kitchen),3).
  216axiom(happens(move(lisa, box, lisa, kitchen), t3),
  217    [is_time(3), b(t, t3), ignore(t+3=t3)]).
  218
  219
  220% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:107
  221% Happens(move(Lisa,Lisa,Kitchen,LivingRoom),4).
  222axiom(happens(move(lisa, lisa, kitchen, livingRoom), t4),
  223    [is_time(4), b(t, t4), ignore(t+4=t4)]).
  224
  225
  226% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:109
  227%; Psi
  228%; RS1
  229% [object,time]
  230 
  231% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:112
  232% !HoldsAt(directlyIn(object,object),time).
  233 %  not(holds_at(directlyIn(Object,Object),Time)).
  234axiom(not(holds_at(directlyIn(DirectlyIn_Param, DirectlyIn_Param), Time2)),
  235    []).
  236
  237
  238% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:114
  239%; RS2
  240% [object1,object2,time]
  241% HoldsAt(directlyIn(object1,object2),time) ->
% 
  242% !HoldsAt(directlyIn(object2,object1),time).
  243% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:117
  244axiom(not(holds_at(directlyIn(Object2, Object1), Time)),
  245    [holds_at(directlyIn(Object1, Object2), Time)]).
  246
  247
  248% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:119
  249%; RS3
  250% [object1,object2,object3,time]
  251% HoldsAt(directlyIn(object1,object2),time) &
% 
  252% HoldsAt(directlyIn(object2,object3),time) ->
% 
  253% !HoldsAt(directlyIn(object1,object3),time).
  254% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:123
  255axiom(not(holds_at(directlyIn(Object1, Object3), Time)),
  256   
  257    [ holds_at(directlyIn(Object1, Object2), Time),
  258      holds_at(directlyIn(Object2, Object3), Time)
  259    ]).
  260
  261
  262% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:125
  263%; RS4
  264% [object,object1,object2,time]
  265% HoldsAt(directlyIn(object,object1),time) &
% 
  266% HoldsAt(directlyIn(object,object2),time) ->
% 
  267% object1=object2.
  268% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:129
  269axiom(Object1=Object2,
  270   
  271    [ holds_at(directlyIn(Object, Object1), Time),
  272      holds_at(directlyIn(Object, Object2), Time)
  273    ]).
  274
  275
  276% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:131
  277%; RS7
  278% [object,room,time]
  279% HoldsAt(directlyIn(object,room),time) ->
% 
  280% HoldsAt(inRoom(object,room),time).
  281% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:134
  282axiom(holds_at(inRoom(Object, Room), Time),
  283    [holds_at(directlyIn(Object, Room), Time)]).
  284
  285
  286% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:136
  287%; RS8
  288% [object1,object2,room,time]
  289% HoldsAt(directlyIn(object1,object2),time) &
% 
  290% HoldsAt(inRoom(object2,room),time) ->
% 
  291% HoldsAt(inRoom(object1,room),time).
  292% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:140
  293axiom(holds_at(inRoom(Object1, Room), Time),
  294   
  295    [ holds_at(directlyIn(Object1, Object2), Time),
  296      holds_at(inRoom(Object2, Room), Time)
  297    ]).
  298
  299
  300% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:142
  301%; RS9
  302% [object,room1,room2,time]
  303% HoldsAt(inRoom(object,room1),time) &
% 
  304% HoldsAt(inRoom(object,room2),time) ->
% 
  305% room1=room2.
  306% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:146
  307axiom(Room1=Room2,
  308   
  309    [ holds_at(inRoom(Object, Room1), Time),
  310      holds_at(inRoom(Object, Room2), Time)
  311    ]).
  312
  313
  314% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:148
  315%; Gamma
  316
  317
  318% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:150
  319% HoldsAt(directlyIn(Lisa,LivingRoom),0).
  320axiom(initially(directlyIn(lisa, livingRoom)),
  321    []).
  322
  323
  324% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:151
  325% HoldsAt(directlyIn(Newspaper,LivingRoom),0).
  326axiom(initially(directlyIn(newspaper, livingRoom)),
  327    []).
  328
  329
  330% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:152
  331% HoldsAt(directlyIn(Box,LivingRoom),0).
  332axiom(initially(directlyIn(box, livingRoom)),
  333    []).
  334
  335
  336% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:154
  337%; added:                                                 
  338% [room1,room2,time]
  339 % !HoldsAt(inRoom(room1,room2),time).
  340 %  not(holds_at(inRoom(Room1,Room2),Time)).
  341% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:155
  342axiom(not(holds_at(inRoom(InRoom_Param, InRoom_Ret), Time3)),
  343    []).
  344
  345
  346% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:156
  347% [room,object,time]
  348 % !HoldsAt(directlyIn(room,object),time).
  349 %  not(holds_at(directlyIn(Room,Object),Time)).
  350axiom(not(holds_at(directlyIn(DirectlyIn_Param, DirectlyIn_Ret), Time3)),
  351    []).
  352
  353
  354% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:158
  355%; entailed:
  356%; HoldsAt(directlyIn(Lisa,LivingRoom),5).
  357%; HoldsAt(directlyIn(Box,Kitchen),5).
  358%; HoldsAt(inRoom(Newspaper,Kitchen),5).
  359
  360% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:163
  361% completion Happens
  362% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:164
  363==> completion(happens).
  364
  365% range time 0 5
  366% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:166
  367==> range(time,0,5).
  368
  369% range offset 1 1
  370% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ectest/TestBoxRoom.e:167
  371==> range(offset,1,1).
  372%; End of file.