@stevenvo780/st-lang 4.10.0 → 4.12.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 (329) hide show
  1. package/dist/proof-systems/distributed-exchange/index.d.ts +101 -0
  2. package/dist/proof-systems/distributed-exchange/index.d.ts.map +1 -0
  3. package/dist/proof-systems/distributed-exchange/index.js +408 -0
  4. package/dist/proof-systems/distributed-exchange/index.js.map +1 -0
  5. package/dist/proof-systems/fol-prover-advanced/index.d.ts +7 -0
  6. package/dist/proof-systems/fol-prover-advanced/index.d.ts.map +1 -0
  7. package/dist/proof-systems/fol-prover-advanced/index.js +34 -0
  8. package/dist/proof-systems/fol-prover-advanced/index.js.map +1 -0
  9. package/dist/proof-systems/fol-prover-advanced/ordering.d.ts +34 -0
  10. package/dist/proof-systems/fol-prover-advanced/ordering.d.ts.map +1 -0
  11. package/dist/proof-systems/fol-prover-advanced/ordering.js +197 -0
  12. package/dist/proof-systems/fol-prover-advanced/ordering.js.map +1 -0
  13. package/dist/proof-systems/fol-prover-advanced/prover.d.ts +22 -0
  14. package/dist/proof-systems/fol-prover-advanced/prover.d.ts.map +1 -0
  15. package/dist/proof-systems/fol-prover-advanced/prover.js +219 -0
  16. package/dist/proof-systems/fol-prover-advanced/prover.js.map +1 -0
  17. package/dist/proof-systems/fol-prover-advanced/resolve.d.ts +43 -0
  18. package/dist/proof-systems/fol-prover-advanced/resolve.d.ts.map +1 -0
  19. package/dist/proof-systems/fol-prover-advanced/resolve.js +297 -0
  20. package/dist/proof-systems/fol-prover-advanced/resolve.js.map +1 -0
  21. package/dist/proof-systems/fol-prover-advanced/subsumption.d.ts +28 -0
  22. package/dist/proof-systems/fol-prover-advanced/subsumption.d.ts.map +1 -0
  23. package/dist/proof-systems/fol-prover-advanced/subsumption.js +172 -0
  24. package/dist/proof-systems/fol-prover-advanced/subsumption.js.map +1 -0
  25. package/dist/proof-systems/fol-prover-advanced/types.d.ts +68 -0
  26. package/dist/proof-systems/fol-prover-advanced/types.d.ts.map +1 -0
  27. package/dist/proof-systems/fol-prover-advanced/types.js +12 -0
  28. package/dist/proof-systems/fol-prover-advanced/types.js.map +1 -0
  29. package/dist/proof-systems/fol-prover-advanced/unify.d.ts +15 -0
  30. package/dist/proof-systems/fol-prover-advanced/unify.d.ts.map +1 -0
  31. package/dist/proof-systems/fol-prover-advanced/unify.js +144 -0
  32. package/dist/proof-systems/fol-prover-advanced/unify.js.map +1 -0
  33. package/dist/reasoning/combinatorics/basic-counts.d.ts +6 -0
  34. package/dist/reasoning/combinatorics/basic-counts.d.ts.map +1 -0
  35. package/dist/reasoning/combinatorics/basic-counts.js +82 -0
  36. package/dist/reasoning/combinatorics/basic-counts.js.map +1 -0
  37. package/dist/reasoning/combinatorics/bigint-helpers.d.ts +5 -0
  38. package/dist/reasoning/combinatorics/bigint-helpers.d.ts.map +1 -0
  39. package/dist/reasoning/combinatorics/bigint-helpers.js +8 -0
  40. package/dist/reasoning/combinatorics/bigint-helpers.js.map +1 -0
  41. package/dist/reasoning/combinatorics/burnside.d.ts +15 -0
  42. package/dist/reasoning/combinatorics/burnside.d.ts.map +1 -0
  43. package/dist/reasoning/combinatorics/burnside.js +91 -0
  44. package/dist/reasoning/combinatorics/burnside.js.map +1 -0
  45. package/dist/reasoning/combinatorics/generating-functions.d.ts +12 -0
  46. package/dist/reasoning/combinatorics/generating-functions.d.ts.map +1 -0
  47. package/dist/reasoning/combinatorics/generating-functions.js +67 -0
  48. package/dist/reasoning/combinatorics/generating-functions.js.map +1 -0
  49. package/dist/reasoning/combinatorics/generators.d.ts +5 -0
  50. package/dist/reasoning/combinatorics/generators.d.ts.map +1 -0
  51. package/dist/reasoning/combinatorics/generators.js +111 -0
  52. package/dist/reasoning/combinatorics/generators.js.map +1 -0
  53. package/dist/reasoning/combinatorics/inclusion-exclusion.d.ts +8 -0
  54. package/dist/reasoning/combinatorics/inclusion-exclusion.d.ts.map +1 -0
  55. package/dist/reasoning/combinatorics/inclusion-exclusion.js +45 -0
  56. package/dist/reasoning/combinatorics/inclusion-exclusion.js.map +1 -0
  57. package/dist/reasoning/combinatorics/index.d.ts +10 -0
  58. package/dist/reasoning/combinatorics/index.d.ts.map +1 -0
  59. package/dist/reasoning/combinatorics/index.js +44 -0
  60. package/dist/reasoning/combinatorics/index.js.map +1 -0
  61. package/dist/reasoning/combinatorics/partitions.d.ts +4 -0
  62. package/dist/reasoning/combinatorics/partitions.d.ts.map +1 -0
  63. package/dist/reasoning/combinatorics/partitions.js +90 -0
  64. package/dist/reasoning/combinatorics/partitions.js.map +1 -0
  65. package/dist/reasoning/combinatorics/permutations.d.ts +6 -0
  66. package/dist/reasoning/combinatorics/permutations.d.ts.map +1 -0
  67. package/dist/reasoning/combinatorics/permutations.js +124 -0
  68. package/dist/reasoning/combinatorics/permutations.js.map +1 -0
  69. package/dist/reasoning/combinatorics/set-partitions.d.ts +3 -0
  70. package/dist/reasoning/combinatorics/set-partitions.d.ts.map +1 -0
  71. package/dist/reasoning/combinatorics/set-partitions.js +46 -0
  72. package/dist/reasoning/combinatorics/set-partitions.js.map +1 -0
  73. package/dist/reasoning/combinatorics/special-numbers.d.ts +7 -0
  74. package/dist/reasoning/combinatorics/special-numbers.d.ts.map +1 -0
  75. package/dist/reasoning/combinatorics/special-numbers.js +128 -0
  76. package/dist/reasoning/combinatorics/special-numbers.js.map +1 -0
  77. package/dist/reasoning/constructive-analysis/cauchy.d.ts +51 -0
  78. package/dist/reasoning/constructive-analysis/cauchy.d.ts.map +1 -0
  79. package/dist/reasoning/constructive-analysis/cauchy.js +77 -0
  80. package/dist/reasoning/constructive-analysis/cauchy.js.map +1 -0
  81. package/dist/reasoning/constructive-analysis/compact.d.ts +35 -0
  82. package/dist/reasoning/constructive-analysis/compact.d.ts.map +1 -0
  83. package/dist/reasoning/constructive-analysis/compact.js +61 -0
  84. package/dist/reasoning/constructive-analysis/compact.js.map +1 -0
  85. package/dist/reasoning/constructive-analysis/continuity.d.ts +62 -0
  86. package/dist/reasoning/constructive-analysis/continuity.d.ts.map +1 -0
  87. package/dist/reasoning/constructive-analysis/continuity.js +112 -0
  88. package/dist/reasoning/constructive-analysis/continuity.js.map +1 -0
  89. package/dist/reasoning/constructive-analysis/index.d.ts +24 -0
  90. package/dist/reasoning/constructive-analysis/index.d.ts.map +1 -0
  91. package/dist/reasoning/constructive-analysis/index.js +36 -0
  92. package/dist/reasoning/constructive-analysis/index.js.map +1 -0
  93. package/dist/reasoning/constructive-analysis/integral.d.ts +31 -0
  94. package/dist/reasoning/constructive-analysis/integral.d.ts.map +1 -0
  95. package/dist/reasoning/constructive-analysis/integral.js +59 -0
  96. package/dist/reasoning/constructive-analysis/integral.js.map +1 -0
  97. package/dist/reasoning/constructive-analysis/ivt.d.ts +41 -0
  98. package/dist/reasoning/constructive-analysis/ivt.d.ts.map +1 -0
  99. package/dist/reasoning/constructive-analysis/ivt.js +115 -0
  100. package/dist/reasoning/constructive-analysis/ivt.js.map +1 -0
  101. package/dist/reasoning/constructive-reals/index.d.ts +23 -0
  102. package/dist/reasoning/constructive-reals/index.d.ts.map +1 -1
  103. package/dist/reasoning/constructive-reals/index.js +52 -1
  104. package/dist/reasoning/constructive-reals/index.js.map +1 -1
  105. package/dist/reasoning/graph-theory/index.d.ts +63 -0
  106. package/dist/reasoning/graph-theory/index.d.ts.map +1 -0
  107. package/dist/reasoning/graph-theory/index.js +1043 -0
  108. package/dist/reasoning/graph-theory/index.js.map +1 -0
  109. package/dist/reasoning/group-presentation/cayley.d.ts +8 -0
  110. package/dist/reasoning/group-presentation/cayley.d.ts.map +1 -0
  111. package/dist/reasoning/group-presentation/cayley.js +38 -0
  112. package/dist/reasoning/group-presentation/cayley.js.map +1 -0
  113. package/dist/reasoning/group-presentation/index.d.ts +8 -0
  114. package/dist/reasoning/group-presentation/index.d.ts.map +1 -0
  115. package/dist/reasoning/group-presentation/index.js +36 -0
  116. package/dist/reasoning/group-presentation/index.js.map +1 -0
  117. package/dist/reasoning/group-presentation/standard-groups.d.ts +6 -0
  118. package/dist/reasoning/group-presentation/standard-groups.d.ts.map +1 -0
  119. package/dist/reasoning/group-presentation/standard-groups.js +93 -0
  120. package/dist/reasoning/group-presentation/standard-groups.js.map +1 -0
  121. package/dist/reasoning/group-presentation/todd-coxeter.d.ts +10 -0
  122. package/dist/reasoning/group-presentation/todd-coxeter.d.ts.map +1 -0
  123. package/dist/reasoning/group-presentation/todd-coxeter.js +362 -0
  124. package/dist/reasoning/group-presentation/todd-coxeter.js.map +1 -0
  125. package/dist/reasoning/group-presentation/types.d.ts +7 -0
  126. package/dist/reasoning/group-presentation/types.d.ts.map +1 -0
  127. package/dist/reasoning/group-presentation/types.js +22 -0
  128. package/dist/reasoning/group-presentation/types.js.map +1 -0
  129. package/dist/reasoning/group-presentation/words.d.ts +10 -0
  130. package/dist/reasoning/group-presentation/words.d.ts.map +1 -0
  131. package/dist/reasoning/group-presentation/words.js +109 -0
  132. package/dist/reasoning/group-presentation/words.js.map +1 -0
  133. package/dist/reasoning/linear-algebra/index.d.ts +69 -0
  134. package/dist/reasoning/linear-algebra/index.d.ts.map +1 -0
  135. package/dist/reasoning/linear-algebra/index.js +859 -0
  136. package/dist/reasoning/linear-algebra/index.js.map +1 -0
  137. package/dist/reasoning/set-theory/hf-functions.d.ts +35 -0
  138. package/dist/reasoning/set-theory/hf-functions.d.ts.map +1 -0
  139. package/dist/reasoning/set-theory/hf-functions.js +147 -0
  140. package/dist/reasoning/set-theory/hf-functions.js.map +1 -0
  141. package/dist/reasoning/set-theory/hf-sets.d.ts +79 -0
  142. package/dist/reasoning/set-theory/hf-sets.d.ts.map +1 -0
  143. package/dist/reasoning/set-theory/hf-sets.js +338 -0
  144. package/dist/reasoning/set-theory/hf-sets.js.map +1 -0
  145. package/dist/reasoning/set-theory/index.d.ts +7 -0
  146. package/dist/reasoning/set-theory/index.d.ts.map +1 -0
  147. package/dist/reasoning/set-theory/index.js +44 -0
  148. package/dist/reasoning/set-theory/index.js.map +1 -0
  149. package/dist/reasoning/set-theory/zfc-axioms.d.ts +59 -0
  150. package/dist/reasoning/set-theory/zfc-axioms.d.ts.map +1 -0
  151. package/dist/reasoning/set-theory/zfc-axioms.js +245 -0
  152. package/dist/reasoning/set-theory/zfc-axioms.js.map +1 -0
  153. package/dist/tests/proof-systems/distributed-exchange/distributed-exchange.test.d.ts +2 -0
  154. package/dist/tests/proof-systems/distributed-exchange/distributed-exchange.test.d.ts.map +1 -0
  155. package/dist/tests/proof-systems/distributed-exchange/distributed-exchange.test.js +328 -0
  156. package/dist/tests/proof-systems/distributed-exchange/distributed-exchange.test.js.map +1 -0
  157. package/dist/tests/proof-systems/fol-prover-advanced/prover.test.d.ts +2 -0
  158. package/dist/tests/proof-systems/fol-prover-advanced/prover.test.d.ts.map +1 -0
  159. package/dist/tests/proof-systems/fol-prover-advanced/prover.test.js +253 -0
  160. package/dist/tests/proof-systems/fol-prover-advanced/prover.test.js.map +1 -0
  161. package/dist/tests/reasoning/combinatorics/combinatorics.test.d.ts +2 -0
  162. package/dist/tests/reasoning/combinatorics/combinatorics.test.d.ts.map +1 -0
  163. package/dist/tests/reasoning/combinatorics/combinatorics.test.js +256 -0
  164. package/dist/tests/reasoning/combinatorics/combinatorics.test.js.map +1 -0
  165. package/dist/tests/reasoning/constructive-analysis/constructive-analysis.test.d.ts +2 -0
  166. package/dist/tests/reasoning/constructive-analysis/constructive-analysis.test.d.ts.map +1 -0
  167. package/dist/tests/reasoning/constructive-analysis/constructive-analysis.test.js +174 -0
  168. package/dist/tests/reasoning/constructive-analysis/constructive-analysis.test.js.map +1 -0
  169. package/dist/tests/reasoning/graph-theory/graph-theory.test.d.ts +2 -0
  170. package/dist/tests/reasoning/graph-theory/graph-theory.test.d.ts.map +1 -0
  171. package/dist/tests/reasoning/graph-theory/graph-theory.test.js +363 -0
  172. package/dist/tests/reasoning/graph-theory/graph-theory.test.js.map +1 -0
  173. package/dist/tests/reasoning/group-presentation/group-presentation.test.d.ts +2 -0
  174. package/dist/tests/reasoning/group-presentation/group-presentation.test.d.ts.map +1 -0
  175. package/dist/tests/reasoning/group-presentation/group-presentation.test.js +229 -0
  176. package/dist/tests/reasoning/group-presentation/group-presentation.test.js.map +1 -0
  177. package/dist/tests/reasoning/linear-algebra/linear-algebra.test.d.ts +2 -0
  178. package/dist/tests/reasoning/linear-algebra/linear-algebra.test.d.ts.map +1 -0
  179. package/dist/tests/reasoning/linear-algebra/linear-algebra.test.js +369 -0
  180. package/dist/tests/reasoning/linear-algebra/linear-algebra.test.js.map +1 -0
  181. package/dist/tests/reasoning/set-theory/hf-functions.test.d.ts +2 -0
  182. package/dist/tests/reasoning/set-theory/hf-functions.test.d.ts.map +1 -0
  183. package/dist/tests/reasoning/set-theory/hf-functions.test.js +122 -0
  184. package/dist/tests/reasoning/set-theory/hf-functions.test.js.map +1 -0
  185. package/dist/tests/reasoning/set-theory/hf-sets.test.d.ts +2 -0
  186. package/dist/tests/reasoning/set-theory/hf-sets.test.d.ts.map +1 -0
  187. package/dist/tests/reasoning/set-theory/hf-sets.test.js +177 -0
  188. package/dist/tests/reasoning/set-theory/hf-sets.test.js.map +1 -0
  189. package/dist/tests/reasoning/set-theory/zfc-axioms.test.d.ts +2 -0
  190. package/dist/tests/reasoning/set-theory/zfc-axioms.test.d.ts.map +1 -0
  191. package/dist/tests/reasoning/set-theory/zfc-axioms.test.js +56 -0
  192. package/dist/tests/reasoning/set-theory/zfc-axioms.test.js.map +1 -0
  193. package/dist/tests/tooling/doc-gen/doc-gen.test.d.ts +2 -0
  194. package/dist/tests/tooling/doc-gen/doc-gen.test.d.ts.map +1 -0
  195. package/dist/tests/tooling/doc-gen/doc-gen.test.js +350 -0
  196. package/dist/tests/tooling/doc-gen/doc-gen.test.js.map +1 -0
  197. package/dist/tests/tooling/exporters/coq-v2/coq-v2-exporter.test.d.ts +2 -0
  198. package/dist/tests/tooling/exporters/coq-v2/coq-v2-exporter.test.d.ts.map +1 -0
  199. package/dist/tests/tooling/exporters/coq-v2/coq-v2-exporter.test.js +411 -0
  200. package/dist/tests/tooling/exporters/coq-v2/coq-v2-exporter.test.js.map +1 -0
  201. package/dist/tests/tooling/lemma-library/lemma-library.test.d.ts +2 -0
  202. package/dist/tests/tooling/lemma-library/lemma-library.test.d.ts.map +1 -0
  203. package/dist/tests/tooling/lemma-library/lemma-library.test.js +197 -0
  204. package/dist/tests/tooling/lemma-library/lemma-library.test.js.map +1 -0
  205. package/dist/tests/tooling/provenance/ledger.test.d.ts +2 -0
  206. package/dist/tests/tooling/provenance/ledger.test.d.ts.map +1 -0
  207. package/dist/tests/tooling/provenance/ledger.test.js +545 -0
  208. package/dist/tests/tooling/provenance/ledger.test.js.map +1 -0
  209. package/dist/tests/tooling/test-harness/test-harness.test.d.ts +2 -0
  210. package/dist/tests/tooling/test-harness/test-harness.test.d.ts.map +1 -0
  211. package/dist/tests/tooling/test-harness/test-harness.test.js +208 -0
  212. package/dist/tests/tooling/test-harness/test-harness.test.js.map +1 -0
  213. package/dist/tooling/doc-gen/extract.d.ts +13 -0
  214. package/dist/tooling/doc-gen/extract.d.ts.map +1 -0
  215. package/dist/tooling/doc-gen/extract.js +379 -0
  216. package/dist/tooling/doc-gen/extract.js.map +1 -0
  217. package/dist/tooling/doc-gen/generate.d.ts +9 -0
  218. package/dist/tooling/doc-gen/generate.d.ts.map +1 -0
  219. package/dist/tooling/doc-gen/generate.js +116 -0
  220. package/dist/tooling/doc-gen/generate.js.map +1 -0
  221. package/dist/tooling/doc-gen/index.d.ts +7 -0
  222. package/dist/tooling/doc-gen/index.d.ts.map +1 -0
  223. package/dist/tooling/doc-gen/index.js +39 -0
  224. package/dist/tooling/doc-gen/index.js.map +1 -0
  225. package/dist/tooling/doc-gen/jsdoc.d.ts +31 -0
  226. package/dist/tooling/doc-gen/jsdoc.d.ts.map +1 -0
  227. package/dist/tooling/doc-gen/jsdoc.js +140 -0
  228. package/dist/tooling/doc-gen/jsdoc.js.map +1 -0
  229. package/dist/tooling/doc-gen/render.d.ts +29 -0
  230. package/dist/tooling/doc-gen/render.d.ts.map +1 -0
  231. package/dist/tooling/doc-gen/render.js +206 -0
  232. package/dist/tooling/doc-gen/render.js.map +1 -0
  233. package/dist/tooling/doc-gen/types.d.ts +51 -0
  234. package/dist/tooling/doc-gen/types.d.ts.map +1 -0
  235. package/dist/tooling/doc-gen/types.js +10 -0
  236. package/dist/tooling/doc-gen/types.js.map +1 -0
  237. package/dist/tooling/exporters/coq-v2/index.d.ts +68 -0
  238. package/dist/tooling/exporters/coq-v2/index.d.ts.map +1 -0
  239. package/dist/tooling/exporters/coq-v2/index.js +692 -0
  240. package/dist/tooling/exporters/coq-v2/index.js.map +1 -0
  241. package/dist/tooling/lemma-library/apply.d.ts +9 -0
  242. package/dist/tooling/lemma-library/apply.d.ts.map +1 -0
  243. package/dist/tooling/lemma-library/apply.js +94 -0
  244. package/dist/tooling/lemma-library/apply.js.map +1 -0
  245. package/dist/tooling/lemma-library/arithmetic.d.ts +3 -0
  246. package/dist/tooling/lemma-library/arithmetic.d.ts.map +1 -0
  247. package/dist/tooling/lemma-library/arithmetic.js +176 -0
  248. package/dist/tooling/lemma-library/arithmetic.js.map +1 -0
  249. package/dist/tooling/lemma-library/firstorder.d.ts +3 -0
  250. package/dist/tooling/lemma-library/firstorder.d.ts.map +1 -0
  251. package/dist/tooling/lemma-library/firstorder.js +136 -0
  252. package/dist/tooling/lemma-library/firstorder.js.map +1 -0
  253. package/dist/tooling/lemma-library/index.d.ts +13 -0
  254. package/dist/tooling/lemma-library/index.d.ts.map +1 -0
  255. package/dist/tooling/lemma-library/index.js +32 -0
  256. package/dist/tooling/lemma-library/index.js.map +1 -0
  257. package/dist/tooling/lemma-library/library.d.ts +34 -0
  258. package/dist/tooling/lemma-library/library.d.ts.map +1 -0
  259. package/dist/tooling/lemma-library/library.js +126 -0
  260. package/dist/tooling/lemma-library/library.js.map +1 -0
  261. package/dist/tooling/lemma-library/modal.d.ts +3 -0
  262. package/dist/tooling/lemma-library/modal.d.ts.map +1 -0
  263. package/dist/tooling/lemma-library/modal.js +138 -0
  264. package/dist/tooling/lemma-library/modal.js.map +1 -0
  265. package/dist/tooling/lemma-library/propositional.d.ts +3 -0
  266. package/dist/tooling/lemma-library/propositional.d.ts.map +1 -0
  267. package/dist/tooling/lemma-library/propositional.js +265 -0
  268. package/dist/tooling/lemma-library/propositional.js.map +1 -0
  269. package/dist/tooling/lemma-library/set-theory.d.ts +3 -0
  270. package/dist/tooling/lemma-library/set-theory.d.ts.map +1 -0
  271. package/dist/tooling/lemma-library/set-theory.js +134 -0
  272. package/dist/tooling/lemma-library/set-theory.js.map +1 -0
  273. package/dist/tooling/lemma-library/standard.d.ts +3 -0
  274. package/dist/tooling/lemma-library/standard.d.ts.map +1 -0
  275. package/dist/tooling/lemma-library/standard.js +27 -0
  276. package/dist/tooling/lemma-library/standard.js.map +1 -0
  277. package/dist/tooling/lemma-library/tfidf.d.ts +5 -0
  278. package/dist/tooling/lemma-library/tfidf.d.ts.map +1 -0
  279. package/dist/tooling/lemma-library/tfidf.js +100 -0
  280. package/dist/tooling/lemma-library/tfidf.js.map +1 -0
  281. package/dist/tooling/lemma-library/tokenize.d.ts +2 -0
  282. package/dist/tooling/lemma-library/tokenize.d.ts.map +1 -0
  283. package/dist/tooling/lemma-library/tokenize.js +74 -0
  284. package/dist/tooling/lemma-library/tokenize.js.map +1 -0
  285. package/dist/tooling/lemma-library/types.d.ts +53 -0
  286. package/dist/tooling/lemma-library/types.d.ts.map +1 -0
  287. package/dist/tooling/lemma-library/types.js +10 -0
  288. package/dist/tooling/lemma-library/types.js.map +1 -0
  289. package/dist/tooling/provenance/index.d.ts +3 -0
  290. package/dist/tooling/provenance/index.d.ts.map +1 -0
  291. package/dist/tooling/provenance/index.js +16 -0
  292. package/dist/tooling/provenance/index.js.map +1 -0
  293. package/dist/tooling/provenance/ledger.d.ts +89 -0
  294. package/dist/tooling/provenance/ledger.d.ts.map +1 -0
  295. package/dist/tooling/provenance/ledger.js +439 -0
  296. package/dist/tooling/provenance/ledger.js.map +1 -0
  297. package/dist/tooling/provenance/types.d.ts +70 -0
  298. package/dist/tooling/provenance/types.d.ts.map +1 -0
  299. package/dist/tooling/provenance/types.js +14 -0
  300. package/dist/tooling/provenance/types.js.map +1 -0
  301. package/dist/tooling/test-harness/combinators.d.ts +14 -0
  302. package/dist/tooling/test-harness/combinators.d.ts.map +1 -0
  303. package/dist/tooling/test-harness/combinators.js +122 -0
  304. package/dist/tooling/test-harness/combinators.js.map +1 -0
  305. package/dist/tooling/test-harness/coverage.d.ts +3 -0
  306. package/dist/tooling/test-harness/coverage.d.ts.map +1 -0
  307. package/dist/tooling/test-harness/coverage.js +32 -0
  308. package/dist/tooling/test-harness/coverage.js.map +1 -0
  309. package/dist/tooling/test-harness/generators.d.ts +6 -0
  310. package/dist/tooling/test-harness/generators.d.ts.map +1 -0
  311. package/dist/tooling/test-harness/generators.js +66 -0
  312. package/dist/tooling/test-harness/generators.js.map +1 -0
  313. package/dist/tooling/test-harness/index.d.ts +7 -0
  314. package/dist/tooling/test-harness/index.d.ts.map +1 -0
  315. package/dist/tooling/test-harness/index.js +27 -0
  316. package/dist/tooling/test-harness/index.js.map +1 -0
  317. package/dist/tooling/test-harness/mutation.d.ts +4 -0
  318. package/dist/tooling/test-harness/mutation.d.ts.map +1 -0
  319. package/dist/tooling/test-harness/mutation.js +28 -0
  320. package/dist/tooling/test-harness/mutation.js.map +1 -0
  321. package/dist/tooling/test-harness/snapshot.d.ts +5 -0
  322. package/dist/tooling/test-harness/snapshot.d.ts.map +1 -0
  323. package/dist/tooling/test-harness/snapshot.js +86 -0
  324. package/dist/tooling/test-harness/snapshot.js.map +1 -0
  325. package/dist/tooling/test-harness/types.d.ts +32 -0
  326. package/dist/tooling/test-harness/types.d.ts.map +1 -0
  327. package/dist/tooling/test-harness/types.js +3 -0
  328. package/dist/tooling/test-harness/types.js.map +1 -0
  329. package/package.json +1 -1
@@ -0,0 +1,115 @@
1
+ "use strict";
2
+ /**
3
+ * Constructive Intermediate Value Theorem and Mean Value approximation.
4
+ *
5
+ * Classically: if f is continuous on [a, b] and f(a) <= target <= f(b),
6
+ * then there exists c in [a, b] with f(c) = target. Constructively the
7
+ * exact statement is unprovable without LEM (deciding equality on R is
8
+ * not decidable), but the *approximate* IVT is fully constructive:
9
+ *
10
+ * Given precision N, we can compute c in [a, b] with |f(c) - target| < 1/N.
11
+ *
12
+ * Algorithm (bisection with explicit witness):
13
+ * - require f(a) and f(b) to bracket `target` (with a tolerance);
14
+ * - bisect, picking the half where the target still lies between the
15
+ * endpoints' images at sufficient precision;
16
+ * - stop when |f(c) - target| < 1/N (witnessed at precision 4N).
17
+ *
18
+ * Mean value (constructive): for uniformly continuous f, the average
19
+ * value `(1/(b-a)) * ∫_a^b f` is a real in the closure of the image of f.
20
+ * The constructive MVT-approximation finds c in [a, b] with
21
+ * |f(c) - average| < 1/N.
22
+ */
23
+ Object.defineProperty(exports, "__esModule", { value: true });
24
+ exports.meanValueConstructive = exports.intermediateValueTheorem = void 0;
25
+ const constructive_reals_1 = require("../constructive-reals");
26
+ const integral_1 = require("./integral");
27
+ const MAX_BISECT = 200;
28
+ /**
29
+ * Returns a CReal `c` with |f(c) - target| < 1/precision, or null if no
30
+ * such c is bracketed in [a, b] at the given precision.
31
+ *
32
+ * Requires f(a) <= target <= f(b) or the reverse (we don't assume a
33
+ * specific direction; we use a generalized sign test).
34
+ */
35
+ const intermediateValueTheorem = (f, a, b, target, precision) => {
36
+ if (!Number.isInteger(precision) || precision <= 0) {
37
+ throw new RangeError('[ivt] precision must be a positive integer');
38
+ }
39
+ const aNum = (0, constructive_reals_1.toNumber)(a);
40
+ const bNum = (0, constructive_reals_1.toNumber)(b);
41
+ if (!(bNum > aNum))
42
+ return null;
43
+ const tgt = (0, constructive_reals_1.toNumber)(target, Math.max(4 * precision, 1_000));
44
+ let lo = aNum;
45
+ let hi = bNum;
46
+ const fAt = (x) => (0, constructive_reals_1.toNumber)(f.fn((0, constructive_reals_1.fromFloat)(x)), Math.max(4 * precision, 1_000));
47
+ let fLo = fAt(lo);
48
+ let fHi = fAt(hi);
49
+ // Normalize so fLo - tgt and fHi - tgt have opposite signs.
50
+ // If neither bracket, we cannot proceed constructively.
51
+ if ((fLo - tgt) * (fHi - tgt) > 0) {
52
+ // No sign change witnessed at this precision.
53
+ return null;
54
+ }
55
+ const epsBound = 1 / precision;
56
+ for (let i = 0; i < MAX_BISECT; i++) {
57
+ const mid = (lo + hi) / 2;
58
+ const fMid = fAt(mid);
59
+ // Witnessed at precision 4 * N: if |f(mid) - target| < 1/(2N) we are done.
60
+ if (Math.abs(fMid - tgt) < epsBound / 2) {
61
+ const c = (0, constructive_reals_1.fromFloat)(mid);
62
+ const diff = (0, constructive_reals_1.abs)((0, constructive_reals_1.sub)(f.fn(c), target));
63
+ if ((0, constructive_reals_1.approxLT)(diff, (0, constructive_reals_1.fromFloat)(epsBound), 4 * precision)) {
64
+ return c;
65
+ }
66
+ }
67
+ if ((fLo - tgt) * (fMid - tgt) <= 0) {
68
+ hi = mid;
69
+ fHi = fMid;
70
+ }
71
+ else {
72
+ lo = mid;
73
+ fLo = fMid;
74
+ }
75
+ if (hi - lo < epsBound / Math.max(1, f.modulus(precision))) {
76
+ // Geometric stop: any c in [lo, hi] is close enough.
77
+ const c = (0, constructive_reals_1.fromFloat)((lo + hi) / 2);
78
+ const diff = (0, constructive_reals_1.abs)((0, constructive_reals_1.sub)(f.fn(c), target));
79
+ if ((0, constructive_reals_1.approxLT)(diff, (0, constructive_reals_1.fromFloat)(epsBound), 4 * precision)) {
80
+ return c;
81
+ }
82
+ }
83
+ }
84
+ // Fallback: emit best candidate and let the caller check.
85
+ const c = (0, constructive_reals_1.fromFloat)((lo + hi) / 2);
86
+ const diff = (0, constructive_reals_1.abs)((0, constructive_reals_1.sub)(f.fn(c), target));
87
+ return (0, constructive_reals_1.approxLT)(diff, (0, constructive_reals_1.fromFloat)(epsBound), 4 * precision) ? c : null;
88
+ };
89
+ exports.intermediateValueTheorem = intermediateValueTheorem;
90
+ /**
91
+ * Constructive mean value approximation: find c in [a, b] with
92
+ * |f(c) - (1/(b-a)) * ∫_a^b f(x) dx| < 1/precision,
93
+ * if such c is bracketed at this precision; null otherwise.
94
+ *
95
+ * Strategy: compute the average via Bishop integral, then call IVT to
96
+ * locate c.
97
+ */
98
+ const meanValueConstructive = (f, a, b, precision) => {
99
+ if (!Number.isInteger(precision) || precision <= 0) {
100
+ throw new RangeError('[meanValue] precision must be a positive integer');
101
+ }
102
+ const aNum = (0, constructive_reals_1.toNumber)(a);
103
+ const bNum = (0, constructive_reals_1.toNumber)(b);
104
+ if (!(bNum > aNum))
105
+ return null;
106
+ // Compute integral at higher precision so dividing by (b - a) keeps
107
+ // the error budget under 1/(2 precision).
108
+ const length = bNum - aNum;
109
+ const intPrec = Math.max(1, Math.ceil(2 * precision / Math.max(length, 1e-12)));
110
+ const integral = (0, integral_1.bishopIntegral)(f, a, b, intPrec);
111
+ const average = (0, constructive_reals_1.fromFloat)((0, constructive_reals_1.toNumber)(integral, Math.max(4 * intPrec, 1_000)) / length);
112
+ return (0, exports.intermediateValueTheorem)(f, a, b, average, precision);
113
+ };
114
+ exports.meanValueConstructive = meanValueConstructive;
115
+ //# sourceMappingURL=ivt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ivt.js","sourceRoot":"","sources":["../../../src/reasoning/constructive-analysis/ivt.ts"],"names":[],"mappings":"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"}
@@ -128,5 +128,28 @@ export declare const __internals: {
128
128
  isqrt: typeof isqrt;
129
129
  pow2: typeof pow2;
130
130
  };
131
+ /** Crea un CReal desde un número racional (float). Usa fromInt para enteros. */
132
+ export declare function fromFloat(q: number): CReal;
133
+ /**
134
+ * Extrae el valor numérico de un CReal.
135
+ * `precision` es el número de bits fraccionarios solicitados (como pasa `x.approx(p)`).
136
+ * Para evitar desbordamiento al convertir bigint → number, se acota internamente a 63 bits.
137
+ * Valores por encima de 63 sólo añaden cómputo sin mejorar la representación en float64.
138
+ */
139
+ export declare function toNumber(x: CReal, precision?: number): number;
140
+ /**
141
+ * Retorna true si podemos demostrar constructivamente que x < y
142
+ * a la precisión dada (bits fraccionarios).
143
+ */
144
+ export declare function approxLT(x: CReal, y: CReal, precision: number): boolean;
145
+ /**
146
+ * Retorna true si |x - y| < 2^{-precision+1} (aproximadamente iguales
147
+ * a la precisión dada).
148
+ */
149
+ export declare function approxEq(x: CReal, y: CReal, precision: number): boolean;
150
+ /** El real constructivo cero. */
151
+ export declare const zero: CReal;
152
+ /** El real constructivo uno. */
153
+ export declare const one: CReal;
131
154
  export {};
132
155
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/reasoning/constructive-reals/index.ts"],"names":[],"mappings":"AA6CA,MAAM,WAAW,KAAK;IACpB;;;OAGG;IACH,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;CACvE;AAID,uCAAuC;AACvC,iBAAS,IAAI,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAG/B;AAED;;;;GAIG;AACH,iBAAS,UAAU,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAIhD;AAED;;;GAGG;AACH,iBAAS,SAAS,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAMpC;AA8DD,wBAAgB,OAAO,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,KAAK,CASjD;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,KAAK,CAuB1E;AAID,wBAAgB,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,KAAK,CAGnC;AAED,wBAAgB,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,KAAK,CAMnC;AAED;;;;;;;GAOG;AACH,wBAAgB,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,KAAK,CAQ7C;AAED,wBAAgB,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,KAAK,CAQ7C;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,KAAK,CAoB7C;AAsBD;;;;;;;;;;;;GAYG;AACH,wBAAgB,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,KAAK,CA2B7C;AAED;;;;;GAKG;AACH,wBAAgB,IAAI,CAAC,CAAC,EAAE,KAAK,GAAG,KAAK,CAoBpC;AAED,wDAAwD;AACxD,iBAAS,KAAK,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAahC;AAID;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,gBAAgB,EAAE,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAW3F;AAID;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAgBzD;AAWD;;;;;;;;;GASG;AACH,wBAAgB,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,KAAK,CAqCnC;AAwBD,wBAAgB,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,KAAK,CA0CnC;AA6CD,wBAAgB,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,KAAK,CAiBnC;AAED,wBAAgB,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,KAAK,CAenC;AAED;;;;GAIG;AACH,wBAAgB,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,CAmBtD;AA2CD,eAAO,MAAM,EAAE,EAAE,KAAuC,CAAC;AAmBzD,eAAO,MAAM,CAAC,EAAE,KAAsC,CAAC;AAYvD,eAAO,MAAM,KAAK,EAAE,KAA0C,CAAC;AAI/D,4CAA4C;AAC5C,eAAO,MAAM,WAAW;;;;;CAKvB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/reasoning/constructive-reals/index.ts"],"names":[],"mappings":"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"}
@@ -42,7 +42,7 @@
42
42
  // `n`, equivalente a 2^{-(n+1)}.
43
43
  // ============================================================
44
44
  Object.defineProperty(exports, "__esModule", { value: true });
45
- exports.__internals = exports.SQRT2 = exports.E = exports.PI = void 0;
45
+ exports.one = exports.zero = exports.__internals = exports.SQRT2 = exports.E = exports.PI = void 0;
46
46
  exports.fromInt = fromInt;
47
47
  exports.fromRational = fromRational;
48
48
  exports.neg = neg;
@@ -59,6 +59,10 @@ exports.log = log;
59
59
  exports.sin = sin;
60
60
  exports.cos = cos;
61
61
  exports.pow = pow;
62
+ exports.fromFloat = fromFloat;
63
+ exports.toNumber = toNumber;
64
+ exports.approxLT = approxLT;
65
+ exports.approxEq = approxEq;
62
66
  // ── Helpers internos ────────────────────────────────────────
63
67
  /** Eleva 2 a un entero no negativo. */
64
68
  function pow2(n) {
@@ -720,4 +724,51 @@ exports.__internals = {
720
724
  isqrt,
721
725
  pow2,
722
726
  };
727
+ // ── Helpers de conveniencia ─────────────────────────────────
728
+ // Compatibilidad con código que usa la API de un solo argumento
729
+ // (fromRational(q) donde q es un número racional como float) y
730
+ // utilidades numéricas de alto nivel.
731
+ /** Crea un CReal desde un número racional (float). Usa fromInt para enteros. */
732
+ function fromFloat(q) {
733
+ if (!Number.isFinite(q))
734
+ throw new RangeError(`fromFloat: ${q} no es finito`);
735
+ if (Number.isInteger(q))
736
+ return fromInt(q);
737
+ // Representa q como fracción p/10^9 para mantener precisión.
738
+ const scale = 1_000_000_000;
739
+ return fromRational(Math.round(q * scale), scale);
740
+ }
741
+ /**
742
+ * Extrae el valor numérico de un CReal.
743
+ * `precision` es el número de bits fraccionarios solicitados (como pasa `x.approx(p)`).
744
+ * Para evitar desbordamiento al convertir bigint → number, se acota internamente a 63 bits.
745
+ * Valores por encima de 63 sólo añaden cómputo sin mejorar la representación en float64.
746
+ */
747
+ function toNumber(x, precision = 53) {
748
+ const bits = Math.min(Math.max(precision, 1), 63);
749
+ const { numerator, denominator } = x.approx(bits);
750
+ return Number(numerator) / Number(denominator);
751
+ }
752
+ /**
753
+ * Retorna true si podemos demostrar constructivamente que x < y
754
+ * a la precisión dada (bits fraccionarios).
755
+ */
756
+ function approxLT(x, y, precision) {
757
+ const xv = approxBigOf(x)(precision);
758
+ const yv = approxBigOf(y)(precision);
759
+ // x < y con margen 2 unidades (para absorber el error de redondeo de cada lado).
760
+ return xv + 2n < yv;
761
+ }
762
+ /**
763
+ * Retorna true si |x - y| < 2^{-precision+1} (aproximadamente iguales
764
+ * a la precisión dada).
765
+ */
766
+ function approxEq(x, y, precision) {
767
+ const diff = approxBigOf(sub(x, y))(precision);
768
+ return diff >= -2n && diff <= 2n;
769
+ }
770
+ /** El real constructivo cero. */
771
+ exports.zero = fromInt(0);
772
+ /** El real constructivo uno. */
773
+ exports.one = fromInt(1);
723
774
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/reasoning/constructive-reals/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/reasoning/constructive-reals/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,63 @@
1
+ export interface Edge<V> {
2
+ from: V;
3
+ to: V;
4
+ weight?: number;
5
+ }
6
+ export interface WeightedEdge<V> {
7
+ from: V;
8
+ to: V;
9
+ weight: number;
10
+ }
11
+ export interface Graph<V> {
12
+ vertices: Set<V>;
13
+ edges: Array<Edge<V>>;
14
+ directed: boolean;
15
+ }
16
+ export declare function makeGraph<V>(directed?: boolean): Graph<V>;
17
+ export declare function addVertex<V>(G: Graph<V>, v: V): void;
18
+ export declare function addEdge<V>(G: Graph<V>, e: Edge<V>): void;
19
+ export declare function neighbors<V>(G: Graph<V>, v: V): V[];
20
+ export declare function inDegree<V>(G: Graph<V>, v: V): number;
21
+ export declare function outDegree<V>(G: Graph<V>, v: V): number;
22
+ export declare function bfs<V>(G: Graph<V>, start: V, visit?: (v: V) => void): V[];
23
+ export declare function dfs<V>(G: Graph<V>, start: V, visit?: (v: V) => void): V[];
24
+ export declare function topologicalSort<V>(G: Graph<V>): V[] | 'has-cycle';
25
+ export declare function connectedComponents<V>(G: Graph<V>): V[][];
26
+ export declare function isConnected<V>(G: Graph<V>): boolean;
27
+ export declare function stronglyConnectedComponents<V>(G: Graph<V>): V[][];
28
+ export declare function articulationPoints<V>(G: Graph<V>): V[];
29
+ export declare function bridges<V>(G: Graph<V>): Array<{
30
+ from: V;
31
+ to: V;
32
+ }>;
33
+ export declare function dijkstra<V>(G: Graph<V>, start: V): {
34
+ distances: Map<V, number>;
35
+ predecessors: Map<V, V>;
36
+ };
37
+ export declare function bellmanFord<V>(G: Graph<V>, start: V): {
38
+ distances: Map<V, number>;
39
+ predecessors: Map<V, V>;
40
+ negativeCycle: boolean;
41
+ };
42
+ export declare function floydWarshall<V>(G: Graph<V>): Map<V, Map<V, number>>;
43
+ export declare function kruskal<V>(G: Graph<V>): {
44
+ edges: Array<WeightedEdge<V>>;
45
+ totalWeight: number;
46
+ };
47
+ export declare function prim<V>(G: Graph<V>, start?: V): {
48
+ edges: Array<WeightedEdge<V>>;
49
+ totalWeight: number;
50
+ };
51
+ export declare function bipartiteMaximumMatching<V>(G: Graph<V>, leftPartition: Set<V>): Array<{
52
+ left: V;
53
+ right: V;
54
+ }>;
55
+ export declare function hopcroftKarp<V>(G: Graph<V>, leftPartition: Set<V>): Array<{
56
+ left: V;
57
+ right: V;
58
+ }>;
59
+ export declare function greedyColoring<V>(G: Graph<V>): Map<V, number>;
60
+ export declare function chromaticNumber<V>(G: Graph<V>): number;
61
+ export declare function areIsomorphic<V1, V2>(g1: Graph<V1>, g2: Graph<V2>): boolean;
62
+ export declare function findIsomorphism<V1, V2>(g1: Graph<V1>, g2: Graph<V2>): Map<V1, V2> | null;
63
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/reasoning/graph-theory/index.ts"],"names":[],"mappings":"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"}