@stevenvo780/autologic 1.0.0 → 2.0.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/dist/atoms/coreference.d.ts +7 -2
- package/dist/atoms/coreference.d.ts.map +1 -1
- package/dist/atoms/coreference.js +93 -2
- package/dist/atoms/coreference.js.map +1 -1
- package/dist/atoms/index.d.ts.map +1 -1
- package/dist/atoms/index.js +16 -0
- package/dist/atoms/index.js.map +1 -1
- package/dist/discourse/markers-es.d.ts.map +1 -1
- package/dist/discourse/markers-es.js +3 -1
- package/dist/discourse/markers-es.js.map +1 -1
- package/dist/discourse/pattern-detector.d.ts.map +1 -1
- package/dist/discourse/pattern-detector.js +9 -3
- package/dist/discourse/pattern-detector.js.map +1 -1
- package/dist/discourse/role-classifier.d.ts.map +1 -1
- package/dist/discourse/role-classifier.js +50 -14
- package/dist/discourse/role-classifier.js.map +1 -1
- package/dist/formula/argument-builder.d.ts +18 -0
- package/dist/formula/argument-builder.d.ts.map +1 -0
- package/dist/formula/argument-builder.js +289 -0
- package/dist/formula/argument-builder.js.map +1 -0
- package/dist/formula/index.d.ts +7 -1
- package/dist/formula/index.d.ts.map +1 -1
- package/dist/formula/index.js +25 -7
- package/dist/formula/index.js.map +1 -1
- package/dist/formula/propositional.d.ts +2 -0
- package/dist/formula/propositional.d.ts.map +1 -1
- package/dist/formula/propositional.js +127 -64
- package/dist/formula/propositional.js.map +1 -1
- package/dist/generator/st-emitter.d.ts +1 -0
- package/dist/generator/st-emitter.d.ts.map +1 -1
- package/dist/generator/st-emitter.js +4 -12
- package/dist/generator/st-emitter.js.map +1 -1
- package/dist/segmenter/clause-splitter.d.ts.map +1 -1
- package/dist/segmenter/clause-splitter.js +56 -6
- package/dist/segmenter/clause-splitter.js.map +1 -1
- package/package.json +4 -1
|
@@ -4,56 +4,68 @@ exports.buildPropositional = buildPropositional;
|
|
|
4
4
|
const connectors_1 = require("./connectors");
|
|
5
5
|
/**
|
|
6
6
|
* Construye fórmulas proposicionales para un conjunto de oraciones.
|
|
7
|
+
* Cada oración se procesa según su tipo detectado.
|
|
7
8
|
*/
|
|
8
9
|
function buildPropositional(sentences, atomEntries, detectedPatterns) {
|
|
9
10
|
const formulas = [];
|
|
10
11
|
let labelCounter = 1;
|
|
12
|
+
// Construir mapa global de cláusula-texto → atomId
|
|
13
|
+
const globalClauseAtomMap = buildGlobalAtomMap(sentences, atomEntries);
|
|
11
14
|
for (let sIdx = 0; sIdx < sentences.length; sIdx++) {
|
|
12
15
|
const sentence = sentences[sIdx];
|
|
13
|
-
const
|
|
14
|
-
// Buscar átomos que pertenecen a cláusulas de esta oración
|
|
15
|
-
const clauseIdxs = sentence.clauses.map((_, i) => i);
|
|
16
|
-
// Heurística: mapear por índice global de cláusula
|
|
17
|
-
return true; // procesamos todos y filtramos por contexto
|
|
18
|
-
});
|
|
19
|
-
const builtFormulas = buildSentenceFormulas(sentence, atomEntries, sIdx, labelCounter, detectedPatterns);
|
|
16
|
+
const builtFormulas = buildSentenceFormulas(sentence, atomEntries, globalClauseAtomMap, sIdx, labelCounter, detectedPatterns);
|
|
20
17
|
formulas.push(...builtFormulas);
|
|
21
18
|
labelCounter += builtFormulas.length;
|
|
22
19
|
}
|
|
23
20
|
return formulas;
|
|
24
21
|
}
|
|
22
|
+
/**
|
|
23
|
+
* Construye un mapa global de texto-cláusula → atomId.
|
|
24
|
+
*/
|
|
25
|
+
function buildGlobalAtomMap(sentences, atomEntries) {
|
|
26
|
+
const map = new Map();
|
|
27
|
+
// Recopilar todas las cláusulas con su índice global
|
|
28
|
+
let globalIdx = 0;
|
|
29
|
+
for (const sentence of sentences) {
|
|
30
|
+
for (const clause of sentence.clauses) {
|
|
31
|
+
// Buscar átomo por texto exacto
|
|
32
|
+
const exactMatch = atomEntries.find(a => a.text === clause.text);
|
|
33
|
+
if (exactMatch) {
|
|
34
|
+
map.set(clause.text, exactMatch.id);
|
|
35
|
+
}
|
|
36
|
+
else {
|
|
37
|
+
// Buscar por inclusión
|
|
38
|
+
const partialMatch = atomEntries.find(a => a.text.includes(clause.text) || clause.text.includes(a.text));
|
|
39
|
+
if (partialMatch) {
|
|
40
|
+
map.set(clause.text, partialMatch.id);
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
// Buscar por índice de cláusula fuente
|
|
44
|
+
const bySource = atomEntries.find(a => a.sourceClause === globalIdx);
|
|
45
|
+
if (bySource) {
|
|
46
|
+
map.set(clause.text, bySource.id);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
globalIdx++;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
return map;
|
|
54
|
+
}
|
|
25
55
|
/**
|
|
26
56
|
* Construye fórmulas para una oración individual.
|
|
27
57
|
*/
|
|
28
|
-
function buildSentenceFormulas(sentence, allAtoms, sentenceIdx, labelStart, patterns) {
|
|
58
|
+
function buildSentenceFormulas(sentence, allAtoms, globalMap, sentenceIdx, labelStart, patterns) {
|
|
29
59
|
const clauses = sentence.clauses;
|
|
30
60
|
if (clauses.length === 0)
|
|
31
61
|
return [];
|
|
32
|
-
// Obtener átomos para esta oración (por texto de cláusula)
|
|
33
|
-
const clauseAtomMap = new Map();
|
|
34
|
-
for (const atom of allAtoms) {
|
|
35
|
-
// Mapear texto de cláusula → atom ID
|
|
36
|
-
const matchClause = clauses.find(c => c.text === atom.text || c.text.includes(atom.text) || atom.text.includes(c.text));
|
|
37
|
-
if (matchClause) {
|
|
38
|
-
clauseAtomMap.set(matchClause.text, atom.id);
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
// Fallback: asignar átomos por orden si no hay match textual
|
|
42
|
-
if (clauseAtomMap.size === 0) {
|
|
43
|
-
clauses.forEach((c, i) => {
|
|
44
|
-
const atom = allAtoms[i];
|
|
45
|
-
if (atom)
|
|
46
|
-
clauseAtomMap.set(c.text, atom.id);
|
|
47
|
-
});
|
|
48
|
-
}
|
|
49
62
|
const formulas = [];
|
|
50
63
|
let label = labelStart;
|
|
51
64
|
switch (sentence.type) {
|
|
52
65
|
case 'conditional': {
|
|
53
66
|
let conditionClauses = clauses.filter(c => c.role === 'condition');
|
|
54
67
|
let consequentClauses = clauses.filter(c => c.role === 'consequent' || c.role === 'conclusion' || c.role === 'assertion');
|
|
55
|
-
// Fallback: si no hay cláusula explícita de condición
|
|
56
|
-
// usar la primera cláusula que no sea consequent como condición
|
|
68
|
+
// Fallback: si no hay cláusula explícita de condición, inferir por posición
|
|
57
69
|
if (conditionClauses.length === 0 && clauses.length >= 2) {
|
|
58
70
|
const nonConsequent = clauses.filter(c => c.role !== 'consequent' && c.role !== 'conclusion');
|
|
59
71
|
if (nonConsequent.length > 0) {
|
|
@@ -62,8 +74,8 @@ function buildSentenceFormulas(sentence, allAtoms, sentenceIdx, labelStart, patt
|
|
|
62
74
|
}
|
|
63
75
|
}
|
|
64
76
|
if (conditionClauses.length > 0 && consequentClauses.length > 0) {
|
|
65
|
-
const antecedent =
|
|
66
|
-
const consequent =
|
|
77
|
+
const antecedent = resolveAtom(conditionClauses[0].text, globalMap, allAtoms);
|
|
78
|
+
const consequent = resolveAtom(consequentClauses[0].text, globalMap, allAtoms);
|
|
67
79
|
// Aplicar negación si hay modificadores
|
|
68
80
|
const antStr = applyModifiers(antecedent, conditionClauses[0].modifiers.map(m => m.type));
|
|
69
81
|
const consStr = applyModifiers(consequent, consequentClauses[0].modifiers.map(m => m.type));
|
|
@@ -80,8 +92,8 @@ function buildSentenceFormulas(sentence, allAtoms, sentenceIdx, labelStart, patt
|
|
|
80
92
|
}
|
|
81
93
|
case 'biconditional': {
|
|
82
94
|
if (clauses.length >= 2) {
|
|
83
|
-
const left =
|
|
84
|
-
const right =
|
|
95
|
+
const left = resolveAtom(clauses[0].text, globalMap, allAtoms);
|
|
96
|
+
const right = resolveAtom(clauses[1].text, globalMap, allAtoms);
|
|
85
97
|
formulas.push({
|
|
86
98
|
formula: `${left} ${connectors_1.ST_OPERATORS.biconditional} ${right}`,
|
|
87
99
|
stType: 'axiom',
|
|
@@ -94,7 +106,7 @@ function buildSentenceFormulas(sentence, allAtoms, sentenceIdx, labelStart, patt
|
|
|
94
106
|
break;
|
|
95
107
|
}
|
|
96
108
|
case 'conjunction': {
|
|
97
|
-
const atoms = clauses.map(c =>
|
|
109
|
+
const atoms = clauses.map(c => resolveAtom(c.text, globalMap, allAtoms));
|
|
98
110
|
if (atoms.length >= 2) {
|
|
99
111
|
const formula = atoms.join(` ${connectors_1.ST_OPERATORS.conjunction} `);
|
|
100
112
|
formulas.push({
|
|
@@ -106,10 +118,20 @@ function buildSentenceFormulas(sentence, allAtoms, sentenceIdx, labelStart, patt
|
|
|
106
118
|
comment: `Conjunción: "${sentence.original}"`,
|
|
107
119
|
});
|
|
108
120
|
}
|
|
121
|
+
else if (atoms.length === 1) {
|
|
122
|
+
formulas.push({
|
|
123
|
+
formula: atoms[0],
|
|
124
|
+
stType: 'axiom',
|
|
125
|
+
label: `hecho_${label}`,
|
|
126
|
+
sourceText: sentence.original,
|
|
127
|
+
sourceSentence: sentenceIdx,
|
|
128
|
+
comment: `Hecho: "${sentence.original}"`,
|
|
129
|
+
});
|
|
130
|
+
}
|
|
109
131
|
break;
|
|
110
132
|
}
|
|
111
133
|
case 'disjunction': {
|
|
112
|
-
const atoms = clauses.map(c =>
|
|
134
|
+
const atoms = clauses.map(c => resolveAtom(c.text, globalMap, allAtoms));
|
|
113
135
|
if (atoms.length >= 2) {
|
|
114
136
|
const formula = atoms.join(` ${connectors_1.ST_OPERATORS.disjunction} `);
|
|
115
137
|
formulas.push({
|
|
@@ -125,7 +147,7 @@ function buildSentenceFormulas(sentence, allAtoms, sentenceIdx, labelStart, patt
|
|
|
125
147
|
}
|
|
126
148
|
case 'negation': {
|
|
127
149
|
if (clauses.length > 0) {
|
|
128
|
-
const atom =
|
|
150
|
+
const atom = resolveAtom(clauses[0].text, globalMap, allAtoms);
|
|
129
151
|
formulas.push({
|
|
130
152
|
formula: `${connectors_1.ST_OPERATORS.negation}(${atom})`,
|
|
131
153
|
stType: 'axiom',
|
|
@@ -138,31 +160,52 @@ function buildSentenceFormulas(sentence, allAtoms, sentenceIdx, labelStart, patt
|
|
|
138
160
|
break;
|
|
139
161
|
}
|
|
140
162
|
case 'complex': {
|
|
141
|
-
// Oraciones complejas con premisas y conclusiones
|
|
163
|
+
// Oraciones complejas con premisas y conclusiones explícitas
|
|
164
|
+
// "Puesto que X, Y" → genera X -> Y (causal) + axiom X + derive Y
|
|
142
165
|
const premiseClauses = clauses.filter(c => c.role === 'premise');
|
|
143
166
|
const conclusionClauses = clauses.filter(c => c.role === 'conclusion');
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
const
|
|
147
|
-
|
|
167
|
+
if (premiseClauses.length > 0 && conclusionClauses.length > 0) {
|
|
168
|
+
// ── Generar la regla causal: premisa(s) → conclusión ──
|
|
169
|
+
const premiseAtoms = premiseClauses.map(pc => {
|
|
170
|
+
const atom = resolveAtom(pc.text, globalMap, allAtoms);
|
|
171
|
+
return applyModifiers(atom, pc.modifiers.map(m => m.type));
|
|
172
|
+
});
|
|
173
|
+
const conclusionAtom = resolveAtom(conclusionClauses[0].text, globalMap, allAtoms);
|
|
174
|
+
const conclusionStr = applyModifiers(conclusionAtom, conclusionClauses[0].modifiers.map(m => m.type));
|
|
175
|
+
// Antecedente: si hay múltiples premisas, conjunción
|
|
176
|
+
const antecedent = premiseAtoms.length === 1
|
|
177
|
+
? premiseAtoms[0]
|
|
178
|
+
: `(${premiseAtoms.join(` ${connectors_1.ST_OPERATORS.conjunction} `)})`;
|
|
148
179
|
formulas.push({
|
|
149
|
-
formula:
|
|
180
|
+
formula: `${antecedent} ${connectors_1.ST_OPERATORS.implication} ${conclusionStr}`,
|
|
150
181
|
stType: 'axiom',
|
|
151
|
-
label: `
|
|
152
|
-
sourceText:
|
|
182
|
+
label: `regla_${label++}`,
|
|
183
|
+
sourceText: sentence.original,
|
|
153
184
|
sourceSentence: sentenceIdx,
|
|
154
|
-
comment: `
|
|
185
|
+
comment: `Causal: "${sentence.original}"`,
|
|
155
186
|
});
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
187
|
+
// Generar axiomas para cada premisa afirmada
|
|
188
|
+
for (const pClause of premiseClauses) {
|
|
189
|
+
const atom = resolveAtom(pClause.text, globalMap, allAtoms);
|
|
190
|
+
const atomStr = applyModifiers(atom, pClause.modifiers.map(m => m.type));
|
|
191
|
+
formulas.push({
|
|
192
|
+
formula: atomStr,
|
|
193
|
+
stType: 'axiom',
|
|
194
|
+
label: `premisa_${label++}`,
|
|
195
|
+
sourceText: pClause.text,
|
|
196
|
+
sourceSentence: sentenceIdx,
|
|
197
|
+
comment: `Premisa: "${pClause.text}"`,
|
|
198
|
+
});
|
|
199
|
+
}
|
|
200
|
+
// Generar derivación de la conclusión
|
|
201
|
+
const premiseLabels = formulas
|
|
202
|
+
.filter(f => f.comment?.startsWith('Premisa:') || f.comment?.startsWith('Causal:'))
|
|
203
|
+
.map(f => f.label);
|
|
159
204
|
for (const cClause of conclusionClauses) {
|
|
160
|
-
const atom =
|
|
161
|
-
const
|
|
162
|
-
.filter(f => f.stType === 'axiom')
|
|
163
|
-
.map(f => f.label);
|
|
205
|
+
const atom = resolveAtom(cClause.text, globalMap, allAtoms);
|
|
206
|
+
const atomMod = applyModifiers(atom, cClause.modifiers.map(m => m.type));
|
|
164
207
|
formulas.push({
|
|
165
|
-
formula:
|
|
208
|
+
formula: atomMod,
|
|
166
209
|
stType: 'derive',
|
|
167
210
|
label: `conclusion_${label++}`,
|
|
168
211
|
sourceText: cClause.text,
|
|
@@ -171,15 +214,29 @@ function buildSentenceFormulas(sentence, allAtoms, sentenceIdx, labelStart, patt
|
|
|
171
214
|
});
|
|
172
215
|
}
|
|
173
216
|
}
|
|
217
|
+
else {
|
|
218
|
+
// Solo premisas sin conclusión → axiomas simples
|
|
219
|
+
for (const pClause of premiseClauses) {
|
|
220
|
+
const atom = resolveAtom(pClause.text, globalMap, allAtoms);
|
|
221
|
+
const atomStr = applyModifiers(atom, pClause.modifiers.map(m => m.type));
|
|
222
|
+
formulas.push({
|
|
223
|
+
formula: atomStr,
|
|
224
|
+
stType: 'axiom',
|
|
225
|
+
label: `premisa_${label++}`,
|
|
226
|
+
sourceText: pClause.text,
|
|
227
|
+
sourceSentence: sentenceIdx,
|
|
228
|
+
comment: `Premisa: "${pClause.text}"`,
|
|
229
|
+
});
|
|
230
|
+
}
|
|
231
|
+
}
|
|
174
232
|
break;
|
|
175
233
|
}
|
|
176
234
|
default: {
|
|
177
235
|
// Aserción simple o tipo no manejado arriba
|
|
178
236
|
for (const clause of clauses) {
|
|
179
|
-
const atom =
|
|
237
|
+
const atom = resolveAtom(clause.text, globalMap, allAtoms);
|
|
180
238
|
const atomStr = applyModifiers(atom, clause.modifiers.map(m => m.type));
|
|
181
239
|
const isConclusion = clause.role === 'conclusion';
|
|
182
|
-
const isPremise = clause.role === 'premise' || clause.role === 'assertion';
|
|
183
240
|
formulas.push({
|
|
184
241
|
formula: atomStr,
|
|
185
242
|
stType: isConclusion ? 'derive' : 'axiom',
|
|
@@ -198,25 +255,31 @@ function buildSentenceFormulas(sentence, allAtoms, sentenceIdx, labelStart, patt
|
|
|
198
255
|
return formulas;
|
|
199
256
|
}
|
|
200
257
|
/**
|
|
201
|
-
*
|
|
258
|
+
* Resuelve el ID de átomo para un texto de cláusula.
|
|
259
|
+
* Usa el mapa global, luego busca en todos los átomos.
|
|
202
260
|
*/
|
|
203
|
-
function
|
|
204
|
-
// Buscar en el mapa
|
|
205
|
-
const
|
|
206
|
-
if (
|
|
207
|
-
return
|
|
208
|
-
//
|
|
209
|
-
for (const [text, id] of
|
|
261
|
+
function resolveAtom(clauseText, globalMap, allAtoms) {
|
|
262
|
+
// 1. Buscar en el mapa global (ya resuelto)
|
|
263
|
+
const fromMap = globalMap.get(clauseText);
|
|
264
|
+
if (fromMap)
|
|
265
|
+
return fromMap;
|
|
266
|
+
// 2. Match parcial en mapa global
|
|
267
|
+
for (const [text, id] of globalMap) {
|
|
210
268
|
if (clauseText.includes(text) || text.includes(clauseText)) {
|
|
211
269
|
return id;
|
|
212
270
|
}
|
|
213
271
|
}
|
|
214
|
-
// Buscar en todos los átomos
|
|
272
|
+
// 3. Buscar en todos los átomos por texto
|
|
215
273
|
const atomMatch = allAtoms.find(a => a.text === clauseText || a.text.includes(clauseText) || clauseText.includes(a.text));
|
|
216
274
|
if (atomMatch)
|
|
217
275
|
return atomMatch.id;
|
|
218
|
-
// Fallback: generar ID del texto
|
|
219
|
-
return clauseText
|
|
276
|
+
// 4. Fallback: generar ID del texto
|
|
277
|
+
return clauseText
|
|
278
|
+
.normalize('NFD').replace(/[\u0300-\u036f]/g, '')
|
|
279
|
+
.replace(/[^a-zA-Z0-9\s]/g, '')
|
|
280
|
+
.replace(/\s+/g, '_')
|
|
281
|
+
.toUpperCase()
|
|
282
|
+
.slice(0, 30) || 'ATOM';
|
|
220
283
|
}
|
|
221
284
|
/**
|
|
222
285
|
* Aplica modificadores lógicos a una fórmula atómica.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"propositional.js","sourceRoot":"","sources":["../../src/formula/propositional.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"propositional.js","sourceRoot":"","sources":["../../src/formula/propositional.ts"],"names":[],"mappings":";;AAaA,gDAqBC;AA3BD,6CAA4C;AAE5C;;;GAGG;AACH,SAAgB,kBAAkB,CAChC,SAA6B,EAC7B,WAAwB,EACxB,gBAA0B;IAE1B,MAAM,QAAQ,GAAmB,EAAE,CAAC;IACpC,IAAI,YAAY,GAAG,CAAC,CAAC;IAErB,mDAAmD;IACnD,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IAEvE,KAAK,IAAI,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC;QACnD,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;QACjC,MAAM,aAAa,GAAG,qBAAqB,CACzC,QAAQ,EAAE,WAAW,EAAE,mBAAmB,EAAE,IAAI,EAAE,YAAY,EAAE,gBAAgB,CACjF,CAAC;QACF,QAAQ,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,CAAC;QAChC,YAAY,IAAI,aAAa,CAAC,MAAM,CAAC;IACvC,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB,CACzB,SAA6B,EAC7B,WAAwB;IAExB,MAAM,GAAG,GAAG,IAAI,GAAG,EAAkB,CAAC;IAEtC,qDAAqD;IACrD,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,KAAK,MAAM,MAAM,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;YACtC,gCAAgC;YAChC,MAAM,UAAU,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC;YACjE,IAAI,UAAU,EAAE,CAAC;gBACf,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE,CAAC,CAAC;YACtC,CAAC;iBAAM,CAAC;gBACN,uBAAuB;gBACvB,MAAM,YAAY,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CACxC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAC7D,CAAC;gBACF,IAAI,YAAY,EAAE,CAAC;oBACjB,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,YAAY,CAAC,EAAE,CAAC,CAAC;gBACxC,CAAC;qBAAM,CAAC;oBACN,uCAAuC;oBACvC,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC;oBACrE,IAAI,QAAQ,EAAE,CAAC;wBACb,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC;oBACpC,CAAC;gBACH,CAAC;YACH,CAAC;YACD,SAAS,EAAE,CAAC;QACd,CAAC;IACH,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;GAEG;AACH,SAAS,qBAAqB,CAC5B,QAA0B,EAC1B,QAAqB,EACrB,SAA8B,EAC9B,WAAmB,EACnB,UAAkB,EAClB,QAAkB;IAElB,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;IACjC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAEpC,MAAM,QAAQ,GAAmB,EAAE,CAAC;IACpC,IAAI,KAAK,GAAG,UAAU,CAAC;IAEvB,QAAQ,QAAQ,CAAC,IAAI,EAAE,CAAC;QACtB,KAAK,aAAa,CAAC,CAAC,CAAC;YACnB,IAAI,gBAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC;YACnE,IAAI,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CACzC,CAAC,CAAC,IAAI,KAAK,YAAY,IAAI,CAAC,CAAC,IAAI,KAAK,YAAY,IAAI,CAAC,CAAC,IAAI,KAAK,WAAW,CAC7E,CAAC;YAEF,4EAA4E;YAC5E,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;gBACzD,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CACvC,CAAC,CAAC,IAAI,KAAK,YAAY,IAAI,CAAC,CAAC,IAAI,KAAK,YAAY,CACnD,CAAC;gBACF,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC7B,gBAAgB,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;oBACtC,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;gBAClE,CAAC;YACH,CAAC;YAED,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChE,MAAM,UAAU,GAAG,WAAW,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;gBAC9E,MAAM,UAAU,GAAG,WAAW,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;gBAE/E,wCAAwC;gBACxC,MAAM,MAAM,GAAG,cAAc,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC1F,MAAM,OAAO,GAAG,cAAc,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;gBAE5F,QAAQ,CAAC,IAAI,CAAC;oBACZ,OAAO,EAAE,GAAG,MAAM,IAAI,yBAAY,CAAC,WAAW,IAAI,OAAO,EAAE;oBAC3D,MAAM,EAAE,OAAO;oBACf,KAAK,EAAE,SAAS,KAAK,EAAE;oBACvB,UAAU,EAAE,QAAQ,CAAC,QAAQ;oBAC7B,cAAc,EAAE,WAAW;oBAC3B,OAAO,EAAE,iBAAiB,QAAQ,CAAC,QAAQ,GAAG;iBAC/C,CAAC,CAAC;YACL,CAAC;YACD,MAAM;QACR,CAAC;QAED,KAAK,eAAe,CAAC,CAAC,CAAC;YACrB,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;gBACxB,MAAM,IAAI,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;gBAC/D,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;gBAChE,QAAQ,CAAC,IAAI,CAAC;oBACZ,OAAO,EAAE,GAAG,IAAI,IAAI,yBAAY,CAAC,aAAa,IAAI,KAAK,EAAE;oBACzD,MAAM,EAAE,OAAO;oBACf,KAAK,EAAE,UAAU,KAAK,EAAE;oBACxB,UAAU,EAAE,QAAQ,CAAC,QAAQ;oBAC7B,cAAc,EAAE,WAAW;oBAC3B,OAAO,EAAE,mBAAmB,QAAQ,CAAC,QAAQ,GAAG;iBACjD,CAAC,CAAC;YACL,CAAC;YACD,MAAM;QACR,CAAC;QAED,KAAK,aAAa,CAAC,CAAC,CAAC;YACnB,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC;YACzE,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;gBACtB,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,yBAAY,CAAC,WAAW,GAAG,CAAC,CAAC;gBAC5D,QAAQ,CAAC,IAAI,CAAC;oBACZ,OAAO;oBACP,MAAM,EAAE,OAAO;oBACf,KAAK,EAAE,QAAQ,KAAK,EAAE;oBACtB,UAAU,EAAE,QAAQ,CAAC,QAAQ;oBAC7B,cAAc,EAAE,WAAW;oBAC3B,OAAO,EAAE,gBAAgB,QAAQ,CAAC,QAAQ,GAAG;iBAC9C,CAAC,CAAC;YACL,CAAC;iBAAM,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC9B,QAAQ,CAAC,IAAI,CAAC;oBACZ,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;oBACjB,MAAM,EAAE,OAAO;oBACf,KAAK,EAAE,SAAS,KAAK,EAAE;oBACvB,UAAU,EAAE,QAAQ,CAAC,QAAQ;oBAC7B,cAAc,EAAE,WAAW;oBAC3B,OAAO,EAAE,WAAW,QAAQ,CAAC,QAAQ,GAAG;iBACzC,CAAC,CAAC;YACL,CAAC;YACD,MAAM;QACR,CAAC;QAED,KAAK,aAAa,CAAC,CAAC,CAAC;YACnB,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC;YACzE,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;gBACtB,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,yBAAY,CAAC,WAAW,GAAG,CAAC,CAAC;gBAC5D,QAAQ,CAAC,IAAI,CAAC;oBACZ,OAAO;oBACP,MAAM,EAAE,OAAO;oBACf,KAAK,EAAE,QAAQ,KAAK,EAAE;oBACtB,UAAU,EAAE,QAAQ,CAAC,QAAQ;oBAC7B,cAAc,EAAE,WAAW;oBAC3B,OAAO,EAAE,gBAAgB,QAAQ,CAAC,QAAQ,GAAG;iBAC9C,CAAC,CAAC;YACL,CAAC;YACD,MAAM;QACR,CAAC;QAED,KAAK,UAAU,CAAC,CAAC,CAAC;YAChB,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvB,MAAM,IAAI,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;gBAC/D,QAAQ,CAAC,IAAI,CAAC;oBACZ,OAAO,EAAE,GAAG,yBAAY,CAAC,QAAQ,IAAI,IAAI,GAAG;oBAC5C,MAAM,EAAE,OAAO;oBACf,KAAK,EAAE,OAAO,KAAK,EAAE;oBACrB,UAAU,EAAE,QAAQ,CAAC,QAAQ;oBAC7B,cAAc,EAAE,WAAW;oBAC3B,OAAO,EAAE,cAAc,QAAQ,CAAC,QAAQ,GAAG;iBAC5C,CAAC,CAAC;YACL,CAAC;YACD,MAAM;QACR,CAAC;QAED,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,6DAA6D;YAC7D,kEAAkE;YAClE,MAAM,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;YACjE,MAAM,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC,CAAC;YAEvE,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9D,yDAAyD;gBACzD,MAAM,YAAY,GAAG,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;oBAC3C,MAAM,IAAI,GAAG,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;oBACvD,OAAO,cAAc,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC7D,CAAC,CAAC,CAAC;gBACH,MAAM,cAAc,GAAG,WAAW,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;gBACnF,MAAM,aAAa,GAAG,cAAc,CAAC,cAAc,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;gBAEtG,qDAAqD;gBACrD,MAAM,UAAU,GAAG,YAAY,CAAC,MAAM,KAAK,CAAC;oBAC1C,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;oBACjB,CAAC,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,yBAAY,CAAC,WAAW,GAAG,CAAC,GAAG,CAAC;gBAE9D,QAAQ,CAAC,IAAI,CAAC;oBACZ,OAAO,EAAE,GAAG,UAAU,IAAI,yBAAY,CAAC,WAAW,IAAI,aAAa,EAAE;oBACrE,MAAM,EAAE,OAAO;oBACf,KAAK,EAAE,SAAS,KAAK,EAAE,EAAE;oBACzB,UAAU,EAAE,QAAQ,CAAC,QAAQ;oBAC7B,cAAc,EAAE,WAAW;oBAC3B,OAAO,EAAE,YAAY,QAAQ,CAAC,QAAQ,GAAG;iBAC1C,CAAC,CAAC;gBAEH,6CAA6C;gBAC7C,KAAK,MAAM,OAAO,IAAI,cAAc,EAAE,CAAC;oBACrC,MAAM,IAAI,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;oBAC5D,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;oBACzE,QAAQ,CAAC,IAAI,CAAC;wBACZ,OAAO,EAAE,OAAO;wBAChB,MAAM,EAAE,OAAO;wBACf,KAAK,EAAE,WAAW,KAAK,EAAE,EAAE;wBAC3B,UAAU,EAAE,OAAO,CAAC,IAAI;wBACxB,cAAc,EAAE,WAAW;wBAC3B,OAAO,EAAE,aAAa,OAAO,CAAC,IAAI,GAAG;qBACtC,CAAC,CAAC;gBACL,CAAC;gBAED,sCAAsC;gBACtC,MAAM,aAAa,GAAG,QAAQ;qBAC3B,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC;qBAClF,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;gBACrB,KAAK,MAAM,OAAO,IAAI,iBAAiB,EAAE,CAAC;oBACxC,MAAM,IAAI,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;oBAC5D,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;oBACzE,QAAQ,CAAC,IAAI,CAAC;wBACZ,OAAO,EAAE,OAAO;wBAChB,MAAM,EAAE,QAAQ;wBAChB,KAAK,EAAE,cAAc,KAAK,EAAE,EAAE;wBAC9B,UAAU,EAAE,OAAO,CAAC,IAAI;wBACxB,cAAc,EAAE,WAAW;wBAC3B,OAAO,EAAE,gBAAgB,OAAO,CAAC,IAAI,GAAG;qBACzC,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,iDAAiD;gBACjD,KAAK,MAAM,OAAO,IAAI,cAAc,EAAE,CAAC;oBACrC,MAAM,IAAI,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;oBAC5D,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;oBACzE,QAAQ,CAAC,IAAI,CAAC;wBACZ,OAAO,EAAE,OAAO;wBAChB,MAAM,EAAE,OAAO;wBACf,KAAK,EAAE,WAAW,KAAK,EAAE,EAAE;wBAC3B,UAAU,EAAE,OAAO,CAAC,IAAI;wBACxB,cAAc,EAAE,WAAW;wBAC3B,OAAO,EAAE,aAAa,OAAO,CAAC,IAAI,GAAG;qBACtC,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YACD,MAAM;QACR,CAAC;QAED,OAAO,CAAC,CAAC,CAAC;YACR,4CAA4C;YAC5C,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;gBAC7B,MAAM,IAAI,GAAG,WAAW,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;gBAC3D,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;gBAExE,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,KAAK,YAAY,CAAC;gBAElD,QAAQ,CAAC,IAAI,CAAC;oBACZ,OAAO,EAAE,OAAO;oBAChB,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO;oBACzC,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,cAAc,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,EAAE;oBAC9D,UAAU,EAAE,MAAM,CAAC,IAAI;oBACvB,cAAc,EAAE,WAAW;oBAC3B,OAAO,EAAE,YAAY;wBACnB,CAAC,CAAC,gBAAgB,MAAM,CAAC,IAAI,GAAG;wBAChC,CAAC,CAAC,WAAW,MAAM,CAAC,IAAI,GAAG;iBAC9B,CAAC,CAAC;gBACH,KAAK,EAAE,CAAC;YACV,CAAC;YACD,MAAM;QACR,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;GAGG;AACH,SAAS,WAAW,CAClB,UAAkB,EAClB,SAA8B,EAC9B,QAAqB;IAErB,4CAA4C;IAC5C,MAAM,OAAO,GAAG,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAC1C,IAAI,OAAO;QAAE,OAAO,OAAO,CAAC;IAE5B,kCAAkC;IAClC,KAAK,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,SAAS,EAAE,CAAC;QACnC,IAAI,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YAC3D,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAED,0CAA0C;IAC1C,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAClC,CAAC,CAAC,IAAI,KAAK,UAAU,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CACpF,CAAC;IACF,IAAI,SAAS;QAAE,OAAO,SAAS,CAAC,EAAE,CAAC;IAEnC,oCAAoC;IACpC,OAAO,UAAU;SACd,SAAS,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC;SAChD,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC;SAC9B,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;SACpB,WAAW,EAAE;SACb,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC;AAC5B,CAAC;AAED;;GAEG;AACH,SAAS,cAAc,CAAC,MAAc,EAAE,SAAmB;IACzD,IAAI,OAAO,GAAG,MAAM,CAAC;IACrB,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;QAC5B,QAAQ,GAAG,EAAE,CAAC;YACZ,KAAK,UAAU;gBACb,OAAO,GAAG,KAAK,OAAO,GAAG,CAAC;gBAC1B,MAAM;YACR,KAAK,WAAW;gBACd,OAAO,GAAG,MAAM,OAAO,GAAG,CAAC;gBAC3B,MAAM;YACR,KAAK,aAAa;gBAChB,OAAO,GAAG,MAAM,OAAO,GAAG,CAAC;gBAC3B,MAAM;QACV,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
* ST Emitter — Genera código fuente ST válido y legible
|
|
3
3
|
*
|
|
4
4
|
* Produce código ST con trazabilidad, comentarios y formato estructurado.
|
|
5
|
+
* Sintaxis ST: `axiom name = FORMULA`, `derive FORMULA from {labels}`
|
|
5
6
|
*/
|
|
6
7
|
import type { FormulaEntry, LogicProfile, Diagnostic } from '../types';
|
|
7
8
|
interface EmitOptions {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"st-emitter.d.ts","sourceRoot":"","sources":["../../src/generator/st-emitter.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"st-emitter.d.ts","sourceRoot":"","sources":["../../src/generator/st-emitter.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAa,UAAU,EAAE,MAAM,UAAU,CAAC;AAElF,UAAU,WAAW;IACnB,OAAO,EAAE,YAAY,CAAC;IACtB,QAAQ,EAAE,IAAI,GAAG,IAAI,CAAC;IACtB,eAAe,EAAE,OAAO,CAAC;IACzB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3B,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,gBAAgB,EAAE,MAAM,EAAE,CAAC;CAC5B;AAED;;GAEG;AACH,wBAAgB,MAAM,CAAC,OAAO,EAAE,WAAW,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,UAAU,EAAE,CAAA;CAAE,CAiHxF"}
|
|
@@ -28,16 +28,8 @@ function emitST(options) {
|
|
|
28
28
|
if (includeComments) {
|
|
29
29
|
lines.push('// ── Proposiciones atómicas ────────────');
|
|
30
30
|
}
|
|
31
|
-
// Para first_order no hacemos interpret de predicados
|
|
32
|
-
const isFirstOrder = profile === 'classical.first_order' || profile === 'aristotelian.syllogistic';
|
|
33
31
|
for (const [atomId, text] of atoms) {
|
|
34
|
-
|
|
35
|
-
// Para primer orden: usar interpret con la fórmula completa
|
|
36
|
-
lines.push(`interpret "${text}" as ${atomId}`);
|
|
37
|
-
}
|
|
38
|
-
else {
|
|
39
|
-
lines.push(`interpret "${text}" as ${atomId}`);
|
|
40
|
-
}
|
|
32
|
+
lines.push(`interpret "${text}" as ${atomId}`);
|
|
41
33
|
}
|
|
42
34
|
lines.push('');
|
|
43
35
|
}
|
|
@@ -54,17 +46,17 @@ function emitST(options) {
|
|
|
54
46
|
const axioms = formulas.filter(f => f.stType === 'axiom');
|
|
55
47
|
const derives = formulas.filter(f => f.stType === 'derive');
|
|
56
48
|
const checks = formulas.filter(f => f.stType === 'check');
|
|
57
|
-
// Emitir axiomas
|
|
49
|
+
// Emitir axiomas — sintaxis ST: `axiom name = FORMULA`
|
|
58
50
|
for (const axiom of axioms) {
|
|
59
51
|
if (includeComments && axiom.comment) {
|
|
60
52
|
lines.push(`// ${axiom.comment}`);
|
|
61
53
|
}
|
|
62
|
-
lines.push(`axiom ${axiom.label}
|
|
54
|
+
lines.push(`axiom ${axiom.label} = ${axiom.formula}`);
|
|
63
55
|
}
|
|
64
56
|
if (axioms.length > 0 && derives.length > 0) {
|
|
65
57
|
lines.push('');
|
|
66
58
|
}
|
|
67
|
-
// Emitir derivaciones
|
|
59
|
+
// Emitir derivaciones — sintaxis ST: `derive FORMULA from {labels}`
|
|
68
60
|
for (const derive of derives) {
|
|
69
61
|
if (includeComments && derive.comment) {
|
|
70
62
|
lines.push(`// ${derive.comment}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"st-emitter.js","sourceRoot":"","sources":["../../src/generator/st-emitter.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"st-emitter.js","sourceRoot":"","sources":["../../src/generator/st-emitter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clause-splitter.d.ts","sourceRoot":"","sources":["../../src/segmenter/clause-splitter.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,KAAK,EAAE,MAAM,EAAkB,QAAQ,EAAc,MAAM,UAAU,CAAC;AAW7E;;GAEG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,GAAE,QAAe,GAAG,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"clause-splitter.d.ts","sourceRoot":"","sources":["../../src/segmenter/clause-splitter.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,KAAK,EAAE,MAAM,EAAkB,QAAQ,EAAc,MAAM,UAAU,CAAC;AAW7E;;GAEG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,GAAE,QAAe,GAAG,MAAM,EAAE,CAkElF"}
|
|
@@ -9,13 +9,63 @@ const markers_en_1 = require("../discourse/markers-en");
|
|
|
9
9
|
function splitClauses(sentence, language = 'es') {
|
|
10
10
|
const markers = language === 'es' ? markers_es_1.MARKERS_ES : markers_en_1.MARKERS_EN;
|
|
11
11
|
// 1. Detectar todos los marcadores en la oración
|
|
12
|
-
const
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
12
|
+
const allMatches = findMarkers(sentence, markers);
|
|
13
|
+
// 2. Separar marcadores que cortan la oración vs. que solo anotan
|
|
14
|
+
// Los marcadores de negación cortos (no, nunca, jamás, ningún/o)
|
|
15
|
+
// y cuantificadores cortos NO deben dividir la oración.
|
|
16
|
+
const NON_SPLITTING_ROLES = new Set([
|
|
17
|
+
'negation', 'universal', 'existential',
|
|
18
|
+
'necessity', 'possibility',
|
|
19
|
+
]);
|
|
20
|
+
// Excepción: marcadores largos (>= 4 palabras) SÍ pueden dividir
|
|
21
|
+
const splittingMatches = allMatches.filter(m => {
|
|
22
|
+
if (NON_SPLITTING_ROLES.has(m.marker.role)) {
|
|
23
|
+
// Solo dividir si es un marcador largo (compuesto de múltiples palabras)
|
|
24
|
+
const wordCount = m.marker.text.split(/\s+/).length;
|
|
25
|
+
return wordCount >= 3; // "no es el caso que" SÍ divide, "no" NO divide
|
|
26
|
+
}
|
|
27
|
+
return true;
|
|
28
|
+
});
|
|
29
|
+
if (splittingMatches.length === 0) {
|
|
30
|
+
// Sin marcadores que dividan: intentar dividir por comas significativas
|
|
31
|
+
// Pero anotar los marcadores encontrados en la cláusula resultante
|
|
32
|
+
const commaClauses = splitByCommas(sentence);
|
|
33
|
+
// Anotar marcadores de negación/cuantificación en las cláusulas
|
|
34
|
+
if (allMatches.length > 0) {
|
|
35
|
+
for (const match of allMatches) {
|
|
36
|
+
const clauseWithMarker = commaClauses.find(c => {
|
|
37
|
+
const lower = c.text.toLowerCase();
|
|
38
|
+
return lower.includes(match.marker.text);
|
|
39
|
+
});
|
|
40
|
+
if (clauseWithMarker) {
|
|
41
|
+
clauseWithMarker.markers.push({
|
|
42
|
+
text: match.marker.text,
|
|
43
|
+
role: match.marker.role,
|
|
44
|
+
position: match.startPos,
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
return commaClauses;
|
|
50
|
+
}
|
|
51
|
+
// 3. Dividir la oración usando las posiciones de los marcadores que sí cortan
|
|
52
|
+
const clauses = buildClauses(sentence, splittingMatches);
|
|
53
|
+
// 4. Anotar marcadores no-splitting en las cláusulas resultantes
|
|
54
|
+
const nonSplittingMatches = allMatches.filter(m => !splittingMatches.includes(m));
|
|
55
|
+
for (const match of nonSplittingMatches) {
|
|
56
|
+
const clauseWithMarker = clauses.find(c => {
|
|
57
|
+
const lower = c.text.toLowerCase();
|
|
58
|
+
return lower.includes(match.marker.text);
|
|
59
|
+
});
|
|
60
|
+
if (clauseWithMarker) {
|
|
61
|
+
clauseWithMarker.markers.push({
|
|
62
|
+
text: match.marker.text,
|
|
63
|
+
role: match.marker.role,
|
|
64
|
+
position: match.startPos,
|
|
65
|
+
});
|
|
66
|
+
}
|
|
16
67
|
}
|
|
17
|
-
|
|
18
|
-
return buildClauses(sentence, matches);
|
|
68
|
+
return clauses;
|
|
19
69
|
}
|
|
20
70
|
/**
|
|
21
71
|
* Encuentra todos los marcadores discursivos en un texto.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clause-splitter.js","sourceRoot":"","sources":["../../src/segmenter/clause-splitter.ts"],"names":[],"mappings":";;AAuBA,
|
|
1
|
+
{"version":3,"file":"clause-splitter.js","sourceRoot":"","sources":["../../src/segmenter/clause-splitter.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@stevenvo780/autologic",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "2.0.1",
|
|
4
4
|
"description": "Formalizador automático de texto natural a lógica formal ST, sin IA. NLP basado en reglas.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -47,5 +47,8 @@
|
|
|
47
47
|
"@vitest/coverage-v8": "^2.1.9",
|
|
48
48
|
"typescript": "^5.5.0",
|
|
49
49
|
"vitest": "^2.0.0"
|
|
50
|
+
},
|
|
51
|
+
"dependencies": {
|
|
52
|
+
"@stevenvo780/autologic": "^2.0.0"
|
|
50
53
|
}
|
|
51
54
|
}
|