1:-include(library('ec_planner/ec_test_incl')). 2:-expects_dialect(pfc). 3 % loading(always,'examples/Mueller2006/Chapter12/MethodD.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%; Method (D)
15%;
16%; @book{Mueller:2006,
17%; author = "Erik T. Mueller",
18%; year = "2006",
19%; title = "Commonsense Reasoning",
20%; address = "San Francisco",
21%; publisher = "Morgan Kaufmann/Elsevier",
22%; }
23%;
24
25% load foundations/Root.e
26
27% load foundations/EC.e
28
29% sort object
30==> sort(object).
31
32% object A,B
33==> t(object,a).
34==> t(object,b).
35
36% fluent P(object)
37 % fluent(p(object)).
38==> mpred_prop(p(object),fluent).
39==> meta_argtypes(p(object)).
40
41% fluent Q(object)
42 % fluent(q(object)).
43==> mpred_prop(q(object),fluent).
44==> meta_argtypes(q(object)).
45
46% fluent R(object)
47 % fluent(r(object)).
48==> mpred_prop(r(object),fluent).
49==> meta_argtypes(r(object)).
50
51% predicate Ab1(object,time)
52 % predicate(ab1(object,time)).
53==> mpred_prop(ab1(object,time),predicate).
54==> meta_argtypes(ab1(object,time)).
55
56% predicate Ab2(object,time)
57 % predicate(ab2(object,time)).
58==> mpred_prop(ab2(object,time),predicate).
59==> meta_argtypes(ab2(object,time)).
60
61
67axiom(holds_at(q(Object), Time),
68 [holds_at(p(Object), Time), not(ab1(Object, Time))]).
69
70
76axiom(not(holds_at(q(Object), Time)),
77 [holds_at(r(Object), Time), not(ab2(Object, Time))]).
78
79
84axiom(holds_at(p(Object), Time),
85 [holds_at(r(Object), Time)]).
86
87
90axiom(initially(r(a)),
91 []).
92
93
96axiom(initially(p(b)),
97 []).
98
99
102 103axiom(not(initially(r(b))),
104 []).
105
108next_axiom_uses(theta).
109
110
111
116axiom(ab1(Object, Time),
117 [holds_at(r(Object), Time)]).
118
119% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/examples/Mueller2006/Chapter12/MethodD.e:54
120% range time 0 0
121% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/examples/Mueller2006/Chapter12/MethodD.e:55
122==> range(time,0,0).
123
124% range offset 1 1
125% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/examples/Mueller2006/Chapter12/MethodD.e:56
126==> range(offset,1,1).
127
128% completion Theta Ab1
129% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/examples/Mueller2006/Chapter12/MethodD.e:58
130==> completion(theta).
131==> completion(ab1).
132
133% completion Theta Ab2
134% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/examples/Mueller2006/Chapter12/MethodD.e:59
135==> completion(theta).
136==> completion(ab2).