@stevenvo780/st-lang 3.2.3 → 4.0.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 (445) hide show
  1. package/README.md +47 -7
  2. package/dist/api.d.ts +2 -0
  3. package/dist/api.d.ts.map +1 -1
  4. package/dist/api.js +5 -1
  5. package/dist/api.js.map +1 -1
  6. package/dist/argumentation/dot.d.ts +3 -0
  7. package/dist/argumentation/dot.d.ts.map +1 -0
  8. package/dist/argumentation/dot.js +25 -0
  9. package/dist/argumentation/dot.js.map +1 -0
  10. package/dist/argumentation/extensions.d.ts +11 -0
  11. package/dist/argumentation/extensions.d.ts.map +1 -0
  12. package/dist/argumentation/extensions.js +173 -0
  13. package/dist/argumentation/extensions.js.map +1 -0
  14. package/dist/argumentation/framework.d.ts +13 -0
  15. package/dist/argumentation/framework.d.ts.map +1 -0
  16. package/dist/argumentation/framework.js +117 -0
  17. package/dist/argumentation/framework.js.map +1 -0
  18. package/dist/argumentation/index.d.ts +6 -0
  19. package/dist/argumentation/index.d.ts.map +1 -0
  20. package/dist/argumentation/index.js +33 -0
  21. package/dist/argumentation/index.js.map +1 -0
  22. package/dist/argumentation/types.d.ts +11 -0
  23. package/dist/argumentation/types.d.ts.map +1 -0
  24. package/dist/argumentation/types.js +8 -0
  25. package/dist/argumentation/types.js.map +1 -0
  26. package/dist/ast/visitor.d.ts +95 -0
  27. package/dist/ast/visitor.d.ts.map +1 -0
  28. package/dist/ast/visitor.js +223 -0
  29. package/dist/ast/visitor.js.map +1 -0
  30. package/dist/citation-reasoning/derive.d.ts +31 -0
  31. package/dist/citation-reasoning/derive.d.ts.map +1 -0
  32. package/dist/citation-reasoning/derive.js +157 -0
  33. package/dist/citation-reasoning/derive.js.map +1 -0
  34. package/dist/citation-reasoning/index.d.ts +4 -0
  35. package/dist/citation-reasoning/index.d.ts.map +1 -0
  36. package/dist/citation-reasoning/index.js +10 -0
  37. package/dist/citation-reasoning/index.js.map +1 -0
  38. package/dist/citation-reasoning/types.d.ts +36 -0
  39. package/dist/citation-reasoning/types.d.ts.map +1 -0
  40. package/dist/citation-reasoning/types.js +6 -0
  41. package/dist/citation-reasoning/types.js.map +1 -0
  42. package/dist/educational/checker.d.ts +3 -0
  43. package/dist/educational/checker.d.ts.map +1 -0
  44. package/dist/educational/checker.js +244 -0
  45. package/dist/educational/checker.js.map +1 -0
  46. package/dist/educational/generator.d.ts +4 -0
  47. package/dist/educational/generator.d.ts.map +1 -0
  48. package/dist/educational/generator.js +158 -0
  49. package/dist/educational/generator.js.map +1 -0
  50. package/dist/educational/index.d.ts +6 -0
  51. package/dist/educational/index.d.ts.map +1 -0
  52. package/dist/educational/index.js +21 -0
  53. package/dist/educational/index.js.map +1 -0
  54. package/dist/educational/normalize.d.ts +6 -0
  55. package/dist/educational/normalize.d.ts.map +1 -0
  56. package/dist/educational/normalize.js +124 -0
  57. package/dist/educational/normalize.js.map +1 -0
  58. package/dist/educational/rng.d.ts +10 -0
  59. package/dist/educational/rng.d.ts.map +1 -0
  60. package/dist/educational/rng.js +47 -0
  61. package/dist/educational/rng.js.map +1 -0
  62. package/dist/educational/templates.d.ts +30 -0
  63. package/dist/educational/templates.d.ts.map +1 -0
  64. package/dist/educational/templates.js +567 -0
  65. package/dist/educational/templates.js.map +1 -0
  66. package/dist/educational/types.d.ts +44 -0
  67. package/dist/educational/types.d.ts.map +1 -0
  68. package/dist/educational/types.js +20 -0
  69. package/dist/educational/types.js.map +1 -0
  70. package/dist/exporters/coq/index.d.ts +35 -0
  71. package/dist/exporters/coq/index.d.ts.map +1 -0
  72. package/dist/exporters/coq/index.js +299 -0
  73. package/dist/exporters/coq/index.js.map +1 -0
  74. package/dist/fol-prover/cnf.d.ts +10 -0
  75. package/dist/fol-prover/cnf.d.ts.map +1 -0
  76. package/dist/fol-prover/cnf.js +357 -0
  77. package/dist/fol-prover/cnf.js.map +1 -0
  78. package/dist/fol-prover/index.d.ts +7 -0
  79. package/dist/fol-prover/index.d.ts.map +1 -0
  80. package/dist/fol-prover/index.js +27 -0
  81. package/dist/fol-prover/index.js.map +1 -0
  82. package/dist/fol-prover/prove.d.ts +4 -0
  83. package/dist/fol-prover/prove.d.ts.map +1 -0
  84. package/dist/fol-prover/prove.js +34 -0
  85. package/dist/fol-prover/prove.js.map +1 -0
  86. package/dist/fol-prover/resolve.d.ts +27 -0
  87. package/dist/fol-prover/resolve.d.ts.map +1 -0
  88. package/dist/fol-prover/resolve.js +234 -0
  89. package/dist/fol-prover/resolve.js.map +1 -0
  90. package/dist/fol-prover/types.d.ts +34 -0
  91. package/dist/fol-prover/types.d.ts.map +1 -0
  92. package/dist/fol-prover/types.js +38 -0
  93. package/dist/fol-prover/types.js.map +1 -0
  94. package/dist/fol-prover/unify.d.ts +9 -0
  95. package/dist/fol-prover/unify.d.ts.map +1 -0
  96. package/dist/fol-prover/unify.js +110 -0
  97. package/dist/fol-prover/unify.js.map +1 -0
  98. package/dist/hyperreal/index.d.ts +45 -0
  99. package/dist/hyperreal/index.d.ts.map +1 -0
  100. package/dist/hyperreal/index.js +183 -0
  101. package/dist/hyperreal/index.js.map +1 -0
  102. package/dist/index.d.ts +26 -0
  103. package/dist/index.d.ts.map +1 -1
  104. package/dist/index.js +72 -1
  105. package/dist/index.js.map +1 -1
  106. package/dist/lsp/index.d.ts +6 -0
  107. package/dist/lsp/index.d.ts.map +1 -0
  108. package/dist/lsp/index.js +29 -0
  109. package/dist/lsp/index.js.map +1 -0
  110. package/dist/lsp/protocol.d.ts +20 -0
  111. package/dist/lsp/protocol.d.ts.map +1 -0
  112. package/dist/lsp/protocol.js +64 -0
  113. package/dist/lsp/protocol.js.map +1 -0
  114. package/dist/lsp/server.d.ts +47 -0
  115. package/dist/lsp/server.d.ts.map +1 -0
  116. package/dist/lsp/server.js +529 -0
  117. package/dist/lsp/server.js.map +1 -0
  118. package/dist/lsp/types.d.ts +152 -0
  119. package/dist/lsp/types.d.ts.map +1 -0
  120. package/dist/lsp/types.js +70 -0
  121. package/dist/lsp/types.js.map +1 -0
  122. package/dist/parser/formulas.d.ts +7 -0
  123. package/dist/parser/formulas.d.ts.map +1 -0
  124. package/dist/parser/formulas.js +511 -0
  125. package/dist/parser/formulas.js.map +1 -0
  126. package/dist/parser/parser.d.ts +11 -41
  127. package/dist/parser/parser.d.ts.map +1 -1
  128. package/dist/parser/parser.js +410 -1037
  129. package/dist/parser/parser.js.map +1 -1
  130. package/dist/parser/state.d.ts +34 -0
  131. package/dist/parser/state.d.ts.map +1 -0
  132. package/dist/parser/state.js +163 -0
  133. package/dist/parser/state.js.map +1 -0
  134. package/dist/plugin-system/demo-min-logic.d.ts +3 -0
  135. package/dist/plugin-system/demo-min-logic.d.ts.map +1 -0
  136. package/dist/plugin-system/demo-min-logic.js +116 -0
  137. package/dist/plugin-system/demo-min-logic.js.map +1 -0
  138. package/dist/plugin-system/errors.d.ts +9 -0
  139. package/dist/plugin-system/errors.d.ts.map +1 -0
  140. package/dist/plugin-system/errors.js +24 -0
  141. package/dist/plugin-system/errors.js.map +1 -0
  142. package/dist/plugin-system/index.d.ts +6 -0
  143. package/dist/plugin-system/index.d.ts.map +1 -0
  144. package/dist/plugin-system/index.js +14 -0
  145. package/dist/plugin-system/index.js.map +1 -0
  146. package/dist/plugin-system/registry.d.ts +12 -0
  147. package/dist/plugin-system/registry.d.ts.map +1 -0
  148. package/dist/plugin-system/registry.js +46 -0
  149. package/dist/plugin-system/registry.js.map +1 -0
  150. package/dist/plugin-system/types.d.ts +23 -0
  151. package/dist/plugin-system/types.d.ts.map +1 -0
  152. package/dist/plugin-system/types.js +3 -0
  153. package/dist/plugin-system/types.js.map +1 -0
  154. package/dist/plugin-system/validate.d.ts +4 -0
  155. package/dist/plugin-system/validate.d.ts.map +1 -0
  156. package/dist/plugin-system/validate.js +60 -0
  157. package/dist/plugin-system/validate.js.map +1 -0
  158. package/dist/profiles/classical/parallel-sat.js +3 -3
  159. package/dist/profiles/classical/parallel-sat.js.map +1 -1
  160. package/dist/proof-exchange/index.d.ts +26 -0
  161. package/dist/proof-exchange/index.d.ts.map +1 -0
  162. package/dist/proof-exchange/index.js +94 -0
  163. package/dist/proof-exchange/index.js.map +1 -0
  164. package/dist/runtime/memo/cache.d.ts +32 -0
  165. package/dist/runtime/memo/cache.d.ts.map +1 -0
  166. package/dist/runtime/memo/cache.js +129 -0
  167. package/dist/runtime/memo/cache.js.map +1 -0
  168. package/dist/runtime/memo/hash.d.ts +9 -0
  169. package/dist/runtime/memo/hash.d.ts.map +1 -0
  170. package/dist/runtime/memo/hash.js +87 -0
  171. package/dist/runtime/memo/hash.js.map +1 -0
  172. package/dist/runtime/memo/index.d.ts +4 -0
  173. package/dist/runtime/memo/index.d.ts.map +1 -0
  174. package/dist/runtime/memo/index.js +8 -0
  175. package/dist/runtime/memo/index.js.map +1 -0
  176. package/dist/runtime/parallel/index.d.ts +34 -0
  177. package/dist/runtime/parallel/index.d.ts.map +1 -0
  178. package/dist/runtime/parallel/index.js +220 -0
  179. package/dist/runtime/parallel/index.js.map +1 -0
  180. package/dist/runtime/parallel/worker.d.ts +22 -0
  181. package/dist/runtime/parallel/worker.d.ts.map +1 -0
  182. package/dist/runtime/parallel/worker.js +43 -0
  183. package/dist/runtime/parallel/worker.js.map +1 -0
  184. package/dist/runtime/smt/index.d.ts +6 -0
  185. package/dist/runtime/smt/index.d.ts.map +1 -0
  186. package/dist/runtime/smt/index.js +18 -0
  187. package/dist/runtime/smt/index.js.map +1 -0
  188. package/dist/runtime/smt/mock-backend.d.ts +30 -0
  189. package/dist/runtime/smt/mock-backend.d.ts.map +1 -0
  190. package/dist/runtime/smt/mock-backend.js +460 -0
  191. package/dist/runtime/smt/mock-backend.js.map +1 -0
  192. package/dist/runtime/smt/serializer.d.ts +21 -0
  193. package/dist/runtime/smt/serializer.d.ts.map +1 -0
  194. package/dist/runtime/smt/serializer.js +314 -0
  195. package/dist/runtime/smt/serializer.js.map +1 -0
  196. package/dist/runtime/smt/subprocess-backend.d.ts +62 -0
  197. package/dist/runtime/smt/subprocess-backend.d.ts.map +1 -0
  198. package/dist/runtime/smt/subprocess-backend.js +261 -0
  199. package/dist/runtime/smt/subprocess-backend.js.map +1 -0
  200. package/dist/runtime/smt/types.d.ts +57 -0
  201. package/dist/runtime/smt/types.d.ts.map +1 -0
  202. package/dist/runtime/smt/types.js +6 -0
  203. package/dist/runtime/smt/types.js.map +1 -0
  204. package/dist/runtime/streaming/index.d.ts +4 -0
  205. package/dist/runtime/streaming/index.d.ts.map +1 -0
  206. package/dist/runtime/streaming/index.js +9 -0
  207. package/dist/runtime/streaming/index.js.map +1 -0
  208. package/dist/runtime/streaming/stream-eval.d.ts +31 -0
  209. package/dist/runtime/streaming/stream-eval.d.ts.map +1 -0
  210. package/dist/runtime/streaming/stream-eval.js +155 -0
  211. package/dist/runtime/streaming/stream-eval.js.map +1 -0
  212. package/dist/runtime/streaming/types.d.ts +33 -0
  213. package/dist/runtime/streaming/types.d.ts.map +1 -0
  214. package/dist/runtime/streaming/types.js +6 -0
  215. package/dist/runtime/streaming/types.js.map +1 -0
  216. package/dist/runtime/typecheck/checker.d.ts +72 -0
  217. package/dist/runtime/typecheck/checker.d.ts.map +1 -0
  218. package/dist/runtime/typecheck/checker.js +462 -0
  219. package/dist/runtime/typecheck/checker.js.map +1 -0
  220. package/dist/runtime/typecheck/index.d.ts +4 -0
  221. package/dist/runtime/typecheck/index.d.ts.map +1 -0
  222. package/dist/runtime/typecheck/index.js +13 -0
  223. package/dist/runtime/typecheck/index.js.map +1 -0
  224. package/dist/runtime/typecheck/levenshtein.d.ts +11 -0
  225. package/dist/runtime/typecheck/levenshtein.d.ts.map +1 -0
  226. package/dist/runtime/typecheck/levenshtein.js +49 -0
  227. package/dist/runtime/typecheck/levenshtein.js.map +1 -0
  228. package/dist/runtime/typecheck/types.d.ts +14 -0
  229. package/dist/runtime/typecheck/types.d.ts.map +1 -0
  230. package/dist/runtime/typecheck/types.js +26 -0
  231. package/dist/runtime/typecheck/types.js.map +1 -0
  232. package/dist/solver/cdcl-v2/clause-learning.d.ts +33 -0
  233. package/dist/solver/cdcl-v2/clause-learning.d.ts.map +1 -0
  234. package/dist/solver/cdcl-v2/clause-learning.js +110 -0
  235. package/dist/solver/cdcl-v2/clause-learning.js.map +1 -0
  236. package/dist/solver/cdcl-v2/index.d.ts +9 -0
  237. package/dist/solver/cdcl-v2/index.d.ts.map +1 -0
  238. package/dist/solver/cdcl-v2/index.js +39 -0
  239. package/dist/solver/cdcl-v2/index.js.map +1 -0
  240. package/dist/solver/cdcl-v2/lbd.d.ts +34 -0
  241. package/dist/solver/cdcl-v2/lbd.d.ts.map +1 -0
  242. package/dist/solver/cdcl-v2/lbd.js +72 -0
  243. package/dist/solver/cdcl-v2/lbd.js.map +1 -0
  244. package/dist/solver/cdcl-v2/luby.d.ts +28 -0
  245. package/dist/solver/cdcl-v2/luby.d.ts.map +1 -0
  246. package/dist/solver/cdcl-v2/luby.js +70 -0
  247. package/dist/solver/cdcl-v2/luby.js.map +1 -0
  248. package/dist/solver/cdcl-v2/phase-saving.d.ts +14 -0
  249. package/dist/solver/cdcl-v2/phase-saving.d.ts.map +1 -0
  250. package/dist/solver/cdcl-v2/phase-saving.js +44 -0
  251. package/dist/solver/cdcl-v2/phase-saving.js.map +1 -0
  252. package/dist/solver/cdcl-v2/solver.d.ts +10 -0
  253. package/dist/solver/cdcl-v2/solver.d.ts.map +1 -0
  254. package/dist/solver/cdcl-v2/solver.js +442 -0
  255. package/dist/solver/cdcl-v2/solver.js.map +1 -0
  256. package/dist/solver/cdcl-v2/state.d.ts +54 -0
  257. package/dist/solver/cdcl-v2/state.d.ts.map +1 -0
  258. package/dist/solver/cdcl-v2/state.js +22 -0
  259. package/dist/solver/cdcl-v2/state.js.map +1 -0
  260. package/dist/solver/cdcl-v2/vsids.d.ts +19 -0
  261. package/dist/solver/cdcl-v2/vsids.d.ts.map +1 -0
  262. package/dist/solver/cdcl-v2/vsids.js +77 -0
  263. package/dist/solver/cdcl-v2/vsids.js.map +1 -0
  264. package/dist/tests/agora-integration-fixtures.test.js.map +1 -1
  265. package/dist/tests/argumentation/dung.test.d.ts +2 -0
  266. package/dist/tests/argumentation/dung.test.d.ts.map +1 -0
  267. package/dist/tests/argumentation/dung.test.js +219 -0
  268. package/dist/tests/argumentation/dung.test.js.map +1 -0
  269. package/dist/tests/citation-reasoning/citation-reasoning.test.d.ts +2 -0
  270. package/dist/tests/citation-reasoning/citation-reasoning.test.d.ts.map +1 -0
  271. package/dist/tests/citation-reasoning/citation-reasoning.test.js +240 -0
  272. package/dist/tests/citation-reasoning/citation-reasoning.test.js.map +1 -0
  273. package/dist/tests/coverage-fill-api.test.d.ts +7 -0
  274. package/dist/tests/coverage-fill-api.test.d.ts.map +1 -0
  275. package/dist/tests/coverage-fill-api.test.js +310 -0
  276. package/dist/tests/coverage-fill-api.test.js.map +1 -0
  277. package/dist/tests/coverage-fill-aristotelian.test.d.ts +7 -0
  278. package/dist/tests/coverage-fill-aristotelian.test.d.ts.map +1 -0
  279. package/dist/tests/coverage-fill-aristotelian.test.js +377 -0
  280. package/dist/tests/coverage-fill-aristotelian.test.js.map +1 -0
  281. package/dist/tests/coverage-fill-belnap.test.d.ts +6 -0
  282. package/dist/tests/coverage-fill-belnap.test.d.ts.map +1 -0
  283. package/dist/tests/coverage-fill-belnap.test.js +277 -0
  284. package/dist/tests/coverage-fill-belnap.test.js.map +1 -0
  285. package/dist/tests/coverage-fill-cross-system.test.d.ts +6 -0
  286. package/dist/tests/coverage-fill-cross-system.test.d.ts.map +1 -0
  287. package/dist/tests/coverage-fill-cross-system.test.js +75 -0
  288. package/dist/tests/coverage-fill-cross-system.test.js.map +1 -0
  289. package/dist/tests/coverage-fill-fallacies.test.d.ts +6 -0
  290. package/dist/tests/coverage-fill-fallacies.test.d.ts.map +1 -0
  291. package/dist/tests/coverage-fill-fallacies.test.js +287 -0
  292. package/dist/tests/coverage-fill-fallacies.test.js.map +1 -0
  293. package/dist/tests/coverage-fill-format.test.d.ts +7 -0
  294. package/dist/tests/coverage-fill-format.test.d.ts.map +1 -0
  295. package/dist/tests/coverage-fill-format.test.js +455 -0
  296. package/dist/tests/coverage-fill-format.test.js.map +1 -0
  297. package/dist/tests/coverage-fill-intuitionistic.test.d.ts +6 -0
  298. package/dist/tests/coverage-fill-intuitionistic.test.d.ts.map +1 -0
  299. package/dist/tests/coverage-fill-intuitionistic.test.js +293 -0
  300. package/dist/tests/coverage-fill-intuitionistic.test.js.map +1 -0
  301. package/dist/tests/coverage-fill-probabilistic.test.d.ts +7 -0
  302. package/dist/tests/coverage-fill-probabilistic.test.d.ts.map +1 -0
  303. package/dist/tests/coverage-fill-probabilistic.test.js +314 -0
  304. package/dist/tests/coverage-fill-probabilistic.test.js.map +1 -0
  305. package/dist/tests/educational/checker.test.d.ts +2 -0
  306. package/dist/tests/educational/checker.test.d.ts.map +1 -0
  307. package/dist/tests/educational/checker.test.js +212 -0
  308. package/dist/tests/educational/checker.test.js.map +1 -0
  309. package/dist/tests/educational/generator.test.d.ts +2 -0
  310. package/dist/tests/educational/generator.test.d.ts.map +1 -0
  311. package/dist/tests/educational/generator.test.js +137 -0
  312. package/dist/tests/educational/generator.test.js.map +1 -0
  313. package/dist/tests/exporters/coq/coq-exporter.test.d.ts +2 -0
  314. package/dist/tests/exporters/coq/coq-exporter.test.d.ts.map +1 -0
  315. package/dist/tests/exporters/coq/coq-exporter.test.js +353 -0
  316. package/dist/tests/exporters/coq/coq-exporter.test.js.map +1 -0
  317. package/dist/tests/fol-prover/cnf.test.d.ts +2 -0
  318. package/dist/tests/fol-prover/cnf.test.d.ts.map +1 -0
  319. package/dist/tests/fol-prover/cnf.test.js +74 -0
  320. package/dist/tests/fol-prover/cnf.test.js.map +1 -0
  321. package/dist/tests/fol-prover/prove.test.d.ts +2 -0
  322. package/dist/tests/fol-prover/prove.test.d.ts.map +1 -0
  323. package/dist/tests/fol-prover/prove.test.js +106 -0
  324. package/dist/tests/fol-prover/prove.test.js.map +1 -0
  325. package/dist/tests/fol-prover/unify.test.d.ts +2 -0
  326. package/dist/tests/fol-prover/unify.test.d.ts.map +1 -0
  327. package/dist/tests/fol-prover/unify.test.js +66 -0
  328. package/dist/tests/fol-prover/unify.test.js.map +1 -0
  329. package/dist/tests/hyperreal/hyperreal.test.d.ts +2 -0
  330. package/dist/tests/hyperreal/hyperreal.test.d.ts.map +1 -0
  331. package/dist/tests/hyperreal/hyperreal.test.js +219 -0
  332. package/dist/tests/hyperreal/hyperreal.test.js.map +1 -0
  333. package/dist/tests/lsp/server.test.d.ts +2 -0
  334. package/dist/tests/lsp/server.test.d.ts.map +1 -0
  335. package/dist/tests/lsp/server.test.js +406 -0
  336. package/dist/tests/lsp/server.test.js.map +1 -0
  337. package/dist/tests/memo/cache.test.d.ts +2 -0
  338. package/dist/tests/memo/cache.test.d.ts.map +1 -0
  339. package/dist/tests/memo/cache.test.js +252 -0
  340. package/dist/tests/memo/cache.test.js.map +1 -0
  341. package/dist/tests/parallel/parallel-pool.test.d.ts +11 -0
  342. package/dist/tests/parallel/parallel-pool.test.d.ts.map +1 -0
  343. package/dist/tests/parallel/parallel-pool.test.js +192 -0
  344. package/dist/tests/parallel/parallel-pool.test.js.map +1 -0
  345. package/dist/tests/plugin-system/demo-min-logic.test.d.ts +2 -0
  346. package/dist/tests/plugin-system/demo-min-logic.test.d.ts.map +1 -0
  347. package/dist/tests/plugin-system/demo-min-logic.test.js +85 -0
  348. package/dist/tests/plugin-system/demo-min-logic.test.js.map +1 -0
  349. package/dist/tests/plugin-system/registry.test.d.ts +2 -0
  350. package/dist/tests/plugin-system/registry.test.d.ts.map +1 -0
  351. package/dist/tests/plugin-system/registry.test.js +88 -0
  352. package/dist/tests/plugin-system/registry.test.js.map +1 -0
  353. package/dist/tests/plugin-system/validate.test.d.ts +2 -0
  354. package/dist/tests/plugin-system/validate.test.d.ts.map +1 -0
  355. package/dist/tests/plugin-system/validate.test.js +101 -0
  356. package/dist/tests/plugin-system/validate.test.js.map +1 -0
  357. package/dist/tests/proof-exchange/proof-exchange.test.d.ts +2 -0
  358. package/dist/tests/proof-exchange/proof-exchange.test.d.ts.map +1 -0
  359. package/dist/tests/proof-exchange/proof-exchange.test.js +161 -0
  360. package/dist/tests/proof-exchange/proof-exchange.test.js.map +1 -0
  361. package/dist/tests/sat-v2/clause-learning.test.d.ts +2 -0
  362. package/dist/tests/sat-v2/clause-learning.test.d.ts.map +1 -0
  363. package/dist/tests/sat-v2/clause-learning.test.js +73 -0
  364. package/dist/tests/sat-v2/clause-learning.test.js.map +1 -0
  365. package/dist/tests/sat-v2/lbd.test.d.ts +2 -0
  366. package/dist/tests/sat-v2/lbd.test.d.ts.map +1 -0
  367. package/dist/tests/sat-v2/lbd.test.js +82 -0
  368. package/dist/tests/sat-v2/lbd.test.js.map +1 -0
  369. package/dist/tests/sat-v2/luby.test.d.ts +2 -0
  370. package/dist/tests/sat-v2/luby.test.d.ts.map +1 -0
  371. package/dist/tests/sat-v2/luby.test.js +58 -0
  372. package/dist/tests/sat-v2/luby.test.js.map +1 -0
  373. package/dist/tests/sat-v2/phase-saving.test.d.ts +2 -0
  374. package/dist/tests/sat-v2/phase-saving.test.d.ts.map +1 -0
  375. package/dist/tests/sat-v2/phase-saving.test.js +38 -0
  376. package/dist/tests/sat-v2/phase-saving.test.js.map +1 -0
  377. package/dist/tests/sat-v2/solver-end-to-end.test.d.ts +2 -0
  378. package/dist/tests/sat-v2/solver-end-to-end.test.d.ts.map +1 -0
  379. package/dist/tests/sat-v2/solver-end-to-end.test.js +199 -0
  380. package/dist/tests/sat-v2/solver-end-to-end.test.js.map +1 -0
  381. package/dist/tests/sat-v2/vsids.test.d.ts +2 -0
  382. package/dist/tests/sat-v2/vsids.test.d.ts.map +1 -0
  383. package/dist/tests/sat-v2/vsids.test.js +69 -0
  384. package/dist/tests/sat-v2/vsids.test.js.map +1 -0
  385. package/dist/tests/smt/mock-backend.test.d.ts +2 -0
  386. package/dist/tests/smt/mock-backend.test.d.ts.map +1 -0
  387. package/dist/tests/smt/mock-backend.test.js +129 -0
  388. package/dist/tests/smt/mock-backend.test.js.map +1 -0
  389. package/dist/tests/smt/serializer.test.d.ts +2 -0
  390. package/dist/tests/smt/serializer.test.d.ts.map +1 -0
  391. package/dist/tests/smt/serializer.test.js +94 -0
  392. package/dist/tests/smt/serializer.test.js.map +1 -0
  393. package/dist/tests/smt/subprocess-backend.test.d.ts +2 -0
  394. package/dist/tests/smt/subprocess-backend.test.d.ts.map +1 -0
  395. package/dist/tests/smt/subprocess-backend.test.js +89 -0
  396. package/dist/tests/smt/subprocess-backend.test.js.map +1 -0
  397. package/dist/tests/streaming/stream-eval.test.d.ts +2 -0
  398. package/dist/tests/streaming/stream-eval.test.d.ts.map +1 -0
  399. package/dist/tests/streaming/stream-eval.test.js +170 -0
  400. package/dist/tests/streaming/stream-eval.test.js.map +1 -0
  401. package/dist/tests/text-layer-v2/claim-graph.test.d.ts +2 -0
  402. package/dist/tests/text-layer-v2/claim-graph.test.d.ts.map +1 -0
  403. package/dist/tests/text-layer-v2/claim-graph.test.js +255 -0
  404. package/dist/tests/text-layer-v2/claim-graph.test.js.map +1 -0
  405. package/dist/tests/time-travel/snapshot.test.d.ts +2 -0
  406. package/dist/tests/time-travel/snapshot.test.d.ts.map +1 -0
  407. package/dist/tests/time-travel/snapshot.test.js +75 -0
  408. package/dist/tests/time-travel/snapshot.test.js.map +1 -0
  409. package/dist/tests/time-travel/store.test.d.ts +2 -0
  410. package/dist/tests/time-travel/store.test.d.ts.map +1 -0
  411. package/dist/tests/time-travel/store.test.js +242 -0
  412. package/dist/tests/time-travel/store.test.js.map +1 -0
  413. package/dist/tests/typecheck-core.test.d.ts +2 -0
  414. package/dist/tests/typecheck-core.test.d.ts.map +1 -0
  415. package/dist/tests/typecheck-core.test.js +339 -0
  416. package/dist/tests/typecheck-core.test.js.map +1 -0
  417. package/dist/text-layer/v2/claim-graph.d.ts +45 -0
  418. package/dist/text-layer/v2/claim-graph.d.ts.map +1 -0
  419. package/dist/text-layer/v2/claim-graph.js +270 -0
  420. package/dist/text-layer/v2/claim-graph.js.map +1 -0
  421. package/dist/text-layer/v2/index.d.ts +6 -0
  422. package/dist/text-layer/v2/index.d.ts.map +1 -0
  423. package/dist/text-layer/v2/index.js +10 -0
  424. package/dist/text-layer/v2/index.js.map +1 -0
  425. package/dist/text-layer/v2/types.d.ts +32 -0
  426. package/dist/text-layer/v2/types.d.ts.map +1 -0
  427. package/dist/text-layer/v2/types.js +11 -0
  428. package/dist/text-layer/v2/types.js.map +1 -0
  429. package/dist/time-travel/index.d.ts +4 -0
  430. package/dist/time-travel/index.d.ts.map +1 -0
  431. package/dist/time-travel/index.js +8 -0
  432. package/dist/time-travel/index.js.map +1 -0
  433. package/dist/time-travel/snapshot.d.ts +9 -0
  434. package/dist/time-travel/snapshot.d.ts.map +1 -0
  435. package/dist/time-travel/snapshot.js +24 -0
  436. package/dist/time-travel/snapshot.js.map +1 -0
  437. package/dist/time-travel/store.d.ts +14 -0
  438. package/dist/time-travel/store.d.ts.map +1 -0
  439. package/dist/time-travel/store.js +119 -0
  440. package/dist/time-travel/store.js.map +1 -0
  441. package/dist/time-travel/types.d.ts +50 -0
  442. package/dist/time-travel/types.d.ts.map +1 -0
  443. package/dist/time-travel/types.js +3 -0
  444. package/dist/time-travel/types.js.map +1 -0
  445. package/package.json +5 -1
package/README.md CHANGED
@@ -7,7 +7,7 @@
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-3.1.1-blue.svg)](package.json)
10
+ [![Version](https://img.shields.io/badge/version-3.3.0-blue.svg)](package.json)
11
11
  [![License](https://img.shields.io/badge/license-MIT-green.svg)](LICENSE)
12
12
  [![Build Status](https://img.shields.io/badge/build-passing-brightgreen.svg)]()
13
13
 
@@ -30,8 +30,8 @@ Combina verificación formal, scripting declarativo, control de flujo, funciones
30
30
 
31
31
  | Distribución | Paquete | Comando |
32
32
  |--------------|---------|---------|
33
- | **Debian / Ubuntu** | [⬇️ `.deb`](https://github.com/stevenvo780/ST/releases/latest/download/st-lang_3.1.1_amd64.deb) | `sudo dpkg -i st-lang_*.deb` |
34
- | **Fedora / RHEL** | [⬇️ `.rpm`](https://github.com/stevenvo780/ST/releases/latest/download/st-lang-3.1.1-1.x86_64.rpm) | `sudo rpm -i st-lang-*.rpm` |
33
+ | **Debian / Ubuntu** | [⬇️ `.deb`](https://github.com/stevenvo780/ST/releases/latest/download/st-lang_3.3.0_amd64.deb) | `sudo dpkg -i st-lang_*.deb` |
34
+ | **Fedora / RHEL** | [⬇️ `.rpm`](https://github.com/stevenvo780/ST/releases/latest/download/st-lang-3.3.0-1.x86_64.rpm) | `sudo rpm -i st-lang-*.rpm` |
35
35
  | **Linux genérico** | [⬇️ binario](https://github.com/stevenvo780/ST/releases/latest/download/st) | `chmod +x st && sudo mv st /usr/local/bin/` |
36
36
 
37
37
  ### Con npm
@@ -52,6 +52,44 @@ npm link
52
52
 
53
53
  ---
54
54
 
55
+ ## Novedades en 3.3
56
+
57
+ ### AST visitors tipados
58
+
59
+ Refactor del parser monolítico a un sistema de visitors con tipos exhaustivos.
60
+
61
+ ```typescript
62
+ import { visit, BaseASTVisitor } from '@stevenvo780/st-lang/ast';
63
+
64
+ class MyVisitor extends BaseASTVisitor<string> {
65
+ visitDerive(node) { return `derive: ${node.conclusion}`; }
66
+ // TypeScript exige manejar cada variante del AST
67
+ }
68
+
69
+ const result = visit(programAST, new MyVisitor());
70
+ ```
71
+
72
+ ### Type checker en runtime
73
+
74
+ Valida programas antes de ejecutarlos. Detecta 7 categorías de error
75
+ (TC001–TC008) con sugerencias automáticas vía distancia Levenshtein.
76
+
77
+ ```typescript
78
+ import { typeCheck, evaluate } from '@stevenvo780/st-lang';
79
+
80
+ const errors = typeCheck(programAST, 'classical', 'file.st');
81
+ if (errors.length === 0) {
82
+ const result = evaluate(programAST, 'classical');
83
+ }
84
+ ```
85
+
86
+ ### Cobertura y benchmarks
87
+
88
+ - Tests: 1621 (cobertura 78.81%, subió desde 71%).
89
+ - Suite de benchmarks formal con baselines y detección de regresión de rendimiento.
90
+
91
+ ---
92
+
55
93
  ## Inicio rápido
56
94
 
57
95
  ### 1) Tu primer archivo `theory.st`
@@ -402,10 +440,12 @@ La extensión oficial en `editors/vscode-st` aporta:
402
440
 
403
441
  ## Arquitectura
404
442
 
405
- 1. **Lexer/Parser**: transforma el script `.st` en AST.
406
- 2. **Interpreter**: ejecuta statements, mantiene teoría, bindings, funciones y Text Layer.
407
- 3. **Profiles**: cada perfil implementa derivación, validez, satisfacibilidad, explicación y más.
408
- 4. **ProtocolHandler**: expone capacidades para integraciones de editor.
443
+ 1. **Lexer/Parser**: transforma el script `.st` en AST tipado.
444
+ 2. **AST Visitors** (`ASTVisitor<T>`, `BaseASTVisitor<T>`): traversal exhaustivo y tipado sobre el AST; reemplaza el parser monolítico de versiones anteriores.
445
+ 3. **Type Checker** (`typeCheck`): validación estática en runtime antes de la ejecución; 7 reglas (TC001–TC008) con sugerencias Levenshtein.
446
+ 4. **Interpreter**: ejecuta statements, mantiene teoría, bindings, funciones y Text Layer.
447
+ 5. **Profiles**: cada perfil implementa derivación, validez, satisfacibilidad, explicación y más.
448
+ 6. **ProtocolHandler**: expone capacidades para integraciones de editor.
409
449
 
410
450
  ---
411
451
 
package/dist/api.d.ts CHANGED
@@ -168,4 +168,6 @@ export declare function completion(): CompletionItem[];
168
168
  export declare function render(source: string, format?: string, file?: string): STRenderResult;
169
169
  export type { ExecutionOutput, Diagnostic, RunResult, Formula, LogicStatus, Theory, TruthTableResult, Proof, Model, Valuation, Severity, FormulaKind, Claim, Passage, Anchor, SymbolInfo, HoverInfo, CompletionItem, SourceLocation, } from './types';
170
170
  export type { Program, Statement } from './ast/nodes';
171
+ export { typeCheck, TypeChecker } from './runtime/typecheck';
172
+ export type { TypeError } from './runtime/typecheck';
171
173
  //# sourceMappingURL=api.d.ts.map
package/dist/api.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
package/dist/api.js CHANGED
@@ -7,7 +7,7 @@
7
7
  * const result = evaluate('logic classical.propositional\ncheck valid (P -> P)');
8
8
  */
9
9
  Object.defineProperty(exports, "__esModule", { value: true });
10
- exports.detectFallacies = exports.formulaToLaTeX = exports.formulaToUnicode = exports.formulaToString = void 0;
10
+ exports.TypeChecker = exports.typeCheck = exports.detectFallacies = exports.formulaToLaTeX = exports.formulaToUnicode = exports.formulaToString = void 0;
11
11
  exports.evaluate = evaluate;
12
12
  exports.parse = parse;
13
13
  exports.check = check;
@@ -273,4 +273,8 @@ function render(source, format, file) {
273
273
  diagnostics: resp.diagnostics ?? [],
274
274
  };
275
275
  }
276
+ // ── TypeChecker ───────────────────────────────────────────────
277
+ var typecheck_1 = require("./runtime/typecheck");
278
+ Object.defineProperty(exports, "typeCheck", { enumerable: true, get: function () { return typecheck_1.typeCheck; } });
279
+ Object.defineProperty(exports, "TypeChecker", { enumerable: true, get: function () { return typecheck_1.TypeChecker; } });
276
280
  //# sourceMappingURL=api.js.map
package/dist/api.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { ArgumentationFramework } from './types';
2
+ export declare function dotExport(af: ArgumentationFramework): string;
3
+ //# sourceMappingURL=dot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dot.d.ts","sourceRoot":"","sources":["../../src/argumentation/dot.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAMtD,wBAAgB,SAAS,CAAC,EAAE,EAAE,sBAAsB,GAAG,MAAM,CAc5D"}
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ // ============================================================
3
+ // ST Argumentation — GraphViz DOT exporter
4
+ // ============================================================
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.dotExport = dotExport;
7
+ function escapeDotId(id) {
8
+ return id.replace(/\\/g, '\\\\').replace(/"/g, '\\"');
9
+ }
10
+ function dotExport(af) {
11
+ const lines = [];
12
+ lines.push('digraph AF {');
13
+ lines.push(' rankdir=LR;');
14
+ lines.push(' node [shape=circle];');
15
+ const sortedArgs = Array.from(af.arguments).sort();
16
+ for (const arg of sortedArgs) {
17
+ lines.push(` "${escapeDotId(arg)}";`);
18
+ }
19
+ for (const [from, to] of af.attacks) {
20
+ lines.push(` "${escapeDotId(from)}" -> "${escapeDotId(to)}";`);
21
+ }
22
+ lines.push('}');
23
+ return lines.join('\n');
24
+ }
25
+ //# sourceMappingURL=dot.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dot.js","sourceRoot":"","sources":["../../src/argumentation/dot.ts"],"names":[],"mappings":";AAAA,+DAA+D;AAC/D,2CAA2C;AAC3C,+DAA+D;;AAQ/D,8BAcC;AAlBD,SAAS,WAAW,CAAC,EAAU;IAC7B,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AACxD,CAAC;AAED,SAAgB,SAAS,CAAC,EAA0B;IAClD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAC5B,KAAK,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;IACrC,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC;IACnD,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;QAC7B,KAAK,CAAC,IAAI,CAAC,MAAM,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACzC,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;QACpC,KAAK,CAAC,IAAI,CAAC,MAAM,WAAW,CAAC,IAAI,CAAC,SAAS,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;IAClE,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAChB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC"}
@@ -0,0 +1,11 @@
1
+ import type { ArgumentationFramework, ComputeOptions, Semantics } from './types';
2
+ export declare function groundedExtension(af: ArgumentationFramework): Set<string>;
3
+ export declare function isComplete(af: ArgumentationFramework, set: Set<string>): boolean;
4
+ export declare function isStable(af: ArgumentationFramework, set: Set<string>): boolean;
5
+ export declare function lazyAdmissibleSets(af: ArgumentationFramework): Generator<Set<string>>;
6
+ export declare function preferredExtensions(af: ArgumentationFramework, options: Required<ComputeOptions>): Set<string>[];
7
+ export declare function completeExtensions(af: ArgumentationFramework, options: Required<ComputeOptions>): Set<string>[];
8
+ export declare function stableExtensions(af: ArgumentationFramework, options: Required<ComputeOptions>): Set<string>[];
9
+ export declare function semiStableExtensions(af: ArgumentationFramework, options: Required<ComputeOptions>): Set<string>[];
10
+ export declare function computeExtensions(af: ArgumentationFramework, semantics: Semantics, options?: ComputeOptions): Set<string>[];
11
+ //# sourceMappingURL=extensions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extensions.d.ts","sourceRoot":"","sources":["../../src/argumentation/extensions.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,sBAAsB,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAejF,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,sBAAsB,GAAG,GAAG,CAAC,MAAM,CAAC,CAOzE;AAED,wBAAgB,UAAU,CAAC,EAAE,EAAE,sBAAsB,EAAE,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,OAAO,CAIhF;AAED,wBAAgB,QAAQ,CAAC,EAAE,EAAE,sBAAsB,EAAE,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,OAAO,CAQ9E;AA8BD,wBAAiB,kBAAkB,CAAC,EAAE,EAAE,sBAAsB,GAAG,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAmBtF;AAsBD,wBAAgB,mBAAmB,CACjC,EAAE,EAAE,sBAAsB,EAC1B,OAAO,EAAE,QAAQ,CAAC,cAAc,CAAC,GAChC,GAAG,CAAC,MAAM,CAAC,EAAE,CAGf;AAED,wBAAgB,kBAAkB,CAChC,EAAE,EAAE,sBAAsB,EAC1B,OAAO,EAAE,QAAQ,CAAC,cAAc,CAAC,GAChC,GAAG,CAAC,MAAM,CAAC,EAAE,CAQf;AAED,wBAAgB,gBAAgB,CAC9B,EAAE,EAAE,sBAAsB,EAC1B,OAAO,EAAE,QAAQ,CAAC,cAAc,CAAC,GAChC,GAAG,CAAC,MAAM,CAAC,EAAE,CAOf;AAED,wBAAgB,oBAAoB,CAClC,EAAE,EAAE,sBAAsB,EAC1B,OAAO,EAAE,QAAQ,CAAC,cAAc,CAAC,GAChC,GAAG,CAAC,MAAM,CAAC,EAAE,CAef;AAED,wBAAgB,iBAAiB,CAC/B,EAAE,EAAE,sBAAsB,EAC1B,SAAS,EAAE,SAAS,EACpB,OAAO,GAAE,cAAmB,GAC3B,GAAG,CAAC,MAAM,CAAC,EAAE,CAiBf"}
@@ -0,0 +1,173 @@
1
+ "use strict";
2
+ // ============================================================
3
+ // ST Argumentation — Computación de extensiones (Dung 1995)
4
+ // ============================================================
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.groundedExtension = groundedExtension;
7
+ exports.isComplete = isComplete;
8
+ exports.isStable = isStable;
9
+ exports.lazyAdmissibleSets = lazyAdmissibleSets;
10
+ exports.preferredExtensions = preferredExtensions;
11
+ exports.completeExtensions = completeExtensions;
12
+ exports.stableExtensions = stableExtensions;
13
+ exports.semiStableExtensions = semiStableExtensions;
14
+ exports.computeExtensions = computeExtensions;
15
+ const types_1 = require("./types");
16
+ const framework_1 = require("./framework");
17
+ function emptySet() {
18
+ return new Set();
19
+ }
20
+ function groundedExtension(af) {
21
+ let current = emptySet();
22
+ while (true) {
23
+ const next = (0, framework_1.characteristicFunction)(af, current);
24
+ if ((0, framework_1.setsEqual)(current, next))
25
+ return current;
26
+ current = next;
27
+ }
28
+ }
29
+ function isComplete(af, set) {
30
+ if (!(0, framework_1.isAdmissible)(af, set))
31
+ return false;
32
+ const defended = (0, framework_1.characteristicFunction)(af, set);
33
+ return (0, framework_1.setsEqual)(defended, set);
34
+ }
35
+ function isStable(af, set) {
36
+ if (!(0, framework_1.isConflictFree)(af, set))
37
+ return false;
38
+ const attacked = (0, framework_1.attackedBySet)(af, set);
39
+ for (const arg of af.arguments) {
40
+ if (set.has(arg))
41
+ continue;
42
+ if (!attacked.has(arg))
43
+ return false;
44
+ }
45
+ return true;
46
+ }
47
+ function enumerateAdmissibleSets(af, options) {
48
+ const args = Array.from(af.arguments).sort();
49
+ const n = args.length;
50
+ if (n > options.exhaustiveLimit) {
51
+ if (options.warnOnLarge) {
52
+ console.warn(`[argumentation] AF con ${String(n)} argumentos excede límite exhaustivo ${String(options.exhaustiveLimit)} — usar iterador lazy`);
53
+ }
54
+ }
55
+ const result = [];
56
+ const total = 1 << n;
57
+ for (let mask = 0; mask < total; mask++) {
58
+ const subset = new Set();
59
+ for (let i = 0; i < n; i++) {
60
+ if ((mask >> i) & 1) {
61
+ const arg = args[i];
62
+ if (arg !== undefined)
63
+ subset.add(arg);
64
+ }
65
+ }
66
+ if ((0, framework_1.isAdmissible)(af, subset))
67
+ result.push(subset);
68
+ }
69
+ return result;
70
+ }
71
+ function* lazyAdmissibleSets(af) {
72
+ const args = Array.from(af.arguments).sort();
73
+ const n = args.length;
74
+ if (n > 30) {
75
+ throw new Error(`[argumentation] AF con ${String(n)} argumentos: el iterador lazy también es exponencial. Considera otra técnica.`);
76
+ }
77
+ const total = 1 << n;
78
+ for (let mask = 0; mask < total; mask++) {
79
+ const subset = new Set();
80
+ for (let i = 0; i < n; i++) {
81
+ if ((mask >> i) & 1) {
82
+ const arg = args[i];
83
+ if (arg !== undefined)
84
+ subset.add(arg);
85
+ }
86
+ }
87
+ if ((0, framework_1.isAdmissible)(af, subset))
88
+ yield subset;
89
+ }
90
+ }
91
+ function maximalSets(sets) {
92
+ const result = [];
93
+ for (let i = 0; i < sets.length; i++) {
94
+ const candidate = sets[i];
95
+ if (candidate === undefined)
96
+ continue;
97
+ let dominated = false;
98
+ for (let j = 0; j < sets.length; j++) {
99
+ if (i === j)
100
+ continue;
101
+ const other = sets[j];
102
+ if (other === undefined)
103
+ continue;
104
+ if (other.size > candidate.size && (0, framework_1.isSubset)(candidate, other)) {
105
+ dominated = true;
106
+ break;
107
+ }
108
+ }
109
+ if (!dominated)
110
+ result.push(candidate);
111
+ }
112
+ return result;
113
+ }
114
+ function preferredExtensions(af, options) {
115
+ const admissible = enumerateAdmissibleSets(af, options);
116
+ return maximalSets(admissible);
117
+ }
118
+ function completeExtensions(af, options) {
119
+ const admissible = enumerateAdmissibleSets(af, options);
120
+ const result = [];
121
+ for (const set of admissible) {
122
+ const defended = (0, framework_1.characteristicFunction)(af, set);
123
+ if ((0, framework_1.setsEqual)(defended, set))
124
+ result.push(set);
125
+ }
126
+ return result;
127
+ }
128
+ function stableExtensions(af, options) {
129
+ const admissible = enumerateAdmissibleSets(af, options);
130
+ const result = [];
131
+ for (const set of admissible) {
132
+ if (isStable(af, set))
133
+ result.push(set);
134
+ }
135
+ return result;
136
+ }
137
+ function semiStableExtensions(af, options) {
138
+ const completes = completeExtensions(af, options);
139
+ if (completes.length === 0)
140
+ return [];
141
+ let bestRange = -1;
142
+ let candidates = [];
143
+ for (const set of completes) {
144
+ const range = set.size + (0, framework_1.attackedBySet)(af, set).size;
145
+ if (range > bestRange) {
146
+ bestRange = range;
147
+ candidates = [set];
148
+ }
149
+ else if (range === bestRange) {
150
+ candidates.push(set);
151
+ }
152
+ }
153
+ return maximalSets(candidates);
154
+ }
155
+ function computeExtensions(af, semantics, options = {}) {
156
+ const opts = {
157
+ exhaustiveLimit: options.exhaustiveLimit ?? types_1.DEFAULT_EXHAUSTIVE_LIMIT,
158
+ warnOnLarge: options.warnOnLarge ?? true,
159
+ };
160
+ switch (semantics) {
161
+ case 'grounded':
162
+ return [groundedExtension(af)];
163
+ case 'preferred':
164
+ return preferredExtensions(af, opts);
165
+ case 'stable':
166
+ return stableExtensions(af, opts);
167
+ case 'complete':
168
+ return completeExtensions(af, opts);
169
+ case 'semi-stable':
170
+ return semiStableExtensions(af, opts);
171
+ }
172
+ }
173
+ //# sourceMappingURL=extensions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extensions.js","sourceRoot":"","sources":["../../src/argumentation/extensions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import type { ArgumentationFramework } from './types';
2
+ export declare function createFramework(args: Iterable<string>, attacks: Iterable<[string, string]>): ArgumentationFramework;
3
+ export declare function attackersOf(af: ArgumentationFramework, arg: string): Set<string>;
4
+ export declare function attackedBy(af: ArgumentationFramework, arg: string): Set<string>;
5
+ export declare function attackedBySet(af: ArgumentationFramework, set: Set<string>): Set<string>;
6
+ export declare function isConflictFree(af: ArgumentationFramework, set: Set<string>): boolean;
7
+ export declare function defends(af: ArgumentationFramework, set: Set<string>, arg: string): boolean;
8
+ export declare function hasAttack(af: ArgumentationFramework, from: string, to: string): boolean;
9
+ export declare function isAdmissible(af: ArgumentationFramework, set: Set<string>): boolean;
10
+ export declare function characteristicFunction(af: ArgumentationFramework, set: Set<string>): Set<string>;
11
+ export declare function setsEqual(a: Set<string>, b: Set<string>): boolean;
12
+ export declare function isSubset(a: Set<string>, b: Set<string>): boolean;
13
+ //# sourceMappingURL=framework.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"framework.d.ts","sourceRoot":"","sources":["../../src/argumentation/framework.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAEtD,wBAAgB,eAAe,CAC7B,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,EACtB,OAAO,EAAE,QAAQ,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAClC,sBAAsB,CAaxB;AAED,wBAAgB,WAAW,CAAC,EAAE,EAAE,sBAAsB,EAAE,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAMhF;AAED,wBAAgB,UAAU,CAAC,EAAE,EAAE,sBAAsB,EAAE,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAM/E;AAED,wBAAgB,aAAa,CAAC,EAAE,EAAE,sBAAsB,EAAE,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,CAMvF;AAED,wBAAgB,cAAc,CAAC,EAAE,EAAE,sBAAsB,EAAE,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,OAAO,CAKpF;AAED,wBAAgB,OAAO,CAAC,EAAE,EAAE,sBAAsB,EAAE,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAa1F;AAED,wBAAgB,SAAS,CAAC,EAAE,EAAE,sBAAsB,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAKvF;AAED,wBAAgB,YAAY,CAAC,EAAE,EAAE,sBAAsB,EAAE,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,OAAO,CAMlF;AAED,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,sBAAsB,EAAE,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,CAMhG;AAED,wBAAgB,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,OAAO,CAIjE;AAED,wBAAgB,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,OAAO,CAIhE"}
@@ -0,0 +1,117 @@
1
+ "use strict";
2
+ // ============================================================
3
+ // ST Argumentation — Core predicates sobre AF de Dung
4
+ // ============================================================
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.createFramework = createFramework;
7
+ exports.attackersOf = attackersOf;
8
+ exports.attackedBy = attackedBy;
9
+ exports.attackedBySet = attackedBySet;
10
+ exports.isConflictFree = isConflictFree;
11
+ exports.defends = defends;
12
+ exports.hasAttack = hasAttack;
13
+ exports.isAdmissible = isAdmissible;
14
+ exports.characteristicFunction = characteristicFunction;
15
+ exports.setsEqual = setsEqual;
16
+ exports.isSubset = isSubset;
17
+ function createFramework(args, attacks) {
18
+ const argSet = new Set(args);
19
+ const attackList = [];
20
+ for (const [a, b] of attacks) {
21
+ if (!argSet.has(a)) {
22
+ throw new Error(`Attack source "${a}" not in arguments`);
23
+ }
24
+ if (!argSet.has(b)) {
25
+ throw new Error(`Attack target "${b}" not in arguments`);
26
+ }
27
+ attackList.push([a, b]);
28
+ }
29
+ return { arguments: argSet, attacks: attackList };
30
+ }
31
+ function attackersOf(af, arg) {
32
+ const result = new Set();
33
+ for (const [a, b] of af.attacks) {
34
+ if (b === arg)
35
+ result.add(a);
36
+ }
37
+ return result;
38
+ }
39
+ function attackedBy(af, arg) {
40
+ const result = new Set();
41
+ for (const [a, b] of af.attacks) {
42
+ if (a === arg)
43
+ result.add(b);
44
+ }
45
+ return result;
46
+ }
47
+ function attackedBySet(af, set) {
48
+ const result = new Set();
49
+ for (const [a, b] of af.attacks) {
50
+ if (set.has(a))
51
+ result.add(b);
52
+ }
53
+ return result;
54
+ }
55
+ function isConflictFree(af, set) {
56
+ for (const [a, b] of af.attacks) {
57
+ if (set.has(a) && set.has(b))
58
+ return false;
59
+ }
60
+ return true;
61
+ }
62
+ function defends(af, set, arg) {
63
+ const attackers = attackersOf(af, arg);
64
+ for (const attacker of attackers) {
65
+ let defended = false;
66
+ for (const member of set) {
67
+ if (hasAttack(af, member, attacker)) {
68
+ defended = true;
69
+ break;
70
+ }
71
+ }
72
+ if (!defended)
73
+ return false;
74
+ }
75
+ return true;
76
+ }
77
+ function hasAttack(af, from, to) {
78
+ for (const [a, b] of af.attacks) {
79
+ if (a === from && b === to)
80
+ return true;
81
+ }
82
+ return false;
83
+ }
84
+ function isAdmissible(af, set) {
85
+ if (!isConflictFree(af, set))
86
+ return false;
87
+ for (const member of set) {
88
+ if (!defends(af, set, member))
89
+ return false;
90
+ }
91
+ return true;
92
+ }
93
+ function characteristicFunction(af, set) {
94
+ const result = new Set();
95
+ for (const arg of af.arguments) {
96
+ if (defends(af, set, arg))
97
+ result.add(arg);
98
+ }
99
+ return result;
100
+ }
101
+ function setsEqual(a, b) {
102
+ if (a.size !== b.size)
103
+ return false;
104
+ for (const x of a)
105
+ if (!b.has(x))
106
+ return false;
107
+ return true;
108
+ }
109
+ function isSubset(a, b) {
110
+ if (a.size > b.size)
111
+ return false;
112
+ for (const x of a)
113
+ if (!b.has(x))
114
+ return false;
115
+ return true;
116
+ }
117
+ //# sourceMappingURL=framework.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"framework.js","sourceRoot":"","sources":["../../src/argumentation/framework.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ export type { ArgumentationFramework, Semantics, ComputeOptions } from './types';
2
+ export { DEFAULT_EXHAUSTIVE_LIMIT } from './types';
3
+ export { createFramework, attackersOf, attackedBy, attackedBySet, hasAttack, isConflictFree, defends, isAdmissible, characteristicFunction, setsEqual, isSubset, } from './framework';
4
+ export { groundedExtension, preferredExtensions, stableExtensions, completeExtensions, semiStableExtensions, isComplete, isStable, lazyAdmissibleSets, computeExtensions, } from './extensions';
5
+ export { dotExport } from './dot';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/argumentation/index.ts"],"names":[],"mappings":"AAIA,YAAY,EAAE,sBAAsB,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACjF,OAAO,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EACL,eAAe,EACf,WAAW,EACX,UAAU,EACV,aAAa,EACb,SAAS,EACT,cAAc,EACd,OAAO,EACP,YAAY,EACZ,sBAAsB,EACtB,SAAS,EACT,QAAQ,GACT,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,gBAAgB,EAChB,kBAAkB,EAClB,oBAAoB,EACpB,UAAU,EACV,QAAQ,EACR,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC"}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ // ============================================================
3
+ // ST Argumentation — Barrel export (Dung framework)
4
+ // ============================================================
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.dotExport = exports.computeExtensions = exports.lazyAdmissibleSets = exports.isStable = exports.isComplete = exports.semiStableExtensions = exports.completeExtensions = exports.stableExtensions = exports.preferredExtensions = exports.groundedExtension = exports.isSubset = exports.setsEqual = exports.characteristicFunction = exports.isAdmissible = exports.defends = exports.isConflictFree = exports.hasAttack = exports.attackedBySet = exports.attackedBy = exports.attackersOf = exports.createFramework = exports.DEFAULT_EXHAUSTIVE_LIMIT = void 0;
7
+ var types_1 = require("./types");
8
+ Object.defineProperty(exports, "DEFAULT_EXHAUSTIVE_LIMIT", { enumerable: true, get: function () { return types_1.DEFAULT_EXHAUSTIVE_LIMIT; } });
9
+ var framework_1 = require("./framework");
10
+ Object.defineProperty(exports, "createFramework", { enumerable: true, get: function () { return framework_1.createFramework; } });
11
+ Object.defineProperty(exports, "attackersOf", { enumerable: true, get: function () { return framework_1.attackersOf; } });
12
+ Object.defineProperty(exports, "attackedBy", { enumerable: true, get: function () { return framework_1.attackedBy; } });
13
+ Object.defineProperty(exports, "attackedBySet", { enumerable: true, get: function () { return framework_1.attackedBySet; } });
14
+ Object.defineProperty(exports, "hasAttack", { enumerable: true, get: function () { return framework_1.hasAttack; } });
15
+ Object.defineProperty(exports, "isConflictFree", { enumerable: true, get: function () { return framework_1.isConflictFree; } });
16
+ Object.defineProperty(exports, "defends", { enumerable: true, get: function () { return framework_1.defends; } });
17
+ Object.defineProperty(exports, "isAdmissible", { enumerable: true, get: function () { return framework_1.isAdmissible; } });
18
+ Object.defineProperty(exports, "characteristicFunction", { enumerable: true, get: function () { return framework_1.characteristicFunction; } });
19
+ Object.defineProperty(exports, "setsEqual", { enumerable: true, get: function () { return framework_1.setsEqual; } });
20
+ Object.defineProperty(exports, "isSubset", { enumerable: true, get: function () { return framework_1.isSubset; } });
21
+ var extensions_1 = require("./extensions");
22
+ Object.defineProperty(exports, "groundedExtension", { enumerable: true, get: function () { return extensions_1.groundedExtension; } });
23
+ Object.defineProperty(exports, "preferredExtensions", { enumerable: true, get: function () { return extensions_1.preferredExtensions; } });
24
+ Object.defineProperty(exports, "stableExtensions", { enumerable: true, get: function () { return extensions_1.stableExtensions; } });
25
+ Object.defineProperty(exports, "completeExtensions", { enumerable: true, get: function () { return extensions_1.completeExtensions; } });
26
+ Object.defineProperty(exports, "semiStableExtensions", { enumerable: true, get: function () { return extensions_1.semiStableExtensions; } });
27
+ Object.defineProperty(exports, "isComplete", { enumerable: true, get: function () { return extensions_1.isComplete; } });
28
+ Object.defineProperty(exports, "isStable", { enumerable: true, get: function () { return extensions_1.isStable; } });
29
+ Object.defineProperty(exports, "lazyAdmissibleSets", { enumerable: true, get: function () { return extensions_1.lazyAdmissibleSets; } });
30
+ Object.defineProperty(exports, "computeExtensions", { enumerable: true, get: function () { return extensions_1.computeExtensions; } });
31
+ var dot_1 = require("./dot");
32
+ Object.defineProperty(exports, "dotExport", { enumerable: true, get: function () { return dot_1.dotExport; } });
33
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/argumentation/index.ts"],"names":[],"mappings":";AAAA,+DAA+D;AAC/D,oDAAoD;AACpD,+DAA+D;;;AAG/D,iCAAmD;AAA1C,iHAAA,wBAAwB,OAAA;AACjC,yCAYqB;AAXnB,4GAAA,eAAe,OAAA;AACf,wGAAA,WAAW,OAAA;AACX,uGAAA,UAAU,OAAA;AACV,0GAAA,aAAa,OAAA;AACb,sGAAA,SAAS,OAAA;AACT,2GAAA,cAAc,OAAA;AACd,oGAAA,OAAO,OAAA;AACP,yGAAA,YAAY,OAAA;AACZ,mHAAA,sBAAsB,OAAA;AACtB,sGAAA,SAAS,OAAA;AACT,qGAAA,QAAQ,OAAA;AAEV,2CAUsB;AATpB,+GAAA,iBAAiB,OAAA;AACjB,iHAAA,mBAAmB,OAAA;AACnB,8GAAA,gBAAgB,OAAA;AAChB,gHAAA,kBAAkB,OAAA;AAClB,kHAAA,oBAAoB,OAAA;AACpB,wGAAA,UAAU,OAAA;AACV,sGAAA,QAAQ,OAAA;AACR,gHAAA,kBAAkB,OAAA;AAClB,+GAAA,iBAAiB,OAAA;AAEnB,6BAAkC;AAAzB,gGAAA,SAAS,OAAA"}
@@ -0,0 +1,11 @@
1
+ export interface ArgumentationFramework {
2
+ arguments: Set<string>;
3
+ attacks: Array<[string, string]>;
4
+ }
5
+ export type Semantics = 'grounded' | 'preferred' | 'stable' | 'complete' | 'semi-stable';
6
+ export interface ComputeOptions {
7
+ exhaustiveLimit?: number;
8
+ warnOnLarge?: boolean;
9
+ }
10
+ export declare const DEFAULT_EXHAUSTIVE_LIMIT = 20;
11
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/argumentation/types.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACvB,OAAO,EAAE,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CAClC;AAED,MAAM,MAAM,SAAS,GAAG,UAAU,GAAG,WAAW,GAAG,QAAQ,GAAG,UAAU,GAAG,aAAa,CAAC;AAEzF,MAAM,WAAW,cAAc;IAC7B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,eAAO,MAAM,wBAAwB,KAAK,CAAC"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ // ============================================================
3
+ // ST Argumentation — Dung framework types
4
+ // ============================================================
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.DEFAULT_EXHAUSTIVE_LIMIT = void 0;
7
+ exports.DEFAULT_EXHAUSTIVE_LIMIT = 20;
8
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/argumentation/types.ts"],"names":[],"mappings":";AAAA,+DAA+D;AAC/D,0CAA0C;AAC1C,+DAA+D;;;AAclD,QAAA,wBAAwB,GAAG,EAAE,CAAC"}