@stevenvo780/st-lang 4.13.0 → 4.14.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -6
- package/dist/ast/nodes.d.ts +50 -0
- package/dist/ast/nodes.d.ts.map +1 -1
- package/dist/format/stnb/parser.d.ts +14 -0
- package/dist/format/stnb/parser.d.ts.map +1 -0
- package/dist/format/stnb/parser.js +123 -0
- package/dist/format/stnb/parser.js.map +1 -0
- package/dist/format/stnb/types.d.ts +45 -0
- package/dist/format/stnb/types.d.ts.map +1 -0
- package/dist/format/stnb/types.js +7 -0
- package/dist/format/stnb/types.js.map +1 -0
- package/dist/logic/profile-bridge/index.d.ts.map +1 -1
- package/dist/logic/profile-bridge/index.js +20 -3
- package/dist/logic/profile-bridge/index.js.map +1 -1
- package/dist/logic/profiles/classical/propositional.d.ts.map +1 -1
- package/dist/logic/profiles/classical/propositional.js.map +1 -1
- package/dist/logic/profiles/ctl/check.d.ts.map +1 -1
- package/dist/logic/profiles/ctl/check.js +21 -11
- package/dist/logic/profiles/ctl/check.js.map +1 -1
- package/dist/logic/profiles/ctl/witness.d.ts.map +1 -1
- package/dist/logic/profiles/ctl/witness.js +2 -0
- package/dist/logic/profiles/ctl/witness.js.map +1 -1
- package/dist/logic/profiles/description-logic/types.d.ts +15 -0
- package/dist/logic/profiles/description-logic/types.d.ts.map +1 -1
- package/dist/logic/profiles/description-logic/types.js +13 -0
- package/dist/logic/profiles/description-logic/types.js.map +1 -1
- package/dist/logic/profiles/hybrid-logic/types.d.ts +17 -0
- package/dist/logic/profiles/hybrid-logic/types.d.ts.map +1 -1
- package/dist/logic/profiles/hybrid-logic/types.js +17 -0
- package/dist/logic/profiles/hybrid-logic/types.js.map +1 -1
- package/dist/logic/profiles/intuitionistic-nj/kripke.d.ts.map +1 -1
- package/dist/logic/profiles/intuitionistic-nj/kripke.js +8 -5
- package/dist/logic/profiles/intuitionistic-nj/kripke.js.map +1 -1
- package/dist/logic/profiles/ltl-sat/tableau.d.ts +31 -0
- package/dist/logic/profiles/ltl-sat/tableau.d.ts.map +1 -1
- package/dist/logic/profiles/ltl-sat/tableau.js +18 -0
- package/dist/logic/profiles/ltl-sat/tableau.js.map +1 -1
- package/dist/logic/profiles/ltl-sat/types.d.ts +15 -0
- package/dist/logic/profiles/ltl-sat/types.d.ts.map +1 -1
- package/dist/logic/profiles/ltl-sat/types.js +2 -1
- package/dist/logic/profiles/ltl-sat/types.js.map +1 -1
- package/dist/logic/profiles/modal-frame-axioms/formula.d.ts +10 -0
- package/dist/logic/profiles/modal-frame-axioms/formula.d.ts.map +1 -1
- package/dist/logic/profiles/modal-frame-axioms/formula.js +10 -0
- package/dist/logic/profiles/modal-frame-axioms/formula.js.map +1 -1
- package/dist/logic/profiles/mu-calculus/check.d.ts.map +1 -1
- package/dist/logic/profiles/mu-calculus/check.js +7 -4
- package/dist/logic/profiles/mu-calculus/check.js.map +1 -1
- package/dist/logic/profiles/natural-deduction-nk/formula.d.ts +8 -0
- package/dist/logic/profiles/natural-deduction-nk/formula.d.ts.map +1 -1
- package/dist/logic/profiles/natural-deduction-nk/formula.js +8 -0
- package/dist/logic/profiles/natural-deduction-nk/formula.js.map +1 -1
- package/dist/logic/profiles/quantum/index.d.ts.map +1 -1
- package/dist/logic/profiles/quantum/index.js +11 -8
- package/dist/logic/profiles/quantum/index.js.map +1 -1
- package/dist/logic/profiles/sequent-lj/index.d.ts +90 -0
- package/dist/logic/profiles/sequent-lj/index.d.ts.map +1 -0
- package/dist/logic/profiles/sequent-lj/index.js +903 -0
- package/dist/logic/profiles/sequent-lj/index.js.map +1 -0
- package/dist/logic/profiles/shared/tableau-engine.d.ts.map +1 -1
- package/dist/logic/profiles/shared/tableau-engine.js +0 -17
- package/dist/logic/profiles/shared/tableau-engine.js.map +1 -1
- package/dist/namespaces/proof-systems.d.ts +1 -1
- package/dist/namespaces/proof-systems.d.ts.map +1 -1
- package/dist/namespaces/proof-systems.js.map +1 -1
- package/dist/namespaces/semantics.d.ts +1 -1
- package/dist/namespaces/semantics.d.ts.map +1 -1
- package/dist/namespaces/semantics.js.map +1 -1
- package/dist/proof-systems/distributed-exchange/index.d.ts +29 -0
- package/dist/proof-systems/distributed-exchange/index.d.ts.map +1 -1
- package/dist/proof-systems/distributed-exchange/index.js +18 -0
- package/dist/proof-systems/distributed-exchange/index.js.map +1 -1
- package/dist/proof-systems/fol-prover/types.d.ts +16 -0
- package/dist/proof-systems/fol-prover/types.d.ts.map +1 -1
- package/dist/proof-systems/fol-prover/types.js +7 -0
- package/dist/proof-systems/fol-prover/types.js.map +1 -1
- package/dist/proof-systems/fol-prover-advanced/index.d.ts +3 -3
- package/dist/proof-systems/fol-prover-advanced/index.d.ts.map +1 -1
- package/dist/proof-systems/fol-prover-advanced/index.js.map +1 -1
- package/dist/proof-systems/fol-prover-advanced/ordering.js +1 -1
- package/dist/proof-systems/fol-prover-advanced/prover.d.ts.map +1 -1
- package/dist/proof-systems/fol-prover-advanced/prover.js +19 -12
- package/dist/proof-systems/fol-prover-advanced/prover.js.map +1 -1
- package/dist/proof-systems/fol-prover-advanced/resolve.d.ts.map +1 -1
- package/dist/proof-systems/fol-prover-advanced/resolve.js +7 -7
- package/dist/proof-systems/fol-prover-advanced/resolve.js.map +1 -1
- package/dist/proof-systems/fol-prover-advanced/subsumption.d.ts.map +1 -1
- package/dist/proof-systems/fol-prover-advanced/subsumption.js.map +1 -1
- package/dist/proof-systems/fol-prover-advanced/types.d.ts +12 -0
- package/dist/proof-systems/fol-prover-advanced/types.d.ts.map +1 -1
- package/dist/proof-systems/fol-prover-advanced/unify.js +2 -2
- package/dist/proof-systems/fol-prover-equality/term-utils.d.ts +46 -0
- package/dist/proof-systems/fol-prover-equality/term-utils.d.ts.map +1 -1
- package/dist/proof-systems/fol-prover-equality/term-utils.js +46 -0
- package/dist/proof-systems/fol-prover-equality/term-utils.js.map +1 -1
- package/dist/proof-systems/proof-nets/correctness.d.ts.map +1 -1
- package/dist/proof-systems/proof-nets/correctness.js +24 -12
- package/dist/proof-systems/proof-nets/correctness.js.map +1 -1
- package/dist/proof-systems/proof-nets/types.d.ts +18 -0
- package/dist/proof-systems/proof-nets/types.d.ts.map +1 -1
- package/dist/proof-systems/proof-nets/types.js +6 -0
- package/dist/proof-systems/proof-nets/types.js.map +1 -1
- package/dist/proof-systems/tableau-framework/TableauProver.d.ts.map +1 -1
- package/dist/proof-systems/tableau-framework/TableauProver.js +5 -5
- package/dist/proof-systems/tableau-framework/TableauProver.js.map +1 -1
- package/dist/proof-systems/tableau-framework/propositional.d.ts.map +1 -1
- package/dist/proof-systems/tableau-framework/propositional.js +21 -21
- package/dist/proof-systems/tableau-framework/propositional.js.map +1 -1
- package/dist/reasoning/ban-logic/terms.d.ts +24 -0
- package/dist/reasoning/ban-logic/terms.d.ts.map +1 -1
- package/dist/reasoning/ban-logic/terms.js +24 -0
- package/dist/reasoning/ban-logic/terms.js.map +1 -1
- package/dist/reasoning/bayesian/factor.js +8 -8
- package/dist/reasoning/bayesian/factor.js.map +1 -1
- package/dist/reasoning/bayesian/inference.d.ts.map +1 -1
- package/dist/reasoning/bayesian/inference.js +11 -5
- package/dist/reasoning/bayesian/inference.js.map +1 -1
- package/dist/reasoning/combinatorics/generators.js.map +1 -1
- package/dist/reasoning/combinatorics/index.d.ts +3 -3
- package/dist/reasoning/combinatorics/index.d.ts.map +1 -1
- package/dist/reasoning/combinatorics/index.js.map +1 -1
- package/dist/reasoning/combinatorics/set-partitions.js.map +1 -1
- package/dist/reasoning/combinatorics/special-numbers.d.ts.map +1 -1
- package/dist/reasoning/combinatorics/special-numbers.js.map +1 -1
- package/dist/reasoning/constructive-analysis/cauchy.js +2 -2
- package/dist/reasoning/constructive-analysis/compact.js +1 -1
- package/dist/reasoning/constructive-analysis/continuity.d.ts.map +1 -1
- package/dist/reasoning/constructive-analysis/continuity.js +4 -4
- package/dist/reasoning/constructive-analysis/continuity.js.map +1 -1
- package/dist/reasoning/constructive-analysis/index.d.ts.map +1 -1
- package/dist/reasoning/constructive-analysis/index.js.map +1 -1
- package/dist/reasoning/constructive-analysis/ivt.d.ts.map +1 -1
- package/dist/reasoning/constructive-analysis/ivt.js +2 -2
- package/dist/reasoning/constructive-analysis/ivt.js.map +1 -1
- package/dist/reasoning/constructive-reals/index.d.ts.map +1 -1
- package/dist/reasoning/constructive-reals/index.js +4 -8
- package/dist/reasoning/constructive-reals/index.js.map +1 -1
- package/dist/reasoning/galois-fields/index.d.ts +64 -0
- package/dist/reasoning/galois-fields/index.d.ts.map +1 -1
- package/dist/reasoning/galois-fields/index.js +56 -6
- package/dist/reasoning/galois-fields/index.js.map +1 -1
- package/dist/reasoning/graph-theory/index.d.ts +31 -0
- package/dist/reasoning/graph-theory/index.d.ts.map +1 -1
- package/dist/reasoning/graph-theory/index.js +28 -10
- package/dist/reasoning/graph-theory/index.js.map +1 -1
- package/dist/reasoning/hoare-logic/index.d.ts +164 -0
- package/dist/reasoning/hoare-logic/index.d.ts.map +1 -0
- package/dist/reasoning/hoare-logic/index.js +561 -0
- package/dist/reasoning/hoare-logic/index.js.map +1 -0
- package/dist/reasoning/hyperreal/index.d.ts +30 -0
- package/dist/reasoning/hyperreal/index.d.ts.map +1 -1
- package/dist/reasoning/hyperreal/index.js +25 -0
- package/dist/reasoning/hyperreal/index.js.map +1 -1
- package/dist/reasoning/information-theory/index.d.ts +34 -0
- package/dist/reasoning/information-theory/index.d.ts.map +1 -1
- package/dist/reasoning/information-theory/index.js +27 -44
- package/dist/reasoning/information-theory/index.js.map +1 -1
- package/dist/reasoning/lemma-synthesis/index.d.ts +36 -0
- package/dist/reasoning/lemma-synthesis/index.d.ts.map +1 -1
- package/dist/reasoning/lemma-synthesis/index.js +12 -0
- package/dist/reasoning/lemma-synthesis/index.js.map +1 -1
- package/dist/reasoning/linear-algebra/index.d.ts +38 -0
- package/dist/reasoning/linear-algebra/index.d.ts.map +1 -1
- package/dist/reasoning/linear-algebra/index.js +34 -5
- package/dist/reasoning/linear-algebra/index.js.map +1 -1
- package/dist/reasoning/markov-logic/grounding.js +1 -1
- package/dist/reasoning/markov-logic/grounding.js.map +1 -1
- package/dist/reasoning/markov-logic/inference.js +1 -1
- package/dist/reasoning/markov-logic/inference.js.map +1 -1
- package/dist/reasoning/model-checking/index.d.ts +113 -0
- package/dist/reasoning/model-checking/index.d.ts.map +1 -0
- package/dist/reasoning/model-checking/index.js +786 -0
- package/dist/reasoning/model-checking/index.js.map +1 -0
- package/dist/reasoning/order-theory/index.d.ts +121 -0
- package/dist/reasoning/order-theory/index.d.ts.map +1 -0
- package/dist/reasoning/order-theory/index.js +562 -0
- package/dist/reasoning/order-theory/index.js.map +1 -0
- package/dist/reasoning/peano-arithmetic/index.d.ts +114 -0
- package/dist/reasoning/peano-arithmetic/index.d.ts.map +1 -0
- package/dist/reasoning/peano-arithmetic/index.js +650 -0
- package/dist/reasoning/peano-arithmetic/index.js.map +1 -0
- package/dist/reasoning/polynomial-ring/index.d.ts +80 -0
- package/dist/reasoning/polynomial-ring/index.d.ts.map +1 -1
- package/dist/reasoning/polynomial-ring/index.js +75 -0
- package/dist/reasoning/polynomial-ring/index.js.map +1 -1
- package/dist/reasoning/separation-logic/index.d.ts +220 -0
- package/dist/reasoning/separation-logic/index.d.ts.map +1 -0
- package/dist/reasoning/separation-logic/index.js +779 -0
- package/dist/reasoning/separation-logic/index.js.map +1 -0
- package/dist/reasoning/set-theory/hf-functions.js +3 -3
- package/dist/reasoning/set-theory/hf-sets.js +1 -1
- package/dist/reasoning/set-theory/index.d.ts +3 -3
- package/dist/reasoning/set-theory/index.d.ts.map +1 -1
- package/dist/reasoning/set-theory/zfc-axioms.js +4 -4
- package/dist/reasoning/tactic-dsl/tactics.d.ts +87 -0
- package/dist/reasoning/tactic-dsl/tactics.d.ts.map +1 -1
- package/dist/reasoning/tactic-dsl/tactics.js +86 -36
- package/dist/reasoning/tactic-dsl/tactics.js.map +1 -1
- package/dist/reasoning/topology/index.d.ts +81 -0
- package/dist/reasoning/topology/index.d.ts.map +1 -1
- package/dist/reasoning/topology/index.js +69 -45
- package/dist/reasoning/topology/index.js.map +1 -1
- package/dist/reasoning/universal-algebra/index.d.ts +196 -0
- package/dist/reasoning/universal-algebra/index.d.ts.map +1 -0
- package/dist/reasoning/universal-algebra/index.js +865 -0
- package/dist/reasoning/universal-algebra/index.js.map +1 -0
- package/dist/runtime/countermodel-min/minimize.js +0 -0
- package/dist/runtime/countermodel-min/minimize.js.map +1 -1
- package/dist/runtime/csp-hoare/semantics.d.ts +12 -0
- package/dist/runtime/csp-hoare/semantics.d.ts.map +1 -1
- package/dist/runtime/csp-hoare/semantics.js +12 -0
- package/dist/runtime/csp-hoare/semantics.js.map +1 -1
- package/dist/runtime/symbolic-diff/constructors.d.ts +20 -0
- package/dist/runtime/symbolic-diff/constructors.d.ts.map +1 -1
- package/dist/runtime/symbolic-diff/constructors.js +20 -0
- package/dist/runtime/symbolic-diff/constructors.js.map +1 -1
- package/dist/runtime/term-rewriting/term-utils.d.ts.map +1 -1
- package/dist/runtime/term-rewriting/term-utils.js +33 -2
- package/dist/runtime/term-rewriting/term-utils.js.map +1 -1
- package/dist/runtime/typecheck/checker.js +2 -2
- package/dist/runtime/typecheck/checker.js.map +1 -1
- package/dist/runtime/typecheck/levenshtein.js +1 -1
- package/dist/runtime/typecheck/levenshtein.js.map +1 -1
- package/dist/semantics/categorical/fin-set.d.ts.map +1 -1
- package/dist/semantics/categorical/fin-set.js +8 -1
- package/dist/semantics/categorical/fin-set.js.map +1 -1
- package/dist/semantics/categorical/free.d.ts.map +1 -1
- package/dist/semantics/categorical/free.js +8 -2
- package/dist/semantics/categorical/free.js.map +1 -1
- package/dist/semantics/categorical/limits.d.ts.map +1 -1
- package/dist/semantics/categorical/limits.js +13 -4
- package/dist/semantics/categorical/limits.js.map +1 -1
- package/dist/semantics/categorical/monoidal.d.ts.map +1 -1
- package/dist/semantics/categorical/monoidal.js +3 -1
- package/dist/semantics/categorical/monoidal.js.map +1 -1
- package/dist/semantics/text-layer/compiler.d.ts +46 -0
- package/dist/semantics/text-layer/compiler.d.ts.map +1 -1
- package/dist/semantics/text-layer/compiler.js +46 -11
- package/dist/semantics/text-layer/compiler.js.map +1 -1
- package/dist/solver/cdcl-v2/index.d.ts +8 -0
- package/dist/solver/cdcl-v2/index.d.ts.map +1 -1
- package/dist/solver/cdcl-v2/index.js +8 -0
- package/dist/solver/cdcl-v2/index.js.map +1 -1
- package/dist/solver/smt-z3/z3-wasm-backend.d.ts +0 -1
- package/dist/solver/smt-z3/z3-wasm-backend.d.ts.map +1 -1
- package/dist/solver/smt-z3/z3-wasm-backend.js +2 -3
- package/dist/solver/smt-z3/z3-wasm-backend.js.map +1 -1
- package/dist/tests/agora-integration-fixtures.test.js +7 -2
- package/dist/tests/agora-integration-fixtures.test.js.map +1 -1
- package/dist/tests/coverage-90/coverage-90-cdcl-v2-deep.test.d.ts +2 -0
- package/dist/tests/coverage-90/coverage-90-cdcl-v2-deep.test.d.ts.map +1 -0
- package/dist/tests/coverage-90/coverage-90-cdcl-v2-deep.test.js +123 -0
- package/dist/tests/coverage-90/coverage-90-cdcl-v2-deep.test.js.map +1 -0
- package/dist/tests/coverage-90/coverage-90-certificate-rules.test.d.ts +2 -0
- package/dist/tests/coverage-90/coverage-90-certificate-rules.test.d.ts.map +1 -0
- package/dist/tests/coverage-90/coverage-90-certificate-rules.test.js +172 -0
- package/dist/tests/coverage-90/coverage-90-certificate-rules.test.js.map +1 -0
- package/dist/tests/coverage-90/coverage-90-interpreter-extra.test.d.ts +2 -0
- package/dist/tests/coverage-90/coverage-90-interpreter-extra.test.d.ts.map +1 -0
- package/dist/tests/coverage-90/coverage-90-interpreter-extra.test.js +326 -0
- package/dist/tests/coverage-90/coverage-90-interpreter-extra.test.js.map +1 -0
- package/dist/tests/coverage-90/coverage-90-interpreter-features.test.d.ts +2 -0
- package/dist/tests/coverage-90/coverage-90-interpreter-features.test.d.ts.map +1 -0
- package/dist/tests/coverage-90/coverage-90-interpreter-features.test.js +418 -0
- package/dist/tests/coverage-90/coverage-90-interpreter-features.test.js.map +1 -0
- package/dist/tests/coverage-90/coverage-90-modal-temporal.test.d.ts +2 -0
- package/dist/tests/coverage-90/coverage-90-modal-temporal.test.d.ts.map +1 -0
- package/dist/tests/coverage-90/coverage-90-modal-temporal.test.js +162 -0
- package/dist/tests/coverage-90/coverage-90-modal-temporal.test.js.map +1 -0
- package/dist/tests/coverage-90/coverage-90-nk-prover.test.d.ts +2 -0
- package/dist/tests/coverage-90/coverage-90-nk-prover.test.d.ts.map +1 -0
- package/dist/tests/coverage-90/coverage-90-nk-prover.test.js +104 -0
- package/dist/tests/coverage-90/coverage-90-nk-prover.test.js.map +1 -0
- package/dist/tests/coverage-90/coverage-90-parser-deep.test.d.ts +2 -0
- package/dist/tests/coverage-90/coverage-90-parser-deep.test.d.ts.map +1 -0
- package/dist/tests/coverage-90/coverage-90-parser-deep.test.js +262 -0
- package/dist/tests/coverage-90/coverage-90-parser-deep.test.js.map +1 -0
- package/dist/tests/coverage-90/coverage-90-sat-engines.test.d.ts +2 -0
- package/dist/tests/coverage-90/coverage-90-sat-engines.test.d.ts.map +1 -0
- package/dist/tests/coverage-90/coverage-90-sat-engines.test.js +101 -0
- package/dist/tests/coverage-90/coverage-90-sat-engines.test.js.map +1 -0
- package/dist/tests/coverage-90/coverage-90-sequent-lk.test.d.ts +2 -0
- package/dist/tests/coverage-90/coverage-90-sequent-lk.test.d.ts.map +1 -0
- package/dist/tests/coverage-90/coverage-90-sequent-lk.test.js +219 -0
- package/dist/tests/coverage-90/coverage-90-sequent-lk.test.js.map +1 -0
- package/dist/tests/coverage-90/coverage-90-smt-lib-parser.test.d.ts +2 -0
- package/dist/tests/coverage-90/coverage-90-smt-lib-parser.test.d.ts.map +1 -0
- package/dist/tests/coverage-90/coverage-90-smt-lib-parser.test.js +154 -0
- package/dist/tests/coverage-90/coverage-90-smt-lib-parser.test.js.map +1 -0
- package/dist/tests/coverage-95/first-order.test.js.map +1 -1
- package/dist/tests/coverage-95/fol-prover.test.js.map +1 -1
- package/dist/tests/integration/cross-modules.test.js +43 -19
- package/dist/tests/integration/cross-modules.test.js.map +1 -1
- package/dist/tests/logic/ctl/check.test.js.map +1 -1
- package/dist/tests/logic/profile-bridge/translations.test.js +3 -3
- package/dist/tests/logic/profile-bridge/translations.test.js.map +1 -1
- package/dist/tests/logic/profiles/sequent-lj/lj.test.d.ts +2 -0
- package/dist/tests/logic/profiles/sequent-lj/lj.test.d.ts.map +1 -0
- package/dist/tests/logic/profiles/sequent-lj/lj.test.js +400 -0
- package/dist/tests/logic/profiles/sequent-lj/lj.test.js.map +1 -0
- package/dist/tests/logic/sequent-g3/prover.test.js.map +1 -1
- package/dist/tests/logic/substructural/prover.test.js.map +1 -1
- package/dist/tests/proof-systems/fol-prover-advanced/prover.test.js +40 -13
- package/dist/tests/proof-systems/fol-prover-advanced/prover.test.js.map +1 -1
- package/dist/tests/proof-systems/higher-order-unify/ho-unify.test.js.map +1 -1
- package/dist/tests/proof-systems/tableau-framework/tableau.test.js +8 -8
- package/dist/tests/proof-systems/tableau-framework/tableau.test.js.map +1 -1
- package/dist/tests/properties/agm.property.test.js +1 -1
- package/dist/tests/properties/agm.property.test.js.map +1 -1
- package/dist/tests/properties/anti-unification.property.test.js.map +1 -1
- package/dist/tests/properties/argumentation.property.test.js.map +1 -1
- package/dist/tests/properties/bisimulation.property.test.js.map +1 -1
- package/dist/tests/properties/cdcl.property.test.js.map +1 -1
- package/dist/tests/properties/coinduction.property.test.js.map +1 -1
- package/dist/tests/properties/constructive-reals.property.test.js.map +1 -1
- package/dist/tests/properties/csp.property.test.js +1 -3
- package/dist/tests/properties/csp.property.test.js.map +1 -1
- package/dist/tests/properties/generators.d.ts +1 -1
- package/dist/tests/properties/generators.d.ts.map +1 -1
- package/dist/tests/properties/generators.js +22 -30
- package/dist/tests/properties/generators.js.map +1 -1
- package/dist/tests/properties/intuit-nj.property.test.js +3 -1
- package/dist/tests/properties/intuit-nj.property.test.js.map +1 -1
- package/dist/tests/properties/lambda-calc.property.test.js.map +1 -1
- package/dist/tests/properties/mln.property.test.js +1 -3
- package/dist/tests/properties/mln.property.test.js.map +1 -1
- package/dist/tests/properties/planning.property.test.js.map +1 -1
- package/dist/tests/properties/profile-bridge.property.test.js.map +1 -1
- package/dist/tests/properties/theorem-cache.property.test.js.map +1 -1
- package/dist/tests/protocol-text-layer.test.js.map +1 -1
- package/dist/tests/reasoning/combinatorics/combinatorics.test.js +1 -1
- package/dist/tests/reasoning/constructive-analysis/constructive-analysis.test.js +9 -9
- package/dist/tests/reasoning/constructive-analysis/constructive-analysis.test.js.map +1 -1
- package/dist/tests/reasoning/hoare-logic/hoare-logic.test.d.ts +2 -0
- package/dist/tests/reasoning/hoare-logic/hoare-logic.test.d.ts.map +1 -0
- package/dist/tests/reasoning/hoare-logic/hoare-logic.test.js +340 -0
- package/dist/tests/reasoning/hoare-logic/hoare-logic.test.js.map +1 -0
- package/dist/tests/reasoning/linear-algebra/linear-algebra.test.js +80 -38
- package/dist/tests/reasoning/linear-algebra/linear-algebra.test.js.map +1 -1
- package/dist/tests/reasoning/model-checking/model-checking.test.d.ts +2 -0
- package/dist/tests/reasoning/model-checking/model-checking.test.d.ts.map +1 -0
- package/dist/tests/reasoning/model-checking/model-checking.test.js +222 -0
- package/dist/tests/reasoning/model-checking/model-checking.test.js.map +1 -0
- package/dist/tests/reasoning/order-theory/order-theory.test.d.ts +2 -0
- package/dist/tests/reasoning/order-theory/order-theory.test.d.ts.map +1 -0
- package/dist/tests/reasoning/order-theory/order-theory.test.js +211 -0
- package/dist/tests/reasoning/order-theory/order-theory.test.js.map +1 -0
- package/dist/tests/reasoning/peano-arithmetic/peano.test.d.ts +2 -0
- package/dist/tests/reasoning/peano-arithmetic/peano.test.d.ts.map +1 -0
- package/dist/tests/reasoning/peano-arithmetic/peano.test.js +159 -0
- package/dist/tests/reasoning/peano-arithmetic/peano.test.js.map +1 -0
- package/dist/tests/reasoning/separation-logic/separation-logic.test.d.ts +2 -0
- package/dist/tests/reasoning/separation-logic/separation-logic.test.d.ts.map +1 -0
- package/dist/tests/reasoning/separation-logic/separation-logic.test.js +311 -0
- package/dist/tests/reasoning/separation-logic/separation-logic.test.js.map +1 -0
- package/dist/tests/reasoning/set-theory/hf-functions.test.js +11 -11
- package/dist/tests/reasoning/set-theory/zfc-axioms.test.js +1 -1
- package/dist/tests/reasoning/universal-algebra/universal-algebra.test.d.ts +2 -0
- package/dist/tests/reasoning/universal-algebra/universal-algebra.test.d.ts.map +1 -0
- package/dist/tests/reasoning/universal-algebra/universal-algebra.test.js +289 -0
- package/dist/tests/reasoning/universal-algebra/universal-algebra.test.js.map +1 -0
- package/dist/tests/semantics/text-layer-v2/claim-graph.test.js.map +1 -1
- package/dist/tests/solver/smt-lib/emitter.test.js.map +1 -1
- package/dist/tests/solver/smt-z3/z3-wasm-backend.test.js.map +1 -1
- package/dist/tests/tooling/test-harness/test-harness.test.js +9 -6
- package/dist/tests/tooling/test-harness/test-harness.test.js.map +1 -1
- package/dist/tooling/lsp/types.d.ts +13 -0
- package/dist/tooling/lsp/types.d.ts.map +1 -1
- package/dist/tooling/lsp/types.js +1 -0
- package/dist/tooling/lsp/types.js.map +1 -1
- package/dist/tooling/test-harness/combinators.d.ts.map +1 -1
- package/dist/tooling/test-harness/combinators.js +4 -4
- package/dist/tooling/test-harness/combinators.js.map +1 -1
- package/dist/tooling/test-harness/coverage.js +1 -1
- package/dist/tooling/test-harness/generators.d.ts.map +1 -1
- package/dist/tooling/test-harness/generators.js.map +1 -1
- package/dist/tooling/test-harness/index.d.ts +1 -1
- package/dist/tooling/test-harness/index.d.ts.map +1 -1
- package/dist/tooling/test-harness/index.js.map +1 -1
- package/dist/tooling/test-harness/snapshot.d.ts.map +1 -1
- package/dist/tooling/test-harness/snapshot.js +2 -2
- package/dist/tooling/test-harness/snapshot.js.map +1 -1
- package/dist/type-theory/cubical/types.d.ts +25 -0
- package/dist/type-theory/cubical/types.d.ts.map +1 -1
- package/dist/type-theory/cubical/types.js +20 -0
- package/dist/type-theory/cubical/types.js.map +1 -1
- package/dist/type-theory/curry-howard/types.d.ts +27 -0
- package/dist/type-theory/curry-howard/types.d.ts.map +1 -1
- package/dist/type-theory/curry-howard/types.js +18 -0
- package/dist/type-theory/curry-howard/types.js.map +1 -1
- package/dist/type-theory/hindley-milner/substitution.d.ts +39 -0
- package/dist/type-theory/hindley-milner/substitution.d.ts.map +1 -1
- package/dist/type-theory/hindley-milner/substitution.js +37 -0
- package/dist/type-theory/hindley-milner/substitution.js.map +1 -1
- package/dist/type-theory/hindley-milner/types.d.ts +25 -0
- package/dist/type-theory/hindley-milner/types.d.ts.map +1 -1
- package/dist/type-theory/hindley-milner/types.js +22 -2
- package/dist/type-theory/hindley-milner/types.js.map +1 -1
- package/dist/type-theory/hol/rules.d.ts +36 -0
- package/dist/type-theory/hol/rules.d.ts.map +1 -1
- package/dist/type-theory/hol/rules.js +36 -0
- package/dist/type-theory/hol/rules.js.map +1 -1
- package/dist/type-theory/hott/types.d.ts +32 -0
- package/dist/type-theory/hott/types.d.ts.map +1 -1
- package/dist/type-theory/hott/types.js +31 -1
- package/dist/type-theory/hott/types.js.map +1 -1
- package/dist/type-theory/lambda-cube/types.d.ts +17 -0
- package/dist/type-theory/lambda-cube/types.d.ts.map +1 -1
- package/dist/type-theory/lambda-cube/types.js +13 -0
- package/dist/type-theory/lambda-cube/types.js.map +1 -1
- package/dist/type-theory/mltt/types.d.ts +19 -0
- package/dist/type-theory/mltt/types.d.ts.map +1 -1
- package/dist/type-theory/mltt/types.js +15 -1
- package/dist/type-theory/mltt/types.js.map +1 -1
- package/dist/type-theory/nbe/types.d.ts +21 -0
- package/dist/type-theory/nbe/types.d.ts.map +1 -1
- package/dist/type-theory/nbe/types.js +13 -1
- package/dist/type-theory/nbe/types.js.map +1 -1
- package/dist/type-theory/refinement-types/types.d.ts +38 -0
- package/dist/type-theory/refinement-types/types.d.ts.map +1 -1
- package/dist/type-theory/refinement-types/types.js +35 -0
- package/dist/type-theory/refinement-types/types.js.map +1 -1
- package/dist/type-theory/system-f/types.d.ts +30 -0
- package/dist/type-theory/system-f/types.d.ts.map +1 -1
- package/dist/type-theory/system-f/types.js +24 -3
- package/dist/type-theory/system-f/types.js.map +1 -1
- package/dist/types/index.d.ts +42 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -29,6 +29,7 @@ exports.describeAtom = describeAtom;
|
|
|
29
29
|
exports.describeFormula = describeFormula;
|
|
30
30
|
const types_1 = require("./types");
|
|
31
31
|
// --- NNF: negation normal form -----------------------------------------------
|
|
32
|
+
/** Convierte una fórmula LTL a Negation Normal Form (NNF): negaciones empujadas hasta átomos. */
|
|
32
33
|
function toNNF(f) {
|
|
33
34
|
return pushNot(f, false);
|
|
34
35
|
}
|
|
@@ -92,6 +93,10 @@ function pushNot(f, negated) {
|
|
|
92
93
|
}
|
|
93
94
|
}
|
|
94
95
|
// --- Closure ----------------------------------------------------------------
|
|
96
|
+
/**
|
|
97
|
+
* Calcula la clausura de subfórmulas de `f` (incluyendo duales de F, G, U, R via X).
|
|
98
|
+
* El conjunto resultado es el universo de fórmulas sobre el que se construyen los atoms.
|
|
99
|
+
*/
|
|
95
100
|
function closure(f) {
|
|
96
101
|
const seen = new Map();
|
|
97
102
|
function visit(g) {
|
|
@@ -230,6 +235,11 @@ function isLocallyConsistent(present, byKey) {
|
|
|
230
235
|
// Genera todos los atoms (subconjuntos de la clausura) localmente
|
|
231
236
|
// consistentes. Para evitar explosión usamos enumeración por elección
|
|
232
237
|
// de subfórmulas en orden tópico con poda temprana.
|
|
238
|
+
/**
|
|
239
|
+
* Genera todos los atoms localmente consistentes a partir de la clausura dada.
|
|
240
|
+
* Usa backtracking con poda de contradicciones átomo/¬átomo.
|
|
241
|
+
* Límite de seguridad: 200 000 atoms para evitar explosión exponencial.
|
|
242
|
+
*/
|
|
233
243
|
function enumerateAtoms(closureFormulas) {
|
|
234
244
|
const byKey = new Map();
|
|
235
245
|
for (const g of closureFormulas)
|
|
@@ -308,6 +318,11 @@ function enumerateAtoms(closureFormulas) {
|
|
|
308
318
|
// (F, G, U, R) deben mantenerse consistentes. La regla X-φ ∈ A ⇒ φ ∈ B
|
|
309
319
|
// es suficiente porque la clausura ya contiene X(F φ), X(G φ), X(φ U ψ),
|
|
310
320
|
// X(φ R ψ) explícitamente.
|
|
321
|
+
/**
|
|
322
|
+
* Construye la relación de transición entre atoms.
|
|
323
|
+
* A → B sii para toda Xφ ∈ A se cumple φ ∈ B.
|
|
324
|
+
* @returns Mapa de id de atom origen a lista de ids de atoms destino.
|
|
325
|
+
*/
|
|
311
326
|
function transitions(atoms) {
|
|
312
327
|
const out = new Map();
|
|
313
328
|
for (const a of atoms) {
|
|
@@ -334,6 +349,7 @@ function transitions(atoms) {
|
|
|
334
349
|
}
|
|
335
350
|
return out;
|
|
336
351
|
}
|
|
352
|
+
/** Extrae todas las eventualidades (F ψ y φ U ψ) presentes en un atom. */
|
|
337
353
|
function eventualitiesIn(atom) {
|
|
338
354
|
const ev = [];
|
|
339
355
|
for (const [k, f] of atom.formulas) {
|
|
@@ -346,12 +362,14 @@ function eventualitiesIn(atom) {
|
|
|
346
362
|
}
|
|
347
363
|
return ev;
|
|
348
364
|
}
|
|
365
|
+
/** Describe un atom por sus literales: "p,¬q" o "∅" si está vacío. */
|
|
349
366
|
function describeAtom(a) {
|
|
350
367
|
const pos = a.positiveLiterals.join(',');
|
|
351
368
|
const neg = a.negativeLiterals.map((n) => `¬${n}`).join(',');
|
|
352
369
|
const all = [pos, neg].filter((s) => s.length > 0).join(',');
|
|
353
370
|
return all || '∅';
|
|
354
371
|
}
|
|
372
|
+
/** Alias de `formulaToString` para uso en contextos de depuración del tableau. */
|
|
355
373
|
function describeFormula(f) {
|
|
356
374
|
return (0, types_1.formulaToString)(f);
|
|
357
375
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tableau.js","sourceRoot":"","sources":["../../../../src/logic/profiles/ltl-sat/tableau.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tableau.js","sourceRoot":"","sources":["../../../../src/logic/profiles/ltl-sat/tableau.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AST de fórmulas LTL.
|
|
3
|
+
*
|
|
4
|
+
* Operadores temporales: X (next), F (eventually), G (globally),
|
|
5
|
+
* U (until), R (release). W (weak-until) se codifica como `or(until, globally)`.
|
|
6
|
+
*/
|
|
1
7
|
export type LTLFormula = {
|
|
2
8
|
kind: 'atom';
|
|
3
9
|
name: string;
|
|
@@ -39,14 +45,23 @@ export declare const until: (left: LTLFormula, right: LTLFormula) => LTLFormula;
|
|
|
39
45
|
export declare const release: (left: LTLFormula, right: LTLFormula) => LTLFormula;
|
|
40
46
|
export declare const weakUntil: (left: LTLFormula, right: LTLFormula) => LTLFormula;
|
|
41
47
|
export declare const implies: (left: LTLFormula, right: LTLFormula) => LTLFormula;
|
|
48
|
+
/** Modelo lasso que satisface una fórmula LTL: prefijo + lazo infinito. */
|
|
42
49
|
export interface Witness {
|
|
50
|
+
/** Segmento inicial (finito) antes del lazo. Cada elemento es la etiqueta del estado. */
|
|
43
51
|
prefix: string[];
|
|
52
|
+
/** Segmento cíclico que se repite infinitamente. */
|
|
44
53
|
loop: string[];
|
|
45
54
|
}
|
|
55
|
+
/**
|
|
56
|
+
* Resultado de la decisión de satisfacibilidad LTL.
|
|
57
|
+
* Si `sat` es verdadero, `witness` contiene un modelo lasso.
|
|
58
|
+
*/
|
|
46
59
|
export interface SatResult {
|
|
47
60
|
sat: boolean;
|
|
48
61
|
witness?: Witness;
|
|
49
62
|
}
|
|
63
|
+
/** Renderiza una fórmula LTL en notación textual estándar. */
|
|
50
64
|
export declare function formulaToString(f: LTLFormula): string;
|
|
65
|
+
/** Clave canónica determinista de una fórmula LTL, usada para hashing en sets/maps. */
|
|
51
66
|
export declare function formulaKey(f: LTLFormula): string;
|
|
52
67
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/logic/profiles/ltl-sat/types.ts"],"names":[],"mappings":"AAWA,MAAM,MAAM,UAAU,GAClB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC9B;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,GAAG,EAAE,UAAU,CAAA;CAAE,GAChC;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,IAAI,EAAE,UAAU,EAAE,CAAA;CAAE,GACnC;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,UAAU,EAAE,CAAA;CAAE,GAClC;IAAE,IAAI,EAAE,GAAG,CAAC;IAAC,GAAG,EAAE,UAAU,CAAA;CAAE,GAC9B;IAAE,IAAI,EAAE,GAAG,CAAC;IAAC,GAAG,EAAE,UAAU,CAAA;CAAE,GAC9B;IAAE,IAAI,EAAE,GAAG,CAAC;IAAC,GAAG,EAAE,UAAU,CAAA;CAAE,GAC9B;IAAE,IAAI,EAAE,GAAG,CAAC;IAAC,IAAI,EAAE,UAAU,CAAC;IAAC,KAAK,EAAE,UAAU,CAAA;CAAE,GAClD;IAAE,IAAI,EAAE,GAAG,CAAC;IAAC,IAAI,EAAE,UAAU,CAAC;IAAC,KAAK,EAAE,UAAU,CAAA;CAAE,CAAC;AAGvD,eAAO,MAAM,IAAI,GAAI,MAAM,MAAM,KAAG,UAAsC,CAAC;AAC3E,eAAO,MAAM,GAAG,GAAI,KAAK,UAAU,KAAG,UAAoC,CAAC;AAC3E,eAAO,MAAM,GAAG,GAAI,GAAG,MAAM,UAAU,EAAE,KAAG,UAAqC,CAAC;AAClF,eAAO,MAAM,EAAE,GAAI,GAAG,MAAM,UAAU,EAAE,KAAG,UAAoC,CAAC;AAChF,eAAO,MAAM,IAAI,GAAI,KAAK,UAAU,KAAG,UAAkC,CAAC;AAC1E,eAAO,MAAM,UAAU,GAAI,KAAK,UAAU,KAAG,UAAkC,CAAC;AAChF,eAAO,MAAM,QAAQ,GAAI,KAAK,UAAU,KAAG,UAAkC,CAAC;AAC9E,eAAO,MAAM,KAAK,GAAI,MAAM,UAAU,EAAE,OAAO,UAAU,KAAG,UAI1D,CAAC;AACH,eAAO,MAAM,OAAO,GAAI,MAAM,UAAU,EAAE,OAAO,UAAU,KAAG,UAI5D,CAAC;AAEH,eAAO,MAAM,SAAS,GAAI,MAAM,UAAU,EAAE,OAAO,UAAU,KAAG,UACxB,CAAC;AAGzC,eAAO,MAAM,OAAO,GAAI,MAAM,UAAU,EAAE,OAAO,UAAU,KAAG,UAAkC,CAAC;AAEjG,MAAM,WAAW,OAAO;IACtB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,IAAI,EAAE,MAAM,EAAE,CAAC;CAChB;AAED,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,OAAO,CAAC;IACb,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,wBAAgB,eAAe,CAAC,CAAC,EAAE,UAAU,GAAG,MAAM,CAqBrD;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/logic/profiles/ltl-sat/types.ts"],"names":[],"mappings":"AAWA;;;;;GAKG;AACH,MAAM,MAAM,UAAU,GAClB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC9B;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,GAAG,EAAE,UAAU,CAAA;CAAE,GAChC;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,IAAI,EAAE,UAAU,EAAE,CAAA;CAAE,GACnC;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,UAAU,EAAE,CAAA;CAAE,GAClC;IAAE,IAAI,EAAE,GAAG,CAAC;IAAC,GAAG,EAAE,UAAU,CAAA;CAAE,GAC9B;IAAE,IAAI,EAAE,GAAG,CAAC;IAAC,GAAG,EAAE,UAAU,CAAA;CAAE,GAC9B;IAAE,IAAI,EAAE,GAAG,CAAC;IAAC,GAAG,EAAE,UAAU,CAAA;CAAE,GAC9B;IAAE,IAAI,EAAE,GAAG,CAAC;IAAC,IAAI,EAAE,UAAU,CAAC;IAAC,KAAK,EAAE,UAAU,CAAA;CAAE,GAClD;IAAE,IAAI,EAAE,GAAG,CAAC;IAAC,IAAI,EAAE,UAAU,CAAC;IAAC,KAAK,EAAE,UAAU,CAAA;CAAE,CAAC;AAGvD,eAAO,MAAM,IAAI,GAAI,MAAM,MAAM,KAAG,UAAsC,CAAC;AAC3E,eAAO,MAAM,GAAG,GAAI,KAAK,UAAU,KAAG,UAAoC,CAAC;AAC3E,eAAO,MAAM,GAAG,GAAI,GAAG,MAAM,UAAU,EAAE,KAAG,UAAqC,CAAC;AAClF,eAAO,MAAM,EAAE,GAAI,GAAG,MAAM,UAAU,EAAE,KAAG,UAAoC,CAAC;AAChF,eAAO,MAAM,IAAI,GAAI,KAAK,UAAU,KAAG,UAAkC,CAAC;AAC1E,eAAO,MAAM,UAAU,GAAI,KAAK,UAAU,KAAG,UAAkC,CAAC;AAChF,eAAO,MAAM,QAAQ,GAAI,KAAK,UAAU,KAAG,UAAkC,CAAC;AAC9E,eAAO,MAAM,KAAK,GAAI,MAAM,UAAU,EAAE,OAAO,UAAU,KAAG,UAI1D,CAAC;AACH,eAAO,MAAM,OAAO,GAAI,MAAM,UAAU,EAAE,OAAO,UAAU,KAAG,UAI5D,CAAC;AAEH,eAAO,MAAM,SAAS,GAAI,MAAM,UAAU,EAAE,OAAO,UAAU,KAAG,UACxB,CAAC;AAGzC,eAAO,MAAM,OAAO,GAAI,MAAM,UAAU,EAAE,OAAO,UAAU,KAAG,UAAkC,CAAC;AAEjG,2EAA2E;AAC3E,MAAM,WAAW,OAAO;IACtB,yFAAyF;IACzF,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,oDAAoD;IACpD,IAAI,EAAE,MAAM,EAAE,CAAC;CAChB;AAED;;;GAGG;AACH,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,OAAO,CAAC;IACb,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,8DAA8D;AAC9D,wBAAgB,eAAe,CAAC,CAAC,EAAE,UAAU,GAAG,MAAM,CAqBrD;AAQD,uFAAuF;AACvF,wBAAgB,UAAU,CAAC,CAAC,EAAE,UAAU,GAAG,MAAM,CAqBhD"}
|
|
@@ -46,6 +46,7 @@ exports.weakUntil = weakUntil;
|
|
|
46
46
|
// Implicación derivada: φ → ψ ≡ ¬φ ∨ ψ
|
|
47
47
|
const implies = (left, right) => (0, exports.or)((0, exports.not)(left), right);
|
|
48
48
|
exports.implies = implies;
|
|
49
|
+
/** Renderiza una fórmula LTL en notación textual estándar. */
|
|
49
50
|
function formulaToString(f) {
|
|
50
51
|
switch (f.kind) {
|
|
51
52
|
case 'atom':
|
|
@@ -75,7 +76,7 @@ function parenthesize(f) {
|
|
|
75
76
|
return formulaToString(f);
|
|
76
77
|
return `(${formulaToString(f)})`;
|
|
77
78
|
}
|
|
78
|
-
|
|
79
|
+
/** Clave canónica determinista de una fórmula LTL, usada para hashing en sets/maps. */
|
|
79
80
|
function formulaKey(f) {
|
|
80
81
|
switch (f.kind) {
|
|
81
82
|
case 'atom':
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/logic/profiles/ltl-sat/types.ts"],"names":[],"mappings":";AAAA,+DAA+D;AAC/D,8DAA8D;AAC9D,+DAA+D;AAC/D,iDAAiD;AACjD,gEAAgE;AAChE,4BAA4B;AAC5B,EAAE;AACF,4DAA4D;AAC5D,wDAAwD;AACxD,+DAA+D;;;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/logic/profiles/ltl-sat/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,19 +2,29 @@ import { ModalFormula } from './types';
|
|
|
2
2
|
declare function unary(f: ModalFormula): ModalFormula;
|
|
3
3
|
declare function binLeft(f: ModalFormula): ModalFormula;
|
|
4
4
|
declare function binRight(f: ModalFormula): ModalFormula;
|
|
5
|
+
/** Crea un átomo proposicional modal. */
|
|
5
6
|
export declare const atom: (name: string) => ModalFormula;
|
|
7
|
+
/** Negación: ¬φ. */
|
|
6
8
|
export declare const not: (arg: ModalFormula) => ModalFormula;
|
|
9
|
+
/** Conjunción: φ ∧ ψ. */
|
|
7
10
|
export declare const and: (left: ModalFormula, right: ModalFormula) => ModalFormula;
|
|
11
|
+
/** Disyunción: φ ∨ ψ. */
|
|
8
12
|
export declare const or: (left: ModalFormula, right: ModalFormula) => ModalFormula;
|
|
13
|
+
/** Implicación: φ → ψ. */
|
|
9
14
|
export declare const implies: (left: ModalFormula, right: ModalFormula) => ModalFormula;
|
|
15
|
+
/** Operador □ (necesidad / box): □φ. */
|
|
10
16
|
export declare const box: (arg: ModalFormula) => ModalFormula;
|
|
17
|
+
/** Operador ◇ (posibilidad / diamond): ◇φ. */
|
|
11
18
|
export declare const diamond: (arg: ModalFormula) => ModalFormula;
|
|
12
19
|
/**
|
|
13
20
|
* Clave sintáctica determinista para deduplicación.
|
|
14
21
|
*/
|
|
15
22
|
export declare function formulaKey(f: ModalFormula): string;
|
|
23
|
+
/** Igualdad sintáctica entre dos fórmulas modales. */
|
|
16
24
|
export declare function formulaEquals(a: ModalFormula, b: ModalFormula): boolean;
|
|
25
|
+
/** Renderiza una fórmula modal en notación textual (¬, ∧, ∨, →, □, ◇). */
|
|
17
26
|
export declare function formulaToString(f: ModalFormula): string;
|
|
27
|
+
/** Recolecta todos los nombres de átomos proposicionales que aparecen en `f`. */
|
|
18
28
|
export declare function collectAtoms(f: ModalFormula, out?: Set<string>): Set<string>;
|
|
19
29
|
export declare const subUnary: typeof unary;
|
|
20
30
|
export declare const subLeft: typeof binLeft;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"formula.d.ts","sourceRoot":"","sources":["../../../../src/logic/profiles/modal-frame-axioms/formula.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAMvC,iBAAS,KAAK,CAAC,CAAC,EAAE,YAAY,GAAG,YAAY,CAI5C;AAED,iBAAS,OAAO,CAAC,CAAC,EAAE,YAAY,GAAG,YAAY,CAI9C;AAED,iBAAS,QAAQ,CAAC,CAAC,EAAE,YAAY,GAAG,YAAY,CAI/C;AAMD,eAAO,MAAM,IAAI,GAAI,MAAM,MAAM,KAAG,YAAwC,CAAC;AAE7E,eAAO,MAAM,GAAG,GAAI,KAAK,YAAY,KAAG,YAAmD,CAAC;AAE5F,eAAO,MAAM,GAAG,GAAI,MAAM,YAAY,EAAE,OAAO,YAAY,KAAG,YAK5D,CAAC;AAEH,eAAO,MAAM,EAAE,GAAI,MAAM,YAAY,EAAE,OAAO,YAAY,KAAG,YAK3D,CAAC;AAEH,eAAO,MAAM,OAAO,GAAI,MAAM,YAAY,EAAE,OAAO,YAAY,KAAG,YAKhE,CAAC;AAEH,eAAO,MAAM,GAAG,GAAI,KAAK,YAAY,KAAG,YAAmD,CAAC;AAE5F,eAAO,MAAM,OAAO,GAAI,KAAK,YAAY,KAAG,YAI1C,CAAC;AAMH;;GAEG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,YAAY,GAAG,MAAM,CAiBlD;AAED,wBAAgB,aAAa,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,GAAG,OAAO,CAEvE;AAED,wBAAgB,eAAe,CAAC,CAAC,EAAE,YAAY,GAAG,MAAM,CAoBvD;AAYD,wBAAgB,YAAY,CAAC,CAAC,EAAE,YAAY,EAAE,GAAG,GAAE,GAAG,CAAC,MAAM,CAAa,GAAG,GAAG,CAAC,MAAM,CAAC,CAevF;AAID,eAAO,MAAM,QAAQ,cAAQ,CAAC;AAC9B,eAAO,MAAM,OAAO,gBAAU,CAAC;AAC/B,eAAO,MAAM,QAAQ,iBAAW,CAAC"}
|
|
1
|
+
{"version":3,"file":"formula.d.ts","sourceRoot":"","sources":["../../../../src/logic/profiles/modal-frame-axioms/formula.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAMvC,iBAAS,KAAK,CAAC,CAAC,EAAE,YAAY,GAAG,YAAY,CAI5C;AAED,iBAAS,OAAO,CAAC,CAAC,EAAE,YAAY,GAAG,YAAY,CAI9C;AAED,iBAAS,QAAQ,CAAC,CAAC,EAAE,YAAY,GAAG,YAAY,CAI/C;AAMD,yCAAyC;AACzC,eAAO,MAAM,IAAI,GAAI,MAAM,MAAM,KAAG,YAAwC,CAAC;AAE7E,oBAAoB;AACpB,eAAO,MAAM,GAAG,GAAI,KAAK,YAAY,KAAG,YAAmD,CAAC;AAE5F,yBAAyB;AACzB,eAAO,MAAM,GAAG,GAAI,MAAM,YAAY,EAAE,OAAO,YAAY,KAAG,YAK5D,CAAC;AAEH,yBAAyB;AACzB,eAAO,MAAM,EAAE,GAAI,MAAM,YAAY,EAAE,OAAO,YAAY,KAAG,YAK3D,CAAC;AAEH,0BAA0B;AAC1B,eAAO,MAAM,OAAO,GAAI,MAAM,YAAY,EAAE,OAAO,YAAY,KAAG,YAKhE,CAAC;AAEH,wCAAwC;AACxC,eAAO,MAAM,GAAG,GAAI,KAAK,YAAY,KAAG,YAAmD,CAAC;AAE5F,8CAA8C;AAC9C,eAAO,MAAM,OAAO,GAAI,KAAK,YAAY,KAAG,YAI1C,CAAC;AAMH;;GAEG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,YAAY,GAAG,MAAM,CAiBlD;AAED,sDAAsD;AACtD,wBAAgB,aAAa,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,GAAG,OAAO,CAEvE;AAED,0EAA0E;AAC1E,wBAAgB,eAAe,CAAC,CAAC,EAAE,YAAY,GAAG,MAAM,CAoBvD;AAYD,iFAAiF;AACjF,wBAAgB,YAAY,CAAC,CAAC,EAAE,YAAY,EAAE,GAAG,GAAE,GAAG,CAAC,MAAM,CAAa,GAAG,GAAG,CAAC,MAAM,CAAC,CAevF;AAID,eAAO,MAAM,QAAQ,cAAQ,CAAC;AAC9B,eAAO,MAAM,OAAO,gBAAU,CAAC;AAC/B,eAAO,MAAM,QAAQ,iBAAW,CAAC"}
|
|
@@ -41,10 +41,13 @@ function binRight(f) {
|
|
|
41
41
|
// ------------------------------------------------------------
|
|
42
42
|
// Constructores ergonómicos
|
|
43
43
|
// ------------------------------------------------------------
|
|
44
|
+
/** Crea un átomo proposicional modal. */
|
|
44
45
|
const atom = (name) => ({ kind: 'atom', name });
|
|
45
46
|
exports.atom = atom;
|
|
47
|
+
/** Negación: ¬φ. */
|
|
46
48
|
const not = (arg) => ({ kind: 'not', arg, args: [arg] });
|
|
47
49
|
exports.not = not;
|
|
50
|
+
/** Conjunción: φ ∧ ψ. */
|
|
48
51
|
const and = (left, right) => ({
|
|
49
52
|
kind: 'and',
|
|
50
53
|
left,
|
|
@@ -52,6 +55,7 @@ const and = (left, right) => ({
|
|
|
52
55
|
args: [left, right],
|
|
53
56
|
});
|
|
54
57
|
exports.and = and;
|
|
58
|
+
/** Disyunción: φ ∨ ψ. */
|
|
55
59
|
const or = (left, right) => ({
|
|
56
60
|
kind: 'or',
|
|
57
61
|
left,
|
|
@@ -59,6 +63,7 @@ const or = (left, right) => ({
|
|
|
59
63
|
args: [left, right],
|
|
60
64
|
});
|
|
61
65
|
exports.or = or;
|
|
66
|
+
/** Implicación: φ → ψ. */
|
|
62
67
|
const implies = (left, right) => ({
|
|
63
68
|
kind: 'implies',
|
|
64
69
|
left,
|
|
@@ -66,8 +71,10 @@ const implies = (left, right) => ({
|
|
|
66
71
|
args: [left, right],
|
|
67
72
|
});
|
|
68
73
|
exports.implies = implies;
|
|
74
|
+
/** Operador □ (necesidad / box): □φ. */
|
|
69
75
|
const box = (arg) => ({ kind: 'box', arg, args: [arg] });
|
|
70
76
|
exports.box = box;
|
|
77
|
+
/** Operador ◇ (posibilidad / diamond): ◇φ. */
|
|
71
78
|
const diamond = (arg) => ({
|
|
72
79
|
kind: 'diamond',
|
|
73
80
|
arg,
|
|
@@ -98,9 +105,11 @@ function formulaKey(f) {
|
|
|
98
105
|
return `>(${formulaKey(binLeft(f))},${formulaKey(binRight(f))})`;
|
|
99
106
|
}
|
|
100
107
|
}
|
|
108
|
+
/** Igualdad sintáctica entre dos fórmulas modales. */
|
|
101
109
|
function formulaEquals(a, b) {
|
|
102
110
|
return formulaKey(a) === formulaKey(b);
|
|
103
111
|
}
|
|
112
|
+
/** Renderiza una fórmula modal en notación textual (¬, ∧, ∨, →, □, ◇). */
|
|
104
113
|
function formulaToString(f) {
|
|
105
114
|
switch (f.kind) {
|
|
106
115
|
case 'atom':
|
|
@@ -133,6 +142,7 @@ function parens(f) {
|
|
|
133
142
|
// ------------------------------------------------------------
|
|
134
143
|
// Átomos
|
|
135
144
|
// ------------------------------------------------------------
|
|
145
|
+
/** Recolecta todos los nombres de átomos proposicionales que aparecen en `f`. */
|
|
136
146
|
function collectAtoms(f, out = new Set()) {
|
|
137
147
|
switch (f.kind) {
|
|
138
148
|
case 'atom':
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"formula.js","sourceRoot":"","sources":["../../../../src/logic/profiles/modal-frame-axioms/formula.ts"],"names":[],"mappings":";AAAA,+DAA+D;AAC/D,8BAA8B;AAC9B,+DAA+D;AAC/D,EAAE;AACF,yDAAyD;AACzD,kEAAkE;AAClE,8DAA8D;AAC9D,iEAAiE;AACjE,8DAA8D;;;
|
|
1
|
+
{"version":3,"file":"formula.js","sourceRoot":"","sources":["../../../../src/logic/profiles/modal-frame-axioms/formula.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"check.d.ts","sourceRoot":"","sources":["../../../../src/logic/profiles/mu-calculus/check.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"check.d.ts","sourceRoot":"","sources":["../../../../src/logic/profiles/mu-calculus/check.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAsI1D;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,eAAe,EAAE,GAAG,EAAE,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,CAG1E;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,eAAe,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAEtF"}
|
|
@@ -38,7 +38,10 @@ function compile(K) {
|
|
|
38
38
|
if (!universe.has(to)) {
|
|
39
39
|
throw new Error(`μ-calculus: transición hacia estado desconocido "${to}"`);
|
|
40
40
|
}
|
|
41
|
-
succ.get(from)
|
|
41
|
+
const fromSet = succ.get(from);
|
|
42
|
+
if (fromSet === undefined)
|
|
43
|
+
throw new Error(`μ-calculus: estado origen desconocido "${from}"`);
|
|
44
|
+
fromSet.add(to);
|
|
42
45
|
}
|
|
43
46
|
return { states, universe, labels, succ };
|
|
44
47
|
}
|
|
@@ -47,7 +50,7 @@ function evalFormula(model, phi, env) {
|
|
|
47
50
|
case 'atom': {
|
|
48
51
|
const out = new Set();
|
|
49
52
|
for (const s of model.states) {
|
|
50
|
-
if (model.labels.get(s)
|
|
53
|
+
if (model.labels.get(s)?.has(phi.name))
|
|
51
54
|
out.add(s);
|
|
52
55
|
}
|
|
53
56
|
return out;
|
|
@@ -89,7 +92,7 @@ function evalFormula(model, phi, env) {
|
|
|
89
92
|
const sub = evalFormula(model, phi.arg, env);
|
|
90
93
|
const out = new Set();
|
|
91
94
|
for (const s of model.states) {
|
|
92
|
-
const succs = model.succ.get(s);
|
|
95
|
+
const succs = model.succ.get(s) ?? new Set();
|
|
93
96
|
let allOk = true;
|
|
94
97
|
for (const t of succs) {
|
|
95
98
|
if (!sub.has(t)) {
|
|
@@ -107,7 +110,7 @@ function evalFormula(model, phi, env) {
|
|
|
107
110
|
const sub = evalFormula(model, phi.arg, env);
|
|
108
111
|
const out = new Set();
|
|
109
112
|
for (const s of model.states) {
|
|
110
|
-
for (const t of model.succ.get(s)) {
|
|
113
|
+
for (const t of model.succ.get(s) ?? []) {
|
|
111
114
|
if (sub.has(t)) {
|
|
112
115
|
out.add(s);
|
|
113
116
|
break;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"check.js","sourceRoot":"","sources":["../../../../src/logic/profiles/mu-calculus/check.ts"],"names":[],"mappings":";AAAA,+DAA+D;AAC/D,4DAA4D;AAC5D,+DAA+D;AAC/D,+DAA+D;AAC/D,6DAA6D;AAC7D,EAAE;AACF,uCAAuC;AACvC,uBAAuB;AACvB,2BAA2B;AAC3B,8BAA8B;AAC9B,8BAA8B;AAC9B,gDAAgD;AAChD,gDAAgD;AAChD,2CAA2C;AAC3C,+BAA+B;AAC/B,EAAE;AACF,4DAA4D;AAC5D,mEAAmE;AACnE,sDAAsD;AACtD,+DAA+D;;
|
|
1
|
+
{"version":3,"file":"check.js","sourceRoot":"","sources":["../../../../src/logic/profiles/mu-calculus/check.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,16 +3,24 @@ import { NKFormula } from './types';
|
|
|
3
3
|
* Clave sintáctica estable para deduplicación / memoización.
|
|
4
4
|
*/
|
|
5
5
|
export declare function formulaKey(f: NKFormula): string;
|
|
6
|
+
/** Igualdad sintáctica entre dos fórmulas NK por comparación de claves. */
|
|
6
7
|
export declare function formulaEquals(a: NKFormula, b: NKFormula): boolean;
|
|
8
|
+
/** Renderiza una fórmula NK en notación textual (¬, ∧, ∨, →, ⊥). */
|
|
7
9
|
export declare function formulaToString(f: NKFormula): string;
|
|
8
10
|
/**
|
|
9
11
|
* Recolecta los átomos proposicionales que aparecen en `f`.
|
|
10
12
|
*/
|
|
11
13
|
export declare function collectAtoms(f: NKFormula, out?: Set<string>): Set<string>;
|
|
14
|
+
/** Átomo proposicional clásico. */
|
|
12
15
|
export declare const atom: (name: string) => NKFormula;
|
|
16
|
+
/** Constante de falsedad ⊥. */
|
|
13
17
|
export declare const bottom: () => NKFormula;
|
|
18
|
+
/** Negación: ¬φ. */
|
|
14
19
|
export declare const not: (arg: NKFormula) => NKFormula;
|
|
20
|
+
/** Conjunción: left ∧ right. */
|
|
15
21
|
export declare const and: (left: NKFormula, right: NKFormula) => NKFormula;
|
|
22
|
+
/** Disyunción: left ∨ right. */
|
|
16
23
|
export declare const or: (left: NKFormula, right: NKFormula) => NKFormula;
|
|
24
|
+
/** Implicación: left → right. */
|
|
17
25
|
export declare const implies: (left: NKFormula, right: NKFormula) => NKFormula;
|
|
18
26
|
//# sourceMappingURL=formula.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"formula.d.ts","sourceRoot":"","sources":["../../../../src/logic/profiles/natural-deduction-nk/formula.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEpC;;GAEG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,SAAS,GAAG,MAAM,CAe/C;AAED,wBAAgB,aAAa,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,OAAO,CAEjE;AAED,wBAAgB,eAAe,CAAC,CAAC,EAAE,SAAS,GAAG,MAAM,CAepD;AAOD;;GAEG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,GAAE,GAAG,CAAC,MAAM,CAAa,GAAG,GAAG,CAAC,MAAM,CAAC,CAepF;AAID,eAAO,MAAM,IAAI,GAAI,MAAM,MAAM,KAAG,SAAqC,CAAC;AAC1E,eAAO,MAAM,MAAM,QAAO,SAAiC,CAAC;AAC5D,eAAO,MAAM,GAAG,GAAI,KAAK,SAAS,KAAG,SAAmC,CAAC;AACzE,eAAO,MAAM,GAAG,GAAI,MAAM,SAAS,EAAE,OAAO,SAAS,KAAG,SAItD,CAAC;AACH,eAAO,MAAM,EAAE,GAAI,MAAM,SAAS,EAAE,OAAO,SAAS,KAAG,SAIrD,CAAC;AACH,eAAO,MAAM,OAAO,GAAI,MAAM,SAAS,EAAE,OAAO,SAAS,KAAG,SAI1D,CAAC"}
|
|
1
|
+
{"version":3,"file":"formula.d.ts","sourceRoot":"","sources":["../../../../src/logic/profiles/natural-deduction-nk/formula.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEpC;;GAEG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,SAAS,GAAG,MAAM,CAe/C;AAED,2EAA2E;AAC3E,wBAAgB,aAAa,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,OAAO,CAEjE;AAED,oEAAoE;AACpE,wBAAgB,eAAe,CAAC,CAAC,EAAE,SAAS,GAAG,MAAM,CAepD;AAOD;;GAEG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,GAAE,GAAG,CAAC,MAAM,CAAa,GAAG,GAAG,CAAC,MAAM,CAAC,CAepF;AAID,mCAAmC;AACnC,eAAO,MAAM,IAAI,GAAI,MAAM,MAAM,KAAG,SAAqC,CAAC;AAC1E,+BAA+B;AAC/B,eAAO,MAAM,MAAM,QAAO,SAAiC,CAAC;AAC5D,oBAAoB;AACpB,eAAO,MAAM,GAAG,GAAI,KAAK,SAAS,KAAG,SAAmC,CAAC;AACzE,gCAAgC;AAChC,eAAO,MAAM,GAAG,GAAI,MAAM,SAAS,EAAE,OAAO,SAAS,KAAG,SAItD,CAAC;AACH,gCAAgC;AAChC,eAAO,MAAM,EAAE,GAAI,MAAM,SAAS,EAAE,OAAO,SAAS,KAAG,SAIrD,CAAC;AACH,iCAAiC;AACjC,eAAO,MAAM,OAAO,GAAI,MAAM,SAAS,EAAE,OAAO,SAAS,KAAG,SAI1D,CAAC"}
|
|
@@ -31,9 +31,11 @@ function formulaKey(f) {
|
|
|
31
31
|
return `>(${formulaKey(f.left)},${formulaKey(f.right)})`;
|
|
32
32
|
}
|
|
33
33
|
}
|
|
34
|
+
/** Igualdad sintáctica entre dos fórmulas NK por comparación de claves. */
|
|
34
35
|
function formulaEquals(a, b) {
|
|
35
36
|
return formulaKey(a) === formulaKey(b);
|
|
36
37
|
}
|
|
38
|
+
/** Renderiza una fórmula NK en notación textual (¬, ∧, ∨, →, ⊥). */
|
|
37
39
|
function formulaToString(f) {
|
|
38
40
|
switch (f.kind) {
|
|
39
41
|
case 'atom':
|
|
@@ -75,24 +77,30 @@ function collectAtoms(f, out = new Set()) {
|
|
|
75
77
|
}
|
|
76
78
|
}
|
|
77
79
|
// Constructores ergonómicos -----------------------------------
|
|
80
|
+
/** Átomo proposicional clásico. */
|
|
78
81
|
const atom = (name) => ({ kind: 'atom', name });
|
|
79
82
|
exports.atom = atom;
|
|
83
|
+
/** Constante de falsedad ⊥. */
|
|
80
84
|
const bottom = () => ({ kind: 'bottom' });
|
|
81
85
|
exports.bottom = bottom;
|
|
86
|
+
/** Negación: ¬φ. */
|
|
82
87
|
const not = (arg) => ({ kind: 'not', arg });
|
|
83
88
|
exports.not = not;
|
|
89
|
+
/** Conjunción: left ∧ right. */
|
|
84
90
|
const and = (left, right) => ({
|
|
85
91
|
kind: 'and',
|
|
86
92
|
left,
|
|
87
93
|
right,
|
|
88
94
|
});
|
|
89
95
|
exports.and = and;
|
|
96
|
+
/** Disyunción: left ∨ right. */
|
|
90
97
|
const or = (left, right) => ({
|
|
91
98
|
kind: 'or',
|
|
92
99
|
left,
|
|
93
100
|
right,
|
|
94
101
|
});
|
|
95
102
|
exports.or = or;
|
|
103
|
+
/** Implicación: left → right. */
|
|
96
104
|
const implies = (left, right) => ({
|
|
97
105
|
kind: 'implies',
|
|
98
106
|
left,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"formula.js","sourceRoot":"","sources":["../../../../src/logic/profiles/natural-deduction-nk/formula.ts"],"names":[],"mappings":";AAAA,+DAA+D;AAC/D,oCAAoC;AACpC,+DAA+D;AAC/D,EAAE;AACF,2DAA2D;AAC3D,iEAAiE;AACjE,cAAc;;;AAOd,gCAeC;
|
|
1
|
+
{"version":3,"file":"formula.js","sourceRoot":"","sources":["../../../../src/logic/profiles/natural-deduction-nk/formula.ts"],"names":[],"mappings":";AAAA,+DAA+D;AAC/D,oCAAoC;AACpC,+DAA+D;AAC/D,EAAE;AACF,2DAA2D;AAC3D,iEAAiE;AACjE,cAAc;;;AAOd,gCAeC;AAGD,sCAEC;AAGD,0CAeC;AAUD,oCAeC;AAlED;;GAEG;AACH,SAAgB,UAAU,CAAC,CAAY;IACrC,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;QACf,KAAK,MAAM;YACT,OAAO,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC;QACxB,KAAK,QAAQ;YACX,OAAO,GAAG,CAAC;QACb,KAAK,KAAK;YACR,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;QACnC,KAAK,KAAK;YACR,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC;QAC3D,KAAK,IAAI;YACP,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC;QAC3D,KAAK,SAAS;YACZ,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC;IAC7D,CAAC;AACH,CAAC;AAED,2EAA2E;AAC3E,SAAgB,aAAa,CAAC,CAAY,EAAE,CAAY;IACtD,OAAO,UAAU,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC;AACzC,CAAC;AAED,oEAAoE;AACpE,SAAgB,eAAe,CAAC,CAAY;IAC1C,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;QACf,KAAK,MAAM;YACT,OAAO,CAAC,CAAC,IAAI,CAAC;QAChB,KAAK,QAAQ;YACX,OAAO,GAAG,CAAC;QACb,KAAK,KAAK;YACR,OAAO,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;QAC7B,KAAK,KAAK;YACR,OAAO,IAAI,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,eAAe,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC;QACtE,KAAK,IAAI;YACP,OAAO,IAAI,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,eAAe,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC;QACtE,KAAK,SAAS;YACZ,OAAO,IAAI,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,eAAe,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC;IACxE,CAAC;AACH,CAAC;AAED,SAAS,MAAM,CAAC,CAAY;IAC1B,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ;QAAE,OAAO,eAAe,CAAC,CAAC,CAAC,CAAC;IACxE,OAAO,IAAI,eAAe,CAAC,CAAC,CAAC,GAAG,CAAC;AACnC,CAAC;AAED;;GAEG;AACH,SAAgB,YAAY,CAAC,CAAY,EAAE,MAAmB,IAAI,GAAG,EAAE;IACrE,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;QACf,KAAK,MAAM;YACT,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAChB,OAAO,GAAG,CAAC;QACb,KAAK,QAAQ;YACX,OAAO,GAAG,CAAC;QACb,KAAK,KAAK;YACR,OAAO,YAAY,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAClC,KAAK,KAAK,CAAC;QACX,KAAK,IAAI,CAAC;QACV,KAAK,SAAS;YACZ,YAAY,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YAC1B,OAAO,YAAY,CAAC,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACtC,CAAC;AACH,CAAC;AAED,gEAAgE;AAEhE,mCAAmC;AAC5B,MAAM,IAAI,GAAG,CAAC,IAAY,EAAa,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;AAA7D,QAAA,IAAI,QAAyD;AAC1E,+BAA+B;AACxB,MAAM,MAAM,GAAG,GAAc,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;AAA/C,QAAA,MAAM,UAAyC;AAC5D,oBAAoB;AACb,MAAM,GAAG,GAAG,CAAC,GAAc,EAAa,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;AAA5D,QAAA,GAAG,OAAyD;AACzE,gCAAgC;AACzB,MAAM,GAAG,GAAG,CAAC,IAAe,EAAE,KAAgB,EAAa,EAAE,CAAC,CAAC;IACpE,IAAI,EAAE,KAAK;IACX,IAAI;IACJ,KAAK;CACN,CAAC,CAAC;AAJU,QAAA,GAAG,OAIb;AACH,gCAAgC;AACzB,MAAM,EAAE,GAAG,CAAC,IAAe,EAAE,KAAgB,EAAa,EAAE,CAAC,CAAC;IACnE,IAAI,EAAE,IAAI;IACV,IAAI;IACJ,KAAK;CACN,CAAC,CAAC;AAJU,QAAA,EAAE,MAIZ;AACH,iCAAiC;AAC1B,MAAM,OAAO,GAAG,CAAC,IAAe,EAAE,KAAgB,EAAa,EAAE,CAAC,CAAC;IACxE,IAAI,EAAE,SAAS;IACf,IAAI;IACJ,KAAK;CACN,CAAC,CAAC;AAJU,QAAA,OAAO,WAIjB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/logic/profiles/quantum/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/logic/profiles/quantum/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -419,7 +419,10 @@ function buildRayGroups(vectors) {
|
|
|
419
419
|
const key = rayKey(v);
|
|
420
420
|
if (!ray.has(key))
|
|
421
421
|
ray.set(key, ray.size);
|
|
422
|
-
|
|
422
|
+
const rayId = ray.get(key);
|
|
423
|
+
if (rayId === undefined)
|
|
424
|
+
throw new Error(`quantum: rayo no encontrado para clave ${key}`);
|
|
425
|
+
out.set(i, rayId);
|
|
423
426
|
});
|
|
424
427
|
return out;
|
|
425
428
|
}
|
|
@@ -532,12 +535,12 @@ function isKSColorable(config) {
|
|
|
532
535
|
const p = propagate();
|
|
533
536
|
if (p === 'fail') {
|
|
534
537
|
for (let i = 0; i < color.length; i++)
|
|
535
|
-
color[i] = snapshot[i];
|
|
538
|
+
color[i] = snapshot[i] ?? -1;
|
|
536
539
|
return false;
|
|
537
540
|
}
|
|
538
541
|
if (check() === 'fail') {
|
|
539
542
|
for (let i = 0; i < color.length; i++)
|
|
540
|
-
color[i] = snapshot[i];
|
|
543
|
+
color[i] = snapshot[i] ?? -1;
|
|
541
544
|
return false;
|
|
542
545
|
}
|
|
543
546
|
const r = pickUnassigned();
|
|
@@ -547,7 +550,7 @@ function isKSColorable(config) {
|
|
|
547
550
|
const ones = [color[a], color[b], color[c]].filter((v) => v === 1).length;
|
|
548
551
|
if (ones !== 1) {
|
|
549
552
|
for (let i = 0; i < color.length; i++)
|
|
550
|
-
color[i] = snapshot[i];
|
|
553
|
+
color[i] = snapshot[i] ?? -1;
|
|
551
554
|
return false;
|
|
552
555
|
}
|
|
553
556
|
}
|
|
@@ -559,7 +562,7 @@ function isKSColorable(config) {
|
|
|
559
562
|
return true;
|
|
560
563
|
// restaurar
|
|
561
564
|
for (let i = 0; i < color.length; i++)
|
|
562
|
-
color[i] = snapshot[i];
|
|
565
|
+
color[i] = snapshot[i] ?? -1;
|
|
563
566
|
color[r] = -1; // por las dudas
|
|
564
567
|
}
|
|
565
568
|
return false;
|
|
@@ -757,7 +760,7 @@ function isKSColorableContexts(vectors, contexts) {
|
|
|
757
760
|
const snapshot = color.slice();
|
|
758
761
|
if (propagate() === 'fail') {
|
|
759
762
|
for (let i = 0; i < color.length; i++)
|
|
760
|
-
color[i] = snapshot[i];
|
|
763
|
+
color[i] = snapshot[i] ?? -1;
|
|
761
764
|
return false;
|
|
762
765
|
}
|
|
763
766
|
const r = pickUnassigned();
|
|
@@ -767,7 +770,7 @@ function isKSColorableContexts(vectors, contexts) {
|
|
|
767
770
|
const ones = ctx.map((rr) => color[rr]).filter((v) => v === 1).length;
|
|
768
771
|
if (ones !== 1) {
|
|
769
772
|
for (let i = 0; i < color.length; i++)
|
|
770
|
-
color[i] = snapshot[i];
|
|
773
|
+
color[i] = snapshot[i] ?? -1;
|
|
771
774
|
return false;
|
|
772
775
|
}
|
|
773
776
|
}
|
|
@@ -779,7 +782,7 @@ function isKSColorableContexts(vectors, contexts) {
|
|
|
779
782
|
if (solve())
|
|
780
783
|
return true;
|
|
781
784
|
for (let i = 0; i < color.length; i++)
|
|
782
|
-
color[i] = inner[i];
|
|
785
|
+
color[i] = inner[i] ?? -1;
|
|
783
786
|
}
|
|
784
787
|
return false;
|
|
785
788
|
}
|