@stevenvo780/st-lang 4.13.0 → 4.14.1

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 (430) hide show
  1. package/README.md +6 -6
  2. package/dist/ast/nodes.d.ts +50 -0
  3. package/dist/ast/nodes.d.ts.map +1 -1
  4. package/dist/format/stnb/parser.d.ts +14 -0
  5. package/dist/format/stnb/parser.d.ts.map +1 -0
  6. package/dist/format/stnb/parser.js +123 -0
  7. package/dist/format/stnb/parser.js.map +1 -0
  8. package/dist/format/stnb/types.d.ts +45 -0
  9. package/dist/format/stnb/types.d.ts.map +1 -0
  10. package/dist/format/stnb/types.js +7 -0
  11. package/dist/format/stnb/types.js.map +1 -0
  12. package/dist/logic/profile-bridge/index.d.ts.map +1 -1
  13. package/dist/logic/profile-bridge/index.js +20 -3
  14. package/dist/logic/profile-bridge/index.js.map +1 -1
  15. package/dist/logic/profiles/classical/propositional.d.ts.map +1 -1
  16. package/dist/logic/profiles/classical/propositional.js.map +1 -1
  17. package/dist/logic/profiles/ctl/check.d.ts.map +1 -1
  18. package/dist/logic/profiles/ctl/check.js +21 -11
  19. package/dist/logic/profiles/ctl/check.js.map +1 -1
  20. package/dist/logic/profiles/ctl/witness.d.ts.map +1 -1
  21. package/dist/logic/profiles/ctl/witness.js +2 -0
  22. package/dist/logic/profiles/ctl/witness.js.map +1 -1
  23. package/dist/logic/profiles/description-logic/types.d.ts +15 -0
  24. package/dist/logic/profiles/description-logic/types.d.ts.map +1 -1
  25. package/dist/logic/profiles/description-logic/types.js +13 -0
  26. package/dist/logic/profiles/description-logic/types.js.map +1 -1
  27. package/dist/logic/profiles/hybrid-logic/types.d.ts +17 -0
  28. package/dist/logic/profiles/hybrid-logic/types.d.ts.map +1 -1
  29. package/dist/logic/profiles/hybrid-logic/types.js +17 -0
  30. package/dist/logic/profiles/hybrid-logic/types.js.map +1 -1
  31. package/dist/logic/profiles/intuitionistic-nj/kripke.d.ts.map +1 -1
  32. package/dist/logic/profiles/intuitionistic-nj/kripke.js +8 -5
  33. package/dist/logic/profiles/intuitionistic-nj/kripke.js.map +1 -1
  34. package/dist/logic/profiles/ltl-sat/tableau.d.ts +31 -0
  35. package/dist/logic/profiles/ltl-sat/tableau.d.ts.map +1 -1
  36. package/dist/logic/profiles/ltl-sat/tableau.js +18 -0
  37. package/dist/logic/profiles/ltl-sat/tableau.js.map +1 -1
  38. package/dist/logic/profiles/ltl-sat/types.d.ts +15 -0
  39. package/dist/logic/profiles/ltl-sat/types.d.ts.map +1 -1
  40. package/dist/logic/profiles/ltl-sat/types.js +2 -1
  41. package/dist/logic/profiles/ltl-sat/types.js.map +1 -1
  42. package/dist/logic/profiles/modal-frame-axioms/formula.d.ts +10 -0
  43. package/dist/logic/profiles/modal-frame-axioms/formula.d.ts.map +1 -1
  44. package/dist/logic/profiles/modal-frame-axioms/formula.js +10 -0
  45. package/dist/logic/profiles/modal-frame-axioms/formula.js.map +1 -1
  46. package/dist/logic/profiles/mu-calculus/check.d.ts.map +1 -1
  47. package/dist/logic/profiles/mu-calculus/check.js +7 -4
  48. package/dist/logic/profiles/mu-calculus/check.js.map +1 -1
  49. package/dist/logic/profiles/natural-deduction-nk/formula.d.ts +8 -0
  50. package/dist/logic/profiles/natural-deduction-nk/formula.d.ts.map +1 -1
  51. package/dist/logic/profiles/natural-deduction-nk/formula.js +8 -0
  52. package/dist/logic/profiles/natural-deduction-nk/formula.js.map +1 -1
  53. package/dist/logic/profiles/quantum/index.d.ts.map +1 -1
  54. package/dist/logic/profiles/quantum/index.js +11 -8
  55. package/dist/logic/profiles/quantum/index.js.map +1 -1
  56. package/dist/logic/profiles/sequent-lj/index.d.ts +90 -0
  57. package/dist/logic/profiles/sequent-lj/index.d.ts.map +1 -0
  58. package/dist/logic/profiles/sequent-lj/index.js +903 -0
  59. package/dist/logic/profiles/sequent-lj/index.js.map +1 -0
  60. package/dist/logic/profiles/shared/tableau-engine.d.ts.map +1 -1
  61. package/dist/logic/profiles/shared/tableau-engine.js +0 -17
  62. package/dist/logic/profiles/shared/tableau-engine.js.map +1 -1
  63. package/dist/namespaces/proof-systems.d.ts +1 -1
  64. package/dist/namespaces/proof-systems.d.ts.map +1 -1
  65. package/dist/namespaces/proof-systems.js.map +1 -1
  66. package/dist/namespaces/semantics.d.ts +1 -1
  67. package/dist/namespaces/semantics.d.ts.map +1 -1
  68. package/dist/namespaces/semantics.js.map +1 -1
  69. package/dist/proof-systems/distributed-exchange/index.d.ts +29 -0
  70. package/dist/proof-systems/distributed-exchange/index.d.ts.map +1 -1
  71. package/dist/proof-systems/distributed-exchange/index.js +18 -0
  72. package/dist/proof-systems/distributed-exchange/index.js.map +1 -1
  73. package/dist/proof-systems/fol-prover/types.d.ts +16 -0
  74. package/dist/proof-systems/fol-prover/types.d.ts.map +1 -1
  75. package/dist/proof-systems/fol-prover/types.js +7 -0
  76. package/dist/proof-systems/fol-prover/types.js.map +1 -1
  77. package/dist/proof-systems/fol-prover-advanced/index.d.ts +3 -3
  78. package/dist/proof-systems/fol-prover-advanced/index.d.ts.map +1 -1
  79. package/dist/proof-systems/fol-prover-advanced/index.js.map +1 -1
  80. package/dist/proof-systems/fol-prover-advanced/ordering.js +1 -1
  81. package/dist/proof-systems/fol-prover-advanced/prover.d.ts.map +1 -1
  82. package/dist/proof-systems/fol-prover-advanced/prover.js +19 -12
  83. package/dist/proof-systems/fol-prover-advanced/prover.js.map +1 -1
  84. package/dist/proof-systems/fol-prover-advanced/resolve.d.ts.map +1 -1
  85. package/dist/proof-systems/fol-prover-advanced/resolve.js +7 -7
  86. package/dist/proof-systems/fol-prover-advanced/resolve.js.map +1 -1
  87. package/dist/proof-systems/fol-prover-advanced/subsumption.d.ts.map +1 -1
  88. package/dist/proof-systems/fol-prover-advanced/subsumption.js.map +1 -1
  89. package/dist/proof-systems/fol-prover-advanced/types.d.ts +12 -0
  90. package/dist/proof-systems/fol-prover-advanced/types.d.ts.map +1 -1
  91. package/dist/proof-systems/fol-prover-advanced/unify.js +2 -2
  92. package/dist/proof-systems/fol-prover-equality/term-utils.d.ts +46 -0
  93. package/dist/proof-systems/fol-prover-equality/term-utils.d.ts.map +1 -1
  94. package/dist/proof-systems/fol-prover-equality/term-utils.js +46 -0
  95. package/dist/proof-systems/fol-prover-equality/term-utils.js.map +1 -1
  96. package/dist/proof-systems/proof-nets/correctness.d.ts.map +1 -1
  97. package/dist/proof-systems/proof-nets/correctness.js +24 -12
  98. package/dist/proof-systems/proof-nets/correctness.js.map +1 -1
  99. package/dist/proof-systems/proof-nets/types.d.ts +18 -0
  100. package/dist/proof-systems/proof-nets/types.d.ts.map +1 -1
  101. package/dist/proof-systems/proof-nets/types.js +6 -0
  102. package/dist/proof-systems/proof-nets/types.js.map +1 -1
  103. package/dist/proof-systems/tableau-framework/TableauProver.d.ts.map +1 -1
  104. package/dist/proof-systems/tableau-framework/TableauProver.js +5 -5
  105. package/dist/proof-systems/tableau-framework/TableauProver.js.map +1 -1
  106. package/dist/proof-systems/tableau-framework/propositional.d.ts.map +1 -1
  107. package/dist/proof-systems/tableau-framework/propositional.js +21 -21
  108. package/dist/proof-systems/tableau-framework/propositional.js.map +1 -1
  109. package/dist/reasoning/ban-logic/terms.d.ts +24 -0
  110. package/dist/reasoning/ban-logic/terms.d.ts.map +1 -1
  111. package/dist/reasoning/ban-logic/terms.js +24 -0
  112. package/dist/reasoning/ban-logic/terms.js.map +1 -1
  113. package/dist/reasoning/bayesian/factor.js +8 -8
  114. package/dist/reasoning/bayesian/factor.js.map +1 -1
  115. package/dist/reasoning/bayesian/inference.d.ts.map +1 -1
  116. package/dist/reasoning/bayesian/inference.js +11 -5
  117. package/dist/reasoning/bayesian/inference.js.map +1 -1
  118. package/dist/reasoning/combinatorics/generators.js.map +1 -1
  119. package/dist/reasoning/combinatorics/index.d.ts +3 -3
  120. package/dist/reasoning/combinatorics/index.d.ts.map +1 -1
  121. package/dist/reasoning/combinatorics/index.js.map +1 -1
  122. package/dist/reasoning/combinatorics/set-partitions.js.map +1 -1
  123. package/dist/reasoning/combinatorics/special-numbers.d.ts.map +1 -1
  124. package/dist/reasoning/combinatorics/special-numbers.js.map +1 -1
  125. package/dist/reasoning/constructive-analysis/cauchy.js +2 -2
  126. package/dist/reasoning/constructive-analysis/compact.js +1 -1
  127. package/dist/reasoning/constructive-analysis/continuity.d.ts.map +1 -1
  128. package/dist/reasoning/constructive-analysis/continuity.js +4 -4
  129. package/dist/reasoning/constructive-analysis/continuity.js.map +1 -1
  130. package/dist/reasoning/constructive-analysis/index.d.ts.map +1 -1
  131. package/dist/reasoning/constructive-analysis/index.js.map +1 -1
  132. package/dist/reasoning/constructive-analysis/ivt.d.ts.map +1 -1
  133. package/dist/reasoning/constructive-analysis/ivt.js +2 -2
  134. package/dist/reasoning/constructive-analysis/ivt.js.map +1 -1
  135. package/dist/reasoning/constructive-reals/index.d.ts.map +1 -1
  136. package/dist/reasoning/constructive-reals/index.js +4 -8
  137. package/dist/reasoning/constructive-reals/index.js.map +1 -1
  138. package/dist/reasoning/galois-fields/index.d.ts +64 -0
  139. package/dist/reasoning/galois-fields/index.d.ts.map +1 -1
  140. package/dist/reasoning/galois-fields/index.js +56 -6
  141. package/dist/reasoning/galois-fields/index.js.map +1 -1
  142. package/dist/reasoning/graph-theory/index.d.ts +31 -0
  143. package/dist/reasoning/graph-theory/index.d.ts.map +1 -1
  144. package/dist/reasoning/graph-theory/index.js +28 -10
  145. package/dist/reasoning/graph-theory/index.js.map +1 -1
  146. package/dist/reasoning/hoare-logic/index.d.ts +164 -0
  147. package/dist/reasoning/hoare-logic/index.d.ts.map +1 -0
  148. package/dist/reasoning/hoare-logic/index.js +561 -0
  149. package/dist/reasoning/hoare-logic/index.js.map +1 -0
  150. package/dist/reasoning/hyperreal/index.d.ts +30 -0
  151. package/dist/reasoning/hyperreal/index.d.ts.map +1 -1
  152. package/dist/reasoning/hyperreal/index.js +25 -0
  153. package/dist/reasoning/hyperreal/index.js.map +1 -1
  154. package/dist/reasoning/information-theory/index.d.ts +34 -0
  155. package/dist/reasoning/information-theory/index.d.ts.map +1 -1
  156. package/dist/reasoning/information-theory/index.js +27 -44
  157. package/dist/reasoning/information-theory/index.js.map +1 -1
  158. package/dist/reasoning/lemma-synthesis/index.d.ts +36 -0
  159. package/dist/reasoning/lemma-synthesis/index.d.ts.map +1 -1
  160. package/dist/reasoning/lemma-synthesis/index.js +12 -0
  161. package/dist/reasoning/lemma-synthesis/index.js.map +1 -1
  162. package/dist/reasoning/linear-algebra/index.d.ts +38 -0
  163. package/dist/reasoning/linear-algebra/index.d.ts.map +1 -1
  164. package/dist/reasoning/linear-algebra/index.js +34 -5
  165. package/dist/reasoning/linear-algebra/index.js.map +1 -1
  166. package/dist/reasoning/markov-logic/grounding.js +1 -1
  167. package/dist/reasoning/markov-logic/grounding.js.map +1 -1
  168. package/dist/reasoning/markov-logic/inference.js +1 -1
  169. package/dist/reasoning/markov-logic/inference.js.map +1 -1
  170. package/dist/reasoning/model-checking/index.d.ts +113 -0
  171. package/dist/reasoning/model-checking/index.d.ts.map +1 -0
  172. package/dist/reasoning/model-checking/index.js +786 -0
  173. package/dist/reasoning/model-checking/index.js.map +1 -0
  174. package/dist/reasoning/order-theory/index.d.ts +121 -0
  175. package/dist/reasoning/order-theory/index.d.ts.map +1 -0
  176. package/dist/reasoning/order-theory/index.js +562 -0
  177. package/dist/reasoning/order-theory/index.js.map +1 -0
  178. package/dist/reasoning/peano-arithmetic/index.d.ts +114 -0
  179. package/dist/reasoning/peano-arithmetic/index.d.ts.map +1 -0
  180. package/dist/reasoning/peano-arithmetic/index.js +650 -0
  181. package/dist/reasoning/peano-arithmetic/index.js.map +1 -0
  182. package/dist/reasoning/polynomial-ring/index.d.ts +80 -0
  183. package/dist/reasoning/polynomial-ring/index.d.ts.map +1 -1
  184. package/dist/reasoning/polynomial-ring/index.js +75 -0
  185. package/dist/reasoning/polynomial-ring/index.js.map +1 -1
  186. package/dist/reasoning/separation-logic/index.d.ts +220 -0
  187. package/dist/reasoning/separation-logic/index.d.ts.map +1 -0
  188. package/dist/reasoning/separation-logic/index.js +779 -0
  189. package/dist/reasoning/separation-logic/index.js.map +1 -0
  190. package/dist/reasoning/set-theory/hf-functions.js +3 -3
  191. package/dist/reasoning/set-theory/hf-sets.js +1 -1
  192. package/dist/reasoning/set-theory/index.d.ts +3 -3
  193. package/dist/reasoning/set-theory/index.d.ts.map +1 -1
  194. package/dist/reasoning/set-theory/zfc-axioms.js +4 -4
  195. package/dist/reasoning/tactic-dsl/tactics.d.ts +87 -0
  196. package/dist/reasoning/tactic-dsl/tactics.d.ts.map +1 -1
  197. package/dist/reasoning/tactic-dsl/tactics.js +86 -36
  198. package/dist/reasoning/tactic-dsl/tactics.js.map +1 -1
  199. package/dist/reasoning/topology/index.d.ts +81 -0
  200. package/dist/reasoning/topology/index.d.ts.map +1 -1
  201. package/dist/reasoning/topology/index.js +69 -45
  202. package/dist/reasoning/topology/index.js.map +1 -1
  203. package/dist/reasoning/universal-algebra/index.d.ts +196 -0
  204. package/dist/reasoning/universal-algebra/index.d.ts.map +1 -0
  205. package/dist/reasoning/universal-algebra/index.js +865 -0
  206. package/dist/reasoning/universal-algebra/index.js.map +1 -0
  207. package/dist/runtime/countermodel-min/minimize.js +0 -0
  208. package/dist/runtime/countermodel-min/minimize.js.map +1 -1
  209. package/dist/runtime/csp-hoare/semantics.d.ts +12 -0
  210. package/dist/runtime/csp-hoare/semantics.d.ts.map +1 -1
  211. package/dist/runtime/csp-hoare/semantics.js +12 -0
  212. package/dist/runtime/csp-hoare/semantics.js.map +1 -1
  213. package/dist/runtime/symbolic-diff/constructors.d.ts +20 -0
  214. package/dist/runtime/symbolic-diff/constructors.d.ts.map +1 -1
  215. package/dist/runtime/symbolic-diff/constructors.js +20 -0
  216. package/dist/runtime/symbolic-diff/constructors.js.map +1 -1
  217. package/dist/runtime/term-rewriting/term-utils.d.ts.map +1 -1
  218. package/dist/runtime/term-rewriting/term-utils.js +33 -2
  219. package/dist/runtime/term-rewriting/term-utils.js.map +1 -1
  220. package/dist/runtime/typecheck/checker.js +2 -2
  221. package/dist/runtime/typecheck/checker.js.map +1 -1
  222. package/dist/runtime/typecheck/levenshtein.js +1 -1
  223. package/dist/runtime/typecheck/levenshtein.js.map +1 -1
  224. package/dist/semantics/categorical/fin-set.d.ts.map +1 -1
  225. package/dist/semantics/categorical/fin-set.js +8 -1
  226. package/dist/semantics/categorical/fin-set.js.map +1 -1
  227. package/dist/semantics/categorical/free.d.ts.map +1 -1
  228. package/dist/semantics/categorical/free.js +8 -2
  229. package/dist/semantics/categorical/free.js.map +1 -1
  230. package/dist/semantics/categorical/limits.d.ts.map +1 -1
  231. package/dist/semantics/categorical/limits.js +13 -4
  232. package/dist/semantics/categorical/limits.js.map +1 -1
  233. package/dist/semantics/categorical/monoidal.d.ts.map +1 -1
  234. package/dist/semantics/categorical/monoidal.js +3 -1
  235. package/dist/semantics/categorical/monoidal.js.map +1 -1
  236. package/dist/semantics/text-layer/compiler.d.ts +46 -0
  237. package/dist/semantics/text-layer/compiler.d.ts.map +1 -1
  238. package/dist/semantics/text-layer/compiler.js +46 -11
  239. package/dist/semantics/text-layer/compiler.js.map +1 -1
  240. package/dist/solver/cdcl-v2/index.d.ts +8 -0
  241. package/dist/solver/cdcl-v2/index.d.ts.map +1 -1
  242. package/dist/solver/cdcl-v2/index.js +8 -0
  243. package/dist/solver/cdcl-v2/index.js.map +1 -1
  244. package/dist/solver/smt-z3/z3-wasm-backend.d.ts +0 -1
  245. package/dist/solver/smt-z3/z3-wasm-backend.d.ts.map +1 -1
  246. package/dist/solver/smt-z3/z3-wasm-backend.js +2 -3
  247. package/dist/solver/smt-z3/z3-wasm-backend.js.map +1 -1
  248. package/dist/tests/agora-integration-fixtures.test.js +7 -2
  249. package/dist/tests/agora-integration-fixtures.test.js.map +1 -1
  250. package/dist/tests/coverage-90/coverage-90-cdcl-v2-deep.test.d.ts +2 -0
  251. package/dist/tests/coverage-90/coverage-90-cdcl-v2-deep.test.d.ts.map +1 -0
  252. package/dist/tests/coverage-90/coverage-90-cdcl-v2-deep.test.js +123 -0
  253. package/dist/tests/coverage-90/coverage-90-cdcl-v2-deep.test.js.map +1 -0
  254. package/dist/tests/coverage-90/coverage-90-certificate-rules.test.d.ts +2 -0
  255. package/dist/tests/coverage-90/coverage-90-certificate-rules.test.d.ts.map +1 -0
  256. package/dist/tests/coverage-90/coverage-90-certificate-rules.test.js +172 -0
  257. package/dist/tests/coverage-90/coverage-90-certificate-rules.test.js.map +1 -0
  258. package/dist/tests/coverage-90/coverage-90-interpreter-extra.test.d.ts +2 -0
  259. package/dist/tests/coverage-90/coverage-90-interpreter-extra.test.d.ts.map +1 -0
  260. package/dist/tests/coverage-90/coverage-90-interpreter-extra.test.js +326 -0
  261. package/dist/tests/coverage-90/coverage-90-interpreter-extra.test.js.map +1 -0
  262. package/dist/tests/coverage-90/coverage-90-interpreter-features.test.d.ts +2 -0
  263. package/dist/tests/coverage-90/coverage-90-interpreter-features.test.d.ts.map +1 -0
  264. package/dist/tests/coverage-90/coverage-90-interpreter-features.test.js +418 -0
  265. package/dist/tests/coverage-90/coverage-90-interpreter-features.test.js.map +1 -0
  266. package/dist/tests/coverage-90/coverage-90-modal-temporal.test.d.ts +2 -0
  267. package/dist/tests/coverage-90/coverage-90-modal-temporal.test.d.ts.map +1 -0
  268. package/dist/tests/coverage-90/coverage-90-modal-temporal.test.js +162 -0
  269. package/dist/tests/coverage-90/coverage-90-modal-temporal.test.js.map +1 -0
  270. package/dist/tests/coverage-90/coverage-90-nk-prover.test.d.ts +2 -0
  271. package/dist/tests/coverage-90/coverage-90-nk-prover.test.d.ts.map +1 -0
  272. package/dist/tests/coverage-90/coverage-90-nk-prover.test.js +104 -0
  273. package/dist/tests/coverage-90/coverage-90-nk-prover.test.js.map +1 -0
  274. package/dist/tests/coverage-90/coverage-90-parser-deep.test.d.ts +2 -0
  275. package/dist/tests/coverage-90/coverage-90-parser-deep.test.d.ts.map +1 -0
  276. package/dist/tests/coverage-90/coverage-90-parser-deep.test.js +262 -0
  277. package/dist/tests/coverage-90/coverage-90-parser-deep.test.js.map +1 -0
  278. package/dist/tests/coverage-90/coverage-90-sat-engines.test.d.ts +2 -0
  279. package/dist/tests/coverage-90/coverage-90-sat-engines.test.d.ts.map +1 -0
  280. package/dist/tests/coverage-90/coverage-90-sat-engines.test.js +101 -0
  281. package/dist/tests/coverage-90/coverage-90-sat-engines.test.js.map +1 -0
  282. package/dist/tests/coverage-90/coverage-90-sequent-lk.test.d.ts +2 -0
  283. package/dist/tests/coverage-90/coverage-90-sequent-lk.test.d.ts.map +1 -0
  284. package/dist/tests/coverage-90/coverage-90-sequent-lk.test.js +219 -0
  285. package/dist/tests/coverage-90/coverage-90-sequent-lk.test.js.map +1 -0
  286. package/dist/tests/coverage-90/coverage-90-smt-lib-parser.test.d.ts +2 -0
  287. package/dist/tests/coverage-90/coverage-90-smt-lib-parser.test.d.ts.map +1 -0
  288. package/dist/tests/coverage-90/coverage-90-smt-lib-parser.test.js +154 -0
  289. package/dist/tests/coverage-90/coverage-90-smt-lib-parser.test.js.map +1 -0
  290. package/dist/tests/coverage-95/first-order.test.js.map +1 -1
  291. package/dist/tests/coverage-95/fol-prover.test.js.map +1 -1
  292. package/dist/tests/integration/cross-modules.test.js +43 -19
  293. package/dist/tests/integration/cross-modules.test.js.map +1 -1
  294. package/dist/tests/logic/ctl/check.test.js.map +1 -1
  295. package/dist/tests/logic/profile-bridge/translations.test.js +3 -3
  296. package/dist/tests/logic/profile-bridge/translations.test.js.map +1 -1
  297. package/dist/tests/logic/profiles/sequent-lj/lj.test.d.ts +2 -0
  298. package/dist/tests/logic/profiles/sequent-lj/lj.test.d.ts.map +1 -0
  299. package/dist/tests/logic/profiles/sequent-lj/lj.test.js +400 -0
  300. package/dist/tests/logic/profiles/sequent-lj/lj.test.js.map +1 -0
  301. package/dist/tests/logic/sequent-g3/prover.test.js.map +1 -1
  302. package/dist/tests/logic/substructural/prover.test.js.map +1 -1
  303. package/dist/tests/proof-systems/fol-prover-advanced/prover.test.js +40 -13
  304. package/dist/tests/proof-systems/fol-prover-advanced/prover.test.js.map +1 -1
  305. package/dist/tests/proof-systems/higher-order-unify/ho-unify.test.js.map +1 -1
  306. package/dist/tests/proof-systems/tableau-framework/tableau.test.js +8 -8
  307. package/dist/tests/proof-systems/tableau-framework/tableau.test.js.map +1 -1
  308. package/dist/tests/properties/agm.property.test.js +1 -1
  309. package/dist/tests/properties/agm.property.test.js.map +1 -1
  310. package/dist/tests/properties/anti-unification.property.test.js.map +1 -1
  311. package/dist/tests/properties/argumentation.property.test.js.map +1 -1
  312. package/dist/tests/properties/bisimulation.property.test.js.map +1 -1
  313. package/dist/tests/properties/cdcl.property.test.js.map +1 -1
  314. package/dist/tests/properties/coinduction.property.test.js.map +1 -1
  315. package/dist/tests/properties/constructive-reals.property.test.js.map +1 -1
  316. package/dist/tests/properties/csp.property.test.js +1 -3
  317. package/dist/tests/properties/csp.property.test.js.map +1 -1
  318. package/dist/tests/properties/generators.d.ts +1 -1
  319. package/dist/tests/properties/generators.d.ts.map +1 -1
  320. package/dist/tests/properties/generators.js +22 -30
  321. package/dist/tests/properties/generators.js.map +1 -1
  322. package/dist/tests/properties/intuit-nj.property.test.js +3 -1
  323. package/dist/tests/properties/intuit-nj.property.test.js.map +1 -1
  324. package/dist/tests/properties/lambda-calc.property.test.js.map +1 -1
  325. package/dist/tests/properties/mln.property.test.js +1 -3
  326. package/dist/tests/properties/mln.property.test.js.map +1 -1
  327. package/dist/tests/properties/planning.property.test.js.map +1 -1
  328. package/dist/tests/properties/profile-bridge.property.test.js.map +1 -1
  329. package/dist/tests/properties/theorem-cache.property.test.js.map +1 -1
  330. package/dist/tests/protocol-text-layer.test.js.map +1 -1
  331. package/dist/tests/reasoning/combinatorics/combinatorics.test.js +1 -1
  332. package/dist/tests/reasoning/constructive-analysis/constructive-analysis.test.js +9 -9
  333. package/dist/tests/reasoning/constructive-analysis/constructive-analysis.test.js.map +1 -1
  334. package/dist/tests/reasoning/hoare-logic/hoare-logic.test.d.ts +2 -0
  335. package/dist/tests/reasoning/hoare-logic/hoare-logic.test.d.ts.map +1 -0
  336. package/dist/tests/reasoning/hoare-logic/hoare-logic.test.js +340 -0
  337. package/dist/tests/reasoning/hoare-logic/hoare-logic.test.js.map +1 -0
  338. package/dist/tests/reasoning/linear-algebra/linear-algebra.test.js +80 -38
  339. package/dist/tests/reasoning/linear-algebra/linear-algebra.test.js.map +1 -1
  340. package/dist/tests/reasoning/model-checking/model-checking.test.d.ts +2 -0
  341. package/dist/tests/reasoning/model-checking/model-checking.test.d.ts.map +1 -0
  342. package/dist/tests/reasoning/model-checking/model-checking.test.js +222 -0
  343. package/dist/tests/reasoning/model-checking/model-checking.test.js.map +1 -0
  344. package/dist/tests/reasoning/order-theory/order-theory.test.d.ts +2 -0
  345. package/dist/tests/reasoning/order-theory/order-theory.test.d.ts.map +1 -0
  346. package/dist/tests/reasoning/order-theory/order-theory.test.js +211 -0
  347. package/dist/tests/reasoning/order-theory/order-theory.test.js.map +1 -0
  348. package/dist/tests/reasoning/peano-arithmetic/peano.test.d.ts +2 -0
  349. package/dist/tests/reasoning/peano-arithmetic/peano.test.d.ts.map +1 -0
  350. package/dist/tests/reasoning/peano-arithmetic/peano.test.js +159 -0
  351. package/dist/tests/reasoning/peano-arithmetic/peano.test.js.map +1 -0
  352. package/dist/tests/reasoning/separation-logic/separation-logic.test.d.ts +2 -0
  353. package/dist/tests/reasoning/separation-logic/separation-logic.test.d.ts.map +1 -0
  354. package/dist/tests/reasoning/separation-logic/separation-logic.test.js +311 -0
  355. package/dist/tests/reasoning/separation-logic/separation-logic.test.js.map +1 -0
  356. package/dist/tests/reasoning/set-theory/hf-functions.test.js +11 -11
  357. package/dist/tests/reasoning/set-theory/zfc-axioms.test.js +1 -1
  358. package/dist/tests/reasoning/universal-algebra/universal-algebra.test.d.ts +2 -0
  359. package/dist/tests/reasoning/universal-algebra/universal-algebra.test.d.ts.map +1 -0
  360. package/dist/tests/reasoning/universal-algebra/universal-algebra.test.js +289 -0
  361. package/dist/tests/reasoning/universal-algebra/universal-algebra.test.js.map +1 -0
  362. package/dist/tests/semantics/text-layer-v2/claim-graph.test.js.map +1 -1
  363. package/dist/tests/solver/smt-lib/emitter.test.js.map +1 -1
  364. package/dist/tests/solver/smt-z3/z3-wasm-backend.test.js.map +1 -1
  365. package/dist/tests/tooling/test-harness/test-harness.test.js +9 -6
  366. package/dist/tests/tooling/test-harness/test-harness.test.js.map +1 -1
  367. package/dist/tooling/lsp/types.d.ts +13 -0
  368. package/dist/tooling/lsp/types.d.ts.map +1 -1
  369. package/dist/tooling/lsp/types.js +1 -0
  370. package/dist/tooling/lsp/types.js.map +1 -1
  371. package/dist/tooling/test-harness/combinators.d.ts.map +1 -1
  372. package/dist/tooling/test-harness/combinators.js +4 -4
  373. package/dist/tooling/test-harness/combinators.js.map +1 -1
  374. package/dist/tooling/test-harness/coverage.js +1 -1
  375. package/dist/tooling/test-harness/generators.d.ts.map +1 -1
  376. package/dist/tooling/test-harness/generators.js.map +1 -1
  377. package/dist/tooling/test-harness/index.d.ts +1 -1
  378. package/dist/tooling/test-harness/index.d.ts.map +1 -1
  379. package/dist/tooling/test-harness/index.js.map +1 -1
  380. package/dist/tooling/test-harness/snapshot.d.ts.map +1 -1
  381. package/dist/tooling/test-harness/snapshot.js +2 -2
  382. package/dist/tooling/test-harness/snapshot.js.map +1 -1
  383. package/dist/type-theory/cubical/types.d.ts +25 -0
  384. package/dist/type-theory/cubical/types.d.ts.map +1 -1
  385. package/dist/type-theory/cubical/types.js +20 -0
  386. package/dist/type-theory/cubical/types.js.map +1 -1
  387. package/dist/type-theory/curry-howard/types.d.ts +27 -0
  388. package/dist/type-theory/curry-howard/types.d.ts.map +1 -1
  389. package/dist/type-theory/curry-howard/types.js +18 -0
  390. package/dist/type-theory/curry-howard/types.js.map +1 -1
  391. package/dist/type-theory/hindley-milner/substitution.d.ts +39 -0
  392. package/dist/type-theory/hindley-milner/substitution.d.ts.map +1 -1
  393. package/dist/type-theory/hindley-milner/substitution.js +37 -0
  394. package/dist/type-theory/hindley-milner/substitution.js.map +1 -1
  395. package/dist/type-theory/hindley-milner/types.d.ts +25 -0
  396. package/dist/type-theory/hindley-milner/types.d.ts.map +1 -1
  397. package/dist/type-theory/hindley-milner/types.js +22 -2
  398. package/dist/type-theory/hindley-milner/types.js.map +1 -1
  399. package/dist/type-theory/hol/rules.d.ts +36 -0
  400. package/dist/type-theory/hol/rules.d.ts.map +1 -1
  401. package/dist/type-theory/hol/rules.js +36 -0
  402. package/dist/type-theory/hol/rules.js.map +1 -1
  403. package/dist/type-theory/hott/types.d.ts +32 -0
  404. package/dist/type-theory/hott/types.d.ts.map +1 -1
  405. package/dist/type-theory/hott/types.js +31 -1
  406. package/dist/type-theory/hott/types.js.map +1 -1
  407. package/dist/type-theory/lambda-cube/types.d.ts +17 -0
  408. package/dist/type-theory/lambda-cube/types.d.ts.map +1 -1
  409. package/dist/type-theory/lambda-cube/types.js +13 -0
  410. package/dist/type-theory/lambda-cube/types.js.map +1 -1
  411. package/dist/type-theory/mltt/types.d.ts +19 -0
  412. package/dist/type-theory/mltt/types.d.ts.map +1 -1
  413. package/dist/type-theory/mltt/types.js +15 -1
  414. package/dist/type-theory/mltt/types.js.map +1 -1
  415. package/dist/type-theory/nbe/types.d.ts +21 -0
  416. package/dist/type-theory/nbe/types.d.ts.map +1 -1
  417. package/dist/type-theory/nbe/types.js +13 -1
  418. package/dist/type-theory/nbe/types.js.map +1 -1
  419. package/dist/type-theory/refinement-types/types.d.ts +38 -0
  420. package/dist/type-theory/refinement-types/types.d.ts.map +1 -1
  421. package/dist/type-theory/refinement-types/types.js +35 -0
  422. package/dist/type-theory/refinement-types/types.js.map +1 -1
  423. package/dist/type-theory/system-f/types.d.ts +30 -0
  424. package/dist/type-theory/system-f/types.d.ts.map +1 -1
  425. package/dist/type-theory/system-f/types.js +24 -3
  426. package/dist/type-theory/system-f/types.js.map +1 -1
  427. package/dist/types/index.d.ts +42 -0
  428. package/dist/types/index.d.ts.map +1 -1
  429. package/dist/types/index.js.map +1 -1
  430. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/reasoning/hyperreal/index.ts"],"names":[],"mappings":"AAoCA,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAChC;AAED,wBAAgB,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,aAAa,GAAE,MAAU,GAAG,SAAS,CAEzE;AAED,eAAO,MAAM,OAAO,EAAE,SAA6C,CAAC;AACpE,eAAO,MAAM,MAAM,EAAE,SAA6C,CAAC;AACnE,eAAO,MAAM,UAAU,EAAE,SAA6C,CAAC;AAIvE,wBAAgB,GAAG,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,SAAS,CAKzD;AAED,wBAAgB,GAAG,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,SAAS,CAKzD;AAED,wBAAgB,GAAG,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,SAAS,CAMzD;AAED;;;;;;;GAOG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAS9D;AAED,wBAAgB,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,OAAO,CAEtD;AAED,wBAAgB,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,OAAO,CAEtD;AAED,wBAAgB,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,OAAO,CAEtD;AAID,wBAAgB,KAAK,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,SAAS,CAE3D;AAED,wBAAgB,IAAI,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,SAAS,CAE1D;AAED,wBAAgB,KAAK,CAAC,CAAC,EAAE,SAAS,GAAG,SAAS,CAE7C;AAED,wBAAgB,SAAS,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,SAAS,CAG/D;AAID,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;CAC3B;AAED,wBAAgB,KAAK,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,GAAG,gBAAgB,CAO1E;AAED;;;;;;;;;GASG;AACH,wBAAgB,SAAS,CACvB,CAAC,EAAE,gBAAgB,EACnB,EAAE,EAAE,KAAK,GAAG,IAAI,GAAG,KAAK,GAAG,SAAS,EACpC,KAAK,CAAC,EAAE,gBAAgB,GACvB,gBAAgB,CA8BlB;AAID,wBAAgB,UAAU,CAAC,CAAC,EAAE,SAAS,GAAG,MAAM,CAK/C"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/reasoning/hyperreal/index.ts"],"names":[],"mappings":"AAoCA;;;GAGG;AACH,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAChC;AAED;;;GAGG;AACH,wBAAgB,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,aAAa,GAAE,MAAU,GAAG,SAAS,CAEzE;AAED,kCAAkC;AAClC,eAAO,MAAM,OAAO,EAAE,SAA6C,CAAC;AACpE,iCAAiC;AACjC,eAAO,MAAM,MAAM,EAAE,SAA6C,CAAC;AACnE,0CAA0C;AAC1C,eAAO,MAAM,UAAU,EAAE,SAA6C,CAAC;AAIvE,iDAAiD;AACjD,wBAAgB,GAAG,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,SAAS,CAKzD;AAED,oDAAoD;AACpD,wBAAgB,GAAG,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,SAAS,CAKzD;AAED;;;GAGG;AACH,wBAAgB,GAAG,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,SAAS,CAMzD;AAED;;;;;;;GAOG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAS9D;AAED,+EAA+E;AAC/E,wBAAgB,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,OAAO,CAEtD;AAED,0DAA0D;AAC1D,wBAAgB,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,OAAO,CAEtD;AAED,0DAA0D;AAC1D,wBAAgB,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,OAAO,CAEtD;AAID,0CAA0C;AAC1C,wBAAgB,KAAK,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,SAAS,CAE3D;AAED,qEAAqE;AACrE,wBAAgB,IAAI,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,SAAS,CAE1D;AAED,uCAAuC;AACvC,wBAAgB,KAAK,CAAC,CAAC,EAAE,SAAS,GAAG,SAAS,CAE7C;AAED,mDAAmD;AACnD,wBAAgB,SAAS,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,SAAS,CAG/D;AAID,qEAAqE;AACrE,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;CAC3B;AAED;;;GAGG;AACH,wBAAgB,KAAK,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,GAAG,gBAAgB,CAO1E;AAED;;;;;;;;;GASG;AACH,wBAAgB,SAAS,CACvB,CAAC,EAAE,gBAAgB,EACnB,EAAE,EAAE,KAAK,GAAG,IAAI,GAAG,KAAK,GAAG,SAAS,EACpC,KAAK,CAAC,EAAE,gBAAgB,GACvB,gBAAgB,CA8BlB;AAID,4FAA4F;AAC5F,wBAAgB,UAAU,CAAC,CAAC,EAAE,SAAS,GAAG,MAAM,CAK/C"}
@@ -51,25 +51,38 @@ exports.hrImplies = hrImplies;
51
51
  exports.bound = bound;
52
52
  exports.propagate = propagate;
53
53
  exports.hrToString = hrToString;
54
+ /**
55
+ * Constructs a {@link Hyperreal} from its standard and optional infinitesimal parts.
56
+ * `hr(x)` produces the standard real `x + 0ε`.
57
+ */
54
58
  function hr(standard, infinitesimal = 0) {
55
59
  return { standard, infinitesimal };
56
60
  }
61
+ /** The hyperreal zero: 0 + 0ε. */
57
62
  exports.HR_ZERO = { standard: 0, infinitesimal: 0 };
63
+ /** The hyperreal one: 1 + 0ε. */
58
64
  exports.HR_ONE = { standard: 1, infinitesimal: 0 };
65
+ /** The formal infinitesimal ε: 0 + 1ε. */
59
66
  exports.HR_EPSILON = { standard: 0, infinitesimal: 1 };
60
67
  // ── Aritmética ──────────────────────────────────────────────
68
+ /** Returns `a + b` (component-wise addition). */
61
69
  function add(a, b) {
62
70
  return {
63
71
  standard: a.standard + b.standard,
64
72
  infinitesimal: a.infinitesimal + b.infinitesimal,
65
73
  };
66
74
  }
75
+ /** Returns `a - b` (component-wise subtraction). */
67
76
  function sub(a, b) {
68
77
  return {
69
78
  standard: a.standard - b.standard,
70
79
  infinitesimal: a.infinitesimal - b.infinitesimal,
71
80
  };
72
81
  }
82
+ /**
83
+ * Returns `a * b`, discarding O(ε²) terms:
84
+ * `(a.s + a.i ε)(b.s + b.i ε) = a.s·b.s + (a.s·b.i + a.i·b.s)·ε`.
85
+ */
73
86
  function mul(a, b) {
74
87
  // (a.s + a.i ε)(b.s + b.i ε) = a.s·b.s + (a.s·b.i + a.i·b.s)·ε + O(ε²)
75
88
  return {
@@ -99,29 +112,40 @@ function compare(a, b) {
99
112
  return -1;
100
113
  return 0;
101
114
  }
115
+ /** Returns `true` when `a` and `b` are equal under the lexicographic order. */
102
116
  function eq(a, b) {
103
117
  return compare(a, b) === 0;
104
118
  }
119
+ /** Returns `true` when `a < b` in the hyperreal order. */
105
120
  function lt(a, b) {
106
121
  return compare(a, b) < 0;
107
122
  }
123
+ /** Returns `true` when `a > b` in the hyperreal order. */
108
124
  function gt(a, b) {
109
125
  return compare(a, b) > 0;
110
126
  }
111
127
  // ── Lógica probabilística hiperreal ─────────────────────────
128
+ /** Probabilistic AND: `p ∧ q = p · q`. */
112
129
  function hrAnd(p, q) {
113
130
  return mul(p, q);
114
131
  }
132
+ /** Probabilistic OR (inclusion-exclusion): `p ∨ q = p + q − p·q`. */
115
133
  function hrOr(p, q) {
116
134
  return sub(add(p, q), mul(p, q));
117
135
  }
136
+ /** Probabilistic NOT: `¬p = 1 − p`. */
118
137
  function hrNot(p) {
119
138
  return sub(exports.HR_ONE, p);
120
139
  }
140
+ /** Probabilistic implication: `p → q = ¬p ∨ q`. */
121
141
  function hrImplies(p, q) {
122
142
  // p → q ≡ ¬p ∨ q
123
143
  return hrOr(hrNot(p), q);
124
144
  }
145
+ /**
146
+ * Constructs a validated {@link UncertaintyBound}.
147
+ * @throws When `lower > upper` in the hyperreal order.
148
+ */
125
149
  function bound(lower, upper) {
126
150
  if (compare(lower, upper) > 0) {
127
151
  throw new Error(`UncertaintyBound inválido: lower (${lower.standard}+${lower.infinitesimal}ε) > upper (${upper.standard}+${upper.infinitesimal}ε)`);
@@ -173,6 +197,7 @@ function propagate(b, op, other) {
173
197
  }
174
198
  }
175
199
  // ── Utilidades de depuración ────────────────────────────────
200
+ /** Returns a human-readable string like `"0.9 + 3ε"` or `"1"` (when infinitesimal is 0). */
176
201
  function hrToString(x) {
177
202
  if (x.infinitesimal === 0)
178
203
  return `${x.standard}`;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/reasoning/hyperreal/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/reasoning/hyperreal/index.ts"],"names":[],"mappings":"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"}
@@ -1,25 +1,59 @@
1
+ /** Distribución de probabilidad discreta sobre símbolos de tipo `T` (`Map<T, number>`, masa ≈ 1). */
1
2
  export type Distribution<T> = Map<T, number>;
3
+ /**
4
+ * Distribución conjunta sobre pares (X, Y).
5
+ * Nota: `Map<[X, Y], number>` no des-duplica por igualdad estructural;
6
+ * el llamante debe garantizar un par por combinación (x, y).
7
+ */
2
8
  export type Joint<X, Y> = Map<[X, Y], number>;
9
+ /** Devuelve los símbolos con probabilidad estrictamente positiva (soporte de `p`). */
3
10
  export declare function support<T>(p: Distribution<T>): T[];
11
+ /** `true` si todas las probabilidades son ≥ 0, finitas y su suma difiere de 1 en menos de `eps`. */
4
12
  export declare function isValidDistribution<T>(p: Distribution<T>, eps?: number): boolean;
13
+ /**
14
+ * Reescala la distribución `p` para que su masa sea 1.
15
+ * @throws si alguna probabilidad es inválida o la masa total es 0.
16
+ */
5
17
  export declare function normalize<T>(p: Distribution<T>): Distribution<T>;
18
+ /** Base del logaritmo para entropías: `2` (bits, default), `'e'` (nats), `10` (hartleys), `'log'` (alias de 2). */
6
19
  export type LogBase = 'log' | 'e' | 2 | 10;
20
+ /** Entropía de Shannon: H(p) = −Σ p(x)·log p(x). Convención: 0·log 0 = 0. */
7
21
  export declare function shannonEntropy<T>(p: Distribution<T>, base?: LogBase): number;
22
+ /**
23
+ * Entropía de Rényi de orden `alpha` (α ≥ 0): H_α(p) = 1/(1−α)·log Σ p(x)^α.
24
+ * Límites: α=0 → max-entropy, α=1 → Shannon, α=2 → colisión, α→∞ → min-entropy.
25
+ * @throws si `alpha` es negativo o no finito.
26
+ */
8
27
  export declare function renyiEntropy<T>(p: Distribution<T>, alpha: number, base?: LogBase): number;
28
+ /** Min-entropy: −log max_x p(x). Mide la peor predictibilidad en un solo intento. */
9
29
  export declare function minEntropy<T>(p: Distribution<T>, base?: LogBase): number;
30
+ /** Max-entropy (Hartley): log|soporte(p)|, el logaritmo del tamaño del soporte estricto. */
10
31
  export declare function maxEntropy<T>(p: Distribution<T>, base?: LogBase): number;
32
+ /** Entropía de colisión: Rényi α=2 = −log Σ p(x)². Mide la probabilidad de dos muestras iguales. */
11
33
  export declare function collisionEntropy<T>(p: Distribution<T>, base?: LogBase): number;
34
+ /** Divergencia KL: KL(p ‖ q) = Σ p(x)·log(p(x)/q(x)). Devuelve +∞ si p(x)>0 y q(x)=0. */
12
35
  export declare function klDivergence<T>(p: Distribution<T>, q: Distribution<T>, base?: LogBase): number;
36
+ /** Divergencia Jensen-Shannon: JS(p,q) = ½ KL(p ‖ m) + ½ KL(q ‖ m), m = ½(p+q). Simétrica, ∈ [0, log 2]. */
13
37
  export declare function jsDivergence<T>(p: Distribution<T>, q: Distribution<T>, base?: LogBase): number;
38
+ /** Distancia de variación total: TV(p,q) = ½ Σ |p(x) − q(x)|. ∈ [0, 1]. */
14
39
  export declare function tvDistance<T>(p: Distribution<T>, q: Distribution<T>): number;
40
+ /** Distancia de Hellinger: H(p,q) = (1/√2)·√(Σ (√p(x) − √q(x))²). ∈ [0, 1]; 0 ⟺ p = q; 1 ⟺ soportes disjuntos. */
15
41
  export declare function hellingerDistance<T>(p: Distribution<T>, q: Distribution<T>): number;
42
+ /** Cross-entropía: H(p,q) = −Σ p(x)·log q(x) = H(p) + KL(p ‖ q). Devuelve +∞ si p(x)>0 y q(x)=0. */
16
43
  export declare function crossEntropy<T>(p: Distribution<T>, q: Distribution<T>, base?: LogBase): number;
44
+ /** Proyecta la distribución conjunta `j` sobre cada eje, devolviendo las marginales `X` e `Y`. */
17
45
  export declare function jointToMarginals<X, Y>(j: Joint<X, Y>): {
18
46
  X: Distribution<X>;
19
47
  Y: Distribution<Y>;
20
48
  };
49
+ /** Información mutua I(X;Y) = Σ p(x,y)·log(p(x,y)/(p(x)·p(y))) = H(X) + H(Y) − H(X,Y). */
21
50
  export declare function mutualInformation<X, Y>(j: Joint<X, Y>, base?: LogBase): number;
51
+ /** Entropía condicional H(X|Y) o H(Y|X) según `condOn`. H(X|Y) = H(X,Y) − H(Y) ≥ 0. */
22
52
  export declare function conditionalEntropy<X, Y>(j: Joint<X, Y>, condOn: 'X' | 'Y', base?: LogBase): number;
53
+ /**
54
+ * Devuelve los cuatro escalares {hX, hY, hXY, iXY} de la regla de la cadena.
55
+ * Verifica: H(X,Y) = H(X) + H(Y) − I(X;Y).
56
+ */
23
57
  export declare function chainRule<X, Y>(j: Joint<X, Y>, base?: LogBase): {
24
58
  hX: number;
25
59
  hY: number;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/reasoning/information-theory/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/reasoning/information-theory/index.ts"],"names":[],"mappings":"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"}
@@ -42,8 +42,7 @@ const EPS_DEFAULT = 1e-9;
42
42
  // ------------------------------------------------------------
43
43
  // Soporte y validación
44
44
  // ------------------------------------------------------------
45
- // Devuelve los símbolos con probabilidad estrictamente positiva, en el
46
- // orden en que aparecen en el Map (orden de inserción, estable).
45
+ /** Devuelve los símbolos con probabilidad estrictamente positiva (soporte de `p`). */
47
46
  function support(p) {
48
47
  const out = [];
49
48
  for (const [k, v] of p) {
@@ -52,8 +51,7 @@ function support(p) {
52
51
  }
53
52
  return out;
54
53
  }
55
- // True si todas las probabilidades son finitas y ≥ 0, y la suma está a
56
- // menos de `eps` de 1. Probabilidades negativas o NaN ⇒ false.
54
+ /** `true` si todas las probabilidades son ≥ 0, finitas y su suma difiere de 1 en menos de `eps`. */
57
55
  function isValidDistribution(p, eps = EPS_DEFAULT) {
58
56
  let sum = 0;
59
57
  for (const v of p.values()) {
@@ -63,8 +61,10 @@ function isValidDistribution(p, eps = EPS_DEFAULT) {
63
61
  }
64
62
  return Math.abs(sum - 1) <= eps;
65
63
  }
66
- // Reescala la distribución a masa 1. Si la suma actual es 0, lanza:
67
- // no hay forma canónica de "normalizar" la distribución nula.
64
+ /**
65
+ * Reescala la distribución `p` para que su masa sea 1.
66
+ * @throws si alguna probabilidad es inválida o la masa total es 0.
67
+ */
68
68
  function normalize(p) {
69
69
  let sum = 0;
70
70
  for (const v of p.values()) {
@@ -97,8 +97,7 @@ function logIn(base) {
97
97
  // ------------------------------------------------------------
98
98
  // Entropías
99
99
  // ------------------------------------------------------------
100
- // Shannon: H(p) = p(x) · log p(x).
101
- // Convención lim_{x→0} x·log x = 0 ⇒ los símbolos con masa 0 no aportan.
100
+ /** Entropía de Shannon: H(p) = −Σ p(x)·log p(x). Convención: 0·log 0 = 0. */
102
101
  function shannonEntropy(p, base = 2) {
103
102
  const log = logIn(base);
104
103
  let h = 0;
@@ -109,17 +108,11 @@ function shannonEntropy(p, base = 2) {
109
108
  }
110
109
  return h;
111
110
  }
112
- // Rényi de orden α (α ≥ 0, α ≠ 1):
113
- // H_α(p) = 1/(1) · log Σ p(x)
114
- //
115
- // Casos especiales:
116
- // α = 0 → log |sop(p)| (Hartley / max-entropy del soporte)
117
- // α = 1 → Shannon (límite L'Hôpital — devolvemos Shannon)
118
- // α = 2 → -log Σ p(x)^2 (entropía de colisión)
119
- // α → ∞ → -log max p(x) (min-entropy)
120
- //
121
- // `alpha` debe ser un número real finito y ≥ 0. α negativos no son
122
- // entropías de Rényi estándar y no se aceptan.
111
+ /**
112
+ * Entropía de Rényi de orden `alpha` (α ≥ 0): H_α(p) = 1/(1−α)·log Σ p(x)^α.
113
+ * Límites: α=0 → max-entropy, α=1 → Shannon, α=2 → colisión, α→∞ → min-entropy.
114
+ * @throws si `alpha` es negativo o no finito.
115
+ */
123
116
  function renyiEntropy(p, alpha, base = 2) {
124
117
  if (!Number.isFinite(alpha) || alpha < 0) {
125
118
  throw new Error('renyiEntropy: α debe ser finito y ≥ 0');
@@ -138,7 +131,7 @@ function renyiEntropy(p, alpha, base = 2) {
138
131
  return 0;
139
132
  return log(s) / (1 - alpha);
140
133
  }
141
- // Min-entropy: -log max_x p(x). Mide la peor predictibilidad single-guess.
134
+ /** Min-entropy: log max_x p(x). Mide la peor predictibilidad en un solo intento. */
142
135
  function minEntropy(p, base = 2) {
143
136
  const log = logIn(base);
144
137
  let max = 0;
@@ -150,7 +143,7 @@ function minEntropy(p, base = 2) {
150
143
  return 0;
151
144
  return -log(max);
152
145
  }
153
- // Max-entropy: log|soporte(p)|. Hartley sobre el soporte estricto.
146
+ /** Max-entropy (Hartley): log|soporte(p)|, el logaritmo del tamaño del soporte estricto. */
154
147
  function maxEntropy(p, base = 2) {
155
148
  const log = logIn(base);
156
149
  const n = support(p).length;
@@ -158,7 +151,7 @@ function maxEntropy(p, base = 2) {
158
151
  return 0;
159
152
  return log(n);
160
153
  }
161
- // Entropía de colisión: Rényi α=2 = -log Σ p(x)^2.
154
+ /** Entropía de colisión: Rényi α=2 = log Σ p(x)². Mide la probabilidad de dos muestras iguales. */
162
155
  function collisionEntropy(p, base = 2) {
163
156
  const log = logIn(base);
164
157
  let s = 0;
@@ -173,9 +166,7 @@ function collisionEntropy(p, base = 2) {
173
166
  // ------------------------------------------------------------
174
167
  // Divergencias y distancias
175
168
  // ------------------------------------------------------------
176
- // KL(p ‖ q) = Σ p(x) · log(p(x)/q(x)).
177
- // Convención: p(x)=0 aporta 0; p(x)>0 y q(x)=0 ⇒ +Infinity.
178
- // Soporte sobre la unión de claves de p y q.
169
+ /** Divergencia KL: KL(p ‖ q) = Σ p(x)·log(p(x)/q(x)). Devuelve +∞ si p(x)>0 y q(x)=0. */
179
170
  function klDivergence(p, q, base = 2) {
180
171
  const log = logIn(base);
181
172
  let d = 0;
@@ -189,8 +180,7 @@ function klDivergence(p, q, base = 2) {
189
180
  }
190
181
  return d;
191
182
  }
192
- // Jensen-Shannon: JS(p,q) = ½ KL(p ‖ m) + ½ KL(q ‖ m), m = ½(p+q).
193
- // Simétrica y siempre finita en [0, log 2] (base 2 ⇒ [0, 1]).
183
+ /** Divergencia Jensen-Shannon: JS(p,q) = ½ KL(p ‖ m) + ½ KL(q ‖ m), m = ½(p+q). Simétrica, ∈ [0, log 2]. */
194
184
  function jsDivergence(p, q, base = 2) {
195
185
  const m = new Map();
196
186
  for (const [k, v] of p)
@@ -202,7 +192,7 @@ function jsDivergence(p, q, base = 2) {
202
192
  m.set(k, v / 2);
203
193
  return 0.5 * klDivergence(p, m, base) + 0.5 * klDivergence(q, m, base);
204
194
  }
205
- // Distancia de variación total: TV(p,q) = ½ Σ |p(x) - q(x)|. ∈ [0, 1].
195
+ /** Distancia de variación total: TV(p,q) = ½ Σ |p(x) q(x)|. ∈ [0, 1]. */
206
196
  function tvDistance(p, q) {
207
197
  const keys = new Set();
208
198
  for (const k of p.keys())
@@ -215,8 +205,7 @@ function tvDistance(p, q) {
215
205
  }
216
206
  return s / 2;
217
207
  }
218
- // Distancia de Hellinger: H(p,q) = (1/√2) · sqrt(Σ (√p(x) - √q(x))²).
219
- // ∈ [0, 1]; 0 sii p=q; 1 sii soportes disjuntos.
208
+ /** Distancia de Hellinger: H(p,q) = (1/√2)·√(Σ (√p(x) √q(x))²). ∈ [0, 1]; 0 ⟺ p = q; 1 ⟺ soportes disjuntos. */
220
209
  function hellingerDistance(p, q) {
221
210
  const keys = new Set();
222
211
  for (const k of p.keys())
@@ -235,8 +224,7 @@ function hellingerDistance(p, q) {
235
224
  // ------------------------------------------------------------
236
225
  // Cross-entropy
237
226
  // ------------------------------------------------------------
238
- // H(p, q) = p(x) · log q(x) = H(p) + KL(p ‖ q).
239
- // Devuelve +∞ si existe x con p(x) > 0 y q(x) = 0.
227
+ /** Cross-entropía: H(p,q) = −Σ p(x)·log q(x) = H(p) + KL(p ‖ q). Devuelve +∞ si p(x)>0 y q(x)=0. */
240
228
  function crossEntropy(p, q, base = 2) {
241
229
  const log = logIn(base);
242
230
  let h = 0;
@@ -253,10 +241,7 @@ function crossEntropy(p, q, base = 2) {
253
241
  // ------------------------------------------------------------
254
242
  // Distribuciones conjuntas e información mutua
255
243
  // ------------------------------------------------------------
256
- // Proyecta la conjunta sobre cada eje. Devuelve dos distribuciones
257
- // (marginales) tal que Σ joint(x,y) = X(x) = Σ_y joint(x,y), etc.
258
- // Si dos claves de la conjunta tienen el mismo par lógico (mismas X y
259
- // Y por referencia/valor), sus masas se suman en las marginales.
244
+ /** Proyecta la distribución conjunta `j` sobre cada eje, devolviendo las marginales `X` e `Y`. */
260
245
  function jointToMarginals(j) {
261
246
  const mX = new Map();
262
247
  const mY = new Map();
@@ -278,10 +263,7 @@ function jointEntropy(j, base) {
278
263
  }
279
264
  return h;
280
265
  }
281
- // I(X; Y) = Σ_xy p(x,y) · log( p(x,y) / (p(x)·p(y)) ).
282
- // Equivalentemente: I(X;Y) = H(X) + H(Y) − H(X,Y).
283
- // Usamos la forma sumatoria directa para mantener invariancia ante
284
- // reordenamiento numérico de los marginales y evitar restas catastróficas.
266
+ /** Información mutua I(X;Y) = Σ p(x,y)·log(p(x,y)/(p(x)·p(y))) = H(X) + H(Y) − H(X,Y). */
285
267
  function mutualInformation(j, base = 2) {
286
268
  const log = logIn(base);
287
269
  const { X: mX, Y: mY } = jointToMarginals(j);
@@ -299,8 +281,7 @@ function mutualInformation(j, base = 2) {
299
281
  // dar -1e-16 por redondeo en distribuciones independientes).
300
282
  return mi < 0 && mi > -1e-12 ? 0 : mi;
301
283
  }
302
- // H(X|Y) o H(Y|X) según `condOn`.
303
- // H(X|Y) = H(X,Y) − H(Y); H(Y|X) = H(X,Y) − H(X). Ambas ≥ 0.
284
+ /** Entropía condicional H(X|Y) o H(Y|X) según `condOn`. H(X|Y) = H(X,Y) − H(Y) ≥ 0. */
304
285
  function conditionalEntropy(j, condOn, base = 2) {
305
286
  const hXY = jointEntropy(j, base);
306
287
  const { X: mX, Y: mY } = jointToMarginals(j);
@@ -309,8 +290,10 @@ function conditionalEntropy(j, condOn, base = 2) {
309
290
  const out = condOn === 'X' ? hXY - hY : hXY - hX;
310
291
  return out < 0 && out > -1e-12 ? 0 : out;
311
292
  }
312
- // Cuatro escalares clásicos: H(X), H(Y), H(X,Y), I(X;Y). Útil para
313
- // verificar la regla de la cadena: H(X,Y) = H(X) + H(Y) I(X;Y).
293
+ /**
294
+ * Devuelve los cuatro escalares {hX, hY, hXY, iXY} de la regla de la cadena.
295
+ * Verifica: H(X,Y) = H(X) + H(Y) − I(X;Y).
296
+ */
314
297
  function chainRule(j, base = 2) {
315
298
  const { X: mX, Y: mY } = jointToMarginals(j);
316
299
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/reasoning/information-theory/index.ts"],"names":[],"mappings":";AAAA,+DAA+D;AAC/D,8DAA8D;AAC9D,+DAA+D;AAC/D,EAAE;AACF,uEAAuE;AACvE,qBAAqB;AACrB,EAAE;AACF,wDAAwD;AACxD,wDAAwD;AACxD,2DAA2D;AAC3D,6DAA6D;AAC7D,EAAE;AACF,yBAAyB;AACzB,sEAAsE;AACtE,2DAA2D;AAC3D,wEAAwE;AACxE,2DAA2D;AAC3D,sEAAsE;AACtE,sEAAsE;AACtE,8DAA8D;;AAoB9D,0BAMC;AAID,kDAOC;AAID,8BAgBC;AA4BD,wCASC;AAaD,oCAcC;AAGD,gCAQC;AAGD,gCAKC;AAGD,4CAQC;AASD,oCAUC;AAID,oCAQC;AAGD,gCASC;AAID,8CAYC;AAQD,oCAUC;AAUD,4CAUC;AAgBD,8CAcC;AAID,gDAWC;AAID,8BAWC;AAzSD,qEAAqE;AACrE,MAAM,WAAW,GAAG,IAAI,CAAC;AAEzB,+DAA+D;AAC/D,uBAAuB;AACvB,+DAA+D;AAE/D,uEAAuE;AACvE,iEAAiE;AACjE,SAAgB,OAAO,CAAI,CAAkB;IAC3C,MAAM,GAAG,GAAQ,EAAE,CAAC;IACpB,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;QACvB,IAAI,CAAC,GAAG,CAAC;YAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,uEAAuE;AACvE,+DAA+D;AAC/D,SAAgB,mBAAmB,CAAI,CAAkB,EAAE,MAAc,WAAW;IAClF,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;QAC3B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;YAAE,OAAO,KAAK,CAAC;QAC/C,GAAG,IAAI,CAAC,CAAC;IACX,CAAC;IACD,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC;AAClC,CAAC;AAED,oEAAoE;AACpE,8DAA8D;AAC9D,SAAgB,SAAS,CAAI,CAAkB;IAC7C,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;QAC3B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACjC,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;QACjF,CAAC;QACD,GAAG,IAAI,CAAC,CAAC;IACX,CAAC;IACD,IAAI,GAAG,KAAK,CAAC,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;IAC9D,CAAC;IACD,MAAM,GAAG,GAAG,IAAI,GAAG,EAAa,CAAC;IACjC,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;QACvB,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC;IACtB,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AASD,SAAS,KAAK,CAAC,IAAa;IAC1B,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,GAAG;YACN,OAAO,IAAI,CAAC,GAAG,CAAC;QAClB,KAAK,EAAE;YACL,OAAO,IAAI,CAAC,KAAK,CAAC;QACpB,KAAK,CAAC,CAAC;QACP,KAAK,KAAK,CAAC;QACX;YACE,OAAO,IAAI,CAAC,IAAI,CAAC;IACrB,CAAC;AACH,CAAC;AAED,+DAA+D;AAC/D,YAAY;AACZ,+DAA+D;AAE/D,sCAAsC;AACtC,yEAAyE;AACzE,SAAgB,cAAc,CAAI,CAAkB,EAAE,OAAgB,CAAC;IACrE,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;IACxB,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;QAC3B,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACV,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,mCAAmC;AACnC,oCAAoC;AACpC,EAAE;AACF,oBAAoB;AACpB,mEAAmE;AACnE,uEAAuE;AACvE,sDAAsD;AACtD,6CAA6C;AAC7C,EAAE;AACF,mEAAmE;AACnE,+CAA+C;AAC/C,SAAgB,YAAY,CAAI,CAAkB,EAAE,KAAa,EAAE,OAAgB,CAAC;IAClF,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QACzC,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;IAC3D,CAAC;IACD,IAAI,KAAK,KAAK,CAAC;QAAE,OAAO,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAChD,IAAI,KAAK,KAAK,CAAC;QAAE,OAAO,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAE5C,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;IACxB,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;QAC3B,IAAI,CAAC,GAAG,CAAC;YAAE,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IACrC,CAAC;IACD,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IACtB,OAAO,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;AAC9B,CAAC;AAED,2EAA2E;AAC3E,SAAgB,UAAU,CAAI,CAAkB,EAAE,OAAgB,CAAC;IACjE,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;IACxB,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;QAC3B,IAAI,CAAC,GAAG,GAAG;YAAE,GAAG,GAAG,CAAC,CAAC;IACvB,CAAC;IACD,IAAI,GAAG,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IACxB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACnB,CAAC;AAED,mEAAmE;AACnE,SAAgB,UAAU,CAAI,CAAkB,EAAE,OAAgB,CAAC;IACjE,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;IACxB,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAC5B,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IACtB,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC;AAChB,CAAC;AAED,mDAAmD;AACnD,SAAgB,gBAAgB,CAAI,CAAkB,EAAE,OAAgB,CAAC;IACvE,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;IACxB,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;QAC3B,IAAI,CAAC,GAAG,CAAC;YAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC;IACD,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IACtB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AACjB,CAAC;AAED,+DAA+D;AAC/D,4BAA4B;AAC5B,+DAA+D;AAE/D,uCAAuC;AACvC,4DAA4D;AAC5D,6CAA6C;AAC7C,SAAgB,YAAY,CAAI,CAAkB,EAAE,CAAkB,EAAE,OAAgB,CAAC;IACvF,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;IACxB,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,KAAK,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACxB,IAAI,EAAE,KAAK,CAAC;YAAE,SAAS;QACvB,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACzB,IAAI,EAAE,KAAK,CAAC;YAAE,OAAO,MAAM,CAAC,iBAAiB,CAAC;QAC9C,CAAC,IAAI,EAAE,GAAG,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IACzB,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,mEAAmE;AACnE,8DAA8D;AAC9D,SAAgB,YAAY,CAAI,CAAkB,EAAE,CAAkB,EAAE,OAAgB,CAAC;IACvF,MAAM,CAAC,GAAG,IAAI,GAAG,EAAa,CAAC;IAC/B,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC;QAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACtD,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC;QAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACtD,qDAAqD;IACrD,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC;QAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAExC,OAAO,GAAG,GAAG,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,GAAG,GAAG,GAAG,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;AACzE,CAAC;AAED,uEAAuE;AACvE,SAAgB,UAAU,CAAI,CAAkB,EAAE,CAAkB;IAClE,MAAM,IAAI,GAAG,IAAI,GAAG,EAAK,CAAC;IAC1B,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE;QAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACtC,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE;QAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACtC,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;QACrB,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACnD,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,CAAC;AACf,CAAC;AAED,sEAAsE;AACtE,iDAAiD;AACjD,SAAgB,iBAAiB,CAAI,CAAkB,EAAE,CAAkB;IACzE,MAAM,IAAI,GAAG,IAAI,GAAG,EAAK,CAAC;IAC1B,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE;QAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACtC,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE;QAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACtC,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;QACrB,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QACnC,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QACnC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAChB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACb,CAAC;IACD,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC;AACnC,CAAC;AAED,+DAA+D;AAC/D,gBAAgB;AAChB,+DAA+D;AAE/D,mDAAmD;AACnD,mDAAmD;AACnD,SAAgB,YAAY,CAAI,CAAkB,EAAE,CAAkB,EAAE,OAAgB,CAAC;IACvF,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;IACxB,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,KAAK,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACxB,IAAI,EAAE,KAAK,CAAC;YAAE,SAAS;QACvB,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACzB,IAAI,EAAE,KAAK,CAAC;YAAE,OAAO,MAAM,CAAC,iBAAiB,CAAC;QAC9C,CAAC,IAAI,EAAE,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC;IACpB,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,+DAA+D;AAC/D,+CAA+C;AAC/C,+DAA+D;AAE/D,mEAAmE;AACnE,kEAAkE;AAClE,sEAAsE;AACtE,iEAAiE;AACjE,SAAgB,gBAAgB,CAAO,CAAc;IACnD,MAAM,EAAE,GAAG,IAAI,GAAG,EAAa,CAAC;IAChC,MAAM,EAAE,GAAG,IAAI,GAAG,EAAa,CAAC;IAChC,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1B,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAChC,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAClC,CAAC;IACD,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;AAC1B,CAAC;AAED,oEAAoE;AACpE,SAAS,YAAY,CAAO,CAAc,EAAE,IAAa;IACvD,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;IACxB,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;QAC3B,IAAI,CAAC,GAAG,CAAC;YAAE,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;IAC7B,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,uDAAuD;AACvD,mDAAmD;AACnD,mEAAmE;AACnE,2EAA2E;AAC3E,SAAgB,iBAAiB,CAAO,CAAc,EAAE,OAAgB,CAAC;IACvE,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;IACxB,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;IAC7C,IAAI,EAAE,GAAG,CAAC,CAAC;IACX,KAAK,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5B,IAAI,GAAG,IAAI,CAAC;YAAE,SAAS;QACvB,MAAM,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAChC,MAAM,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAChC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC;YAAE,SAAS;QACnC,EAAE,IAAI,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;IACnC,CAAC;IACD,mEAAmE;IACnE,6DAA6D;IAC7D,OAAO,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACxC,CAAC;AAED,kCAAkC;AAClC,6DAA6D;AAC7D,SAAgB,kBAAkB,CAChC,CAAc,EACd,MAAiB,EACjB,OAAgB,CAAC;IAEjB,MAAM,GAAG,GAAG,YAAY,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAClC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;IAC7C,MAAM,EAAE,GAAG,cAAc,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IACpC,MAAM,EAAE,GAAG,cAAc,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IACpC,MAAM,GAAG,GAAG,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC;IACjD,OAAO,GAAG,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;AAC3C,CAAC;AAED,mEAAmE;AACnE,kEAAkE;AAClE,SAAgB,SAAS,CACvB,CAAc,EACd,OAAgB,CAAC;IAEjB,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;IAC7C,OAAO;QACL,EAAE,EAAE,cAAc,CAAC,EAAE,EAAE,IAAI,CAAC;QAC5B,EAAE,EAAE,cAAc,CAAC,EAAE,EAAE,IAAI,CAAC;QAC5B,GAAG,EAAE,YAAY,CAAC,CAAC,EAAE,IAAI,CAAC;QAC1B,GAAG,EAAE,iBAAiB,CAAC,CAAC,EAAE,IAAI,CAAC;KAChC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/reasoning/information-theory/index.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,8 @@
1
+ /**
2
+ * Algebraic signature for lemma synthesis: declares sorts, constants,
3
+ * functions (with argument and result sorts) and predicates.
4
+ * The synthesizer enumerates terms and conjectures equalities based on this.
5
+ */
1
6
  export interface Signature {
2
7
  sorts: string[];
3
8
  constants: Array<{
@@ -32,6 +37,10 @@ export type Term = {
32
37
  args: Term[];
33
38
  sort: string;
34
39
  };
40
+ /**
41
+ * A synthesized equality conjecture `∀vars. termLeft = termRight`.
42
+ * `confidence = 1` means all random tests passed; smaller values indicate partial evidence.
43
+ */
35
44
  export interface Conjecture {
36
45
  variables: Array<{
37
46
  name: string;
@@ -42,9 +51,13 @@ export interface Conjecture {
42
51
  termLeft?: Term;
43
52
  termRight?: Term;
44
53
  }
54
+ /** Options controlling synthesis depth, test count, and randomness. */
45
55
  export interface SynthesisOptions {
56
+ /** Maximum term depth for enumeration (default 2). */
46
57
  maxDepth?: number;
58
+ /** Number of random valuations to test each conjecture (default 100). */
47
59
  numTests?: number;
60
+ /** Maximum number of conjectures to return (default 200). */
48
61
  maxConjectures?: number;
49
62
  /** Generador de valuaciones aleatorias por sort */
50
63
  randomValue?: (sort: string, rng: () => number) => unknown;
@@ -53,6 +66,7 @@ export interface SynthesisOptions {
53
66
  /** Semilla para PRNG determinístico */
54
67
  seed?: number;
55
68
  }
69
+ /** Serializes a term to a human-readable string, using infix notation for binary operators. */
56
70
  export declare function termToString(t: Term): string;
57
71
  declare function termKey(t: Term): string;
58
72
  /** Lista las variables que aparecen en un término, en orden de primera aparición */
@@ -71,6 +85,11 @@ export declare function enumerateTerms(sig: Signature, sort: string, depth: numb
71
85
  name: string;
72
86
  sort: string;
73
87
  }>): Term[];
88
+ /**
89
+ * Evaluates a term under a variable environment.
90
+ * Should throw when the term is ill-typed or outside the evaluator's domain;
91
+ * the synthesizer will skip conjectures whose terms cannot be evaluated.
92
+ */
74
93
  export type Evaluator = (term: Term, env: Record<string, unknown>) => unknown;
75
94
  /**
76
95
  * Sintetiza conjeturas de igualdad: para cada par de términos del
@@ -96,20 +115,37 @@ export declare function pruneConsequences(conjectures: Conjecture[]): Conjecture
96
115
  declare function rewriteOnce(t: Term, pattern: Term, replacement: Term): Term;
97
116
  declare function match(pattern: Term, target: Term, subst: Map<string, Term>): Map<string, Term> | null;
98
117
  declare function applySubst(t: Term, subst: Map<string, Term>): Term;
118
+ /**
119
+ * An optional external prover that attempts to prove or disprove a conjecture.
120
+ * Returns `{ proven: true }` on success, `{ proven: false, counter }` on refutation,
121
+ * or `{ proven: false }` when the result is unknown.
122
+ */
99
123
  export type Prover = (conjecture: Conjecture) => {
100
124
  proven: boolean;
101
125
  counter?: unknown;
102
126
  };
127
+ /** A conjecture annotated with its verification status after calling a {@link Prover}. */
103
128
  export interface VerifiedConjecture extends Conjecture {
104
129
  status: 'verified' | 'counter' | 'unknown';
105
130
  counter?: unknown;
106
131
  }
132
+ /**
133
+ * Runs each conjecture through `prover`, annotating it with
134
+ * `'verified'`, `'counter'` (with a counterexample), or `'unknown'`.
135
+ * Prover exceptions are silently caught and treated as `'unknown'`.
136
+ */
107
137
  export declare function verifyConjectures(conjectures: Conjecture[], prover: Prover): VerifiedConjecture[];
138
+ /** Returns a {@link Signature} for the natural numbers (0, S, +, *). */
108
139
  export declare function naturalNumbersSignature(): Signature;
140
+ /** Returns a {@link Signature} for booleans (T, F, ¬, ∧, ∨). */
109
141
  export declare function booleansSignature(): Signature;
142
+ /** Returns a {@link Signature} for lists over Nat (nil, cons, ++, length). */
110
143
  export declare function listsSignature(): Signature;
144
+ /** Sample {@link Evaluator} for the natural numbers signature. */
111
145
  export declare const naturalsEvaluator: Evaluator;
146
+ /** Sample {@link Evaluator} for the booleans signature. */
112
147
  export declare const booleansEvaluator: Evaluator;
148
+ /** Sample {@link Evaluator} for the lists-over-Nat signature. */
113
149
  export declare const listsEvaluator: Evaluator;
114
150
  export declare const __internals: {
115
151
  termKey: typeof termKey;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/reasoning/lemma-synthesis/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/reasoning/lemma-synthesis/index.ts"],"names":[],"mappings":"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"}
@@ -32,6 +32,7 @@ exports.naturalNumbersSignature = naturalNumbersSignature;
32
32
  exports.booleansSignature = booleansSignature;
33
33
  exports.listsSignature = listsSignature;
34
34
  // ── Helpers de impresión ────────────────────────────────────
35
+ /** Serializes a term to a human-readable string, using infix notation for binary operators. */
35
36
  function termToString(t) {
36
37
  switch (t.kind) {
37
38
  case 'var':
@@ -488,6 +489,11 @@ function applySubst(t, subst) {
488
489
  sort: t.sort,
489
490
  };
490
491
  }
492
+ /**
493
+ * Runs each conjecture through `prover`, annotating it with
494
+ * `'verified'`, `'counter'` (with a counterexample), or `'unknown'`.
495
+ * Prover exceptions are silently caught and treated as `'unknown'`.
496
+ */
491
497
  function verifyConjectures(conjectures, prover) {
492
498
  return conjectures.map((c) => {
493
499
  let r;
@@ -505,6 +511,7 @@ function verifyConjectures(conjectures, prover) {
505
511
  });
506
512
  }
507
513
  // ── Signaturas de ejemplo ───────────────────────────────────
514
+ /** Returns a {@link Signature} for the natural numbers (0, S, +, *). */
508
515
  function naturalNumbersSignature() {
509
516
  return {
510
517
  sorts: ['Nat'],
@@ -517,6 +524,7 @@ function naturalNumbersSignature() {
517
524
  predicates: [],
518
525
  };
519
526
  }
527
+ /** Returns a {@link Signature} for booleans (T, F, ¬, ∧, ∨). */
520
528
  function booleansSignature() {
521
529
  return {
522
530
  sorts: ['Bool'],
@@ -532,6 +540,7 @@ function booleansSignature() {
532
540
  predicates: [],
533
541
  };
534
542
  }
543
+ /** Returns a {@link Signature} for lists over Nat (nil, cons, ++, length). */
535
544
  function listsSignature() {
536
545
  return {
537
546
  sorts: ['List', 'Nat'],
@@ -549,6 +558,7 @@ function listsSignature() {
549
558
  };
550
559
  }
551
560
  // ── Evaluadores de ejemplo (útiles para tests y demos) ──────
561
+ /** Sample {@link Evaluator} for the natural numbers signature. */
552
562
  const naturalsEvaluator = (term, env) => {
553
563
  const evalT = (t) => {
554
564
  if (t.kind === 'var') {
@@ -571,6 +581,7 @@ const naturalsEvaluator = (term, env) => {
571
581
  return evalT(term);
572
582
  };
573
583
  exports.naturalsEvaluator = naturalsEvaluator;
584
+ /** Sample {@link Evaluator} for the booleans signature. */
574
585
  const booleansEvaluator = (term, env) => {
575
586
  const evalT = (t) => {
576
587
  if (t.kind === 'var') {
@@ -593,6 +604,7 @@ const booleansEvaluator = (term, env) => {
593
604
  return evalT(term);
594
605
  };
595
606
  exports.booleansEvaluator = booleansEvaluator;
607
+ /** Sample {@link Evaluator} for the lists-over-Nat signature. */
596
608
  const listsEvaluator = (term, env) => {
597
609
  const evalT = (t) => {
598
610
  if (t.kind === 'var') {