eyeling 1.5.42 → 1.6.0

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.
@@ -0,0 +1,69 @@
1
+ @prefix : <http://example.org/> .
2
+ @prefix log: <http://www.w3.org/2000/10/swap/log#> .
3
+
4
+ # ----------------------------------------------------------------------
5
+ # Proof for derived triple:
6
+ # :x :y 1 .
7
+ # It holds because the following instance of the rule body is provable:
8
+ # 1 math:equalTo 1 .
9
+ # via the schematic forward rule:
10
+ # {
11
+ # 1 math:equalTo 1 .
12
+ # } => {
13
+ # :x :y 1 .
14
+ # {
15
+ # :x :y 1 .
16
+ # } => {
17
+ # :a :b :c .
18
+ # } .
19
+ # } .
20
+ # Therefore the derived triple above is entailed by the rules and facts.
21
+ # ----------------------------------------------------------------------
22
+
23
+ :x :y 1 .
24
+
25
+ # ----------------------------------------------------------------------
26
+ # Proof for derived triple:
27
+ # {
28
+ # :x :y 1 .
29
+ # } => {
30
+ # :a :b :c .
31
+ # } .
32
+ # It holds because the following instance of the rule body is provable:
33
+ # 1 math:equalTo 1 .
34
+ # via the schematic forward rule:
35
+ # {
36
+ # 1 math:equalTo 1 .
37
+ # } => {
38
+ # :x :y 1 .
39
+ # {
40
+ # :x :y 1 .
41
+ # } => {
42
+ # :a :b :c .
43
+ # } .
44
+ # } .
45
+ # Therefore the derived triple above is entailed by the rules and facts.
46
+ # ----------------------------------------------------------------------
47
+
48
+ {
49
+ :x :y 1 .
50
+ } => {
51
+ :a :b :c .
52
+ } .
53
+
54
+ # ----------------------------------------------------------------------
55
+ # Proof for derived triple:
56
+ # :a :b :c .
57
+ # It holds because the following instance of the rule body is provable:
58
+ # :x :y 1 .
59
+ # via the schematic forward rule:
60
+ # {
61
+ # :x :y 1 .
62
+ # } => {
63
+ # :a :b :c .
64
+ # } .
65
+ # Therefore the derived triple above is entailed by the rules and facts.
66
+ # ----------------------------------------------------------------------
67
+
68
+ :a :b :c .
69
+
@@ -0,0 +1,628 @@
1
+ @prefix : <http://example.org/ruby-runge#> .
2
+
3
+ # ----------------------------------------------------------------------
4
+ # Proof for derived triple:
5
+ # :Interp1 :yAtX0 -0.27999999999999986 .
6
+ # It holds because the following instance of the rule body is provable:
7
+ # :Interp1 :points (_:b1 _:b2 _:b3 _:b4 _:b5) .
8
+ # :Interp1 :x0 0.6 .
9
+ # (?term {
10
+ # (_:b1 _:b2 _:b3 _:b4 _:b5) list:member ?pi .
11
+ # ?pi :x ?xi .
12
+ # ?pi :y ?yi .
13
+ # (?f {
14
+ # (_:b1 _:b2 _:b3 _:b4 _:b5) list:member ?pj .
15
+ # ?pj :x ?xj .
16
+ # ?xj math:notEqualTo ?xi .
17
+ # (0.6 ?xj) math:difference ?num .
18
+ # (?xi ?xj) math:difference ?den .
19
+ # (?num ?den) math:quotient ?f .
20
+ # } ?factors) log:collectAllIn ?_b1 .
21
+ # ?factors math:product ?basis .
22
+ # (?yi ?basis) math:product ?term .
23
+ # } (-0.2912 0.5824 -0.5823999999999999 -0.14559999999999998 0.1568)) log:collectAllIn ?_b2 .
24
+ # (-0.2912 0.5824 -0.5823999999999999 -0.14559999999999998 0.1568) math:sum -0.27999999999999986 .
25
+ # via the schematic forward rule:
26
+ # {
27
+ # :Interp1 :points ?pts .
28
+ # :Interp1 :x0 ?x0 .
29
+ # (?term {
30
+ # ?pts list:member ?pi .
31
+ # ?pi :x ?xi .
32
+ # ?pi :y ?yi .
33
+ # (?f {
34
+ # ?pts list:member ?pj .
35
+ # ?pj :x ?xj .
36
+ # ?xj math:notEqualTo ?xi .
37
+ # (?x0 ?xj) math:difference ?num .
38
+ # (?xi ?xj) math:difference ?den .
39
+ # (?num ?den) math:quotient ?f .
40
+ # } ?factors) log:collectAllIn ?_b1 .
41
+ # ?factors math:product ?basis .
42
+ # (?yi ?basis) math:product ?term .
43
+ # } ?terms) log:collectAllIn ?_b2 .
44
+ # ?terms math:sum ?y0 .
45
+ # } => {
46
+ # :Interp1 :yAtX0 ?y0 .
47
+ # } .
48
+ # with substitution (on rule variables):
49
+ # ?pts = (_:b1 _:b2 _:b3 _:b4 _:b5)
50
+ # ?terms = (-0.2912 0.5824 -0.5823999999999999 -0.14559999999999998 0.1568)
51
+ # ?x0 = 0.6
52
+ # ?y0 = -0.27999999999999986
53
+ # Therefore the derived triple above is entailed by the rules and facts.
54
+ # ----------------------------------------------------------------------
55
+
56
+ :Interp1 :yAtX0 -0.27999999999999986 .
57
+
58
+ # ----------------------------------------------------------------------
59
+ # Proof for derived triple:
60
+ # :Interp1 :yAtXPlus -0.2775980000000001 .
61
+ # It holds because the following instance of the rule body is provable:
62
+ # :Interp1 :points (_:b1 _:b2 _:b3 _:b4 _:b5) .
63
+ # :Interp1 :x0 0.6 .
64
+ # :Interp1 :h 0.001 .
65
+ # (0.6 0.001) math:sum 0.601 .
66
+ # (?term {
67
+ # (_:b1 _:b2 _:b3 _:b4 _:b5) list:member ?pi .
68
+ # ?pi :x ?xi .
69
+ # ?pi :y ?yi .
70
+ # (?f {
71
+ # (_:b1 _:b2 _:b3 _:b4 _:b5) list:member ?pj .
72
+ # ?pj :x ?xj .
73
+ # ?xj math:notEqualTo ?xi .
74
+ # (0.601 ?xj) math:difference ?num .
75
+ # (?xi ?xj) math:difference ?den .
76
+ # (?num ?den) math:quotient ?f .
77
+ # } ?factors) log:collectAllIn ?_b1 .
78
+ # ?factors math:product ?basis .
79
+ # (?yi ?basis) math:product ?term .
80
+ # } (-0.291249943716375 0.5835426727665 -0.58111529060025 -0.1454300602335 0.15665462178362502)) log:collectAllIn ?_b2 .
81
+ # (-0.291249943716375 0.5835426727665 -0.58111529060025 -0.1454300602335 0.15665462178362502) math:sum -0.2775980000000001 .
82
+ # via the schematic forward rule:
83
+ # {
84
+ # :Interp1 :points ?pts .
85
+ # :Interp1 :x0 ?x0 .
86
+ # :Interp1 :h ?h .
87
+ # (?x0 ?h) math:sum ?xPlus .
88
+ # (?term {
89
+ # ?pts list:member ?pi .
90
+ # ?pi :x ?xi .
91
+ # ?pi :y ?yi .
92
+ # (?f {
93
+ # ?pts list:member ?pj .
94
+ # ?pj :x ?xj .
95
+ # ?xj math:notEqualTo ?xi .
96
+ # (?xPlus ?xj) math:difference ?num .
97
+ # (?xi ?xj) math:difference ?den .
98
+ # (?num ?den) math:quotient ?f .
99
+ # } ?factors) log:collectAllIn ?_b1 .
100
+ # ?factors math:product ?basis .
101
+ # (?yi ?basis) math:product ?term .
102
+ # } ?terms) log:collectAllIn ?_b2 .
103
+ # ?terms math:sum ?yPlus .
104
+ # } => {
105
+ # :Interp1 :yAtXPlus ?yPlus .
106
+ # :Interp1 :xPlus ?xPlus .
107
+ # } .
108
+ # with substitution (on rule variables):
109
+ # ?h = 0.001
110
+ # ?pts = (_:b1 _:b2 _:b3 _:b4 _:b5)
111
+ # ?terms = (-0.291249943716375 0.5835426727665 -0.58111529060025 -0.1454300602335 0.15665462178362502)
112
+ # ?x0 = 0.6
113
+ # ?xPlus = 0.601
114
+ # ?yPlus = -0.2775980000000001
115
+ # Therefore the derived triple above is entailed by the rules and facts.
116
+ # ----------------------------------------------------------------------
117
+
118
+ :Interp1 :yAtXPlus -0.2775980000000001 .
119
+
120
+ # ----------------------------------------------------------------------
121
+ # Proof for derived triple:
122
+ # :Interp1 :xPlus 0.601 .
123
+ # It holds because the following instance of the rule body is provable:
124
+ # :Interp1 :points (_:b1 _:b2 _:b3 _:b4 _:b5) .
125
+ # :Interp1 :x0 0.6 .
126
+ # :Interp1 :h 0.001 .
127
+ # (0.6 0.001) math:sum 0.601 .
128
+ # (?term {
129
+ # (_:b1 _:b2 _:b3 _:b4 _:b5) list:member ?pi .
130
+ # ?pi :x ?xi .
131
+ # ?pi :y ?yi .
132
+ # (?f {
133
+ # (_:b1 _:b2 _:b3 _:b4 _:b5) list:member ?pj .
134
+ # ?pj :x ?xj .
135
+ # ?xj math:notEqualTo ?xi .
136
+ # (0.601 ?xj) math:difference ?num .
137
+ # (?xi ?xj) math:difference ?den .
138
+ # (?num ?den) math:quotient ?f .
139
+ # } ?factors) log:collectAllIn ?_b1 .
140
+ # ?factors math:product ?basis .
141
+ # (?yi ?basis) math:product ?term .
142
+ # } (-0.291249943716375 0.5835426727665 -0.58111529060025 -0.1454300602335 0.15665462178362502)) log:collectAllIn ?_b2 .
143
+ # (-0.291249943716375 0.5835426727665 -0.58111529060025 -0.1454300602335 0.15665462178362502) math:sum -0.2775980000000001 .
144
+ # via the schematic forward rule:
145
+ # {
146
+ # :Interp1 :points ?pts .
147
+ # :Interp1 :x0 ?x0 .
148
+ # :Interp1 :h ?h .
149
+ # (?x0 ?h) math:sum ?xPlus .
150
+ # (?term {
151
+ # ?pts list:member ?pi .
152
+ # ?pi :x ?xi .
153
+ # ?pi :y ?yi .
154
+ # (?f {
155
+ # ?pts list:member ?pj .
156
+ # ?pj :x ?xj .
157
+ # ?xj math:notEqualTo ?xi .
158
+ # (?xPlus ?xj) math:difference ?num .
159
+ # (?xi ?xj) math:difference ?den .
160
+ # (?num ?den) math:quotient ?f .
161
+ # } ?factors) log:collectAllIn ?_b1 .
162
+ # ?factors math:product ?basis .
163
+ # (?yi ?basis) math:product ?term .
164
+ # } ?terms) log:collectAllIn ?_b2 .
165
+ # ?terms math:sum ?yPlus .
166
+ # } => {
167
+ # :Interp1 :yAtXPlus ?yPlus .
168
+ # :Interp1 :xPlus ?xPlus .
169
+ # } .
170
+ # with substitution (on rule variables):
171
+ # ?h = 0.001
172
+ # ?pts = (_:b1 _:b2 _:b3 _:b4 _:b5)
173
+ # ?terms = (-0.291249943716375 0.5835426727665 -0.58111529060025 -0.1454300602335 0.15665462178362502)
174
+ # ?x0 = 0.6
175
+ # ?xPlus = 0.601
176
+ # ?yPlus = -0.2775980000000001
177
+ # Therefore the derived triple above is entailed by the rules and facts.
178
+ # ----------------------------------------------------------------------
179
+
180
+ :Interp1 :xPlus 0.601 .
181
+
182
+ # ----------------------------------------------------------------------
183
+ # Proof for derived triple:
184
+ # :Interp1 :yAtXMinus -0.28239800000000004 .
185
+ # It holds because the following instance of the rule body is provable:
186
+ # :Interp1 :points (_:b1 _:b2 _:b3 _:b4 _:b5) .
187
+ # :Interp1 :x0 0.6 .
188
+ # :Interp1 :h 0.001 .
189
+ # (0.6 0.001) math:difference 0.599 .
190
+ # (?term {
191
+ # (_:b1 _:b2 _:b3 _:b4 _:b5) list:member ?pi .
192
+ # ?pi :x ?xi .
193
+ # ?pi :y ?yi .
194
+ # (?f {
195
+ # (_:b1 _:b2 _:b3 _:b4 _:b5) list:member ?pj .
196
+ # ?pj :x ?xj .
197
+ # ?xj math:notEqualTo ?xi .
198
+ # (0.599 ?xj) math:difference ?num .
199
+ # (?xi ?xj) math:difference ?den .
200
+ # (?num ?den) math:quotient ?f .
201
+ # } ?factors) log:collectAllIn ?_b1 .
202
+ # ?factors math:product ?basis .
203
+ # (?yi ?basis) math:product ?term .
204
+ # } (-0.291147279616375 0.5812573405665 -0.58368328940025 -0.1457687264335 0.156943954883625)) log:collectAllIn ?_b2 .
205
+ # (-0.291147279616375 0.5812573405665 -0.58368328940025 -0.1457687264335 0.156943954883625) math:sum -0.28239800000000004 .
206
+ # via the schematic forward rule:
207
+ # {
208
+ # :Interp1 :points ?pts .
209
+ # :Interp1 :x0 ?x0 .
210
+ # :Interp1 :h ?h .
211
+ # (?x0 ?h) math:difference ?xMinus .
212
+ # (?term {
213
+ # ?pts list:member ?pi .
214
+ # ?pi :x ?xi .
215
+ # ?pi :y ?yi .
216
+ # (?f {
217
+ # ?pts list:member ?pj .
218
+ # ?pj :x ?xj .
219
+ # ?xj math:notEqualTo ?xi .
220
+ # (?xMinus ?xj) math:difference ?num .
221
+ # (?xi ?xj) math:difference ?den .
222
+ # (?num ?den) math:quotient ?f .
223
+ # } ?factors) log:collectAllIn ?_b1 .
224
+ # ?factors math:product ?basis .
225
+ # (?yi ?basis) math:product ?term .
226
+ # } ?terms) log:collectAllIn ?_b2 .
227
+ # ?terms math:sum ?yMinus .
228
+ # } => {
229
+ # :Interp1 :yAtXMinus ?yMinus .
230
+ # :Interp1 :xMinus ?xMinus .
231
+ # } .
232
+ # with substitution (on rule variables):
233
+ # ?h = 0.001
234
+ # ?pts = (_:b1 _:b2 _:b3 _:b4 _:b5)
235
+ # ?terms = (-0.291147279616375 0.5812573405665 -0.58368328940025 -0.1457687264335 0.156943954883625)
236
+ # ?x0 = 0.6
237
+ # ?xMinus = 0.599
238
+ # ?yMinus = -0.28239800000000004
239
+ # Therefore the derived triple above is entailed by the rules and facts.
240
+ # ----------------------------------------------------------------------
241
+
242
+ :Interp1 :yAtXMinus -0.28239800000000004 .
243
+
244
+ # ----------------------------------------------------------------------
245
+ # Proof for derived triple:
246
+ # :Interp1 :xMinus 0.599 .
247
+ # It holds because the following instance of the rule body is provable:
248
+ # :Interp1 :points (_:b1 _:b2 _:b3 _:b4 _:b5) .
249
+ # :Interp1 :x0 0.6 .
250
+ # :Interp1 :h 0.001 .
251
+ # (0.6 0.001) math:difference 0.599 .
252
+ # (?term {
253
+ # (_:b1 _:b2 _:b3 _:b4 _:b5) list:member ?pi .
254
+ # ?pi :x ?xi .
255
+ # ?pi :y ?yi .
256
+ # (?f {
257
+ # (_:b1 _:b2 _:b3 _:b4 _:b5) list:member ?pj .
258
+ # ?pj :x ?xj .
259
+ # ?xj math:notEqualTo ?xi .
260
+ # (0.599 ?xj) math:difference ?num .
261
+ # (?xi ?xj) math:difference ?den .
262
+ # (?num ?den) math:quotient ?f .
263
+ # } ?factors) log:collectAllIn ?_b1 .
264
+ # ?factors math:product ?basis .
265
+ # (?yi ?basis) math:product ?term .
266
+ # } (-0.291147279616375 0.5812573405665 -0.58368328940025 -0.1457687264335 0.156943954883625)) log:collectAllIn ?_b2 .
267
+ # (-0.291147279616375 0.5812573405665 -0.58368328940025 -0.1457687264335 0.156943954883625) math:sum -0.28239800000000004 .
268
+ # via the schematic forward rule:
269
+ # {
270
+ # :Interp1 :points ?pts .
271
+ # :Interp1 :x0 ?x0 .
272
+ # :Interp1 :h ?h .
273
+ # (?x0 ?h) math:difference ?xMinus .
274
+ # (?term {
275
+ # ?pts list:member ?pi .
276
+ # ?pi :x ?xi .
277
+ # ?pi :y ?yi .
278
+ # (?f {
279
+ # ?pts list:member ?pj .
280
+ # ?pj :x ?xj .
281
+ # ?xj math:notEqualTo ?xi .
282
+ # (?xMinus ?xj) math:difference ?num .
283
+ # (?xi ?xj) math:difference ?den .
284
+ # (?num ?den) math:quotient ?f .
285
+ # } ?factors) log:collectAllIn ?_b1 .
286
+ # ?factors math:product ?basis .
287
+ # (?yi ?basis) math:product ?term .
288
+ # } ?terms) log:collectAllIn ?_b2 .
289
+ # ?terms math:sum ?yMinus .
290
+ # } => {
291
+ # :Interp1 :yAtXMinus ?yMinus .
292
+ # :Interp1 :xMinus ?xMinus .
293
+ # } .
294
+ # with substitution (on rule variables):
295
+ # ?h = 0.001
296
+ # ?pts = (_:b1 _:b2 _:b3 _:b4 _:b5)
297
+ # ?terms = (-0.291147279616375 0.5812573405665 -0.58368328940025 -0.1457687264335 0.156943954883625)
298
+ # ?x0 = 0.6
299
+ # ?xMinus = 0.599
300
+ # ?yMinus = -0.28239800000000004
301
+ # Therefore the derived triple above is entailed by the rules and facts.
302
+ # ----------------------------------------------------------------------
303
+
304
+ :Interp1 :xMinus 0.599 .
305
+
306
+ # ----------------------------------------------------------------------
307
+ # Proof for derived triple:
308
+ # :Interp1 :derivativeAtX0 2.3999999999999577 .
309
+ # It holds because the following instance of the rule body is provable:
310
+ # :Interp1 :yAtXPlus -0.2775980000000001 .
311
+ # :Interp1 :yAtXMinus -0.28239800000000004 .
312
+ # :Interp1 :h 0.001 .
313
+ # (-0.2775980000000001 -0.28239800000000004) math:difference 0.0047999999999999154 .
314
+ # (2.0 0.001) math:product 0.002 .
315
+ # (0.0047999999999999154 0.002) math:quotient 2.3999999999999577 .
316
+ # via the schematic forward rule:
317
+ # {
318
+ # :Interp1 :yAtXPlus ?yP .
319
+ # :Interp1 :yAtXMinus ?yM .
320
+ # :Interp1 :h ?h .
321
+ # (?yP ?yM) math:difference ?dy .
322
+ # (2.0 ?h) math:product ?twoH .
323
+ # (?dy ?twoH) math:quotient ?dydx .
324
+ # } => {
325
+ # :Interp1 :derivativeAtX0 ?dydx .
326
+ # } .
327
+ # with substitution (on rule variables):
328
+ # ?dy = 0.0047999999999999154
329
+ # ?dydx = 2.3999999999999577
330
+ # ?h = 0.001
331
+ # ?twoH = 0.002
332
+ # ?yM = -0.28239800000000004
333
+ # ?yP = -0.2775980000000001
334
+ # Therefore the derived triple above is entailed by the rules and facts.
335
+ # ----------------------------------------------------------------------
336
+
337
+ :Interp1 :derivativeAtX0 2.3999999999999577 .
338
+
339
+ # ----------------------------------------------------------------------
340
+ # Proof for derived triple:
341
+ # :Interp1 :yAtBracketA -1 .
342
+ # It holds because the following instance of the rule body is provable:
343
+ # :Interp1 :points (_:b1 _:b2 _:b3 _:b4 _:b5) .
344
+ # :Interp1 :bracketA 0.0 .
345
+ # (?term {
346
+ # (_:b1 _:b2 _:b3 _:b4 _:b5) list:member ?pi .
347
+ # ?pi :x ?xi .
348
+ # ?pi :y ?yi .
349
+ # (?f {
350
+ # (_:b1 _:b2 _:b3 _:b4 _:b5) list:member ?pj .
351
+ # ?pj :x ?xj .
352
+ # ?xj math:notEqualTo ?xi .
353
+ # (0.0 ?xj) math:difference ?num .
354
+ # (?xi ?xj) math:difference ?den .
355
+ # (?num ?den) math:quotient ?f .
356
+ # } ?factors) log:collectAllIn ?_b1 .
357
+ # ?factors math:product ?basis .
358
+ # (?yi ?basis) math:product ?term .
359
+ # } (0 0 -1 0 0)) log:collectAllIn ?_b2 .
360
+ # (0 0 -1 0 0) math:sum -1 .
361
+ # via the schematic forward rule:
362
+ # {
363
+ # :Interp1 :points ?pts .
364
+ # :Interp1 :bracketA ?xa .
365
+ # (?term {
366
+ # ?pts list:member ?pi .
367
+ # ?pi :x ?xi .
368
+ # ?pi :y ?yi .
369
+ # (?f {
370
+ # ?pts list:member ?pj .
371
+ # ?pj :x ?xj .
372
+ # ?xj math:notEqualTo ?xi .
373
+ # (?xa ?xj) math:difference ?num .
374
+ # (?xi ?xj) math:difference ?den .
375
+ # (?num ?den) math:quotient ?f .
376
+ # } ?factors) log:collectAllIn ?_b1 .
377
+ # ?factors math:product ?basis .
378
+ # (?yi ?basis) math:product ?term .
379
+ # } ?terms) log:collectAllIn ?_b2 .
380
+ # ?terms math:sum ?ya .
381
+ # } => {
382
+ # :Interp1 :yAtBracketA ?ya .
383
+ # } .
384
+ # with substitution (on rule variables):
385
+ # ?pts = (_:b1 _:b2 _:b3 _:b4 _:b5)
386
+ # ?terms = (0 0 -1 0 0)
387
+ # ?xa = 0.0
388
+ # ?ya = -1
389
+ # Therefore the derived triple above is entailed by the rules and facts.
390
+ # ----------------------------------------------------------------------
391
+
392
+ :Interp1 :yAtBracketA -1 .
393
+
394
+ # ----------------------------------------------------------------------
395
+ # Proof for derived triple:
396
+ # :Interp1 :yAtBracketB 1 .
397
+ # It holds because the following instance of the rule body is provable:
398
+ # :Interp1 :points (_:b1 _:b2 _:b3 _:b4 _:b5) .
399
+ # :Interp1 :bracketB 1.0 .
400
+ # (?term {
401
+ # (_:b1 _:b2 _:b3 _:b4 _:b5) list:member ?pi .
402
+ # ?pi :x ?xi .
403
+ # ?pi :y ?yi .
404
+ # (?f {
405
+ # (_:b1 _:b2 _:b3 _:b4 _:b5) list:member ?pj .
406
+ # ?pj :x ?xj .
407
+ # ?xj math:notEqualTo ?xi .
408
+ # (1.0 ?xj) math:difference ?num .
409
+ # (?xi ?xj) math:difference ?den .
410
+ # (?num ?den) math:quotient ?f .
411
+ # } ?factors) log:collectAllIn ?_b1 .
412
+ # ?factors math:product ?basis .
413
+ # (?yi ?basis) math:product ?term .
414
+ # } (0 1 0 0 0)) log:collectAllIn ?_b2 .
415
+ # (0 1 0 0 0) math:sum 1 .
416
+ # via the schematic forward rule:
417
+ # {
418
+ # :Interp1 :points ?pts .
419
+ # :Interp1 :bracketB ?xb .
420
+ # (?term {
421
+ # ?pts list:member ?pi .
422
+ # ?pi :x ?xi .
423
+ # ?pi :y ?yi .
424
+ # (?f {
425
+ # ?pts list:member ?pj .
426
+ # ?pj :x ?xj .
427
+ # ?xj math:notEqualTo ?xi .
428
+ # (?xb ?xj) math:difference ?num .
429
+ # (?xi ?xj) math:difference ?den .
430
+ # (?num ?den) math:quotient ?f .
431
+ # } ?factors) log:collectAllIn ?_b1 .
432
+ # ?factors math:product ?basis .
433
+ # (?yi ?basis) math:product ?term .
434
+ # } ?terms) log:collectAllIn ?_b2 .
435
+ # ?terms math:sum ?yb .
436
+ # } => {
437
+ # :Interp1 :yAtBracketB ?yb .
438
+ # } .
439
+ # with substitution (on rule variables):
440
+ # ?pts = (_:b1 _:b2 _:b3 _:b4 _:b5)
441
+ # ?terms = (0 1 0 0 0)
442
+ # ?xb = 1.0
443
+ # ?yb = 1
444
+ # Therefore the derived triple above is entailed by the rules and facts.
445
+ # ----------------------------------------------------------------------
446
+
447
+ :Interp1 :yAtBracketB 1 .
448
+
449
+ # ----------------------------------------------------------------------
450
+ # Proof for derived triple:
451
+ # _:sk_0 :a 0.0 .
452
+ # It holds because the following instance of the rule body is provable:
453
+ # :Interp1 :bracketA 0.0 .
454
+ # :Interp1 :bracketB 1.0 .
455
+ # :Interp1 :yAtBracketA -1 .
456
+ # :Interp1 :yAtBracketB 1 .
457
+ # (-1 1) math:product -1 .
458
+ # -1 math:lessThan 0.0 .
459
+ # via the schematic forward rule:
460
+ # {
461
+ # :Interp1 :bracketA ?xa .
462
+ # :Interp1 :bracketB ?xb .
463
+ # :Interp1 :yAtBracketA ?ya .
464
+ # :Interp1 :yAtBracketB ?yb .
465
+ # (?ya ?yb) math:product ?prod .
466
+ # ?prod math:lessThan 0.0 .
467
+ # } => {
468
+ # _:b6 :a ?xa .
469
+ # _:b6 :b ?xb .
470
+ # _:b6 :ya ?ya .
471
+ # _:b6 :yb ?yb .
472
+ # :Interp1 :rootBracket _:b6 .
473
+ # } .
474
+ # with substitution (on rule variables):
475
+ # ?prod = -1
476
+ # ?xa = 0.0
477
+ # ?xb = 1.0
478
+ # ?ya = -1
479
+ # ?yb = 1
480
+ # Therefore the derived triple above is entailed by the rules and facts.
481
+ # ----------------------------------------------------------------------
482
+
483
+ _:sk_0 :a 0.0 .
484
+
485
+ # ----------------------------------------------------------------------
486
+ # Proof for derived triple:
487
+ # _:sk_0 :b 1.0 .
488
+ # It holds because the following instance of the rule body is provable:
489
+ # :Interp1 :bracketA 0.0 .
490
+ # :Interp1 :bracketB 1.0 .
491
+ # :Interp1 :yAtBracketA -1 .
492
+ # :Interp1 :yAtBracketB 1 .
493
+ # (-1 1) math:product -1 .
494
+ # -1 math:lessThan 0.0 .
495
+ # via the schematic forward rule:
496
+ # {
497
+ # :Interp1 :bracketA ?xa .
498
+ # :Interp1 :bracketB ?xb .
499
+ # :Interp1 :yAtBracketA ?ya .
500
+ # :Interp1 :yAtBracketB ?yb .
501
+ # (?ya ?yb) math:product ?prod .
502
+ # ?prod math:lessThan 0.0 .
503
+ # } => {
504
+ # _:b6 :a ?xa .
505
+ # _:b6 :b ?xb .
506
+ # _:b6 :ya ?ya .
507
+ # _:b6 :yb ?yb .
508
+ # :Interp1 :rootBracket _:b6 .
509
+ # } .
510
+ # with substitution (on rule variables):
511
+ # ?prod = -1
512
+ # ?xa = 0.0
513
+ # ?xb = 1.0
514
+ # ?ya = -1
515
+ # ?yb = 1
516
+ # Therefore the derived triple above is entailed by the rules and facts.
517
+ # ----------------------------------------------------------------------
518
+
519
+ _:sk_0 :b 1.0 .
520
+
521
+ # ----------------------------------------------------------------------
522
+ # Proof for derived triple:
523
+ # _:sk_0 :ya -1 .
524
+ # It holds because the following instance of the rule body is provable:
525
+ # :Interp1 :bracketA 0.0 .
526
+ # :Interp1 :bracketB 1.0 .
527
+ # :Interp1 :yAtBracketA -1 .
528
+ # :Interp1 :yAtBracketB 1 .
529
+ # (-1 1) math:product -1 .
530
+ # -1 math:lessThan 0.0 .
531
+ # via the schematic forward rule:
532
+ # {
533
+ # :Interp1 :bracketA ?xa .
534
+ # :Interp1 :bracketB ?xb .
535
+ # :Interp1 :yAtBracketA ?ya .
536
+ # :Interp1 :yAtBracketB ?yb .
537
+ # (?ya ?yb) math:product ?prod .
538
+ # ?prod math:lessThan 0.0 .
539
+ # } => {
540
+ # _:b6 :a ?xa .
541
+ # _:b6 :b ?xb .
542
+ # _:b6 :ya ?ya .
543
+ # _:b6 :yb ?yb .
544
+ # :Interp1 :rootBracket _:b6 .
545
+ # } .
546
+ # with substitution (on rule variables):
547
+ # ?prod = -1
548
+ # ?xa = 0.0
549
+ # ?xb = 1.0
550
+ # ?ya = -1
551
+ # ?yb = 1
552
+ # Therefore the derived triple above is entailed by the rules and facts.
553
+ # ----------------------------------------------------------------------
554
+
555
+ _:sk_0 :ya -1 .
556
+
557
+ # ----------------------------------------------------------------------
558
+ # Proof for derived triple:
559
+ # _:sk_0 :yb 1 .
560
+ # It holds because the following instance of the rule body is provable:
561
+ # :Interp1 :bracketA 0.0 .
562
+ # :Interp1 :bracketB 1.0 .
563
+ # :Interp1 :yAtBracketA -1 .
564
+ # :Interp1 :yAtBracketB 1 .
565
+ # (-1 1) math:product -1 .
566
+ # -1 math:lessThan 0.0 .
567
+ # via the schematic forward rule:
568
+ # {
569
+ # :Interp1 :bracketA ?xa .
570
+ # :Interp1 :bracketB ?xb .
571
+ # :Interp1 :yAtBracketA ?ya .
572
+ # :Interp1 :yAtBracketB ?yb .
573
+ # (?ya ?yb) math:product ?prod .
574
+ # ?prod math:lessThan 0.0 .
575
+ # } => {
576
+ # _:b6 :a ?xa .
577
+ # _:b6 :b ?xb .
578
+ # _:b6 :ya ?ya .
579
+ # _:b6 :yb ?yb .
580
+ # :Interp1 :rootBracket _:b6 .
581
+ # } .
582
+ # with substitution (on rule variables):
583
+ # ?prod = -1
584
+ # ?xa = 0.0
585
+ # ?xb = 1.0
586
+ # ?ya = -1
587
+ # ?yb = 1
588
+ # Therefore the derived triple above is entailed by the rules and facts.
589
+ # ----------------------------------------------------------------------
590
+
591
+ _:sk_0 :yb 1 .
592
+
593
+ # ----------------------------------------------------------------------
594
+ # Proof for derived triple:
595
+ # :Interp1 :rootBracket _:sk_0 .
596
+ # It holds because the following instance of the rule body is provable:
597
+ # :Interp1 :bracketA 0.0 .
598
+ # :Interp1 :bracketB 1.0 .
599
+ # :Interp1 :yAtBracketA -1 .
600
+ # :Interp1 :yAtBracketB 1 .
601
+ # (-1 1) math:product -1 .
602
+ # -1 math:lessThan 0.0 .
603
+ # via the schematic forward rule:
604
+ # {
605
+ # :Interp1 :bracketA ?xa .
606
+ # :Interp1 :bracketB ?xb .
607
+ # :Interp1 :yAtBracketA ?ya .
608
+ # :Interp1 :yAtBracketB ?yb .
609
+ # (?ya ?yb) math:product ?prod .
610
+ # ?prod math:lessThan 0.0 .
611
+ # } => {
612
+ # _:b6 :a ?xa .
613
+ # _:b6 :b ?xb .
614
+ # _:b6 :ya ?ya .
615
+ # _:b6 :yb ?yb .
616
+ # :Interp1 :rootBracket _:b6 .
617
+ # } .
618
+ # with substitution (on rule variables):
619
+ # ?prod = -1
620
+ # ?xa = 0.0
621
+ # ?xb = 1.0
622
+ # ?ya = -1
623
+ # ?yb = 1
624
+ # Therefore the derived triple above is entailed by the rules and facts.
625
+ # ----------------------------------------------------------------------
626
+
627
+ :Interp1 :rootBracket _:sk_0 .
628
+