@polintpro/proposit-core 0.1.2 → 0.1.4
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 +47 -47
- package/dist/cli/commands/analysis.d.ts.map +1 -1
- package/dist/cli/commands/analysis.js +87 -13
- package/dist/cli/commands/analysis.js.map +1 -1
- package/dist/cli/commands/arguments.d.ts.map +1 -1
- package/dist/cli/commands/arguments.js +27 -4
- package/dist/cli/commands/arguments.js.map +1 -1
- package/dist/cli/commands/diff.d.ts +3 -0
- package/dist/cli/commands/diff.d.ts.map +1 -0
- package/dist/cli/commands/diff.js +46 -0
- package/dist/cli/commands/diff.js.map +1 -0
- package/dist/cli/commands/expressions.js.map +1 -1
- package/dist/cli/commands/premises.d.ts.map +1 -1
- package/dist/cli/commands/premises.js +36 -17
- package/dist/cli/commands/premises.js.map +1 -1
- package/dist/cli/commands/variables.d.ts.map +1 -1
- package/dist/cli/commands/variables.js +1 -0
- package/dist/cli/commands/variables.js.map +1 -1
- package/dist/cli/commands/versionShow.js +2 -2
- package/dist/cli/commands/versionShow.js.map +1 -1
- package/dist/cli/engine.d.ts +6 -0
- package/dist/cli/engine.d.ts.map +1 -1
- package/dist/cli/engine.js +41 -8
- package/dist/cli/engine.js.map +1 -1
- package/dist/cli/output/diffRenderer.d.ts +4 -0
- package/dist/cli/output/diffRenderer.d.ts.map +1 -0
- package/dist/cli/output/diffRenderer.js +102 -0
- package/dist/cli/output/diffRenderer.js.map +1 -0
- package/dist/cli/router.d.ts.map +1 -1
- package/dist/cli/router.js +1 -0
- package/dist/cli/router.js.map +1 -1
- package/dist/cli/storage/analysis.d.ts +3 -3
- package/dist/cli/storage/analysis.d.ts.map +1 -1
- package/dist/cli/storage/analysis.js +3 -3
- package/dist/cli/storage/analysis.js.map +1 -1
- package/dist/cli/storage/arguments.d.ts +5 -5
- package/dist/cli/storage/arguments.d.ts.map +1 -1
- package/dist/cli/storage/arguments.js +3 -3
- package/dist/cli/storage/arguments.js.map +1 -1
- package/dist/cli/storage/premises.d.ts +5 -5
- package/dist/cli/storage/premises.d.ts.map +1 -1
- package/dist/cli/storage/premises.js +3 -3
- package/dist/cli/storage/premises.js.map +1 -1
- package/dist/cli/storage/roles.d.ts +3 -3
- package/dist/cli/storage/roles.d.ts.map +1 -1
- package/dist/cli/storage/roles.js +2 -2
- package/dist/cli/storage/roles.js.map +1 -1
- package/dist/cli/storage/variables.d.ts +3 -3
- package/dist/cli/storage/variables.d.ts.map +1 -1
- package/dist/cli/storage/variables.js +2 -2
- package/dist/cli/storage/variables.js.map +1 -1
- package/dist/cli.js +7 -5
- package/dist/cli.js.map +1 -1
- package/dist/index.d.ts +13 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +12 -0
- package/dist/index.js.map +1 -1
- package/dist/lib/core/ArgumentEngine.d.ts +90 -12
- package/dist/lib/core/ArgumentEngine.d.ts.map +1 -1
- package/dist/lib/core/ArgumentEngine.js +104 -20
- package/dist/lib/core/ArgumentEngine.js.map +1 -1
- package/dist/lib/core/ExpressionManager.d.ts +60 -8
- package/dist/lib/core/ExpressionManager.d.ts.map +1 -1
- package/dist/lib/core/ExpressionManager.js +52 -3
- package/dist/lib/core/ExpressionManager.js.map +1 -1
- package/dist/lib/core/PremiseManager.d.ts +43 -23
- package/dist/lib/core/PremiseManager.d.ts.map +1 -1
- package/dist/lib/core/PremiseManager.js +65 -37
- package/dist/lib/core/PremiseManager.js.map +1 -1
- package/dist/lib/core/VariableManager.d.ts +39 -6
- package/dist/lib/core/VariableManager.d.ts.map +1 -1
- package/dist/lib/core/VariableManager.js +26 -0
- package/dist/lib/core/VariableManager.js.map +1 -1
- package/dist/lib/core/diff.d.ts +20 -0
- package/dist/lib/core/diff.d.ts.map +1 -0
- package/dist/lib/core/diff.js +213 -0
- package/dist/lib/core/diff.js.map +1 -0
- package/dist/lib/core/evaluation/shared.d.ts +19 -5
- package/dist/lib/core/evaluation/shared.d.ts.map +1 -1
- package/dist/lib/core/evaluation/shared.js +34 -2
- package/dist/lib/core/evaluation/shared.js.map +1 -1
- package/dist/lib/core/import.d.ts +14 -0
- package/dist/lib/core/import.d.ts.map +1 -0
- package/dist/lib/core/import.js +217 -0
- package/dist/lib/core/import.js.map +1 -0
- package/dist/lib/core/parser/formula-gen.js +850 -0
- package/dist/lib/core/parser/formula.d.ts +23 -0
- package/dist/lib/core/parser/formula.d.ts.map +1 -0
- package/dist/lib/core/parser/formula.js +7 -0
- package/dist/lib/core/parser/formula.js.map +1 -0
- package/dist/lib/index.d.ts +9 -0
- package/dist/lib/index.d.ts.map +1 -1
- package/dist/lib/index.js +8 -0
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/schemata/analysis.d.ts +4 -3
- package/dist/lib/schemata/analysis.d.ts.map +1 -1
- package/dist/lib/schemata/analysis.js +6 -3
- package/dist/lib/schemata/analysis.js.map +1 -1
- package/dist/lib/schemata/argument.d.ts +25 -16
- package/dist/lib/schemata/argument.d.ts.map +1 -1
- package/dist/lib/schemata/argument.js +21 -13
- package/dist/lib/schemata/argument.js.map +1 -1
- package/dist/lib/schemata/import.d.ts +33 -0
- package/dist/lib/schemata/import.d.ts.map +1 -0
- package/dist/lib/schemata/import.js +18 -0
- package/dist/lib/schemata/import.js.map +1 -0
- package/dist/lib/schemata/index.d.ts +1 -0
- package/dist/lib/schemata/index.d.ts.map +1 -1
- package/dist/lib/schemata/index.js +1 -0
- package/dist/lib/schemata/index.js.map +1 -1
- package/dist/lib/schemata/propositional.d.ts +34 -25
- package/dist/lib/schemata/propositional.d.ts.map +1 -1
- package/dist/lib/schemata/propositional.js +41 -33
- package/dist/lib/schemata/propositional.js.map +1 -1
- package/dist/lib/types/diff.d.ts +56 -0
- package/dist/lib/types/diff.d.ts.map +1 -0
- package/dist/lib/types/diff.js +2 -0
- package/dist/lib/types/diff.js.map +1 -0
- package/dist/lib/types/evaluation.d.ts +128 -61
- package/dist/lib/types/evaluation.d.ts.map +1 -1
- package/dist/lib/utils/collections.d.ts +6 -0
- package/dist/lib/utils/collections.d.ts.map +1 -1
- package/dist/lib/utils/collections.js +6 -0
- package/dist/lib/utils/collections.js.map +1 -1
- package/dist/lib/utils.d.ts +7 -0
- package/dist/lib/utils.d.ts.map +1 -1
- package/dist/lib/utils.js +7 -5
- package/dist/lib/utils.js.map +1 -1
- package/package.json +15 -3
|
@@ -1,7 +1,14 @@
|
|
|
1
1
|
import { randomUUID } from "node:crypto";
|
|
2
2
|
import { getOrCreate, sortedUnique } from "../utils/collections.js";
|
|
3
|
-
import { makeErrorIssue, makeValidationResult } from "./evaluation/shared.js";
|
|
3
|
+
import { kleeneAnd, kleeneNot, makeErrorIssue, makeValidationResult, } from "./evaluation/shared.js";
|
|
4
4
|
import { PremiseManager } from "./PremiseManager.js";
|
|
5
|
+
/**
|
|
6
|
+
* Manages a propositional logic argument composed of premises, variable
|
|
7
|
+
* assignments, and logical roles (supporting premises and a conclusion).
|
|
8
|
+
*
|
|
9
|
+
* Provides premise CRUD, role management, evaluation of individual
|
|
10
|
+
* assignments, and exhaustive validity checking via truth-table enumeration.
|
|
11
|
+
*/
|
|
5
12
|
export class ArgumentEngine {
|
|
6
13
|
argument;
|
|
7
14
|
premises;
|
|
@@ -13,23 +20,38 @@ export class ArgumentEngine {
|
|
|
13
20
|
this.supportingPremiseIds = new Set();
|
|
14
21
|
this.conclusionPremiseId = undefined;
|
|
15
22
|
}
|
|
23
|
+
/** Returns a shallow copy of the argument metadata. */
|
|
16
24
|
getArgument() {
|
|
17
25
|
return { ...this.argument };
|
|
18
26
|
}
|
|
19
|
-
|
|
27
|
+
/**
|
|
28
|
+
* Creates a new premise with an auto-generated UUID and registers it
|
|
29
|
+
* with this engine.
|
|
30
|
+
*/
|
|
31
|
+
createPremise(metadata) {
|
|
20
32
|
const id = randomUUID();
|
|
21
|
-
const pm = new PremiseManager(id, this.argument,
|
|
33
|
+
const pm = new PremiseManager(id, this.argument, metadata);
|
|
22
34
|
this.premises.set(id, pm);
|
|
23
35
|
return pm;
|
|
24
36
|
}
|
|
25
|
-
|
|
37
|
+
/**
|
|
38
|
+
* Creates a premise with a caller-supplied ID and registers it with
|
|
39
|
+
* this engine.
|
|
40
|
+
*
|
|
41
|
+
* @throws If a premise with the given ID already exists.
|
|
42
|
+
*/
|
|
43
|
+
createPremiseWithId(id, metadata) {
|
|
26
44
|
if (this.premises.has(id)) {
|
|
27
45
|
throw new Error(`Premise "${id}" already exists.`);
|
|
28
46
|
}
|
|
29
|
-
const pm = new PremiseManager(id, this.argument,
|
|
47
|
+
const pm = new PremiseManager(id, this.argument, metadata);
|
|
30
48
|
this.premises.set(id, pm);
|
|
31
49
|
return pm;
|
|
32
50
|
}
|
|
51
|
+
/**
|
|
52
|
+
* Removes a premise and clears any role assignments that reference it.
|
|
53
|
+
* No-op if the premise does not exist.
|
|
54
|
+
*/
|
|
33
55
|
removePremise(premiseId) {
|
|
34
56
|
this.premises.delete(premiseId);
|
|
35
57
|
this.supportingPremiseIds.delete(premiseId);
|
|
@@ -37,26 +59,37 @@ export class ArgumentEngine {
|
|
|
37
59
|
this.conclusionPremiseId = undefined;
|
|
38
60
|
}
|
|
39
61
|
}
|
|
62
|
+
/** Returns the premise with the given ID, or `undefined` if not found. */
|
|
40
63
|
getPremise(premiseId) {
|
|
41
64
|
return this.premises.get(premiseId);
|
|
42
65
|
}
|
|
66
|
+
/** Returns `true` if a premise with the given ID exists. */
|
|
43
67
|
hasPremise(premiseId) {
|
|
44
68
|
return this.premises.has(premiseId);
|
|
45
69
|
}
|
|
70
|
+
/** Returns all premise IDs in lexicographic order. */
|
|
46
71
|
listPremiseIds() {
|
|
47
72
|
return Array.from(this.premises.keys()).sort((a, b) => a.localeCompare(b));
|
|
48
73
|
}
|
|
74
|
+
/** Returns all premises in lexicographic ID order. */
|
|
49
75
|
listPremises() {
|
|
50
76
|
return this.listPremiseIds()
|
|
51
77
|
.map((id) => this.premises.get(id))
|
|
52
78
|
.filter((pm) => pm !== undefined);
|
|
53
79
|
}
|
|
80
|
+
/** Returns the current role assignments (conclusion and supporting premise IDs). */
|
|
54
81
|
getRoleState() {
|
|
55
82
|
return {
|
|
56
83
|
supportingPremiseIds: sortedUnique(this.supportingPremiseIds),
|
|
57
84
|
conclusionPremiseId: this.conclusionPremiseId,
|
|
58
85
|
};
|
|
59
86
|
}
|
|
87
|
+
/**
|
|
88
|
+
* Designates a premise as the argument's conclusion.
|
|
89
|
+
*
|
|
90
|
+
* @throws If the premise does not exist.
|
|
91
|
+
* @throws If the premise is already a supporting premise.
|
|
92
|
+
*/
|
|
60
93
|
setConclusionPremise(premiseId) {
|
|
61
94
|
if (!this.hasPremise(premiseId)) {
|
|
62
95
|
throw new Error(`Premise "${premiseId}" does not exist.`);
|
|
@@ -66,15 +99,23 @@ export class ArgumentEngine {
|
|
|
66
99
|
}
|
|
67
100
|
this.conclusionPremiseId = premiseId;
|
|
68
101
|
}
|
|
102
|
+
/** Clears the conclusion designation. */
|
|
69
103
|
clearConclusionPremise() {
|
|
70
104
|
this.conclusionPremiseId = undefined;
|
|
71
105
|
}
|
|
106
|
+
/** Returns the conclusion premise, or `undefined` if none is set. */
|
|
72
107
|
getConclusionPremise() {
|
|
73
108
|
if (this.conclusionPremiseId === undefined) {
|
|
74
109
|
return undefined;
|
|
75
110
|
}
|
|
76
111
|
return this.premises.get(this.conclusionPremiseId);
|
|
77
112
|
}
|
|
113
|
+
/**
|
|
114
|
+
* Adds a premise to the supporting role.
|
|
115
|
+
*
|
|
116
|
+
* @throws If the premise does not exist.
|
|
117
|
+
* @throws If the premise is the conclusion.
|
|
118
|
+
*/
|
|
78
119
|
addSupportingPremise(premiseId) {
|
|
79
120
|
if (!this.hasPremise(premiseId)) {
|
|
80
121
|
throw new Error(`Premise "${premiseId}" does not exist.`);
|
|
@@ -84,14 +125,17 @@ export class ArgumentEngine {
|
|
|
84
125
|
}
|
|
85
126
|
this.supportingPremiseIds.add(premiseId);
|
|
86
127
|
}
|
|
128
|
+
/** Removes a premise from the supporting role. No-op if not supporting. */
|
|
87
129
|
removeSupportingPremise(premiseId) {
|
|
88
130
|
this.supportingPremiseIds.delete(premiseId);
|
|
89
131
|
}
|
|
132
|
+
/** Returns all supporting premises in lexicographic ID order. */
|
|
90
133
|
listSupportingPremises() {
|
|
91
134
|
return sortedUnique(this.supportingPremiseIds)
|
|
92
135
|
.map((id) => this.premises.get(id))
|
|
93
136
|
.filter((pm) => pm !== undefined);
|
|
94
137
|
}
|
|
138
|
+
/** Returns a serializable snapshot of the full engine state. */
|
|
95
139
|
toData() {
|
|
96
140
|
return {
|
|
97
141
|
argument: { ...this.argument },
|
|
@@ -99,9 +143,14 @@ export class ArgumentEngine {
|
|
|
99
143
|
roles: this.getRoleState(),
|
|
100
144
|
};
|
|
101
145
|
}
|
|
146
|
+
/** Alias for {@link toData}. */
|
|
102
147
|
exportState() {
|
|
103
148
|
return this.toData();
|
|
104
149
|
}
|
|
150
|
+
/**
|
|
151
|
+
* Collects all variables referenced by expressions across all premises,
|
|
152
|
+
* indexed both by variable ID and by symbol.
|
|
153
|
+
*/
|
|
105
154
|
collectReferencedVariables() {
|
|
106
155
|
const byIdTmp = new Map();
|
|
107
156
|
const bySymbolTmp = new Map();
|
|
@@ -148,6 +197,12 @@ export class ArgumentEngine {
|
|
|
148
197
|
bySymbol,
|
|
149
198
|
};
|
|
150
199
|
}
|
|
200
|
+
/**
|
|
201
|
+
* Validates that this argument is structurally ready for evaluation:
|
|
202
|
+
* a conclusion must be set, all role references must point to existing
|
|
203
|
+
* premises, variable ID/symbol mappings must be consistent, and every
|
|
204
|
+
* premise must be individually evaluable.
|
|
205
|
+
*/
|
|
151
206
|
validateEvaluability() {
|
|
152
207
|
const issues = [];
|
|
153
208
|
if (this.conclusionPremiseId === undefined) {
|
|
@@ -217,6 +272,19 @@ export class ArgumentEngine {
|
|
|
217
272
|
}
|
|
218
273
|
return makeValidationResult(issues);
|
|
219
274
|
}
|
|
275
|
+
/**
|
|
276
|
+
* Evaluates the argument under a three-valued expression assignment.
|
|
277
|
+
*
|
|
278
|
+
* Variables may be `true`, `false`, or `null` (unknown). Expressions
|
|
279
|
+
* listed in `rejectedExpressionIds` evaluate to `false` (children
|
|
280
|
+
* skipped). All result flags (`isAdmissibleAssignment`,
|
|
281
|
+
* `allSupportingPremisesTrue`, `conclusionTrue`, `isCounterexample`,
|
|
282
|
+
* `preservesTruthUnderAssignment`) are three-valued: `null` means
|
|
283
|
+
* the result is indeterminate due to unknown variable values.
|
|
284
|
+
*
|
|
285
|
+
* Returns `{ ok: false }` with validation details if the argument is
|
|
286
|
+
* not structurally evaluable.
|
|
287
|
+
*/
|
|
220
288
|
evaluate(assignment, options) {
|
|
221
289
|
const validateFirst = options?.validateFirst ?? true;
|
|
222
290
|
if (validateFirst) {
|
|
@@ -245,7 +313,7 @@ export class ArgumentEngine {
|
|
|
245
313
|
conclusion.getId(),
|
|
246
314
|
...supportingPremises.map((pm) => pm.getId()),
|
|
247
315
|
]);
|
|
248
|
-
const constraintPremises = this.listPremises().filter((pm) => !roleIds.has(pm.getId()) && pm.
|
|
316
|
+
const constraintPremises = this.listPremises().filter((pm) => !roleIds.has(pm.getId()) && pm.isConstraint());
|
|
249
317
|
const allRelevantPremises = [
|
|
250
318
|
conclusion,
|
|
251
319
|
...supportingPremises,
|
|
@@ -262,12 +330,10 @@ export class ArgumentEngine {
|
|
|
262
330
|
const conclusionEvaluation = conclusion.evaluate(assignment, evalOpts);
|
|
263
331
|
const supportingEvaluations = supportingPremises.map((pm) => pm.evaluate(assignment, evalOpts));
|
|
264
332
|
const constraintEvaluations = constraintPremises.map((pm) => pm.evaluate(assignment, evalOpts));
|
|
265
|
-
const isAdmissibleAssignment = constraintEvaluations.
|
|
266
|
-
const allSupportingPremisesTrue = supportingEvaluations.
|
|
267
|
-
const conclusionTrue = conclusionEvaluation.rootValue
|
|
268
|
-
const isCounterexample = isAdmissibleAssignment
|
|
269
|
-
allSupportingPremisesTrue &&
|
|
270
|
-
!conclusionTrue;
|
|
333
|
+
const isAdmissibleAssignment = constraintEvaluations.reduce((acc, result) => kleeneAnd(acc, result.rootValue ?? null), true);
|
|
334
|
+
const allSupportingPremisesTrue = supportingEvaluations.reduce((acc, result) => kleeneAnd(acc, result.rootValue ?? null), true);
|
|
335
|
+
const conclusionTrue = conclusionEvaluation.rootValue ?? null;
|
|
336
|
+
const isCounterexample = kleeneAnd(isAdmissibleAssignment, kleeneAnd(allSupportingPremisesTrue, kleeneNot(conclusionTrue)));
|
|
271
337
|
const includeExpressionValues = options?.includeExpressionValues ?? true;
|
|
272
338
|
const includeDiagnostics = options?.includeDiagnostics ?? true;
|
|
273
339
|
const strip = (result) => ({
|
|
@@ -281,7 +347,12 @@ export class ArgumentEngine {
|
|
|
281
347
|
});
|
|
282
348
|
return {
|
|
283
349
|
ok: true,
|
|
284
|
-
assignment: {
|
|
350
|
+
assignment: {
|
|
351
|
+
variables: { ...assignment.variables },
|
|
352
|
+
rejectedExpressionIds: [
|
|
353
|
+
...assignment.rejectedExpressionIds,
|
|
354
|
+
],
|
|
355
|
+
},
|
|
285
356
|
referencedVariableIds,
|
|
286
357
|
conclusion: strip(conclusionEvaluation),
|
|
287
358
|
supportingPremises: supportingEvaluations.map(strip),
|
|
@@ -290,7 +361,7 @@ export class ArgumentEngine {
|
|
|
290
361
|
allSupportingPremisesTrue,
|
|
291
362
|
conclusionTrue,
|
|
292
363
|
isCounterexample,
|
|
293
|
-
preservesTruthUnderAssignment:
|
|
364
|
+
preservesTruthUnderAssignment: kleeneNot(isCounterexample),
|
|
294
365
|
};
|
|
295
366
|
}
|
|
296
367
|
catch (error) {
|
|
@@ -307,6 +378,16 @@ export class ArgumentEngine {
|
|
|
307
378
|
};
|
|
308
379
|
}
|
|
309
380
|
}
|
|
381
|
+
/**
|
|
382
|
+
* Enumerates all 2^n variable assignments and checks for counterexamples.
|
|
383
|
+
*
|
|
384
|
+
* A counterexample is an admissible assignment where all supporting
|
|
385
|
+
* premises are true but the conclusion is false. The argument is valid
|
|
386
|
+
* if no counterexamples exist.
|
|
387
|
+
*
|
|
388
|
+
* Supports early termination (`firstCounterexample` mode) and
|
|
389
|
+
* configurable limits on variables and assignments checked.
|
|
390
|
+
*/
|
|
310
391
|
checkValidity(options) {
|
|
311
392
|
const validateFirst = options?.validateFirst ?? true;
|
|
312
393
|
if (validateFirst) {
|
|
@@ -335,7 +416,7 @@ export class ArgumentEngine {
|
|
|
335
416
|
conclusion.getId(),
|
|
336
417
|
...supportingPremises.map((pm) => pm.getId()),
|
|
337
418
|
]);
|
|
338
|
-
const constraintPremises = this.listPremises().filter((pm) => !roleIds.has(pm.getId()) && pm.
|
|
419
|
+
const constraintPremises = this.listPremises().filter((pm) => !roleIds.has(pm.getId()) && pm.isConstraint());
|
|
339
420
|
const checkedVariableIds = sortedUnique([conclusion, ...supportingPremises, ...constraintPremises].flatMap((pm) => pm
|
|
340
421
|
.getExpressions()
|
|
341
422
|
.filter((expr) => expr.type === "variable")
|
|
@@ -365,9 +446,12 @@ export class ArgumentEngine {
|
|
|
365
446
|
truncated = true;
|
|
366
447
|
break;
|
|
367
448
|
}
|
|
368
|
-
const assignment = {
|
|
449
|
+
const assignment = {
|
|
450
|
+
variables: {},
|
|
451
|
+
rejectedExpressionIds: [],
|
|
452
|
+
};
|
|
369
453
|
for (let i = 0; i < checkedVariableIds.length; i++) {
|
|
370
|
-
assignment[checkedVariableIds[i]] = Boolean(mask & (1 << i));
|
|
454
|
+
assignment.variables[checkedVariableIds[i]] = Boolean(mask & (1 << i));
|
|
371
455
|
}
|
|
372
456
|
const result = this.evaluate(assignment, {
|
|
373
457
|
validateFirst: false,
|
|
@@ -381,12 +465,12 @@ export class ArgumentEngine {
|
|
|
381
465
|
};
|
|
382
466
|
}
|
|
383
467
|
numAssignmentsChecked += 1;
|
|
384
|
-
if (result.isAdmissibleAssignment) {
|
|
468
|
+
if (result.isAdmissibleAssignment === true) {
|
|
385
469
|
numAdmissibleAssignments += 1;
|
|
386
470
|
}
|
|
387
|
-
if (result.isCounterexample) {
|
|
471
|
+
if (result.isCounterexample === true) {
|
|
388
472
|
counterexamples.push({
|
|
389
|
-
assignment,
|
|
473
|
+
assignment: result.assignment,
|
|
390
474
|
result,
|
|
391
475
|
});
|
|
392
476
|
if (mode === "firstCounterexample") {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ArgumentEngine.js","sourceRoot":"","sources":["../../../src/lib/core/ArgumentEngine.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ArgumentEngine.js","sourceRoot":"","sources":["../../../src/lib/core/ArgumentEngine.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,19 +1,71 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { TCorePropositionalExpression } from "../schemata/index.js";
|
|
2
|
+
/**
|
|
3
|
+
* Low-level manager for a flat-stored expression tree.
|
|
4
|
+
*
|
|
5
|
+
* Expressions are immutable value objects stored in three maps: the main
|
|
6
|
+
* expression store, a parent-to-children ID index, and a parent-to-positions
|
|
7
|
+
* index. Structural invariants (child limits, root-only operators, position
|
|
8
|
+
* uniqueness) are enforced on every mutation.
|
|
9
|
+
*
|
|
10
|
+
* This class is an internal building block used by {@link PremiseManager}
|
|
11
|
+
* and is not part of the public API.
|
|
12
|
+
*/
|
|
2
13
|
export declare class ExpressionManager {
|
|
3
14
|
private expressions;
|
|
4
15
|
private childExpressionIdsByParentId;
|
|
5
16
|
private childPositionsByParentId;
|
|
6
|
-
constructor(initialExpressions?:
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
17
|
+
constructor(initialExpressions?: TCorePropositionalExpression[]);
|
|
18
|
+
/** Returns all expressions as an unordered array. */
|
|
19
|
+
toArray(): TCorePropositionalExpression[];
|
|
20
|
+
/**
|
|
21
|
+
* Adds an expression to the tree.
|
|
22
|
+
*
|
|
23
|
+
* @throws If the expression ID already exists.
|
|
24
|
+
* @throws If the expression references itself as parent.
|
|
25
|
+
* @throws If `implies`/`iff` operators have a non-null parentId (they must be roots).
|
|
26
|
+
* @throws If the parent does not exist or is not an operator/formula.
|
|
27
|
+
* @throws If the parent's child limit would be exceeded.
|
|
28
|
+
* @throws If the position is already occupied under the parent.
|
|
29
|
+
*/
|
|
30
|
+
addExpression(expression: TCorePropositionalExpression): void;
|
|
31
|
+
/**
|
|
32
|
+
* Removes an expression and its entire descendant subtree.
|
|
33
|
+
*
|
|
34
|
+
* After removal, {@link collapseIfNeeded} runs on the parent:
|
|
35
|
+
* - 0 children remaining: the parent operator/formula is deleted (recurses to grandparent).
|
|
36
|
+
* - 1 child remaining: the parent is deleted and the surviving child is promoted into its slot.
|
|
37
|
+
*
|
|
38
|
+
* @returns The removed expression, or `undefined` if not found.
|
|
39
|
+
*/
|
|
40
|
+
removeExpression(expressionId: string): TCorePropositionalExpression | undefined;
|
|
10
41
|
private collapseIfNeeded;
|
|
42
|
+
/** Returns `true` if any expression in the tree references the given variable ID. */
|
|
11
43
|
hasVariableReference(variableId: string): boolean;
|
|
12
|
-
|
|
13
|
-
|
|
44
|
+
/** Returns the expression with the given ID, or `undefined` if not found. */
|
|
45
|
+
getExpression(expressionId: string): TCorePropositionalExpression | undefined;
|
|
46
|
+
/** Returns the children of the given parent, sorted by position. */
|
|
47
|
+
getChildExpressions(parentId: string | null): TCorePropositionalExpression[];
|
|
14
48
|
private loadInitialExpressions;
|
|
15
49
|
private assertChildLimit;
|
|
16
50
|
private reparent;
|
|
17
|
-
|
|
51
|
+
/**
|
|
52
|
+
* Inserts a new expression between existing nodes in the tree.
|
|
53
|
+
*
|
|
54
|
+
* The new expression inherits the tree slot of the anchor node
|
|
55
|
+
* (`leftNodeId ?? rightNodeId`). The anchor and optional second node
|
|
56
|
+
* become children of the new expression at positions 0 and 1.
|
|
57
|
+
*
|
|
58
|
+
* Right node is reparented before left node to handle the case where
|
|
59
|
+
* the right node is a descendant of the left node's subtree.
|
|
60
|
+
*
|
|
61
|
+
* @throws If neither leftNodeId nor rightNodeId is provided.
|
|
62
|
+
* @throws If the expression ID already exists.
|
|
63
|
+
* @throws If leftNodeId and rightNodeId are the same.
|
|
64
|
+
* @throws If either referenced node does not exist.
|
|
65
|
+
* @throws If a unary operator/formula is given two children.
|
|
66
|
+
* @throws If either child is an `implies`/`iff` operator (cannot be subordinated).
|
|
67
|
+
* @throws If an `implies`/`iff` expression would be inserted at a non-root position.
|
|
68
|
+
*/
|
|
69
|
+
insertExpression(expression: TCorePropositionalExpression, leftNodeId?: string, rightNodeId?: string): void;
|
|
18
70
|
}
|
|
19
71
|
//# sourceMappingURL=ExpressionManager.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExpressionManager.d.ts","sourceRoot":"","sources":["../../../src/lib/core/ExpressionManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAER,
|
|
1
|
+
{"version":3,"file":"ExpressionManager.d.ts","sourceRoot":"","sources":["../../../src/lib/core/ExpressionManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAER,4BAA4B,EAC/B,MAAM,sBAAsB,CAAA;AAG7B;;;;;;;;;;GAUG;AACH,qBAAa,iBAAiB;IAC1B,OAAO,CAAC,WAAW,CAA2C;IAC9D,OAAO,CAAC,4BAA4B,CAAiC;IACrE,OAAO,CAAC,wBAAwB,CAAiC;gBAErD,kBAAkB,GAAE,4BAA4B,EAAO;IAQnE,qDAAqD;IAC9C,OAAO,IAAI,4BAA4B,EAAE;IAIhD;;;;;;;;;OASG;IACI,aAAa,CAAC,UAAU,EAAE,4BAA4B;IAwE7D;;;;;;;;OAQG;IACI,gBAAgB,CAAC,YAAY,EAAE,MAAM;IAoD5C,OAAO,CAAC,gBAAgB;IAmFxB,qFAAqF;IAC9E,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAYxD,6EAA6E;IACtE,aAAa,CAChB,YAAY,EAAE,MAAM,GACrB,4BAA4B,GAAG,SAAS;IAI3C,oEAAoE;IAC7D,mBAAmB,CACtB,QAAQ,EAAE,MAAM,GAAG,IAAI,GACxB,4BAA4B,EAAE;IA4BjC,OAAO,CAAC,sBAAsB;IAqC9B,OAAO,CAAC,gBAAgB;IAmBxB,OAAO,CAAC,QAAQ;IAwChB;;;;;;;;;;;;;;;;;OAiBG;IACI,gBAAgB,CACnB,UAAU,EAAE,4BAA4B,EACxC,UAAU,CAAC,EAAE,MAAM,EACnB,WAAW,CAAC,EAAE,MAAM,GACrB,IAAI;CA0IV"}
|
|
@@ -1,4 +1,15 @@
|
|
|
1
1
|
import { getOrCreate } from "../utils/collections.js";
|
|
2
|
+
/**
|
|
3
|
+
* Low-level manager for a flat-stored expression tree.
|
|
4
|
+
*
|
|
5
|
+
* Expressions are immutable value objects stored in three maps: the main
|
|
6
|
+
* expression store, a parent-to-children ID index, and a parent-to-positions
|
|
7
|
+
* index. Structural invariants (child limits, root-only operators, position
|
|
8
|
+
* uniqueness) are enforced on every mutation.
|
|
9
|
+
*
|
|
10
|
+
* This class is an internal building block used by {@link PremiseManager}
|
|
11
|
+
* and is not part of the public API.
|
|
12
|
+
*/
|
|
2
13
|
export class ExpressionManager {
|
|
3
14
|
expressions;
|
|
4
15
|
childExpressionIdsByParentId;
|
|
@@ -9,9 +20,20 @@ export class ExpressionManager {
|
|
|
9
20
|
this.childPositionsByParentId = new Map();
|
|
10
21
|
this.loadInitialExpressions(initialExpressions);
|
|
11
22
|
}
|
|
23
|
+
/** Returns all expressions as an unordered array. */
|
|
12
24
|
toArray() {
|
|
13
25
|
return Array.from(this.expressions.values());
|
|
14
26
|
}
|
|
27
|
+
/**
|
|
28
|
+
* Adds an expression to the tree.
|
|
29
|
+
*
|
|
30
|
+
* @throws If the expression ID already exists.
|
|
31
|
+
* @throws If the expression references itself as parent.
|
|
32
|
+
* @throws If `implies`/`iff` operators have a non-null parentId (they must be roots).
|
|
33
|
+
* @throws If the parent does not exist or is not an operator/formula.
|
|
34
|
+
* @throws If the parent's child limit would be exceeded.
|
|
35
|
+
* @throws If the position is already occupied under the parent.
|
|
36
|
+
*/
|
|
15
37
|
addExpression(expression) {
|
|
16
38
|
if (this.expressions.has(expression.id)) {
|
|
17
39
|
throw new Error(`Expression with ID "${expression.id}" already exists.`);
|
|
@@ -54,6 +76,15 @@ export class ExpressionManager {
|
|
|
54
76
|
this.expressions.set(expression.id, expression);
|
|
55
77
|
getOrCreate(this.childExpressionIdsByParentId, expression.parentId, () => new Set()).add(expression.id);
|
|
56
78
|
}
|
|
79
|
+
/**
|
|
80
|
+
* Removes an expression and its entire descendant subtree.
|
|
81
|
+
*
|
|
82
|
+
* After removal, {@link collapseIfNeeded} runs on the parent:
|
|
83
|
+
* - 0 children remaining: the parent operator/formula is deleted (recurses to grandparent).
|
|
84
|
+
* - 1 child remaining: the parent is deleted and the surviving child is promoted into its slot.
|
|
85
|
+
*
|
|
86
|
+
* @returns The removed expression, or `undefined` if not found.
|
|
87
|
+
*/
|
|
57
88
|
removeExpression(expressionId) {
|
|
58
89
|
const target = this.expressions.get(expressionId);
|
|
59
90
|
if (!target) {
|
|
@@ -166,6 +197,7 @@ export class ExpressionManager {
|
|
|
166
197
|
// The grandparent's child count is unchanged; no further recursion needed.
|
|
167
198
|
}
|
|
168
199
|
}
|
|
200
|
+
/** Returns `true` if any expression in the tree references the given variable ID. */
|
|
169
201
|
hasVariableReference(variableId) {
|
|
170
202
|
for (const expression of this.expressions.values()) {
|
|
171
203
|
if (expression.type === "variable" &&
|
|
@@ -175,9 +207,11 @@ export class ExpressionManager {
|
|
|
175
207
|
}
|
|
176
208
|
return false;
|
|
177
209
|
}
|
|
210
|
+
/** Returns the expression with the given ID, or `undefined` if not found. */
|
|
178
211
|
getExpression(expressionId) {
|
|
179
212
|
return this.expressions.get(expressionId);
|
|
180
213
|
}
|
|
214
|
+
/** Returns the children of the given parent, sorted by position. */
|
|
181
215
|
getChildExpressions(parentId) {
|
|
182
216
|
const childIds = this.childExpressionIdsByParentId.get(parentId);
|
|
183
217
|
if (!childIds || childIds.size === 0) {
|
|
@@ -259,6 +293,24 @@ export class ExpressionManager {
|
|
|
259
293
|
getOrCreate(this.childPositionsByParentId, newParentId, () => new Set()).add(newPosition);
|
|
260
294
|
}
|
|
261
295
|
}
|
|
296
|
+
/**
|
|
297
|
+
* Inserts a new expression between existing nodes in the tree.
|
|
298
|
+
*
|
|
299
|
+
* The new expression inherits the tree slot of the anchor node
|
|
300
|
+
* (`leftNodeId ?? rightNodeId`). The anchor and optional second node
|
|
301
|
+
* become children of the new expression at positions 0 and 1.
|
|
302
|
+
*
|
|
303
|
+
* Right node is reparented before left node to handle the case where
|
|
304
|
+
* the right node is a descendant of the left node's subtree.
|
|
305
|
+
*
|
|
306
|
+
* @throws If neither leftNodeId nor rightNodeId is provided.
|
|
307
|
+
* @throws If the expression ID already exists.
|
|
308
|
+
* @throws If leftNodeId and rightNodeId are the same.
|
|
309
|
+
* @throws If either referenced node does not exist.
|
|
310
|
+
* @throws If a unary operator/formula is given two children.
|
|
311
|
+
* @throws If either child is an `implies`/`iff` operator (cannot be subordinated).
|
|
312
|
+
* @throws If an `implies`/`iff` expression would be inserted at a non-root position.
|
|
313
|
+
*/
|
|
262
314
|
insertExpression(expression, leftNodeId, rightNodeId) {
|
|
263
315
|
// 1. At least one child node must be provided.
|
|
264
316
|
if (leftNodeId === undefined && rightNodeId === undefined) {
|
|
@@ -346,7 +398,4 @@ export class ExpressionManager {
|
|
|
346
398
|
}
|
|
347
399
|
}
|
|
348
400
|
}
|
|
349
|
-
// ---------------------------------------------------------------------------
|
|
350
|
-
// PremiseManager
|
|
351
|
-
// ---------------------------------------------------------------------------
|
|
352
401
|
//# sourceMappingURL=ExpressionManager.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExpressionManager.js","sourceRoot":"","sources":["../../../src/lib/core/ExpressionManager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ExpressionManager.js","sourceRoot":"","sources":["../../../src/lib/core/ExpressionManager.ts"],"names":[],"mappings":"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"}
|