1:-include(library('ec_planner/ec_test_incl')). 2:-expects_dialect(pfc). 3 % loading(always,'ecnet/Diving.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%; scuba diving
15%;
16
17% sort object
18==> sort(object).
19
20% sort agent: object
21==> subsort(agent,object).
22
23% sort diver: agent
24==> subsort(diver,agent).
25
26% sort depth: integer
27==> subsort(depth,integer).
28
29% sort boat: object
30==> subsort(boat,object).
31%; reference line, anchor line, shotline, SMB line, ...
32
33% sort line: object
34==> subsort(line,object).
35
36% sort equipment: object
37==> subsort(equipment,object).
38
39% sort weight: equipment
40==> subsort(weight,equipment).
41
42% sort fin: equipment
43==> subsort(fin,equipment).
44
45% sort airtank: equipment
46==> subsort(airtank,equipment).
47%; buoyancy compensator (BC)
48%; buoyancy control device (BCD)
49
50% sort computer: equipment
51==> subsort(computer,equipment).
52
53% sort bc: equipment
54==> subsort(bc,equipment).
55
56% fluent AtDepth(object,depth)
57 % fluent(atDepth(object,depth)).
58==> mpred_prop(atDepth(object,depth),fluent).
59==> meta_argtypes(atDepth(object,depth)).
60
61
68axiom(Depth1=Depth2,
69
70 [ holds_at(atDepth(Object, Depth1), Time),
71 holds_at(atDepth(Object, Depth2), Time)
72 ]).
73
74% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:39
75% event Ascend(diver,depth)
76 % event(ascend(diver,depth)).
77% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:40
78==> mpred_prop(ascend(diver,depth),event).
79==> meta_argtypes(ascend(diver,depth)).
80
81% event Descend(diver,depth)
82 % event(descend(diver,depth)).
83% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:42
84==> mpred_prop(descend(diver,depth),event).
85==> meta_argtypes(descend(diver,depth)).
86
87
94axiom(Depth2>Depth1,
95
96 [ holds_at(atDepth(Diver, Depth1), Time),
97 happens(descend(Diver, Depth2), Time)
98 ]).
99
100
107axiom(Depth2<Depth1,
108
109 [ holds_at(atDepth(Diver, Depth1), Time),
110 happens(ascend(Diver, Depth2), Time)
111 ]).
112
113
118axiom(initiates(descend(Diver, Depth), atDepth(Diver, Depth), Time),
119 []).
120
121
127axiom(terminates(descend(Diver, Depth2), atDepth(Diver, Depth1), Time),
128 [holds_at(atDepth(Diver, Depth1), Time)]).
129
130
135axiom(initiates(ascend(Diver, Depth), atDepth(Diver, Depth), Time),
136 []).
137
138
144axiom(terminates(ascend(Diver, Depth2), atDepth(Diver, Depth1), Time),
145 [holds_at(atDepth(Diver, Depth1), Time)]).
146
147% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:67
148% fluent Wearing(diver,equipment)
149 % fluent(wearing(diver,equipment)).
150% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:68
151==> mpred_prop(wearing(diver,equipment),fluent).
152==> meta_argtypes(wearing(diver,equipment)).
153
154% event PutOn(diver,equipment)
155 % event(putOn(diver,equipment)).
156% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:70
157==> mpred_prop(putOn(diver,equipment),event).
158==> meta_argtypes(putOn(diver,equipment)).
159
160% event TakeOff(diver,equipment)
161 % event(takeOff(diver,equipment)).
162% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:72
163==> mpred_prop(takeOff(diver,equipment),event).
164==> meta_argtypes(takeOff(diver,equipment)).
165
166% event Lose(diver,equipment)
167 % event(lose(diver,equipment)).
168% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:74
169==> mpred_prop(lose(diver,equipment),event).
170==> meta_argtypes(lose(diver,equipment)).
171
172
177axiom(releases(putOn(Diver, Equipment), atDepth(Equipment, Depth), Time),
178 []).
179
180
185axiom(releases(putOn(Diver, Equipment), underWater(Equipment), Time),
186 []).
187
188
194axiom(requires(putOn(Diver, Equipment), Time),
195 [not(holds_at(wearing(Diver1, Equipment), Time))]).
196
197
203
204 208
209 219axiom(not(holds_at(wearing(Wearing_Param, AtDepth_Param), Time4)),
220
221 [ not(holds_at(atDepth(AtDepth_Param, AtDepth_Ret), Time4)),
222 holds_at(atDepth(Wearing_Param, AtDepth_Ret), Time4)
223 ]).
224axiom(not(holds_at(wearing(Wearing_Param, AtDepth_Param), Time4)),
225
226 [ not(holds_at(atDepth(Wearing_Param, AtDepth_Ret), Time4)),
227 holds_at(atDepth(AtDepth_Param, AtDepth_Ret), Time4)
228 ]).
229
230 234axiom(holds_at(atDepth(AtDepth_Param9, AtDepth_Ret11), Time8),
235
236 [ holds_at(atDepth(AtDepth_Param10, AtDepth_Ret11), Time8),
237 holds_at(wearing(AtDepth_Param10, AtDepth_Param9),
238 Time8)
239 ]).
240
241 247axiom(not(holds_at(atDepth(AtDepth_Param13, AtDepth_Ret15), Time12)),
248
249 [ not(holds_at(atDepth(AtDepth_Param14, AtDepth_Ret15),
250 Time12)),
251 holds_at(wearing(AtDepth_Param13, AtDepth_Param14),
252 Time12)
253 ]).
254
255 260axiom(holds_at(atDepth(AtDepth_Param17, AtDepth_Ret19), Time16),
261
262 [ holds_at(atDepth(AtDepth_Param18, AtDepth_Ret19),
263 Time16),
264 holds_at(wearing(AtDepth_Param17, AtDepth_Param18),
265 Time16)
266 ]).
267
268 274axiom(not(holds_at(atDepth(AtDepth_Param21, AtDepth_Ret23), Time20)),
275
276 [ not(holds_at(atDepth(AtDepth_Param22, AtDepth_Ret23),
277 Time20)),
278 holds_at(wearing(AtDepth_Param22, AtDepth_Param21),
279 Time20)
280 ]).
281
282
288
289 293
294 304axiom(not(holds_at(holding(Holding_Param, AtDepth_Param), Time4)),
305
306 [ not(holds_at(atDepth(AtDepth_Param, AtDepth_Ret), Time4)),
307 holds_at(atDepth(Holding_Param, AtDepth_Ret), Time4)
308 ]).
309axiom(not(holds_at(holding(Holding_Param, AtDepth_Param), Time4)),
310
311 [ not(holds_at(atDepth(Holding_Param, AtDepth_Ret), Time4)),
312 holds_at(atDepth(AtDepth_Param, AtDepth_Ret), Time4)
313 ]).
314
315 319axiom(holds_at(atDepth(AtDepth_Param9, AtDepth_Ret11), Time8),
320
321 [ holds_at(atDepth(AtDepth_Param10, AtDepth_Ret11), Time8),
322 holds_at(holding(AtDepth_Param10, AtDepth_Param9),
323 Time8)
324 ]).
325
326 332axiom(not(holds_at(atDepth(AtDepth_Param13, AtDepth_Ret15), Time12)),
333
334 [ not(holds_at(atDepth(AtDepth_Param14, AtDepth_Ret15),
335 Time12)),
336 holds_at(holding(AtDepth_Param13, AtDepth_Param14),
337 Time12)
338 ]).
339
340 345axiom(holds_at(atDepth(AtDepth_Param17, AtDepth_Ret19), Time16),
346
347 [ holds_at(atDepth(AtDepth_Param18, AtDepth_Ret19),
348 Time16),
349 holds_at(holding(AtDepth_Param17, AtDepth_Param18),
350 Time16)
351 ]).
352
353 359axiom(not(holds_at(atDepth(AtDepth_Param21, AtDepth_Ret23), Time20)),
360
361 [ not(holds_at(atDepth(AtDepth_Param22, AtDepth_Ret23),
362 Time20)),
363 holds_at(holding(AtDepth_Param22, AtDepth_Param21),
364 Time20)
365 ]).
366
367
373
374 378
379 387axiom(not(holds_at(wearing(Wearing_Param, Wearing_Ret), Time3)),
388
389 [ not(holds_at(underWater(Wearing_Ret), Time3)),
390 holds_at(underWater(Wearing_Param), Time3)
391 ]).
392axiom(not(holds_at(wearing(Wearing_Param, Wearing_Ret), Time3)),
393
394 [ not(holds_at(underWater(Wearing_Param), Time3)),
395 holds_at(underWater(Wearing_Ret), Time3)
396 ]).
397
398 402axiom(holds_at(underWater(UnderWater_Ret), Time6),
403
404 [ holds_at(underWater(Wearing_Param7), Time6),
405 holds_at(wearing(Wearing_Param7, UnderWater_Ret), Time6)
406 ]).
407
408 413axiom(not(holds_at(underWater(Wearing_Param10), Time9)),
414
415 [ not(holds_at(underWater(UnderWater_Ret11), Time9)),
416 holds_at(wearing(Wearing_Param10, UnderWater_Ret11),
417 Time9)
418 ]).
419
420 425axiom(holds_at(underWater(Wearing_Param13), Time12),
426
427 [ holds_at(underWater(UnderWater_Ret14), Time12),
428 holds_at(wearing(Wearing_Param13, UnderWater_Ret14),
429 Time12)
430 ]).
431
432 437axiom(not(holds_at(underWater(UnderWater_Ret17), Time15)),
438
439 [ not(holds_at(underWater(Wearing_Param16), Time15)),
440 holds_at(wearing(Wearing_Param16, UnderWater_Ret17),
441 Time15)
442 ]).
443
444
450
451 455
456 464axiom(not(holds_at(holding(Holding_Param, Holding_Ret), Time3)),
465
466 [ not(holds_at(underWater(Holding_Ret), Time3)),
467 holds_at(underWater(Holding_Param), Time3)
468 ]).
469axiom(not(holds_at(holding(Holding_Param, Holding_Ret), Time3)),
470
471 [ not(holds_at(underWater(Holding_Param), Time3)),
472 holds_at(underWater(Holding_Ret), Time3)
473 ]).
474
475 479axiom(holds_at(underWater(UnderWater_Ret), Time6),
480
481 [ holds_at(underWater(Holding_Param7), Time6),
482 holds_at(holding(Holding_Param7, UnderWater_Ret), Time6)
483 ]).
484
485 490axiom(not(holds_at(underWater(Holding_Param10), Time9)),
491
492 [ not(holds_at(underWater(UnderWater_Ret11), Time9)),
493 holds_at(holding(Holding_Param10, UnderWater_Ret11),
494 Time9)
495 ]).
496
497 502axiom(holds_at(underWater(Holding_Param13), Time12),
503
504 [ holds_at(underWater(UnderWater_Ret14), Time12),
505 holds_at(holding(Holding_Param13, UnderWater_Ret14),
506 Time12)
507 ]).
508
509 514axiom(not(holds_at(underWater(UnderWater_Ret17), Time15)),
515
516 [ not(holds_at(underWater(Holding_Param16), Time15)),
517 holds_at(holding(Holding_Param16, UnderWater_Ret17),
518 Time15)
519 ]).
520
521
528axiom(initiates(takeOff(Diver, Equipment), atDepth(Equipment, Depth), Time),
529
530 [ holds_at(atDepth(Diver, Depth), Time),
531 holds_at(wearing(Diver, Equipment), Time)
532 ]).
533
534
541axiom(terminates(takeOff(Diver, Equipment), atDepth(Equipment, Depth), Time),
542
543 [ not(holds_at(atDepth(Diver, Depth), Time)),
544 holds_at(wearing(Diver, Equipment), Time)
545 ]).
546
547
553axiom(initiates(takeOff(Diver, Equipment), underWater(Equipment), Time),
554 [holds_at(underWater(Diver), Time)]).
555
556
562axiom(terminates(takeOff(Diver, Equipment), underWater(Equipment), Time),
563 [not(holds_at(underWater(Diver), Time))]).
564
565
572axiom(initiates(lose(Diver, Equipment), atDepth(Equipment, Depth), Time),
573
574 [ holds_at(atDepth(Diver, Depth), Time),
575 holds_at(wearing(Diver, Equipment), Time)
576 ]).
577
578
585axiom(terminates(lose(Diver, Equipment), atDepth(Equipment, Depth), Time),
586
587 [ not(holds_at(atDepth(Diver, Depth), Time)),
588 holds_at(wearing(Diver, Equipment), Time)
589 ]).
590
591
597axiom(initiates(lose(Diver, Equipment), underWater(Equipment), Time),
598 [holds_at(underWater(Diver), Time)]).
599
600
606axiom(terminates(lose(Diver, Equipment), underWater(Equipment), Time),
607 [not(holds_at(underWater(Diver), Time))]).
608
609% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:141
610% fluent Holding(diver,object)
611 % fluent(holding(diver,object)).
612% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:142
613==> mpred_prop(holding(diver,object),fluent).
614==> meta_argtypes(holding(diver,object)).
615
616
622axiom(not(holds_at(holding(Diver2, Diver1), Time)),
623 [holds_at(holding(Diver1, Diver2), Time)]).
624
625% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:147
626% event Grab(diver,object)
627 % event(grab(diver,object)).
628% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:148
629==> mpred_prop(grab(diver,object),event).
630==> meta_argtypes(grab(diver,object)).
631
632% event LetGoOf(diver,object)
633 % event(letGoOf(diver,object)).
634% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:150
635==> mpred_prop(letGoOf(diver,object),event).
636==> meta_argtypes(letGoOf(diver,object)).
637
638
643axiom(initiates(grab(Diver, Object), holding(Diver, Object), Time),
644 []).
645
646
651axiom(terminates(letGoOf(Diver, Object), holding(Diver, Object), Time),
652 []).
653
654
659axiom(releases(grab(Diver, Object), atDepth(Object, Depth), Time),
660 []).
661
662
667axiom(releases(grab(Diver, Object), underWater(Object), Time),
668 []).
669
670
677axiom(initiates(letGoOf(Diver, Object), atDepth(Object, Depth), Time),
678
679 [ holds_at(atDepth(Diver, Depth), Time),
680 holds_at(holding(Diver, Object), Time)
681 ]).
682
683
690axiom(terminates(letGoOf(Diver, Object), atDepth(Object, Depth), Time),
691
692 [ not(holds_at(atDepth(Diver, Depth), Time)),
693 holds_at(holding(Diver, Object), Time)
694 ]).
695
696
702axiom(initiates(letGoOf(Diver, Object), underWater(Object), Time),
703 [holds_at(underWater(Diver), Time)]).
704
705
711axiom(terminates(letGoOf(Diver, Object), underWater(Object), Time),
712 [not(holds_at(underWater(Diver), Time))]).
713
714
719axiom(initiates(putOn(Diver, Equipment), wearing(Diver, Equipment), Time),
720 []).
721
722
728axiom(requires(putOn(Diver, Equipment), Time),
729 [not(holds_at(underWater(Diver), Time))]).
730
731
736axiom(terminates(takeOff(Diver, Equipment), wearing(Diver, Equipment), Time),
737 []).
738
739
744axiom(terminates(lose(Diver, Equipment), wearing(Diver, Equipment), Time),
745 []).
746
747% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:194
748% fluent Vertical(diver)
749 % fluent(vertical(diver)).
750% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:195
751==> mpred_prop(vertical(diver),fluent).
752==> meta_argtypes(vertical(diver)).
753
754% fluent HorizontalDown(diver)
755 % fluent(horizontalDown(diver)).
756% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:197
757==> mpred_prop(horizontalDown(diver),fluent).
758==> meta_argtypes(horizontalDown(diver)).
759
760% fluent Inverted(diver)
761 % fluent(inverted(diver)).
762% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:199
763==> mpred_prop(inverted(diver),fluent).
764==> meta_argtypes(inverted(diver)).
765
766% fluent HorizontalUp(diver)
767 % fluent(horizontalUp(diver)).
768% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:201
769==> mpred_prop(horizontalUp(diver),fluent).
770==> meta_argtypes(horizontalUp(diver)).
771
774xor([vertical,horizontalDown,inverted,horizontalUp]).
775
776% event RotatePitch(diver)
777 % event(rotatePitch(diver)).
778% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:205
779==> mpred_prop(rotatePitch(diver),event).
780==> meta_argtypes(rotatePitch(diver)).
781
782
788axiom(initiates(rotatePitch(Diver), horizontalDown(Diver), Time),
789 [holds_at(vertical(Diver), Time)]).
790
791
797axiom(initiates(rotatePitch(Diver), inverted(Diver), Time),
798 [holds_at(horizontalDown(Diver), Time)]).
799
800
806axiom(terminates(rotatePitch(Diver), horizontalDown(Diver), Time),
807 [holds_at(horizontalDown(Diver), Time)]).
808
809
815axiom(initiates(rotatePitch(Diver), horizontalUp(Diver), Time),
816 [holds_at(inverted(Diver), Time)]).
817
818
824axiom(terminates(rotatePitch(Diver), inverted(Diver), Time),
825 [holds_at(inverted(Diver), Time)]).
826
827
833axiom(initiates(rotatePitch(Diver), vertical(Diver), Time),
834 [holds_at(horizontalUp(Diver), Time)]).
835
836
842axiom(terminates(rotatePitch(Diver), horizontalUp(Diver), Time),
843 [holds_at(horizontalUp(Diver), Time)]).
844
845% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:234
846% event RotateYaw(diver)
847 % event(rotateYaw(diver)).
848% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:235
849==> mpred_prop(rotateYaw(diver),event).
850==> meta_argtypes(rotateYaw(diver)).
851
852
861axiom(happens(rotateYaw(Diver), Time),
862
863 [ happens(ascend1(Diver), Time),
864 not(happens(rapidAscendToSurface(Diver), Time)),
865 not(holds_at(holding(Diver, Diver1), Time))
866 ]).
867
868% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:243
869% fluent UnderWater(object)
870 % fluent(underWater(object)).
871% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:244
872==> mpred_prop(underWater(object),fluent).
873==> meta_argtypes(underWater(object)).
874
875
882axiom(holds_at(underWater(Object), Time),
883
884 [ comparison(Depth, 0, >),
885 holds_at(atDepth(Object, Depth), Time)
886 ]).
887
888% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:250
889% event EnterWater(object)
890 % event(enterWater(object)).
891% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:251
892==> mpred_prop(enterWater(object),event).
893==> meta_argtypes(enterWater(object)).
894
895% event Surface(object)
896 % event(surface(object)).
897% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:253
898==> mpred_prop(surface(object),event).
899==> meta_argtypes(surface(object)).
900
901
906axiom(initiates(enterWater(Object), underWater(Object), Time),
907 []).
908
909
915axiom(requires(enterWater(Diver), Time),
916 [not(holds_at(holding(Diver1, Diver), Time))]).
917
918
924axiom(initiates(enterWater(Object), atDepth(Object, Depth), Time),
925 [equals(Depth, 0)]).
926
927
932axiom(terminates(surface(Object), underWater(Object), Time),
933 []).
934
935
940axiom(terminates(surface(Diver), positivelyBuoyant(Diver), Time),
941 []).
942
943
948axiom(terminates(surface(Diver), negativelyBuoyant(Diver), Time),
949 []).
950
951
956axiom(terminates(surface(Diver), neutrallyBuoyant(Diver), Time),
957 []).
958
959
964axiom(terminates(surface(Object), atDepth(Object, Depth), Time),
965 []).
966
967
970 973axiom(requires(enterWater(Diver), Time),
974 [holds_at(vertical(Diver), Time)]).
975
976% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:283
977% fluent StandingOn(diver,boat)
978 % fluent(standingOn(diver,boat)).
979% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:284
980==> mpred_prop(standingOn(diver,boat),fluent).
981==> meta_argtypes(standingOn(diver,boat)).
982
983% event StandOn(diver,boat)
984 % event(standOn(diver,boat)).
985% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:286
986==> mpred_prop(standOn(diver,boat),event).
987==> meta_argtypes(standOn(diver,boat)).
988
989
994axiom(terminates(enterWater(Diver), standingOn(Diver, Boat), Time),
995 []).
996
997
1002axiom(initiates(standOn(Diver, Boat), standingOn(Diver, Boat), Time),
1003 []).
1004
1005% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:293
1006% fluent PositivelyBuoyant(diver)
1007 % fluent(positivelyBuoyant(diver)).
1008% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:294
1009==> mpred_prop(positivelyBuoyant(diver),fluent).
1010==> meta_argtypes(positivelyBuoyant(diver)).
1011
1012% fluent NeutrallyBuoyant(diver)
1013 % fluent(neutrallyBuoyant(diver)).
1014% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:296
1015==> mpred_prop(neutrallyBuoyant(diver),fluent).
1016==> meta_argtypes(neutrallyBuoyant(diver)).
1017
1018% fluent NegativelyBuoyant(diver)
1019 % fluent(negativelyBuoyant(diver)).
1020% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:298
1021==> mpred_prop(negativelyBuoyant(diver),fluent).
1022==> meta_argtypes(negativelyBuoyant(diver)).
1023
1026mutex(positivelyBuoyant).
1027mutex(neutrallyBuoyant).
1028mutex(negativelyBuoyant).
1029
1030
1036axiom(holds_at(underWater(Diver), Time),
1037 [holds_at(positivelyBuoyant(Diver), Time)]).
1038
1039
1045axiom(holds_at(underWater(Diver), Time),
1046 [holds_at(neutrallyBuoyant(Diver), Time)]).
1047
1048
1054axiom(holds_at(underWater(Diver), Time),
1055 [holds_at(negativelyBuoyant(Diver), Time)]).
1056
1057% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:313
1058% event PressDeflateButton(diver,bc)
1059 % event(pressDeflateButton(diver,bc)).
1060% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:314
1061==> mpred_prop(pressDeflateButton(diver,bc),event).
1062==> meta_argtypes(pressDeflateButton(diver,bc)).
1063
1064% event PressDumpButton(diver,bc)
1065 % event(pressDumpButton(diver,bc)).
1066% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:316
1067==> mpred_prop(pressDumpButton(diver,bc),event).
1068==> meta_argtypes(pressDumpButton(diver,bc)).
1069
1070% event PressInflateButton(diver,bc)
1071 % event(pressInflateButton(diver,bc)).
1072% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:318
1073==> mpred_prop(pressInflateButton(diver,bc),event).
1074==> meta_argtypes(pressInflateButton(diver,bc)).
1075
1076
1083axiom(requires(pressDeflateButton(Diver, Bc), Time),
1084
1085 [ holds_at(vertical(Diver), Time),
1086 holds_at(underWater(Bc), Time)
1087 ]).
1088
1089
1096axiom(requires(pressDumpButton(Diver, Bc), Time),
1097
1098 [ holds_at(vertical(Diver), Time),
1099 holds_at(underWater(Bc), Time)
1100 ]).
1101
1102
1105 1108axiom(requires(pressDumpButton(Diver, Bc), Time),
1109 [holds_at(uncontrolledBuoyancy(Diver), Time)]).
1110
1111
1117axiom(initiates(pressDeflateButton(Diver, Bc), negativelyBuoyant(Diver), Time),
1118 [holds_at(wearing(Diver, Bc), Time)]).
1119
1120
1126axiom(terminates(pressDeflateButton(Diver, Bc), neutrallyBuoyant(Diver), Time),
1127 [holds_at(wearing(Diver, Bc), Time)]).
1128
1129
1135axiom(terminates(pressDeflateButton(Diver, Bc), positivelyBuoyant(Diver), Time),
1136 [holds_at(wearing(Diver, Bc), Time)]).
1137
1138
1144axiom(initiates(pressDumpButton(Diver, Bc), negativelyBuoyant(Diver), Time),
1145 [holds_at(wearing(Diver, Bc), Time)]).
1146
1147
1153axiom(terminates(pressDumpButton(Diver, Bc), neutrallyBuoyant(Diver), Time),
1154 [holds_at(wearing(Diver, Bc), Time)]).
1155
1156
1162axiom(terminates(pressDumpButton(Diver, Bc), positivelyBuoyant(Diver), Time),
1163 [holds_at(wearing(Diver, Bc), Time)]).
1164
1165
1171axiom(initiates(pressInflateButton(Diver, Bc), neutrallyBuoyant(Diver), Time),
1172 [holds_at(wearing(Diver, Bc), Time)]).
1173
1174
1180axiom(terminates(pressInflateButton(Diver, Bc), positivelyBuoyant(Diver), Time),
1181 [holds_at(wearing(Diver, Bc), Time)]).
1182
1183
1189axiom(terminates(pressInflateButton(Diver, Bc), negativelyBuoyant(Diver), Time),
1190 [holds_at(wearing(Diver, Bc), Time)]).
1191
1192
1198axiom(initiates(takeOff(Diver, Weight), positivelyBuoyant(Diver), Time),
1199 [holds_at(wearing(Diver, Weight), Time)]).
1200
1201
1207axiom(terminates(takeOff(Diver, Weight), negativelyBuoyant(Diver), Time),
1208 [holds_at(wearing(Diver, Weight), Time)]).
1209
1210
1216axiom(terminates(takeOff(Diver, Weight), neutrallyBuoyant(Diver), Time),
1217 [holds_at(wearing(Diver, Weight), Time)]).
1218
1219% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:380
1220% fluent UncontrolledBuoyancy(diver)
1221 % fluent(uncontrolledBuoyancy(diver)).
1222% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:381
1223==> mpred_prop(uncontrolledBuoyancy(diver),fluent).
1224==> meta_argtypes(uncontrolledBuoyancy(diver)).
1225
1226% event LoseBuoyancyControl(diver)
1227 % event(loseBuoyancyControl(diver)).
1228% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:383
1229==> mpred_prop(loseBuoyancyControl(diver),event).
1230==> meta_argtypes(loseBuoyancyControl(diver)).
1231
1232% predicate IsInexperiencedDiver(diver)
1233 % predicate(isInexperiencedDiver(diver)).
1234% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:385
1235==> mpred_prop(isInexperiencedDiver(diver),predicate).
1236==> meta_argtypes(isInexperiencedDiver(diver)).
1237
1238
1244axiom(requires(loseBuoyancyControl(Diver), Time),
1245 [isInexperiencedDiver(Diver)]).
1246
1247
1252axiom(initiates(loseBuoyancyControl(Diver), uncontrolledBuoyancy(Diver), Time),
1253 []).
1254
1255
1260axiom(initiates(loseBuoyancyControl(Diver), positivelyBuoyant(Diver), Time),
1261 []).
1262
1263
1268axiom(terminates(loseBuoyancyControl(Diver), negativelyBuoyant(Diver), Time),
1269 []).
1270
1271
1276axiom(terminates(loseBuoyancyControl(Diver), neutrallyBuoyant(Diver), Time),
1277 []).
1278
1279
1280% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:402
1281%; determining fluent
1282
1283% fluent AscendDescendAmount(diver,depth)
1284 % fluent(ascendDescendAmount(diver,depth)).
1285% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:404
1286==> mpred_prop(ascendDescendAmount(diver,depth),fluent).
1287==> meta_argtypes(ascendDescendAmount(diver,depth)).
1288
1289% noninertial AscendDescendAmount
1290% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:405
1291==> noninertial(ascendDescendAmount).
1292
1293
1300axiom(Depth1=Depth2,
1301
1302 [ holds_at(ascendDescendAmount(Diver, Depth1), Time),
1303 holds_at(ascendDescendAmount(Diver, Depth2), Time)
1304 ]).
1305
1306
1315axiom(requires(descend(Diver, Depth), Time),
1316
1317 [ holds_at(negativelyBuoyant(Diver), Time),
1318 holds_at(ascendDescendAmount(Diver, Depth1), Time),
1319 holds_at(atDepth(Diver, Depth-Depth1), Time)
1320 ]).
1321
1322% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:418
1323% event KickUp(diver)
1324 % event(kickUp(diver)).
1325% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:419
1326==> mpred_prop(kickUp(diver),event).
1327==> meta_argtypes(kickUp(diver)).
1328
1329
1339axiom(requires(ascend(Diver, Depth), Time),
1340
1341 [ holds_at(positivelyBuoyant(Diver), Time),
1342 holds_at(ascendDescendAmount(Diver, Depth1), Time),
1343 holds_at(atDepth(Diver, Depth+Depth1), Time)
1344 ]).
1345axiom(requires(ascend(Diver, Depth), Time),
1346
1347 [ holds_at(neutrallyBuoyant(Diver), Time),
1348 happens(kickUp(Diver), Time),
1349 holds_at(ascendDescendAmount(Diver, Depth1), Time),
1350 holds_at(atDepth(Diver, Depth+Depth1), Time)
1351 ]).
1352
1353
1359axiom(requires(kickUp(Diver), Time),
1360 [holds_at(vertical(Diver), Time)]).
1361
1362% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:432
1363% event SwimAround(diver)
1364 % event(swimAround(diver)).
1365% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:433
1366==> mpred_prop(swimAround(diver),event).
1367==> meta_argtypes(swimAround(diver)).
1368
1369
1375axiom(requires(swimAround(Diver), Time),
1376 [holds_at(horizontalDown(Diver), Time)]).
1377
1378
1379% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:438
1380%; signaling
1381
1382% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:440
1383% event SignalDescend(diver,diver)
1384 % event(signalDescend(diver,diver)).
1385% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:441
1386==> mpred_prop(signalDescend(diver,diver),event).
1387==> meta_argtypes(signalDescend(diver,diver)).
1388
1389% event SignalOutOfTime(diver,diver)
1390 % event(signalOutOfTime(diver,diver)).
1391% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:443
1392==> mpred_prop(signalOutOfTime(diver,diver),event).
1393==> meta_argtypes(signalOutOfTime(diver,diver)).
1394
1395% event SignalAscend(diver,diver)
1396 % event(signalAscend(diver,diver)).
1397% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:445
1398==> mpred_prop(signalAscend(diver,diver),event).
1399==> meta_argtypes(signalAscend(diver,diver)).
1400
1401
1402% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:446
1403%;[diver1,diver2,time]
1404%;Happens(SignalAscend(diver1,diver2),time) ->
1405%;Happens(SignalOutOfTime(diver1,diver2),time-1).
1406%;[diver1,diver2,time]
1407%;Happens(SignalDescend(diver1,diver2),time) ->
1408%;HoldsAt(See(diver1,diver2),time) &
1409%;HoldsAt(See(diver2,diver1),time).
1410%;[diver1,diver2,time]
1411%;Happens(SignalOutOfTime(diver1,diver2),time) ->
1412%;HoldsAt(See(diver1,diver2),time) &
1413%;HoldsAt(See(diver2,diver1),time).
1414%;[diver1,diver2,time]
1415%;Happens(SignalAscend(diver1,diver2),time) ->
1416%;HoldsAt(See(diver1,diver2),time) &
1417%;HoldsAt(See(diver2,diver1),time).
1418%;event LookAt(agent,object)
1419%;fluent See(agent,object)
1420%;[agent,object,time]
1421%;Initiates(LookAt(agent,object),See(agent,object),time).
1422%;[agent,object1,object2,time]
1423%;object1!=object2 ->
1424%;Terminates(LookAt(agent,object1),
1425%; See(agent,object2),
1426%; time).
1427
1428% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:478
1429% event Descend1(diver)
1430 % event(descend1(diver)).
1431% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:479
1432==> mpred_prop(descend1(diver),event).
1433==> meta_argtypes(descend1(diver)).
1434
1435% event Ascend1(diver)
1436 % event(ascend1(diver)).
1437% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:481
1438==> mpred_prop(ascend1(diver),event).
1439==> meta_argtypes(ascend1(diver)).
1440
1441
1442% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:482
1443%;[diver,object,time]
1444%;Terminates(Descend1(diver),See(diver,object),time).
1445%;[diver,object,time]
1446%;Terminates(Ascend1(diver),See(diver,object),time).
1447%;[diver,object,time]
1448%;Terminates(RotateYaw(diver),See(diver,object),time).
1449
1450% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:491
1451% event RapidAscendToSurface(diver)
1452 % event(rapidAscendToSurface(diver)).
1453% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:492
1454==> mpred_prop(rapidAscendToSurface(diver),event).
1455==> meta_argtypes(rapidAscendToSurface(diver)).
1456
1457
1462
1463 1467axiom(happens(descend1(Diver), Time),
1468 [happens(descend(Diver, Depth), Time)]).
1469
1470 1474
1475 1478axiom(happens(descend(Descend_Param, Descend_Ret), Maptime),
1479 [happens(descend1(Descend_Param), Maptime)]).
1480
1481 1485axiom(not(happens(descend1(Descend_Param7), Maptime6)),
1486
1487 [ not(happens(descend(Descend_Param7, Descend_Ret8),
1488 Maptime6))
1489 ]).
1490
1491
1496
1497 1501axiom(happens(ascend1(Diver), Time),
1502 [happens(ascend(Diver, Depth), Time)]).
1503
1504 1508
1509 1512axiom(happens(ascend(Ascend_Param, Ascend_Ret), Maptime),
1513 [happens(ascend1(Ascend_Param), Maptime)]).
1514
1515 1518axiom(not(happens(ascend1(Ascend_Param7), Maptime6)),
1519
1520 [ not(happens(ascend(Ascend_Param7, Ascend_Ret8),
1521 Maptime6))
1522 ]).
1523
1524
1530axiom(happens(ascend(Diver, 0), Time),
1531 [happens(rapidAscendToSurface(Diver), Time)]).
1532
1533% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:505
1534% event AscendLine(diver,line)
1535 % event(ascendLine(diver,line)).
1536% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:506
1537==> mpred_prop(ascendLine(diver,line),event).
1538==> meta_argtypes(ascendLine(diver,line)).
1539
1540
1546axiom(happens(ascend1(Diver), Time),
1547 [happens(ascendLine(Diver, Line), Time)]).
1548
1549% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:511
1550% fluent Disoriented(diver)
1551 % fluent(disoriented(diver)).
1552% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:512
1553==> mpred_prop(disoriented(diver),fluent).
1554==> meta_argtypes(disoriented(diver)).
1555
1556% event BecomeDisoriented(diver)
1557 % event(becomeDisoriented(diver)).
1558% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:514
1559==> mpred_prop(becomeDisoriented(diver),event).
1560==> meta_argtypes(becomeDisoriented(diver)).
1561
1562% event BecomeReoriented(diver)
1563 % event(becomeReoriented(diver)).
1564% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:516
1565==> mpred_prop(becomeReoriented(diver),event).
1566==> meta_argtypes(becomeReoriented(diver)).
1567
1568
1573axiom(initiates(becomeDisoriented(Diver), disoriented(Diver), Time),
1574 []).
1575
1576
1581axiom(terminates(becomeReoriented(Diver), disoriented(Diver), Time),
1582 []).
1583
1584% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:523
1585% fluent DisturbedSilt()
1586 % fluent(disturbedSilt()).
1587% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:524
1588==> mpred_prop(disturbedSilt(),fluent).
1589==> meta_argtypes(disturbedSilt()).
1590
1591% event DisturbSilt(diver)
1592 % event(disturbSilt(diver)).
1593% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:526
1594==> mpred_prop(disturbSilt(diver),event).
1595==> meta_argtypes(disturbSilt(diver)).
1596
1597
1602axiom(initiates(disturbSilt(Diver), disturbedSilt(), Time),
1603 []).
1604
1605
1612axiom(requires(becomeDisoriented(Diver), start),
1613
1614 [ not(holds_at(disturbedSilt(), t)),
1615 holds_at(disturbedSilt(), start),
1616 b(t, start),
1617 ignore(start-1=t)
1618 ]).
1619
1620% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:535
1621% event Panic(diver)
1622 % event(panic(diver)).
1623% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:536
1624==> mpred_prop(panic(diver),event).
1625==> meta_argtypes(panic(diver)).
1626
1627
1630 1636axiom(requires(panic(Diver), Time),
1637 [holds_at(disoriented(Diver), Time)]).
1638axiom(requires(panic(Diver), Time),
1639 [holds_at(uncontrolledBuoyancy(Diver), Time)]).
1640axiom(requires(lose(Diver, Equipment), Time-1),
1641 [requires(panic(Diver), Time)]).
1642axiom(requires(vomit(Diver), Time-1),
1643 [requires(panic(Diver), Time)]).
1644
1645% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:543
1646% event Vomit(diver)
1647 % event(vomit(diver)).
1648% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:544
1649==> mpred_prop(vomit(diver),event).
1650==> meta_argtypes(vomit(diver)).
1651
1652
1653% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:545
1654%; conditions
1655
1656% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:547
1657% fluent Unconscious(diver)
1658 % fluent(unconscious(diver)).
1659% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:548
1660==> mpred_prop(unconscious(diver),fluent).
1661==> meta_argtypes(unconscious(diver)).
1662
1663% event GoUnconscious(diver)
1664 % event(goUnconscious(diver)).
1665% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:550
1666==> mpred_prop(goUnconscious(diver),event).
1667==> meta_argtypes(goUnconscious(diver)).
1668
1669% event RegainConsciousness(diver)
1670 % event(regainConsciousness(diver)).
1671% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:552
1672==> mpred_prop(regainConsciousness(diver),event).
1673==> meta_argtypes(regainConsciousness(diver)).
1674
1675
1680axiom(initiates(goUnconscious(Diver), unconscious(Diver), Time),
1681 []).
1682
1683
1688axiom(terminates(regainConsciousness(Diver), unconscious(Diver), Time),
1689 []).
1690
1691
1697axiom(happens(rapidAscendToSurface(Diver), Time),
1698 [happens(goUnconscious(Diver), Time)]).
1699
1700% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:563
1701% fluent HasEarPain(diver)
1702 % fluent(hasEarPain(diver)).
1703% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:564
1704==> mpred_prop(hasEarPain(diver),fluent).
1705==> meta_argtypes(hasEarPain(diver)).
1706
1707% event StartEarPain(diver)
1708 % event(startEarPain(diver)).
1709% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:566
1710==> mpred_prop(startEarPain(diver),event).
1711==> meta_argtypes(startEarPain(diver)).
1712
1713
1716 1717axiom(initiates(startEarPain(Diver), hasEarPain(Diver), Time),
1718 []).
1719
1720% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:569
1721% fluent HasRupturedEardrum(diver)
1722 % fluent(hasRupturedEardrum(diver)).
1723% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:570
1724==> mpred_prop(hasRupturedEardrum(diver),fluent).
1725==> meta_argtypes(hasRupturedEardrum(diver)).
1726
1727% event RuptureEardrum(diver)
1728 % event(ruptureEardrum(diver)).
1729% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:572
1730==> mpred_prop(ruptureEardrum(diver),event).
1731==> meta_argtypes(ruptureEardrum(diver)).
1732
1733
1738axiom(initiates(ruptureEardrum(Diver), hasRupturedEardrum(Diver), Time),
1739 []).
1740
1741% fluent ConditionOK(diver)
1742 % fluent(conditionOK(diver)).
1743% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:576
1744==> mpred_prop(conditionOK(diver),fluent).
1745==> meta_argtypes(conditionOK(diver)).
1746
1747% fluent HasDecompressionIllness(diver)
1748 % fluent(hasDecompressionIllness(diver)).
1749% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:578
1750==> mpred_prop(hasDecompressionIllness(diver),fluent).
1751==> meta_argtypes(hasDecompressionIllness(diver)).
1752
1753% event StartDecompressionIllness(diver)
1754 % event(startDecompressionIllness(diver)).
1755% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:580
1756==> mpred_prop(startDecompressionIllness(diver),event).
1757==> meta_argtypes(startDecompressionIllness(diver)).
1758
1759
1766axiom(initiates(startDecompressionIllness(Diver), hasDecompressionIllness(Diver), Time),
1767 []).
1768
1769% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:586
1770% fluent SignalingDecompress(computer,diver)
1771 % fluent(signalingDecompress(computer,diver)).
1772% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:587
1773==> mpred_prop(signalingDecompress(computer,diver),fluent).
1774==> meta_argtypes(signalingDecompress(computer,diver)).
1775
1776% fluent SignalingLowOnAir(computer,airtank,diver)
1777 % fluent(signalingLowOnAir(computer,airtank,diver)).
1778% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:589
1779==> mpred_prop(signalingLowOnAir(computer,airtank,diver),fluent).
1780==> meta_argtypes(signalingLowOnAir(computer,airtank,diver)).
1781
1782
1788axiom(holds_at(lowOnAir(Airtank), Time),
1789
1790 [ holds_at(signalingLowOnAir(Computer, Airtank, Diver),
1791 Time)
1792 ]).
1793
1794
1800axiom(not(exists([Time1], (Time1<Time, happens(decompress(Diver), Time1)))),
1801 [holds_at(signalingDecompress(Computer, Diver), Time)]).
1802
1803% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:598
1804% event Decompress(diver)
1805 % event(decompress(diver)).
1806% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:599
1807==> mpred_prop(decompress(diver),event).
1808==> meta_argtypes(decompress(diver)).
1809
1810% event EqualizeEars(diver)
1811 % event(equalizeEars(diver)).
1812% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:601
1813==> mpred_prop(equalizeEars(diver),event).
1814==> meta_argtypes(equalizeEars(diver)).
1815
1816
1823
1824 1827
1828 1835axiom(happens(startEarPain(StartEarPain_Ret), Maptime),
1836
1837 [ happens(descend1(StartEarPain_Ret), Maptime),
1838 not(happens(equalizeEars(StartEarPain_Ret), Maptime))
1839 ]).
1840axiom(happens(startEarPain(StartEarPain_Ret), Maptime),
1841
1842 [ happens(ascend1(StartEarPain_Ret), Maptime),
1843 not(happens(equalizeEars(StartEarPain_Ret), Maptime))
1844 ]).
1845
1846 1852axiom(happens(ruptureEardrum(RuptureEardrum_Ret), Maptime4),
1853
1854 [ happens(descend1(RuptureEardrum_Ret), Maptime4),
1855 not(happens(equalizeEars(RuptureEardrum_Ret), Maptime4))
1856 ]).
1857axiom(happens(ruptureEardrum(RuptureEardrum_Ret), Maptime4),
1858
1859 [ happens(ascend1(RuptureEardrum_Ret), Maptime4),
1860 not(happens(equalizeEars(RuptureEardrum_Ret), Maptime4))
1861 ]).
1862
1863 1871axiom(happens(equalizeEars(EqualizeEars_Ret), Maptime6),
1872
1873 [ not(happens(startEarPain(EqualizeEars_Ret), Maptime6)),
1874 happens(descend1(EqualizeEars_Ret), Maptime6)
1875 ]).
1876axiom(happens(equalizeEars(EqualizeEars_Ret), Maptime6),
1877
1878 [ not(happens(ruptureEardrum(EqualizeEars_Ret), Maptime6)),
1879 happens(descend1(EqualizeEars_Ret), Maptime6)
1880 ]).
1881axiom(happens(equalizeEars(EqualizeEars_Ret), Maptime6),
1882
1883 [ not(happens(startEarPain(EqualizeEars_Ret), Maptime6)),
1884 happens(ascend1(EqualizeEars_Ret), Maptime6)
1885 ]).
1886axiom(happens(equalizeEars(EqualizeEars_Ret), Maptime6),
1887
1888 [ not(happens(ruptureEardrum(EqualizeEars_Ret), Maptime6)),
1889 happens(ascend1(EqualizeEars_Ret), Maptime6)
1890 ]).
1891
1892 1898axiom(not(happens(descend1(Descend1_Ret), Maptime8)),
1899
1900 [ not(happens(startEarPain(Descend1_Ret), Maptime8)),
1901 not(happens(equalizeEars(Descend1_Ret), Maptime8))
1902 ]).
1903axiom(not(happens(descend1(Descend1_Ret), Maptime8)),
1904
1905 [ not(happens(ruptureEardrum(Descend1_Ret), Maptime8)),
1906 not(happens(equalizeEars(Descend1_Ret), Maptime8))
1907 ]).
1908
1909 1915axiom(not(happens(ascend1(Ascend1_Ret), Maptime10)),
1916
1917 [ not(happens(startEarPain(Ascend1_Ret), Maptime10)),
1918 not(happens(equalizeEars(Ascend1_Ret), Maptime10))
1919 ]).
1920axiom(not(happens(ascend1(Ascend1_Ret), Maptime10)),
1921
1922 [ not(happens(ruptureEardrum(Ascend1_Ret), Maptime10)),
1923 not(happens(equalizeEars(Ascend1_Ret), Maptime10))
1924 ]).
1925
1926
1933axiom(happens(startDecompressionIllness(Diver), Time),
1934
1935 [ happens(ascend1(Diver), Time),
1936 not(happens(decompress(Diver), Time))
1937 ]).
1938
1939
1947axiom(happens(startDecompressionIllness(Diver2), Time),
1948
1949 [ holds_at(holding(Diver1, Diver2), Time),
1950 happens(ascend1(Diver1), Time),
1951 not(happens(decompress(Diver2), Time))
1952 ]).
1953
1954
1961axiom(requires(decompress(Diver), Time),
1962
1963 [ comparison(Depth, 0, >),
1964 holds_at(atDepth(Diver, Depth), Time),
1965 not(holds_at(uncontrolledBuoyancy(Diver), Time))
1966 ]).
1967
1968% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:624
1969% fluent HasHeadache(diver)
1970 % fluent(hasHeadache(diver)).
1971% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:625
1972==> mpred_prop(hasHeadache(diver),fluent).
1973==> meta_argtypes(hasHeadache(diver)).
1974
1975
1984
1985 1988
1989 1998axiom(not(holds_at(conditionOK(ConditionOK_Ret), Time2)),
1999 [holds_at(unconscious(ConditionOK_Ret), Time2)]).
2000axiom(not(holds_at(conditionOK(ConditionOK_Ret), Time2)),
2001 [holds_at(hasEarPain(ConditionOK_Ret), Time2)]).
2002axiom(not(holds_at(conditionOK(ConditionOK_Ret), Time2)),
2003 [holds_at(hasRupturedEardrum(ConditionOK_Ret), Time2)]).
2004axiom(not(holds_at(conditionOK(ConditionOK_Ret), Time2)),
2005 [holds_at(hasDecompressionIllness(ConditionOK_Ret), Time2)]).
2006axiom(not(holds_at(conditionOK(ConditionOK_Ret), Time2)),
2007 [holds_at(hasHeadache(ConditionOK_Ret), Time2)]).
2008
2009 2012axiom(not(holds_at(unconscious(Unconscious_Ret), Time4)),
2013 [holds_at(conditionOK(Unconscious_Ret), Time4)]).
2014
2015 2018axiom(not(holds_at(hasEarPain(HasEarPain_Ret), Time6)),
2019 [holds_at(conditionOK(HasEarPain_Ret), Time6)]).
2020
2021 2024axiom(not(holds_at(hasRupturedEardrum(HasRupturedEardrum_Ret), Time8)),
2025 [holds_at(conditionOK(HasRupturedEardrum_Ret), Time8)]).
2026
2027 2030axiom(not(holds_at(hasDecompressionIllness(HasDecompressionIllness_Ret), Time10)),
2031 [holds_at(conditionOK(HasDecompressionIllness_Ret), Time10)]).
2032
2033 2036axiom(not(holds_at(hasHeadache(HasHeadache_Ret), Time12)),
2037 [holds_at(conditionOK(HasHeadache_Ret), Time12)]).
2038
2039% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:634
2040% event BeAirlifted(diver)
2041 % event(beAirlifted(diver)).
2042% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:635
2043==> mpred_prop(beAirlifted(diver),event).
2044==> meta_argtypes(beAirlifted(diver)).
2045
2046% event TakeInWater(diver)
2047 % event(takeInWater(diver)).
2048% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:637
2049==> mpred_prop(takeInWater(diver),event).
2050==> meta_argtypes(takeInWater(diver)).
2051
2052% fluent LowOnAir(airtank)
2053 % fluent(lowOnAir(airtank)).
2054% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:639
2055==> mpred_prop(lowOnAir(airtank),fluent).
2056==> meta_argtypes(lowOnAir(airtank)).
2057
2058% event BecomeLowOnAir(airtank)
2059 % event(becomeLowOnAir(airtank)).
2060% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:641
2061==> mpred_prop(becomeLowOnAir(airtank),event).
2062==> meta_argtypes(becomeLowOnAir(airtank)).
2063
2064
2069axiom(initiates(becomeLowOnAir(Airtank), lowOnAir(Airtank), Time),
2070 []).
2071
2072
2076 2078axiom(initially(conditionOK(Diver)),
2079 []).
2080
2081
2084 2085axiom(initially(vertical(Diver)),
2086 []).
2087
2088
2091 2092axiom(not(initially(disturbedSilt())),
2093 []).
2094
2095
2098 2099 2100axiom(not(initially(uncontrolledBuoyancy(UncontrolledBuoyancy_Ret))),
2101 []).
2102
2103
2106 2107 2108axiom(not(initially(disoriented(Disoriented_Ret))),
2109 []).
2110
2111
2114 2117
2118 2123axiom(not(holds_at(positivelyBuoyant(PositivelyBuoyant_Ret), t)),
2124 []).
2125axiom(not(holds_at(neutrallyBuoyant(NeutrallyBuoyant_Ret), t)),
2126 []).
2127axiom(not(holds_at(negativelyBuoyant(NegativelyBuoyant_Ret), t)),
2128 []).
2129
2130
2133 2134 2135axiom(not(initially(wearing(Wearing_Param, Wearing_Ret))),
2136 []).
2137
2138
2141 2142 2143axiom(not(initially(holding(Holding_Param, Holding_Ret))),
2144 []).
2145
2146
2149 2150 2151axiom(not(initially(separated(Separated_Param, Separated_Ret))),
2152 []).
2153
2154
2155% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:657
2156%;[agent,object] !HoldsAt(See(agent,object),0).
2157
2158% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:659
2159% fluent Separated(diver,diver)
2160 % fluent(separated(diver,diver)).
2161% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:660
2162==> mpred_prop(separated(diver,diver),fluent).
2163==> meta_argtypes(separated(diver,diver)).
2164
2165
2171axiom(holds_at(separated(Diver2, Diver1), Time),
2172 [holds_at(separated(Diver1, Diver2), Time)]).
2173
2174% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:665
2175% event BecomeSeparated(diver,diver)
2176 % event(becomeSeparated(diver,diver)).
2177% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:666
2178==> mpred_prop(becomeSeparated(diver,diver),event).
2179==> meta_argtypes(becomeSeparated(diver,diver)).
2180
2181% event BeReunitedWith(diver,diver)
2182 % event(beReunitedWith(diver,diver)).
2183% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/ecnet/Diving.e:668
2184==> mpred_prop(beReunitedWith(diver,diver),event).
2185==> meta_argtypes(beReunitedWith(diver,diver)).
2186
2187
2192axiom(initiates(becomeSeparated(Diver1, Diver2), separated(Diver1, Diver2), Time),
2193 []).
2194
2195
2200axiom(initiates(becomeSeparated(Diver1, Diver2), separated(Diver2, Diver1), Time),
2201 []).
2202
2203
2208axiom(terminates(beReunitedWith(Diver1, Diver2), separated(Diver1, Diver2), Time),
2209 []).
2210
2211
2216axiom(terminates(beReunitedWith(Diver1, Diver2), separated(Diver2, Diver1), Time),
2217 []).
2218
2219