@stevenvo780/st-lang 4.14.0 → 4.15.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 (602) 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/__tests__/executor.test.d.ts +2 -0
  5. package/dist/format/stnb/__tests__/executor.test.d.ts.map +1 -0
  6. package/dist/format/stnb/__tests__/executor.test.js +140 -0
  7. package/dist/format/stnb/__tests__/executor.test.js.map +1 -0
  8. package/dist/format/stnb/__tests__/parser.test.d.ts +2 -0
  9. package/dist/format/stnb/__tests__/parser.test.d.ts.map +1 -0
  10. package/dist/format/stnb/__tests__/parser.test.js +119 -0
  11. package/dist/format/stnb/__tests__/parser.test.js.map +1 -0
  12. package/dist/format/stnb/__tests__/renderer.test.d.ts +2 -0
  13. package/dist/format/stnb/__tests__/renderer.test.d.ts.map +1 -0
  14. package/dist/format/stnb/__tests__/renderer.test.js +109 -0
  15. package/dist/format/stnb/__tests__/renderer.test.js.map +1 -0
  16. package/dist/format/stnb/__tests__/roundtrip.test.d.ts +2 -0
  17. package/dist/format/stnb/__tests__/roundtrip.test.d.ts.map +1 -0
  18. package/dist/format/stnb/__tests__/roundtrip.test.js +91 -0
  19. package/dist/format/stnb/__tests__/roundtrip.test.js.map +1 -0
  20. package/dist/format/stnb/__tests__/serializer.test.d.ts +2 -0
  21. package/dist/format/stnb/__tests__/serializer.test.d.ts.map +1 -0
  22. package/dist/format/stnb/__tests__/serializer.test.js +60 -0
  23. package/dist/format/stnb/__tests__/serializer.test.js.map +1 -0
  24. package/dist/format/stnb/executor.d.ts +29 -0
  25. package/dist/format/stnb/executor.d.ts.map +1 -0
  26. package/dist/format/stnb/executor.js +139 -0
  27. package/dist/format/stnb/executor.js.map +1 -0
  28. package/dist/format/stnb/index.d.ts +19 -0
  29. package/dist/format/stnb/index.d.ts.map +1 -0
  30. package/dist/format/stnb/index.js +28 -0
  31. package/dist/format/stnb/index.js.map +1 -0
  32. package/dist/format/stnb/parser.d.ts +14 -0
  33. package/dist/format/stnb/parser.d.ts.map +1 -0
  34. package/dist/format/stnb/parser.js +123 -0
  35. package/dist/format/stnb/parser.js.map +1 -0
  36. package/dist/format/stnb/renderer-html.d.ts +11 -0
  37. package/dist/format/stnb/renderer-html.d.ts.map +1 -0
  38. package/dist/format/stnb/renderer-html.js +180 -0
  39. package/dist/format/stnb/renderer-html.js.map +1 -0
  40. package/dist/format/stnb/renderer-markdown.d.ts +13 -0
  41. package/dist/format/stnb/renderer-markdown.d.ts.map +1 -0
  42. package/dist/format/stnb/renderer-markdown.js +92 -0
  43. package/dist/format/stnb/renderer-markdown.js.map +1 -0
  44. package/dist/format/stnb/serializer.d.ts +14 -0
  45. package/dist/format/stnb/serializer.d.ts.map +1 -0
  46. package/dist/format/stnb/serializer.js +21 -0
  47. package/dist/format/stnb/serializer.js.map +1 -0
  48. package/dist/format/stnb/types.d.ts +45 -0
  49. package/dist/format/stnb/types.d.ts.map +1 -0
  50. package/dist/format/stnb/types.js +7 -0
  51. package/dist/format/stnb/types.js.map +1 -0
  52. package/dist/index.d.ts +5 -0
  53. package/dist/index.d.ts.map +1 -1
  54. package/dist/index.js +7 -1
  55. package/dist/index.js.map +1 -1
  56. package/dist/logic/profile-bridge/index.d.ts.map +1 -1
  57. package/dist/logic/profile-bridge/index.js +20 -3
  58. package/dist/logic/profile-bridge/index.js.map +1 -1
  59. package/dist/logic/profiles/classical/propositional.d.ts.map +1 -1
  60. package/dist/logic/profiles/classical/propositional.js.map +1 -1
  61. package/dist/logic/profiles/ctl/check.d.ts.map +1 -1
  62. package/dist/logic/profiles/ctl/check.js +21 -11
  63. package/dist/logic/profiles/ctl/check.js.map +1 -1
  64. package/dist/logic/profiles/ctl/witness.d.ts.map +1 -1
  65. package/dist/logic/profiles/ctl/witness.js +2 -0
  66. package/dist/logic/profiles/ctl/witness.js.map +1 -1
  67. package/dist/logic/profiles/description-logic/types.d.ts +15 -0
  68. package/dist/logic/profiles/description-logic/types.d.ts.map +1 -1
  69. package/dist/logic/profiles/description-logic/types.js +13 -0
  70. package/dist/logic/profiles/description-logic/types.js.map +1 -1
  71. package/dist/logic/profiles/dl-hybrid/__tests__/differential.test.d.ts +2 -0
  72. package/dist/logic/profiles/dl-hybrid/__tests__/differential.test.d.ts.map +1 -0
  73. package/dist/logic/profiles/dl-hybrid/__tests__/differential.test.js +141 -0
  74. package/dist/logic/profiles/dl-hybrid/__tests__/differential.test.js.map +1 -0
  75. package/dist/logic/profiles/dl-hybrid/__tests__/examples.test.d.ts +2 -0
  76. package/dist/logic/profiles/dl-hybrid/__tests__/examples.test.d.ts.map +1 -0
  77. package/dist/logic/profiles/dl-hybrid/__tests__/examples.test.js +55 -0
  78. package/dist/logic/profiles/dl-hybrid/__tests__/examples.test.js.map +1 -0
  79. package/dist/logic/profiles/dl-hybrid/__tests__/parser.test.d.ts +2 -0
  80. package/dist/logic/profiles/dl-hybrid/__tests__/parser.test.d.ts.map +1 -0
  81. package/dist/logic/profiles/dl-hybrid/__tests__/parser.test.js +149 -0
  82. package/dist/logic/profiles/dl-hybrid/__tests__/parser.test.js.map +1 -0
  83. package/dist/logic/profiles/dl-hybrid/__tests__/tableau.test.d.ts +2 -0
  84. package/dist/logic/profiles/dl-hybrid/__tests__/tableau.test.d.ts.map +1 -0
  85. package/dist/logic/profiles/dl-hybrid/__tests__/tableau.test.js +105 -0
  86. package/dist/logic/profiles/dl-hybrid/__tests__/tableau.test.js.map +1 -0
  87. package/dist/logic/profiles/dl-hybrid/ast.d.ts +160 -0
  88. package/dist/logic/profiles/dl-hybrid/ast.d.ts.map +1 -0
  89. package/dist/logic/profiles/dl-hybrid/ast.js +261 -0
  90. package/dist/logic/profiles/dl-hybrid/ast.js.map +1 -0
  91. package/dist/logic/profiles/dl-hybrid/differential.d.ts +61 -0
  92. package/dist/logic/profiles/dl-hybrid/differential.d.ts.map +1 -0
  93. package/dist/logic/profiles/dl-hybrid/differential.js +291 -0
  94. package/dist/logic/profiles/dl-hybrid/differential.js.map +1 -0
  95. package/dist/logic/profiles/dl-hybrid/index.d.ts +10 -0
  96. package/dist/logic/profiles/dl-hybrid/index.d.ts.map +1 -0
  97. package/dist/logic/profiles/dl-hybrid/index.js +90 -0
  98. package/dist/logic/profiles/dl-hybrid/index.js.map +1 -0
  99. package/dist/logic/profiles/dl-hybrid/parser.d.ts +8 -0
  100. package/dist/logic/profiles/dl-hybrid/parser.d.ts.map +1 -0
  101. package/dist/logic/profiles/dl-hybrid/parser.js +410 -0
  102. package/dist/logic/profiles/dl-hybrid/parser.js.map +1 -0
  103. package/dist/logic/profiles/dl-hybrid/profile.d.ts +23 -0
  104. package/dist/logic/profiles/dl-hybrid/profile.d.ts.map +1 -0
  105. package/dist/logic/profiles/dl-hybrid/profile.js +122 -0
  106. package/dist/logic/profiles/dl-hybrid/profile.js.map +1 -0
  107. package/dist/logic/profiles/dl-hybrid/semantics.d.ts +16 -0
  108. package/dist/logic/profiles/dl-hybrid/semantics.d.ts.map +1 -0
  109. package/dist/logic/profiles/dl-hybrid/semantics.js +181 -0
  110. package/dist/logic/profiles/dl-hybrid/semantics.js.map +1 -0
  111. package/dist/logic/profiles/dl-hybrid/tableau.d.ts +38 -0
  112. package/dist/logic/profiles/dl-hybrid/tableau.d.ts.map +1 -0
  113. package/dist/logic/profiles/dl-hybrid/tableau.js +289 -0
  114. package/dist/logic/profiles/dl-hybrid/tableau.js.map +1 -0
  115. package/dist/logic/profiles/hybrid-logic/types.d.ts +17 -0
  116. package/dist/logic/profiles/hybrid-logic/types.d.ts.map +1 -1
  117. package/dist/logic/profiles/hybrid-logic/types.js +17 -0
  118. package/dist/logic/profiles/hybrid-logic/types.js.map +1 -1
  119. package/dist/logic/profiles/intuitionistic-nj/kripke.d.ts.map +1 -1
  120. package/dist/logic/profiles/intuitionistic-nj/kripke.js +8 -5
  121. package/dist/logic/profiles/intuitionistic-nj/kripke.js.map +1 -1
  122. package/dist/logic/profiles/ltl-sat/tableau.d.ts +31 -0
  123. package/dist/logic/profiles/ltl-sat/tableau.d.ts.map +1 -1
  124. package/dist/logic/profiles/ltl-sat/tableau.js +18 -0
  125. package/dist/logic/profiles/ltl-sat/tableau.js.map +1 -1
  126. package/dist/logic/profiles/ltl-sat/types.d.ts +15 -0
  127. package/dist/logic/profiles/ltl-sat/types.d.ts.map +1 -1
  128. package/dist/logic/profiles/ltl-sat/types.js +2 -1
  129. package/dist/logic/profiles/ltl-sat/types.js.map +1 -1
  130. package/dist/logic/profiles/modal-frame-axioms/formula.d.ts +10 -0
  131. package/dist/logic/profiles/modal-frame-axioms/formula.d.ts.map +1 -1
  132. package/dist/logic/profiles/modal-frame-axioms/formula.js +10 -0
  133. package/dist/logic/profiles/modal-frame-axioms/formula.js.map +1 -1
  134. package/dist/logic/profiles/mu-calculus/check.d.ts.map +1 -1
  135. package/dist/logic/profiles/mu-calculus/check.js +7 -4
  136. package/dist/logic/profiles/mu-calculus/check.js.map +1 -1
  137. package/dist/logic/profiles/natural-deduction-nk/formula.d.ts +8 -0
  138. package/dist/logic/profiles/natural-deduction-nk/formula.d.ts.map +1 -1
  139. package/dist/logic/profiles/natural-deduction-nk/formula.js +8 -0
  140. package/dist/logic/profiles/natural-deduction-nk/formula.js.map +1 -1
  141. package/dist/logic/profiles/quantum/index.d.ts.map +1 -1
  142. package/dist/logic/profiles/quantum/index.js +11 -8
  143. package/dist/logic/profiles/quantum/index.js.map +1 -1
  144. package/dist/logic/profiles/sequent-lj/index.d.ts +90 -0
  145. package/dist/logic/profiles/sequent-lj/index.d.ts.map +1 -0
  146. package/dist/logic/profiles/sequent-lj/index.js +903 -0
  147. package/dist/logic/profiles/sequent-lj/index.js.map +1 -0
  148. package/dist/logic/profiles/shared/tableau-engine.d.ts.map +1 -1
  149. package/dist/logic/profiles/shared/tableau-engine.js +0 -17
  150. package/dist/logic/profiles/shared/tableau-engine.js.map +1 -1
  151. package/dist/namespaces/proof-systems.d.ts +1 -1
  152. package/dist/namespaces/proof-systems.d.ts.map +1 -1
  153. package/dist/namespaces/proof-systems.js.map +1 -1
  154. package/dist/namespaces/semantics.d.ts +1 -1
  155. package/dist/namespaces/semantics.d.ts.map +1 -1
  156. package/dist/namespaces/semantics.js.map +1 -1
  157. package/dist/proof-systems/distributed-exchange/index.d.ts +29 -0
  158. package/dist/proof-systems/distributed-exchange/index.d.ts.map +1 -1
  159. package/dist/proof-systems/distributed-exchange/index.js +18 -0
  160. package/dist/proof-systems/distributed-exchange/index.js.map +1 -1
  161. package/dist/proof-systems/fol-prover/types.d.ts +16 -0
  162. package/dist/proof-systems/fol-prover/types.d.ts.map +1 -1
  163. package/dist/proof-systems/fol-prover/types.js +7 -0
  164. package/dist/proof-systems/fol-prover/types.js.map +1 -1
  165. package/dist/proof-systems/fol-prover-advanced/index.d.ts +3 -3
  166. package/dist/proof-systems/fol-prover-advanced/index.d.ts.map +1 -1
  167. package/dist/proof-systems/fol-prover-advanced/index.js.map +1 -1
  168. package/dist/proof-systems/fol-prover-advanced/ordering.js +1 -1
  169. package/dist/proof-systems/fol-prover-advanced/prover.d.ts.map +1 -1
  170. package/dist/proof-systems/fol-prover-advanced/prover.js +19 -12
  171. package/dist/proof-systems/fol-prover-advanced/prover.js.map +1 -1
  172. package/dist/proof-systems/fol-prover-advanced/resolve.d.ts.map +1 -1
  173. package/dist/proof-systems/fol-prover-advanced/resolve.js +7 -7
  174. package/dist/proof-systems/fol-prover-advanced/resolve.js.map +1 -1
  175. package/dist/proof-systems/fol-prover-advanced/subsumption.d.ts.map +1 -1
  176. package/dist/proof-systems/fol-prover-advanced/subsumption.js.map +1 -1
  177. package/dist/proof-systems/fol-prover-advanced/types.d.ts +12 -0
  178. package/dist/proof-systems/fol-prover-advanced/types.d.ts.map +1 -1
  179. package/dist/proof-systems/fol-prover-advanced/unify.js +2 -2
  180. package/dist/proof-systems/fol-prover-equality/term-utils.d.ts +46 -0
  181. package/dist/proof-systems/fol-prover-equality/term-utils.d.ts.map +1 -1
  182. package/dist/proof-systems/fol-prover-equality/term-utils.js +46 -0
  183. package/dist/proof-systems/fol-prover-equality/term-utils.js.map +1 -1
  184. package/dist/proof-systems/proof-nets/correctness.d.ts.map +1 -1
  185. package/dist/proof-systems/proof-nets/correctness.js +24 -12
  186. package/dist/proof-systems/proof-nets/correctness.js.map +1 -1
  187. package/dist/proof-systems/proof-nets/types.d.ts +18 -0
  188. package/dist/proof-systems/proof-nets/types.d.ts.map +1 -1
  189. package/dist/proof-systems/proof-nets/types.js +6 -0
  190. package/dist/proof-systems/proof-nets/types.js.map +1 -1
  191. package/dist/proof-systems/tableau-framework/TableauProver.d.ts.map +1 -1
  192. package/dist/proof-systems/tableau-framework/TableauProver.js +5 -5
  193. package/dist/proof-systems/tableau-framework/TableauProver.js.map +1 -1
  194. package/dist/proof-systems/tableau-framework/propositional.d.ts.map +1 -1
  195. package/dist/proof-systems/tableau-framework/propositional.js +21 -21
  196. package/dist/proof-systems/tableau-framework/propositional.js.map +1 -1
  197. package/dist/reasoning/ban-logic/terms.d.ts +24 -0
  198. package/dist/reasoning/ban-logic/terms.d.ts.map +1 -1
  199. package/dist/reasoning/ban-logic/terms.js +24 -0
  200. package/dist/reasoning/ban-logic/terms.js.map +1 -1
  201. package/dist/reasoning/bayesian/factor.js +8 -8
  202. package/dist/reasoning/bayesian/factor.js.map +1 -1
  203. package/dist/reasoning/bayesian/inference.d.ts.map +1 -1
  204. package/dist/reasoning/bayesian/inference.js +11 -5
  205. package/dist/reasoning/bayesian/inference.js.map +1 -1
  206. package/dist/reasoning/combinatorics/generators.js.map +1 -1
  207. package/dist/reasoning/combinatorics/index.d.ts +3 -3
  208. package/dist/reasoning/combinatorics/index.d.ts.map +1 -1
  209. package/dist/reasoning/combinatorics/index.js.map +1 -1
  210. package/dist/reasoning/combinatorics/set-partitions.js.map +1 -1
  211. package/dist/reasoning/combinatorics/special-numbers.d.ts.map +1 -1
  212. package/dist/reasoning/combinatorics/special-numbers.js.map +1 -1
  213. package/dist/reasoning/constructive-analysis/cauchy.js +2 -2
  214. package/dist/reasoning/constructive-analysis/compact.js +1 -1
  215. package/dist/reasoning/constructive-analysis/continuity.d.ts.map +1 -1
  216. package/dist/reasoning/constructive-analysis/continuity.js +4 -4
  217. package/dist/reasoning/constructive-analysis/continuity.js.map +1 -1
  218. package/dist/reasoning/constructive-analysis/index.d.ts.map +1 -1
  219. package/dist/reasoning/constructive-analysis/index.js.map +1 -1
  220. package/dist/reasoning/constructive-analysis/ivt.d.ts.map +1 -1
  221. package/dist/reasoning/constructive-analysis/ivt.js +2 -2
  222. package/dist/reasoning/constructive-analysis/ivt.js.map +1 -1
  223. package/dist/reasoning/constructive-reals/index.d.ts.map +1 -1
  224. package/dist/reasoning/constructive-reals/index.js +4 -8
  225. package/dist/reasoning/constructive-reals/index.js.map +1 -1
  226. package/dist/reasoning/dl-hybrid/__tests__/invariant.test.d.ts +2 -0
  227. package/dist/reasoning/dl-hybrid/__tests__/invariant.test.d.ts.map +1 -0
  228. package/dist/reasoning/dl-hybrid/__tests__/invariant.test.js +74 -0
  229. package/dist/reasoning/dl-hybrid/__tests__/invariant.test.js.map +1 -0
  230. package/dist/reasoning/dl-hybrid/index.d.ts +3 -0
  231. package/dist/reasoning/dl-hybrid/index.d.ts.map +1 -0
  232. package/dist/reasoning/dl-hybrid/index.js +16 -0
  233. package/dist/reasoning/dl-hybrid/index.js.map +1 -0
  234. package/dist/reasoning/dl-hybrid/invariant-search.d.ts +39 -0
  235. package/dist/reasoning/dl-hybrid/invariant-search.d.ts.map +1 -0
  236. package/dist/reasoning/dl-hybrid/invariant-search.js +188 -0
  237. package/dist/reasoning/dl-hybrid/invariant-search.js.map +1 -0
  238. package/dist/reasoning/galois-fields/index.d.ts +64 -0
  239. package/dist/reasoning/galois-fields/index.d.ts.map +1 -1
  240. package/dist/reasoning/galois-fields/index.js +56 -6
  241. package/dist/reasoning/galois-fields/index.js.map +1 -1
  242. package/dist/reasoning/graph-theory/index.d.ts +31 -0
  243. package/dist/reasoning/graph-theory/index.d.ts.map +1 -1
  244. package/dist/reasoning/graph-theory/index.js +28 -10
  245. package/dist/reasoning/graph-theory/index.js.map +1 -1
  246. package/dist/reasoning/hoare-logic/index.d.ts +34 -0
  247. package/dist/reasoning/hoare-logic/index.d.ts.map +1 -1
  248. package/dist/reasoning/hoare-logic/index.js +26 -0
  249. package/dist/reasoning/hoare-logic/index.js.map +1 -1
  250. package/dist/reasoning/hyperreal/index.d.ts +30 -0
  251. package/dist/reasoning/hyperreal/index.d.ts.map +1 -1
  252. package/dist/reasoning/hyperreal/index.js +25 -0
  253. package/dist/reasoning/hyperreal/index.js.map +1 -1
  254. package/dist/reasoning/information-theory/index.d.ts +34 -0
  255. package/dist/reasoning/information-theory/index.d.ts.map +1 -1
  256. package/dist/reasoning/information-theory/index.js +27 -44
  257. package/dist/reasoning/information-theory/index.js.map +1 -1
  258. package/dist/reasoning/lemma-rag/__tests__/benchmarks.test.d.ts +2 -0
  259. package/dist/reasoning/lemma-rag/__tests__/benchmarks.test.d.ts.map +1 -0
  260. package/dist/reasoning/lemma-rag/__tests__/benchmarks.test.js +72 -0
  261. package/dist/reasoning/lemma-rag/__tests__/benchmarks.test.js.map +1 -0
  262. package/dist/reasoning/lemma-rag/__tests__/embedding.test.d.ts +2 -0
  263. package/dist/reasoning/lemma-rag/__tests__/embedding.test.d.ts.map +1 -0
  264. package/dist/reasoning/lemma-rag/__tests__/embedding.test.js +102 -0
  265. package/dist/reasoning/lemma-rag/__tests__/embedding.test.js.map +1 -0
  266. package/dist/reasoning/lemma-rag/__tests__/integration.test.d.ts +2 -0
  267. package/dist/reasoning/lemma-rag/__tests__/integration.test.d.ts.map +1 -0
  268. package/dist/reasoning/lemma-rag/__tests__/integration.test.js +40 -0
  269. package/dist/reasoning/lemma-rag/__tests__/integration.test.js.map +1 -0
  270. package/dist/reasoning/lemma-rag/__tests__/query.test.d.ts +2 -0
  271. package/dist/reasoning/lemma-rag/__tests__/query.test.d.ts.map +1 -0
  272. package/dist/reasoning/lemma-rag/__tests__/query.test.js +136 -0
  273. package/dist/reasoning/lemma-rag/__tests__/query.test.js.map +1 -0
  274. package/dist/reasoning/lemma-rag/__tests__/retrieval.test.d.ts +2 -0
  275. package/dist/reasoning/lemma-rag/__tests__/retrieval.test.d.ts.map +1 -0
  276. package/dist/reasoning/lemma-rag/__tests__/retrieval.test.js +147 -0
  277. package/dist/reasoning/lemma-rag/__tests__/retrieval.test.js.map +1 -0
  278. package/dist/reasoning/lemma-rag/benchmarks.d.ts +30 -0
  279. package/dist/reasoning/lemma-rag/benchmarks.d.ts.map +1 -0
  280. package/dist/reasoning/lemma-rag/benchmarks.js +177 -0
  281. package/dist/reasoning/lemma-rag/benchmarks.js.map +1 -0
  282. package/dist/reasoning/lemma-rag/embedding.d.ts +26 -0
  283. package/dist/reasoning/lemma-rag/embedding.d.ts.map +1 -0
  284. package/dist/reasoning/lemma-rag/embedding.js +243 -0
  285. package/dist/reasoning/lemma-rag/embedding.js.map +1 -0
  286. package/dist/reasoning/lemma-rag/index-store.d.ts +35 -0
  287. package/dist/reasoning/lemma-rag/index-store.d.ts.map +1 -0
  288. package/dist/reasoning/lemma-rag/index-store.js +105 -0
  289. package/dist/reasoning/lemma-rag/index-store.js.map +1 -0
  290. package/dist/reasoning/lemma-rag/index.d.ts +9 -0
  291. package/dist/reasoning/lemma-rag/index.d.ts.map +1 -0
  292. package/dist/reasoning/lemma-rag/index.js +34 -0
  293. package/dist/reasoning/lemma-rag/index.js.map +1 -0
  294. package/dist/reasoning/lemma-rag/query.d.ts +48 -0
  295. package/dist/reasoning/lemma-rag/query.d.ts.map +1 -0
  296. package/dist/reasoning/lemma-rag/query.js +92 -0
  297. package/dist/reasoning/lemma-rag/query.js.map +1 -0
  298. package/dist/reasoning/lemma-rag/retrieval.d.ts +33 -0
  299. package/dist/reasoning/lemma-rag/retrieval.d.ts.map +1 -0
  300. package/dist/reasoning/lemma-rag/retrieval.js +123 -0
  301. package/dist/reasoning/lemma-rag/retrieval.js.map +1 -0
  302. package/dist/reasoning/lemma-rag/types.d.ts +52 -0
  303. package/dist/reasoning/lemma-rag/types.d.ts.map +1 -0
  304. package/dist/reasoning/lemma-rag/types.js +13 -0
  305. package/dist/reasoning/lemma-rag/types.js.map +1 -0
  306. package/dist/reasoning/lemma-synthesis/index.d.ts +36 -0
  307. package/dist/reasoning/lemma-synthesis/index.d.ts.map +1 -1
  308. package/dist/reasoning/lemma-synthesis/index.js +12 -0
  309. package/dist/reasoning/lemma-synthesis/index.js.map +1 -1
  310. package/dist/reasoning/linear-algebra/index.d.ts +38 -0
  311. package/dist/reasoning/linear-algebra/index.d.ts.map +1 -1
  312. package/dist/reasoning/linear-algebra/index.js +34 -5
  313. package/dist/reasoning/linear-algebra/index.js.map +1 -1
  314. package/dist/reasoning/markov-logic/grounding.js +1 -1
  315. package/dist/reasoning/markov-logic/grounding.js.map +1 -1
  316. package/dist/reasoning/markov-logic/inference.js +1 -1
  317. package/dist/reasoning/markov-logic/inference.js.map +1 -1
  318. package/dist/reasoning/order-theory/index.d.ts +121 -0
  319. package/dist/reasoning/order-theory/index.d.ts.map +1 -0
  320. package/dist/reasoning/order-theory/index.js +562 -0
  321. package/dist/reasoning/order-theory/index.js.map +1 -0
  322. package/dist/reasoning/peano-arithmetic/index.d.ts +114 -0
  323. package/dist/reasoning/peano-arithmetic/index.d.ts.map +1 -0
  324. package/dist/reasoning/peano-arithmetic/index.js +650 -0
  325. package/dist/reasoning/peano-arithmetic/index.js.map +1 -0
  326. package/dist/reasoning/polynomial-ring/index.d.ts +80 -0
  327. package/dist/reasoning/polynomial-ring/index.d.ts.map +1 -1
  328. package/dist/reasoning/polynomial-ring/index.js +75 -0
  329. package/dist/reasoning/polynomial-ring/index.js.map +1 -1
  330. package/dist/reasoning/proof-mining/__tests__/extractor.test.d.ts +2 -0
  331. package/dist/reasoning/proof-mining/__tests__/extractor.test.d.ts.map +1 -0
  332. package/dist/reasoning/proof-mining/__tests__/extractor.test.js +263 -0
  333. package/dist/reasoning/proof-mining/__tests__/extractor.test.js.map +1 -0
  334. package/dist/reasoning/proof-mining/__tests__/generalizer.test.d.ts +2 -0
  335. package/dist/reasoning/proof-mining/__tests__/generalizer.test.d.ts.map +1 -0
  336. package/dist/reasoning/proof-mining/__tests__/generalizer.test.js +123 -0
  337. package/dist/reasoning/proof-mining/__tests__/generalizer.test.js.map +1 -0
  338. package/dist/reasoning/proof-mining/__tests__/integration.test.d.ts +2 -0
  339. package/dist/reasoning/proof-mining/__tests__/integration.test.d.ts.map +1 -0
  340. package/dist/reasoning/proof-mining/__tests__/integration.test.js +128 -0
  341. package/dist/reasoning/proof-mining/__tests__/integration.test.js.map +1 -0
  342. package/dist/reasoning/proof-mining/__tests__/persistence.test.d.ts +2 -0
  343. package/dist/reasoning/proof-mining/__tests__/persistence.test.d.ts.map +1 -0
  344. package/dist/reasoning/proof-mining/__tests__/persistence.test.js +119 -0
  345. package/dist/reasoning/proof-mining/__tests__/persistence.test.js.map +1 -0
  346. package/dist/reasoning/proof-mining/__tests__/ranker.test.d.ts +2 -0
  347. package/dist/reasoning/proof-mining/__tests__/ranker.test.d.ts.map +1 -0
  348. package/dist/reasoning/proof-mining/__tests__/ranker.test.js +93 -0
  349. package/dist/reasoning/proof-mining/__tests__/ranker.test.js.map +1 -0
  350. package/dist/reasoning/proof-mining/extractor.d.ts +73 -0
  351. package/dist/reasoning/proof-mining/extractor.d.ts.map +1 -0
  352. package/dist/reasoning/proof-mining/extractor.js +170 -0
  353. package/dist/reasoning/proof-mining/extractor.js.map +1 -0
  354. package/dist/reasoning/proof-mining/generalizer.d.ts +46 -0
  355. package/dist/reasoning/proof-mining/generalizer.d.ts.map +1 -0
  356. package/dist/reasoning/proof-mining/generalizer.js +245 -0
  357. package/dist/reasoning/proof-mining/generalizer.js.map +1 -0
  358. package/dist/reasoning/proof-mining/index.d.ts +62 -0
  359. package/dist/reasoning/proof-mining/index.d.ts.map +1 -0
  360. package/dist/reasoning/proof-mining/index.js +235 -0
  361. package/dist/reasoning/proof-mining/index.js.map +1 -0
  362. package/dist/reasoning/proof-mining/persistence.d.ts +35 -0
  363. package/dist/reasoning/proof-mining/persistence.d.ts.map +1 -0
  364. package/dist/reasoning/proof-mining/persistence.js +126 -0
  365. package/dist/reasoning/proof-mining/persistence.js.map +1 -0
  366. package/dist/reasoning/proof-mining/ranker.d.ts +29 -0
  367. package/dist/reasoning/proof-mining/ranker.d.ts.map +1 -0
  368. package/dist/reasoning/proof-mining/ranker.js +71 -0
  369. package/dist/reasoning/proof-mining/ranker.js.map +1 -0
  370. package/dist/reasoning/proof-mining/statistics.d.ts +11 -0
  371. package/dist/reasoning/proof-mining/statistics.d.ts.map +1 -0
  372. package/dist/reasoning/proof-mining/statistics.js +44 -0
  373. package/dist/reasoning/proof-mining/statistics.js.map +1 -0
  374. package/dist/reasoning/proof-mining/types.d.ts +117 -0
  375. package/dist/reasoning/proof-mining/types.d.ts.map +1 -0
  376. package/dist/reasoning/proof-mining/types.js +24 -0
  377. package/dist/reasoning/proof-mining/types.js.map +1 -0
  378. package/dist/reasoning/separation-logic/index.d.ts +30 -0
  379. package/dist/reasoning/separation-logic/index.d.ts.map +1 -1
  380. package/dist/reasoning/separation-logic/index.js +21 -0
  381. package/dist/reasoning/separation-logic/index.js.map +1 -1
  382. package/dist/reasoning/set-theory/hf-functions.js +3 -3
  383. package/dist/reasoning/set-theory/hf-sets.js +1 -1
  384. package/dist/reasoning/set-theory/index.d.ts +3 -3
  385. package/dist/reasoning/set-theory/index.d.ts.map +1 -1
  386. package/dist/reasoning/set-theory/zfc-axioms.js +4 -4
  387. package/dist/reasoning/tactic-dsl/tactics.d.ts +87 -0
  388. package/dist/reasoning/tactic-dsl/tactics.d.ts.map +1 -1
  389. package/dist/reasoning/tactic-dsl/tactics.js +86 -36
  390. package/dist/reasoning/tactic-dsl/tactics.js.map +1 -1
  391. package/dist/reasoning/topology/index.d.ts +81 -0
  392. package/dist/reasoning/topology/index.d.ts.map +1 -1
  393. package/dist/reasoning/topology/index.js +69 -45
  394. package/dist/reasoning/topology/index.js.map +1 -1
  395. package/dist/runtime/countermodel-min/minimize.js +0 -0
  396. package/dist/runtime/countermodel-min/minimize.js.map +1 -1
  397. package/dist/runtime/csp-hoare/semantics.d.ts +12 -0
  398. package/dist/runtime/csp-hoare/semantics.d.ts.map +1 -1
  399. package/dist/runtime/csp-hoare/semantics.js +12 -0
  400. package/dist/runtime/csp-hoare/semantics.js.map +1 -1
  401. package/dist/runtime/symbolic-diff/constructors.d.ts +20 -0
  402. package/dist/runtime/symbolic-diff/constructors.d.ts.map +1 -1
  403. package/dist/runtime/symbolic-diff/constructors.js +20 -0
  404. package/dist/runtime/symbolic-diff/constructors.js.map +1 -1
  405. package/dist/runtime/term-rewriting/term-utils.d.ts.map +1 -1
  406. package/dist/runtime/term-rewriting/term-utils.js +33 -2
  407. package/dist/runtime/term-rewriting/term-utils.js.map +1 -1
  408. package/dist/runtime/typecheck/checker.js +2 -2
  409. package/dist/runtime/typecheck/checker.js.map +1 -1
  410. package/dist/runtime/typecheck/levenshtein.js +1 -1
  411. package/dist/runtime/typecheck/levenshtein.js.map +1 -1
  412. package/dist/semantics/categorical/fin-set.d.ts.map +1 -1
  413. package/dist/semantics/categorical/fin-set.js +8 -1
  414. package/dist/semantics/categorical/fin-set.js.map +1 -1
  415. package/dist/semantics/categorical/free.d.ts.map +1 -1
  416. package/dist/semantics/categorical/free.js +8 -2
  417. package/dist/semantics/categorical/free.js.map +1 -1
  418. package/dist/semantics/categorical/limits.d.ts.map +1 -1
  419. package/dist/semantics/categorical/limits.js +13 -4
  420. package/dist/semantics/categorical/limits.js.map +1 -1
  421. package/dist/semantics/categorical/monoidal.d.ts.map +1 -1
  422. package/dist/semantics/categorical/monoidal.js +3 -1
  423. package/dist/semantics/categorical/monoidal.js.map +1 -1
  424. package/dist/semantics/text-layer/compiler.d.ts +46 -0
  425. package/dist/semantics/text-layer/compiler.d.ts.map +1 -1
  426. package/dist/semantics/text-layer/compiler.js +46 -11
  427. package/dist/semantics/text-layer/compiler.js.map +1 -1
  428. package/dist/solver/cdcl-v2/index.d.ts +8 -0
  429. package/dist/solver/cdcl-v2/index.d.ts.map +1 -1
  430. package/dist/solver/cdcl-v2/index.js +8 -0
  431. package/dist/solver/cdcl-v2/index.js.map +1 -1
  432. package/dist/solver/smt-z3/z3-wasm-backend.d.ts +0 -1
  433. package/dist/solver/smt-z3/z3-wasm-backend.d.ts.map +1 -1
  434. package/dist/solver/smt-z3/z3-wasm-backend.js +2 -3
  435. package/dist/solver/smt-z3/z3-wasm-backend.js.map +1 -1
  436. package/dist/tests/agora-integration-fixtures.test.js +7 -2
  437. package/dist/tests/agora-integration-fixtures.test.js.map +1 -1
  438. package/dist/tests/coverage-90/coverage-90-cdcl-v2-deep.test.d.ts +2 -0
  439. package/dist/tests/coverage-90/coverage-90-cdcl-v2-deep.test.d.ts.map +1 -0
  440. package/dist/tests/coverage-90/coverage-90-cdcl-v2-deep.test.js +123 -0
  441. package/dist/tests/coverage-90/coverage-90-cdcl-v2-deep.test.js.map +1 -0
  442. package/dist/tests/coverage-90/coverage-90-certificate-rules.test.d.ts +2 -0
  443. package/dist/tests/coverage-90/coverage-90-certificate-rules.test.d.ts.map +1 -0
  444. package/dist/tests/coverage-90/coverage-90-certificate-rules.test.js +172 -0
  445. package/dist/tests/coverage-90/coverage-90-certificate-rules.test.js.map +1 -0
  446. package/dist/tests/coverage-90/coverage-90-interpreter-extra.test.d.ts +2 -0
  447. package/dist/tests/coverage-90/coverage-90-interpreter-extra.test.d.ts.map +1 -0
  448. package/dist/tests/coverage-90/coverage-90-interpreter-extra.test.js +326 -0
  449. package/dist/tests/coverage-90/coverage-90-interpreter-extra.test.js.map +1 -0
  450. package/dist/tests/coverage-90/coverage-90-interpreter-features.test.d.ts +2 -0
  451. package/dist/tests/coverage-90/coverage-90-interpreter-features.test.d.ts.map +1 -0
  452. package/dist/tests/coverage-90/coverage-90-interpreter-features.test.js +418 -0
  453. package/dist/tests/coverage-90/coverage-90-interpreter-features.test.js.map +1 -0
  454. package/dist/tests/coverage-90/coverage-90-modal-temporal.test.d.ts +2 -0
  455. package/dist/tests/coverage-90/coverage-90-modal-temporal.test.d.ts.map +1 -0
  456. package/dist/tests/coverage-90/coverage-90-modal-temporal.test.js +162 -0
  457. package/dist/tests/coverage-90/coverage-90-modal-temporal.test.js.map +1 -0
  458. package/dist/tests/coverage-90/coverage-90-nk-prover.test.d.ts +2 -0
  459. package/dist/tests/coverage-90/coverage-90-nk-prover.test.d.ts.map +1 -0
  460. package/dist/tests/coverage-90/coverage-90-nk-prover.test.js +104 -0
  461. package/dist/tests/coverage-90/coverage-90-nk-prover.test.js.map +1 -0
  462. package/dist/tests/coverage-90/coverage-90-parser-deep.test.d.ts +2 -0
  463. package/dist/tests/coverage-90/coverage-90-parser-deep.test.d.ts.map +1 -0
  464. package/dist/tests/coverage-90/coverage-90-parser-deep.test.js +262 -0
  465. package/dist/tests/coverage-90/coverage-90-parser-deep.test.js.map +1 -0
  466. package/dist/tests/coverage-90/coverage-90-sat-engines.test.d.ts +2 -0
  467. package/dist/tests/coverage-90/coverage-90-sat-engines.test.d.ts.map +1 -0
  468. package/dist/tests/coverage-90/coverage-90-sat-engines.test.js +101 -0
  469. package/dist/tests/coverage-90/coverage-90-sat-engines.test.js.map +1 -0
  470. package/dist/tests/coverage-90/coverage-90-sequent-lk.test.d.ts +2 -0
  471. package/dist/tests/coverage-90/coverage-90-sequent-lk.test.d.ts.map +1 -0
  472. package/dist/tests/coverage-90/coverage-90-sequent-lk.test.js +219 -0
  473. package/dist/tests/coverage-90/coverage-90-sequent-lk.test.js.map +1 -0
  474. package/dist/tests/coverage-90/coverage-90-smt-lib-parser.test.d.ts +2 -0
  475. package/dist/tests/coverage-90/coverage-90-smt-lib-parser.test.d.ts.map +1 -0
  476. package/dist/tests/coverage-90/coverage-90-smt-lib-parser.test.js +154 -0
  477. package/dist/tests/coverage-90/coverage-90-smt-lib-parser.test.js.map +1 -0
  478. package/dist/tests/coverage-95/first-order.test.js.map +1 -1
  479. package/dist/tests/coverage-95/fol-prover.test.js.map +1 -1
  480. package/dist/tests/integration/cross-modules.test.js +43 -19
  481. package/dist/tests/integration/cross-modules.test.js.map +1 -1
  482. package/dist/tests/logic/ctl/check.test.js.map +1 -1
  483. package/dist/tests/logic/profile-bridge/translations.test.js +3 -3
  484. package/dist/tests/logic/profile-bridge/translations.test.js.map +1 -1
  485. package/dist/tests/logic/profiles/sequent-lj/lj.test.d.ts +2 -0
  486. package/dist/tests/logic/profiles/sequent-lj/lj.test.d.ts.map +1 -0
  487. package/dist/tests/logic/profiles/sequent-lj/lj.test.js +400 -0
  488. package/dist/tests/logic/profiles/sequent-lj/lj.test.js.map +1 -0
  489. package/dist/tests/logic/sequent-g3/prover.test.js.map +1 -1
  490. package/dist/tests/logic/substructural/prover.test.js.map +1 -1
  491. package/dist/tests/proof-systems/fol-prover-advanced/prover.test.js +40 -13
  492. package/dist/tests/proof-systems/fol-prover-advanced/prover.test.js.map +1 -1
  493. package/dist/tests/proof-systems/higher-order-unify/ho-unify.test.js.map +1 -1
  494. package/dist/tests/proof-systems/tableau-framework/tableau.test.js +8 -8
  495. package/dist/tests/proof-systems/tableau-framework/tableau.test.js.map +1 -1
  496. package/dist/tests/properties/agm.property.test.js +1 -1
  497. package/dist/tests/properties/agm.property.test.js.map +1 -1
  498. package/dist/tests/properties/anti-unification.property.test.js.map +1 -1
  499. package/dist/tests/properties/argumentation.property.test.js.map +1 -1
  500. package/dist/tests/properties/bisimulation.property.test.js.map +1 -1
  501. package/dist/tests/properties/cdcl.property.test.js.map +1 -1
  502. package/dist/tests/properties/coinduction.property.test.js.map +1 -1
  503. package/dist/tests/properties/constructive-reals.property.test.js.map +1 -1
  504. package/dist/tests/properties/csp.property.test.js +1 -3
  505. package/dist/tests/properties/csp.property.test.js.map +1 -1
  506. package/dist/tests/properties/generators.d.ts +1 -1
  507. package/dist/tests/properties/generators.d.ts.map +1 -1
  508. package/dist/tests/properties/generators.js +22 -30
  509. package/dist/tests/properties/generators.js.map +1 -1
  510. package/dist/tests/properties/intuit-nj.property.test.js +3 -1
  511. package/dist/tests/properties/intuit-nj.property.test.js.map +1 -1
  512. package/dist/tests/properties/lambda-calc.property.test.js.map +1 -1
  513. package/dist/tests/properties/mln.property.test.js +1 -3
  514. package/dist/tests/properties/mln.property.test.js.map +1 -1
  515. package/dist/tests/properties/planning.property.test.js.map +1 -1
  516. package/dist/tests/properties/profile-bridge.property.test.js.map +1 -1
  517. package/dist/tests/properties/theorem-cache.property.test.js.map +1 -1
  518. package/dist/tests/protocol-text-layer.test.js.map +1 -1
  519. package/dist/tests/reasoning/combinatorics/combinatorics.test.js +1 -1
  520. package/dist/tests/reasoning/constructive-analysis/constructive-analysis.test.js +9 -9
  521. package/dist/tests/reasoning/constructive-analysis/constructive-analysis.test.js.map +1 -1
  522. package/dist/tests/reasoning/linear-algebra/linear-algebra.test.js +80 -38
  523. package/dist/tests/reasoning/linear-algebra/linear-algebra.test.js.map +1 -1
  524. package/dist/tests/reasoning/order-theory/order-theory.test.d.ts +2 -0
  525. package/dist/tests/reasoning/order-theory/order-theory.test.d.ts.map +1 -0
  526. package/dist/tests/reasoning/order-theory/order-theory.test.js +211 -0
  527. package/dist/tests/reasoning/order-theory/order-theory.test.js.map +1 -0
  528. package/dist/tests/reasoning/peano-arithmetic/peano.test.d.ts +2 -0
  529. package/dist/tests/reasoning/peano-arithmetic/peano.test.d.ts.map +1 -0
  530. package/dist/tests/reasoning/peano-arithmetic/peano.test.js +159 -0
  531. package/dist/tests/reasoning/peano-arithmetic/peano.test.js.map +1 -0
  532. package/dist/tests/reasoning/set-theory/hf-functions.test.js +11 -11
  533. package/dist/tests/reasoning/set-theory/zfc-axioms.test.js +1 -1
  534. package/dist/tests/semantics/text-layer-v2/claim-graph.test.js.map +1 -1
  535. package/dist/tests/solver/smt-lib/emitter.test.js.map +1 -1
  536. package/dist/tests/solver/smt-z3/z3-wasm-backend.test.js.map +1 -1
  537. package/dist/tests/tooling/test-harness/test-harness.test.js +9 -6
  538. package/dist/tests/tooling/test-harness/test-harness.test.js.map +1 -1
  539. package/dist/tooling/lsp/types.d.ts +13 -0
  540. package/dist/tooling/lsp/types.d.ts.map +1 -1
  541. package/dist/tooling/lsp/types.js +1 -0
  542. package/dist/tooling/lsp/types.js.map +1 -1
  543. package/dist/tooling/test-harness/combinators.d.ts.map +1 -1
  544. package/dist/tooling/test-harness/combinators.js +4 -4
  545. package/dist/tooling/test-harness/combinators.js.map +1 -1
  546. package/dist/tooling/test-harness/coverage.js +1 -1
  547. package/dist/tooling/test-harness/generators.d.ts.map +1 -1
  548. package/dist/tooling/test-harness/generators.js.map +1 -1
  549. package/dist/tooling/test-harness/index.d.ts +1 -1
  550. package/dist/tooling/test-harness/index.d.ts.map +1 -1
  551. package/dist/tooling/test-harness/index.js.map +1 -1
  552. package/dist/tooling/test-harness/snapshot.d.ts.map +1 -1
  553. package/dist/tooling/test-harness/snapshot.js +2 -2
  554. package/dist/tooling/test-harness/snapshot.js.map +1 -1
  555. package/dist/type-theory/cubical/types.d.ts +25 -0
  556. package/dist/type-theory/cubical/types.d.ts.map +1 -1
  557. package/dist/type-theory/cubical/types.js +20 -0
  558. package/dist/type-theory/cubical/types.js.map +1 -1
  559. package/dist/type-theory/curry-howard/types.d.ts +27 -0
  560. package/dist/type-theory/curry-howard/types.d.ts.map +1 -1
  561. package/dist/type-theory/curry-howard/types.js +18 -0
  562. package/dist/type-theory/curry-howard/types.js.map +1 -1
  563. package/dist/type-theory/hindley-milner/substitution.d.ts +39 -0
  564. package/dist/type-theory/hindley-milner/substitution.d.ts.map +1 -1
  565. package/dist/type-theory/hindley-milner/substitution.js +37 -0
  566. package/dist/type-theory/hindley-milner/substitution.js.map +1 -1
  567. package/dist/type-theory/hindley-milner/types.d.ts +25 -0
  568. package/dist/type-theory/hindley-milner/types.d.ts.map +1 -1
  569. package/dist/type-theory/hindley-milner/types.js +22 -2
  570. package/dist/type-theory/hindley-milner/types.js.map +1 -1
  571. package/dist/type-theory/hol/rules.d.ts +36 -0
  572. package/dist/type-theory/hol/rules.d.ts.map +1 -1
  573. package/dist/type-theory/hol/rules.js +36 -0
  574. package/dist/type-theory/hol/rules.js.map +1 -1
  575. package/dist/type-theory/hott/types.d.ts +32 -0
  576. package/dist/type-theory/hott/types.d.ts.map +1 -1
  577. package/dist/type-theory/hott/types.js +31 -1
  578. package/dist/type-theory/hott/types.js.map +1 -1
  579. package/dist/type-theory/lambda-cube/types.d.ts +17 -0
  580. package/dist/type-theory/lambda-cube/types.d.ts.map +1 -1
  581. package/dist/type-theory/lambda-cube/types.js +13 -0
  582. package/dist/type-theory/lambda-cube/types.js.map +1 -1
  583. package/dist/type-theory/mltt/types.d.ts +19 -0
  584. package/dist/type-theory/mltt/types.d.ts.map +1 -1
  585. package/dist/type-theory/mltt/types.js +15 -1
  586. package/dist/type-theory/mltt/types.js.map +1 -1
  587. package/dist/type-theory/nbe/types.d.ts +21 -0
  588. package/dist/type-theory/nbe/types.d.ts.map +1 -1
  589. package/dist/type-theory/nbe/types.js +13 -1
  590. package/dist/type-theory/nbe/types.js.map +1 -1
  591. package/dist/type-theory/refinement-types/types.d.ts +38 -0
  592. package/dist/type-theory/refinement-types/types.d.ts.map +1 -1
  593. package/dist/type-theory/refinement-types/types.js +35 -0
  594. package/dist/type-theory/refinement-types/types.js.map +1 -1
  595. package/dist/type-theory/system-f/types.d.ts +30 -0
  596. package/dist/type-theory/system-f/types.d.ts.map +1 -1
  597. package/dist/type-theory/system-f/types.js +24 -3
  598. package/dist/type-theory/system-f/types.js.map +1 -1
  599. package/dist/types/index.d.ts +42 -0
  600. package/dist/types/index.d.ts.map +1 -1
  601. package/dist/types/index.js.map +1 -1
  602. package/package.json +26 -1
package/README.md CHANGED
@@ -7,8 +7,8 @@
7
7
  **ST** es un lenguaje ejecutable para lógica, argumentación y formalización documental.
8
8
  Combina verificación formal, scripting declarativo, control de flujo, funciones, perfiles lógicos múltiples y una **Text Layer** para conectar fórmulas con texto humano real.
9
9
 
10
- [![Version](https://img.shields.io/badge/version-4.5.0-blue.svg)](package.json)
11
- [![Tests](https://img.shields.io/badge/tests-4041-brightgreen.svg)]()
10
+ [![Version](https://img.shields.io/badge/version-4.14.0-blue.svg)](package.json)
11
+ [![Tests](https://img.shields.io/badge/tests-6333-brightgreen.svg)]()
12
12
  [![License](https://img.shields.io/badge/license-MIT-green.svg)](LICENSE)
13
13
  [![Build Status](https://img.shields.io/badge/build-passing-brightgreen.svg)]()
14
14
 
@@ -38,7 +38,7 @@ Combina verificación formal, scripting declarativo, control de flujo, funciones
38
38
  ### Con npm
39
39
 
40
40
  ```bash
41
- npm install @stevenvo780/st-lang@4.5.0
41
+ npm install @stevenvo780/st-lang@4.14.0
42
42
  ```
43
43
 
44
44
  ### Desde el código fuente
@@ -53,9 +53,9 @@ npm link
53
53
 
54
54
  ---
55
55
 
56
- ## What's new in V4 (4.0 → 4.5.0)
56
+ ## What's new in V4–V5 (4.0 → 4.14.0)
57
57
 
58
- 52+ módulos nuevos. 4041 tests (eran 1583 en v3.3).
58
+ 80+ módulos nuevos. 6333 tests (eran 1583 en v3.3).
59
59
 
60
60
  ### Performance & SAT
61
61
  - CDCL v2 con VSIDS, clause learning y reinicios Luby.
@@ -493,7 +493,7 @@ La extensión oficial en `editors/vscode-st` aporta:
493
493
  ## Documentación ampliada
494
494
 
495
495
  - Guía completa local: [`DOCS.md`](./DOCS.md)
496
- - Documentación web: [agora.humanizar.cloud/docs#st-lang](https://agora.humanizar.cloud/docs#st-lang)
496
+ - Documentación web: [agora.elenxos.com/docs#st-lang](https://agora.elenxos.com/docs#st-lang)
497
497
 
498
498
  ---
499
499
 
@@ -1,51 +1,64 @@
1
1
  import { Formula, SourceLocation } from '../types';
2
+ /** Discriminante de todos los nodos de sentencia del AST de ST. */
2
3
  export type StatementKind = 'logic_decl' | 'axiom_decl' | 'theorem_decl' | 'derive_cmd' | 'check_valid_cmd' | 'check_satisfiable_cmd' | 'check_equivalent_cmd' | 'prove_cmd' | 'countermodel_cmd' | 'truth_table_cmd' | 'let_decl' | 'claim_decl' | 'support_decl' | 'confidence_decl' | 'context_decl' | 'render_cmd' | 'analyze_cmd' | 'explain_cmd' | 'import_decl' | 'proof_block' | 'theory_decl' | 'print_cmd' | 'set_cmd' | 'if_stmt' | 'for_stmt' | 'while_stmt' | 'fn_decl' | 'return_stmt' | 'fn_call' | 'export_decl' | 'define_decl' | 'unfold_cmd' | 'fold_cmd' | 'source_decl' | 'interpret_cmd' | 'glossary_cmd';
4
+ /** Nodo base del AST. Todos los nodos de sentencia extienden esta interfaz. */
3
5
  export interface ASTNode {
4
6
  kind: StatementKind;
5
7
  source: SourceLocation;
6
8
  }
9
+ /** Declaración de perfil lógico activo: `logic classical.propositional`. */
7
10
  export interface LogicDeclNode extends ASTNode {
8
11
  kind: 'logic_decl';
9
12
  profile: string;
10
13
  }
14
+ /** Declaración de axioma: `axiom <nombre> := <fórmula>`. */
11
15
  export interface AxiomDeclNode extends ASTNode {
12
16
  kind: 'axiom_decl';
13
17
  name: string;
14
18
  formula: Formula;
15
19
  }
20
+ /** Declaración de teorema: `theorem <nombre> := <fórmula>`. */
16
21
  export interface TheoremDeclNode extends ASTNode {
17
22
  kind: 'theorem_decl';
18
23
  name: string;
19
24
  formula: Formula;
20
25
  }
26
+ /** Comando `derive <goal> from <premises...>`: deriva una fórmula a partir de premisas nombradas. */
21
27
  export interface DeriveCmdNode extends ASTNode {
22
28
  kind: 'derive_cmd';
23
29
  goal: Formula;
24
30
  premises: string[];
25
31
  }
32
+ /** Comando `check valid <fórmula>`: verifica si la fórmula es tautología. */
26
33
  export interface CheckValidCmdNode extends ASTNode {
27
34
  kind: 'check_valid_cmd';
28
35
  formula: Formula;
29
36
  }
37
+ /** Comando `check satisfiable <fórmula>`: verifica si existe valoración que satisfaga la fórmula. */
30
38
  export interface CheckSatisfiableCmdNode extends ASTNode {
31
39
  kind: 'check_satisfiable_cmd';
32
40
  formula: Formula;
33
41
  }
42
+ /** Comando `check equivalent <A> <B>`: comprueba equivalencia lógica entre dos fórmulas. */
34
43
  export interface CheckEquivalentCmdNode extends ASTNode {
35
44
  kind: 'check_equivalent_cmd';
36
45
  left: Formula;
37
46
  right: Formula;
38
47
  }
48
+ /** Comando `prove <goal> from <premises...>`: intenta construir una prueba formal del goal. */
39
49
  export interface ProveCmdNode extends ASTNode {
40
50
  kind: 'prove_cmd';
41
51
  goal: Formula;
42
52
  premises: string[];
43
53
  }
54
+ /** Comando `countermodel <fórmula>`: busca un modelo que falsifique la fórmula. */
44
55
  export interface CountermodelCmdNode extends ASTNode {
45
56
  kind: 'countermodel_cmd';
46
57
  formula: Formula;
47
58
  }
59
+ /** Discriminante de las acciones que puede encapsular un `let x = <acción>`. */
48
60
  export type ActionExprKind = 'check_valid' | 'check_satisfiable' | 'check_equivalent' | 'derive' | 'prove' | 'countermodel' | 'truth_table' | 'explain';
61
+ /** Expresión de acción usada dentro de `let x = <acción>`. */
49
62
  export interface ActionExprNode {
50
63
  kind: 'action_expr';
51
64
  action: ActionExprKind;
@@ -56,28 +69,34 @@ export interface ActionExprNode {
56
69
  goal?: Formula;
57
70
  premises?: string[];
58
71
  }
72
+ /** Comando `truth_table <fórmula>`: genera la tabla de verdad completa. */
59
73
  export interface TruthTableCmdNode extends ASTNode {
60
74
  kind: 'truth_table_cmd';
61
75
  formula: Formula;
62
76
  }
77
+ /** Comando `render <target> as <format>`: serializa un símbolo a un formato dado. */
63
78
  export interface RenderCmdNode extends ASTNode {
64
79
  kind: 'render_cmd';
65
80
  target: string;
66
81
  format: string;
67
82
  }
83
+ /** Comando `analyze <premises> therefore <conclusion>`: analiza la validez de un argumento. */
68
84
  export interface AnalyzeCmdNode extends ASTNode {
69
85
  kind: 'analyze_cmd';
70
86
  premises: Formula[];
71
87
  conclusion: Formula;
72
88
  }
89
+ /** Comando `explain <fórmula>`: produce una explicación en lenguaje natural de la fórmula. */
73
90
  export interface ExplainCmdNode extends ASTNode {
74
91
  kind: 'explain_cmd';
75
92
  formula: Formula;
76
93
  }
94
+ /** Declaración `import "<path>"`: importa otro archivo ST al scope actual. */
77
95
  export interface ImportDeclNode extends ASTNode {
78
96
  kind: 'import_decl';
79
97
  path: string;
80
98
  }
99
+ /** Bloque de prueba estructurado con supuestos locales y goal explícito. */
81
100
  export interface ProofBlockNode extends ASTNode {
82
101
  kind: 'proof_block';
83
102
  assumptions: {
@@ -87,10 +106,12 @@ export interface ProofBlockNode extends ASTNode {
87
106
  goal: Formula;
88
107
  body: Statement[];
89
108
  }
109
+ /** Miembro de una teoría con control de visibilidad pública/privada. */
90
110
  export interface TheoryMember {
91
111
  statement: Statement;
92
112
  visibility: 'public' | 'private';
93
113
  }
114
+ /** Declaración de teoría con herencia opcional: `theory T extends Parent { ... }`. */
94
115
  export interface TheoryDeclNode extends ASTNode {
95
116
  kind: 'theory_decl';
96
117
  name: string;
@@ -98,32 +119,38 @@ export interface TheoryDeclNode extends ASTNode {
98
119
  parent?: string;
99
120
  members: TheoryMember[];
100
121
  }
122
+ /** Comando `print <expr>`: imprime un valor o fórmula en stdout. */
101
123
  export interface PrintCmdNode extends ASTNode {
102
124
  kind: 'print_cmd';
103
125
  value: string | null;
104
126
  formula?: Formula;
105
127
  }
128
+ /** Comando `set <nombre> := <fórmula>`: asigna una fórmula a una variable mutable. */
106
129
  export interface SetCmdNode extends ASTNode {
107
130
  kind: 'set_cmd';
108
131
  name: string;
109
132
  formula: Formula;
110
133
  }
134
+ /** Rama condicional de un `if` con condición lógica sobre una fórmula. */
111
135
  export interface IfBranch {
112
136
  condition: 'valid' | 'satisfiable' | 'unsatisfiable' | 'invalid';
113
137
  formula: Formula;
114
138
  body: Statement[];
115
139
  }
140
+ /** Sentencia `if <condición lógica> { ... } else { ... }` del control flow de ST. */
116
141
  export interface IfStmtNode extends ASTNode {
117
142
  kind: 'if_stmt';
118
143
  branches: IfBranch[];
119
144
  elseBranch?: Statement[];
120
145
  }
146
+ /** Sentencia `for <var> in {A, B, C} { ... }`: itera sobre un conjunto de fórmulas. */
121
147
  export interface ForStmtNode extends ASTNode {
122
148
  kind: 'for_stmt';
123
149
  variable: string;
124
150
  items: Formula[];
125
151
  body: Statement[];
126
152
  }
153
+ /** Sentencia `while <condición lógica> <fórmula> { ... }` con límite de iteraciones por seguridad. */
127
154
  export interface WhileStmtNode extends ASTNode {
128
155
  kind: 'while_stmt';
129
156
  condition: 'valid' | 'satisfiable' | 'unsatisfiable' | 'invalid';
@@ -131,25 +158,30 @@ export interface WhileStmtNode extends ASTNode {
131
158
  body: Statement[];
132
159
  maxIterations: number;
133
160
  }
161
+ /** Declaración de función ST: `fn <nombre>(<params>) { ... }`. */
134
162
  export interface FnDeclNode extends ASTNode {
135
163
  kind: 'fn_decl';
136
164
  name: string;
137
165
  params: string[];
138
166
  body: Statement[];
139
167
  }
168
+ /** Sentencia `return <fórmula>` dentro de una función ST. */
140
169
  export interface ReturnStmtNode extends ASTNode {
141
170
  kind: 'return_stmt';
142
171
  formula?: Formula;
143
172
  }
173
+ /** Llamada a función ST: `<nombre>(<args...>)`. */
144
174
  export interface FnCallNode extends ASTNode {
145
175
  kind: 'fn_call';
146
176
  name: string;
147
177
  args: Formula[];
148
178
  }
179
+ /** Declara una sentencia como pública al importar el módulo ST. */
149
180
  export interface ExportDeclNode extends ASTNode {
150
181
  kind: 'export_decl';
151
182
  statement: Statement;
152
183
  }
184
+ /** Declaración `define <nombre>[(<params>)] := <body>`: crea una abreviación de fórmula. */
153
185
  export interface DefineDeclNode extends ASTNode {
154
186
  kind: 'define_decl';
155
187
  name: string;
@@ -157,38 +189,46 @@ export interface DefineDeclNode extends ASTNode {
157
189
  body: Formula;
158
190
  description?: string;
159
191
  }
192
+ /** Comando `unfold <fórmula>`: expande las definiciones en la fórmula dada. */
160
193
  export interface UnfoldCmdNode extends ASTNode {
161
194
  kind: 'unfold_cmd';
162
195
  formula: Formula;
163
196
  }
197
+ /** Comando `fold <fórmula>`: contrae subexpresiones que coinciden con definiciones. */
164
198
  export interface FoldCmdNode extends ASTNode {
165
199
  kind: 'fold_cmd';
166
200
  formula: Formula;
167
201
  }
202
+ /** Campo clave-valor de una declaración `source`. */
168
203
  export interface SourceField {
169
204
  key: string;
170
205
  value: string | number;
171
206
  }
207
+ /** Declaración bibliográfica `source <nombre> { author: ..., year: ... }`. */
172
208
  export interface SourceDeclNode extends ASTNode {
173
209
  kind: 'source_decl';
174
210
  name: string;
175
211
  fields: SourceField[];
176
212
  }
213
+ /** Comando `interpret "<texto>" as <fórmula>`: vincula un texto en lenguaje natural a su formalización. */
177
214
  export interface InterpretCmdNode extends ASTNode {
178
215
  kind: 'interpret_cmd';
179
216
  text: string;
180
217
  passageRef?: string;
181
218
  formula: Formula;
182
219
  }
220
+ /** Comando `glossary`: imprime el glosario semántico del documento actual. */
183
221
  export interface GlossaryCmdNode extends ASTNode {
184
222
  kind: 'glossary_cmd';
185
223
  }
224
+ /** Nodo `let <nombre> = passage "<path>"`: vincula un pasaje textual externo. */
186
225
  export interface LetPassageNode extends ASTNode {
187
226
  kind: 'let_decl';
188
227
  name: string;
189
228
  letType: 'passage';
190
229
  anchorPath: string;
191
230
  }
231
+ /** Nodo `let <nombre> = formalize <pasaje> as <fórmula>`: asocia una formalización a un pasaje. */
192
232
  export interface LetFormalizeNode extends ASTNode {
193
233
  kind: 'let_decl';
194
234
  name: string;
@@ -196,6 +236,7 @@ export interface LetFormalizeNode extends ASTNode {
196
236
  passageName: string;
197
237
  formula: Formula;
198
238
  }
239
+ /** Nodo `let <nombre> = <fórmula>`: declara un alias de fórmula con descripción opcional. */
199
240
  export interface LetFormulaNode extends ASTNode {
200
241
  kind: 'let_decl';
201
242
  name: string;
@@ -203,19 +244,23 @@ export interface LetFormulaNode extends ASTNode {
203
244
  formula: Formula;
204
245
  description?: string;
205
246
  }
247
+ /** Nodo `let <nombre> = "<texto>"`: asigna una descripción semántica en lenguaje natural. */
206
248
  export interface LetDescriptionNode extends ASTNode {
207
249
  kind: 'let_decl';
208
250
  name: string;
209
251
  letType: 'description';
210
252
  description: string;
211
253
  }
254
+ /** Nodo `let <nombre> = <acción>`: almacena el resultado de una acción lógica en una variable. */
212
255
  export interface LetActionNode extends ASTNode {
213
256
  kind: 'let_decl';
214
257
  name: string;
215
258
  letType: 'action';
216
259
  action: ActionExprNode;
217
260
  }
261
+ /** Unión discriminada de todas las variantes de la declaración `let`. */
218
262
  export type LetDeclNode = LetPassageNode | LetFormalizeNode | LetFormulaNode | LetDescriptionNode | LetActionNode;
263
+ /** Declaración de aserto: `claim <nombre> := <variable o fórmula>`. */
219
264
  export interface ClaimDeclNode extends ASTNode {
220
265
  kind: 'claim_decl';
221
266
  name: string;
@@ -223,22 +268,27 @@ export interface ClaimDeclNode extends ASTNode {
223
268
  formula?: Formula;
224
269
  formalization?: string;
225
270
  }
271
+ /** Declaración `support <claim> from <source>`: vincula evidencia bibliográfica a un aserto. */
226
272
  export interface SupportDeclNode extends ASTNode {
227
273
  kind: 'support_decl';
228
274
  claimName: string;
229
275
  sourceName: string;
230
276
  }
277
+ /** Declara un nivel de confianza numérico (0-1) para un aserto. */
231
278
  export interface ConfidenceDeclNode extends ASTNode {
232
279
  kind: 'confidence_decl';
233
280
  claimName: string;
234
281
  value: number;
235
282
  }
283
+ /** Declaración de contexto textual adicional para un aserto. */
236
284
  export interface ContextDeclNode extends ASTNode {
237
285
  kind: 'context_decl';
238
286
  claimName: string;
239
287
  text: string;
240
288
  }
289
+ /** Unión discriminada de todas las sentencias válidas en un programa ST. */
241
290
  export type Statement = LogicDeclNode | AxiomDeclNode | TheoremDeclNode | DeriveCmdNode | CheckValidCmdNode | CheckSatisfiableCmdNode | CheckEquivalentCmdNode | ProveCmdNode | CountermodelCmdNode | TruthTableCmdNode | LetDeclNode | ClaimDeclNode | SupportDeclNode | ConfidenceDeclNode | ContextDeclNode | RenderCmdNode | AnalyzeCmdNode | ExplainCmdNode | ImportDeclNode | ProofBlockNode | TheoryDeclNode | PrintCmdNode | SetCmdNode | IfStmtNode | ForStmtNode | WhileStmtNode | FnDeclNode | ReturnStmtNode | FnCallNode | ExportDeclNode | DefineDeclNode | UnfoldCmdNode | FoldCmdNode | SourceDeclNode | InterpretCmdNode | GlossaryCmdNode;
291
+ /** Representa un programa ST completo: lista de sentencias + ruta del archivo fuente. */
242
292
  export interface Program {
243
293
  statements: Statement[];
244
294
  file: string;
@@ -1 +1 @@
1
- {"version":3,"file":"nodes.d.ts","sourceRoot":"","sources":["../../src/ast/nodes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"nodes.d.ts","sourceRoot":"","sources":["../../src/ast/nodes.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAInD,mEAAmE;AACnE,MAAM,MAAM,aAAa,GACrB,YAAY,GACZ,YAAY,GACZ,cAAc,GACd,YAAY,GACZ,iBAAiB,GACjB,uBAAuB,GACvB,sBAAsB,GACtB,WAAW,GACX,kBAAkB,GAClB,iBAAiB,GACjB,UAAU,GACV,YAAY,GACZ,cAAc,GACd,iBAAiB,GACjB,cAAc,GACd,YAAY,GACZ,aAAa,GACb,aAAa,GACb,aAAa,GACb,aAAa,GACb,aAAa,GACb,WAAW,GACX,SAAS,GACT,SAAS,GACT,UAAU,GACV,YAAY,GACZ,SAAS,GACT,aAAa,GACb,SAAS,GACT,aAAa,GACb,aAAa,GACb,YAAY,GACZ,UAAU,GACV,aAAa,GACb,eAAe,GACf,cAAc,CAAC;AAEnB,+EAA+E;AAC/E,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,aAAa,CAAC;IACpB,MAAM,EAAE,cAAc,CAAC;CACxB;AAID,4EAA4E;AAC5E,MAAM,WAAW,aAAc,SAAQ,OAAO;IAC5C,IAAI,EAAE,YAAY,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,4DAA4D;AAC5D,MAAM,WAAW,aAAc,SAAQ,OAAO;IAC5C,IAAI,EAAE,YAAY,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,+DAA+D;AAC/D,MAAM,WAAW,eAAgB,SAAQ,OAAO;IAC9C,IAAI,EAAE,cAAc,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;CAClB;AAID,qGAAqG;AACrG,MAAM,WAAW,aAAc,SAAQ,OAAO;IAC5C,IAAI,EAAE,YAAY,CAAC;IACnB,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,6EAA6E;AAC7E,MAAM,WAAW,iBAAkB,SAAQ,OAAO;IAChD,IAAI,EAAE,iBAAiB,CAAC;IACxB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,qGAAqG;AACrG,MAAM,WAAW,uBAAwB,SAAQ,OAAO;IACtD,IAAI,EAAE,uBAAuB,CAAC;IAC9B,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,4FAA4F;AAC5F,MAAM,WAAW,sBAAuB,SAAQ,OAAO;IACrD,IAAI,EAAE,sBAAsB,CAAC;IAC7B,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,+FAA+F;AAC/F,MAAM,WAAW,YAAa,SAAQ,OAAO;IAC3C,IAAI,EAAE,WAAW,CAAC;IAClB,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,mFAAmF;AACnF,MAAM,WAAW,mBAAoB,SAAQ,OAAO;IAClD,IAAI,EAAE,kBAAkB,CAAC;IACzB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,gFAAgF;AAChF,MAAM,MAAM,cAAc,GACtB,aAAa,GACb,mBAAmB,GACnB,kBAAkB,GAClB,QAAQ,GACR,OAAO,GACP,cAAc,GACd,aAAa,GACb,SAAS,CAAC;AAEd,8DAA8D;AAC9D,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,aAAa,CAAC;IACpB,MAAM,EAAE,cAAc,CAAC;IACvB,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,2EAA2E;AAC3E,MAAM,WAAW,iBAAkB,SAAQ,OAAO;IAChD,IAAI,EAAE,iBAAiB,CAAC;IACxB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,qFAAqF;AACrF,MAAM,WAAW,aAAc,SAAQ,OAAO;IAC5C,IAAI,EAAE,YAAY,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,+FAA+F;AAC/F,MAAM,WAAW,cAAe,SAAQ,OAAO;IAC7C,IAAI,EAAE,aAAa,CAAC;IACpB,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,8FAA8F;AAC9F,MAAM,WAAW,cAAe,SAAQ,OAAO;IAC7C,IAAI,EAAE,aAAa,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,8EAA8E;AAC9E,MAAM,WAAW,cAAe,SAAQ,OAAO;IAC7C,IAAI,EAAE,aAAa,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,4EAA4E;AAC5E,MAAM,WAAW,cAAe,SAAQ,OAAO;IAC7C,IAAI,EAAE,aAAa,CAAC;IACpB,WAAW,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE,EAAE,CAAC;IAClD,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,SAAS,EAAE,CAAC;CACnB;AAED,wEAAwE;AACxE,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,SAAS,CAAC;IACrB,UAAU,EAAE,QAAQ,GAAG,SAAS,CAAC;CAClC;AAED,sFAAsF;AACtF,MAAM,WAAW,cAAe,SAAQ,OAAO;IAC7C,IAAI,EAAE,aAAa,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,YAAY,EAAE,CAAC;CACzB;AAID,oEAAoE;AACpE,MAAM,WAAW,YAAa,SAAQ,OAAO;IAC3C,IAAI,EAAE,WAAW,CAAC;IAClB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,sFAAsF;AACtF,MAAM,WAAW,UAAW,SAAQ,OAAO;IACzC,IAAI,EAAE,SAAS,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,0EAA0E;AAC1E,MAAM,WAAW,QAAQ;IACvB,SAAS,EAAE,OAAO,GAAG,aAAa,GAAG,eAAe,GAAG,SAAS,CAAC;IACjE,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,SAAS,EAAE,CAAC;CACnB;AAED,qFAAqF;AACrF,MAAM,WAAW,UAAW,SAAQ,OAAO;IACzC,IAAI,EAAE,SAAS,CAAC;IAChB,QAAQ,EAAE,QAAQ,EAAE,CAAC;IACrB,UAAU,CAAC,EAAE,SAAS,EAAE,CAAC;CAC1B;AAED,uFAAuF;AACvF,MAAM,WAAW,WAAY,SAAQ,OAAO;IAC1C,IAAI,EAAE,UAAU,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,OAAO,EAAE,CAAC;IACjB,IAAI,EAAE,SAAS,EAAE,CAAC;CACnB;AAED,sGAAsG;AACtG,MAAM,WAAW,aAAc,SAAQ,OAAO;IAC5C,IAAI,EAAE,YAAY,CAAC;IACnB,SAAS,EAAE,OAAO,GAAG,aAAa,GAAG,eAAe,GAAG,SAAS,CAAC;IACjE,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,SAAS,EAAE,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,kEAAkE;AAClE,MAAM,WAAW,UAAW,SAAQ,OAAO;IACzC,IAAI,EAAE,SAAS,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,IAAI,EAAE,SAAS,EAAE,CAAC;CACnB;AAED,6DAA6D;AAC7D,MAAM,WAAW,cAAe,SAAQ,OAAO;IAC7C,IAAI,EAAE,aAAa,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,mDAAmD;AACnD,MAAM,WAAW,UAAW,SAAQ,OAAO;IACzC,IAAI,EAAE,SAAS,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,OAAO,EAAE,CAAC;CACjB;AAED,mEAAmE;AACnE,MAAM,WAAW,cAAe,SAAQ,OAAO;IAC7C,IAAI,EAAE,aAAa,CAAC;IACpB,SAAS,EAAE,SAAS,CAAC;CACtB;AAID,4FAA4F;AAC5F,MAAM,WAAW,cAAe,SAAQ,OAAO;IAC7C,IAAI,EAAE,aAAa,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,IAAI,EAAE,OAAO,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,+EAA+E;AAC/E,MAAM,WAAW,aAAc,SAAQ,OAAO;IAC5C,IAAI,EAAE,YAAY,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,uFAAuF;AACvF,MAAM,WAAW,WAAY,SAAQ,OAAO;IAC1C,IAAI,EAAE,UAAU,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,qDAAqD;AACrD,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;CACxB;AAED,8EAA8E;AAC9E,MAAM,WAAW,cAAe,SAAQ,OAAO;IAC7C,IAAI,EAAE,aAAa,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,WAAW,EAAE,CAAC;CACvB;AAED,2GAA2G;AAC3G,MAAM,WAAW,gBAAiB,SAAQ,OAAO;IAC/C,IAAI,EAAE,eAAe,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,8EAA8E;AAC9E,MAAM,WAAW,eAAgB,SAAQ,OAAO;IAC9C,IAAI,EAAE,cAAc,CAAC;CACtB;AAID,iFAAiF;AACjF,MAAM,WAAW,cAAe,SAAQ,OAAO;IAC7C,IAAI,EAAE,UAAU,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,SAAS,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,mGAAmG;AACnG,MAAM,WAAW,gBAAiB,SAAQ,OAAO;IAC/C,IAAI,EAAE,UAAU,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,WAAW,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,6FAA6F;AAC7F,MAAM,WAAW,cAAe,SAAQ,OAAO;IAC7C,IAAI,EAAE,UAAU,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,SAAS,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,6FAA6F;AAC7F,MAAM,WAAW,kBAAmB,SAAQ,OAAO;IACjD,IAAI,EAAE,UAAU,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,aAAa,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,kGAAkG;AAClG,MAAM,WAAW,aAAc,SAAQ,OAAO;IAC5C,IAAI,EAAE,UAAU,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,QAAQ,CAAC;IAClB,MAAM,EAAE,cAAc,CAAC;CACxB;AAED,yEAAyE;AACzE,MAAM,MAAM,WAAW,GACnB,cAAc,GACd,gBAAgB,GAChB,cAAc,GACd,kBAAkB,GAClB,aAAa,CAAC;AAElB,uEAAuE;AACvE,MAAM,WAAW,aAAc,SAAQ,OAAO;IAC5C,IAAI,EAAE,YAAY,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,gGAAgG;AAChG,MAAM,WAAW,eAAgB,SAAQ,OAAO;IAC9C,IAAI,EAAE,cAAc,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,mEAAmE;AACnE,MAAM,WAAW,kBAAmB,SAAQ,OAAO;IACjD,IAAI,EAAE,iBAAiB,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,gEAAgE;AAChE,MAAM,WAAW,eAAgB,SAAQ,OAAO;IAC9C,IAAI,EAAE,cAAc,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;CACd;AAID,4EAA4E;AAC5E,MAAM,MAAM,SAAS,GACjB,aAAa,GACb,aAAa,GACb,eAAe,GACf,aAAa,GACb,iBAAiB,GACjB,uBAAuB,GACvB,sBAAsB,GACtB,YAAY,GACZ,mBAAmB,GACnB,iBAAiB,GACjB,WAAW,GACX,aAAa,GACb,eAAe,GACf,kBAAkB,GAClB,eAAe,GACf,aAAa,GACb,cAAc,GACd,cAAc,GACd,cAAc,GACd,cAAc,GACd,cAAc,GACd,YAAY,GACZ,UAAU,GACV,UAAU,GACV,WAAW,GACX,aAAa,GACb,UAAU,GACV,cAAc,GACd,UAAU,GACV,cAAc,GACd,cAAc,GACd,aAAa,GACb,WAAW,GACX,cAAc,GACd,gBAAgB,GAChB,eAAe,CAAC;AAEpB,yFAAyF;AACzF,MAAM,WAAW,OAAO;IACtB,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;CACd"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=executor.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"executor.test.d.ts","sourceRoot":"","sources":["../../../../src/format/stnb/__tests__/executor.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,140 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const vitest_1 = require("vitest");
4
+ const executor_1 = require("../executor");
5
+ function makeNotebook(cells = []) {
6
+ return {
7
+ version: '1.0',
8
+ kernel: 'st-lang',
9
+ kernelVersion: '4.14',
10
+ metadata: {
11
+ title: 'Executor Test',
12
+ profile: 'classical.propositional',
13
+ createdAt: '2026-05-18T00:00:00.000Z',
14
+ updatedAt: '2026-05-18T00:00:00.000Z',
15
+ },
16
+ cells,
17
+ };
18
+ }
19
+ (0, vitest_1.describe)('executeNotebook', () => {
20
+ (0, vitest_1.it)('executes empty notebook without error', () => {
21
+ const result = (0, executor_1.executeNotebook)(makeNotebook());
22
+ (0, vitest_1.expect)(result.cellsExecuted).toBe(0);
23
+ (0, vitest_1.expect)(result.errors).toHaveLength(0);
24
+ });
25
+ (0, vitest_1.it)('skips markdown cells', () => {
26
+ const nb = makeNotebook([
27
+ { id: 'md', type: 'markdown', source: '# Title' },
28
+ ]);
29
+ const result = (0, executor_1.executeNotebook)(nb);
30
+ (0, vitest_1.expect)(result.cellsExecuted).toBe(0);
31
+ (0, vitest_1.expect)(result.notebook.cells[0].type).toBe('markdown');
32
+ });
33
+ (0, vitest_1.it)('executes a valid code cell and captures result output', () => {
34
+ const nb = makeNotebook([
35
+ {
36
+ id: 'c1',
37
+ type: 'code',
38
+ source: 'check valid P -> P',
39
+ outputs: [],
40
+ },
41
+ ]);
42
+ const result = (0, executor_1.executeNotebook)(nb);
43
+ (0, vitest_1.expect)(result.cellsExecuted).toBe(1);
44
+ const cell = result.notebook.cells[0];
45
+ if (cell?.type === 'code') {
46
+ (0, vitest_1.expect)(cell.outputs.length).toBeGreaterThan(0);
47
+ (0, vitest_1.expect)(cell.outputs[0].type).toBe('result');
48
+ }
49
+ });
50
+ (0, vitest_1.it)('captures error output for invalid ST code', () => {
51
+ const nb = makeNotebook([
52
+ {
53
+ id: 'c-err',
54
+ type: 'code',
55
+ source: 'this is not valid st code @@@@',
56
+ outputs: [],
57
+ },
58
+ ]);
59
+ const result = (0, executor_1.executeNotebook)(nb);
60
+ const cell = result.notebook.cells[0];
61
+ if (cell?.type === 'code') {
62
+ (0, vitest_1.expect)(cell.outputs.length).toBeGreaterThan(0);
63
+ const out = cell.outputs[0];
64
+ (0, vitest_1.expect)(out.type === 'result' || out.type === 'error').toBe(true);
65
+ }
66
+ });
67
+ (0, vitest_1.it)('executes multiple cells in order', () => {
68
+ const nb = makeNotebook([
69
+ { id: 'md', type: 'markdown', source: '# Intro' },
70
+ { id: 'c1', type: 'code', source: 'check valid P -> P', outputs: [] },
71
+ {
72
+ id: 'c2',
73
+ type: 'code',
74
+ source: 'check valid (P -> Q) -> (not Q -> not P)',
75
+ outputs: [],
76
+ },
77
+ ]);
78
+ const result = (0, executor_1.executeNotebook)(nb);
79
+ (0, vitest_1.expect)(result.cellsExecuted).toBe(2);
80
+ (0, vitest_1.expect)(result.notebook.cells).toHaveLength(3);
81
+ });
82
+ (0, vitest_1.it)('uses per-cell profile when specified', () => {
83
+ const nb = makeNotebook([
84
+ {
85
+ id: 'modal-cell',
86
+ type: 'code',
87
+ source: 'check valid []P -> P',
88
+ profile: 'modal.s4',
89
+ outputs: [],
90
+ },
91
+ ]);
92
+ const result = (0, executor_1.executeNotebook)(nb);
93
+ (0, vitest_1.expect)(result.cellsExecuted).toBe(1);
94
+ });
95
+ (0, vitest_1.it)('updates notebook metadata.updatedAt after execution', () => {
96
+ const originalDate = '2026-01-01T00:00:00.000Z';
97
+ const nb = makeNotebook([
98
+ { id: 'c1', type: 'code', source: 'check valid P -> P', outputs: [] },
99
+ ]);
100
+ nb.metadata.updatedAt = originalDate;
101
+ const result = (0, executor_1.executeNotebook)(nb);
102
+ (0, vitest_1.expect)(result.notebook.metadata.updatedAt).not.toBe(originalDate);
103
+ });
104
+ (0, vitest_1.it)('outputs include executionTime in metadata', () => {
105
+ const nb = makeNotebook([
106
+ { id: 'c1', type: 'code', source: 'check valid P -> P', outputs: [] },
107
+ ]);
108
+ const result = (0, executor_1.executeNotebook)(nb);
109
+ const cell = result.notebook.cells[0];
110
+ if (cell?.type === 'code' && cell.outputs.length > 0) {
111
+ (0, vitest_1.expect)(cell.outputs[0].metadata?.executionTime).toBeDefined();
112
+ (0, vitest_1.expect)(typeof cell.outputs[0].metadata?.executionTime).toBe('number');
113
+ }
114
+ });
115
+ (0, vitest_1.it)('does not mutate the original notebook', () => {
116
+ const nb = makeNotebook([
117
+ { id: 'c1', type: 'code', source: 'check valid P -> P', outputs: [] },
118
+ ]);
119
+ const cellsBefore = nb.cells.length;
120
+ (0, executor_1.executeNotebook)(nb);
121
+ (0, vitest_1.expect)(nb.cells.length).toBe(cellsBefore);
122
+ if (nb.cells[0]?.type === 'code') {
123
+ (0, vitest_1.expect)(nb.cells[0].outputs).toHaveLength(0);
124
+ }
125
+ });
126
+ });
127
+ (0, vitest_1.describe)('executeCell', () => {
128
+ (0, vitest_1.it)('returns result output for valid ST code', () => {
129
+ const cell = {
130
+ id: 'c1',
131
+ type: 'code',
132
+ source: 'check valid P -> P',
133
+ outputs: [],
134
+ };
135
+ const outputs = (0, executor_1.executeCell)(cell, 'classical.propositional');
136
+ (0, vitest_1.expect)(outputs.length).toBeGreaterThan(0);
137
+ (0, vitest_1.expect)(outputs[0].type === 'result' || outputs[0].type === 'error').toBe(true);
138
+ });
139
+ });
140
+ //# sourceMappingURL=executor.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"executor.test.js","sourceRoot":"","sources":["../../../../src/format/stnb/__tests__/executor.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=parser.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parser.test.d.ts","sourceRoot":"","sources":["../../../../src/format/stnb/__tests__/parser.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,119 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const vitest_1 = require("vitest");
4
+ const parser_1 = require("../parser");
5
+ const VALID_NOTEBOOK = {
6
+ version: '1.0',
7
+ kernel: 'st-lang',
8
+ kernelVersion: '4.14',
9
+ metadata: {
10
+ title: 'Test',
11
+ profile: 'classical.propositional',
12
+ createdAt: '2026-05-18T00:00:00.000Z',
13
+ updatedAt: '2026-05-18T00:00:00.000Z',
14
+ },
15
+ cells: [],
16
+ };
17
+ function makeJson(overrides = {}) {
18
+ return JSON.stringify({ ...VALID_NOTEBOOK, ...overrides });
19
+ }
20
+ (0, vitest_1.describe)('parseNotebook', () => {
21
+ (0, vitest_1.it)('parses a minimal valid notebook', () => {
22
+ const nb = (0, parser_1.parseNotebook)(makeJson());
23
+ (0, vitest_1.expect)(nb.version).toBe('1.0');
24
+ (0, vitest_1.expect)(nb.kernel).toBe('st-lang');
25
+ (0, vitest_1.expect)(nb.cells).toHaveLength(0);
26
+ });
27
+ (0, vitest_1.it)('parses notebook with markdown and code cells', () => {
28
+ const json = JSON.stringify({
29
+ ...VALID_NOTEBOOK,
30
+ cells: [
31
+ { id: 'md-1', type: 'markdown', source: '# Hello' },
32
+ { id: 'code-1', type: 'code', source: 'check valid P -> P', outputs: [] },
33
+ ],
34
+ });
35
+ const nb = (0, parser_1.parseNotebook)(json);
36
+ (0, vitest_1.expect)(nb.cells).toHaveLength(2);
37
+ (0, vitest_1.expect)(nb.cells[0].type).toBe('markdown');
38
+ (0, vitest_1.expect)(nb.cells[1].type).toBe('code');
39
+ });
40
+ (0, vitest_1.it)('parses code cell with outputs', () => {
41
+ const json = JSON.stringify({
42
+ ...VALID_NOTEBOOK,
43
+ cells: [
44
+ {
45
+ id: 'c1',
46
+ type: 'code',
47
+ source: 'check valid P',
48
+ outputs: [
49
+ {
50
+ type: 'result',
51
+ data: { valid: true, stdout: 'ok' },
52
+ metadata: { executionTime: 10 },
53
+ },
54
+ ],
55
+ },
56
+ ],
57
+ });
58
+ const nb = (0, parser_1.parseNotebook)(json);
59
+ const cell = nb.cells[0];
60
+ (0, vitest_1.expect)(cell?.type).toBe('code');
61
+ if (cell?.type === 'code') {
62
+ (0, vitest_1.expect)(cell.outputs).toHaveLength(1);
63
+ (0, vitest_1.expect)(cell.outputs[0].type).toBe('result');
64
+ (0, vitest_1.expect)(cell.outputs[0].metadata?.executionTime).toBe(10);
65
+ }
66
+ });
67
+ (0, vitest_1.it)('throws ParseError for invalid JSON', () => {
68
+ (0, vitest_1.expect)(() => (0, parser_1.parseNotebook)('not json')).toThrow(parser_1.ParseError);
69
+ (0, vitest_1.expect)(() => (0, parser_1.parseNotebook)('not json')).toThrow('Invalid JSON');
70
+ });
71
+ (0, vitest_1.it)('throws ParseError when version is missing', () => {
72
+ const json = makeJson({ version: undefined });
73
+ (0, vitest_1.expect)(() => (0, parser_1.parseNotebook)(json)).toThrow(parser_1.ParseError);
74
+ });
75
+ (0, vitest_1.it)('throws ParseError for unsupported version', () => {
76
+ (0, vitest_1.expect)(() => (0, parser_1.parseNotebook)(makeJson({ version: '2.0' }))).toThrow(parser_1.ParseError);
77
+ (0, vitest_1.expect)(() => (0, parser_1.parseNotebook)(makeJson({ version: '2.0' }))).toThrow('Unsupported notebook version');
78
+ });
79
+ (0, vitest_1.it)('throws ParseError for invalid cell type', () => {
80
+ const json = JSON.stringify({
81
+ ...VALID_NOTEBOOK,
82
+ cells: [{ id: 'x', type: 'invalid', source: '' }],
83
+ });
84
+ (0, vitest_1.expect)(() => (0, parser_1.parseNotebook)(json)).toThrow(parser_1.ParseError);
85
+ (0, vitest_1.expect)(() => (0, parser_1.parseNotebook)(json)).toThrow('invalid type');
86
+ });
87
+ (0, vitest_1.it)('parses code cell with per-cell profile override', () => {
88
+ const json = JSON.stringify({
89
+ ...VALID_NOTEBOOK,
90
+ cells: [
91
+ {
92
+ id: 'c1',
93
+ type: 'code',
94
+ source: 'check valid []P -> P',
95
+ profile: 'modal.s4',
96
+ outputs: [],
97
+ },
98
+ ],
99
+ });
100
+ const nb = (0, parser_1.parseNotebook)(json);
101
+ const cell = nb.cells[0];
102
+ if (cell?.type === 'code') {
103
+ (0, vitest_1.expect)(cell.profile).toBe('modal.s4');
104
+ }
105
+ });
106
+ (0, vitest_1.it)('preserves extra metadata fields', () => {
107
+ const json = JSON.stringify({
108
+ ...VALID_NOTEBOOK,
109
+ metadata: {
110
+ ...VALID_NOTEBOOK.metadata,
111
+ customField: 'custom-value',
112
+ tags: ['logic', 'intro'],
113
+ },
114
+ });
115
+ const nb = (0, parser_1.parseNotebook)(json);
116
+ (0, vitest_1.expect)(nb.metadata.customField).toBe('custom-value');
117
+ });
118
+ });
119
+ //# sourceMappingURL=parser.test.js.map