eyeprolog 1.6.2 → 1.6.3

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.
Files changed (994) hide show
  1. package/examples/book/README.md +1 -1
  2. package/examples/book/chapter-11/01-query.pl +12 -0
  3. package/examples/output/abstract-interpretation.pl +25 -16
  4. package/examples/output/access-control-policy.pl +11 -2
  5. package/examples/output/ackermann.pl +19 -12
  6. package/examples/output/age.pl +11 -2
  7. package/examples/output/aliases-and-namespaces.pl +14 -5
  8. package/examples/output/alignment-demo.pl +45 -32
  9. package/examples/output/allen-interval-calculus.pl +163 -154
  10. package/examples/output/ancestor.pl +11 -6
  11. package/examples/output/animal.pl +11 -4
  12. package/examples/output/annotation.pl +13 -4
  13. package/examples/output/attributed-variables.pl +7 -2
  14. package/examples/output/auroracare.pl +207 -117
  15. package/examples/output/backward.pl +4 -1
  16. package/examples/output/basic-monadic.pl +1521 -1518
  17. package/examples/output/bayes-diagnosis.pl +30 -17
  18. package/examples/output/bayes-therapy.pl +50 -23
  19. package/examples/output/beam-deflection.pl +16 -5
  20. package/examples/output/bench.pl +5 -1
  21. package/examples/output/binomial-vandermonde.pl +7 -4
  22. package/examples/output/blocks-world-planning.pl +16 -4
  23. package/examples/output/bmi.pl +121 -41
  24. package/examples/output/braking-safety-worlds.pl +29 -18
  25. package/examples/output/buck-converter-design.pl +21 -6
  26. package/examples/output/bulk-stream-write.pl +4 -1
  27. package/examples/output/cache-performance.pl +14 -4
  28. package/examples/output/canary-release.pl +16 -5
  29. package/examples/output/cat-koko.pl +8 -3
  30. package/examples/output/catalan-convolution.pl +7 -4
  31. package/examples/output/cdcl-sat-solver.pl +12 -7
  32. package/examples/output/chart-parser.pl +9 -6
  33. package/examples/output/clinical-trial-screening.pl +16 -9
  34. package/examples/output/clpb-boolean-circuit.pl +10 -5
  35. package/examples/output/clpb-cardinality.pl +8 -3
  36. package/examples/output/clpb-feature-model.pl +10 -5
  37. package/examples/output/clpb-weighted-planning.pl +4 -1
  38. package/examples/output/clpz-factorial.pl +4 -1
  39. package/examples/output/clpz-global-constraints.pl +10 -7
  40. package/examples/output/clpz-n-queens.pl +8 -3
  41. package/examples/output/clpz-resource-allocation.pl +6 -3
  42. package/examples/output/clpz-sudoku-9x9.pl +5 -1
  43. package/examples/output/collatz-1000.pl +2837 -1000
  44. package/examples/output/combinatorics-findall-sort.pl +11 -2
  45. package/examples/output/competitive-enzyme-kinetics.pl +21 -6
  46. package/examples/output/complex.pl +24 -6
  47. package/examples/output/composition-of-injective-functions-is-injective.pl +5 -2
  48. package/examples/output/context-association.pl +12 -3
  49. package/examples/output/context-schema-audit.pl +17 -12
  50. package/examples/output/continued-fraction-sqrt2.pl +7 -4
  51. package/examples/output/control-system.pl +15 -6
  52. package/examples/output/critical-path-schedule.pl +22 -19
  53. package/examples/output/cross-organization-data-sharing.pl +21 -8
  54. package/examples/output/cyclic-path.pl +19 -16
  55. package/examples/output/d3-group.pl +11 -2
  56. package/examples/output/dairy-energy-balance.pl +24 -13
  57. package/examples/output/data-negotiation.pl +4 -1
  58. package/examples/output/dcg-command-parser.pl +7 -4
  59. package/examples/output/dcg-expression-language.pl +8 -5
  60. package/examples/output/declarative-fault-localization.pl +4 -1
  61. package/examples/output/deep-taxonomy-10.pl +41 -16
  62. package/examples/output/deep-taxonomy-100.pl +41 -16
  63. package/examples/output/deep-taxonomy-1000.pl +43 -16
  64. package/examples/output/deep-taxonomy-10000.pl +43 -16
  65. package/examples/output/deep-taxonomy-100000.pl +43 -16
  66. package/examples/output/defeasible-reasoning.pl +13 -6
  67. package/examples/output/delfour.pl +96 -31
  68. package/examples/output/deontic-logic.pl +11 -4
  69. package/examples/output/derived-backward-rule.pl +10 -3
  70. package/examples/output/derived-rule.pl +9 -2
  71. package/examples/output/diamond-property.pl +11 -4
  72. package/examples/output/dif-constraints.pl +7 -2
  73. package/examples/output/dijkstra-findall-sort.pl +9 -2
  74. package/examples/output/dijkstra-risk-path.pl +48 -29
  75. package/examples/output/dijkstra.pl +21 -16
  76. package/examples/output/dining-philosophers.pl +369 -350
  77. package/examples/output/dog.pl +4 -1
  78. package/examples/output/donald-gerald-robert.pl +8 -5
  79. package/examples/output/dpv-odrl-purpose-mapping.pl +95 -18
  80. package/examples/output/drone-corridor-planner.pl +54 -17
  81. package/examples/output/easter-computus.pl +37 -30
  82. package/examples/output/electrical-rc-filter.pl +10 -3
  83. package/examples/output/enigma1225.pl +5 -1
  84. package/examples/output/epidemic-policy.pl +27 -14
  85. package/examples/output/equality-saturation.pl +10 -5
  86. package/examples/output/equivalence-classes-overlap-implies-same-class.pl +21 -18
  87. package/examples/output/eulerian-path.pl +12 -3
  88. package/examples/output/ev-range-worlds.pl +32 -19
  89. package/examples/output/existential-rule.pl +5 -2
  90. package/examples/output/exoplanet-validation-worlds.pl +35 -22
  91. package/examples/output/explainable-ev-depot-configuration.pl +17 -8
  92. package/examples/output/expression-eval.pl +4 -1
  93. package/examples/output/family-cousins.pl +35 -28
  94. package/examples/output/fast-fourier-transform.pl +5 -1
  95. package/examples/output/fastpow.pl +17 -6
  96. package/examples/output/fft8-numeric.pl +13 -4
  97. package/examples/output/fibonacci.pl +13 -6
  98. package/examples/output/field-nitrogen-balance.pl +36 -21
  99. package/examples/output/flandor.pl +136 -43
  100. package/examples/output/floating-point.pl +14 -9
  101. package/examples/output/four-color-map.pl +12 -3
  102. package/examples/output/fundamental-theorem-arithmetic.pl +28 -9
  103. package/examples/output/gd-step-certified.pl +98 -79
  104. package/examples/output/gdpr-compliance.pl +11 -6
  105. package/examples/output/goldbach.pl +27 -24
  106. package/examples/output/good-cobbler.pl +4 -1
  107. package/examples/output/gps.pl +48 -21
  108. package/examples/output/graph-reachability.pl +8 -3
  109. package/examples/output/graph.pl +24 -21
  110. package/examples/output/gray-code-counter.pl +6 -1
  111. package/examples/output/greatest-lower-bound-uniqueness.pl +5 -2
  112. package/examples/output/group-inverse-uniqueness.pl +5 -2
  113. package/examples/output/hamiltonian-path.pl +126 -121
  114. package/examples/output/hamming-code.pl +19 -6
  115. package/examples/output/hanoi.pl +6 -1
  116. package/examples/output/heat-loss.pl +16 -5
  117. package/examples/output/herbrand-semantics.pl +5 -2
  118. package/examples/output/herbrand-witnesses.pl +16 -7
  119. package/examples/output/heron-theorem.pl +13 -4
  120. package/examples/output/http-client.pl +1 -0
  121. package/examples/output/ideal-gas-law.pl +10 -3
  122. package/examples/output/illegitimate-reasoning.pl +40 -19
  123. package/examples/output/integer-partitions.pl +7 -4
  124. package/examples/output/integrity-check.pl +7 -2
  125. package/examples/output/intuitionistic-logic-kripke.pl +16 -5
  126. package/examples/output/iso-atomic-conversion.pl +16 -13
  127. package/examples/output/iso-control-and-errors.pl +8 -5
  128. package/examples/output/iso-dynamic-database.pl +9 -4
  129. package/examples/output/iso-extension-pipeline-audit.pl +5 -1
  130. package/examples/output/iso-extensions.pl +9 -6
  131. package/examples/output/iso-grouped-solutions.pl +8 -5
  132. package/examples/output/iso-integer-arithmetic.pl +8 -5
  133. package/examples/output/iso-operators.pl +6 -3
  134. package/examples/output/iso-reflective-terms.pl +10 -7
  135. package/examples/output/iso-term-io.pl +6 -3
  136. package/examples/output/job-shop-scheduling.pl +8 -3
  137. package/examples/output/json.pl +7 -2
  138. package/examples/output/knapsack-optimization.pl +7 -4
  139. package/examples/output/knights-tour-warnsdorff.pl +6 -1
  140. package/examples/output/knowledge-engineering-alignment-flow.pl +34 -21
  141. package/examples/output/knuth-bendix-completion.pl +12 -7
  142. package/examples/output/language.pl +9 -6
  143. package/examples/output/law-of-cosines.pl +10 -3
  144. package/examples/output/least-squares-regression.pl +17 -5
  145. package/examples/output/lee.pl +5 -1
  146. package/examples/output/linear-logic-resources.pl +7 -2
  147. package/examples/output/list-collection.pl +18 -7
  148. package/examples/output/lldm.pl +19 -6
  149. package/examples/output/manufacturing-quality-control.pl +13 -6
  150. package/examples/output/map-four-color-search.pl +6 -1
  151. package/examples/output/markov-logic-network.pl +57 -32
  152. package/examples/output/matrix-chain-order.pl +9 -4
  153. package/examples/output/matrix-noncommutativity.pl +6 -3
  154. package/examples/output/microgrid-dispatch.pl +21 -6
  155. package/examples/output/missionaries-cannibals.pl +8 -3
  156. package/examples/output/modal-logic-kripke.pl +9 -4
  157. package/examples/output/modular-exponentiation.pl +7 -4
  158. package/examples/output/monkey-bananas.pl +10 -5
  159. package/examples/output/network-sla.pl +13 -4
  160. package/examples/output/newton-raphson.pl +6 -3
  161. package/examples/output/nixon-diamond.pl +12 -5
  162. package/examples/output/observability-log-correlation.pl +52 -28
  163. package/examples/output/odrl-dpv-fpv-trust-flow.pl +50 -9
  164. package/examples/output/odrl-dpv-healthcare-risk-ranked.pl +80 -15
  165. package/examples/output/odrl-dpv-risk-ranked.pl +105 -20
  166. package/examples/output/odrl-policy-advanced.pl +35 -6
  167. package/examples/output/odrl-policy-reasoning.pl +128 -34
  168. package/examples/output/odrl-policy.pl +25 -4
  169. package/examples/output/operational-incident-response.pl +19 -8
  170. package/examples/output/orbital-transfer-design.pl +24 -7
  171. package/examples/output/partial-evaluator.pl +10 -4
  172. package/examples/output/path-discovery.pl +18 -3
  173. package/examples/output/peano-arithmetic.pl +6 -1
  174. package/examples/output/peano-calculus.pl +8 -3
  175. package/examples/output/peasant.pl +21 -10
  176. package/examples/output/pell-equation.pl +7 -4
  177. package/examples/output/pendulum-period.pl +13 -4
  178. package/examples/output/pi.pl +4 -1
  179. package/examples/output/pointer-analysis.pl +19 -8
  180. package/examples/output/polynomial.pl +25 -14
  181. package/examples/output/portable-library-overlap.pl +5 -1
  182. package/examples/output/prime-range.pl +6 -3
  183. package/examples/output/proof-contrapositive.pl +12 -3
  184. package/examples/output/propositional-dynamic-logic.pl +13 -1
  185. package/examples/output/quadratic-formula.pl +11 -6
  186. package/examples/output/quine-mccluskey.pl +28 -7
  187. package/examples/output/radioactive-decay.pl +17 -5
  188. package/examples/output/rdf12-annotated-claims.pl +50 -9
  189. package/examples/output/rdf12-annotation.pl +25 -4
  190. package/examples/output/rdf12-directional-language.pl +15 -2
  191. package/examples/output/rdf12-nested-triple-term.pl +10 -1
  192. package/examples/output/rdf12-trig-graph-join.pl +10 -1
  193. package/examples/output/rdf12-trig-named-graph.pl +20 -3
  194. package/examples/output/rdf12-trig-triple-term.pl +10 -1
  195. package/examples/output/rdf12-triple-term.pl +10 -1
  196. package/examples/output/register-allocation.pl +14 -8
  197. package/examples/output/reified-conditionals.pl +4 -1
  198. package/examples/output/relational-cube-lookup.pl +7 -2
  199. package/examples/output/reusable-builtins.pl +8 -5
  200. package/examples/output/riemann-hypothesis.pl +17 -12
  201. package/examples/output/route-planning.pl +11 -4
  202. package/examples/output/sat-solver-dpll.pl +22 -11
  203. package/examples/output/sbom-vulnerability-response.pl +16 -4
  204. package/examples/output/scientific-evidence-graph.pl +22 -9
  205. package/examples/output/security-incident-correlation.pl +12 -3
  206. package/examples/output/send-more-money.pl +6 -3
  207. package/examples/output/service-impact.pl +18 -11
  208. package/examples/output/shoelace-polygon-area.pl +4 -1
  209. package/examples/output/sieve.pl +6 -1
  210. package/examples/output/skolem-functions.pl +31 -16
  211. package/examples/output/snaf.pl +4 -1
  212. package/examples/output/socrates.pl +7 -2
  213. package/examples/output/spacecraft-battery-diagnosis.pl +11 -4
  214. package/examples/output/stable-marriage.pl +7 -2
  215. package/examples/output/statistics-summary.pl +13 -4
  216. package/examples/output/stirling-bell-numbers.pl +7 -4
  217. package/examples/output/superdense-coding.pl +13 -6
  218. package/examples/output/symbiotic-knowledge-graph.pl +105 -42
  219. package/examples/output/symbolic-derivative.pl +9 -4
  220. package/examples/output/takeuchi.pl +4 -1
  221. package/examples/output/term-tools.pl +9 -6
  222. package/examples/output/totient-summatory.pl +7 -4
  223. package/examples/output/trust-flow-provenance-threshold.pl +15 -6
  224. package/examples/output/truth-maintenance-system.pl +36 -25
  225. package/examples/output/turing.pl +19 -12
  226. package/examples/output/type-inference.pl +14 -8
  227. package/examples/output/universal-vs-existential-termination.pl +4 -1
  228. package/examples/output/uuid.pl +4 -1
  229. package/examples/output/vanilla-meta-interpreter.pl +4 -1
  230. package/examples/output/vector-similarity.pl +13 -4
  231. package/examples/output/vulnerability-impact.pl +31 -20
  232. package/examples/output/web-names.pl +11 -3
  233. package/examples/output/weighted-interval-scheduling.pl +8 -5
  234. package/examples/output/witch.pl +18 -7
  235. package/examples/output/wolf-goat-cabbage.pl +8 -3
  236. package/examples/output/workplace-compliance.pl +7 -4
  237. package/examples/output/zebra.pl +10 -3
  238. package/examples/proof/access-control-policy.pl +81 -98
  239. package/examples/proof/age.pl +38 -39
  240. package/examples/proof/aliases-and-namespaces.pl +45 -63
  241. package/examples/proof/ancestor.pl +42 -108
  242. package/examples/proof/animal.pl +29 -57
  243. package/examples/proof/annotation.pl +112 -124
  244. package/examples/proof/attributed-variables.pl +35 -42
  245. package/examples/proof/backward.pl +11 -19
  246. package/examples/proof/bayes-diagnosis.pl +167 -221
  247. package/examples/proof/beam-deflection.pl +110 -126
  248. package/examples/proof/cache-performance.pl +124 -185
  249. package/examples/proof/canary-release.pl +91 -128
  250. package/examples/proof/cat-koko.pl +34 -57
  251. package/examples/proof/catalan-convolution.pl +74 -95
  252. package/examples/proof/cdcl-sat-solver.pl +82 -128
  253. package/examples/proof/chart-parser.pl +299 -300
  254. package/examples/proof/clinical-trial-screening.pl +138 -276
  255. package/examples/proof/clpb-boolean-circuit.pl +50 -88
  256. package/examples/proof/clpb-cardinality.pl +18 -17
  257. package/examples/proof/clpb-feature-model.pl +71 -88
  258. package/examples/proof/combinatorics-findall-sort.pl +57 -41
  259. package/examples/proof/composition-of-injective-functions-is-injective.pl +86 -134
  260. package/examples/proof/context-association.pl +126 -99
  261. package/examples/proof/d3-group.pl +51 -41
  262. package/examples/proof/data-negotiation.pl +64 -48
  263. package/examples/proof/dcg-command-parser.pl +50 -50
  264. package/examples/proof/declarative-fault-localization.pl +54 -55
  265. package/examples/proof/defeasible-reasoning.pl +89 -84
  266. package/examples/proof/deontic-logic.pl +81 -77
  267. package/examples/proof/derived-backward-rule.pl +36 -60
  268. package/examples/proof/derived-rule.pl +26 -32
  269. package/examples/proof/diamond-property.pl +64 -258
  270. package/examples/proof/dif-constraints.pl +25 -28
  271. package/examples/proof/dog.pl +25 -21
  272. package/examples/proof/electrical-rc-filter.pl +76 -67
  273. package/examples/proof/enigma1225.pl +23 -12
  274. package/examples/proof/epidemic-policy.pl +231 -460
  275. package/examples/proof/equality-saturation.pl +60 -84
  276. package/examples/proof/equivalence-classes-overlap-implies-same-class.pl +197 -720
  277. package/examples/proof/existential-rule.pl +22 -24
  278. package/examples/proof/expression-eval.pl +72 -71
  279. package/examples/proof/floating-point.pl +65 -119
  280. package/examples/proof/four-color-map.pl +105 -122
  281. package/examples/proof/gdpr-compliance.pl +136 -149
  282. package/examples/proof/good-cobbler.pl +17 -12
  283. package/examples/proof/graph-reachability.pl +79 -105
  284. package/examples/proof/greatest-lower-bound-uniqueness.pl +44 -106
  285. package/examples/proof/group-inverse-uniqueness.pl +41 -58
  286. package/examples/proof/hanoi.pl +138 -89
  287. package/examples/proof/heat-loss.pl +109 -142
  288. package/examples/proof/herbrand-semantics.pl +13 -24
  289. package/examples/proof/herbrand-witnesses.pl +70 -89
  290. package/examples/proof/ideal-gas-law.pl +75 -89
  291. package/examples/proof/integrity-check.pl +27 -33
  292. package/examples/proof/intuitionistic-logic-kripke.pl +114 -109
  293. package/examples/proof/iso-control-and-errors.pl +84 -106
  294. package/examples/proof/iso-dynamic-database.pl +40 -57
  295. package/examples/proof/iso-extension-pipeline-audit.pl +57 -18
  296. package/examples/proof/iso-extensions.pl +70 -76
  297. package/examples/proof/iso-grouped-solutions.pl +87 -111
  298. package/examples/proof/iso-integer-arithmetic.pl +44 -65
  299. package/examples/proof/iso-operators.pl +46 -46
  300. package/examples/proof/job-shop-scheduling.pl +50 -51
  301. package/examples/proof/json.pl +40 -31
  302. package/examples/proof/knapsack-optimization.pl +53 -71
  303. package/examples/proof/knights-tour-warnsdorff.pl +512 -271
  304. package/examples/proof/language.pl +59 -108
  305. package/examples/proof/linear-logic-resources.pl +187 -124
  306. package/examples/proof/list-collection.pl +67 -94
  307. package/examples/proof/modal-logic-kripke.pl +88 -103
  308. package/examples/proof/nixon-diamond.pl +79 -146
  309. package/examples/proof/partial-evaluator.pl +248 -322
  310. package/examples/proof/peasant.pl +131 -138
  311. package/examples/proof/prime-range.pl +27 -44
  312. package/examples/proof/proof-contrapositive.pl +38 -61
  313. package/examples/proof/propositional-dynamic-logic.pl +101 -69
  314. package/examples/proof/rdf12-annotation.pl +130 -90
  315. package/examples/proof/rdf12-directional-language.pl +56 -24
  316. package/examples/proof/rdf12-nested-triple-term.pl +33 -12
  317. package/examples/proof/rdf12-trig-graph-join.pl +40 -13
  318. package/examples/proof/rdf12-trig-named-graph.pl +79 -38
  319. package/examples/proof/rdf12-trig-triple-term.pl +33 -12
  320. package/examples/proof/rdf12-triple-term.pl +33 -12
  321. package/examples/proof/reified-conditionals.pl +25 -15
  322. package/examples/proof/reusable-builtins.pl +102 -74
  323. package/examples/proof/route-planning.pl +79 -126
  324. package/examples/proof/security-incident-correlation.pl +108 -187
  325. package/examples/proof/sieve.pl +27 -13
  326. package/examples/proof/snaf.pl +11 -13
  327. package/examples/proof/socrates.pl +15 -31
  328. package/examples/proof/spacecraft-battery-diagnosis.pl +153 -172
  329. package/examples/proof/stable-marriage.pl +82 -78
  330. package/examples/proof/symbolic-derivative.pl +150 -140
  331. package/examples/proof/term-tools.pl +49 -76
  332. package/examples/proof/totient-summatory.pl +51 -81
  333. package/examples/proof/trust-flow-provenance-threshold.pl +139 -160
  334. package/examples/proof/universal-vs-existential-termination.pl +33 -30
  335. package/examples/proof/uuid.pl +41 -21
  336. package/examples/proof/vanilla-meta-interpreter.pl +17 -13
  337. package/examples/proof/web-names.pl +86 -46
  338. package/examples/proof/weighted-interval-scheduling.pl +480 -3887
  339. package/examples/proof/witch.pl +43 -173
  340. package/examples/proof/workplace-compliance.pl +65 -57
  341. package/index.d.ts +39 -0
  342. package/package.json +1 -1
  343. package/src/check-proof.js +231 -0
  344. package/src/cli.js +24 -24
  345. package/src/execute.js +34 -2
  346. package/src/explain.js +150 -1
  347. package/src/index.js +27 -11
  348. package/src/result-format.js +208 -0
  349. package/test/conformance/README.md +1 -1
  350. package/test/conformance/expected/aggregation/044_findall_user_goal.pl +4 -1
  351. package/test/conformance/expected/aggregation/057_countall_empty_and_nonempty.pl +4 -1
  352. package/test/conformance/expected/aggregation/058_sumall_numeric_template.pl +4 -1
  353. package/test/conformance/expected/aggregation/059_aggregate_min_template.pl +4 -1
  354. package/test/conformance/expected/aggregation/060_aggregate_max_compound_key.pl +4 -1
  355. package/test/conformance/expected/aggregation/075_aggregation_edges.pl +10 -7
  356. package/test/conformance/expected/aggregation/098_aggregation_nested_templates.pl +11 -6
  357. package/test/conformance/expected/aggregation/aggregate_max_no_answers_fails.pl +4 -1
  358. package/test/conformance/expected/aggregation/aggregate_min_structured_key.pl +4 -1
  359. package/test/conformance/expected/aggregation/countall_zero.pl +4 -1
  360. package/test/conformance/expected/aggregation/existential_qualifier_autoload.pl +8 -5
  361. package/test/conformance/expected/aggregation/extra_aggregate_max_iri_key.pl +4 -1
  362. package/test/conformance/expected/aggregation/extra_aggregate_min_tie_first.pl +4 -1
  363. package/test/conformance/expected/aggregation/extra_countall_with_filter.pl +4 -1
  364. package/test/conformance/expected/aggregation/extra_findall_repeated_template.pl +4 -1
  365. package/test/conformance/expected/aggregation/extra_sumall_float_template.pl +4 -1
  366. package/test/conformance/expected/aggregation/findall_empty_bag.pl +4 -1
  367. package/test/conformance/expected/aggregation/sumall_empty_zero.pl +4 -1
  368. package/test/conformance/expected/arithmetic/024_numeric_literal_readback.pl +6 -3
  369. package/test/conformance/expected/arithmetic/029_arithmetic_and_comparison.pl +12 -9
  370. package/test/conformance/expected/arithmetic/039_numeric_functions.pl +10 -7
  371. package/test/conformance/expected/arithmetic/040_between_enumeration.pl +6 -3
  372. package/test/conformance/expected/arithmetic/041_smallest_divisor.pl +4 -1
  373. package/test/conformance/expected/arithmetic/054_numeric_and_lexical_comparison.pl +6 -3
  374. package/test/conformance/expected/arithmetic/061_date_difference.pl +5 -2
  375. package/test/conformance/expected/arithmetic/062_reusable_numeric_builtins.pl +11 -8
  376. package/test/conformance/expected/arithmetic/066_numeric_edges.pl +10 -7
  377. package/test/conformance/expected/arithmetic/079_big_integer_arithmetic.pl +9 -6
  378. package/test/conformance/expected/arithmetic/080_rounding_modes.pl +11 -8
  379. package/test/conformance/expected/arithmetic/081_zero_safe_numeric_functions.pl +10 -7
  380. package/test/conformance/expected/arithmetic/082_comparison_semantics.pl +11 -8
  381. package/test/conformance/expected/arithmetic/083_between_modes_and_empty_ranges.pl +11 -8
  382. package/test/conformance/expected/arithmetic/between_bound_value.pl +4 -1
  383. package/test/conformance/expected/arithmetic/between_singleton.pl +4 -1
  384. package/test/conformance/expected/arithmetic/duration_comparison.pl +4 -1
  385. package/test/conformance/expected/arithmetic/extra_acos_one.pl +4 -1
  386. package/test/conformance/expected/arithmetic/extra_asin_zero.pl +4 -1
  387. package/test/conformance/expected/arithmetic/extra_atan2_axis.pl +4 -1
  388. package/test/conformance/expected/arithmetic/extra_difference_leap_day.pl +4 -1
  389. package/test/conformance/expected/arithmetic/extra_difference_same_day.pl +4 -1
  390. package/test/conformance/expected/arithmetic/extra_div_float_exact.pl +4 -1
  391. package/test/conformance/expected/arithmetic/extra_div_integer_trunc.pl +4 -1
  392. package/test/conformance/expected/arithmetic/extra_exp_zero.pl +4 -1
  393. package/test/conformance/expected/arithmetic/extra_ge_equal_duration.pl +4 -1
  394. package/test/conformance/expected/arithmetic/extra_le_equal_string.pl +4 -1
  395. package/test/conformance/expected/arithmetic/extra_log_one.pl +4 -1
  396. package/test/conformance/expected/arithmetic/extra_mod_negative_right.pl +4 -1
  397. package/test/conformance/expected/arithmetic/extra_pow_large_integer.pl +4 -1
  398. package/test/conformance/expected/arithmetic/float_add_and_div.pl +5 -2
  399. package/test/conformance/expected/arithmetic/min_max_mixed.pl +5 -2
  400. package/test/conformance/expected/arithmetic/mod_negative_left.pl +4 -1
  401. package/test/conformance/expected/arithmetic/neg_abs_integer.pl +5 -2
  402. package/test/conformance/expected/arithmetic/pow_negative_exponent_fails.pl +4 -1
  403. package/test/conformance/expected/arithmetic/pow_zero_exponent.pl +4 -1
  404. package/test/conformance/expected/arithmetic/rounding_negative_float.pl +7 -4
  405. package/test/conformance/expected/arithmetic/smallest_divisor_prime.pl +4 -1
  406. package/test/conformance/expected/atoms/008_graphic_atoms.pl +6 -3
  407. package/test/conformance/expected/atoms/016_arity_zero_atom.pl +4 -1
  408. package/test/conformance/expected/atoms/018_quoted_atom_readback.pl +6 -3
  409. package/test/conformance/expected/atoms/103_angle_iri_atoms.pl +8 -3
  410. package/test/conformance/expected/atoms/angle_iri_percent_encoded.pl +3 -0
  411. package/test/conformance/expected/atoms/extra_graphic_backslash_atom.pl +3 -0
  412. package/test/conformance/expected/atoms/extra_iri_mailto_plus.pl +3 -0
  413. package/test/conformance/expected/atoms/extra_iri_uuid_scheme.pl +3 -0
  414. package/test/conformance/expected/atoms/extra_quoted_atom_with_quote_readback.pl +3 -0
  415. package/test/conformance/expected/atoms/graphic_angle_atom_stays_graphic.pl +4 -1
  416. package/test/conformance/expected/atoms/graphic_atom_predicate.pl +4 -1
  417. package/test/conformance/expected/atoms/graphic_less_than_atom.pl +4 -1
  418. package/test/conformance/expected/atoms/iri_as_predicate_name_quoted.pl +4 -1
  419. package/test/conformance/expected/atoms/iri_atoms_in_lists.pl +4 -1
  420. package/test/conformance/expected/atoms/iri_mailto_readback.pl +4 -1
  421. package/test/conformance/expected/atoms/iri_query_fragment_readback.pl +4 -1
  422. package/test/conformance/expected/atoms/iri_quoted_absolute_readback.pl +5 -2
  423. package/test/conformance/expected/atoms/iri_quoted_and_angle_unify.pl +3 -0
  424. package/test/conformance/expected/atoms/iri_urn_readback.pl +4 -1
  425. package/test/conformance/expected/atoms/question_mark_graphic_atom.pl +4 -1
  426. package/test/conformance/expected/atoms/quoted_relative_iri_not_angle.pl +3 -0
  427. package/test/conformance/expected/atoms/quoted_urn_iri_readback.pl +4 -1
  428. package/test/conformance/expected/atoms/zero_arity_atom_roundtrip.pl +6 -3
  429. package/test/conformance/expected/builtins/037_matching_and_comparison.pl +8 -5
  430. package/test/conformance/expected/builtins/076_composed_reusable_builtins.pl +8 -5
  431. package/test/conformance/expected/builtins/100_reusable_builtin_workflow.pl +9 -6
  432. package/test/conformance/expected/builtins/atom_string_iri_atom.pl +4 -1
  433. package/test/conformance/expected/builtins/eq_unifies_iri_atoms.pl +3 -0
  434. package/test/conformance/expected/builtins/extra_difference_end_before_start_fails.pl +3 -0
  435. package/test/conformance/expected/builtins/extra_difference_invalid_date_fails.pl +3 -0
  436. package/test/conformance/expected/builtins/extra_eq_binds_both_sides.pl +4 -1
  437. package/test/conformance/expected/builtins/extra_neq_different_iri_atoms.pl +4 -1
  438. package/test/conformance/expected/builtins/extra_neq_same_iri_fails.pl +4 -1
  439. package/test/conformance/expected/builtins/extra_uuid_v4.pl +4 -1
  440. package/test/conformance/expected/context/032_context_parts.pl +6 -3
  441. package/test/conformance/expected/context/051_nested_context_parts.pl +6 -3
  442. package/test/conformance/expected/context/052_context_member.pl +5 -2
  443. package/test/conformance/expected/context/094_context_enumeration.pl +11 -8
  444. package/test/conformance/expected/context/context_compound_formula.pl +4 -1
  445. package/test/conformance/expected/context/context_fails_when_missing.pl +4 -1
  446. package/test/conformance/expected/context/context_parts_from_formula.pl +5 -2
  447. package/test/conformance/expected/context/extra_context_atom_parts.pl +5 -2
  448. package/test/conformance/expected/context/extra_context_ignores_string_parts.pl +4 -1
  449. package/test/conformance/expected/context/extra_context_list_parts.pl +5 -2
  450. package/test/conformance/expected/context/extra_context_term_nested_order.pl +6 -3
  451. package/test/conformance/expected/control/014_failure_filters_answers.pl +4 -1
  452. package/test/conformance/expected/control/043_once_user_predicate.pl +4 -1
  453. package/test/conformance/expected/control/074_forall_edges.pl +8 -5
  454. package/test/conformance/expected/control/097_control_negation_once_forall.pl +9 -6
  455. package/test/conformance/expected/control/double_negation_ground_goal.pl +4 -1
  456. package/test/conformance/expected/control/extra_forall_bound_check.pl +4 -1
  457. package/test/conformance/expected/control/extra_forall_counterexample_fails.pl +3 -0
  458. package/test/conformance/expected/control/extra_not_unbound_existing_goal_fails.pl +3 -0
  459. package/test/conformance/expected/control/extra_not_unbound_unknown_goal_succeeds.pl +4 -1
  460. package/test/conformance/expected/control/extra_once_empty_fails.pl +3 -0
  461. package/test/conformance/expected/control/extra_once_preserves_binding.pl +4 -1
  462. package/test/conformance/expected/control/forall_detects_counterexample.pl +4 -1
  463. package/test/conformance/expected/control/forall_empty_generator_true.pl +4 -1
  464. package/test/conformance/expected/control/negation_with_bound_generator.pl +4 -1
  465. package/test/conformance/expected/control/once_keeps_first_answer.pl +4 -1
  466. package/test/conformance/expected/explicit-tabling/038_explicit_tabling.pl +5 -2
  467. package/test/conformance/expected/explicit-tabling/102_recursive_inference.pl +9 -6
  468. package/test/conformance/expected/explicit-tabling/explicit_left_recursion_path.pl +5 -2
  469. package/test/conformance/expected/explicit-tabling/explicit_tabling_preserves_answers.pl +6 -3
  470. package/test/conformance/expected/explicit-tabling/extra_explicit_bound_cycle.pl +5 -2
  471. package/test/conformance/expected/explicit-tabling/extra_explicit_open_call.pl +5 -2
  472. package/test/conformance/expected/iso/arg_first_success.pl +4 -1
  473. package/test/conformance/expected/iso/arg_last_success.pl +4 -1
  474. package/test/conformance/expected/iso/arg_out_of_range_fails.pl +4 -1
  475. package/test/conformance/expected/iso/arithmetic.pl +4 -1
  476. package/test/conformance/expected/iso/arithmetic_bit_and.pl +4 -1
  477. package/test/conformance/expected/iso/arithmetic_bit_or.pl +4 -1
  478. package/test/conformance/expected/iso/arithmetic_bit_shift.pl +4 -1
  479. package/test/conformance/expected/iso/arithmetic_comparison_equal.pl +4 -1
  480. package/test/conformance/expected/iso/arithmetic_comparison_not_equal.pl +4 -1
  481. package/test/conformance/expected/iso/arithmetic_integer_quotient.pl +4 -1
  482. package/test/conformance/expected/iso/arithmetic_remainder.pl +4 -1
  483. package/test/conformance/expected/iso/arithmetic_unary_plus.pl +4 -1
  484. package/test/conformance/expected/iso/arithmetic_underflow_rounds.pl +4 -1
  485. package/test/conformance/expected/iso/atom_chars_forward.pl +4 -1
  486. package/test/conformance/expected/iso/atom_chars_reverse.pl +4 -1
  487. package/test/conformance/expected/iso/atom_codes_forward.pl +4 -1
  488. package/test/conformance/expected/iso/atom_codes_reverse.pl +4 -1
  489. package/test/conformance/expected/iso/atom_concat_forward.pl +4 -1
  490. package/test/conformance/expected/iso/atom_concat_prefix.pl +4 -1
  491. package/test/conformance/expected/iso/atom_concat_suffix.pl +4 -1
  492. package/test/conformance/expected/iso/atom_length_unicode.pl +4 -1
  493. package/test/conformance/expected/iso/atom_length_zero.pl +4 -1
  494. package/test/conformance/expected/iso/atomic_term_processing.pl +23 -6
  495. package/test/conformance/expected/iso/bitwise_complement.pl +4 -1
  496. package/test/conformance/expected/iso/call_success.pl +4 -1
  497. package/test/conformance/expected/iso/catch_recovers.pl +4 -1
  498. package/test/conformance/expected/iso/char_code_forward.pl +4 -1
  499. package/test/conformance/expected/iso/char_code_reverse.pl +4 -1
  500. package/test/conformance/expected/iso/clause_body_conversion.pl +13 -4
  501. package/test/conformance/expected/iso/clause_static_and_dynamic_access.pl +10 -3
  502. package/test/conformance/expected/iso/compare_equal_result.pl +4 -1
  503. package/test/conformance/expected/iso/compare_greater_result.pl +4 -1
  504. package/test/conformance/expected/iso/compare_less_result.pl +4 -1
  505. package/test/conformance/expected/iso/control_and_terms.pl +5 -2
  506. package/test/conformance/expected/iso/copy_term_fresh_variables.pl +4 -1
  507. package/test/conformance/expected/iso/core_predicates.pl +4 -1
  508. package/test/conformance/expected/iso/corrigenda_arithmetic.pl +27 -1
  509. package/test/conformance/expected/iso/corrigenda_bar_operator.pl +4 -1
  510. package/test/conformance/expected/iso/corrigenda_call_closure.pl +6 -1
  511. package/test/conformance/expected/iso/corrigenda_catch_callability.pl +4 -1
  512. package/test/conformance/expected/iso/corrigenda_retractall.pl +4 -1
  513. package/test/conformance/expected/iso/corrigenda_sort_keysort.pl +4 -1
  514. package/test/conformance/expected/iso/corrigenda_term_predicates.pl +4 -1
  515. package/test/conformance/expected/iso/corrigendum1_double_quote_operator.pl +4 -1
  516. package/test/conformance/expected/iso/corrigendum3_write_variable_names.pl +4 -1
  517. package/test/conformance/expected/iso/cut_control.pl +30 -11
  518. package/test/conformance/expected/iso/cut_disjunction_scope.pl +5 -2
  519. package/test/conformance/expected/iso/dcg_ambiguous_alternatives.pl +4 -1
  520. package/test/conformance/expected/iso/dcg_call_phrase_semicontext.pl +13 -4
  521. package/test/conformance/expected/iso/dcg_control_constructs.pl +17 -6
  522. package/test/conformance/expected/iso/dcg_declaration_nonterminal_indicators.pl +4 -1
  523. package/test/conformance/expected/iso/dcg_double_quotes_atom.pl +4 -1
  524. package/test/conformance/expected/iso/dcg_double_quotes_codes.pl +4 -1
  525. package/test/conformance/expected/iso/dcg_dynamic_body_control.pl +8 -5
  526. package/test/conformance/expected/iso/dcg_dynamic_nonterminal_indicator.pl +4 -1
  527. package/test/conformance/expected/iso/dcg_explicit_qualified_head.pl +4 -1
  528. package/test/conformance/expected/iso/dcg_module_nonterminal_indicator.pl +7 -2
  529. package/test/conformance/expected/iso/dcg_nested_phrase_call.pl +4 -1
  530. package/test/conformance/expected/iso/dcg_operator_table.pl +5 -2
  531. package/test/conformance/expected/iso/dcg_partial_sequences.pl +6 -3
  532. package/test/conformance/expected/iso/dcg_phrase_steadfastness.pl +7 -4
  533. package/test/conformance/expected/iso/dcg_qualified_chain.pl +7 -2
  534. package/test/conformance/expected/iso/dcg_recursive_sequences.pl +10 -3
  535. package/test/conformance/expected/iso/dcg_terminals_and_remainder.pl +7 -2
  536. package/test/conformance/expected/iso/dcg_variable_hygiene.pl +9 -2
  537. package/test/conformance/expected/iso/double_quoted_lists.pl +25 -8
  538. package/test/conformance/expected/iso/dynamic_database.pl +8 -3
  539. package/test/conformance/expected/iso/exceptions_and_flags.pl +21 -3
  540. package/test/conformance/expected/iso/false_builtin.pl +5 -2
  541. package/test/conformance/expected/iso/functor_construct_atom.pl +4 -1
  542. package/test/conformance/expected/iso/functor_construct_compound.pl +4 -1
  543. package/test/conformance/expected/iso/functor_decompose_atom.pl +4 -1
  544. package/test/conformance/expected/iso/functor_decompose_compound.pl +4 -1
  545. package/test/conformance/expected/iso/functor_decompose_number.pl +4 -1
  546. package/test/conformance/expected/iso/grouped_solutions_and_clauses.pl +25 -10
  547. package/test/conformance/expected/iso/halt.pl +3 -0
  548. package/test/conformance/expected/iso/identity_shared_variable.pl +4 -1
  549. package/test/conformance/expected/iso/if_then_else_fallback.pl +4 -1
  550. package/test/conformance/expected/iso/if_then_success.pl +4 -1
  551. package/test/conformance/expected/iso/include_and_ensure_loaded.pl +5 -2
  552. package/test/conformance/expected/iso/lexical_and_curly_terms.pl +23 -1
  553. package/test/conformance/expected/iso/logtalk_abolish.pl +4 -1
  554. package/test/conformance/expected/iso/logtalk_arg_unification.pl +4 -1
  555. package/test/conformance/expected/iso/logtalk_assert_order.pl +4 -1
  556. package/test/conformance/expected/iso/logtalk_atom_chars.pl +4 -1
  557. package/test/conformance/expected/iso/logtalk_atom_codes.pl +4 -1
  558. package/test/conformance/expected/iso/logtalk_atom_concat.pl +8 -1
  559. package/test/conformance/expected/iso/logtalk_atom_length.pl +4 -1
  560. package/test/conformance/expected/iso/logtalk_bagof.pl +4 -1
  561. package/test/conformance/expected/iso/logtalk_char_code.pl +4 -1
  562. package/test/conformance/expected/iso/logtalk_clause.pl +4 -1
  563. package/test/conformance/expected/iso/logtalk_compare_standard_order.pl +4 -1
  564. package/test/conformance/expected/iso/logtalk_copy_term_semantics.pl +4 -1
  565. package/test/conformance/expected/iso/logtalk_current_predicate.pl +4 -1
  566. package/test/conformance/expected/iso/logtalk_current_streams.pl +4 -1
  567. package/test/conformance/expected/iso/logtalk_dcg_conjunction_disjunction.pl +17 -8
  568. package/test/conformance/expected/iso/logtalk_dcg_cut.pl +7 -4
  569. package/test/conformance/expected/iso/logtalk_dcg_cut_positions.pl +7 -4
  570. package/test/conformance/expected/iso/logtalk_dcg_embedded_goals.pl +13 -4
  571. package/test/conformance/expected/iso/logtalk_dcg_embedded_sequences.pl +10 -3
  572. package/test/conformance/expected/iso/logtalk_dcg_graphic_nonterminal.pl +4 -1
  573. package/test/conformance/expected/iso/logtalk_dcg_if_then_else.pl +22 -7
  574. package/test/conformance/expected/iso/logtalk_dcg_negation_positions.pl +7 -4
  575. package/test/conformance/expected/iso/logtalk_dcg_nonterminals.pl +10 -3
  576. package/test/conformance/expected/iso/logtalk_dcg_phrase_identity.pl +9 -6
  577. package/test/conformance/expected/iso/logtalk_dcg_semicontext_variants.pl +13 -4
  578. package/test/conformance/expected/iso/logtalk_dcg_semicontexts.pl +13 -4
  579. package/test/conformance/expected/iso/logtalk_dcg_terminal_variables.pl +10 -3
  580. package/test/conformance/expected/iso/logtalk_dcg_terminals.pl +17 -6
  581. package/test/conformance/expected/iso/logtalk_dcg_variable_bodies.pl +11 -4
  582. package/test/conformance/expected/iso/logtalk_findall.pl +4 -1
  583. package/test/conformance/expected/iso/logtalk_number_chars.pl +4 -1
  584. package/test/conformance/expected/iso/logtalk_number_codes.pl +4 -1
  585. package/test/conformance/expected/iso/logtalk_occurs_check.pl +4 -1
  586. package/test/conformance/expected/iso/logtalk_once.pl +4 -1
  587. package/test/conformance/expected/iso/logtalk_operators.pl +4 -1
  588. package/test/conformance/expected/iso/logtalk_prolog_flags.pl +6 -1
  589. package/test/conformance/expected/iso/logtalk_repeat.pl +4 -1
  590. package/test/conformance/expected/iso/logtalk_retract.pl +4 -1
  591. package/test/conformance/expected/iso/logtalk_setof.pl +4 -1
  592. package/test/conformance/expected/iso/logtalk_sub_atom.pl +4 -1
  593. package/test/conformance/expected/iso/logtalk_term_comparison.pl +4 -1
  594. package/test/conformance/expected/iso/logtalk_term_variables.pl +16 -5
  595. package/test/conformance/expected/iso/logtalk_univ.pl +6 -1
  596. package/test/conformance/expected/iso/negation_success.pl +4 -1
  597. package/test/conformance/expected/iso/nonidentity_distinct_variables.pl +4 -1
  598. package/test/conformance/expected/iso/nonunifiable_compounds.pl +4 -1
  599. package/test/conformance/expected/iso/number_chars_integer.pl +4 -1
  600. package/test/conformance/expected/iso/number_chars_minus_line_comment.pl +4 -1
  601. package/test/conformance/expected/iso/number_codes_decimal.pl +4 -1
  602. package/test/conformance/expected/iso/occurs_check_rejects_cycle.pl +4 -1
  603. package/test/conformance/expected/iso/once_commits_first.pl +4 -1
  604. package/test/conformance/expected/iso/operator_atoms_as_arguments.pl +8 -3
  605. package/test/conformance/expected/iso/operators.pl +20 -5
  606. package/test/conformance/expected/iso/part3_grammar_body_constructs.pl +16 -13
  607. package/test/conformance/expected/iso/part3_phrase_examples.pl +11 -6
  608. package/test/conformance/expected/iso/public_procedure_access.pl +19 -6
  609. package/test/conformance/expected/iso/remaining_builtins_and_directives.pl +10 -3
  610. package/test/conformance/expected/iso/scryer_backslash_atom.pl +4 -1
  611. package/test/conformance/expected/iso/scryer_bare_exponent_lexing.pl +4 -1
  612. package/test/conformance/expected/iso/scryer_bracket_and_curly_term_parsing.pl +4 -1
  613. package/test/conformance/expected/iso/scryer_call_zero_arity.pl +4 -1
  614. package/test/conformance/expected/iso/scryer_current_predicate_after_existence_error.pl +4 -1
  615. package/test/conformance/expected/iso/scryer_current_prolog_flag_shared_var.pl +4 -1
  616. package/test/conformance/expected/iso/scryer_default_prefix_operator_priorities.pl +4 -1
  617. package/test/conformance/expected/iso/scryer_dollar_sign_atoms.pl +4 -1
  618. package/test/conformance/expected/iso/scryer_empty_list_atom_functor.pl +4 -1
  619. package/test/conformance/expected/iso/scryer_exponent_minus_lexing.pl +4 -1
  620. package/test/conformance/expected/iso/scryer_large_float_exponent.pl +4 -1
  621. package/test/conformance/expected/iso/scryer_lexical_terms.pl +13 -4
  622. package/test/conformance/expected/iso/scryer_line_continuation_in_quoted_atoms.pl +4 -1
  623. package/test/conformance/expected/iso/scryer_lower_priority_prefix_with_infix.pl +4 -1
  624. package/test/conformance/expected/iso/scryer_mixed_prefix_infix_operator_priority.pl +4 -1
  625. package/test/conformance/expected/iso/scryer_op_bar_prefix_permission.pl +4 -1
  626. package/test/conformance/expected/iso/scryer_op_error_conditions.pl +19 -5
  627. package/test/conformance/expected/iso/scryer_op_name_list_unbound_element.pl +4 -1
  628. package/test/conformance/expected/iso/scryer_op_name_type_error.pl +4 -1
  629. package/test/conformance/expected/iso/scryer_op_specifier_type_error.pl +4 -1
  630. package/test/conformance/expected/iso/scryer_op_wrong_arity_existence_error.pl +4 -1
  631. package/test/conformance/expected/iso/scryer_operator_application_vs_functor_notation.pl +4 -1
  632. package/test/conformance/expected/iso/scryer_operator_precedence.pl +4 -1
  633. package/test/conformance/expected/iso/scryer_postfix_operator_negative_number.pl +4 -1
  634. package/test/conformance/expected/iso/scryer_prefix_minus_chain.pl +4 -1
  635. package/test/conformance/expected/iso/scryer_quote_and_char_code_literals.pl +4 -1
  636. package/test/conformance/expected/iso/scryer_special_atom_names.pl +4 -1
  637. package/test/conformance/expected/iso/scryer_subnormal_float_underflow.pl +4 -1
  638. package/test/conformance/expected/iso/scryer_unary_plus_compound.pl +4 -1
  639. package/test/conformance/expected/iso/scryer_user_operator_with_prefix_minus.pl +4 -1
  640. package/test/conformance/expected/iso/streams_and_term_io.pl +25 -7
  641. package/test/conformance/expected/iso/sub_atom_empty.pl +4 -1
  642. package/test/conformance/expected/iso/sub_atom_prefix.pl +4 -1
  643. package/test/conformance/expected/iso/sub_atom_suffix.pl +4 -1
  644. package/test/conformance/expected/iso/swipl_call_n_builds_control_construct.pl +4 -1
  645. package/test/conformance/expected/iso/swipl_catch_partial_unification_rethrow.pl +4 -1
  646. package/test/conformance/expected/iso/swipl_keysort_remaining_errors.pl +7 -1
  647. package/test/conformance/expected/iso/swipl_length_errors.pl +7 -1
  648. package/test/conformance/expected/iso/swipl_memberchk_binding_retention.pl +4 -1
  649. package/test/conformance/expected/iso/swipl_occurs_check.pl +4 -1
  650. package/test/conformance/expected/iso/swipl_operator_syntax.pl +8 -3
  651. package/test/conformance/expected/iso/swipl_operator_table_self_named.pl +12 -1
  652. package/test/conformance/expected/iso/swipl_sort_partial_list_errors.pl +4 -1
  653. package/test/conformance/expected/iso/swipl_write_canonical_var_and_curly.pl +4 -1
  654. package/test/conformance/expected/iso/term_modes_and_ordering.pl +13 -4
  655. package/test/conformance/expected/iso/term_order_atom_less.pl +4 -1
  656. package/test/conformance/expected/iso/term_order_equal_greater_or_equal.pl +4 -1
  657. package/test/conformance/expected/iso/term_order_equal_less_or_equal.pl +4 -1
  658. package/test/conformance/expected/iso/term_order_number_greater.pl +4 -1
  659. package/test/conformance/expected/iso/throw_copies_ball.pl +7 -2
  660. package/test/conformance/expected/iso/trealla_append_modes.pl +11 -6
  661. package/test/conformance/expected/iso/trealla_arithmetic_constants.pl +4 -1
  662. package/test/conformance/expected/iso/trealla_atom_codes_unicode.pl +7 -2
  663. package/test/conformance/expected/iso/trealla_atom_enumeration.pl +14 -9
  664. package/test/conformance/expected/iso/trealla_bagof_multi_free_variables.pl +12 -5
  665. package/test/conformance/expected/iso/trealla_bagof_setof_duplicate_handling.pl +4 -1
  666. package/test/conformance/expected/iso/trealla_bignum_arithmetic.pl +20 -4
  667. package/test/conformance/expected/iso/trealla_call_missing_extended_arity.pl +4 -1
  668. package/test/conformance/expected/iso/trealla_call_transparent_to_disjunction.pl +4 -1
  669. package/test/conformance/expected/iso/trealla_clause_enumeration_backtracking.pl +4 -1
  670. package/test/conformance/expected/iso/trealla_compare_standard_order.pl +4 -1
  671. package/test/conformance/expected/iso/trealla_copy_term_binding_direction.pl +4 -1
  672. package/test/conformance/expected/iso/trealla_copy_term_bound_list_tail.pl +4 -1
  673. package/test/conformance/expected/iso/trealla_curly_and_colon_syntax_equivalence.pl +6 -1
  674. package/test/conformance/expected/iso/trealla_curly_braces_as_predicate.pl +4 -1
  675. package/test/conformance/expected/iso/trealla_dif_unification_shared_var.pl +4 -1
  676. package/test/conformance/expected/iso/trealla_disjunction_commit_and_fallthrough.pl +4 -1
  677. package/test/conformance/expected/iso/trealla_findall_bagof_grouping.pl +4 -1
  678. package/test/conformance/expected/iso/trealla_findall_solution_independence.pl +4 -1
  679. package/test/conformance/expected/iso/trealla_float_literal_representation_error.pl +10 -1
  680. package/test/conformance/expected/iso/trealla_float_parts_extremes.pl +13 -4
  681. package/test/conformance/expected/iso/trealla_forall_arithmetic_facts.pl +4 -1
  682. package/test/conformance/expected/iso/trealla_forall_double_negation.pl +4 -1
  683. package/test/conformance/expected/iso/trealla_functor_arg_partial_term.pl +7 -2
  684. package/test/conformance/expected/iso/trealla_ground_progressive_backtracking.pl +4 -1
  685. package/test/conformance/expected/iso/trealla_if_then_else_backtracking.pl +12 -5
  686. package/test/conformance/expected/iso/trealla_if_then_noncallable_then.pl +4 -1
  687. package/test/conformance/expected/iso/trealla_logical_update_view.pl +5 -2
  688. package/test/conformance/expected/iso/trealla_mod_sign_rules.pl +23 -1
  689. package/test/conformance/expected/iso/trealla_negation_eager_callability.pl +10 -1
  690. package/test/conformance/expected/iso/trealla_number_chars_skips_comments.pl +4 -1
  691. package/test/conformance/expected/iso/trealla_number_chars_syntax_error.pl +4 -1
  692. package/test/conformance/expected/iso/trealla_number_codes_char_literal.pl +4 -1
  693. package/test/conformance/expected/iso/trealla_occurs_check_rational_tree_subtleties.pl +4 -1
  694. package/test/conformance/expected/iso/trealla_occurs_check_reverse_order.pl +4 -1
  695. package/test/conformance/expected/iso/trealla_once_inside_findall_template.pl +4 -1
  696. package/test/conformance/expected/iso/trealla_quoted_atom_line_continuation.pl +4 -1
  697. package/test/conformance/expected/iso/trealla_retract_backtracking.pl +4 -1
  698. package/test/conformance/expected/iso/trealla_shared_argument_aliasing.pl +4 -1
  699. package/test/conformance/expected/iso/trealla_shared_variable_unification.pl +31 -10
  700. package/test/conformance/expected/iso/trealla_sort_duplicates_and_empty.pl +4 -1
  701. package/test/conformance/expected/iso/trealla_sub_atom_modes.pl +35 -22
  702. package/test/conformance/expected/iso/trealla_term_shapes.pl +4 -1
  703. package/test/conformance/expected/iso/trealla_term_variables_partial_list_error.pl +4 -1
  704. package/test/conformance/expected/iso/trealla_unicode_length_agreement.pl +4 -1
  705. package/test/conformance/expected/iso/trealla_variable_aliasing_across_calls.pl +4 -1
  706. package/test/conformance/expected/iso/trealla_variable_goal_normalization.pl +4 -1
  707. package/test/conformance/expected/iso/trealla_write_associative_operators.pl +4 -1
  708. package/test/conformance/expected/iso/trealla_write_canonical_operators.pl +12 -3
  709. package/test/conformance/expected/iso/trealla_write_term_duplicate_variable_names.pl +4 -1
  710. package/test/conformance/expected/iso/trealla_write_term_ignore_ops_quoted_independence.pl +4 -1
  711. package/test/conformance/expected/iso/trealla_write_term_variable_names_malformed.pl +4 -1
  712. package/test/conformance/expected/iso/type_atom_success.pl +4 -1
  713. package/test/conformance/expected/iso/type_atomic_atom_success.pl +4 -1
  714. package/test/conformance/expected/iso/type_atomic_number_success.pl +4 -1
  715. package/test/conformance/expected/iso/type_callable_atom_success.pl +4 -1
  716. package/test/conformance/expected/iso/type_callable_compound_success.pl +4 -1
  717. package/test/conformance/expected/iso/type_compound_success.pl +4 -1
  718. package/test/conformance/expected/iso/type_float_success.pl +4 -1
  719. package/test/conformance/expected/iso/type_ground_success.pl +4 -1
  720. package/test/conformance/expected/iso/type_integer_success.pl +4 -1
  721. package/test/conformance/expected/iso/type_nonvar_success.pl +4 -1
  722. package/test/conformance/expected/iso/type_number_float_success.pl +4 -1
  723. package/test/conformance/expected/iso/type_number_integer_success.pl +4 -1
  724. package/test/conformance/expected/iso/type_var_success.pl +4 -1
  725. package/test/conformance/expected/iso/unification_control_information.pl +4 -1
  726. package/test/conformance/expected/iso/univ_construct_compound.pl +4 -1
  727. package/test/conformance/expected/iso/univ_construct_number.pl +4 -1
  728. package/test/conformance/expected/iso/univ_decompose_atom.pl +4 -1
  729. package/test/conformance/expected/iso/univ_decompose_compound.pl +4 -1
  730. package/test/conformance/expected/iso/wg17_syntax_high_risk.pl +28 -9
  731. package/test/conformance/expected/lists/005_list_deconstruction.pl +5 -2
  732. package/test/conformance/expected/lists/015_improper_list_unification.pl +6 -3
  733. package/test/conformance/expected/lists/020_nested_list_terms.pl +5 -2
  734. package/test/conformance/expected/lists/031_lists_aggregation_ordering.pl +12 -9
  735. package/test/conformance/expected/lists/035_list_relations.pl +7 -4
  736. package/test/conformance/expected/lists/036_append_splits.pl +6 -3
  737. package/test/conformance/expected/lists/045_sort_deduplicates_atoms.pl +4 -1
  738. package/test/conformance/expected/lists/046_append_bound_prefix_suffix.pl +5 -2
  739. package/test/conformance/expected/lists/047_nth0_index_generation.pl +4 -1
  740. package/test/conformance/expected/lists/048_set_nth0_edges.pl +5 -2
  741. package/test/conformance/expected/lists/049_select_duplicate_occurrences.pl +5 -2
  742. package/test/conformance/expected/lists/063_reusable_list_builtins.pl +12 -9
  743. package/test/conformance/expected/lists/067_list_edges.pl +11 -8
  744. package/test/conformance/expected/lists/068_list_generation_order.pl +12 -9
  745. package/test/conformance/expected/lists/069_list_summaries_and_sets.pl +10 -7
  746. package/test/conformance/expected/lists/084_append_and_select_composition.pl +13 -10
  747. package/test/conformance/expected/lists/085_nth_and_update_edges.pl +11 -8
  748. package/test/conformance/expected/lists/086_slicing_pipeline.pl +10 -7
  749. package/test/conformance/expected/lists/087_sort_reverse_length.pl +9 -6
  750. package/test/conformance/expected/lists/088_list_summaries_failures.pl +8 -5
  751. package/test/conformance/expected/lists/empty_list_term.pl +4 -1
  752. package/test/conformance/expected/lists/extra_append_all_splits_three.pl +7 -4
  753. package/test/conformance/expected/lists/extra_append_to_improper_tail.pl +4 -1
  754. package/test/conformance/expected/lists/extra_drop_all.pl +4 -1
  755. package/test/conformance/expected/lists/extra_last_singleton.pl +4 -1
  756. package/test/conformance/expected/lists/extra_length_improper_fails.pl +3 -0
  757. package/test/conformance/expected/lists/extra_list_pattern_improper.pl +4 -1
  758. package/test/conformance/expected/lists/extra_list_to_set_stable_order.pl +4 -1
  759. package/test/conformance/expected/lists/extra_member_repeated_nested.pl +5 -2
  760. package/test/conformance/expected/lists/extra_nth0_duplicate_indexes.pl +5 -2
  761. package/test/conformance/expected/lists/extra_reverse_nested_terms.pl +4 -1
  762. package/test/conformance/expected/lists/extra_select_structured_duplicate.pl +5 -2
  763. package/test/conformance/expected/lists/extra_slice_end.pl +4 -1
  764. package/test/conformance/expected/lists/extra_sort_iri_atoms.pl +4 -1
  765. package/test/conformance/expected/lists/extra_take_all.pl +4 -1
  766. package/test/conformance/expected/lists/improper_list_readback.pl +4 -1
  767. package/test/conformance/expected/lists/length_empty_and_nested.pl +5 -2
  768. package/test/conformance/expected/lists/list_pattern_last.pl +6 -3
  769. package/test/conformance/expected/lists/list_to_set_structural_duplicates.pl +4 -1
  770. package/test/conformance/expected/lists/list_with_iri_atoms.pl +4 -1
  771. package/test/conformance/expected/lists/min_list_empty_fails.pl +4 -1
  772. package/test/conformance/expected/lists/nth0_known_value.pl +4 -1
  773. package/test/conformance/expected/lists/nth0_out_of_range_fails.pl +4 -1
  774. package/test/conformance/expected/lists/reverse_empty.pl +4 -1
  775. package/test/conformance/expected/lists/select_all_occurrences.pl +6 -3
  776. package/test/conformance/expected/lists/set_nth0_middle.pl +4 -1
  777. package/test/conformance/expected/lists/slice_middle.pl +3 -0
  778. package/test/conformance/expected/lists/slice_out_of_range_fails.pl +4 -1
  779. package/test/conformance/expected/lists/sort_structured_terms.pl +4 -1
  780. package/test/conformance/expected/lists/sum_list_empty_zero.pl +4 -1
  781. package/test/conformance/expected/lists/sum_min_max_list.pl +6 -3
  782. package/test/conformance/expected/lists/swipl_aggregate_sum_count.pl +7 -2
  783. package/test/conformance/expected/lists/swipl_assoc_del_min_roundtrip.pl +11 -3
  784. package/test/conformance/expected/lists/swipl_assoc_is_assoc_malformed.pl +10 -3
  785. package/test/conformance/expected/lists/swipl_assoc_is_assoc_valid.pl +4 -1
  786. package/test/conformance/expected/lists/swipl_lists_foldl_empty.pl +7 -2
  787. package/test/conformance/expected/lists/swipl_lists_reverse_mode.pl +4 -1
  788. package/test/conformance/expected/lists/swipl_ordsets_intersection_difference.pl +11 -1
  789. package/test/conformance/expected/lists/swipl_ordsets_is_ordset.pl +7 -2
  790. package/test/conformance/expected/lists/swipl_ugraphs_top_sort.pl +4 -1
  791. package/test/conformance/expected/lists/take_zero_and_drop_all.pl +5 -2
  792. package/test/conformance/expected/modules/qualified_call.pl +4 -1
  793. package/test/conformance/expected/modules/selective_library_import.pl +4 -1
  794. package/test/conformance/expected/negation/033_negation_once_generators.pl +5 -2
  795. package/test/conformance/expected/negation/042_negation_filter.pl +5 -2
  796. package/test/conformance/expected/negation/050_negated_member_filter.pl +4 -1
  797. package/test/conformance/expected/negation/extra_not_with_bound_fails.pl +3 -0
  798. package/test/conformance/expected/negation/extra_not_with_bound_success.pl +4 -1
  799. package/test/conformance/expected/negation/not_known_goal_fails.pl +3 -0
  800. package/test/conformance/expected/negation/not_unknown_goal_succeeds.pl +4 -1
  801. package/test/conformance/expected/negation/stratified_negation_answers.pl +4 -1
  802. package/test/conformance/expected/query/027_default_derived_output.pl +6 -3
  803. package/test/conformance/expected/query/028_query_focus.pl +4 -1
  804. package/test/conformance/expected/query/053_query_excludes_source_fact.pl +4 -1
  805. package/test/conformance/expected/query/099_multiple_queries.pl +9 -4
  806. package/test/conformance/expected/query/arity_specific_outputs.pl +3 -0
  807. package/test/conformance/expected/query/extra_query_selects_arity.pl +3 -0
  808. package/test/conformance/expected/query/extra_query_source_and_derived.pl +4 -1
  809. package/test/conformance/expected/query/source_facts_suppressed.pl +4 -1
  810. package/test/conformance/expected/rules/001_fact_output.pl +4 -1
  811. package/test/conformance/expected/rules/002_rule_recursion.pl +5 -2
  812. package/test/conformance/expected/rules/011_predicate_arity.pl +5 -2
  813. package/test/conformance/expected/rules/013_multiple_clauses_order.pl +5 -2
  814. package/test/conformance/expected/rules/017_three_step_recursion.pl +6 -3
  815. package/test/conformance/expected/rules/022_rule_head_structure.pl +5 -2
  816. package/test/conformance/expected/rules/077_recursive_path_with_lists.pl +6 -3
  817. package/test/conformance/expected/rules/078_mutual_recursion_with_arithmetic.pl +10 -7
  818. package/test/conformance/expected/rules/atom_predicates.pl +6 -1
  819. package/test/conformance/expected/rules/extra_left_to_right_multiple_bindings.pl +5 -2
  820. package/test/conformance/expected/rules/extra_structured_head_rule.pl +4 -1
  821. package/test/conformance/expected/rules/left_to_right_body_binding.pl +4 -1
  822. package/test/conformance/expected/rules/transitive_rule_three_edges.pl +9 -6
  823. package/test/conformance/expected/stc/bagof_answer_order.pl +4 -1
  824. package/test/conformance/expected/stc/clause_variable_identity.pl +4 -1
  825. package/test/conformance/expected/stc/float_underflow_input.pl +4 -1
  826. package/test/conformance/expected/stc/integer_to_float_evaluable.pl +4 -1
  827. package/test/conformance/expected/stc/mixed_integer_float_comparison.pl +4 -1
  828. package/test/conformance/expected/strings/023_quoted_escapes_readback.pl +5 -2
  829. package/test/conformance/expected/strings/030_strings_and_atoms.pl +5 -2
  830. package/test/conformance/expected/strings/055_string_matching_filters.pl +5 -2
  831. package/test/conformance/expected/strings/056_string_concat_modes.pl +14 -9
  832. package/test/conformance/expected/strings/064_reusable_string_builtins.pl +13 -10
  833. package/test/conformance/expected/strings/070_matches_named_captures.pl +4 -1
  834. package/test/conformance/expected/strings/071_string_edges.pl +11 -8
  835. package/test/conformance/expected/strings/072_string_conversions.pl +11 -8
  836. package/test/conformance/expected/strings/089_string_split_join_pipeline.pl +7 -4
  837. package/test/conformance/expected/strings/090_string_substring_replace_edges.pl +10 -7
  838. package/test/conformance/expected/strings/091_string_case_and_trim.pl +8 -5
  839. package/test/conformance/expected/strings/092_scalar_string_conversions.pl +10 -7
  840. package/test/conformance/expected/strings/093_regex_named_captures_context.pl +8 -5
  841. package/test/conformance/expected/strings/atom_string_from_string.pl +4 -1
  842. package/test/conformance/expected/strings/casefold_atoms.pl +5 -2
  843. package/test/conformance/expected/strings/contains_empty_needle.pl +4 -1
  844. package/test/conformance/expected/strings/extra_atom_string_number_input.pl +4 -1
  845. package/test/conformance/expected/strings/extra_join_empty_list.pl +4 -1
  846. package/test/conformance/expected/strings/extra_join_iri_and_atom.pl +4 -1
  847. package/test/conformance/expected/strings/extra_lowercase_iri_atom.pl +4 -1
  848. package/test/conformance/expected/strings/extra_matches_invalid_pattern_fails.pl +3 -0
  849. package/test/conformance/expected/strings/extra_named_regex_optional_missing.pl +4 -1
  850. package/test/conformance/expected/strings/extra_number_string_atom_input.pl +4 -1
  851. package/test/conformance/expected/strings/extra_replace_multiple.pl +4 -1
  852. package/test/conformance/expected/strings/extra_split_empty_separator.pl +4 -1
  853. package/test/conformance/expected/strings/extra_substring_last_char.pl +4 -1
  854. package/test/conformance/expected/strings/extra_term_string_iri_list.pl +4 -1
  855. package/test/conformance/expected/strings/extra_uppercase_mixed_string.pl +4 -1
  856. package/test/conformance/expected/strings/join_mixed_scalars.pl +4 -1
  857. package/test/conformance/expected/strings/matches_simple_alternation.pl +4 -1
  858. package/test/conformance/expected/strings/named_regex_two_groups.pl +4 -1
  859. package/test/conformance/expected/strings/not_matches_simple_pattern.pl +4 -1
  860. package/test/conformance/expected/strings/number_string_from_string.pl +4 -1
  861. package/test/conformance/expected/strings/number_string_rejects_non_numeric.pl +4 -1
  862. package/test/conformance/expected/strings/replace_empty_search_no_change.pl +4 -1
  863. package/test/conformance/expected/strings/split_without_separator_match.pl +4 -1
  864. package/test/conformance/expected/strings/substring_out_of_range_fails.pl +4 -1
  865. package/test/conformance/expected/strings/substring_zero_count.pl +4 -1
  866. package/test/conformance/expected/strings/term_string_nested_term.pl +4 -1
  867. package/test/conformance/expected/strings/trim_tabs_and_spaces.pl +4 -1
  868. package/test/conformance/expected/syntax/004_conjunction_and_parentheses.pl +4 -1
  869. package/test/conformance/expected/syntax/006_comma_formula_data.pl +4 -1
  870. package/test/conformance/expected/syntax/009_comments_and_whitespace.pl +5 -2
  871. package/test/conformance/expected/syntax/019_parenthesized_three_conjuncts.pl +4 -1
  872. package/test/conformance/expected/syntax/025_body_parentheses_with_formula_data.pl +4 -1
  873. package/test/conformance/expected/syntax/comments_inside_program.pl +3 -0
  874. package/test/conformance/expected/syntax/extra_comments_after_terms.pl +3 -0
  875. package/test/conformance/expected/syntax/extra_nested_parenthesized_body.pl +4 -1
  876. package/test/conformance/expected/syntax/infix_subtraction_term.pl +4 -1
  877. package/test/conformance/expected/syntax/parenthesized_query_style_body.pl +4 -1
  878. package/test/conformance/expected/syntax/quoted_atom_with_newline_escape.pl +3 -0
  879. package/test/conformance/expected/syntax/string_with_tab_escape.pl +3 -0
  880. package/test/conformance/expected/terms/003_terms_and_readback.pl +16 -13
  881. package/test/conformance/expected/terms/065_reusable_term_control_builtins.pl +9 -6
  882. package/test/conformance/expected/terms/073_term_introspection_edges.pl +12 -9
  883. package/test/conformance/expected/terms/095_term_introspection_roundtrip.pl +9 -6
  884. package/test/conformance/expected/terms/096_functor_scalar_edges.pl +8 -5
  885. package/test/conformance/expected/terms/arg_first_and_second.pl +5 -2
  886. package/test/conformance/expected/terms/arg_zero_fails.pl +4 -1
  887. package/test/conformance/expected/terms/compound_name_arguments_atom_zero_args.pl +4 -1
  888. package/test/conformance/expected/terms/compound_name_arguments_builds_atom_from_empty_args.pl +4 -1
  889. package/test/conformance/expected/terms/compound_name_arguments_builds_compound.pl +4 -1
  890. package/test/conformance/expected/terms/compound_name_arguments_iri_name.pl +4 -1
  891. package/test/conformance/expected/terms/extra_arg_first_last.pl +4 -1
  892. package/test/conformance/expected/terms/extra_arg_zero_fails.pl +3 -0
  893. package/test/conformance/expected/terms/extra_compound_name_arguments_construct_atom_zero.pl +4 -1
  894. package/test/conformance/expected/terms/extra_compound_name_arguments_construct_iri.pl +4 -1
  895. package/test/conformance/expected/terms/extra_compound_name_arguments_decompose_list.pl +4 -1
  896. package/test/conformance/expected/terms/extra_functor_list_cons.pl +4 -1
  897. package/test/conformance/expected/terms/extra_functor_number_scalar.pl +4 -1
  898. package/test/conformance/expected/terms/extra_functor_string_scalar.pl +4 -1
  899. package/test/conformance/expected/terms/functor_atom_arity_zero.pl +4 -1
  900. package/test/conformance/expected/terms/functor_number_and_string.pl +5 -2
  901. package/test/conformance/expected/terms/herbrand_witness_different_inputs_distinct.pl +4 -1
  902. package/test/conformance/expected/terms/herbrand_witness_one_input.pl +5 -2
  903. package/test/conformance/expected/terms/herbrand_witness_same_inputs_same_term.pl +4 -1
  904. package/test/conformance/expected/terms/herbrand_witness_two_inputs.pl +5 -2
  905. package/test/conformance/expected/terms/term_string_readback_iri_list.pl +4 -1
  906. package/test/conformance/expected/unification/012_nested_compound_unification.pl +5 -2
  907. package/test/conformance/expected/unification/021_repeated_variable_head.pl +5 -2
  908. package/test/conformance/expected/unification/034_equality_and_inequality.pl +7 -4
  909. package/test/conformance/expected/unification/compound_arity_mismatch_fails.pl +4 -1
  910. package/test/conformance/expected/unification/extra_eq_iri_and_quoted_atom.pl +3 -0
  911. package/test/conformance/expected/unification/extra_eq_list_tail_binding.pl +4 -1
  912. package/test/conformance/expected/unification/extra_eq_nested_repeated_fails.pl +3 -0
  913. package/test/conformance/expected/unification/extra_eq_nested_repeated_success.pl +4 -1
  914. package/test/conformance/expected/unification/extra_eq_scalar_number_atom.pl +3 -0
  915. package/test/conformance/expected/unification/extra_eq_scalar_string_number.pl +3 -0
  916. package/test/conformance/expected/unification/extra_neq_compound_arity_mismatch.pl +4 -1
  917. package/test/conformance/expected/unification/extra_neq_scalar_same_lexical_fails.pl +4 -1
  918. package/test/conformance/expected/unification/extra_variable_clause_locality.pl +5 -2
  919. package/test/conformance/expected/unification/list_tail_binding.pl +4 -1
  920. package/test/conformance/expected/unification/logical_equality_inequality_boundaries.pl +6 -3
  921. package/test/conformance/expected/unification/nested_repeated_variable.pl +4 -1
  922. package/test/conformance/expected/unification/occurs_check_rejects_recursive_binding.pl +4 -1
  923. package/test/conformance/expected/unification/scalar_cross_type_same_lexical_value.pl +3 -0
  924. package/test/conformance/expected/variables/007_anonymous_variables.pl +4 -1
  925. package/test/conformance/expected/variables/010_variable_scope_and_reuse.pl +5 -2
  926. package/test/conformance/expected/variables/026_question_underscore_named_variable_reuse.pl +4 -1
  927. package/test/conformance/expected/variables/101_question_mark_variables.pl +6 -3
  928. package/test/conformance/expected/variables/anonymous_in_two_goals.pl +4 -1
  929. package/test/conformance/expected/variables/clause_local_variable_names.pl +5 -2
  930. package/test/conformance/expected/variables/extra_anonymous_not_reused.pl +4 -1
  931. package/test/conformance/expected/variables/extra_named_variable_reused.pl +4 -1
  932. package/test/conformance/expected/variables/extra_question_underscore_named_distinct.pl +4 -1
  933. package/test/conformance/expected/variables/extra_question_uppercase_named.pl +4 -1
  934. package/test/conformance/expected/variables/question_anonymous_not_reused.pl +7 -4
  935. package/test/conformance/expected/variables/question_underscore_named_reuse.pl +4 -1
  936. package/test/conformance/expected/variables/question_uppercase_variable.pl +4 -1
  937. package/test/conformance/expected/variables/question_variable_digits_and_underscore.pl +4 -1
  938. package/test/conformance/expected/variables/question_variable_uppercase_name.pl +4 -1
  939. package/test/conformance/expected/variables/variable_scope_per_clause.pl +5 -2
  940. package/test/conformance/expected-proofs/proofs/bindings_nested_term.pl +10 -12
  941. package/test/conformance/expected-proofs/proofs/builtin_numeric.pl +9 -12
  942. package/test/conformance/expected-proofs/proofs/conjunction_order.pl +12 -13
  943. package/test/conformance/expected-proofs/proofs/explicit_recursive.pl +18 -45
  944. package/test/conformance/expected-proofs/proofs/extra_aggregate_min.pl +14 -12
  945. package/test/conformance/expected-proofs/proofs/extra_compound_name_arguments.pl +16 -12
  946. package/test/conformance/expected-proofs/proofs/extra_context_parts.pl +39 -42
  947. package/test/conformance/expected-proofs/proofs/extra_eq_builtin.pl +9 -12
  948. package/test/conformance/expected-proofs/proofs/extra_explicit_path_bound.pl +19 -46
  949. package/test/conformance/expected-proofs/proofs/extra_findall_builtin.pl +9 -12
  950. package/test/conformance/expected-proofs/proofs/extra_forall_builtin.pl +9 -12
  951. package/test/conformance/expected-proofs/proofs/extra_iri_join.pl +14 -12
  952. package/test/conformance/expected-proofs/proofs/extra_negation_success.pl +9 -12
  953. package/test/conformance/expected-proofs/proofs/extra_nested_list_binding.pl +9 -12
  954. package/test/conformance/expected-proofs/proofs/extra_once_member.pl +10 -19
  955. package/test/conformance/expected-proofs/proofs/extra_recursive_path.pl +18 -45
  956. package/test/conformance/expected-proofs/proofs/herbrand_witness.pl +10 -12
  957. package/test/conformance/expected-proofs/proofs/iri_atom.pl +13 -12
  958. package/test/conformance/expected-proofs/proofs/list_builtin.pl +10 -13
  959. package/test/conformance/expected-proofs/proofs/once_child.pl +11 -19
  960. package/test/conformance/expected-proofs/proofs/rule_fact.pl +10 -12
  961. package/test/conformance/expected-warnings/negation/extra_stratified_multiple_negations_quiet.pl +4 -1
  962. package/test/conformance/expected-warnings/negation/extra_stratified_negation_with_recursion_quiet.pl +4 -1
  963. package/test/conformance/expected-warnings/negation/extra_unstratified_indirect_self_with_fact.pl +3 -0
  964. package/test/conformance/expected-warnings/negation/extra_unstratified_positive_negative_loop.pl +3 -0
  965. package/test/conformance/expected-warnings/negation/extra_unstratified_three_cycle_all_negative.pl +3 -0
  966. package/test/conformance/expected-warnings/negation/extra_warning_preserves_empty_stdout.pl +3 -0
  967. package/test/conformance/expected-warnings/negation/negative_unknown_group_quiet.pl +4 -1
  968. package/test/conformance/expected-warnings/negation/no_negation_quiet.pl +4 -1
  969. package/test/conformance/expected-warnings/negation/stratified_negative_unknown_after_positive_quiet.pl +4 -1
  970. package/test/conformance/expected-warnings/negation/stratified_quiet.pl +4 -1
  971. package/test/conformance/expected-warnings/negation/stratified_two_level_quiet.pl +4 -1
  972. package/test/conformance/expected-warnings/negation/unstratified_mutual.pl +3 -0
  973. package/test/conformance/expected-warnings/negation/unstratified_positive_prefix.pl +3 -0
  974. package/test/conformance/expected-warnings/negation/unstratified_self.pl +3 -0
  975. package/test/conformance/expected-warnings/negation/unstratified_three_step.pl +4 -1
  976. package/test/conformance/expected-warnings/negation/unstratified_two_arity_cycle.pl +3 -0
  977. package/test/conformance/expected-warnings/negation/unstratified_two_independent_cycles.pl +3 -0
  978. package/test/conformance/expected-warnings/negation/unstratified_with_iri_predicates.pl +3 -0
  979. package/test/conformance/expected-warnings/negation/warning_preserves_multiple_stdout_answers.pl +3 -0
  980. package/test/regression/cases-api.mjs +30 -8
  981. package/test/regression/cases-regression.mjs +69 -57
  982. package/test/regression/cases-white-box.mjs +12 -13
  983. package/test/regression/support.mjs +28 -7
  984. package/test/run-all.mjs +2 -0
  985. package/test/run-http-json.mjs +9 -1
  986. package/test/run-iso-part2-amendment.mjs +9 -1
  987. package/test/run-iso-strict.mjs +9 -1
  988. package/test/run-playground.mjs +6 -5
  989. package/test/run-proof-checking.mjs +56 -0
  990. package/test/run-wg17.mjs +11 -0
  991. package/test/test-support.mjs +76 -0
  992. package/the-art-of-eyeprolog.md +79 -64
  993. package/why-eyeprolog.md +13 -12
  994. package/examples/book/chapter-11/01-why.pl +0 -14
@@ -1,154 +1,163 @@
1
- start(a, 10).
2
- start(b, 13).
3
- start(c, 12).
4
- start(d, 11).
5
- start(e, 10).
6
- start(f, 10).
7
- start(g, 11).
8
- start(h, 9).
9
- start(i, 16).
10
- start(j, 15).
11
- start(k, 13).
12
- end(a, 12).
13
- end(b, 15).
14
- end(c, 14).
15
- end(d, 13).
16
- end(e, 12).
17
- end(f, 11).
18
- end(g, 12).
19
- end(h, 16).
20
- end(i, 18).
21
- end(j, 16).
22
- end(k, 14).
23
- duration(a, 2).
24
- duration(b, 2).
25
- duration(c, 2).
26
- duration(d, 2).
27
- duration(e, 2).
28
- duration(f, 1).
29
- duration(g, 1).
30
- duration(h, 7).
31
- duration(i, 2).
32
- duration(j, 1).
33
- duration(k, 1).
34
- statement(a, before, b).
35
- statement(a, before, i).
36
- statement(a, before, j).
37
- statement(a, before, k).
38
- statement(b, before, i).
39
- statement(c, before, i).
40
- statement(c, before, j).
41
- statement(d, before, i).
42
- statement(d, before, j).
43
- statement(e, before, b).
44
- statement(e, before, i).
45
- statement(e, before, j).
46
- statement(e, before, k).
47
- statement(f, before, b).
48
- statement(f, before, c).
49
- statement(f, before, i).
50
- statement(f, before, j).
51
- statement(f, before, k).
52
- statement(g, before, b).
53
- statement(g, before, i).
54
- statement(g, before, j).
55
- statement(g, before, k).
56
- statement(k, before, i).
57
- statement(k, before, j).
58
- statement(a, meets, c).
59
- statement(b, meets, j).
60
- statement(d, meets, b).
61
- statement(d, meets, k).
62
- statement(e, meets, c).
63
- statement(f, meets, d).
64
- statement(f, meets, g).
65
- statement(g, meets, c).
66
- statement(h, meets, i).
67
- statement(j, meets, i).
68
- statement(a, overlaps, d).
69
- statement(c, overlaps, b).
70
- statement(d, overlaps, c).
71
- statement(e, overlaps, d).
72
- statement(f, starts, a).
73
- statement(f, starts, e).
74
- statement(g, starts, d).
75
- statement(k, starts, b).
76
- statement(a, during, h).
77
- statement(b, during, h).
78
- statement(c, during, h).
79
- statement(d, during, h).
80
- statement(e, during, h).
81
- statement(f, during, h).
82
- statement(g, during, h).
83
- statement(k, during, h).
84
- statement(g, finishes, a).
85
- statement(g, finishes, e).
86
- statement(j, finishes, h).
87
- statement(k, finishes, c).
88
- statement(a, equals, a).
89
- statement(a, equals, e).
90
- statement(b, equals, b).
91
- statement(c, equals, c).
92
- statement(d, equals, d).
93
- statement(e, equals, a).
94
- statement(e, equals, e).
95
- statement(f, equals, f).
96
- statement(g, equals, g).
97
- statement(h, equals, h).
98
- statement(i, equals, i).
99
- statement(j, equals, j).
100
- statement(k, equals, k).
101
- statement(b, after, a).
102
- statement(i, after, a).
103
- statement(j, after, a).
104
- statement(k, after, a).
105
- statement(i, after, b).
106
- statement(i, after, c).
107
- statement(j, after, c).
108
- statement(i, after, d).
109
- statement(j, after, d).
110
- statement(b, after, e).
111
- statement(i, after, e).
112
- statement(j, after, e).
113
- statement(k, after, e).
114
- statement(b, after, f).
115
- statement(c, after, f).
116
- statement(i, after, f).
117
- statement(j, after, f).
118
- statement(k, after, f).
119
- statement(b, after, g).
120
- statement(i, after, g).
121
- statement(j, after, g).
122
- statement(k, after, g).
123
- statement(i, after, k).
124
- statement(j, after, k).
125
- statement(c, metBy, a).
126
- statement(j, metBy, b).
127
- statement(b, metBy, d).
128
- statement(k, metBy, d).
129
- statement(c, metBy, e).
130
- statement(d, metBy, f).
131
- statement(g, metBy, f).
132
- statement(c, metBy, g).
133
- statement(i, metBy, h).
134
- statement(i, metBy, j).
135
- statement(d, overlappedBy, a).
136
- statement(b, overlappedBy, c).
137
- statement(c, overlappedBy, d).
138
- statement(d, overlappedBy, e).
139
- statement(a, startedBy, f).
140
- statement(e, startedBy, f).
141
- statement(d, startedBy, g).
142
- statement(b, startedBy, k).
143
- statement(h, contains, a).
144
- statement(h, contains, b).
145
- statement(h, contains, c).
146
- statement(h, contains, d).
147
- statement(h, contains, e).
148
- statement(h, contains, f).
149
- statement(h, contains, g).
150
- statement(h, contains, k).
151
- statement(a, finishedBy, g).
152
- statement(e, finishedBy, g).
153
- statement(h, finishedBy, j).
154
- statement(c, finishedBy, k).
1
+ % Prolog result format 4
2
+ query(1, start(_0, _1), ['X0' = _0, 'X1' = _1]).
3
+ result(1, complete, 11).
4
+ answer(1, ['X0' = a, 'X1' = 10]).
5
+ answer(1, ['X0' = b, 'X1' = 13]).
6
+ answer(1, ['X0' = c, 'X1' = 12]).
7
+ answer(1, ['X0' = d, 'X1' = 11]).
8
+ answer(1, ['X0' = e, 'X1' = 10]).
9
+ answer(1, ['X0' = f, 'X1' = 10]).
10
+ answer(1, ['X0' = g, 'X1' = 11]).
11
+ answer(1, ['X0' = h, 'X1' = 9]).
12
+ answer(1, ['X0' = i, 'X1' = 16]).
13
+ answer(1, ['X0' = j, 'X1' = 15]).
14
+ answer(1, ['X0' = k, 'X1' = 13]).
15
+ query(2, end(_0, _1), ['X0' = _0, 'X1' = _1]).
16
+ result(2, complete, 11).
17
+ answer(2, ['X0' = a, 'X1' = 12]).
18
+ answer(2, ['X0' = b, 'X1' = 15]).
19
+ answer(2, ['X0' = c, 'X1' = 14]).
20
+ answer(2, ['X0' = d, 'X1' = 13]).
21
+ answer(2, ['X0' = e, 'X1' = 12]).
22
+ answer(2, ['X0' = f, 'X1' = 11]).
23
+ answer(2, ['X0' = g, 'X1' = 12]).
24
+ answer(2, ['X0' = h, 'X1' = 16]).
25
+ answer(2, ['X0' = i, 'X1' = 18]).
26
+ answer(2, ['X0' = j, 'X1' = 16]).
27
+ answer(2, ['X0' = k, 'X1' = 14]).
28
+ query(3, duration(_0, _1), ['X0' = _0, 'X1' = _1]).
29
+ result(3, complete, 11).
30
+ answer(3, ['X0' = a, 'X1' = 2]).
31
+ answer(3, ['X0' = b, 'X1' = 2]).
32
+ answer(3, ['X0' = c, 'X1' = 2]).
33
+ answer(3, ['X0' = d, 'X1' = 2]).
34
+ answer(3, ['X0' = e, 'X1' = 2]).
35
+ answer(3, ['X0' = f, 'X1' = 1]).
36
+ answer(3, ['X0' = g, 'X1' = 1]).
37
+ answer(3, ['X0' = h, 'X1' = 7]).
38
+ answer(3, ['X0' = i, 'X1' = 2]).
39
+ answer(3, ['X0' = j, 'X1' = 1]).
40
+ answer(3, ['X0' = k, 'X1' = 1]).
41
+ query(4, statement(_0, _1, _2), ['X0' = _0, 'X1' = _1, 'X2' = _2]).
42
+ result(4, complete, 121).
43
+ answer(4, ['X0' = a, 'X1' = before, 'X2' = b]).
44
+ answer(4, ['X0' = a, 'X1' = before, 'X2' = i]).
45
+ answer(4, ['X0' = a, 'X1' = before, 'X2' = j]).
46
+ answer(4, ['X0' = a, 'X1' = before, 'X2' = k]).
47
+ answer(4, ['X0' = b, 'X1' = before, 'X2' = i]).
48
+ answer(4, ['X0' = c, 'X1' = before, 'X2' = i]).
49
+ answer(4, ['X0' = c, 'X1' = before, 'X2' = j]).
50
+ answer(4, ['X0' = d, 'X1' = before, 'X2' = i]).
51
+ answer(4, ['X0' = d, 'X1' = before, 'X2' = j]).
52
+ answer(4, ['X0' = e, 'X1' = before, 'X2' = b]).
53
+ answer(4, ['X0' = e, 'X1' = before, 'X2' = i]).
54
+ answer(4, ['X0' = e, 'X1' = before, 'X2' = j]).
55
+ answer(4, ['X0' = e, 'X1' = before, 'X2' = k]).
56
+ answer(4, ['X0' = f, 'X1' = before, 'X2' = b]).
57
+ answer(4, ['X0' = f, 'X1' = before, 'X2' = c]).
58
+ answer(4, ['X0' = f, 'X1' = before, 'X2' = i]).
59
+ answer(4, ['X0' = f, 'X1' = before, 'X2' = j]).
60
+ answer(4, ['X0' = f, 'X1' = before, 'X2' = k]).
61
+ answer(4, ['X0' = g, 'X1' = before, 'X2' = b]).
62
+ answer(4, ['X0' = g, 'X1' = before, 'X2' = i]).
63
+ answer(4, ['X0' = g, 'X1' = before, 'X2' = j]).
64
+ answer(4, ['X0' = g, 'X1' = before, 'X2' = k]).
65
+ answer(4, ['X0' = k, 'X1' = before, 'X2' = i]).
66
+ answer(4, ['X0' = k, 'X1' = before, 'X2' = j]).
67
+ answer(4, ['X0' = a, 'X1' = meets, 'X2' = c]).
68
+ answer(4, ['X0' = b, 'X1' = meets, 'X2' = j]).
69
+ answer(4, ['X0' = d, 'X1' = meets, 'X2' = b]).
70
+ answer(4, ['X0' = d, 'X1' = meets, 'X2' = k]).
71
+ answer(4, ['X0' = e, 'X1' = meets, 'X2' = c]).
72
+ answer(4, ['X0' = f, 'X1' = meets, 'X2' = d]).
73
+ answer(4, ['X0' = f, 'X1' = meets, 'X2' = g]).
74
+ answer(4, ['X0' = g, 'X1' = meets, 'X2' = c]).
75
+ answer(4, ['X0' = h, 'X1' = meets, 'X2' = i]).
76
+ answer(4, ['X0' = j, 'X1' = meets, 'X2' = i]).
77
+ answer(4, ['X0' = a, 'X1' = overlaps, 'X2' = d]).
78
+ answer(4, ['X0' = c, 'X1' = overlaps, 'X2' = b]).
79
+ answer(4, ['X0' = d, 'X1' = overlaps, 'X2' = c]).
80
+ answer(4, ['X0' = e, 'X1' = overlaps, 'X2' = d]).
81
+ answer(4, ['X0' = f, 'X1' = starts, 'X2' = a]).
82
+ answer(4, ['X0' = f, 'X1' = starts, 'X2' = e]).
83
+ answer(4, ['X0' = g, 'X1' = starts, 'X2' = d]).
84
+ answer(4, ['X0' = k, 'X1' = starts, 'X2' = b]).
85
+ answer(4, ['X0' = a, 'X1' = during, 'X2' = h]).
86
+ answer(4, ['X0' = b, 'X1' = during, 'X2' = h]).
87
+ answer(4, ['X0' = c, 'X1' = during, 'X2' = h]).
88
+ answer(4, ['X0' = d, 'X1' = during, 'X2' = h]).
89
+ answer(4, ['X0' = e, 'X1' = during, 'X2' = h]).
90
+ answer(4, ['X0' = f, 'X1' = during, 'X2' = h]).
91
+ answer(4, ['X0' = g, 'X1' = during, 'X2' = h]).
92
+ answer(4, ['X0' = k, 'X1' = during, 'X2' = h]).
93
+ answer(4, ['X0' = g, 'X1' = finishes, 'X2' = a]).
94
+ answer(4, ['X0' = g, 'X1' = finishes, 'X2' = e]).
95
+ answer(4, ['X0' = j, 'X1' = finishes, 'X2' = h]).
96
+ answer(4, ['X0' = k, 'X1' = finishes, 'X2' = c]).
97
+ answer(4, ['X0' = a, 'X1' = equals, 'X2' = a]).
98
+ answer(4, ['X0' = a, 'X1' = equals, 'X2' = e]).
99
+ answer(4, ['X0' = b, 'X1' = equals, 'X2' = b]).
100
+ answer(4, ['X0' = c, 'X1' = equals, 'X2' = c]).
101
+ answer(4, ['X0' = d, 'X1' = equals, 'X2' = d]).
102
+ answer(4, ['X0' = e, 'X1' = equals, 'X2' = a]).
103
+ answer(4, ['X0' = e, 'X1' = equals, 'X2' = e]).
104
+ answer(4, ['X0' = f, 'X1' = equals, 'X2' = f]).
105
+ answer(4, ['X0' = g, 'X1' = equals, 'X2' = g]).
106
+ answer(4, ['X0' = h, 'X1' = equals, 'X2' = h]).
107
+ answer(4, ['X0' = i, 'X1' = equals, 'X2' = i]).
108
+ answer(4, ['X0' = j, 'X1' = equals, 'X2' = j]).
109
+ answer(4, ['X0' = k, 'X1' = equals, 'X2' = k]).
110
+ answer(4, ['X0' = b, 'X1' = after, 'X2' = a]).
111
+ answer(4, ['X0' = i, 'X1' = after, 'X2' = a]).
112
+ answer(4, ['X0' = j, 'X1' = after, 'X2' = a]).
113
+ answer(4, ['X0' = k, 'X1' = after, 'X2' = a]).
114
+ answer(4, ['X0' = i, 'X1' = after, 'X2' = b]).
115
+ answer(4, ['X0' = i, 'X1' = after, 'X2' = c]).
116
+ answer(4, ['X0' = j, 'X1' = after, 'X2' = c]).
117
+ answer(4, ['X0' = i, 'X1' = after, 'X2' = d]).
118
+ answer(4, ['X0' = j, 'X1' = after, 'X2' = d]).
119
+ answer(4, ['X0' = b, 'X1' = after, 'X2' = e]).
120
+ answer(4, ['X0' = i, 'X1' = after, 'X2' = e]).
121
+ answer(4, ['X0' = j, 'X1' = after, 'X2' = e]).
122
+ answer(4, ['X0' = k, 'X1' = after, 'X2' = e]).
123
+ answer(4, ['X0' = b, 'X1' = after, 'X2' = f]).
124
+ answer(4, ['X0' = c, 'X1' = after, 'X2' = f]).
125
+ answer(4, ['X0' = i, 'X1' = after, 'X2' = f]).
126
+ answer(4, ['X0' = j, 'X1' = after, 'X2' = f]).
127
+ answer(4, ['X0' = k, 'X1' = after, 'X2' = f]).
128
+ answer(4, ['X0' = b, 'X1' = after, 'X2' = g]).
129
+ answer(4, ['X0' = i, 'X1' = after, 'X2' = g]).
130
+ answer(4, ['X0' = j, 'X1' = after, 'X2' = g]).
131
+ answer(4, ['X0' = k, 'X1' = after, 'X2' = g]).
132
+ answer(4, ['X0' = i, 'X1' = after, 'X2' = k]).
133
+ answer(4, ['X0' = j, 'X1' = after, 'X2' = k]).
134
+ answer(4, ['X0' = c, 'X1' = metBy, 'X2' = a]).
135
+ answer(4, ['X0' = j, 'X1' = metBy, 'X2' = b]).
136
+ answer(4, ['X0' = b, 'X1' = metBy, 'X2' = d]).
137
+ answer(4, ['X0' = k, 'X1' = metBy, 'X2' = d]).
138
+ answer(4, ['X0' = c, 'X1' = metBy, 'X2' = e]).
139
+ answer(4, ['X0' = d, 'X1' = metBy, 'X2' = f]).
140
+ answer(4, ['X0' = g, 'X1' = metBy, 'X2' = f]).
141
+ answer(4, ['X0' = c, 'X1' = metBy, 'X2' = g]).
142
+ answer(4, ['X0' = i, 'X1' = metBy, 'X2' = h]).
143
+ answer(4, ['X0' = i, 'X1' = metBy, 'X2' = j]).
144
+ answer(4, ['X0' = d, 'X1' = overlappedBy, 'X2' = a]).
145
+ answer(4, ['X0' = b, 'X1' = overlappedBy, 'X2' = c]).
146
+ answer(4, ['X0' = c, 'X1' = overlappedBy, 'X2' = d]).
147
+ answer(4, ['X0' = d, 'X1' = overlappedBy, 'X2' = e]).
148
+ answer(4, ['X0' = a, 'X1' = startedBy, 'X2' = f]).
149
+ answer(4, ['X0' = e, 'X1' = startedBy, 'X2' = f]).
150
+ answer(4, ['X0' = d, 'X1' = startedBy, 'X2' = g]).
151
+ answer(4, ['X0' = b, 'X1' = startedBy, 'X2' = k]).
152
+ answer(4, ['X0' = h, 'X1' = contains, 'X2' = a]).
153
+ answer(4, ['X0' = h, 'X1' = contains, 'X2' = b]).
154
+ answer(4, ['X0' = h, 'X1' = contains, 'X2' = c]).
155
+ answer(4, ['X0' = h, 'X1' = contains, 'X2' = d]).
156
+ answer(4, ['X0' = h, 'X1' = contains, 'X2' = e]).
157
+ answer(4, ['X0' = h, 'X1' = contains, 'X2' = f]).
158
+ answer(4, ['X0' = h, 'X1' = contains, 'X2' = g]).
159
+ answer(4, ['X0' = h, 'X1' = contains, 'X2' = k]).
160
+ answer(4, ['X0' = a, 'X1' = finishedBy, 'X2' = g]).
161
+ answer(4, ['X0' = e, 'X1' = finishedBy, 'X2' = g]).
162
+ answer(4, ['X0' = h, 'X1' = finishedBy, 'X2' = j]).
163
+ answer(4, ['X0' = c, 'X1' = finishedBy, 'X2' = k]).
@@ -1,6 +1,11 @@
1
- ancestor(pat, jan).
2
- ancestor(jan, lies).
3
- ancestor(lies, emma).
4
- ancestor(pat, lies).
5
- ancestor(pat, emma).
6
- ancestor(jan, emma).
1
+ % Prolog result format 4
2
+ query(1, parent(_0, _1), ['X0' = _0, 'X1' = _1]).
3
+ result(1, complete, 0).
4
+ query(2, ancestor(_0, _1), ['X0' = _0, 'X1' = _1]).
5
+ result(2, complete, 6).
6
+ answer(2, ['X0' = pat, 'X1' = jan]).
7
+ answer(2, ['X0' = jan, 'X1' = lies]).
8
+ answer(2, ['X0' = lies, 'X1' = emma]).
9
+ answer(2, ['X0' = pat, 'X1' = lies]).
10
+ answer(2, ['X0' = pat, 'X1' = emma]).
11
+ answer(2, ['X0' = jan, 'X1' = emma]).
@@ -1,4 +1,11 @@
1
- type(joe, human).
2
- type(joe, animal).
3
- subclassOf(human, animal).
4
- succeeds(animalExample, true).
1
+ % Prolog result format 4
2
+ query(1, type(_0, _1), ['X0' = _0, 'X1' = _1]).
3
+ result(1, complete, 2).
4
+ answer(1, ['X0' = joe, 'X1' = human]).
5
+ answer(1, ['X0' = joe, 'X1' = animal]).
6
+ query(2, subclassOf(_0, _1), ['X0' = _0, 'X1' = _1]).
7
+ result(2, complete, 1).
8
+ answer(2, ['X0' = human, 'X1' = animal]).
9
+ query(3, succeeds(_0, _1), ['X0' = _0, 'X1' = _1]).
10
+ result(3, complete, 1).
11
+ answer(3, ['X0' = animalExample, 'X1' = true]).
@@ -1,4 +1,13 @@
1
- name(a, "Alice").
2
- log_nameOf(t, name(a, "Alice")).
3
- statedBy(t, bob).
4
- recorded(t, "2021-07-07").
1
+ % Prolog result format 4
2
+ query(1, name(_0, _1), ['X0' = _0, 'X1' = _1]).
3
+ result(1, complete, 1).
4
+ answer(1, ['X0' = a, 'X1' = "Alice"]).
5
+ query(2, log_nameOf(_0, _1), ['X0' = _0, 'X1' = _1]).
6
+ result(2, complete, 1).
7
+ answer(2, ['X0' = t, 'X1' = name(a, "Alice")]).
8
+ query(3, statedBy(_0, _1), ['X0' = _0, 'X1' = _1]).
9
+ result(3, complete, 1).
10
+ answer(3, ['X0' = t, 'X1' = bob]).
11
+ query(4, recorded(_0, _1), ['X0' = _0, 'X1' = _1]).
12
+ result(4, complete, 1).
13
+ answer(4, ['X0' = t, 'X1' = "2021-07-07"]).
@@ -1,2 +1,7 @@
1
- accepts_required_value(ok).
2
- alias_preserves_attribute(ok).
1
+ % Prolog result format 4
2
+ query(1, accepts_required_value(ok), []).
3
+ result(1, complete, 1).
4
+ answer(1, []).
5
+ query(2, alias_preserves_attribute(ok), []).
6
+ result(2, complete, 1).
7
+ answer(2, []).