eyeling 1.5.35 → 1.5.37
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/examples/brussels-brew-club.n3 +119 -0
- package/examples/drone-corridor-planner.n3 +146 -40
- package/examples/ev-roundtrip-planner.n3 +189 -0
- package/examples/json-pointer.n3 +5 -0
- package/examples/json-reconcile-vat.n3 +5 -0
- package/examples/oslo-steps-workflow-composition.n3 +305 -0
- package/examples/output/brussels-brew-club.n3 +498 -0
- package/examples/output/drone-corridor-planner.n3 +717 -51
- package/examples/output/ev-roundtrip-planner.n3 +403 -0
- package/examples/output/json-reconcile-vat.n3 +49 -48
- package/examples/output/oslo-steps-workflow-composition.n3 +148 -0
- package/examples/output/skolem.n3 +5 -4
- package/examples/rdf-list.n3 +7 -3
- package/eyeling.js +183 -7
- package/package.json +1 -1
- package/test/api.test.js +30 -0
- package/examples/drone-corridor-planner-v2.n3 +0 -237
- package/examples/output/drone-corridor-planner-v2.n3 +0 -819
|
@@ -0,0 +1,403 @@
|
|
|
1
|
+
@prefix : <https://eyereasoner.github.io/eye/reasoning#> .
|
|
2
|
+
@prefix gps: <https://eyereasoner.github.io/eye/reasoning/gps/gps-schema#> .
|
|
3
|
+
|
|
4
|
+
# ----------------------------------------------------------------------
|
|
5
|
+
# Proof for derived triple:
|
|
6
|
+
# :car1 gps:plan ((:buy_pass_brussels :drive_bru_liege :drive_liege_aachen :fast_charge_aachen_pass :public_road_aachen_cologne) 235 0.054000000000000006 0.94887065827125 0.8494295039999998 :low :yes (:t :t :t)) .
|
|
7
|
+
# It holds because the following instance of the rule body is provable:
|
|
8
|
+
# :fuel8 :value (:t :t :t :t :t :t :t :t) .
|
|
9
|
+
# ({
|
|
10
|
+
# :car1 :at :Brussels .
|
|
11
|
+
# :car1 :battery :high .
|
|
12
|
+
# :car1 :pass :none .
|
|
13
|
+
# } {
|
|
14
|
+
# :car1 :at :Cologne .
|
|
15
|
+
# :car1 :battery :low .
|
|
16
|
+
# :car1 :pass :yes .
|
|
17
|
+
# } (:buy_pass_brussels :drive_bru_liege :drive_liege_aachen :fast_charge_aachen_pass :public_road_aachen_cologne) 235 0.054000000000000006 0.94887065827125 0.8494295039999998 (:t :t :t :t :t :t :t :t) (:t :t :t)) :path true .
|
|
18
|
+
# 0.94887065827125 math:greaterThan 0.93 .
|
|
19
|
+
# 0.054000000000000006 math:lessThan 0.090 .
|
|
20
|
+
# 235 math:lessThan 260.0 .
|
|
21
|
+
# via the schematic forward rule:
|
|
22
|
+
# {
|
|
23
|
+
# :fuel8 :value ?Fuel .
|
|
24
|
+
# ({
|
|
25
|
+
# :car1 :at :Brussels .
|
|
26
|
+
# :car1 :battery :high .
|
|
27
|
+
# :car1 :pass :none .
|
|
28
|
+
# } {
|
|
29
|
+
# :car1 :at :Cologne .
|
|
30
|
+
# :car1 :battery ?B .
|
|
31
|
+
# :car1 :pass ?P .
|
|
32
|
+
# } ?Acts ?Dur ?Cost ?Bel ?Comf ?Fuel ?FuelLeft) :path true .
|
|
33
|
+
# ?Bel math:greaterThan 0.93 .
|
|
34
|
+
# ?Cost math:lessThan 0.090 .
|
|
35
|
+
# ?Dur math:lessThan 260.0 .
|
|
36
|
+
# } => {
|
|
37
|
+
# :car1 gps:plan (?Acts ?Dur ?Cost ?Bel ?Comf ?B ?P ?FuelLeft) .
|
|
38
|
+
# } .
|
|
39
|
+
# with substitution (on rule variables):
|
|
40
|
+
# ?Acts = (:buy_pass_brussels :drive_bru_liege :drive_liege_aachen :fast_charge_aachen_pass :public_road_aachen_cologne)
|
|
41
|
+
# ?B = :low
|
|
42
|
+
# ?Bel = 0.94887065827125
|
|
43
|
+
# ?Comf = 0.8494295039999998
|
|
44
|
+
# ?Cost = 0.054000000000000006
|
|
45
|
+
# ?Dur = 235
|
|
46
|
+
# ?Fuel = (:t :t :t :t :t :t :t :t)
|
|
47
|
+
# ?FuelLeft = (:t :t :t)
|
|
48
|
+
# ?P = :yes
|
|
49
|
+
# Therefore the derived triple above is entailed by the rules and facts.
|
|
50
|
+
# ----------------------------------------------------------------------
|
|
51
|
+
|
|
52
|
+
:car1 gps:plan ((:buy_pass_brussels :drive_bru_liege :drive_liege_aachen :fast_charge_aachen_pass :public_road_aachen_cologne) 235 0.054000000000000006 0.94887065827125 0.8494295039999998 :low :yes (:t :t :t)) .
|
|
53
|
+
|
|
54
|
+
# ----------------------------------------------------------------------
|
|
55
|
+
# Proof for derived triple:
|
|
56
|
+
# :car1 gps:plan ((:buy_pass_brussels :drive_bru_liege :drive_liege_aachen :fast_charge_aachen_pass :premium_corridor_aachen_cologne) 220 0.063 0.953736661647 0.880398288 :low :yes (:t :t :t)) .
|
|
57
|
+
# It holds because the following instance of the rule body is provable:
|
|
58
|
+
# :fuel8 :value (:t :t :t :t :t :t :t :t) .
|
|
59
|
+
# ({
|
|
60
|
+
# :car1 :at :Brussels .
|
|
61
|
+
# :car1 :battery :high .
|
|
62
|
+
# :car1 :pass :none .
|
|
63
|
+
# } {
|
|
64
|
+
# :car1 :at :Cologne .
|
|
65
|
+
# :car1 :battery :low .
|
|
66
|
+
# :car1 :pass :yes .
|
|
67
|
+
# } (:buy_pass_brussels :drive_bru_liege :drive_liege_aachen :fast_charge_aachen_pass :premium_corridor_aachen_cologne) 220 0.063 0.953736661647 0.880398288 (:t :t :t :t :t :t :t :t) (:t :t :t)) :path true .
|
|
68
|
+
# 0.953736661647 math:greaterThan 0.93 .
|
|
69
|
+
# 0.063 math:lessThan 0.090 .
|
|
70
|
+
# 220 math:lessThan 260.0 .
|
|
71
|
+
# via the schematic forward rule:
|
|
72
|
+
# {
|
|
73
|
+
# :fuel8 :value ?Fuel .
|
|
74
|
+
# ({
|
|
75
|
+
# :car1 :at :Brussels .
|
|
76
|
+
# :car1 :battery :high .
|
|
77
|
+
# :car1 :pass :none .
|
|
78
|
+
# } {
|
|
79
|
+
# :car1 :at :Cologne .
|
|
80
|
+
# :car1 :battery ?B .
|
|
81
|
+
# :car1 :pass ?P .
|
|
82
|
+
# } ?Acts ?Dur ?Cost ?Bel ?Comf ?Fuel ?FuelLeft) :path true .
|
|
83
|
+
# ?Bel math:greaterThan 0.93 .
|
|
84
|
+
# ?Cost math:lessThan 0.090 .
|
|
85
|
+
# ?Dur math:lessThan 260.0 .
|
|
86
|
+
# } => {
|
|
87
|
+
# :car1 gps:plan (?Acts ?Dur ?Cost ?Bel ?Comf ?B ?P ?FuelLeft) .
|
|
88
|
+
# } .
|
|
89
|
+
# with substitution (on rule variables):
|
|
90
|
+
# ?Acts = (:buy_pass_brussels :drive_bru_liege :drive_liege_aachen :fast_charge_aachen_pass :premium_corridor_aachen_cologne)
|
|
91
|
+
# ?B = :low
|
|
92
|
+
# ?Bel = 0.953736661647
|
|
93
|
+
# ?Comf = 0.880398288
|
|
94
|
+
# ?Cost = 0.063
|
|
95
|
+
# ?Dur = 220
|
|
96
|
+
# ?Fuel = (:t :t :t :t :t :t :t :t)
|
|
97
|
+
# ?FuelLeft = (:t :t :t)
|
|
98
|
+
# ?P = :yes
|
|
99
|
+
# Therefore the derived triple above is entailed by the rules and facts.
|
|
100
|
+
# ----------------------------------------------------------------------
|
|
101
|
+
|
|
102
|
+
:car1 gps:plan ((:buy_pass_brussels :drive_bru_liege :drive_liege_aachen :fast_charge_aachen_pass :premium_corridor_aachen_cologne) 220 0.063 0.953736661647 0.880398288 :low :yes (:t :t :t)) .
|
|
103
|
+
|
|
104
|
+
# ----------------------------------------------------------------------
|
|
105
|
+
# Proof for derived triple:
|
|
106
|
+
# :car1 gps:plan ((:buy_pass_brussels :drive_bru_liege :drive_liege_aachen :shuttle_aachen_cologne) 220 0.05800000000000001 0.97320067515 0.8893367999999999 :low :yes (:t :t :t :t)) .
|
|
107
|
+
# It holds because the following instance of the rule body is provable:
|
|
108
|
+
# :fuel8 :value (:t :t :t :t :t :t :t :t) .
|
|
109
|
+
# ({
|
|
110
|
+
# :car1 :at :Brussels .
|
|
111
|
+
# :car1 :battery :high .
|
|
112
|
+
# :car1 :pass :none .
|
|
113
|
+
# } {
|
|
114
|
+
# :car1 :at :Cologne .
|
|
115
|
+
# :car1 :battery :low .
|
|
116
|
+
# :car1 :pass :yes .
|
|
117
|
+
# } (:buy_pass_brussels :drive_bru_liege :drive_liege_aachen :shuttle_aachen_cologne) 220 0.05800000000000001 0.97320067515 0.8893367999999999 (:t :t :t :t :t :t :t :t) (:t :t :t :t)) :path true .
|
|
118
|
+
# 0.97320067515 math:greaterThan 0.93 .
|
|
119
|
+
# 0.05800000000000001 math:lessThan 0.090 .
|
|
120
|
+
# 220 math:lessThan 260.0 .
|
|
121
|
+
# via the schematic forward rule:
|
|
122
|
+
# {
|
|
123
|
+
# :fuel8 :value ?Fuel .
|
|
124
|
+
# ({
|
|
125
|
+
# :car1 :at :Brussels .
|
|
126
|
+
# :car1 :battery :high .
|
|
127
|
+
# :car1 :pass :none .
|
|
128
|
+
# } {
|
|
129
|
+
# :car1 :at :Cologne .
|
|
130
|
+
# :car1 :battery ?B .
|
|
131
|
+
# :car1 :pass ?P .
|
|
132
|
+
# } ?Acts ?Dur ?Cost ?Bel ?Comf ?Fuel ?FuelLeft) :path true .
|
|
133
|
+
# ?Bel math:greaterThan 0.93 .
|
|
134
|
+
# ?Cost math:lessThan 0.090 .
|
|
135
|
+
# ?Dur math:lessThan 260.0 .
|
|
136
|
+
# } => {
|
|
137
|
+
# :car1 gps:plan (?Acts ?Dur ?Cost ?Bel ?Comf ?B ?P ?FuelLeft) .
|
|
138
|
+
# } .
|
|
139
|
+
# with substitution (on rule variables):
|
|
140
|
+
# ?Acts = (:buy_pass_brussels :drive_bru_liege :drive_liege_aachen :shuttle_aachen_cologne)
|
|
141
|
+
# ?B = :low
|
|
142
|
+
# ?Bel = 0.97320067515
|
|
143
|
+
# ?Comf = 0.8893367999999999
|
|
144
|
+
# ?Cost = 0.05800000000000001
|
|
145
|
+
# ?Dur = 220
|
|
146
|
+
# ?Fuel = (:t :t :t :t :t :t :t :t)
|
|
147
|
+
# ?FuelLeft = (:t :t :t :t)
|
|
148
|
+
# ?P = :yes
|
|
149
|
+
# Therefore the derived triple above is entailed by the rules and facts.
|
|
150
|
+
# ----------------------------------------------------------------------
|
|
151
|
+
|
|
152
|
+
:car1 gps:plan ((:buy_pass_brussels :drive_bru_liege :drive_liege_aachen :shuttle_aachen_cologne) 220 0.05800000000000001 0.97320067515 0.8893367999999999 :low :yes (:t :t :t :t)) .
|
|
153
|
+
|
|
154
|
+
# ----------------------------------------------------------------------
|
|
155
|
+
# Proof for derived triple:
|
|
156
|
+
# :car1 gps:plan ((:drive_bru_liege :buy_pass_liege :drive_liege_aachen :fast_charge_aachen_pass :public_road_aachen_cologne) 240 0.053000000000000005 0.9450713763562499 0.8408494079999999 :low :yes (:t :t :t)) .
|
|
157
|
+
# It holds because the following instance of the rule body is provable:
|
|
158
|
+
# :fuel8 :value (:t :t :t :t :t :t :t :t) .
|
|
159
|
+
# ({
|
|
160
|
+
# :car1 :at :Brussels .
|
|
161
|
+
# :car1 :battery :high .
|
|
162
|
+
# :car1 :pass :none .
|
|
163
|
+
# } {
|
|
164
|
+
# :car1 :at :Cologne .
|
|
165
|
+
# :car1 :battery :low .
|
|
166
|
+
# :car1 :pass :yes .
|
|
167
|
+
# } (:drive_bru_liege :buy_pass_liege :drive_liege_aachen :fast_charge_aachen_pass :public_road_aachen_cologne) 240 0.053000000000000005 0.9450713763562499 0.8408494079999999 (:t :t :t :t :t :t :t :t) (:t :t :t)) :path true .
|
|
168
|
+
# 0.9450713763562499 math:greaterThan 0.93 .
|
|
169
|
+
# 0.053000000000000005 math:lessThan 0.090 .
|
|
170
|
+
# 240 math:lessThan 260.0 .
|
|
171
|
+
# via the schematic forward rule:
|
|
172
|
+
# {
|
|
173
|
+
# :fuel8 :value ?Fuel .
|
|
174
|
+
# ({
|
|
175
|
+
# :car1 :at :Brussels .
|
|
176
|
+
# :car1 :battery :high .
|
|
177
|
+
# :car1 :pass :none .
|
|
178
|
+
# } {
|
|
179
|
+
# :car1 :at :Cologne .
|
|
180
|
+
# :car1 :battery ?B .
|
|
181
|
+
# :car1 :pass ?P .
|
|
182
|
+
# } ?Acts ?Dur ?Cost ?Bel ?Comf ?Fuel ?FuelLeft) :path true .
|
|
183
|
+
# ?Bel math:greaterThan 0.93 .
|
|
184
|
+
# ?Cost math:lessThan 0.090 .
|
|
185
|
+
# ?Dur math:lessThan 260.0 .
|
|
186
|
+
# } => {
|
|
187
|
+
# :car1 gps:plan (?Acts ?Dur ?Cost ?Bel ?Comf ?B ?P ?FuelLeft) .
|
|
188
|
+
# } .
|
|
189
|
+
# with substitution (on rule variables):
|
|
190
|
+
# ?Acts = (:drive_bru_liege :buy_pass_liege :drive_liege_aachen :fast_charge_aachen_pass :public_road_aachen_cologne)
|
|
191
|
+
# ?B = :low
|
|
192
|
+
# ?Bel = 0.9450713763562499
|
|
193
|
+
# ?Comf = 0.8408494079999999
|
|
194
|
+
# ?Cost = 0.053000000000000005
|
|
195
|
+
# ?Dur = 240
|
|
196
|
+
# ?Fuel = (:t :t :t :t :t :t :t :t)
|
|
197
|
+
# ?FuelLeft = (:t :t :t)
|
|
198
|
+
# ?P = :yes
|
|
199
|
+
# Therefore the derived triple above is entailed by the rules and facts.
|
|
200
|
+
# ----------------------------------------------------------------------
|
|
201
|
+
|
|
202
|
+
:car1 gps:plan ((:drive_bru_liege :buy_pass_liege :drive_liege_aachen :fast_charge_aachen_pass :public_road_aachen_cologne) 240 0.053000000000000005 0.9450713763562499 0.8408494079999999 :low :yes (:t :t :t)) .
|
|
203
|
+
|
|
204
|
+
# ----------------------------------------------------------------------
|
|
205
|
+
# Proof for derived triple:
|
|
206
|
+
# :car1 gps:plan ((:drive_bru_liege :buy_pass_liege :drive_liege_aachen :fast_charge_aachen_pass :premium_corridor_aachen_cologne) 225 0.062 0.949917896235 0.8715053759999999 :low :yes (:t :t :t)) .
|
|
207
|
+
# It holds because the following instance of the rule body is provable:
|
|
208
|
+
# :fuel8 :value (:t :t :t :t :t :t :t :t) .
|
|
209
|
+
# ({
|
|
210
|
+
# :car1 :at :Brussels .
|
|
211
|
+
# :car1 :battery :high .
|
|
212
|
+
# :car1 :pass :none .
|
|
213
|
+
# } {
|
|
214
|
+
# :car1 :at :Cologne .
|
|
215
|
+
# :car1 :battery :low .
|
|
216
|
+
# :car1 :pass :yes .
|
|
217
|
+
# } (:drive_bru_liege :buy_pass_liege :drive_liege_aachen :fast_charge_aachen_pass :premium_corridor_aachen_cologne) 225 0.062 0.949917896235 0.8715053759999999 (:t :t :t :t :t :t :t :t) (:t :t :t)) :path true .
|
|
218
|
+
# 0.949917896235 math:greaterThan 0.93 .
|
|
219
|
+
# 0.062 math:lessThan 0.090 .
|
|
220
|
+
# 225 math:lessThan 260.0 .
|
|
221
|
+
# via the schematic forward rule:
|
|
222
|
+
# {
|
|
223
|
+
# :fuel8 :value ?Fuel .
|
|
224
|
+
# ({
|
|
225
|
+
# :car1 :at :Brussels .
|
|
226
|
+
# :car1 :battery :high .
|
|
227
|
+
# :car1 :pass :none .
|
|
228
|
+
# } {
|
|
229
|
+
# :car1 :at :Cologne .
|
|
230
|
+
# :car1 :battery ?B .
|
|
231
|
+
# :car1 :pass ?P .
|
|
232
|
+
# } ?Acts ?Dur ?Cost ?Bel ?Comf ?Fuel ?FuelLeft) :path true .
|
|
233
|
+
# ?Bel math:greaterThan 0.93 .
|
|
234
|
+
# ?Cost math:lessThan 0.090 .
|
|
235
|
+
# ?Dur math:lessThan 260.0 .
|
|
236
|
+
# } => {
|
|
237
|
+
# :car1 gps:plan (?Acts ?Dur ?Cost ?Bel ?Comf ?B ?P ?FuelLeft) .
|
|
238
|
+
# } .
|
|
239
|
+
# with substitution (on rule variables):
|
|
240
|
+
# ?Acts = (:drive_bru_liege :buy_pass_liege :drive_liege_aachen :fast_charge_aachen_pass :premium_corridor_aachen_cologne)
|
|
241
|
+
# ?B = :low
|
|
242
|
+
# ?Bel = 0.949917896235
|
|
243
|
+
# ?Comf = 0.8715053759999999
|
|
244
|
+
# ?Cost = 0.062
|
|
245
|
+
# ?Dur = 225
|
|
246
|
+
# ?Fuel = (:t :t :t :t :t :t :t :t)
|
|
247
|
+
# ?FuelLeft = (:t :t :t)
|
|
248
|
+
# ?P = :yes
|
|
249
|
+
# Therefore the derived triple above is entailed by the rules and facts.
|
|
250
|
+
# ----------------------------------------------------------------------
|
|
251
|
+
|
|
252
|
+
:car1 gps:plan ((:drive_bru_liege :buy_pass_liege :drive_liege_aachen :fast_charge_aachen_pass :premium_corridor_aachen_cologne) 225 0.062 0.949917896235 0.8715053759999999 :low :yes (:t :t :t)) .
|
|
253
|
+
|
|
254
|
+
# ----------------------------------------------------------------------
|
|
255
|
+
# Proof for derived triple:
|
|
256
|
+
# :car1 gps:plan ((:drive_bru_liege :buy_pass_liege :drive_liege_aachen :shuttle_aachen_cologne) 225 0.05700000000000001 0.9693039757499999 0.8803536 :low :yes (:t :t :t :t)) .
|
|
257
|
+
# It holds because the following instance of the rule body is provable:
|
|
258
|
+
# :fuel8 :value (:t :t :t :t :t :t :t :t) .
|
|
259
|
+
# ({
|
|
260
|
+
# :car1 :at :Brussels .
|
|
261
|
+
# :car1 :battery :high .
|
|
262
|
+
# :car1 :pass :none .
|
|
263
|
+
# } {
|
|
264
|
+
# :car1 :at :Cologne .
|
|
265
|
+
# :car1 :battery :low .
|
|
266
|
+
# :car1 :pass :yes .
|
|
267
|
+
# } (:drive_bru_liege :buy_pass_liege :drive_liege_aachen :shuttle_aachen_cologne) 225 0.05700000000000001 0.9693039757499999 0.8803536 (:t :t :t :t :t :t :t :t) (:t :t :t :t)) :path true .
|
|
268
|
+
# 0.9693039757499999 math:greaterThan 0.93 .
|
|
269
|
+
# 0.05700000000000001 math:lessThan 0.090 .
|
|
270
|
+
# 225 math:lessThan 260.0 .
|
|
271
|
+
# via the schematic forward rule:
|
|
272
|
+
# {
|
|
273
|
+
# :fuel8 :value ?Fuel .
|
|
274
|
+
# ({
|
|
275
|
+
# :car1 :at :Brussels .
|
|
276
|
+
# :car1 :battery :high .
|
|
277
|
+
# :car1 :pass :none .
|
|
278
|
+
# } {
|
|
279
|
+
# :car1 :at :Cologne .
|
|
280
|
+
# :car1 :battery ?B .
|
|
281
|
+
# :car1 :pass ?P .
|
|
282
|
+
# } ?Acts ?Dur ?Cost ?Bel ?Comf ?Fuel ?FuelLeft) :path true .
|
|
283
|
+
# ?Bel math:greaterThan 0.93 .
|
|
284
|
+
# ?Cost math:lessThan 0.090 .
|
|
285
|
+
# ?Dur math:lessThan 260.0 .
|
|
286
|
+
# } => {
|
|
287
|
+
# :car1 gps:plan (?Acts ?Dur ?Cost ?Bel ?Comf ?B ?P ?FuelLeft) .
|
|
288
|
+
# } .
|
|
289
|
+
# with substitution (on rule variables):
|
|
290
|
+
# ?Acts = (:drive_bru_liege :buy_pass_liege :drive_liege_aachen :shuttle_aachen_cologne)
|
|
291
|
+
# ?B = :low
|
|
292
|
+
# ?Bel = 0.9693039757499999
|
|
293
|
+
# ?Comf = 0.8803536
|
|
294
|
+
# ?Cost = 0.05700000000000001
|
|
295
|
+
# ?Dur = 225
|
|
296
|
+
# ?Fuel = (:t :t :t :t :t :t :t :t)
|
|
297
|
+
# ?FuelLeft = (:t :t :t :t)
|
|
298
|
+
# ?P = :yes
|
|
299
|
+
# Therefore the derived triple above is entailed by the rules and facts.
|
|
300
|
+
# ----------------------------------------------------------------------
|
|
301
|
+
|
|
302
|
+
:car1 gps:plan ((:drive_bru_liege :buy_pass_liege :drive_liege_aachen :shuttle_aachen_cologne) 225 0.05700000000000001 0.9693039757499999 0.8803536 :low :yes (:t :t :t :t)) .
|
|
303
|
+
|
|
304
|
+
# ----------------------------------------------------------------------
|
|
305
|
+
# Proof for derived triple:
|
|
306
|
+
# :car1 gps:plan ((:drive_bru_liege :drive_liege_aachen :fast_charge_aachen_payg :public_road_aachen_cologne) 230 0.056999999999999995 0.9412635375 0.8317439999999998 :low :none (:t :t :t :t)) .
|
|
307
|
+
# It holds because the following instance of the rule body is provable:
|
|
308
|
+
# :fuel8 :value (:t :t :t :t :t :t :t :t) .
|
|
309
|
+
# ({
|
|
310
|
+
# :car1 :at :Brussels .
|
|
311
|
+
# :car1 :battery :high .
|
|
312
|
+
# :car1 :pass :none .
|
|
313
|
+
# } {
|
|
314
|
+
# :car1 :at :Cologne .
|
|
315
|
+
# :car1 :battery :low .
|
|
316
|
+
# :car1 :pass :none .
|
|
317
|
+
# } (:drive_bru_liege :drive_liege_aachen :fast_charge_aachen_payg :public_road_aachen_cologne) 230 0.056999999999999995 0.9412635375 0.8317439999999998 (:t :t :t :t :t :t :t :t) (:t :t :t :t)) :path true .
|
|
318
|
+
# 0.9412635375 math:greaterThan 0.93 .
|
|
319
|
+
# 0.056999999999999995 math:lessThan 0.090 .
|
|
320
|
+
# 230 math:lessThan 260.0 .
|
|
321
|
+
# via the schematic forward rule:
|
|
322
|
+
# {
|
|
323
|
+
# :fuel8 :value ?Fuel .
|
|
324
|
+
# ({
|
|
325
|
+
# :car1 :at :Brussels .
|
|
326
|
+
# :car1 :battery :high .
|
|
327
|
+
# :car1 :pass :none .
|
|
328
|
+
# } {
|
|
329
|
+
# :car1 :at :Cologne .
|
|
330
|
+
# :car1 :battery ?B .
|
|
331
|
+
# :car1 :pass ?P .
|
|
332
|
+
# } ?Acts ?Dur ?Cost ?Bel ?Comf ?Fuel ?FuelLeft) :path true .
|
|
333
|
+
# ?Bel math:greaterThan 0.93 .
|
|
334
|
+
# ?Cost math:lessThan 0.090 .
|
|
335
|
+
# ?Dur math:lessThan 260.0 .
|
|
336
|
+
# } => {
|
|
337
|
+
# :car1 gps:plan (?Acts ?Dur ?Cost ?Bel ?Comf ?B ?P ?FuelLeft) .
|
|
338
|
+
# } .
|
|
339
|
+
# with substitution (on rule variables):
|
|
340
|
+
# ?Acts = (:drive_bru_liege :drive_liege_aachen :fast_charge_aachen_payg :public_road_aachen_cologne)
|
|
341
|
+
# ?B = :low
|
|
342
|
+
# ?Bel = 0.9412635375
|
|
343
|
+
# ?Comf = 0.8317439999999998
|
|
344
|
+
# ?Cost = 0.056999999999999995
|
|
345
|
+
# ?Dur = 230
|
|
346
|
+
# ?Fuel = (:t :t :t :t :t :t :t :t)
|
|
347
|
+
# ?FuelLeft = (:t :t :t :t)
|
|
348
|
+
# ?P = :none
|
|
349
|
+
# Therefore the derived triple above is entailed by the rules and facts.
|
|
350
|
+
# ----------------------------------------------------------------------
|
|
351
|
+
|
|
352
|
+
:car1 gps:plan ((:drive_bru_liege :drive_liege_aachen :fast_charge_aachen_payg :public_road_aachen_cologne) 230 0.056999999999999995 0.9412635375 0.8317439999999998 :low :none (:t :t :t :t)) .
|
|
353
|
+
|
|
354
|
+
# ----------------------------------------------------------------------
|
|
355
|
+
# Proof for derived triple:
|
|
356
|
+
# :car1 gps:plan ((:drive_bru_liege :drive_liege_aachen :shuttle_aachen_cologne) 210 0.054000000000000006 0.9741748499999999 0.8983199999999999 :low :none (:t :t :t :t :t)) .
|
|
357
|
+
# It holds because the following instance of the rule body is provable:
|
|
358
|
+
# :fuel8 :value (:t :t :t :t :t :t :t :t) .
|
|
359
|
+
# ({
|
|
360
|
+
# :car1 :at :Brussels .
|
|
361
|
+
# :car1 :battery :high .
|
|
362
|
+
# :car1 :pass :none .
|
|
363
|
+
# } {
|
|
364
|
+
# :car1 :at :Cologne .
|
|
365
|
+
# :car1 :battery :low .
|
|
366
|
+
# :car1 :pass :none .
|
|
367
|
+
# } (:drive_bru_liege :drive_liege_aachen :shuttle_aachen_cologne) 210 0.054000000000000006 0.9741748499999999 0.8983199999999999 (:t :t :t :t :t :t :t :t) (:t :t :t :t :t)) :path true .
|
|
368
|
+
# 0.9741748499999999 math:greaterThan 0.93 .
|
|
369
|
+
# 0.054000000000000006 math:lessThan 0.090 .
|
|
370
|
+
# 210 math:lessThan 260.0 .
|
|
371
|
+
# via the schematic forward rule:
|
|
372
|
+
# {
|
|
373
|
+
# :fuel8 :value ?Fuel .
|
|
374
|
+
# ({
|
|
375
|
+
# :car1 :at :Brussels .
|
|
376
|
+
# :car1 :battery :high .
|
|
377
|
+
# :car1 :pass :none .
|
|
378
|
+
# } {
|
|
379
|
+
# :car1 :at :Cologne .
|
|
380
|
+
# :car1 :battery ?B .
|
|
381
|
+
# :car1 :pass ?P .
|
|
382
|
+
# } ?Acts ?Dur ?Cost ?Bel ?Comf ?Fuel ?FuelLeft) :path true .
|
|
383
|
+
# ?Bel math:greaterThan 0.93 .
|
|
384
|
+
# ?Cost math:lessThan 0.090 .
|
|
385
|
+
# ?Dur math:lessThan 260.0 .
|
|
386
|
+
# } => {
|
|
387
|
+
# :car1 gps:plan (?Acts ?Dur ?Cost ?Bel ?Comf ?B ?P ?FuelLeft) .
|
|
388
|
+
# } .
|
|
389
|
+
# with substitution (on rule variables):
|
|
390
|
+
# ?Acts = (:drive_bru_liege :drive_liege_aachen :shuttle_aachen_cologne)
|
|
391
|
+
# ?B = :low
|
|
392
|
+
# ?Bel = 0.9741748499999999
|
|
393
|
+
# ?Comf = 0.8983199999999999
|
|
394
|
+
# ?Cost = 0.054000000000000006
|
|
395
|
+
# ?Dur = 210
|
|
396
|
+
# ?Fuel = (:t :t :t :t :t :t :t :t)
|
|
397
|
+
# ?FuelLeft = (:t :t :t :t :t)
|
|
398
|
+
# ?P = :none
|
|
399
|
+
# Therefore the derived triple above is entailed by the rules and facts.
|
|
400
|
+
# ----------------------------------------------------------------------
|
|
401
|
+
|
|
402
|
+
:car1 gps:plan ((:drive_bru_liege :drive_liege_aachen :shuttle_aachen_cologne) 210 0.054000000000000006 0.9741748499999999 0.8983199999999999 :low :none (:t :t :t :t :t)) .
|
|
403
|
+
|