eyeling 1.23.5 → 1.24.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.
Files changed (259) hide show
  1. package/README.md +1 -0
  2. package/dist/browser/eyeling.browser.js +11876 -11928
  3. package/package.json +7 -5
  4. package/see/README.md +146 -0
  5. package/see/examples/_see.js +218 -0
  6. package/see/examples/age.js +1433 -0
  7. package/see/examples/annotation.js +1294 -0
  8. package/see/examples/backward.js +1379 -0
  9. package/see/examples/backward_recursion.js +1478 -0
  10. package/see/examples/bayes_diagnosis.js +2857 -0
  11. package/see/examples/bayes_therapy.js +4126 -0
  12. package/see/examples/bmi.js +3012 -0
  13. package/see/examples/builtin_coverage.js +2498 -0
  14. package/see/examples/collection.js +1294 -0
  15. package/see/examples/complex.js +3736 -0
  16. package/see/examples/complex_matrix_stability.js +2947 -0
  17. package/see/examples/composition_of_injective_functions_is_injective.js +2144 -0
  18. package/see/examples/control_system.js +1892 -0
  19. package/see/examples/crypto_builtins_tests.js +1463 -0
  20. package/see/examples/delfour.js +3148 -0
  21. package/see/examples/digital_product_passport.js +2830 -0
  22. package/see/examples/dijkstra.js +2044 -0
  23. package/see/examples/dijkstra_risk_path.js +1848 -0
  24. package/see/examples/doc/age.md +27 -0
  25. package/see/examples/doc/annotation.md +24 -0
  26. package/see/examples/doc/backward.md +26 -0
  27. package/see/examples/doc/backward_recursion.md +26 -0
  28. package/see/examples/doc/bayes_diagnosis.md +41 -0
  29. package/see/examples/doc/bayes_therapy.md +40 -0
  30. package/see/examples/doc/bmi.md +38 -0
  31. package/see/examples/doc/builtin_coverage.md +53 -0
  32. package/see/examples/doc/collection.md +24 -0
  33. package/see/examples/doc/complex.md +38 -0
  34. package/see/examples/doc/complex_matrix_stability.md +35 -0
  35. package/see/examples/doc/composition_of_injective_functions_is_injective.md +24 -0
  36. package/see/examples/doc/control_system.md +32 -0
  37. package/see/examples/doc/crypto_builtins_tests.md +27 -0
  38. package/see/examples/doc/delfour.md +37 -0
  39. package/see/examples/doc/digital_product_passport.md +36 -0
  40. package/see/examples/doc/dijkstra.md +28 -0
  41. package/see/examples/doc/dijkstra_risk_path.md +30 -0
  42. package/see/examples/doc/dog.md +28 -0
  43. package/see/examples/doc/eco_route_insight.md +33 -0
  44. package/see/examples/doc/equals.md +26 -0
  45. package/see/examples/doc/equivalence_classes_overlap_implies_same_class.md +24 -0
  46. package/see/examples/doc/euler_identity.md +39 -0
  47. package/see/examples/doc/ev_roundtrip_planner.md +32 -0
  48. package/see/examples/doc/existential_rule.md +24 -0
  49. package/see/examples/doc/expression_eval.md +26 -0
  50. package/see/examples/doc/family_cousins.md +24 -0
  51. package/see/examples/doc/fastpow.md +29 -0
  52. package/see/examples/doc/fibonacci.md +28 -0
  53. package/see/examples/doc/french_cities.md +28 -0
  54. package/see/examples/doc/fundamental_theorem_arithmetic.md +36 -0
  55. package/see/examples/doc/genetic_knapsack_selection.md +29 -0
  56. package/see/examples/doc/goldbach_1000.md +31 -0
  57. package/see/examples/doc/good_cobbler.md +27 -0
  58. package/see/examples/doc/gps.md +35 -0
  59. package/see/examples/doc/gray_code_counter.md +31 -0
  60. package/see/examples/doc/greatest_lower_bound_uniqueness.md +24 -0
  61. package/see/examples/doc/group_inverse_uniqueness.md +24 -0
  62. package/see/examples/doc/hadamard_approx.md +32 -0
  63. package/see/examples/doc/hanoi.md +26 -0
  64. package/see/examples/doc/odrl_dpv_risk_ranked.md +57 -0
  65. package/see/examples/doc/path_discovery.md +33 -0
  66. package/see/examples/doc/rc_discharge_envelope.md +33 -0
  67. package/see/examples/doc/rdf_message_flow.md +35 -0
  68. package/see/examples/doc/rdf_messages.md +37 -0
  69. package/see/examples/doc/school_placement_audit.md +31 -0
  70. package/see/examples/doc/smoke_arithmetic.md +31 -0
  71. package/see/examples/doc/socrates.md +24 -0
  72. package/see/examples/doc/wind_turbine.md +37 -0
  73. package/see/examples/doc/witch.md +28 -0
  74. package/see/examples/dog.js +1410 -0
  75. package/see/examples/eco_route_insight.js +2084 -0
  76. package/see/examples/equals.js +1337 -0
  77. package/see/examples/equivalence_classes_overlap_implies_same_class.js +1766 -0
  78. package/see/examples/euler_identity.js +2012 -0
  79. package/see/examples/ev_roundtrip_planner.js +2536 -0
  80. package/see/examples/existential_rule.js +1337 -0
  81. package/see/examples/expression_eval.js +1772 -0
  82. package/see/examples/family_cousins.js +1560 -0
  83. package/see/examples/fastpow.js +2181 -0
  84. package/see/examples/fibonacci.js +1568 -0
  85. package/see/examples/french_cities.js +1466 -0
  86. package/see/examples/fundamental_theorem_arithmetic.js +2080 -0
  87. package/see/examples/genetic_knapsack_selection.js +1717 -0
  88. package/see/examples/goldbach_1000.js +1772 -0
  89. package/see/examples/good_cobbler.js +1370 -0
  90. package/see/examples/gps.js +2787 -0
  91. package/see/examples/gray_code_counter.js +1615 -0
  92. package/see/examples/greatest_lower_bound_uniqueness.js +1892 -0
  93. package/see/examples/group_inverse_uniqueness.js +1871 -0
  94. package/see/examples/hadamard_approx.js +4391 -0
  95. package/see/examples/hanoi.js +1599 -0
  96. package/see/examples/input/age.trig +27 -0
  97. package/see/examples/input/annotation.trig +31 -0
  98. package/see/examples/input/backward.trig +25 -0
  99. package/see/examples/input/backward_recursion.trig +25 -0
  100. package/see/examples/input/bayes_diagnosis.trig +111 -0
  101. package/see/examples/input/bayes_therapy.trig +130 -0
  102. package/see/examples/input/bmi.trig +28 -0
  103. package/see/examples/input/builtin_coverage.trig +24 -0
  104. package/see/examples/input/collection.trig +25 -0
  105. package/see/examples/input/complex.trig +26 -0
  106. package/see/examples/input/complex_matrix_stability.trig +65 -0
  107. package/see/examples/input/composition_of_injective_functions_is_injective.trig +35 -0
  108. package/see/examples/input/control_system.trig +31 -0
  109. package/see/examples/input/crypto_builtins_tests.trig +25 -0
  110. package/see/examples/input/delfour.trig +90 -0
  111. package/see/examples/input/digital_product_passport.trig +116 -0
  112. package/see/examples/input/dijkstra.trig +34 -0
  113. package/see/examples/input/dijkstra_risk_path.trig +46 -0
  114. package/see/examples/input/dog.trig +31 -0
  115. package/see/examples/input/eco_route_insight.trig +58 -0
  116. package/see/examples/input/equals.trig +25 -0
  117. package/see/examples/input/equivalence_classes_overlap_implies_same_class.trig +28 -0
  118. package/see/examples/input/euler_identity.trig +34 -0
  119. package/see/examples/input/ev_roundtrip_planner.trig +90 -0
  120. package/see/examples/input/existential_rule.trig +26 -0
  121. package/see/examples/input/expression_eval.trig +41 -0
  122. package/see/examples/input/family_cousins.trig +39 -0
  123. package/see/examples/input/fastpow.trig +25 -0
  124. package/see/examples/input/fibonacci.trig +51 -0
  125. package/see/examples/input/french_cities.trig +38 -0
  126. package/see/examples/input/fundamental_theorem_arithmetic.trig +42 -0
  127. package/see/examples/input/genetic_knapsack_selection.trig +39 -0
  128. package/see/examples/input/goldbach_1000.trig +53 -0
  129. package/see/examples/input/good_cobbler.trig +24 -0
  130. package/see/examples/input/gps.trig +35 -0
  131. package/see/examples/input/gray_code_counter.trig +33 -0
  132. package/see/examples/input/greatest_lower_bound_uniqueness.trig +29 -0
  133. package/see/examples/input/group_inverse_uniqueness.trig +29 -0
  134. package/see/examples/input/hadamard_approx.trig +32 -0
  135. package/see/examples/input/hanoi.trig +26 -0
  136. package/see/examples/input/odrl_dpv_risk_ranked.trig +107 -0
  137. package/see/examples/input/path-discovery.trig +96448 -0
  138. package/see/examples/input/path_discovery.trig +29 -0
  139. package/see/examples/input/rc_discharge_envelope.trig +37 -0
  140. package/see/examples/input/rdf_message_flow.trig +100 -0
  141. package/see/examples/input/rdf_messages.trig +69 -0
  142. package/see/examples/input/school_placement_audit.trig +51 -0
  143. package/see/examples/input/smoke_arithmetic.trig +27 -0
  144. package/see/examples/input/socrates.trig +26 -0
  145. package/see/examples/input/wind_turbine.trig +48 -0
  146. package/see/examples/input/witch.trig +26 -0
  147. package/see/examples/n3/age.n3 +28 -0
  148. package/see/examples/n3/annotation.n3 +7 -0
  149. package/see/examples/n3/backward.n3 +22 -0
  150. package/see/examples/n3/backward_recursion.n3 +12 -0
  151. package/see/examples/n3/bayes_diagnosis.n3 +122 -0
  152. package/see/examples/n3/bayes_therapy.n3 +149 -0
  153. package/see/examples/n3/bmi.n3 +145 -0
  154. package/see/examples/n3/builtin_coverage.n3 +68 -0
  155. package/see/examples/n3/collection.n3 +3 -0
  156. package/see/examples/n3/complex.n3 +140 -0
  157. package/see/examples/n3/complex_matrix_stability.n3 +113 -0
  158. package/see/examples/n3/composition_of_injective_functions_is_injective.n3 +27 -0
  159. package/see/examples/n3/control_system.n3 +59 -0
  160. package/see/examples/n3/crypto_builtins_tests.n3 +18 -0
  161. package/see/examples/n3/delfour.n3 +167 -0
  162. package/see/examples/n3/digital_product_passport.n3 +156 -0
  163. package/see/examples/n3/dijkstra.n3 +46 -0
  164. package/see/examples/n3/dijkstra_risk_path.n3 +67 -0
  165. package/see/examples/n3/dog.n3 +20 -0
  166. package/see/examples/n3/eco_route_insight.n3 +88 -0
  167. package/see/examples/n3/equals.n3 +11 -0
  168. package/see/examples/n3/equivalence_classes_overlap_implies_same_class.n3 +19 -0
  169. package/see/examples/n3/euler_identity.n3 +41 -0
  170. package/see/examples/n3/ev_roundtrip_planner.n3 +82 -0
  171. package/see/examples/n3/existential_rule.n3 +10 -0
  172. package/see/examples/n3/expression_eval.n3 +21 -0
  173. package/see/examples/n3/family_cousins.n3 +62 -0
  174. package/see/examples/n3/fastpow.n3 +56 -0
  175. package/see/examples/n3/fibonacci.n3 +44 -0
  176. package/see/examples/n3/french_cities.n3 +28 -0
  177. package/see/examples/n3/fundamental_theorem_arithmetic.n3 +84 -0
  178. package/see/examples/n3/genetic_knapsack_selection.n3 +54 -0
  179. package/see/examples/n3/goldbach_1000.n3 +66 -0
  180. package/see/examples/n3/good_cobbler.n3 +10 -0
  181. package/see/examples/n3/gps.n3 +70 -0
  182. package/see/examples/n3/gray_code_counter.n3 +53 -0
  183. package/see/examples/n3/greatest_lower_bound_uniqueness.n3 +20 -0
  184. package/see/examples/n3/group_inverse_uniqueness.n3 +19 -0
  185. package/see/examples/n3/hadamard_approx.n3 +43 -0
  186. package/see/examples/n3/hanoi.n3 +16 -0
  187. package/see/examples/n3/odrl_dpv_risk_ranked.n3 +460 -0
  188. package/see/examples/n3/path_discovery.n3 +43 -0
  189. package/see/examples/n3/rc_discharge_envelope.n3 +61 -0
  190. package/see/examples/n3/rdf_message_flow.n3 +209 -0
  191. package/see/examples/n3/rdf_messages.n3 +143 -0
  192. package/see/examples/n3/school_placement_audit.n3 +63 -0
  193. package/see/examples/n3/smoke_arithmetic.n3 +22 -0
  194. package/see/examples/n3/socrates.n3 +21 -0
  195. package/see/examples/n3/wind_turbine.n3 +85 -0
  196. package/see/examples/n3/witch.n3 +30 -0
  197. package/see/examples/odrl_dpv_risk_ranked.js +5102 -0
  198. package/see/examples/output/age.md +48 -0
  199. package/see/examples/output/annotation.md +43 -0
  200. package/see/examples/output/backward.md +50 -0
  201. package/see/examples/output/backward_recursion.md +54 -0
  202. package/see/examples/output/bayes_diagnosis.md +103 -0
  203. package/see/examples/output/bayes_therapy.md +84 -0
  204. package/see/examples/output/bmi.md +164 -0
  205. package/see/examples/output/builtin_coverage.md +99 -0
  206. package/see/examples/output/collection.md +44 -0
  207. package/see/examples/output/complex.md +61 -0
  208. package/see/examples/output/complex_matrix_stability.md +55 -0
  209. package/see/examples/output/composition_of_injective_functions_is_injective.md +62 -0
  210. package/see/examples/output/control_system.md +61 -0
  211. package/see/examples/output/crypto_builtins_tests.md +68 -0
  212. package/see/examples/output/delfour.md +100 -0
  213. package/see/examples/output/digital_product_passport.md +100 -0
  214. package/see/examples/output/dijkstra.md +74 -0
  215. package/see/examples/output/dijkstra_risk_path.md +76 -0
  216. package/see/examples/output/dog.md +50 -0
  217. package/see/examples/output/eco_route_insight.md +88 -0
  218. package/see/examples/output/equals.md +50 -0
  219. package/see/examples/output/equivalence_classes_overlap_implies_same_class.md +86 -0
  220. package/see/examples/output/euler_identity.md +73 -0
  221. package/see/examples/output/ev_roundtrip_planner.md +79 -0
  222. package/see/examples/output/existential_rule.md +54 -0
  223. package/see/examples/output/expression_eval.md +50 -0
  224. package/see/examples/output/family_cousins.md +187 -0
  225. package/see/examples/output/fastpow.md +36 -0
  226. package/see/examples/output/fibonacci.md +53 -0
  227. package/see/examples/output/french_cities.md +70 -0
  228. package/see/examples/output/fundamental_theorem_arithmetic.md +101 -0
  229. package/see/examples/output/genetic_knapsack_selection.md +66 -0
  230. package/see/examples/output/goldbach_1000.md +58 -0
  231. package/see/examples/output/good_cobbler.md +54 -0
  232. package/see/examples/output/gps.md +102 -0
  233. package/see/examples/output/gray_code_counter.md +68 -0
  234. package/see/examples/output/greatest_lower_bound_uniqueness.md +60 -0
  235. package/see/examples/output/group_inverse_uniqueness.md +60 -0
  236. package/see/examples/output/hadamard_approx.md +510 -0
  237. package/see/examples/output/hanoi.md +51 -0
  238. package/see/examples/output/odrl_dpv_risk_ranked.md +139 -0
  239. package/see/examples/output/path_discovery.md +65 -0
  240. package/see/examples/output/rc_discharge_envelope.md +102 -0
  241. package/see/examples/output/rdf_message_flow.md +198 -0
  242. package/see/examples/output/rdf_messages.md +134 -0
  243. package/see/examples/output/school_placement_audit.md +99 -0
  244. package/see/examples/output/smoke_arithmetic.md +54 -0
  245. package/see/examples/output/socrates.md +55 -0
  246. package/see/examples/output/wind_turbine.md +108 -0
  247. package/see/examples/output/witch.md +87 -0
  248. package/see/examples/path_discovery.js +1748 -0
  249. package/see/examples/rc_discharge_envelope.js +1967 -0
  250. package/see/examples/rdf_message_flow.js +2554 -0
  251. package/see/examples/rdf_messages.js +2150 -0
  252. package/see/examples/school_placement_audit.js +1841 -0
  253. package/see/examples/smoke_arithmetic.js +1457 -0
  254. package/see/examples/socrates.js +1394 -0
  255. package/see/examples/wind_turbine.js +2827 -0
  256. package/see/examples/witch.js +1493 -0
  257. package/see/see.js +1794 -0
  258. package/test/see.test.js +159 -0
  259. package/tools/n3gen.js +1 -1
@@ -0,0 +1,25 @@
1
+ @prefix : <https://eyereasoner.github.io/see/examples/fastpow#> .
2
+ @prefix math: <http://www.w3.org/2000/10/swap/math#> .
3
+ @prefix log: <http://www.w3.org/2000/10/swap/log#> .
4
+ @prefix see: <https://example.org/see#> .
5
+ @prefix in: <https://example.org/see/input#> .
6
+
7
+ # Formal SEE input evidence in RDF 1.2 TriG.
8
+ # The generated runner reads this TriG evidence directly.
9
+
10
+ # No source facts were present in the N3 program.
11
+
12
+ in:metadata {
13
+ in:run a see:InputDataset .
14
+ in:run see:name "fastpow" .
15
+ in:run see:title "Fast exponentiation demo" .
16
+ in:run see:sourceFile "examples/n3/fastpow.n3" .
17
+ in:run see:sourceSHA256 "be6ae46e774f3887cf89f2302ba55a826a08d3c846b77dd3c78a90e32d0ebc14" .
18
+ in:run see:description "" .
19
+ in:run see:compiler "see.js N3-to-JS compiler" .
20
+ in:run see:inputFacts 0 .
21
+ in:run see:compiledRules 1 .
22
+ in:run see:compiledBackwardRules 7 .
23
+ in:run see:compiledFuses 0 .
24
+ in:run see:compiledQueries 0 .
25
+ }
@@ -0,0 +1,51 @@
1
+ @prefix : <https://eyereasoner.github.io/see/examples/fibonacci#> .
2
+ @prefix log: <http://www.w3.org/2000/10/swap/log#> .
3
+ @prefix string: <http://www.w3.org/2000/10/swap/string#> .
4
+ @prefix see: <https://example.org/see#> .
5
+ @prefix in: <https://example.org/see/input#> .
6
+
7
+ # Formal SEE input evidence in RDF 1.2 TriG.
8
+ # The generated runner reads this TriG evidence directly.
9
+
10
+ :Run :target 10000 .
11
+ :Run :sampleIndex 0 .
12
+ :Run :sampleIndex 1 .
13
+ :Run :sampleIndex 2 .
14
+ :Run :sampleIndex 10 .
15
+ :Run :sampleIndex 100 .
16
+ :Run :sampleIndex 1000 .
17
+ :Run :sampleIndex 10000 .
18
+ :Run :method :bigIntegerRecurrence .
19
+ :bigIntegerRecurrence :baseCase "F(0)=0" .
20
+ :bigIntegerRecurrence :baseCase "F(1)=1" .
21
+ :bigIntegerRecurrence :stepRule "F(n)=F(n-1)+F(n-2)" .
22
+ :Sample0 :index 0 .
23
+ :Sample0 :value "0" .
24
+ :Sample1 :index 1 .
25
+ :Sample1 :value "1" .
26
+ :Sample2 :index 2 .
27
+ :Sample2 :value "1" .
28
+ :Sample10 :index 10 .
29
+ :Sample10 :value "55" .
30
+ :Sample100 :index 100 .
31
+ :Sample100 :value "354224848179261915075" .
32
+ :Sample1000 :index 1000 .
33
+ :Sample1000 :digits 209 .
34
+ :Sample10000 :index 10000 .
35
+ :Sample10000 :digits 2090 .
36
+ :Sample10000 :value "33644764876431783266621612005107543310302148460680063906564769974680081442166662368155595513633734025582065332680836159373734790483865268263040892463056431887354544369559827491606602099884183933864652731300088830269235673613135117579297437854413752130520504347701602264758318906527890855154366159582987279682987510631200575428783453215515103870818298969791613127856265033195487140214287532698187962046936097879900350962302291026368131493195275630227837628441540360584402572114334961180023091208287046088923962328835461505776583271252546093591128203925285393434620904245248929403901706233888991085841065183173360437470737908552631764325733993712871937587746897479926305837065742830161637408969178426378624212835258112820516370298089332099905707920064367426202389783111470054074998459250360633560933883831923386783056136435351892133279732908133732642652633989763922723407882928177953580570993691049175470808931841056146322338217465637321248226383092103297701648054726243842374862411453093812206564914032751086643394517512161526545361333111314042436854805106765843493523836959653428071768775328348234345557366719731392746273629108210679280784718035329131176778924659089938635459327894523777674406192240337638674004021330343297496902028328145933418826817683893072003634795623117103101291953169794607632737589253530772552375943788434504067715555779056450443016640119462580972216729758615026968443146952034614932291105970676243268515992834709891284706740862008587135016260312071903172086094081298321581077282076353186624611278245537208532365305775956430072517744315051539600905168603220349163222640885248852433158051534849622434848299380905070483482449327453732624567755879089187190803662058009594743150052402532709746995318770724376825907419939632265984147498193609285223945039707165443156421328157688908058783183404917434556270520223564846495196112460268313970975069382648706613264507665074611512677522748621598642530711298441182622661057163515069260029861704945425047491378115154139941550671256271197133252763631939606902895650288268608362241082050562430701794976171121233066073310059947366875" .
37
+
38
+ in:metadata {
39
+ in:run a see:InputDataset .
40
+ in:run see:name "fibonacci" .
41
+ in:run see:title "Fibonacci Example (Big)" .
42
+ in:run see:sourceFile "examples/n3/fibonacci.n3" .
43
+ in:run see:sourceSHA256 "25d93f4de352e797e1afb277f9f5805b1cdaface366f199b1195cc601555a172" .
44
+ in:run see:description "N3-compiled version of the exact Fibonacci example. The target and sample indices are represented as formal TriG input\nevidence when this source is compiled." .
45
+ in:run see:compiler "see.js N3-to-JS compiler" .
46
+ in:run see:inputFacts 27 .
47
+ in:run see:compiledRules 1 .
48
+ in:run see:compiledBackwardRules 0 .
49
+ in:run see:compiledFuses 0 .
50
+ in:run see:compiledQueries 1 .
51
+ }
@@ -0,0 +1,38 @@
1
+ @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
2
+ @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
3
+ @prefix owl: <http://www.w3.org/2002/07/owl#> .
4
+ @prefix log: <http://www.w3.org/2000/10/swap/log#> .
5
+ @prefix : <https://eyereasoner.github.io/see/examples/french-cities#> .
6
+ @prefix see: <https://example.org/see#> .
7
+ @prefix in: <https://example.org/see/input#> .
8
+
9
+ # Formal SEE input evidence in RDF 1.2 TriG.
10
+ # The generated runner reads this TriG evidence directly.
11
+
12
+ :paris :oneway :orleans .
13
+ :paris :oneway :chartres .
14
+ :paris :oneway :amiens .
15
+ :orleans :oneway :blois .
16
+ :orleans :oneway :bourges .
17
+ :blois :oneway :tours .
18
+ :chartres :oneway :lemans .
19
+ :lemans :oneway :angers .
20
+ :lemans :oneway :tours .
21
+ :angers :oneway :nantes .
22
+ :oneway rdfs:subPropertyOf :path .
23
+ :path rdf:type owl:TransitiveProperty .
24
+
25
+ in:metadata {
26
+ in:run a see:InputDataset .
27
+ in:run see:name "french_cities" .
28
+ in:run see:title "French cities — graph path traversal." .
29
+ in:run see:sourceFile "examples/n3/french_cities.n3" .
30
+ in:run see:sourceSHA256 "7e3672e6ab314845d44cdd16e7a91484c205de77ff8c9a06971f857612692be4" .
31
+ in:run see:description "Based on the EYE reasoning/graph example: graph.axiom.n3 plus graph.filter.n3.\nIt asks whether Paris can reach Nantes by following one-way links, using a\nsubproperty rule and a transitive-property rule." .
32
+ in:run see:compiler "see.js N3-to-JS compiler" .
33
+ in:run see:inputFacts 12 .
34
+ in:run see:compiledRules 2 .
35
+ in:run see:compiledBackwardRules 0 .
36
+ in:run see:compiledFuses 0 .
37
+ in:run see:compiledQueries 1 .
38
+ }
@@ -0,0 +1,42 @@
1
+ @prefix : <https://eyereasoner.github.io/see/examples/fundamental-theorem-arithmetic#> .
2
+ @prefix math: <http://www.w3.org/2000/10/swap/math#> .
3
+ @prefix list: <http://www.w3.org/2000/10/swap/list#> .
4
+ @prefix log: <http://www.w3.org/2000/10/swap/log#> .
5
+ @prefix string: <http://www.w3.org/2000/10/swap/string#> .
6
+ @prefix see: <https://example.org/see#> .
7
+ @prefix in: <https://example.org/see/input#> .
8
+
9
+ # Formal SEE input evidence in RDF 1.2 TriG.
10
+ # The generated runner reads this TriG evidence directly.
11
+
12
+ :Case :n 202692987 .
13
+ :Case :factors (3 3 7 829 3881) .
14
+ :Case :flatFactorString "3 * 3 * 7 * 829 * 3881" .
15
+ :Case :primePowerString "3^2 * 7 * 829 * 3881" .
16
+ :Case :largestFlatFactorString "3881 * 829 * 7 * 3 * 3" .
17
+ :Case :sortedComparison "3 * 3 * 7 * 829 * 3881" .
18
+ :Case :smallestTrace " 202692987 = 3 * 67564329\n 67564329 = 3 * 22521443\n 22521443 = 7 * 3217349\n 3217349 = 829 * 3881\n 3881 is prime" .
19
+ :SampleSummary :sampleCount 6 .
20
+ :SampleSummary :largestSample 600851475143 .
21
+ :SampleSummary :totalFactorsWithMultiplicity 31 .
22
+ :SampleSummary :distinctPrimesSeen 17 .
23
+ :SampleSummary :sampleBlock " 360360 = 2^3 * 3^2 * 5 * 7 * 11 * 13\n 202692987 = 3^2 * 7 * 829 * 3881\n 4294967295 = 3 * 5 * 17 * 257 * 65537\n 600851475143 = 71 * 839 * 1471 * 6857\n 9876543210 = 2 * 3^2 * 5 * 17^2 * 379721\n 9999999967 = 9999999967" .
24
+ 3 :primeWitness true .
25
+ 7 :primeWitness true .
26
+ 829 :primeWitness true .
27
+ 3881 :primeWitness true .
28
+
29
+ in:metadata {
30
+ in:run a see:InputDataset .
31
+ in:run see:name "fundamental_theorem_arithmetic" .
32
+ in:run see:title "Fundamental Theorem Arithmetic" .
33
+ in:run see:sourceFile "examples/n3/fundamental_theorem_arithmetic.n3" .
34
+ in:run see:sourceSHA256 "d88eca366c590d49544e49453cbe69ba38938f8bc23919278bfaadd0bed0cd2d" .
35
+ in:run see:description "N3-compiled version of the hand-written SEE example. The primary case mirrors\nEyeling's fundamental-theorem-arithmetic.n3: n = 202692987 is validated against\nthe factorization 3^2 * 7 * 829 * 3881. Extra sample summaries are kept as\ndata so the SEE report still documents the larger regression set." .
36
+ in:run see:compiler "see.js N3-to-JS compiler" .
37
+ in:run see:inputFacts 16 .
38
+ in:run see:compiledRules 4 .
39
+ in:run see:compiledBackwardRules 0 .
40
+ in:run see:compiledFuses 3 .
41
+ in:run see:compiledQueries 1 .
42
+ }
@@ -0,0 +1,39 @@
1
+ @prefix : <https://eyereasoner.github.io/see/examples/genetic-knapsack-selection#> .
2
+ @prefix math: <http://www.w3.org/2000/10/swap/math#> .
3
+ @prefix log: <http://www.w3.org/2000/10/swap/log#> .
4
+ @prefix string: <http://www.w3.org/2000/10/swap/string#> .
5
+ @prefix see: <https://example.org/see#> .
6
+ @prefix in: <https://example.org/see/input#> .
7
+
8
+ # Formal SEE input evidence in RDF 1.2 TriG.
9
+ # The generated runner reads this TriG evidence directly.
10
+
11
+ :Run :capacity 50 .
12
+ :Run :startGenome "000000000000" .
13
+ :Run :maxGenerations 64 .
14
+ :FinalLocal :genome "101000000101" .
15
+ :FinalLocal :selectedItems "item01, item03, item10, item12" .
16
+ :FinalLocal :weight 50 .
17
+ :FinalLocal :value 101 .
18
+ :FinalLocal :fitness 999899 .
19
+ :FinalLocal :generationsEvaluated 5 .
20
+ :ExhaustiveOptimum :genome "001000011111" .
21
+ :ExhaustiveOptimum :value 104 .
22
+ :NeighborSummary :oneBitNeighborsEvaluated 12 .
23
+ :NeighborSummary :bestNeighborValue 101 .
24
+ :NeighborSummary :capacityRespected true .
25
+
26
+ in:metadata {
27
+ in:run a see:InputDataset .
28
+ in:run see:name "genetic_knapsack_selection" .
29
+ in:run see:title "Genetic Knapsack Selection" .
30
+ in:run see:sourceFile "examples/n3/genetic_knapsack_selection.n3" .
31
+ in:run see:sourceSHA256 "c8fb351156e7656f2e3600f0d1eaf8a624742a91f688425564822cea78530855" .
32
+ in:run see:description "N3-compiled version of the deterministic one-bit mutation knapsack example.\nThe original item list JSON is preserved as the data-input sidecar." .
33
+ in:run see:compiler "see.js N3-to-JS compiler" .
34
+ in:run see:inputFacts 14 .
35
+ in:run see:compiledRules 2 .
36
+ in:run see:compiledBackwardRules 0 .
37
+ in:run see:compiledFuses 0 .
38
+ in:run see:compiledQueries 1 .
39
+ }
@@ -0,0 +1,53 @@
1
+ @prefix : <https://eyereasoner.github.io/see/examples/goldbach-1000#> .
2
+ @prefix math: <http://www.w3.org/2000/10/swap/math#> .
3
+ @prefix log: <http://www.w3.org/2000/10/swap/log#> .
4
+ @prefix string: <http://www.w3.org/2000/10/swap/string#> .
5
+ @prefix see: <https://example.org/see#> .
6
+ @prefix in: <https://example.org/see/input#> .
7
+
8
+ # Formal SEE input evidence in RDF 1.2 TriG.
9
+ # The generated runner reads this TriG evidence directly.
10
+
11
+ :BoundedRun :minEven 4 .
12
+ :BoundedRun :maxEven 1000 .
13
+ :BoundedRun :evenCount 499 .
14
+ :BoundedRun :counterexamples 0 .
15
+ :BoundedRun :sampleWitnesses "4=2+2; 28=5+23; 100=3+97; 998=7+991; 1000=3+997" .
16
+ :w4 :even 4 .
17
+ :w4 :p 2 .
18
+ :w4 :q 2 .
19
+ :w28 :even 28 .
20
+ :w28 :p 5 .
21
+ :w28 :q 23 .
22
+ :w100 :even 100 .
23
+ :w100 :p 3 .
24
+ :w100 :q 97 .
25
+ :w998 :even 998 .
26
+ :w998 :p 7 .
27
+ :w998 :q 991 .
28
+ :w1000 :even 1000 .
29
+ :w1000 :p 3 .
30
+ :w1000 :q 997 .
31
+ 2 :prime true .
32
+ 3 :prime true .
33
+ 5 :prime true .
34
+ 7 :prime true .
35
+ 23 :prime true .
36
+ 97 :prime true .
37
+ 991 :prime true .
38
+ 997 :prime true .
39
+
40
+ in:metadata {
41
+ in:run a see:InputDataset .
42
+ in:run see:name "goldbach_1000" .
43
+ in:run see:title "Goldbach 1000" .
44
+ in:run see:sourceFile "examples/n3/goldbach_1000.n3" .
45
+ in:run see:sourceSHA256 "f40ec2cb172140ebdb5632a0abf0f0498be1183564755aaf76748545a2b49158" .
46
+ in:run see:description "N3-compiled version of the bounded Goldbach SEE example. It keeps the bounded\nresult as committed data and uses rules to verify the representative witness\nequations that are shown in the report." .
47
+ in:run see:compiler "see.js N3-to-JS compiler" .
48
+ in:run see:inputFacts 28 .
49
+ in:run see:compiledRules 3 .
50
+ in:run see:compiledBackwardRules 0 .
51
+ in:run see:compiledFuses 1 .
52
+ in:run see:compiledQueries 1 .
53
+ }
@@ -0,0 +1,24 @@
1
+ @prefix : <https://eyereasoner.github.io/see/examples/good-cobbler#> .
2
+ @prefix log: <http://www.w3.org/2000/10/swap/log#> .
3
+ @prefix see: <https://example.org/see#> .
4
+ @prefix in: <https://example.org/see/input#> .
5
+
6
+ # Formal SEE input evidence in RDF 1.2 TriG.
7
+ # The generated runner reads this TriG evidence directly.
8
+
9
+ :joe :is (:good :Cobbler) .
10
+
11
+ in:metadata {
12
+ in:run a see:InputDataset .
13
+ in:run see:name "good_cobbler" .
14
+ in:run see:title "Good cobbler" .
15
+ in:run see:sourceFile "examples/n3/good_cobbler.n3" .
16
+ in:run see:sourceSHA256 "7aeddb38a902b2684ba8824e3ec909e24716520433e9fbd31f6a0238cc1bd686" .
17
+ in:run see:description "Example from https://shs.hal.science/halshs-04148373/document\nUsing term logic http://intrologic.stanford.edu/chapters/chapter_11.html" .
18
+ in:run see:compiler "see.js N3-to-JS compiler" .
19
+ in:run see:inputFacts 1 .
20
+ in:run see:compiledRules 1 .
21
+ in:run see:compiledBackwardRules 0 .
22
+ in:run see:compiledFuses 0 .
23
+ in:run see:compiledQueries 0 .
24
+ }
@@ -0,0 +1,35 @@
1
+ @prefix log: <http://www.w3.org/2000/10/swap/log#> .
2
+ @prefix math: <http://www.w3.org/2000/10/swap/math#> .
3
+ @prefix list: <http://www.w3.org/2000/10/swap/list#> .
4
+ @prefix string: <http://www.w3.org/2000/10/swap/string#> .
5
+ @prefix gps: <https://eyereasoner.github.io/see/examples/gps#> .
6
+ @prefix : <https://eyereasoner.github.io/see/examples/gps#> .
7
+ @prefix see: <https://example.org/see#> .
8
+ @prefix in: <https://example.org/see/input#> .
9
+
10
+ # Formal SEE input evidence in RDF 1.2 TriG.
11
+ # The generated runner reads this TriG evidence directly.
12
+
13
+ :i1 :location :Gent .
14
+ :question :text "Which route should we take from Gent to Oostende?" .
15
+ :routeDirect :label "Gent -> Brugge -> Oostende" .
16
+ :routeViaKortrijk :label "Gent -> Kortrijk -> Brugge -> Oostende" .
17
+ :mapBE gps:segment (:Gent :Brugge :drive_gent_brugge 1500 0.006 0.96 0.99) .
18
+ :mapBE gps:segment (:Gent :Kortrijk :drive_gent_kortrijk 1600 0.007 0.96 0.99) .
19
+ :mapBE gps:segment (:Kortrijk :Brugge :drive_kortrijk_brugge 1600 0.007 0.96 0.99) .
20
+ :mapBE gps:segment (:Brugge :Oostende :drive_brugge_oostende 900 0.004 0.98 1) .
21
+
22
+ in:metadata {
23
+ in:run a see:InputDataset .
24
+ in:run see:name "gps" .
25
+ in:run see:title "GPS route planning" .
26
+ in:run see:sourceFile "examples/n3/gps.n3" .
27
+ in:run see:sourceSHA256 "3ca7a57d4a2d06215e852e74b51d71f6b0aa36230eb172fa3e17465052c06404" .
28
+ in:run see:description "Goal-driven path planning over a tiny western-Belgium map. The N3 source is\nadapted from Eyeling's GPS example and compiles to a standalone SEE example." .
29
+ in:run see:compiler "see.js N3-to-JS compiler" .
30
+ in:run see:inputFacts 8 .
31
+ in:run see:compiledRules 5 .
32
+ in:run see:compiledBackwardRules 2 .
33
+ in:run see:compiledFuses 4 .
34
+ in:run see:compiledQueries 0 .
35
+ }
@@ -0,0 +1,33 @@
1
+ @prefix : <https://eyereasoner.github.io/see/examples/gray-code-counter#> .
2
+ @prefix list: <http://www.w3.org/2000/10/swap/list#> .
3
+ @prefix log: <http://www.w3.org/2000/10/swap/log#> .
4
+ @prefix math: <http://www.w3.org/2000/10/swap/math#> .
5
+ @prefix string: <http://www.w3.org/2000/10/swap/string#> .
6
+ @prefix see: <https://example.org/see#> .
7
+ @prefix in: <https://example.org/see/input#> .
8
+
9
+ # Formal SEE input evidence in RDF 1.2 TriG.
10
+ # The generated runner reads this TriG evidence directly.
11
+
12
+ :Counter :bits 4 .
13
+ :Counter :steps 16 .
14
+ :Counter :sequence (0 1 3 2 6 7 5 4 12 13 15 14 10 11 9 8) .
15
+ :Counter :uniqueStateCount 16 .
16
+ :Counter :sequencePrefix "0000, 0001, 0011, 0010, 0110, 0111, 0101, 0100" .
17
+ :Counter :wrapTransition "1000 -> 0000" .
18
+ :Counter :maxHammingDistance 1 .
19
+
20
+ in:metadata {
21
+ in:run a see:InputDataset .
22
+ in:run see:name "gray_code_counter" .
23
+ in:run see:title "Gray Code Counter" .
24
+ in:run see:sourceFile "examples/n3/gray_code_counter.n3" .
25
+ in:run see:sourceSHA256 "61f77dc563c8a38d612cf4fba812e6066f00449e27b9bc620e866a52e08ea4d2" .
26
+ in:run see:description "N3-compiled version of the 4-bit Gray counter SEE example. The example keeps\nthe known reflected Gray-code sequence as data, derives its visited-state count\nwith a list builtin, and derives the published invariants before rendering the\nSEE report." .
27
+ in:run see:compiler "see.js N3-to-JS compiler" .
28
+ in:run see:inputFacts 7 .
29
+ in:run see:compiledRules 3 .
30
+ in:run see:compiledBackwardRules 0 .
31
+ in:run see:compiledFuses 0 .
32
+ in:run see:compiledQueries 0 .
33
+ }
@@ -0,0 +1,29 @@
1
+ @prefix : <https://eyereasoner.github.io/eye/reasoning#> .
2
+ @prefix log: <http://www.w3.org/2000/10/swap/log#> .
3
+ @prefix see: <https://example.org/see#> .
4
+ @prefix in: <https://example.org/see/input#> .
5
+
6
+ # Formal SEE input evidence in RDF 1.2 TriG.
7
+ # The generated runner reads this TriG evidence directly.
8
+
9
+ :a :inP true .
10
+ :b :inP true .
11
+ :g1 :inP true .
12
+ :g2 :inP true .
13
+ :g1 :glbOf (:a :b) .
14
+ :g2 :glbOf (:a :b) .
15
+
16
+ in:metadata {
17
+ in:run a see:InputDataset .
18
+ in:run see:name "greatest_lower_bound_uniqueness" .
19
+ in:run see:title "In a partial order, a greatest lower bound is unique." .
20
+ in:run see:sourceFile "examples/n3/greatest_lower_bound_uniqueness.n3" .
21
+ in:run see:sourceSHA256 "3a199585b9906a895deba6508458c88551558aec89fdc1b490ed9493bbb63433" .
22
+ in:run see:description "" .
23
+ in:run see:compiler "see.js N3-to-JS compiler" .
24
+ in:run see:inputFacts 6 .
25
+ in:run see:compiledRules 7 .
26
+ in:run see:compiledBackwardRules 0 .
27
+ in:run see:compiledFuses 0 .
28
+ in:run see:compiledQueries 1 .
29
+ }
@@ -0,0 +1,29 @@
1
+ @prefix : <https://eyereasoner.github.io/eye/reasoning#> .
2
+ @prefix log: <http://www.w3.org/2000/10/swap/log#> .
3
+ @prefix see: <https://example.org/see#> .
4
+ @prefix in: <https://example.org/see/input#> .
5
+
6
+ # Formal SEE input evidence in RDF 1.2 TriG.
7
+ # The generated runner reads this TriG evidence directly.
8
+
9
+ :x :inG true .
10
+ :i :inG true .
11
+ :j :inG true .
12
+ :e :inG true .
13
+ :i :inverseOf :x .
14
+ :j :inverseOf :x .
15
+
16
+ in:metadata {
17
+ in:run a see:InputDataset .
18
+ in:run see:name "group_inverse_uniqueness" .
19
+ in:run see:title "In a group, the inverse of an element is unique." .
20
+ in:run see:sourceFile "examples/n3/group_inverse_uniqueness.n3" .
21
+ in:run see:sourceSHA256 "956bff60a7e087600d31b0fce180031de1e03f7a995b3f2949e531653b7b5dc3" .
22
+ in:run see:description "" .
23
+ in:run see:compiler "see.js N3-to-JS compiler" .
24
+ in:run see:inputFacts 6 .
25
+ in:run see:compiledRules 6 .
26
+ in:run see:compiledBackwardRules 0 .
27
+ in:run see:compiledFuses 0 .
28
+ in:run see:compiledQueries 1 .
29
+ }
@@ -0,0 +1,32 @@
1
+ @prefix : <https://eyereasoner.github.io/see/examples/hadamard-approx#> .
2
+ @prefix log: <http://www.w3.org/2000/10/swap/log#> .
3
+ @prefix math: <http://www.w3.org/2000/10/swap/math#> .
4
+ @prefix see: <https://example.org/see#> .
5
+ @prefix in: <https://example.org/see/input#> .
6
+
7
+ # Formal SEE input evidence in RDF 1.2 TriG.
8
+ # The generated runner reads this TriG evidence directly.
9
+
10
+ :sqrt2Proc rdf:type :DyadicBisection .
11
+ :sqrt2Proc :maxN 20 .
12
+ :HGate rdf:type :SingleQubitGate .
13
+ :HGate :name "H" .
14
+ :HGate :usesScale :invSqrt2 .
15
+ :invSqrt2 rdf:type :PositiveRealApprox .
16
+ :invSqrt2 :definedAs "1/sqrt2" .
17
+ :sqrt2Proc :state (0 1 2) .
18
+
19
+ in:metadata {
20
+ in:run a see:InputDataset .
21
+ in:run see:name "hadamard_approx" .
22
+ in:run see:title "Hadamard gate approximation" .
23
+ in:run see:sourceFile "examples/n3/hadamard_approx.n3" .
24
+ in:run see:sourceSHA256 "e8ecabf81463a98ebcb7a1970dfe31792d96011b5e060ad2ed6f5f02ee46a6d2" .
25
+ in:run see:description "" .
26
+ in:run see:compiler "see.js N3-to-JS compiler" .
27
+ in:run see:inputFacts 8 .
28
+ in:run see:compiledRules 10 .
29
+ in:run see:compiledBackwardRules 0 .
30
+ in:run see:compiledFuses 0 .
31
+ in:run see:compiledQueries 3 .
32
+ }
@@ -0,0 +1,26 @@
1
+ @prefix math: <http://www.w3.org/2000/10/swap/math#> .
2
+ @prefix list: <http://www.w3.org/2000/10/swap/list#> .
3
+ @prefix : <https://eyereasoner.github.io/eye/reasoning#> .
4
+ @prefix log: <http://www.w3.org/2000/10/swap/log#> .
5
+ @prefix see: <https://example.org/see#> .
6
+ @prefix in: <https://example.org/see/input#> .
7
+
8
+ # Formal SEE input evidence in RDF 1.2 TriG.
9
+ # The generated runner reads this TriG evidence directly.
10
+
11
+ # No source facts were present in the N3 program.
12
+
13
+ in:metadata {
14
+ in:run a see:InputDataset .
15
+ in:run see:name "hanoi" .
16
+ in:run see:title "Towers of Hanoi" .
17
+ in:run see:sourceFile "examples/n3/hanoi.n3" .
18
+ in:run see:sourceSHA256 "f2ef15363d9c2430bd3b68d500d3d256d241b8fcf4fd368b287a91e15289df1d" .
19
+ in:run see:description "" .
20
+ in:run see:compiler "see.js N3-to-JS compiler" .
21
+ in:run see:inputFacts 0 .
22
+ in:run see:compiledRules 1 .
23
+ in:run see:compiledBackwardRules 2 .
24
+ in:run see:compiledFuses 0 .
25
+ in:run see:compiledQueries 0 .
26
+ }
@@ -0,0 +1,107 @@
1
+ @prefix : <https://example.org/odrl-dpv-risk-ranked#> .
2
+ @prefix odrl: <http://www.w3.org/ns/odrl/2/> .
3
+ @prefix dpv: <https://w3id.org/dpv#> .
4
+ @prefix risk: <https://w3id.org/dpv/risk#> .
5
+ @prefix dct: <http://purl.org/dc/terms/> .
6
+ @prefix log: <http://www.w3.org/2000/10/swap/log#> .
7
+ @prefix math: <http://www.w3.org/2000/10/swap/math#> .
8
+ @prefix tosl: <https://example.org/tosl-profile#> .
9
+ @prefix see: <https://example.org/see#> .
10
+ @prefix in: <https://example.org/see/input#> .
11
+
12
+ # Formal SEE input evidence in RDF 1.2 TriG.
13
+ # The generated runner reads this TriG evidence directly.
14
+
15
+ :ConsumerExample rdf:type :ConsumerProfile .
16
+ :ConsumerExample rdf:type odrl:Party .
17
+ :ConsumerExample dct:title "Example consumer profile" .
18
+ :ConsumerExample :hasNeed :Need_DataCannotBeRemoved .
19
+ :ConsumerExample :hasNeed :Need_ChangeOnlyWithPriorNotice .
20
+ :ConsumerExample :hasNeed :Need_NoSharingWithoutConsent .
21
+ :ConsumerExample :hasNeed :Need_DataPortability .
22
+ :Need_DataCannotBeRemoved rdf:type :Need .
23
+ :Need_DataCannotBeRemoved :importance 20 .
24
+ :Need_DataCannotBeRemoved dct:description "Provider must not remove the consumer account/data." .
25
+ :Need_ChangeOnlyWithPriorNotice rdf:type :Need .
26
+ :Need_ChangeOnlyWithPriorNotice :importance 15 .
27
+ :Need_ChangeOnlyWithPriorNotice :minNoticeDays 14 .
28
+ :Need_ChangeOnlyWithPriorNotice dct:description "Agreement may change only with prior notice (>= 14 days)." .
29
+ :Need_NoSharingWithoutConsent rdf:type :Need .
30
+ :Need_NoSharingWithoutConsent :importance 12 .
31
+ :Need_NoSharingWithoutConsent dct:description "No data sharing without explicit consent." .
32
+ :Need_DataPortability rdf:type :Need .
33
+ :Need_DataPortability :importance 10 .
34
+ :Need_DataPortability dct:description "Consumer must be able to export their data." .
35
+ :Agreement1 rdf:type :Agreement .
36
+ :Agreement1 dct:title "Example Agreement" .
37
+ :Agreement1 :policyGraph in:formula1 .
38
+ :ClauseC1 rdf:type :Clause .
39
+ :ClauseC1 :clauseId "C1" .
40
+ :ClauseC1 :text "Provider may remove the user account (and associated data) at its discretion." .
41
+ :ClauseC2 rdf:type :Clause .
42
+ :ClauseC2 :clauseId "C2" .
43
+ :ClauseC2 :text "Provider may change terms by informing users at least 3 days in advance." .
44
+ :ClauseC3 rdf:type :Clause .
45
+ :ClauseC3 :clauseId "C3" .
46
+ :ClauseC3 :text "Provider may share user data with partners for business purposes." .
47
+ :ClauseC4 rdf:type :Clause .
48
+ :ClauseC4 :clauseId "C4" .
49
+ :ClauseC4 :text "Users are not permitted to export their data." .
50
+ :ProcessContext1 rdf:type dpv:Process .
51
+ :ProcessContext1 dct:source :Agreement1 .
52
+ :ProcessContext1 dct:title "Service operation under Agreement1" .
53
+
54
+ in:formula1 {
55
+ :Policy1 rdf:type odrl:Policy .
56
+ :Policy1 odrl:permission :PermDeleteAccount .
57
+ :Policy1 odrl:permission :PermChangeTerms .
58
+ :Policy1 odrl:permission :PermShareData .
59
+ :Policy1 odrl:prohibition :ProhibitExportData .
60
+ :PermDeleteAccount rdf:type odrl:Permission .
61
+ :PermDeleteAccount odrl:assigner :Provider .
62
+ :PermDeleteAccount odrl:assignee :ConsumerExample .
63
+ :PermDeleteAccount odrl:action tosl:removeAccount .
64
+ :PermDeleteAccount odrl:target :UserAccount .
65
+ :PermDeleteAccount :clause :ClauseC1 .
66
+ :PermChangeTerms rdf:type odrl:Permission .
67
+ :PermChangeTerms odrl:assigner :Provider .
68
+ :PermChangeTerms odrl:assignee :ConsumerExample .
69
+ :PermChangeTerms odrl:action tosl:changeTerms .
70
+ :PermChangeTerms odrl:target :AgreementText .
71
+ _:blank1 rdf:type odrl:Duty .
72
+ _:blank1 odrl:action odrl:inform .
73
+ _:blank2 rdf:type odrl:Constraint .
74
+ _:blank2 odrl:leftOperand tosl:noticeDays .
75
+ _:blank2 odrl:operator odrl:gteq .
76
+ _:blank2 odrl:rightOperand 3 .
77
+ _:blank1 odrl:constraint _:blank2 .
78
+ :PermChangeTerms odrl:duty _:blank1 .
79
+ :PermChangeTerms :clause :ClauseC2 .
80
+ :PermShareData rdf:type odrl:Permission .
81
+ :PermShareData odrl:assigner :Provider .
82
+ :PermShareData odrl:assignee :ConsumerExample .
83
+ :PermShareData odrl:action tosl:shareData .
84
+ :PermShareData odrl:target :UserData .
85
+ :PermShareData :clause :ClauseC3 .
86
+ :ProhibitExportData rdf:type odrl:Prohibition .
87
+ :ProhibitExportData odrl:assigner :Provider .
88
+ :ProhibitExportData odrl:assignee :ConsumerExample .
89
+ :ProhibitExportData odrl:action tosl:exportData .
90
+ :ProhibitExportData odrl:target :UserData .
91
+ :ProhibitExportData :clause :ClauseC4 .
92
+ }
93
+
94
+ in:metadata {
95
+ in:run a see:InputDataset .
96
+ in:run see:name "odrl_dpv_risk_ranked" .
97
+ in:run see:title "ODRL + DPV risk assessment with ranked, explainable output." .
98
+ in:run see:sourceFile "examples/n3/odrl_dpv_risk_ranked.n3" .
99
+ in:run see:sourceSHA256 "e3360556d6e82bda9f502d362cc110e2cd681608ae1388cf8071660f6fbe6200" .
100
+ in:run see:description "What this file does\n- Models an agreement as an ODRL policy (odrl:Policy) containing permissions,\nprohibitions, duties, and constraints. ODRL is expressive enough to encode the\nnormative “may/must/must-not” structure of TOS clauses as RDF.\n- Links each ODRL rule to a clause resource (:Clause) to keep human-readable text\nwhile preserving machine-readable structure for reasoning.\n- Uses N3 rules with log:includes / log:notIncludes to detect missing safeguards\n(e.g., missing notice constraints, missing inform duties, missing consent constraints).\n- Generates DPV risks (dpv:Risk) and classifies them using DPV-RISK concepts:\nrisk:hasRiskSource, dpv:hasConsequence, dpv:hasImpact, dpv:hasSeverity, dpv:hasRiskLevel.\n- Produces mitigations as dpv:RiskMitigationMeasure resources and attaches them\nto risks with dpv:isMitigatedByMeasure.\n- Computes a numeric score for each risk and prints a ranked, explainable report.\nRanking / output\n- Output strings are emitted as log:outputString triples.\n- When running with Eyeling “strings” mode (-r), strings are printed in deterministic\norder based on their subject key. The program encodes ranking via an “inverse score”\nkey (e.g., 1000 - score) so higher-risk items appear first.\nReferences\n- N3 spec: https://w3c.github.io/N3/spec/\n- Eyeling builtins: https://eyereasoner.github.io/eyeling/HANDBOOK#ch11\n- ODRL vocab: https://www.w3.org/TR/odrl-vocab/\n- DPV risk module: https://dev.dpvcg.org/dpv/modules/risk\n- DPV-RISK: https://w3id.org/dpv/risk" .
101
+ in:run see:compiler "see.js N3-to-JS compiler" .
102
+ in:run see:inputFacts 38 .
103
+ in:run see:compiledRules 9 .
104
+ in:run see:compiledBackwardRules 0 .
105
+ in:run see:compiledFuses 0 .
106
+ in:run see:compiledQueries 3 .
107
+ }