@stevenvo780/st-lang 4.10.0 → 4.11.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 (121) hide show
  1. package/dist/proof-systems/distributed-exchange/index.d.ts +101 -0
  2. package/dist/proof-systems/distributed-exchange/index.d.ts.map +1 -0
  3. package/dist/proof-systems/distributed-exchange/index.js +408 -0
  4. package/dist/proof-systems/distributed-exchange/index.js.map +1 -0
  5. package/dist/reasoning/graph-theory/index.d.ts +63 -0
  6. package/dist/reasoning/graph-theory/index.d.ts.map +1 -0
  7. package/dist/reasoning/graph-theory/index.js +1043 -0
  8. package/dist/reasoning/graph-theory/index.js.map +1 -0
  9. package/dist/reasoning/group-presentation/cayley.d.ts +8 -0
  10. package/dist/reasoning/group-presentation/cayley.d.ts.map +1 -0
  11. package/dist/reasoning/group-presentation/cayley.js +38 -0
  12. package/dist/reasoning/group-presentation/cayley.js.map +1 -0
  13. package/dist/reasoning/group-presentation/index.d.ts +8 -0
  14. package/dist/reasoning/group-presentation/index.d.ts.map +1 -0
  15. package/dist/reasoning/group-presentation/index.js +36 -0
  16. package/dist/reasoning/group-presentation/index.js.map +1 -0
  17. package/dist/reasoning/group-presentation/standard-groups.d.ts +6 -0
  18. package/dist/reasoning/group-presentation/standard-groups.d.ts.map +1 -0
  19. package/dist/reasoning/group-presentation/standard-groups.js +93 -0
  20. package/dist/reasoning/group-presentation/standard-groups.js.map +1 -0
  21. package/dist/reasoning/group-presentation/todd-coxeter.d.ts +10 -0
  22. package/dist/reasoning/group-presentation/todd-coxeter.d.ts.map +1 -0
  23. package/dist/reasoning/group-presentation/todd-coxeter.js +362 -0
  24. package/dist/reasoning/group-presentation/todd-coxeter.js.map +1 -0
  25. package/dist/reasoning/group-presentation/types.d.ts +7 -0
  26. package/dist/reasoning/group-presentation/types.d.ts.map +1 -0
  27. package/dist/reasoning/group-presentation/types.js +22 -0
  28. package/dist/reasoning/group-presentation/types.js.map +1 -0
  29. package/dist/reasoning/group-presentation/words.d.ts +10 -0
  30. package/dist/reasoning/group-presentation/words.d.ts.map +1 -0
  31. package/dist/reasoning/group-presentation/words.js +109 -0
  32. package/dist/reasoning/group-presentation/words.js.map +1 -0
  33. package/dist/tests/proof-systems/distributed-exchange/distributed-exchange.test.d.ts +2 -0
  34. package/dist/tests/proof-systems/distributed-exchange/distributed-exchange.test.d.ts.map +1 -0
  35. package/dist/tests/proof-systems/distributed-exchange/distributed-exchange.test.js +328 -0
  36. package/dist/tests/proof-systems/distributed-exchange/distributed-exchange.test.js.map +1 -0
  37. package/dist/tests/reasoning/graph-theory/graph-theory.test.d.ts +2 -0
  38. package/dist/tests/reasoning/graph-theory/graph-theory.test.d.ts.map +1 -0
  39. package/dist/tests/reasoning/graph-theory/graph-theory.test.js +363 -0
  40. package/dist/tests/reasoning/graph-theory/graph-theory.test.js.map +1 -0
  41. package/dist/tests/reasoning/group-presentation/group-presentation.test.d.ts +2 -0
  42. package/dist/tests/reasoning/group-presentation/group-presentation.test.d.ts.map +1 -0
  43. package/dist/tests/reasoning/group-presentation/group-presentation.test.js +229 -0
  44. package/dist/tests/reasoning/group-presentation/group-presentation.test.js.map +1 -0
  45. package/dist/tests/tooling/exporters/coq-v2/coq-v2-exporter.test.d.ts +2 -0
  46. package/dist/tests/tooling/exporters/coq-v2/coq-v2-exporter.test.d.ts.map +1 -0
  47. package/dist/tests/tooling/exporters/coq-v2/coq-v2-exporter.test.js +411 -0
  48. package/dist/tests/tooling/exporters/coq-v2/coq-v2-exporter.test.js.map +1 -0
  49. package/dist/tests/tooling/lemma-library/lemma-library.test.d.ts +2 -0
  50. package/dist/tests/tooling/lemma-library/lemma-library.test.d.ts.map +1 -0
  51. package/dist/tests/tooling/lemma-library/lemma-library.test.js +197 -0
  52. package/dist/tests/tooling/lemma-library/lemma-library.test.js.map +1 -0
  53. package/dist/tests/tooling/provenance/ledger.test.d.ts +2 -0
  54. package/dist/tests/tooling/provenance/ledger.test.d.ts.map +1 -0
  55. package/dist/tests/tooling/provenance/ledger.test.js +545 -0
  56. package/dist/tests/tooling/provenance/ledger.test.js.map +1 -0
  57. package/dist/tooling/exporters/coq-v2/index.d.ts +68 -0
  58. package/dist/tooling/exporters/coq-v2/index.d.ts.map +1 -0
  59. package/dist/tooling/exporters/coq-v2/index.js +692 -0
  60. package/dist/tooling/exporters/coq-v2/index.js.map +1 -0
  61. package/dist/tooling/lemma-library/apply.d.ts +9 -0
  62. package/dist/tooling/lemma-library/apply.d.ts.map +1 -0
  63. package/dist/tooling/lemma-library/apply.js +94 -0
  64. package/dist/tooling/lemma-library/apply.js.map +1 -0
  65. package/dist/tooling/lemma-library/arithmetic.d.ts +3 -0
  66. package/dist/tooling/lemma-library/arithmetic.d.ts.map +1 -0
  67. package/dist/tooling/lemma-library/arithmetic.js +176 -0
  68. package/dist/tooling/lemma-library/arithmetic.js.map +1 -0
  69. package/dist/tooling/lemma-library/firstorder.d.ts +3 -0
  70. package/dist/tooling/lemma-library/firstorder.d.ts.map +1 -0
  71. package/dist/tooling/lemma-library/firstorder.js +136 -0
  72. package/dist/tooling/lemma-library/firstorder.js.map +1 -0
  73. package/dist/tooling/lemma-library/index.d.ts +13 -0
  74. package/dist/tooling/lemma-library/index.d.ts.map +1 -0
  75. package/dist/tooling/lemma-library/index.js +32 -0
  76. package/dist/tooling/lemma-library/index.js.map +1 -0
  77. package/dist/tooling/lemma-library/library.d.ts +34 -0
  78. package/dist/tooling/lemma-library/library.d.ts.map +1 -0
  79. package/dist/tooling/lemma-library/library.js +126 -0
  80. package/dist/tooling/lemma-library/library.js.map +1 -0
  81. package/dist/tooling/lemma-library/modal.d.ts +3 -0
  82. package/dist/tooling/lemma-library/modal.d.ts.map +1 -0
  83. package/dist/tooling/lemma-library/modal.js +138 -0
  84. package/dist/tooling/lemma-library/modal.js.map +1 -0
  85. package/dist/tooling/lemma-library/propositional.d.ts +3 -0
  86. package/dist/tooling/lemma-library/propositional.d.ts.map +1 -0
  87. package/dist/tooling/lemma-library/propositional.js +265 -0
  88. package/dist/tooling/lemma-library/propositional.js.map +1 -0
  89. package/dist/tooling/lemma-library/set-theory.d.ts +3 -0
  90. package/dist/tooling/lemma-library/set-theory.d.ts.map +1 -0
  91. package/dist/tooling/lemma-library/set-theory.js +134 -0
  92. package/dist/tooling/lemma-library/set-theory.js.map +1 -0
  93. package/dist/tooling/lemma-library/standard.d.ts +3 -0
  94. package/dist/tooling/lemma-library/standard.d.ts.map +1 -0
  95. package/dist/tooling/lemma-library/standard.js +27 -0
  96. package/dist/tooling/lemma-library/standard.js.map +1 -0
  97. package/dist/tooling/lemma-library/tfidf.d.ts +5 -0
  98. package/dist/tooling/lemma-library/tfidf.d.ts.map +1 -0
  99. package/dist/tooling/lemma-library/tfidf.js +100 -0
  100. package/dist/tooling/lemma-library/tfidf.js.map +1 -0
  101. package/dist/tooling/lemma-library/tokenize.d.ts +2 -0
  102. package/dist/tooling/lemma-library/tokenize.d.ts.map +1 -0
  103. package/dist/tooling/lemma-library/tokenize.js +74 -0
  104. package/dist/tooling/lemma-library/tokenize.js.map +1 -0
  105. package/dist/tooling/lemma-library/types.d.ts +53 -0
  106. package/dist/tooling/lemma-library/types.d.ts.map +1 -0
  107. package/dist/tooling/lemma-library/types.js +10 -0
  108. package/dist/tooling/lemma-library/types.js.map +1 -0
  109. package/dist/tooling/provenance/index.d.ts +3 -0
  110. package/dist/tooling/provenance/index.d.ts.map +1 -0
  111. package/dist/tooling/provenance/index.js +16 -0
  112. package/dist/tooling/provenance/index.js.map +1 -0
  113. package/dist/tooling/provenance/ledger.d.ts +89 -0
  114. package/dist/tooling/provenance/ledger.d.ts.map +1 -0
  115. package/dist/tooling/provenance/ledger.js +439 -0
  116. package/dist/tooling/provenance/ledger.js.map +1 -0
  117. package/dist/tooling/provenance/types.d.ts +70 -0
  118. package/dist/tooling/provenance/types.d.ts.map +1 -0
  119. package/dist/tooling/provenance/types.js +14 -0
  120. package/dist/tooling/provenance/types.js.map +1 -0
  121. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/tooling/exporters/coq-v2/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import type { LemmaApplicationResult } from './types';
2
+ import type { LemmaLibrary } from './library';
3
+ /**
4
+ * Devuelve los lemas de `library` cuyo esqueleto estructural es
5
+ * subsequence del goal. Si se encuentra el más específico (mayor
6
+ * cantidad de tokens estructurales), añade las sustituciones.
7
+ */
8
+ export declare function tryApplyLemma(goal: string, library: LemmaLibrary): LemmaApplicationResult;
9
+ //# sourceMappingURL=apply.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apply.d.ts","sourceRoot":"","sources":["../../../src/tooling/lemma-library/apply.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAgB,sBAAsB,EAAE,MAAM,SAAS,CAAC;AACpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AA8C9C;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,GAAG,sBAAsB,CA8BzF"}
@@ -0,0 +1,94 @@
1
+ "use strict";
2
+ // ============================================================
3
+ // tryApplyLemma — pattern matching simple goal ↔ lema
4
+ //
5
+ // Heurística: tokeniza el goal y cada lema, busca aquellos cuyo
6
+ // "esqueleto" estructural (símbolos lógicos) sea subsequence del
7
+ // goal, y propone sustituciones de las metavariables (P, Q, R, …,
8
+ // φ, ψ, x, y, z, a, b, c, n, m) al primer no-variable encontrado
9
+ // en posición correspondiente.
10
+ // ============================================================
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.tryApplyLemma = tryApplyLemma;
13
+ const tokenize_1 = require("./tokenize");
14
+ const METAVAR_PATTERN = /^[a-zA-Zφψχ]$/;
15
+ function isMetavar(tok) {
16
+ return METAVAR_PATTERN.test(tok);
17
+ }
18
+ function structuralSkeleton(tokens) {
19
+ return tokens.filter((t) => !isMetavar(t));
20
+ }
21
+ function isSubsequence(needle, haystack) {
22
+ let i = 0;
23
+ for (const h of haystack) {
24
+ if (i < needle.length && h === needle[i])
25
+ i++;
26
+ }
27
+ return i === needle.length;
28
+ }
29
+ function tryUnify(pattern, goal) {
30
+ const subs = new Map();
31
+ let gi = 0;
32
+ for (let pi = 0; pi < pattern.length; pi++) {
33
+ const ptok = pattern[pi];
34
+ if (ptok === undefined)
35
+ return undefined;
36
+ if (isMetavar(ptok)) {
37
+ // captura el siguiente token del goal o un grupo balanceado mínimo
38
+ if (gi >= goal.length)
39
+ return undefined;
40
+ const captured = goal[gi];
41
+ if (captured === undefined)
42
+ return undefined;
43
+ const existing = subs.get(ptok);
44
+ if (existing !== undefined && existing !== captured)
45
+ return undefined;
46
+ subs.set(ptok, captured);
47
+ gi++;
48
+ }
49
+ else {
50
+ // avanza hasta el primer match exacto del símbolo
51
+ while (gi < goal.length && goal[gi] !== ptok)
52
+ gi++;
53
+ if (gi >= goal.length)
54
+ return undefined;
55
+ gi++;
56
+ }
57
+ }
58
+ return subs;
59
+ }
60
+ /**
61
+ * Devuelve los lemas de `library` cuyo esqueleto estructural es
62
+ * subsequence del goal. Si se encuentra el más específico (mayor
63
+ * cantidad de tokens estructurales), añade las sustituciones.
64
+ */
65
+ function tryApplyLemma(goal, library) {
66
+ const goalTokens = (0, tokenize_1.tokenize)(goal);
67
+ const goalSkeleton = structuralSkeleton(goalTokens);
68
+ if (goalSkeleton.length === 0)
69
+ return { applicable: [] };
70
+ const applicable = [];
71
+ for (const lemma of library.all()) {
72
+ const lemmaTokens = (0, tokenize_1.tokenize)(lemma.statement);
73
+ const lemmaSkeleton = structuralSkeleton(lemmaTokens);
74
+ if (lemmaSkeleton.length === 0)
75
+ continue;
76
+ if (isSubsequence(lemmaSkeleton, goalSkeleton)) {
77
+ applicable.push({ lemma, skeleton: lemmaSkeleton });
78
+ }
79
+ }
80
+ applicable.sort((a, b) => b.skeleton.length - a.skeleton.length);
81
+ let substitutions;
82
+ if (applicable.length > 0) {
83
+ const top = applicable[0];
84
+ if (top !== undefined) {
85
+ const lemmaTokens = (0, tokenize_1.tokenize)(top.lemma.statement);
86
+ substitutions = tryUnify(lemmaTokens, goalTokens);
87
+ }
88
+ }
89
+ return {
90
+ applicable: applicable.map((a) => a.lemma),
91
+ substitutions,
92
+ };
93
+ }
94
+ //# sourceMappingURL=apply.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apply.js","sourceRoot":"","sources":["../../../src/tooling/lemma-library/apply.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { CuratedLemma } from './types';
2
+ export declare const ARITHMETIC_LEMMAS: CuratedLemma[];
3
+ //# sourceMappingURL=arithmetic.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"arithmetic.d.ts","sourceRoot":"","sources":["../../../src/tooling/lemma-library/arithmetic.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C,eAAO,MAAM,iBAAiB,EAAE,YAAY,EAuK3C,CAAC"}
@@ -0,0 +1,176 @@
1
+ "use strict";
2
+ // ============================================================
3
+ // Lemas curados — Aritmética de Peano (~20)
4
+ // Conmutatividad, asociatividad, distributividad, inducción.
5
+ // ============================================================
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.ARITHMETIC_LEMMAS = void 0;
8
+ exports.ARITHMETIC_LEMMAS = [
9
+ {
10
+ id: 'arith.add-zero-right',
11
+ name: 'Right additive identity',
12
+ statement: '∀n. n + 0 = n',
13
+ domain: 'arithmetic',
14
+ tags: ['peano', 'identity', 'addition', 'naturals'],
15
+ difficulty: 'trivial',
16
+ isAxiom: true,
17
+ },
18
+ {
19
+ id: 'arith.add-zero-left',
20
+ name: 'Left additive identity',
21
+ statement: '∀n. 0 + n = n',
22
+ domain: 'arithmetic',
23
+ tags: ['peano', 'identity', 'addition', 'naturals', 'induction'],
24
+ difficulty: 'easy',
25
+ },
26
+ {
27
+ id: 'arith.add-succ-right',
28
+ name: 'Successor on the right of +',
29
+ statement: '∀m n. m + S(n) = S(m + n)',
30
+ domain: 'arithmetic',
31
+ tags: ['peano', 'successor', 'addition', 'naturals'],
32
+ difficulty: 'trivial',
33
+ isAxiom: true,
34
+ },
35
+ {
36
+ id: 'arith.add-succ-left',
37
+ name: 'Successor on the left of +',
38
+ statement: '∀m n. S(m) + n = S(m + n)',
39
+ domain: 'arithmetic',
40
+ tags: ['peano', 'successor', 'addition', 'naturals', 'induction'],
41
+ difficulty: 'easy',
42
+ },
43
+ {
44
+ id: 'arith.add-commutative',
45
+ name: 'Commutativity of addition',
46
+ statement: '∀m n. m + n = n + m',
47
+ domain: 'arithmetic',
48
+ tags: ['peano', 'commutativity', 'addition', 'naturals', 'induction'],
49
+ difficulty: 'medium',
50
+ },
51
+ {
52
+ id: 'arith.add-associative',
53
+ name: 'Associativity of addition',
54
+ statement: '∀a b c. (a + b) + c = a + (b + c)',
55
+ domain: 'arithmetic',
56
+ tags: ['peano', 'associativity', 'addition', 'naturals', 'induction'],
57
+ difficulty: 'medium',
58
+ },
59
+ {
60
+ id: 'arith.mul-zero-right',
61
+ name: 'Right multiplicative annihilator',
62
+ statement: '∀n. n · 0 = 0',
63
+ domain: 'arithmetic',
64
+ tags: ['peano', 'zero', 'multiplication', 'naturals'],
65
+ difficulty: 'trivial',
66
+ isAxiom: true,
67
+ },
68
+ {
69
+ id: 'arith.mul-zero-left',
70
+ name: 'Left multiplicative annihilator',
71
+ statement: '∀n. 0 · n = 0',
72
+ domain: 'arithmetic',
73
+ tags: ['peano', 'zero', 'multiplication', 'naturals', 'induction'],
74
+ difficulty: 'easy',
75
+ },
76
+ {
77
+ id: 'arith.mul-one-right',
78
+ name: 'Right multiplicative identity',
79
+ statement: '∀n. n · 1 = n',
80
+ domain: 'arithmetic',
81
+ tags: ['peano', 'identity', 'multiplication', 'naturals'],
82
+ difficulty: 'easy',
83
+ },
84
+ {
85
+ id: 'arith.mul-one-left',
86
+ name: 'Left multiplicative identity',
87
+ statement: '∀n. 1 · n = n',
88
+ domain: 'arithmetic',
89
+ tags: ['peano', 'identity', 'multiplication', 'naturals', 'induction'],
90
+ difficulty: 'easy',
91
+ },
92
+ {
93
+ id: 'arith.mul-commutative',
94
+ name: 'Commutativity of multiplication',
95
+ statement: '∀m n. m · n = n · m',
96
+ domain: 'arithmetic',
97
+ tags: ['peano', 'commutativity', 'multiplication', 'naturals', 'induction'],
98
+ difficulty: 'medium',
99
+ },
100
+ {
101
+ id: 'arith.mul-associative',
102
+ name: 'Associativity of multiplication',
103
+ statement: '∀a b c. (a · b) · c = a · (b · c)',
104
+ domain: 'arithmetic',
105
+ tags: ['peano', 'associativity', 'multiplication', 'naturals', 'induction'],
106
+ difficulty: 'medium',
107
+ },
108
+ {
109
+ id: 'arith.mul-distributes-add',
110
+ name: 'Distributivity of · over +',
111
+ statement: '∀a b c. a · (b + c) = a · b + a · c',
112
+ domain: 'arithmetic',
113
+ tags: ['peano', 'distributivity', 'multiplication', 'addition', 'naturals', 'induction'],
114
+ difficulty: 'medium',
115
+ },
116
+ {
117
+ id: 'arith.add-cancel-left',
118
+ name: 'Left cancellation of addition',
119
+ statement: '∀a b c. a + b = a + c → b = c',
120
+ domain: 'arithmetic',
121
+ tags: ['peano', 'cancellation', 'addition', 'naturals', 'induction'],
122
+ difficulty: 'medium',
123
+ },
124
+ {
125
+ id: 'arith.succ-injective',
126
+ name: 'Successor is injective',
127
+ statement: '∀m n. S(m) = S(n) → m = n',
128
+ domain: 'arithmetic',
129
+ tags: ['peano', 'successor', 'injective', 'naturals'],
130
+ difficulty: 'trivial',
131
+ isAxiom: true,
132
+ },
133
+ {
134
+ id: 'arith.succ-not-zero',
135
+ name: 'Successor never equals zero',
136
+ statement: '∀n. ¬(S(n) = 0)',
137
+ domain: 'arithmetic',
138
+ tags: ['peano', 'successor', 'zero', 'naturals'],
139
+ difficulty: 'trivial',
140
+ isAxiom: true,
141
+ },
142
+ {
143
+ id: 'arith.induction',
144
+ name: 'Mathematical induction',
145
+ statement: '(φ(0) ∧ ∀n. (φ(n) → φ(S(n)))) → ∀n. φ(n)',
146
+ domain: 'arithmetic',
147
+ tags: ['peano', 'induction', 'naturals', 'schema'],
148
+ difficulty: 'hard',
149
+ isAxiom: true,
150
+ },
151
+ {
152
+ id: 'arith.le-reflexive',
153
+ name: 'Reflexivity of ≤',
154
+ statement: '∀n. n ≤ n',
155
+ domain: 'arithmetic',
156
+ tags: ['peano', 'order', 'reflexivity', 'naturals'],
157
+ difficulty: 'trivial',
158
+ },
159
+ {
160
+ id: 'arith.le-transitive',
161
+ name: 'Transitivity of ≤',
162
+ statement: '∀a b c. a ≤ b ∧ b ≤ c → a ≤ c',
163
+ domain: 'arithmetic',
164
+ tags: ['peano', 'order', 'transitivity', 'naturals'],
165
+ difficulty: 'easy',
166
+ },
167
+ {
168
+ id: 'arith.le-antisymmetric',
169
+ name: 'Antisymmetry of ≤',
170
+ statement: '∀a b. a ≤ b ∧ b ≤ a → a = b',
171
+ domain: 'arithmetic',
172
+ tags: ['peano', 'order', 'antisymmetry', 'naturals'],
173
+ difficulty: 'easy',
174
+ },
175
+ ];
176
+ //# sourceMappingURL=arithmetic.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"arithmetic.js","sourceRoot":"","sources":["../../../src/tooling/lemma-library/arithmetic.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { CuratedLemma } from './types';
2
+ export declare const FIRSTORDER_LEMMAS: CuratedLemma[];
3
+ //# sourceMappingURL=firstorder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"firstorder.d.ts","sourceRoot":"","sources":["../../../src/tooling/lemma-library/firstorder.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C,eAAO,MAAM,iBAAiB,EAAE,YAAY,EA+H3C,CAAC"}
@@ -0,0 +1,136 @@
1
+ "use strict";
2
+ // ============================================================
3
+ // Lemas curados — Lógica de primer orden (~15)
4
+ // Cuantificadores: introducción, eliminación, dualidades.
5
+ // ============================================================
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.FIRSTORDER_LEMMAS = void 0;
8
+ exports.FIRSTORDER_LEMMAS = [
9
+ {
10
+ id: 'fol.universal-instantiation',
11
+ name: 'Universal instantiation',
12
+ statement: '∀x. φ(x) → φ(t)',
13
+ domain: 'firstorder',
14
+ tags: ['universal', 'instantiation', 'elimination', 'classical', 'intuitionistic'],
15
+ difficulty: 'easy',
16
+ isAxiom: true,
17
+ },
18
+ {
19
+ id: 'fol.existential-introduction',
20
+ name: 'Existential introduction',
21
+ statement: 'φ(t) → ∃x. φ(x)',
22
+ domain: 'firstorder',
23
+ tags: ['existential', 'introduction', 'classical', 'intuitionistic'],
24
+ difficulty: 'easy',
25
+ isAxiom: true,
26
+ },
27
+ {
28
+ id: 'fol.generalization',
29
+ name: 'Universal generalization',
30
+ statement: '⊢ φ(x) ⇒ ⊢ ∀x. φ(x)',
31
+ domain: 'firstorder',
32
+ tags: ['universal', 'generalization', 'introduction', 'rule'],
33
+ difficulty: 'easy',
34
+ isAxiom: true,
35
+ },
36
+ {
37
+ id: 'fol.forall-and',
38
+ name: 'Universal distributes over conjunction',
39
+ statement: '∀x. (φ(x) ∧ ψ(x)) ↔ (∀x. φ(x)) ∧ (∀x. ψ(x))',
40
+ domain: 'firstorder',
41
+ tags: ['universal', 'conjunction', 'distribution'],
42
+ difficulty: 'medium',
43
+ },
44
+ {
45
+ id: 'fol.exists-or',
46
+ name: 'Existential distributes over disjunction',
47
+ statement: '∃x. (φ(x) ∨ ψ(x)) ↔ (∃x. φ(x)) ∨ (∃x. ψ(x))',
48
+ domain: 'firstorder',
49
+ tags: ['existential', 'disjunction', 'distribution'],
50
+ difficulty: 'medium',
51
+ },
52
+ {
53
+ id: 'fol.duality-forall',
54
+ name: 'Quantifier duality (∀)',
55
+ statement: '∀x. φ(x) ↔ ¬∃x. ¬φ(x)',
56
+ domain: 'firstorder',
57
+ tags: ['duality', 'universal', 'existential', 'negation', 'classical'],
58
+ difficulty: 'medium',
59
+ },
60
+ {
61
+ id: 'fol.duality-exists',
62
+ name: 'Quantifier duality (∃)',
63
+ statement: '∃x. φ(x) ↔ ¬∀x. ¬φ(x)',
64
+ domain: 'firstorder',
65
+ tags: ['duality', 'universal', 'existential', 'negation', 'classical'],
66
+ difficulty: 'medium',
67
+ },
68
+ {
69
+ id: 'fol.not-forall',
70
+ name: 'Negation of universal',
71
+ statement: '¬∀x. φ(x) ↔ ∃x. ¬φ(x)',
72
+ domain: 'firstorder',
73
+ tags: ['negation', 'universal', 'existential', 'classical'],
74
+ difficulty: 'medium',
75
+ },
76
+ {
77
+ id: 'fol.not-exists',
78
+ name: 'Negation of existential',
79
+ statement: '¬∃x. φ(x) ↔ ∀x. ¬φ(x)',
80
+ domain: 'firstorder',
81
+ tags: ['negation', 'universal', 'existential', 'classical', 'intuitionistic'],
82
+ difficulty: 'medium',
83
+ },
84
+ {
85
+ id: 'fol.swap-forall',
86
+ name: 'Universal commutes with itself',
87
+ statement: '∀x ∀y. φ(x,y) ↔ ∀y ∀x. φ(x,y)',
88
+ domain: 'firstorder',
89
+ tags: ['commutativity', 'universal'],
90
+ difficulty: 'easy',
91
+ },
92
+ {
93
+ id: 'fol.swap-exists',
94
+ name: 'Existential commutes with itself',
95
+ statement: '∃x ∃y. φ(x,y) ↔ ∃y ∃x. φ(x,y)',
96
+ domain: 'firstorder',
97
+ tags: ['commutativity', 'existential'],
98
+ difficulty: 'easy',
99
+ },
100
+ {
101
+ id: 'fol.exists-forall-implies-forall-exists',
102
+ name: '∃∀ → ∀∃',
103
+ statement: '(∃y ∀x. φ(x,y)) → (∀x ∃y. φ(x,y))',
104
+ domain: 'firstorder',
105
+ tags: ['quantifier-order', 'universal', 'existential'],
106
+ difficulty: 'medium',
107
+ },
108
+ {
109
+ id: 'fol.equality-reflexive',
110
+ name: 'Reflexivity of equality',
111
+ statement: '∀x. x = x',
112
+ domain: 'firstorder',
113
+ tags: ['equality', 'reflexivity'],
114
+ difficulty: 'trivial',
115
+ isAxiom: true,
116
+ },
117
+ {
118
+ id: 'fol.equality-substitution',
119
+ name: 'Substitution of equals',
120
+ statement: '∀x y. x = y → (φ(x) ↔ φ(y))',
121
+ domain: 'firstorder',
122
+ tags: ['equality', 'substitution', 'leibniz'],
123
+ difficulty: 'easy',
124
+ isAxiom: true,
125
+ references: ['Leibniz, indiscernibility'],
126
+ },
127
+ {
128
+ id: 'fol.equality-symmetric',
129
+ name: 'Symmetry of equality',
130
+ statement: '∀x y. x = y → y = x',
131
+ domain: 'firstorder',
132
+ tags: ['equality', 'symmetry'],
133
+ difficulty: 'trivial',
134
+ },
135
+ ];
136
+ //# sourceMappingURL=firstorder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"firstorder.js","sourceRoot":"","sources":["../../../src/tooling/lemma-library/firstorder.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ export type { CuratedLemma, LemmaDomain, LemmaDifficulty, LemmaApplicationResult, SemanticSearchHit, TfIdfDocument, TfIdfIndex, } from './types';
2
+ export { LemmaLibrary } from './library';
3
+ export type { SearchOptions } from './library';
4
+ export { buildIndex, semanticSearch } from './tfidf';
5
+ export { tryApplyLemma } from './apply';
6
+ export { tokenize } from './tokenize';
7
+ export { PROPOSITIONAL_LEMMAS } from './propositional';
8
+ export { ARITHMETIC_LEMMAS } from './arithmetic';
9
+ export { SET_THEORY_LEMMAS } from './set-theory';
10
+ export { MODAL_LEMMAS } from './modal';
11
+ export { FIRSTORDER_LEMMAS } from './firstorder';
12
+ export { standardLibrary } from './standard';
13
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tooling/lemma-library/index.ts"],"names":[],"mappings":"AAQA,YAAY,EACV,YAAY,EACZ,WAAW,EACX,eAAe,EACf,sBAAsB,EACtB,iBAAiB,EACjB,aAAa,EACb,UAAU,GACX,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,YAAY,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE/C,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEjD,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ // ============================================================
3
+ // ST Lemma Library — entrypoint público.
4
+ //
5
+ // Biblioteca curada de lemas pre-probados (proposicional, primer
6
+ // orden, modal, aritmética, conjuntos) + búsqueda TF-IDF + intento
7
+ // de aplicación automática contra un goal.
8
+ // ============================================================
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.standardLibrary = exports.FIRSTORDER_LEMMAS = exports.MODAL_LEMMAS = exports.SET_THEORY_LEMMAS = exports.ARITHMETIC_LEMMAS = exports.PROPOSITIONAL_LEMMAS = exports.tokenize = exports.tryApplyLemma = exports.semanticSearch = exports.buildIndex = exports.LemmaLibrary = void 0;
11
+ var library_1 = require("./library");
12
+ Object.defineProperty(exports, "LemmaLibrary", { enumerable: true, get: function () { return library_1.LemmaLibrary; } });
13
+ var tfidf_1 = require("./tfidf");
14
+ Object.defineProperty(exports, "buildIndex", { enumerable: true, get: function () { return tfidf_1.buildIndex; } });
15
+ Object.defineProperty(exports, "semanticSearch", { enumerable: true, get: function () { return tfidf_1.semanticSearch; } });
16
+ var apply_1 = require("./apply");
17
+ Object.defineProperty(exports, "tryApplyLemma", { enumerable: true, get: function () { return apply_1.tryApplyLemma; } });
18
+ var tokenize_1 = require("./tokenize");
19
+ Object.defineProperty(exports, "tokenize", { enumerable: true, get: function () { return tokenize_1.tokenize; } });
20
+ var propositional_1 = require("./propositional");
21
+ Object.defineProperty(exports, "PROPOSITIONAL_LEMMAS", { enumerable: true, get: function () { return propositional_1.PROPOSITIONAL_LEMMAS; } });
22
+ var arithmetic_1 = require("./arithmetic");
23
+ Object.defineProperty(exports, "ARITHMETIC_LEMMAS", { enumerable: true, get: function () { return arithmetic_1.ARITHMETIC_LEMMAS; } });
24
+ var set_theory_1 = require("./set-theory");
25
+ Object.defineProperty(exports, "SET_THEORY_LEMMAS", { enumerable: true, get: function () { return set_theory_1.SET_THEORY_LEMMAS; } });
26
+ var modal_1 = require("./modal");
27
+ Object.defineProperty(exports, "MODAL_LEMMAS", { enumerable: true, get: function () { return modal_1.MODAL_LEMMAS; } });
28
+ var firstorder_1 = require("./firstorder");
29
+ Object.defineProperty(exports, "FIRSTORDER_LEMMAS", { enumerable: true, get: function () { return firstorder_1.FIRSTORDER_LEMMAS; } });
30
+ var standard_1 = require("./standard");
31
+ Object.defineProperty(exports, "standardLibrary", { enumerable: true, get: function () { return standard_1.standardLibrary; } });
32
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tooling/lemma-library/index.ts"],"names":[],"mappings":";AAAA,+DAA+D;AAC/D,yCAAyC;AACzC,EAAE;AACF,iEAAiE;AACjE,mEAAmE;AACnE,2CAA2C;AAC3C,+DAA+D;;;AAY/D,qCAAyC;AAAhC,uGAAA,YAAY,OAAA;AAGrB,iCAAqD;AAA5C,mGAAA,UAAU,OAAA;AAAE,uGAAA,cAAc,OAAA;AACnC,iCAAwC;AAA/B,sGAAA,aAAa,OAAA;AACtB,uCAAsC;AAA7B,oGAAA,QAAQ,OAAA;AAEjB,iDAAuD;AAA9C,qHAAA,oBAAoB,OAAA;AAC7B,2CAAiD;AAAxC,+GAAA,iBAAiB,OAAA;AAC1B,2CAAiD;AAAxC,+GAAA,iBAAiB,OAAA;AAC1B,iCAAuC;AAA9B,qGAAA,YAAY,OAAA;AACrB,2CAAiD;AAAxC,+GAAA,iBAAiB,OAAA;AAE1B,uCAA6C;AAApC,2GAAA,eAAe,OAAA"}
@@ -0,0 +1,34 @@
1
+ import type { CuratedLemma, LemmaDifficulty } from './types';
2
+ export interface SearchOptions {
3
+ domain?: string;
4
+ limit?: number;
5
+ }
6
+ export declare class LemmaLibrary {
7
+ private byId;
8
+ private byDomainIndex;
9
+ private byTagIndex;
10
+ private byDifficultyIndex;
11
+ add(lemma: CuratedLemma): void;
12
+ get(id: string): CuratedLemma | undefined;
13
+ byDomain(domain: string): CuratedLemma[];
14
+ byTag(tag: string): CuratedLemma[];
15
+ byDifficulty(d: LemmaDifficulty): CuratedLemma[];
16
+ all(): CuratedLemma[];
17
+ size(): number;
18
+ /**
19
+ * Búsqueda por palabra clave: tokeniza la query, asigna score a
20
+ * cada lema según matches en name (peso 3), tags (peso 2) y
21
+ * statement (peso 1). Si `opts.domain` está, filtra antes.
22
+ * Devuelve los top `opts.limit` (default 20).
23
+ */
24
+ search(query: string, opts?: SearchOptions): CuratedLemma[];
25
+ /**
26
+ * Recupera lemas similares al dado, ranqueados por overlap de
27
+ * tokens en statement (peso 2) + tags (peso 1). Excluye al propio
28
+ * lema. Default k = 5.
29
+ */
30
+ similar(lemma: CuratedLemma, k?: number): CuratedLemma[];
31
+ private indexSet;
32
+ private resolve;
33
+ }
34
+ //# sourceMappingURL=library.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"library.d.ts","sourceRoot":"","sources":["../../../src/tooling/lemma-library/library.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAG7D,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,IAAI,CAAwC;IACpD,OAAO,CAAC,aAAa,CAAuC;IAC5D,OAAO,CAAC,UAAU,CAAuC;IACzD,OAAO,CAAC,iBAAiB,CAAgD;IAEzE,GAAG,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;IAY9B,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IAIzC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,EAAE;IAIxC,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,EAAE;IAIlC,YAAY,CAAC,CAAC,EAAE,eAAe,GAAG,YAAY,EAAE;IAIhD,GAAG,IAAI,YAAY,EAAE;IAIrB,IAAI,IAAI,MAAM;IAId;;;;;OAKG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,GAAE,aAAkB,GAAG,YAAY,EAAE;IAsB/D;;;;OAIG;IACH,OAAO,CAAC,KAAK,EAAE,YAAY,EAAE,CAAC,SAAI,GAAG,YAAY,EAAE;IAoBnD,OAAO,CAAC,QAAQ;IAShB,OAAO,CAAC,OAAO;CAShB"}