@polintpro/proposit-core 0.8.6 → 0.8.8

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 (35) hide show
  1. package/README.md +2 -0
  2. package/dist/extensions/ieee/formatting.d.ts +2 -14
  3. package/dist/extensions/ieee/formatting.d.ts.map +1 -1
  4. package/dist/extensions/ieee/formatting.js +42 -1038
  5. package/dist/extensions/ieee/formatting.js.map +1 -1
  6. package/dist/extensions/ieee/index.d.ts +1 -0
  7. package/dist/extensions/ieee/index.d.ts.map +1 -1
  8. package/dist/extensions/ieee/index.js +1 -0
  9. package/dist/extensions/ieee/index.js.map +1 -1
  10. package/dist/extensions/ieee/segment-builder.d.ts +9 -0
  11. package/dist/extensions/ieee/segment-builder.d.ts.map +1 -0
  12. package/dist/extensions/ieee/segment-builder.js +98 -0
  13. package/dist/extensions/ieee/segment-builder.js.map +1 -0
  14. package/dist/extensions/ieee/segment-templates.d.ts +58 -0
  15. package/dist/extensions/ieee/segment-templates.d.ts.map +1 -0
  16. package/dist/extensions/ieee/segment-templates.js +1618 -0
  17. package/dist/extensions/ieee/segment-templates.js.map +1 -0
  18. package/dist/lib/core/argument-engine.d.ts +2 -19
  19. package/dist/lib/core/argument-engine.d.ts.map +1 -1
  20. package/dist/lib/core/argument-engine.js +46 -819
  21. package/dist/lib/core/argument-engine.js.map +1 -1
  22. package/dist/lib/core/argument-validation.d.ts +74 -0
  23. package/dist/lib/core/argument-validation.d.ts.map +1 -0
  24. package/dist/lib/core/argument-validation.js +315 -0
  25. package/dist/lib/core/argument-validation.js.map +1 -0
  26. package/dist/lib/core/evaluation/argument-evaluation.d.ts +53 -0
  27. package/dist/lib/core/evaluation/argument-evaluation.d.ts.map +1 -0
  28. package/dist/lib/core/evaluation/argument-evaluation.js +535 -0
  29. package/dist/lib/core/evaluation/argument-evaluation.js.map +1 -0
  30. package/dist/lib/core/parser/formula-gen.js +1 -1
  31. package/dist/lib/index.d.ts +4 -0
  32. package/dist/lib/index.d.ts.map +1 -1
  33. package/dist/lib/index.js +2 -0
  34. package/dist/lib/index.js.map +1 -1
  35. package/package.json +9 -9
@@ -0,0 +1 @@
1
+ {"version":3,"file":"argument-validation.js","sourceRoot":"","sources":["../../../src/lib/core/argument-validation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,53 @@
1
+ import { type TCorePropositionalExpression, type TCorePropositionalVariable } from "../../schemata/index.js";
2
+ import type { TCoreArgumentEvaluationOptions, TCoreArgumentEvaluationResult, TCoreExpressionAssignment, TCoreValidityCheckOptions, TCoreValidityCheckResult, TCoreVariableAssignment, TCorePremiseEvaluationResult, TCoreValidationResult } from "../../types/evaluation.js";
3
+ /**
4
+ * Read-only interface providing the data an evaluation needs from an
5
+ * argument engine. This is intentionally narrow — evaluation should
6
+ * not mutate anything.
7
+ */
8
+ export interface TArgumentEvaluationContext {
9
+ /** The argument's own ID. */
10
+ argumentId: string;
11
+ /** Returns the conclusion PremiseEngine, or undefined. */
12
+ getConclusionPremise(): TEvaluablePremise | undefined;
13
+ /** Returns supporting premises (inference premises minus conclusion). */
14
+ listSupportingPremises(): TEvaluablePremise[];
15
+ /** Returns all premises. */
16
+ listPremises(): TEvaluablePremise[];
17
+ /** The conclusion premise ID, if set. */
18
+ conclusionPremiseId: string | undefined;
19
+ /** Look up a variable by ID. */
20
+ getVariable(variableId: string): TCorePropositionalVariable | undefined;
21
+ /** Look up a premise by ID. */
22
+ getPremise(premiseId: string): TEvaluablePremise | undefined;
23
+ /** Pre-evaluation structural validation. */
24
+ validateEvaluability(): TCoreValidationResult;
25
+ }
26
+ /**
27
+ * Narrow view of a PremiseEngine needed for evaluation.
28
+ */
29
+ export interface TEvaluablePremise {
30
+ getId(): string;
31
+ getExpressions(): TCorePropositionalExpression[];
32
+ getChildExpressions(parentId: string): TCorePropositionalExpression[];
33
+ getVariables(): TCorePropositionalVariable[];
34
+ evaluate(assignment: TCoreExpressionAssignment, options?: {
35
+ strictUnknownKeys?: boolean;
36
+ resolver?: (variableId: string) => boolean | null;
37
+ }): TCorePremiseEvaluationResult;
38
+ }
39
+ /**
40
+ * Run fixed-point constraint propagation over accepted/rejected operators.
41
+ * Fills unknown (null) variable values based on operator semantics.
42
+ * Never overwrites user-assigned values (true/false).
43
+ */
44
+ export declare function propagateOperatorConstraints(ctx: TArgumentEvaluationContext, assignment: TCoreExpressionAssignment): TCoreVariableAssignment;
45
+ /**
46
+ * Evaluates an argument under a three-valued expression assignment.
47
+ */
48
+ export declare function evaluateArgument(ctx: TArgumentEvaluationContext, assignment: TCoreExpressionAssignment, options?: TCoreArgumentEvaluationOptions): TCoreArgumentEvaluationResult;
49
+ /**
50
+ * Enumerates all 2^n variable assignments and checks for counterexamples.
51
+ */
52
+ export declare function checkArgumentValidity(ctx: TArgumentEvaluationContext, options?: TCoreValidityCheckOptions): TCoreValidityCheckResult;
53
+ //# sourceMappingURL=argument-evaluation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"argument-evaluation.d.ts","sourceRoot":"","sources":["../../../../src/lib/core/evaluation/argument-evaluation.ts"],"names":[],"mappings":"AAAA,OAAO,EAGH,KAAK,4BAA4B,EACjC,KAAK,0BAA0B,EAClC,MAAM,yBAAyB,CAAA;AAChC,OAAO,KAAK,EACR,8BAA8B,EAC9B,6BAA6B,EAE7B,yBAAyB,EAEzB,yBAAyB,EACzB,wBAAwB,EACxB,uBAAuB,EACvB,4BAA4B,EAC5B,qBAAqB,EACxB,MAAM,2BAA2B,CAAA;AAUlC;;;;GAIG;AACH,MAAM,WAAW,0BAA0B;IACvC,6BAA6B;IAC7B,UAAU,EAAE,MAAM,CAAA;IAClB,0DAA0D;IAC1D,oBAAoB,IAAI,iBAAiB,GAAG,SAAS,CAAA;IACrD,yEAAyE;IACzE,sBAAsB,IAAI,iBAAiB,EAAE,CAAA;IAC7C,4BAA4B;IAC5B,YAAY,IAAI,iBAAiB,EAAE,CAAA;IACnC,yCAAyC;IACzC,mBAAmB,EAAE,MAAM,GAAG,SAAS,CAAA;IACvC,gCAAgC;IAChC,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,0BAA0B,GAAG,SAAS,CAAA;IACvE,+BAA+B;IAC/B,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS,CAAA;IAC5D,4CAA4C;IAC5C,oBAAoB,IAAI,qBAAqB,CAAA;CAChD;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAC9B,KAAK,IAAI,MAAM,CAAA;IACf,cAAc,IAAI,4BAA4B,EAAE,CAAA;IAChD,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,4BAA4B,EAAE,CAAA;IACrE,YAAY,IAAI,0BAA0B,EAAE,CAAA;IAC5C,QAAQ,CACJ,UAAU,EAAE,yBAAyB,EACrC,OAAO,CAAC,EAAE;QACN,iBAAiB,CAAC,EAAE,OAAO,CAAA;QAC3B,QAAQ,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,GAAG,IAAI,CAAA;KACpD,GACF,4BAA4B,CAAA;CAClC;AAED;;;;GAIG;AACH,wBAAgB,4BAA4B,CACxC,GAAG,EAAE,0BAA0B,EAC/B,UAAU,EAAE,yBAAyB,GACtC,uBAAuB,CAwSzB;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC5B,GAAG,EAAE,0BAA0B,EAC/B,UAAU,EAAE,yBAAyB,EACrC,OAAO,CAAC,EAAE,8BAA8B,GACzC,6BAA6B,CAoL/B;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACjC,GAAG,EAAE,0BAA0B,EAC/B,OAAO,CAAC,EAAE,yBAAyB,GACpC,wBAAwB,CAmJ1B"}
@@ -0,0 +1,535 @@
1
+ import { isClaimBound, isPremiseBound, } from "../../schemata/index.js";
2
+ import { kleeneAnd, kleeneNot, kleeneOr, kleeneImplies, kleeneIff, } from "./kleene.js";
3
+ import { makeErrorIssue, makeValidationResult } from "./validation.js";
4
+ /**
5
+ * Run fixed-point constraint propagation over accepted/rejected operators.
6
+ * Fills unknown (null) variable values based on operator semantics.
7
+ * Never overwrites user-assigned values (true/false).
8
+ */
9
+ export function propagateOperatorConstraints(ctx, assignment) {
10
+ const vars = { ...assignment.variables };
11
+ const opAssignments = assignment.operatorAssignments;
12
+ // Collect all expressions across all premises, indexed by id
13
+ const exprById = new Map();
14
+ // Children lookup: parentId -> sorted children
15
+ const childrenOf = new Map();
16
+ for (const pm of ctx.listPremises()) {
17
+ for (const expr of pm.getExpressions()) {
18
+ exprById.set(expr.id, expr);
19
+ }
20
+ // Build children map using getChildExpressions for each operator/formula
21
+ for (const expr of pm.getExpressions()) {
22
+ if (expr.type === "operator" || expr.type === "formula") {
23
+ childrenOf.set(expr.id, pm.getChildExpressions(expr.id));
24
+ }
25
+ }
26
+ }
27
+ /**
28
+ * Resolve the current Kleene value of an expression subtree
29
+ * given the current variable assignments. Does not force-accept
30
+ * nested operators — evaluates them normally via Kleene logic.
31
+ */
32
+ const resolveValue = (exprId) => {
33
+ const expr = exprById.get(exprId);
34
+ if (!expr)
35
+ return null;
36
+ if (expr.type === "variable") {
37
+ return (vars[expr
38
+ .variableId] ?? null);
39
+ }
40
+ if (expr.type === "formula") {
41
+ const children = childrenOf.get(expr.id) ?? [];
42
+ return children.length > 0 ? resolveValue(children[0].id) : null;
43
+ }
44
+ // operator
45
+ const op = expr.operator;
46
+ const children = childrenOf.get(expr.id) ?? [];
47
+ switch (op) {
48
+ case "not":
49
+ return kleeneNot(resolveValue(children[0].id));
50
+ case "and":
51
+ return children.reduce((acc, child) => kleeneAnd(acc, resolveValue(child.id)), true);
52
+ case "or":
53
+ return children.reduce((acc, child) => kleeneOr(acc, resolveValue(child.id)), false);
54
+ case "implies": {
55
+ return kleeneImplies(resolveValue(children[0].id), resolveValue(children[1].id));
56
+ }
57
+ case "iff": {
58
+ return kleeneIff(resolveValue(children[0].id), resolveValue(children[1].id));
59
+ }
60
+ }
61
+ };
62
+ /**
63
+ * Unwrap formula wrappers to find the leaf variable expression.
64
+ * Returns the variableId if the leaf is a variable, otherwise null.
65
+ */
66
+ const resolveLeafVariableId = (expr) => {
67
+ if (expr.type === "variable") {
68
+ return expr.variableId;
69
+ }
70
+ if (expr.type === "formula") {
71
+ const children = childrenOf.get(expr.id) ?? [];
72
+ if (children.length > 0) {
73
+ return resolveLeafVariableId(children[0]);
74
+ }
75
+ }
76
+ return null;
77
+ };
78
+ // Track which variable IDs were explicitly set by the user
79
+ // (true or false). These are never overwritten by propagation.
80
+ const userAssigned = new Set();
81
+ for (const [varId, val] of Object.entries(vars)) {
82
+ if (val !== null && val !== undefined)
83
+ userAssigned.add(varId);
84
+ }
85
+ /**
86
+ * Try to set a child expression's variable to a value.
87
+ * Never overwrites user-assigned values.
88
+ * False overrides propagated true (rejection wins).
89
+ * Returns true if a value changed.
90
+ */
91
+ const trySetChild = (child, value) => {
92
+ const varId = resolveLeafVariableId(child);
93
+ if (varId == null || userAssigned.has(varId))
94
+ return false;
95
+ const current = vars[varId] ?? null;
96
+ if (current === null) {
97
+ vars[varId] = value;
98
+ return true;
99
+ }
100
+ // False overrides propagated true
101
+ if (value === false && current === true) {
102
+ vars[varId] = false;
103
+ return true;
104
+ }
105
+ return false;
106
+ };
107
+ // Two-phase propagation: rejections first (to establish false values),
108
+ // then acceptances (which only fill remaining unknowns).
109
+ // This prevents acceptance from deriving values through chains that
110
+ // are later invalidated by rejection.
111
+ for (const phase of ["rejected", "accepted"]) {
112
+ let changed = true;
113
+ while (changed) {
114
+ changed = false;
115
+ for (const [exprId, expr] of exprById) {
116
+ if (expr.type !== "operator")
117
+ continue;
118
+ const state = opAssignments[exprId];
119
+ if (state !== phase)
120
+ continue;
121
+ const op = expr
122
+ .operator;
123
+ const children = childrenOf.get(exprId) ?? [];
124
+ if (state === "accepted") {
125
+ switch (op) {
126
+ case "not": {
127
+ // ¬A accepted (= true) => child must be false
128
+ if (children.length > 0) {
129
+ if (trySetChild(children[0], false))
130
+ changed = true;
131
+ }
132
+ break;
133
+ }
134
+ case "and": {
135
+ // A ∧ B accepted => all children must be true
136
+ for (const child of children) {
137
+ if (trySetChild(child, true))
138
+ changed = true;
139
+ }
140
+ break;
141
+ }
142
+ case "or": {
143
+ // A ∨ B accepted: if all-but-one are false, remaining must be true
144
+ const unknownChildren = [];
145
+ let allOthersAreFalse = true;
146
+ for (const child of children) {
147
+ const childValue = resolveValue(child.id);
148
+ if (childValue === null) {
149
+ unknownChildren.push(child);
150
+ }
151
+ else if (childValue !== false) {
152
+ allOthersAreFalse = false;
153
+ }
154
+ }
155
+ if (unknownChildren.length === 1 &&
156
+ allOthersAreFalse) {
157
+ if (trySetChild(unknownChildren[0], true))
158
+ changed = true;
159
+ }
160
+ break;
161
+ }
162
+ case "implies": {
163
+ // A → B accepted: if A=true => B=true; if B=false => A=false
164
+ if (children.length >= 2) {
165
+ const leftValue = resolveValue(children[0].id);
166
+ const rightValue = resolveValue(children[1].id);
167
+ if (leftValue === true) {
168
+ if (trySetChild(children[1], true))
169
+ changed = true;
170
+ }
171
+ if (rightValue === false) {
172
+ if (trySetChild(children[0], false))
173
+ changed = true;
174
+ }
175
+ }
176
+ break;
177
+ }
178
+ case "iff": {
179
+ // A ↔ B accepted: if A known => B matches; if B known => A matches
180
+ if (children.length >= 2) {
181
+ const leftValue = resolveValue(children[0].id);
182
+ const rightValue = resolveValue(children[1].id);
183
+ if (leftValue !== null) {
184
+ if (trySetChild(children[1], leftValue))
185
+ changed = true;
186
+ }
187
+ if (rightValue !== null) {
188
+ if (trySetChild(children[0], rightValue))
189
+ changed = true;
190
+ }
191
+ }
192
+ break;
193
+ }
194
+ }
195
+ }
196
+ else {
197
+ // state === "rejected" — expression forced false
198
+ switch (op) {
199
+ case "not": {
200
+ // ¬A rejected (= false) => child must be true
201
+ if (children.length > 0) {
202
+ if (trySetChild(children[0], true))
203
+ changed = true;
204
+ }
205
+ break;
206
+ }
207
+ case "and": {
208
+ // A ∧ B rejected (= false): if all-but-one are true, remaining must be false
209
+ const unknownChildren = [];
210
+ let allOthersAreTrue = true;
211
+ for (const child of children) {
212
+ const childValue = resolveValue(child.id);
213
+ if (childValue === null) {
214
+ unknownChildren.push(child);
215
+ }
216
+ else if (childValue !== true) {
217
+ allOthersAreTrue = false;
218
+ }
219
+ }
220
+ if (unknownChildren.length === 1 &&
221
+ allOthersAreTrue) {
222
+ if (trySetChild(unknownChildren[0], false))
223
+ changed = true;
224
+ }
225
+ break;
226
+ }
227
+ case "or": {
228
+ // A ∨ B rejected (= false) => all children must be false
229
+ for (const child of children) {
230
+ if (trySetChild(child, false))
231
+ changed = true;
232
+ }
233
+ break;
234
+ }
235
+ case "implies": {
236
+ // A → B rejected (= false) => A must be true, B must be false
237
+ if (children.length >= 2) {
238
+ if (trySetChild(children[0], true))
239
+ changed = true;
240
+ if (trySetChild(children[1], false))
241
+ changed = true;
242
+ }
243
+ break;
244
+ }
245
+ case "iff": {
246
+ // A ↔ B rejected (= false): if A known => B is opposite; if B known => A is opposite
247
+ if (children.length >= 2) {
248
+ const leftValue = resolveValue(children[0].id);
249
+ const rightValue = resolveValue(children[1].id);
250
+ if (leftValue !== null) {
251
+ if (trySetChild(children[1], !leftValue))
252
+ changed = true;
253
+ }
254
+ if (rightValue !== null) {
255
+ if (trySetChild(children[0], !rightValue))
256
+ changed = true;
257
+ }
258
+ }
259
+ break;
260
+ }
261
+ }
262
+ }
263
+ }
264
+ }
265
+ }
266
+ return vars;
267
+ }
268
+ /**
269
+ * Evaluates an argument under a three-valued expression assignment.
270
+ */
271
+ export function evaluateArgument(ctx, assignment, options) {
272
+ const validateFirst = options?.validateFirst ?? true;
273
+ if (validateFirst) {
274
+ const validation = ctx.validateEvaluability();
275
+ if (!validation.ok) {
276
+ return {
277
+ ok: false,
278
+ validation,
279
+ };
280
+ }
281
+ }
282
+ const conclusion = ctx.getConclusionPremise();
283
+ if (!conclusion) {
284
+ return {
285
+ ok: false,
286
+ validation: makeValidationResult([
287
+ makeErrorIssue({
288
+ code: "ARGUMENT_NO_CONCLUSION",
289
+ message: "Argument has no designated conclusion premise.",
290
+ }),
291
+ ]),
292
+ };
293
+ }
294
+ const supportingPremises = ctx.listSupportingPremises();
295
+ const supportingIds = new Set(supportingPremises.map((pm) => pm.getId()));
296
+ const constraintPremises = ctx
297
+ .listPremises()
298
+ .filter((pm) => pm.getId() !== ctx.conclusionPremiseId &&
299
+ !supportingIds.has(pm.getId()));
300
+ const allRelevantPremises = [
301
+ conclusion,
302
+ ...supportingPremises,
303
+ ...constraintPremises,
304
+ ];
305
+ const allVariableIds = [
306
+ ...new Set(allRelevantPremises.flatMap((pm) => pm
307
+ .getExpressions()
308
+ .filter((expr) => expr.type === "variable")
309
+ .map((expr) => expr.variableId))),
310
+ ].sort();
311
+ // Claim-bound and externally-bound premise variables get truth-table columns;
312
+ // internally-bound premise variables are resolved lazily.
313
+ const referencedVariableIds = allVariableIds.filter((vid) => {
314
+ const v = ctx.getVariable(vid);
315
+ if (v == null)
316
+ return false;
317
+ if (isClaimBound(v))
318
+ return true;
319
+ if (isPremiseBound(v) && v.boundArgumentId !== ctx.argumentId)
320
+ return true;
321
+ return false;
322
+ });
323
+ // Run operator constraint propagation
324
+ const propagatedVars = propagateOperatorConstraints(ctx, assignment);
325
+ const propagatedAssignment = {
326
+ variables: propagatedVars,
327
+ operatorAssignments: assignment.operatorAssignments,
328
+ };
329
+ try {
330
+ // Build a resolver that lazily evaluates premise-bound variables
331
+ // by evaluating their bound premise's expression tree under the
332
+ // same assignment. Results are cached per-variable per-evaluate call.
333
+ const resolverCache = new Map();
334
+ const resolver = (variableId) => {
335
+ if (resolverCache.has(variableId)) {
336
+ return resolverCache.get(variableId);
337
+ }
338
+ const variable = ctx.getVariable(variableId);
339
+ if (!variable ||
340
+ !isPremiseBound(variable) ||
341
+ variable.boundArgumentId !== ctx.argumentId) {
342
+ // Claim-bound or externally-bound: read from assignment
343
+ return propagatedAssignment.variables[variableId] ?? null;
344
+ }
345
+ // Internal premise-bound: lazy resolution
346
+ const boundPremiseId = variable.boundPremiseId;
347
+ const boundPremise = ctx.getPremise(boundPremiseId);
348
+ if (!boundPremise) {
349
+ resolverCache.set(variableId, null);
350
+ return null;
351
+ }
352
+ const premiseResult = boundPremise.evaluate(propagatedAssignment, {
353
+ resolver,
354
+ });
355
+ const value = premiseResult?.rootValue ?? null;
356
+ resolverCache.set(variableId, value);
357
+ return value;
358
+ };
359
+ const evalOpts = {
360
+ strictUnknownKeys: options?.strictUnknownAssignmentKeys ?? false,
361
+ resolver,
362
+ };
363
+ const conclusionEvaluation = conclusion.evaluate(propagatedAssignment, evalOpts);
364
+ const supportingEvaluations = supportingPremises.map((pm) => pm.evaluate(propagatedAssignment, evalOpts));
365
+ const constraintEvaluations = constraintPremises.map((pm) => pm.evaluate(propagatedAssignment, evalOpts));
366
+ const isAdmissibleAssignment = constraintEvaluations.reduce((acc, result) => kleeneAnd(acc, result.rootValue ?? null), true);
367
+ const allSupportingPremisesTrue = supportingEvaluations.reduce((acc, result) => kleeneAnd(acc, result.rootValue ?? null), true);
368
+ const conclusionTrue = conclusionEvaluation.rootValue ?? null;
369
+ const isCounterexample = kleeneAnd(isAdmissibleAssignment, kleeneAnd(allSupportingPremisesTrue, kleeneNot(conclusionTrue)));
370
+ const includeExpressionValues = options?.includeExpressionValues ?? true;
371
+ const includeDiagnostics = options?.includeDiagnostics ?? true;
372
+ const strip = (result) => ({
373
+ ...result,
374
+ expressionValues: includeExpressionValues
375
+ ? result.expressionValues
376
+ : {},
377
+ inferenceDiagnostic: includeDiagnostics
378
+ ? result.inferenceDiagnostic
379
+ : undefined,
380
+ });
381
+ return {
382
+ ok: true,
383
+ assignment: {
384
+ variables: { ...propagatedAssignment.variables },
385
+ operatorAssignments: {
386
+ ...propagatedAssignment.operatorAssignments,
387
+ },
388
+ },
389
+ referencedVariableIds,
390
+ conclusion: strip(conclusionEvaluation),
391
+ supportingPremises: supportingEvaluations.map(strip),
392
+ constraintPremises: constraintEvaluations.map(strip),
393
+ isAdmissibleAssignment,
394
+ allSupportingPremisesTrue,
395
+ conclusionTrue,
396
+ isCounterexample,
397
+ preservesTruthUnderAssignment: kleeneNot(isCounterexample),
398
+ };
399
+ }
400
+ catch (error) {
401
+ return {
402
+ ok: false,
403
+ validation: makeValidationResult([
404
+ makeErrorIssue({
405
+ code: "ASSIGNMENT_MISSING_VARIABLE",
406
+ message: error instanceof Error
407
+ ? error.message
408
+ : "Argument evaluation failed.",
409
+ }),
410
+ ]),
411
+ };
412
+ }
413
+ }
414
+ /**
415
+ * Enumerates all 2^n variable assignments and checks for counterexamples.
416
+ */
417
+ export function checkArgumentValidity(ctx, options) {
418
+ const validateFirst = options?.validateFirst ?? true;
419
+ if (validateFirst) {
420
+ const validation = ctx.validateEvaluability();
421
+ if (!validation.ok) {
422
+ return {
423
+ ok: false,
424
+ validation,
425
+ };
426
+ }
427
+ }
428
+ const conclusion = ctx.getConclusionPremise();
429
+ if (!conclusion) {
430
+ return {
431
+ ok: false,
432
+ validation: makeValidationResult([
433
+ makeErrorIssue({
434
+ code: "ARGUMENT_NO_CONCLUSION",
435
+ message: "Argument has no designated conclusion premise.",
436
+ }),
437
+ ]),
438
+ };
439
+ }
440
+ const supportingPremises = ctx.listSupportingPremises();
441
+ const supportingIds = new Set(supportingPremises.map((pm) => pm.getId()));
442
+ const constraintPremises = ctx
443
+ .listPremises()
444
+ .filter((pm) => pm.getId() !== ctx.conclusionPremiseId &&
445
+ !supportingIds.has(pm.getId()));
446
+ const allVariableIdsForCheck = [
447
+ ...new Set([conclusion, ...supportingPremises, ...constraintPremises].flatMap((pm) => pm
448
+ .getExpressions()
449
+ .filter((expr) => expr.type === "variable")
450
+ .map((expr) => expr.variableId))),
451
+ ].sort();
452
+ // Claim-bound and externally-bound premise variables get truth-table columns;
453
+ // internally-bound premise variables are resolved lazily.
454
+ const checkedVariableIds = allVariableIdsForCheck.filter((vid) => {
455
+ const v = ctx.getVariable(vid);
456
+ if (v == null)
457
+ return false;
458
+ if (isClaimBound(v))
459
+ return true;
460
+ if (isPremiseBound(v) && v.boundArgumentId !== ctx.argumentId)
461
+ return true;
462
+ return false;
463
+ });
464
+ if (options?.maxVariables !== undefined &&
465
+ checkedVariableIds.length > options.maxVariables) {
466
+ return {
467
+ ok: false,
468
+ validation: makeValidationResult([
469
+ makeErrorIssue({
470
+ code: "ASSIGNMENT_UNKNOWN_VARIABLE",
471
+ message: `Validity check requires ${checkedVariableIds.length} variables, exceeding limit ${options.maxVariables}.`,
472
+ }),
473
+ ]),
474
+ };
475
+ }
476
+ const mode = options?.mode ?? "firstCounterexample";
477
+ const maxAssignmentsChecked = options?.maxAssignmentsChecked;
478
+ const counterexamples = [];
479
+ let numAssignmentsChecked = 0;
480
+ let numAdmissibleAssignments = 0;
481
+ let truncated = false;
482
+ const totalAssignments = 2 ** checkedVariableIds.length;
483
+ for (let mask = 0; mask < totalAssignments; mask++) {
484
+ if (maxAssignmentsChecked !== undefined &&
485
+ numAssignmentsChecked >= maxAssignmentsChecked) {
486
+ truncated = true;
487
+ break;
488
+ }
489
+ const assignment = {
490
+ variables: {},
491
+ operatorAssignments: {},
492
+ };
493
+ for (let i = 0; i < checkedVariableIds.length; i++) {
494
+ assignment.variables[checkedVariableIds[i]] = Boolean(mask & (1 << i));
495
+ }
496
+ const result = evaluateArgument(ctx, assignment, {
497
+ validateFirst: false,
498
+ includeExpressionValues: options?.includeCounterexampleEvaluations ?? false,
499
+ includeDiagnostics: options?.includeCounterexampleEvaluations ?? false,
500
+ });
501
+ if (!result.ok) {
502
+ return {
503
+ ok: false,
504
+ validation: result.validation,
505
+ };
506
+ }
507
+ numAssignmentsChecked += 1;
508
+ if (result.isAdmissibleAssignment === true) {
509
+ numAdmissibleAssignments += 1;
510
+ }
511
+ if (result.isCounterexample === true) {
512
+ counterexamples.push({
513
+ assignment: result.assignment,
514
+ result,
515
+ });
516
+ if (mode === "firstCounterexample") {
517
+ break;
518
+ }
519
+ }
520
+ }
521
+ const foundCounterexample = counterexamples.length > 0;
522
+ const fullyChecked = !truncated &&
523
+ (mode === "exhaustive" ||
524
+ (mode === "firstCounterexample" && !foundCounterexample));
525
+ return {
526
+ ok: true,
527
+ isValid: foundCounterexample ? false : fullyChecked ? true : undefined,
528
+ checkedVariableIds,
529
+ numAssignmentsChecked,
530
+ numAdmissibleAssignments,
531
+ counterexamples,
532
+ truncated,
533
+ };
534
+ }
535
+ //# sourceMappingURL=argument-evaluation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"argument-evaluation.js","sourceRoot":"","sources":["../../../../src/lib/core/evaluation/argument-evaluation.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- // @generated by Peggy 5.0.6.
1
+ // @generated by Peggy 5.1.0.
2
2
  //
3
3
  // https://peggyjs.org/
4
4