1:-include(library('ec_planner/ec_test_incl')). 2:-expects_dialect(pfc). 3 % loading(always,'ecnet/RTSpace.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%; RTSpace: room-scale topological space
15%;
16%; We use topological and metric representations of space,
17%; at two levels of granularity---room-scale and object-scale.
18%; The RTSpace representation deals with topological space at
19%; the scale of rooms and outdoor locations.
20%; This representation of space consists of locations, which
21%; are connected by portals. There are two types of locations:
22%; rooms and outside areas (outsides).
23%;
24%; object is at location.
25
26% fluent At(object,location)
27 % fluent(at(object,location)).
28==> mpred_prop(at(object,location),fluent).
29==> meta_argtypes(at(object,location)).
30
32manualrelease(at).
33
34
41
42 46
47 53axiom(releasedAt(at(At_Param, Location5), Time6),
54
55 [ partOf(At_Param, Some_Param),
56 some(Some_Param,
57 '$kolem_Fn_183'(At_Param, Location5, Time6))
58 ]).
59
60 65axiom(not(partOf(PartOf_Param, Some_Param12)),
66
67 [ not(releasedAt(at(PartOf_Param, Location9), Time10)),
68 some(Some_Param12,
69 '$kolem_Fn_183'(PartOf_Param, Location9, Time10))
70 ]).
71
72 76axiom(not(some(Some_Param15, '$kolem_Fn_183'(Fn_183_Param, Location13, Time14))),
77
78 [ not(releasedAt(at(Fn_183_Param, Location13), Time14)),
79 partOf(Fn_183_Param, Some_Param15)
80 ]).
81
82
92axiom(Location1=Location2,
93
94 [ holds_at(at(Object, Location1), Time),
95 holds_at(at(Object, Location2), Time)
96 ]).
97
98
99% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:36
100%; connectivity
101%; Side one of portal is location.
102
103% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:39
104% function Side1(portal): location
105 % functional_predicate(side1(portal,location)).
106% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:40
107==> mpred_prop(side1(portal,location),functional_predicate).
108==> meta_argtypes(side1(portal,location)).
109resultIsa(side1,location).
110%; Side two of portal is location.
111
112% function Side2(portal): location
113 % functional_predicate(side2(portal,location)).
114% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:42
115==> mpred_prop(side2(portal,location),functional_predicate).
116==> meta_argtypes(side2(portal,location)).
117resultIsa(side2,location).
118%; The building of room is building.
119
120% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:44
121% function BuildingOf(room): building
122 % functional_predicate(buildingOf(room,building)).
123% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:45
124==> mpred_prop(buildingOf(room,building),functional_predicate).
125==> meta_argtypes(buildingOf(room,building)).
126resultIsa(buildingOf,building).
127%; object is at a location that has portal.
128
129% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:47
130% fluent NearPortal(object,portal)
131 % fluent(nearPortal(object,portal)).
132% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:48
133==> mpred_prop(nearPortal(object,portal),fluent).
134==> meta_argtypes(nearPortal(object,portal)).
135
136% noninertial NearPortal
137% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:49
138==> noninertial(nearPortal).
151
152 156
157 173axiom(not(some(Location6, '$kolem_Fn_184'(Fn_184_Param, NearPortal_Ret, Time5))),
174
175 [ not(equals(side1(NearPortal_Ret), Location6)),
176 not(equals(side2(NearPortal_Ret), Location6)),
177 holds_at(nearPortal(Fn_184_Param, NearPortal_Ret),
178 Time5)
179 ]).
180axiom(not(some(Location6, '$kolem_Fn_184'(Fn_184_Param, NearPortal_Ret, Time5))),
181
182 [ not(holds_at(at(Fn_184_Param, Location6), Time5)),
183 holds_at(nearPortal(Fn_184_Param, NearPortal_Ret),
184 Time5)
185 ]).
186axiom(not(some(Location6, '$kolem_Fn_184'(Fn_184_Param, NearPortal_Ret, Time5))),
187
188 [ equals(side1(NearPortal_Ret), Location6),
189 not(holds_at(nearPortal(Fn_184_Param, NearPortal_Ret),
190 Time5)),
191 holds_at(at(Fn_184_Param, Location6), Time5)
192 ]).
193axiom(not(some(Location6, '$kolem_Fn_184'(Fn_184_Param, NearPortal_Ret, Time5))),
194
195 [ equals(side2(NearPortal_Ret), Location6),
196 not(holds_at(nearPortal(Fn_184_Param, NearPortal_Ret),
197 Time5)),
198 holds_at(at(Fn_184_Param, Location6), Time5)
199 ]).
200
201 211axiom(not(holds_at(nearPortal(NearPortal_Param, NearPortal_Ret12), Time9)),
212
213 [ not(equals(side1(NearPortal_Ret12), Location10)),
214 not(equals(side2(NearPortal_Ret12), Location10)),
215 some(Location10,
216 '$kolem_Fn_184'(NearPortal_Param,
217 NearPortal_Ret12,
218 Time9))
219 ]).
220axiom(not(holds_at(nearPortal(NearPortal_Param, NearPortal_Ret12), Time9)),
221
222 [ not(holds_at(at(NearPortal_Param, Location10), Time9)),
223 some(Location10,
224 '$kolem_Fn_184'(NearPortal_Param,
225 NearPortal_Ret12,
226 Time9))
227 ]).
228
229 236axiom(equals(side1(Side1_Ret), Some_Param),
237
238 [ not(equals(side2(Side1_Ret), Some_Param)),
239 holds_at(nearPortal(NearPortal_Param14, Side1_Ret),
240 Time13),
241 some(Some_Param,
242 '$kolem_Fn_184'(NearPortal_Param14,
243 Side1_Ret,
244 Time13))
245 ]).
246
247 254axiom(equals(side2(Side2_Ret), Some_Param19),
255
256 [ not(equals(side1(Side2_Ret), Some_Param19)),
257 holds_at(nearPortal(NearPortal_Param18, Side2_Ret),
258 Time17),
259 some(Some_Param19,
260 '$kolem_Fn_184'(NearPortal_Param18,
261 Side2_Ret,
262 Time17))
263 ]).
264
265 270axiom(holds_at(at(At_Param, Location21), Time22),
271
272 [ holds_at(nearPortal(At_Param, NearPortal_Ret24), Time22),
273 some(Location21,
274 '$kolem_Fn_184'(At_Param, NearPortal_Ret24, Time22))
275 ]).
276
277 288axiom(holds_at(nearPortal(NearPortal_Param27, NearPortal_Ret28), Time25),
289
290 [ equals(side1(NearPortal_Ret28), Location26),
291 holds_at(at(NearPortal_Param27, Location26), Time25),
292 some(Location26,
293 '$kolem_Fn_184'(NearPortal_Param27,
294 NearPortal_Ret28,
295 Time25))
296 ]).
297axiom(holds_at(nearPortal(NearPortal_Param27, NearPortal_Ret28), Time25),
298
299 [ equals(side2(NearPortal_Ret28), Location26),
300 holds_at(at(NearPortal_Param27, Location26), Time25),
301 some(Location26,
302 '$kolem_Fn_184'(NearPortal_Param27,
303 NearPortal_Ret28,
304 Time25))
305 ]).
306
307 315axiom(not(holds_at(at(At_Param31, Location29), Time30)),
316
317 [ equals(side1(Side1_Ret32), Location29),
318 not(holds_at(nearPortal(At_Param31, Side1_Ret32),
319 Time30)),
320 some(Location29,
321 '$kolem_Fn_184'(At_Param31, Side1_Ret32, Time30))
322 ]).
323axiom(not(holds_at(at(At_Param31, Location29), Time30)),
324
325 [ equals(side2(Side1_Ret32), Location29),
326 not(holds_at(nearPortal(At_Param31, Side1_Ret32),
327 Time30)),
328 some(Location29,
329 '$kolem_Fn_184'(At_Param31, Side1_Ret32, Time30))
330 ]).
331
332 338axiom(not(equals(side1(Side1_Ret36), Location33)),
339
340 [ holds_at(at(At_Param35, Location33), Time34),
341 not(holds_at(nearPortal(At_Param35, Side1_Ret36),
342 Time34)),
343 some(Location33,
344 '$kolem_Fn_184'(At_Param35, Side1_Ret36, Time34))
345 ]).
346
347 353axiom(not(equals(side2(Side2_Ret40), Location37)),
354
355 [ holds_at(at(At_Param39, Location37), Time38),
356 not(holds_at(nearPortal(At_Param39, Side2_Ret40),
357 Time38)),
358 some(Location37,
359 '$kolem_Fn_184'(At_Param39, Side2_Ret40, Time38))
360 ]).
361
362
363% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:61
364%; locking and unlocking doors
365%; agent unlocks door.
366
367% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:64
368% event DoorUnlock(agent,door)
369 % event(doorUnlock(agent,door)).
370% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:65
371==> mpred_prop(doorUnlock(agent,door),event).
372==> meta_argtypes(doorUnlock(agent,door)).
373
374
375% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:65
376%; agent locks door.
377
378% event DoorLock(agent,door)
379 % event(doorLock(agent,door)).
380% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:67
381==> mpred_prop(doorLock(agent,door),event).
382==> meta_argtypes(doorLock(agent,door)).
383
384
385% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:67
386%; door is unlocked.
387
388% fluent DoorUnlocked(door)
389 % fluent(doorUnlocked(door)).
390% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:69
391==> mpred_prop(doorUnlocked(door),fluent).
392==> meta_argtypes(doorUnlocked(door)).
393
394
408axiom(requires(doorUnlock(Agent, Door), Time),
409
410 [ holds_at(awake(Agent), Time),
411 not(holds_at(doorUnlocked(Door), Time)),
412 holds_at(nearPortal(Agent, Door), Time)
413 ]).
414
415
423axiom(initiates(doorUnlock(Agent, Door), doorUnlocked(Door), Time),
424 []).
425
426
440axiom(requires(doorLock(Agent, Door), Time),
441
442 [ holds_at(awake(Agent), Time),
443 holds_at(doorUnlocked(Door), Time),
444 holds_at(nearPortal(Agent, Door), Time)
445 ]).
446
447
455axiom(terminates(doorLock(Agent, Door), doorUnlocked(Door), Time),
456 []).
457
458
465axiom(holds_at(doorUnlocked(Door), Time),
466 [holds_at(doorIsOpen(Door), Time)]).
467
468
469% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:109
470%; opening and closing doors
471%; agent opens door.
472
473% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:112
474% event DoorOpen(agent,door)
475 % event(doorOpen(agent,door)).
476% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:113
477==> mpred_prop(doorOpen(agent,door),event).
478==> meta_argtypes(doorOpen(agent,door)).
479
480
481% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:113
482%; agent closes door.
483
484% event DoorClose(agent,door)
485 % event(doorClose(agent,door)).
486% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:115
487==> mpred_prop(doorClose(agent,door),event).
488==> meta_argtypes(doorClose(agent,door)).
489
490
491% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:115
492%; door is open.
493
494% fluent DoorIsOpen(door)
495 % fluent(doorIsOpen(door)).
496% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:117
497==> mpred_prop(doorIsOpen(door),fluent).
498==> meta_argtypes(doorIsOpen(door)).
499
500
516axiom(requires(doorOpen(Agent, Door), Time),
517
518 [ holds_at(awake(Agent), Time),
519 not(holds_at(doorIsOpen(Door), Time)),
520 holds_at(doorUnlocked(Door), Time),
521 holds_at(nearPortal(Agent, Door), Time)
522 ]).
523
524
532axiom(initiates(doorOpen(Agent, Door), doorIsOpen(Door), Time),
533 []).
534
535
551axiom(requires(doorClose(Agent, Door), Time),
552
553 [ holds_at(awake(Agent), Time),
554 holds_at(doorIsOpen(Door), Time),
555 holds_at(doorUnlocked(Door), Time),
556 holds_at(nearPortal(Agent, Door), Time)
557 ]).
558
559
567axiom(terminates(doorClose(Agent, Door), doorIsOpen(Door), Time),
568 []).
569
570
571% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:156
572%; passing through doors
573%; agent walks through side one of door.
574
575% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:159
576% event WalkThroughDoor12(agent,door)
577 % event(walkThroughDoor12(agent,door)).
578% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:160
579==> mpred_prop(walkThroughDoor12(agent,door),event).
580==> meta_argtypes(walkThroughDoor12(agent,door)).
581
582
583% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:160
584%; agent walks through side two of door.
585
586% event WalkThroughDoor21(agent,door)
587 % event(walkThroughDoor21(agent,door)).
588% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:162
589==> mpred_prop(walkThroughDoor21(agent,door),event).
590==> meta_argtypes(walkThroughDoor21(agent,door)).
591
592
608axiom(requires(walkThroughDoor12(Agent, Door), Time),
609
610 [ holds_at(awake(Agent), Time),
611 holds_at(standing(Agent), Time),
612 holds_at(doorIsOpen(Door), Time),
613 holds_at(at(Agent, side1(Door)), Time)
614 ]).
615
616
625axiom(requires(walkThroughDoor21(Agent, Door), Time),
626
627 [ holds_at(awake(Agent), Time),
628 holds_at(standing(Agent), Time),
629 holds_at(doorIsOpen(Door), Time),
630 holds_at(at(Agent, side2(Door)), Time)
631 ]).
632
633
643axiom(initiates(walkThroughDoor12(Agent, Door), at(Agent, Location), Time),
644 [equals(side2(Door), Location)]).
645
646
652axiom(initiates(walkThroughDoor21(Agent, Door), at(Agent, Location), Time),
653 [equals(side1(Door), Location)]).
654
655
661axiom(terminates(walkThroughDoor12(Agent, Door), at(Agent, Location), Time),
662 [equals(side1(Door), Location)]).
663
664
670axiom(terminates(walkThroughDoor21(Agent, Door), at(Agent, Location), Time),
671 [equals(side2(Door), Location)]).
672
673
674% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:202
675%; walking from one end of a street to another
676%; agent walks from the first end of street to the second end.
677
678% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:205
679% event WalkStreet12(agent,street)
680 % event(walkStreet12(agent,street)).
681% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:206
682==> mpred_prop(walkStreet12(agent,street),event).
683==> meta_argtypes(walkStreet12(agent,street)).
684
685
686% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:206
687%; agent walks from the second end of street to the first end.
688
689% event WalkStreet21(agent,street)
690 % event(walkStreet21(agent,street)).
691% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:208
692==> mpred_prop(walkStreet21(agent,street),event).
693==> meta_argtypes(walkStreet21(agent,street)).
694
695
709axiom(requires(walkStreet12(Agent, Street), Time),
710
711 [ holds_at(awake(Agent), Time),
712 holds_at(standing(Agent), Time),
713 holds_at(at(Agent, side1(Street)), Time)
714 ]).
715
716
724axiom(requires(walkStreet21(Agent, Street), Time),
725
726 [ holds_at(awake(Agent), Time),
727 holds_at(standing(Agent), Time),
728 holds_at(at(Agent, side2(Street)), Time)
729 ]).
730
731
741axiom(initiates(walkStreet12(Agent, Street), at(Agent, Location), Time),
742 [equals(side2(Street), Location)]).
743
744
750axiom(initiates(walkStreet21(Agent, Street), at(Agent, Location), Time),
751 [equals(side1(Street), Location)]).
752
753
759axiom(terminates(walkStreet12(Agent, Street), at(Agent, Location), Time),
760 [equals(side1(Street), Location)]).
761
762
768axiom(terminates(walkStreet21(Agent, Street), at(Agent, Location), Time),
769 [equals(side2(Street), Location)]).
770
771
772% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:245
773%; floors
774%; The floor of room is integer.
775
776% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:248
777% function Floor(room): integer
778 % functional_predicate(floor(room,integer)).
779% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:249
780==> mpred_prop(floor(room,integer),functional_predicate).
781==> meta_argtypes(floor(room,integer)).
782resultIsa(floor,integer).
783%; walking up and down staircases
784%; agent walks down staircase.
785
786% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:253
787% event WalkDownStaircase(agent,staircase)
788 % event(walkDownStaircase(agent,staircase)).
789% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:254
790==> mpred_prop(walkDownStaircase(agent,staircase),event).
791==> meta_argtypes(walkDownStaircase(agent,staircase)).
792
793
794% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:254
795%; agent walks up staircase.
796
797% event WalkUpStaircase(agent,staircase)
798 % event(walkUpStaircase(agent,staircase)).
799% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:256
800==> mpred_prop(walkUpStaircase(agent,staircase),event).
801==> meta_argtypes(walkUpStaircase(agent,staircase)).
802
803
816axiom(requires(walkDownStaircase(Agent, Staircase), Time),
817
818 [ holds_at(awake(Agent), Time),
819 holds_at(standing(Agent), Time),
820 holds_at(at(Agent, side2(Staircase)), Time)
821 ]).
822
823
831axiom(requires(walkUpStaircase(Agent, Staircase), Time),
832
833 [ holds_at(awake(Agent), Time),
834 holds_at(standing(Agent), Time),
835 holds_at(at(Agent, side1(Staircase)), Time)
836 ]).
837
838
848axiom(initiates(walkDownStaircase(Agent, Staircase), at(Agent, Room), Time),
849 [equals(side1(Staircase), Room)]).
850
851
857axiom(terminates(walkDownStaircase(Agent, Staircase), at(Agent, Room), Time),
858 [equals(side2(Staircase), Room)]).
859
860
866axiom(initiates(walkUpStaircase(Agent, Staircase), at(Agent, Room), Time),
867 [equals(side2(Staircase), Room)]).
868
869
875axiom(terminates(walkUpStaircase(Agent, Staircase), at(Agent, Room), Time),
876 [equals(side1(Staircase), Room)]).
877
878
887axiom(holds_at(dressed(Agent), Time),
888 [holds_at(at(Agent, Outside), Time)]).
889
890
891% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:298
892%; room looks out onto outside.
893
894% function LookOutOnto(room): outside
895 % functional_predicate(lookOutOnto(room,outside)).
896% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:300
897==> mpred_prop(lookOutOnto(room,outside),functional_predicate).
898==> meta_argtypes(lookOutOnto(room,outside)).
899resultIsa(lookOutOnto,outside).
900%; location1 is adjacent to location2.
901
902% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:302
903% predicate Adjacent(location,location)
904 % predicate(adjacent(location,location)).
905% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:303
906==> mpred_prop(adjacent(location,location),predicate).
907==> meta_argtypes(adjacent(location,location)).
908
909
915
924
925 929
930 947axiom(not(some(Some_Param, '$kolem_Fn_185'(Fn_185_Param, Fn_185_Ret))),
948
949 [ equals(side1(Some_Param), Fn_185_Param),
950 equals(side2(Some_Param), Fn_185_Ret),
951 not(adjacent(Fn_185_Param, Fn_185_Ret))
952 ]).
953axiom(not(some(Some_Param, '$kolem_Fn_185'(Fn_185_Param, Fn_185_Ret))),
954
955 [ equals(side2(Some_Param), Fn_185_Param),
956 equals(side1(Some_Param), Fn_185_Ret),
957 not(adjacent(Fn_185_Param, Fn_185_Ret))
958 ]).
959axiom(not(some(Some_Param, '$kolem_Fn_185'(Fn_185_Param, Fn_185_Ret))),
960
961 [ not(equals(side2(Some_Param), Fn_185_Param)),
962 not(equals(side1(Some_Param), Fn_185_Param)),
963 adjacent(Fn_185_Param, Fn_185_Ret)
964 ]).
965axiom(not(some(Some_Param, '$kolem_Fn_185'(Fn_185_Param, Fn_185_Ret))),
966
967 [ not(equals(side1(Some_Param), Fn_185_Ret)),
968 not(equals(side1(Some_Param), Fn_185_Param)),
969 adjacent(Fn_185_Param, Fn_185_Ret)
970 ]).
971axiom(not(some(Some_Param, '$kolem_Fn_185'(Fn_185_Param, Fn_185_Ret))),
972
973 [ not(equals(side2(Some_Param), Fn_185_Param)),
974 not(equals(side2(Some_Param), Fn_185_Ret)),
975 adjacent(Fn_185_Param, Fn_185_Ret)
976 ]).
977axiom(not(some(Some_Param, '$kolem_Fn_185'(Fn_185_Param, Fn_185_Ret))),
978
979 [ not(equals(side1(Some_Param), Fn_185_Ret)),
980 not(equals(side2(Some_Param), Fn_185_Ret)),
981 adjacent(Fn_185_Param, Fn_185_Ret)
982 ]).
983
984 993axiom(adjacent(Adjacent_Param, Adjacent_Ret),
994
995 [ equals(side1(Some_Param8), Adjacent_Param),
996 equals(side2(Some_Param8), Adjacent_Ret),
997 some(Some_Param8,
998 '$kolem_Fn_185'(Adjacent_Param, Adjacent_Ret))
999 ]).
1000axiom(adjacent(Adjacent_Param, Adjacent_Ret),
1001
1002 [ equals(side2(Some_Param8), Adjacent_Param),
1003 equals(side1(Some_Param8), Adjacent_Ret),
1004 some(Some_Param8,
1005 '$kolem_Fn_185'(Adjacent_Param, Adjacent_Ret))
1006 ]).
1007
1008 1014axiom(not(equals(side1(Some_Param11), Adjacent_Param10)),
1015
1016 [ equals(side2(Some_Param11), Equals_Ret),
1017 not(adjacent(Adjacent_Param10, Equals_Ret)),
1018 some(Some_Param11,
1019 '$kolem_Fn_185'(Adjacent_Param10, Equals_Ret))
1020 ]).
1021
1022 1028axiom(not(equals(side2(Some_Param14), Equals_Ret15)),
1029
1030 [ equals(side1(Some_Param14), Adjacent_Param13),
1031 not(adjacent(Adjacent_Param13, Equals_Ret15)),
1032 some(Some_Param14,
1033 '$kolem_Fn_185'(Adjacent_Param13, Equals_Ret15))
1034 ]).
1035
1036 1042axiom(not(equals(side2(Some_Param17), Adjacent_Param16)),
1043
1044 [ equals(side1(Some_Param17), Equals_Ret18),
1045 not(adjacent(Adjacent_Param16, Equals_Ret18)),
1046 some(Some_Param17,
1047 '$kolem_Fn_185'(Adjacent_Param16, Equals_Ret18))
1048 ]).
1049
1050 1056axiom(not(equals(side1(Some_Param20), Equals_Ret21)),
1057
1058 [ equals(side2(Some_Param20), Adjacent_Param19),
1059 not(adjacent(Adjacent_Param19, Equals_Ret21)),
1060 some(Some_Param20,
1061 '$kolem_Fn_185'(Adjacent_Param19, Equals_Ret21))
1062 ]).
1063
1064 1075axiom(not(adjacent(Adjacent_Param22, Adjacent_Ret24)),
1076
1077 [ not(equals(side2(Some_Param23), Adjacent_Param22)),
1078 not(equals(side1(Some_Param23), Adjacent_Param22)),
1079 some(Some_Param23,
1080 '$kolem_Fn_185'(Adjacent_Param22, Adjacent_Ret24))
1081 ]).
1082axiom(not(adjacent(Adjacent_Param22, Adjacent_Ret24)),
1083
1084 [ not(equals(side1(Some_Param23), Adjacent_Ret24)),
1085 not(equals(side1(Some_Param23), Adjacent_Param22)),
1086 some(Some_Param23,
1087 '$kolem_Fn_185'(Adjacent_Param22, Adjacent_Ret24))
1088 ]).
1089axiom(not(adjacent(Adjacent_Param22, Adjacent_Ret24)),
1090
1091 [ not(equals(side2(Some_Param23), Adjacent_Param22)),
1092 not(equals(side2(Some_Param23), Adjacent_Ret24)),
1093 some(Some_Param23,
1094 '$kolem_Fn_185'(Adjacent_Param22, Adjacent_Ret24))
1095 ]).
1096axiom(not(adjacent(Adjacent_Param22, Adjacent_Ret24)),
1097
1098 [ not(equals(side1(Some_Param23), Adjacent_Ret24)),
1099 not(equals(side2(Some_Param23), Adjacent_Ret24)),
1100 some(Some_Param23,
1101 '$kolem_Fn_185'(Adjacent_Param22, Adjacent_Ret24))
1102 ]).
1103
1104 1112axiom(equals(side1(Some_Param26), Adjacent_Param25),
1113
1114 [ not(equals(side2(Some_Param26), Adjacent_Param25)),
1115 adjacent(Adjacent_Param25, Equals_Ret27),
1116 some(Some_Param26,
1117 '$kolem_Fn_185'(Adjacent_Param25, Equals_Ret27))
1118 ]).
1119axiom(equals(side1(Some_Param26), Adjacent_Param25),
1120
1121 [ not(equals(side1(Some_Param26), Equals_Ret27)),
1122 adjacent(Adjacent_Param25, Equals_Ret27),
1123 some(Some_Param26,
1124 '$kolem_Fn_185'(Adjacent_Param25, Equals_Ret27))
1125 ]).
1126
1127 1135axiom(equals(side2(Some_Param29), Equals_Ret30),
1136
1137 [ not(equals(side2(Some_Param29), Adjacent_Param28)),
1138 adjacent(Adjacent_Param28, Equals_Ret30),
1139 some(Some_Param29,
1140 '$kolem_Fn_185'(Adjacent_Param28, Equals_Ret30))
1141 ]).
1142axiom(equals(side2(Some_Param29), Equals_Ret30),
1143
1144 [ not(equals(side1(Some_Param29), Equals_Ret30)),
1145 adjacent(Adjacent_Param28, Equals_Ret30),
1146 some(Some_Param29,
1147 '$kolem_Fn_185'(Adjacent_Param28, Equals_Ret30))
1148 ]).
1149
1150 1158axiom(equals(side2(Some_Param32), Adjacent_Param31),
1159
1160 [ not(equals(side1(Some_Param32), Adjacent_Param31)),
1161 adjacent(Adjacent_Param31, Equals_Ret33),
1162 some(Some_Param32,
1163 '$kolem_Fn_185'(Adjacent_Param31, Equals_Ret33))
1164 ]).
1165axiom(equals(side2(Some_Param32), Adjacent_Param31),
1166
1167 [ not(equals(side2(Some_Param32), Equals_Ret33)),
1168 adjacent(Adjacent_Param31, Equals_Ret33),
1169 some(Some_Param32,
1170 '$kolem_Fn_185'(Adjacent_Param31, Equals_Ret33))
1171 ]).
1172
1173 1181axiom(equals(side1(Some_Param35), Equals_Ret36),
1182
1183 [ not(equals(side1(Some_Param35), Adjacent_Param34)),
1184 adjacent(Adjacent_Param34, Equals_Ret36),
1185 some(Some_Param35,
1186 '$kolem_Fn_185'(Adjacent_Param34, Equals_Ret36))
1187 ]).
1188axiom(equals(side1(Some_Param35), Equals_Ret36),
1189
1190 [ not(equals(side2(Some_Param35), Equals_Ret36)),
1191 adjacent(Adjacent_Param34, Equals_Ret36),
1192 some(Some_Param35,
1193 '$kolem_Fn_185'(Adjacent_Param34, Equals_Ret36))
1194 ]).
1195
1196
1197% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:314
1198%; The ground of outside is ground.
1199
1200% function GroundOf(outside): ground
1201 % functional_predicate(groundOf(outside,ground)).
1202% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:316
1203==> mpred_prop(groundOf(outside,ground),functional_predicate).
1204==> meta_argtypes(groundOf(outside,ground)).
1205resultIsa(groundOf,ground).
1206%; The sky of outside is sky.
1207
1208% function SkyOf(outside): sky
1209 % functional_predicate(skyOf(outside,sky)).
1210% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/RTSpace.e:318
1211==> mpred_prop(skyOf(outside,sky),functional_predicate).
1212==> meta_argtypes(skyOf(outside,sky)).
1213resultIsa(skyOf,sky).
1220axiom(holds_at(at(Ground, Outside), Time),
1221 [equals(groundOf(Outside), Ground)]).
1222
1223
1229axiom(holds_at(at(Sky, Outside), Time),
1230 [equals(skyOf(Outside), Sky)]).
1231
1232