@polintpro/proposit-core 0.1.3 → 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.
Files changed (107) hide show
  1. package/dist/cli/commands/analysis.d.ts.map +1 -1
  2. package/dist/cli/commands/analysis.js +87 -13
  3. package/dist/cli/commands/analysis.js.map +1 -1
  4. package/dist/cli/commands/arguments.d.ts.map +1 -1
  5. package/dist/cli/commands/arguments.js +27 -4
  6. package/dist/cli/commands/arguments.js.map +1 -1
  7. package/dist/cli/commands/diff.d.ts +3 -0
  8. package/dist/cli/commands/diff.d.ts.map +1 -0
  9. package/dist/cli/commands/diff.js +46 -0
  10. package/dist/cli/commands/diff.js.map +1 -0
  11. package/dist/cli/commands/premises.d.ts.map +1 -1
  12. package/dist/cli/commands/premises.js +22 -13
  13. package/dist/cli/commands/premises.js.map +1 -1
  14. package/dist/cli/commands/variables.d.ts.map +1 -1
  15. package/dist/cli/commands/variables.js +1 -0
  16. package/dist/cli/commands/variables.js.map +1 -1
  17. package/dist/cli/commands/versionShow.js +2 -2
  18. package/dist/cli/commands/versionShow.js.map +1 -1
  19. package/dist/cli/engine.d.ts +6 -0
  20. package/dist/cli/engine.d.ts.map +1 -1
  21. package/dist/cli/engine.js +41 -8
  22. package/dist/cli/engine.js.map +1 -1
  23. package/dist/cli/output/diffRenderer.d.ts +4 -0
  24. package/dist/cli/output/diffRenderer.d.ts.map +1 -0
  25. package/dist/cli/output/diffRenderer.js +102 -0
  26. package/dist/cli/output/diffRenderer.js.map +1 -0
  27. package/dist/cli/router.d.ts.map +1 -1
  28. package/dist/cli/router.js +1 -0
  29. package/dist/cli/router.js.map +1 -1
  30. package/dist/cli.js +2 -0
  31. package/dist/cli.js.map +1 -1
  32. package/dist/index.d.ts +13 -0
  33. package/dist/index.d.ts.map +1 -1
  34. package/dist/index.js +12 -0
  35. package/dist/index.js.map +1 -1
  36. package/dist/lib/core/ArgumentEngine.d.ts +82 -4
  37. package/dist/lib/core/ArgumentEngine.d.ts.map +1 -1
  38. package/dist/lib/core/ArgumentEngine.js +102 -18
  39. package/dist/lib/core/ArgumentEngine.js.map +1 -1
  40. package/dist/lib/core/ExpressionManager.d.ts +52 -0
  41. package/dist/lib/core/ExpressionManager.d.ts.map +1 -1
  42. package/dist/lib/core/ExpressionManager.js +52 -3
  43. package/dist/lib/core/ExpressionManager.js.map +1 -1
  44. package/dist/lib/core/PremiseManager.d.ts +17 -4
  45. package/dist/lib/core/PremiseManager.d.ts.map +1 -1
  46. package/dist/lib/core/PremiseManager.js +48 -26
  47. package/dist/lib/core/PremiseManager.js.map +1 -1
  48. package/dist/lib/core/VariableManager.d.ts +34 -1
  49. package/dist/lib/core/VariableManager.d.ts.map +1 -1
  50. package/dist/lib/core/VariableManager.js +26 -0
  51. package/dist/lib/core/VariableManager.js.map +1 -1
  52. package/dist/lib/core/diff.d.ts +20 -0
  53. package/dist/lib/core/diff.d.ts.map +1 -0
  54. package/dist/lib/core/diff.js +213 -0
  55. package/dist/lib/core/diff.js.map +1 -0
  56. package/dist/lib/core/evaluation/shared.d.ts +17 -3
  57. package/dist/lib/core/evaluation/shared.d.ts.map +1 -1
  58. package/dist/lib/core/evaluation/shared.js +34 -2
  59. package/dist/lib/core/evaluation/shared.js.map +1 -1
  60. package/dist/lib/core/import.d.ts +14 -0
  61. package/dist/lib/core/import.d.ts.map +1 -0
  62. package/dist/lib/core/import.js +217 -0
  63. package/dist/lib/core/import.js.map +1 -0
  64. package/dist/lib/core/parser/formula-gen.js +850 -0
  65. package/dist/lib/core/parser/formula.d.ts +23 -0
  66. package/dist/lib/core/parser/formula.d.ts.map +1 -0
  67. package/dist/lib/core/parser/formula.js +7 -0
  68. package/dist/lib/core/parser/formula.js.map +1 -0
  69. package/dist/lib/index.d.ts +9 -0
  70. package/dist/lib/index.d.ts.map +1 -1
  71. package/dist/lib/index.js +8 -0
  72. package/dist/lib/index.js.map +1 -1
  73. package/dist/lib/schemata/analysis.d.ts +2 -1
  74. package/dist/lib/schemata/analysis.d.ts.map +1 -1
  75. package/dist/lib/schemata/analysis.js +5 -2
  76. package/dist/lib/schemata/analysis.js.map +1 -1
  77. package/dist/lib/schemata/argument.d.ts +13 -4
  78. package/dist/lib/schemata/argument.d.ts.map +1 -1
  79. package/dist/lib/schemata/argument.js +10 -2
  80. package/dist/lib/schemata/argument.js.map +1 -1
  81. package/dist/lib/schemata/import.d.ts +33 -0
  82. package/dist/lib/schemata/import.d.ts.map +1 -0
  83. package/dist/lib/schemata/import.js +18 -0
  84. package/dist/lib/schemata/import.js.map +1 -0
  85. package/dist/lib/schemata/index.d.ts +1 -0
  86. package/dist/lib/schemata/index.d.ts.map +1 -1
  87. package/dist/lib/schemata/index.js +1 -0
  88. package/dist/lib/schemata/index.js.map +1 -1
  89. package/dist/lib/schemata/propositional.d.ts +13 -2
  90. package/dist/lib/schemata/propositional.d.ts.map +1 -1
  91. package/dist/lib/schemata/propositional.js +25 -7
  92. package/dist/lib/schemata/propositional.js.map +1 -1
  93. package/dist/lib/types/diff.d.ts +56 -0
  94. package/dist/lib/types/diff.d.ts.map +1 -0
  95. package/dist/lib/types/diff.js +2 -0
  96. package/dist/lib/types/diff.js.map +1 -0
  97. package/dist/lib/types/evaluation.d.ts +96 -29
  98. package/dist/lib/types/evaluation.d.ts.map +1 -1
  99. package/dist/lib/utils/collections.d.ts +6 -0
  100. package/dist/lib/utils/collections.d.ts.map +1 -1
  101. package/dist/lib/utils/collections.js +6 -0
  102. package/dist/lib/utils/collections.js.map +1 -1
  103. package/dist/lib/utils.d.ts +7 -0
  104. package/dist/lib/utils.d.ts.map +1 -1
  105. package/dist/lib/utils.js +7 -5
  106. package/dist/lib/utils.js.map +1 -1
  107. package/package.json +14 -2
@@ -1,20 +1,20 @@
1
1
  import { DefaultMap } from "../utils.js";
2
2
  import { sortedCopyById, sortedUnique } from "../utils/collections.js";
3
- import { buildDirectionalVacuity, implicationValue, makeErrorIssue, makeValidationResult, } from "./evaluation/shared.js";
3
+ import { buildDirectionalVacuity, kleeneAnd, kleeneIff, kleeneImplies, kleeneNot, kleeneOr, makeErrorIssue, makeValidationResult, } from "./evaluation/shared.js";
4
4
  import { ExpressionManager } from "./ExpressionManager.js";
5
5
  import { VariableManager } from "./VariableManager.js";
6
6
  export class PremiseManager {
7
7
  id;
8
- title;
8
+ metadata;
9
9
  rootExpressionId;
10
10
  variables;
11
11
  expressions;
12
12
  expressionsByVariableId;
13
13
  argument;
14
- constructor(id, argument, title) {
14
+ constructor(id, argument, metadata) {
15
15
  this.id = id;
16
16
  this.argument = argument;
17
- this.title = title;
17
+ this.metadata = metadata ?? {};
18
18
  this.rootExpressionId = undefined;
19
19
  this.variables = new VariableManager();
20
20
  this.expressions = new ExpressionManager();
@@ -152,10 +152,21 @@ export class PremiseManager {
152
152
  return this.id;
153
153
  }
154
154
  getTitle() {
155
- return this.title;
155
+ return this.metadata.title;
156
156
  }
157
157
  setTitle(title) {
158
- this.title = title;
158
+ if (title === undefined) {
159
+ delete this.metadata.title;
160
+ }
161
+ else {
162
+ this.metadata.title = title;
163
+ }
164
+ }
165
+ getMetadata() {
166
+ return { ...this.metadata };
167
+ }
168
+ setMetadata(metadata) {
169
+ this.metadata = { ...metadata };
159
170
  }
160
171
  getRootExpressionId() {
161
172
  return this.rootExpressionId;
@@ -301,6 +312,17 @@ export class PremiseManager {
301
312
  }
302
313
  return makeValidationResult(issues);
303
314
  }
315
+ /**
316
+ * Evaluates the premise under a three-valued expression assignment.
317
+ *
318
+ * Variable values are looked up in `assignment.variables` using Kleene
319
+ * three-valued logic (`null` = unknown). Missing variables default to `null`.
320
+ * Expressions listed in `assignment.rejectedExpressionIds` evaluate to
321
+ * `false` and their children are not evaluated.
322
+ *
323
+ * For inference premises (`implies`/`iff`), an `inferenceDiagnostic` is
324
+ * computed with three-valued fields unless the root is rejected.
325
+ */
304
326
  evaluate(assignment, options) {
305
327
  const validation = this.validateEvaluability();
306
328
  if (!validation.ok) {
@@ -313,13 +335,9 @@ export class PremiseManager {
313
335
  .toArray()
314
336
  .filter((expr) => expr.type === "variable")
315
337
  .map((expr) => expr.variableId));
316
- const missingVariableIds = referencedVariableIds.filter((variableId) => !(variableId in assignment));
317
- if (missingVariableIds.length > 0) {
318
- throw new Error(`Missing assignment values for variables: ${missingVariableIds.join(", ")}`);
319
- }
320
338
  if (options?.strictUnknownKeys || options?.requireExactCoverage) {
321
339
  const knownVariableIds = new Set(referencedVariableIds);
322
- const unknownKeys = Object.keys(assignment).filter((variableId) => !knownVariableIds.has(variableId));
340
+ const unknownKeys = Object.keys(assignment.variables).filter((variableId) => !knownVariableIds.has(variableId));
323
341
  if (unknownKeys.length > 0) {
324
342
  throw new Error(`Assignment contains unknown variable IDs for premise "${this.id}": ${unknownKeys.join(", ")}`);
325
343
  }
@@ -330,8 +348,12 @@ export class PremiseManager {
330
348
  if (!expression) {
331
349
  throw new Error(`Expression "${expressionId}" was not found.`);
332
350
  }
351
+ if (assignment.rejectedExpressionIds.includes(expression.id)) {
352
+ expressionValues[expression.id] = false;
353
+ return false;
354
+ }
333
355
  if (expression.type === "variable") {
334
- const value = assignment[expression.variableId];
356
+ const value = assignment.variables[expression.variableId] ?? null;
335
357
  expressionValues[expression.id] = value;
336
358
  return value;
337
359
  }
@@ -344,26 +366,24 @@ export class PremiseManager {
344
366
  }
345
367
  switch (expression.operator) {
346
368
  case "not":
347
- value = !evaluateExpression(children[0].id);
369
+ value = kleeneNot(evaluateExpression(children[0].id));
348
370
  break;
349
371
  case "and":
350
- value = children.every((child) => evaluateExpression(child.id));
372
+ value = children.reduce((acc, child) => kleeneAnd(acc, evaluateExpression(child.id)), true);
351
373
  break;
352
374
  case "or":
353
- value = children.some((child) => evaluateExpression(child.id));
375
+ value = children.reduce((acc, child) => kleeneOr(acc, evaluateExpression(child.id)), false);
354
376
  break;
355
377
  case "implies": {
356
378
  const left = children.find((child) => child.position === 0);
357
379
  const right = children.find((child) => child.position === 1);
358
- value = implicationValue(evaluateExpression(left.id), evaluateExpression(right.id));
380
+ value = kleeneImplies(evaluateExpression(left.id), evaluateExpression(right.id));
359
381
  break;
360
382
  }
361
383
  case "iff": {
362
384
  const left = children.find((child) => child.position === 0);
363
385
  const right = children.find((child) => child.position === 1);
364
- value =
365
- evaluateExpression(left.id) ===
366
- evaluateExpression(right.id);
386
+ value = kleeneIff(evaluateExpression(left.id), evaluateExpression(right.id));
367
387
  break;
368
388
  }
369
389
  }
@@ -373,10 +393,12 @@ export class PremiseManager {
373
393
  const rootValue = evaluateExpression(rootExpressionId);
374
394
  const variableValues = {};
375
395
  for (const variableId of referencedVariableIds) {
376
- variableValues[variableId] = assignment[variableId];
396
+ variableValues[variableId] =
397
+ assignment.variables[variableId] ?? null;
377
398
  }
378
399
  let inferenceDiagnostic;
379
- if (this.isInference()) {
400
+ if (this.isInference() &&
401
+ !assignment.rejectedExpressionIds.includes(rootExpressionId)) {
380
402
  const root = this.expressions.getExpression(rootExpressionId);
381
403
  if (root?.type === "operator") {
382
404
  const children = this.expressions.getChildExpressions(root.id);
@@ -395,9 +417,9 @@ export class PremiseManager {
395
417
  rootValue,
396
418
  antecedentTrue: leftValue,
397
419
  consequentTrue: rightValue,
398
- isVacuouslyTrue: !leftValue,
420
+ isVacuouslyTrue: kleeneNot(leftValue),
399
421
  fired: leftValue,
400
- firedAndHeld: leftValue && rightValue,
422
+ firedAndHeld: kleeneAnd(leftValue, rightValue),
401
423
  };
402
424
  }
403
425
  else if (root.operator === "iff") {
@@ -412,8 +434,8 @@ export class PremiseManager {
412
434
  rootValue,
413
435
  leftToRight,
414
436
  rightToLeft,
415
- bothSidesTrue: leftValue && rightValue,
416
- bothSidesFalse: !leftValue && !rightValue,
437
+ bothSidesTrue: kleeneAnd(leftValue, rightValue),
438
+ bothSidesFalse: kleeneAnd(kleeneNot(leftValue), kleeneNot(rightValue)),
417
439
  };
418
440
  }
419
441
  }
@@ -456,7 +478,7 @@ export class PremiseManager {
456
478
  const variables = Array.from(referencedVariableIds).sort();
457
479
  return {
458
480
  id: this.id,
459
- title: this.title,
481
+ metadata: { ...this.metadata },
460
482
  rootExpressionId: this.rootExpressionId,
461
483
  variables,
462
484
  expressions,
@@ -1 +1 @@
1
- {"version":3,"file":"PremiseManager.js","sourceRoot":"","sources":["../../../src/lib/core/PremiseManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PremiseManager.js","sourceRoot":"","sources":["../../../src/lib/core/PremiseManager.ts"],"names":[],"mappings":"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"}
@@ -1,18 +1,51 @@
1
1
  import type { TCorePropositionalVariable } from "../schemata/index.js";
2
+ /**
3
+ * Registry for propositional variables within a single premise.
4
+ *
5
+ * Enforces uniqueness of both variable IDs and symbols. This class is an
6
+ * internal building block used by {@link PremiseManager} and is not part
7
+ * of the public API.
8
+ */
2
9
  export declare class VariableManager {
3
10
  private variables;
4
11
  private variableSymbols;
5
12
  constructor(initialVariables?: TCorePropositionalVariable[]);
13
+ /** Returns all registered variables as an array. */
6
14
  toArray(): TCorePropositionalVariable[];
15
+ /**
16
+ * Registers a variable.
17
+ *
18
+ * @throws If the symbol is already in use.
19
+ * @throws If the ID already exists.
20
+ */
7
21
  addVariable(variable: TCorePropositionalVariable): void;
22
+ /**
23
+ * Removes a variable by ID.
24
+ * @returns The removed variable, or `undefined` if not found.
25
+ */
8
26
  removeVariable(variableId: string): {
9
27
  symbol: string;
28
+ metadata: import("typebox").StaticRecord<[], "Encode", {}, {
29
+ id: import("typebox").TString;
30
+ argumentId: import("typebox").TString;
31
+ argumentVersion: import("typebox").TNumber;
32
+ symbol: import("typebox").TString;
33
+ metadata: import("typebox").TRecord<"^.*$", import("typebox").TString>;
34
+ }, "^.*$", import("typebox").TString>;
35
+ id: string;
10
36
  argumentId: string;
11
37
  argumentVersion: number;
12
- id: string;
13
38
  } | undefined;
39
+ /** Returns `true` if a variable with the given ID is registered. */
14
40
  hasVariable(variableId: string): boolean;
41
+ /** Returns the variable with the given ID, or `undefined` if not found. */
15
42
  getVariable(variableId: string): TCorePropositionalVariable | undefined;
43
+ /**
44
+ * Changes the symbol of an existing variable.
45
+ *
46
+ * @throws If the variable does not exist.
47
+ * @throws If the new symbol is already in use by a different variable.
48
+ */
16
49
  renameVariable(variableId: string, newSymbol: string): void;
17
50
  }
18
51
  //# sourceMappingURL=VariableManager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"VariableManager.d.ts","sourceRoot":"","sources":["../../../src/lib/core/VariableManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,sBAAsB,CAAA;AAEtE,qBAAa,eAAe;IACxB,OAAO,CAAC,SAAS,CAAyC;IAC1D,OAAO,CAAC,eAAe,CAAa;gBAExB,gBAAgB,GAAE,0BAA0B,EAAO;IASxD,OAAO,IAAI,0BAA0B,EAAE;IAIvC,WAAW,CAAC,QAAQ,EAAE,0BAA0B;IAchD,cAAc,CAAC,UAAU,EAAE,MAAM;;;;;;IAWjC,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAIxC,WAAW,CACd,UAAU,EAAE,MAAM,GACnB,0BAA0B,GAAG,SAAS;IAIlC,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;CAerE"}
1
+ {"version":3,"file":"VariableManager.d.ts","sourceRoot":"","sources":["../../../src/lib/core/VariableManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,sBAAsB,CAAA;AAEtE;;;;;;GAMG;AACH,qBAAa,eAAe;IACxB,OAAO,CAAC,SAAS,CAAyC;IAC1D,OAAO,CAAC,eAAe,CAAa;gBAExB,gBAAgB,GAAE,0BAA0B,EAAO;IAS/D,oDAAoD;IAC7C,OAAO,IAAI,0BAA0B,EAAE;IAI9C;;;;;OAKG;IACI,WAAW,CAAC,QAAQ,EAAE,0BAA0B;IAcvD;;;OAGG;IACI,cAAc,CAAC,UAAU,EAAE,MAAM;;;;;;;;;;;;;IAWxC,oEAAoE;IAC7D,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAI/C,2EAA2E;IACpE,WAAW,CACd,UAAU,EAAE,MAAM,GACnB,0BAA0B,GAAG,SAAS;IAIzC;;;;;OAKG;IACI,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;CAerE"}
@@ -1,3 +1,10 @@
1
+ /**
2
+ * Registry for propositional variables within a single premise.
3
+ *
4
+ * Enforces uniqueness of both variable IDs and symbols. This class is an
5
+ * internal building block used by {@link PremiseManager} and is not part
6
+ * of the public API.
7
+ */
1
8
  export class VariableManager {
2
9
  variables;
3
10
  variableSymbols;
@@ -8,9 +15,16 @@ export class VariableManager {
8
15
  this.addVariable(variable);
9
16
  }
10
17
  }
18
+ /** Returns all registered variables as an array. */
11
19
  toArray() {
12
20
  return Array.from(this.variables.values());
13
21
  }
22
+ /**
23
+ * Registers a variable.
24
+ *
25
+ * @throws If the symbol is already in use.
26
+ * @throws If the ID already exists.
27
+ */
14
28
  addVariable(variable) {
15
29
  if (this.variableSymbols.has(variable.symbol)) {
16
30
  throw new Error(`Variable symbol "${variable.symbol}" already exists.`);
@@ -21,6 +35,10 @@ export class VariableManager {
21
35
  this.variables.set(variable.id, variable);
22
36
  this.variableSymbols.add(variable.symbol);
23
37
  }
38
+ /**
39
+ * Removes a variable by ID.
40
+ * @returns The removed variable, or `undefined` if not found.
41
+ */
24
42
  removeVariable(variableId) {
25
43
  const variable = this.variables.get(variableId);
26
44
  if (!variable) {
@@ -30,12 +48,20 @@ export class VariableManager {
30
48
  this.variableSymbols.delete(variable.symbol);
31
49
  return variable;
32
50
  }
51
+ /** Returns `true` if a variable with the given ID is registered. */
33
52
  hasVariable(variableId) {
34
53
  return this.variables.has(variableId);
35
54
  }
55
+ /** Returns the variable with the given ID, or `undefined` if not found. */
36
56
  getVariable(variableId) {
37
57
  return this.variables.get(variableId);
38
58
  }
59
+ /**
60
+ * Changes the symbol of an existing variable.
61
+ *
62
+ * @throws If the variable does not exist.
63
+ * @throws If the new symbol is already in use by a different variable.
64
+ */
39
65
  renameVariable(variableId, newSymbol) {
40
66
  const variable = this.variables.get(variableId);
41
67
  if (!variable) {
@@ -1 +1 @@
1
- {"version":3,"file":"VariableManager.js","sourceRoot":"","sources":["../../../src/lib/core/VariableManager.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,eAAe;IAChB,SAAS,CAAyC;IAClD,eAAe,CAAa;IAEpC,YAAY,mBAAiD,EAAE;QAC3D,IAAI,CAAC,SAAS,GAAG,IAAI,GAAG,EAAE,CAAA;QAC1B,IAAI,CAAC,eAAe,GAAG,IAAI,GAAG,EAAE,CAAA;QAEhC,KAAK,MAAM,QAAQ,IAAI,gBAAgB,EAAE,CAAC;YACtC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAA;QAC9B,CAAC;IACL,CAAC;IAEM,OAAO;QACV,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAA;IAC9C,CAAC;IAEM,WAAW,CAAC,QAAoC;QACnD,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YAC5C,MAAM,IAAI,KAAK,CACX,oBAAoB,QAAQ,CAAC,MAAM,mBAAmB,CACzD,CAAA;QACL,CAAC;QACD,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,qBAAqB,QAAQ,CAAC,EAAE,mBAAmB,CAAC,CAAA;QACxE,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAA;QACzC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;IAC7C,CAAC;IAEM,cAAc,CAAC,UAAkB;QACpC,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;QAC/C,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,OAAO,SAAS,CAAA;QACpB,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;QACjC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;QAC5C,OAAO,QAAQ,CAAA;IACnB,CAAC;IAEM,WAAW,CAAC,UAAkB;QACjC,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;IACzC,CAAC;IAEM,WAAW,CACd,UAAkB;QAElB,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;IACzC,CAAC;IAEM,cAAc,CAAC,UAAkB,EAAE,SAAiB;QACvD,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;QAC/C,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,aAAa,UAAU,mBAAmB,CAAC,CAAA;QAC/D,CAAC;QACD,IACI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC;YACnC,QAAQ,CAAC,MAAM,KAAK,SAAS,EAC/B,CAAC;YACC,MAAM,IAAI,KAAK,CAAC,oBAAoB,SAAS,sBAAsB,CAAC,CAAA;QACxE,CAAC;QACD,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;QAC5C,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;QACnC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,EAAE,EAAE,GAAG,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAA;IACtE,CAAC;CACJ"}
1
+ {"version":3,"file":"VariableManager.js","sourceRoot":"","sources":["../../../src/lib/core/VariableManager.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,MAAM,OAAO,eAAe;IAChB,SAAS,CAAyC;IAClD,eAAe,CAAa;IAEpC,YAAY,mBAAiD,EAAE;QAC3D,IAAI,CAAC,SAAS,GAAG,IAAI,GAAG,EAAE,CAAA;QAC1B,IAAI,CAAC,eAAe,GAAG,IAAI,GAAG,EAAE,CAAA;QAEhC,KAAK,MAAM,QAAQ,IAAI,gBAAgB,EAAE,CAAC;YACtC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAA;QAC9B,CAAC;IACL,CAAC;IAED,oDAAoD;IAC7C,OAAO;QACV,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAA;IAC9C,CAAC;IAED;;;;;OAKG;IACI,WAAW,CAAC,QAAoC;QACnD,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YAC5C,MAAM,IAAI,KAAK,CACX,oBAAoB,QAAQ,CAAC,MAAM,mBAAmB,CACzD,CAAA;QACL,CAAC;QACD,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,qBAAqB,QAAQ,CAAC,EAAE,mBAAmB,CAAC,CAAA;QACxE,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAA;QACzC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;IAC7C,CAAC;IAED;;;OAGG;IACI,cAAc,CAAC,UAAkB;QACpC,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;QAC/C,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,OAAO,SAAS,CAAA;QACpB,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;QACjC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;QAC5C,OAAO,QAAQ,CAAA;IACnB,CAAC;IAED,oEAAoE;IAC7D,WAAW,CAAC,UAAkB;QACjC,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;IACzC,CAAC;IAED,2EAA2E;IACpE,WAAW,CACd,UAAkB;QAElB,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;IACzC,CAAC;IAED;;;;;OAKG;IACI,cAAc,CAAC,UAAkB,EAAE,SAAiB;QACvD,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;QAC/C,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,aAAa,UAAU,mBAAmB,CAAC,CAAA;QAC/D,CAAC;QACD,IACI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC;YACnC,QAAQ,CAAC,MAAM,KAAK,SAAS,EAC/B,CAAC;YACC,MAAM,IAAI,KAAK,CAAC,oBAAoB,SAAS,sBAAsB,CAAC,CAAA;QACxE,CAAC;QACD,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;QAC5C,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;QACnC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,EAAE,EAAE,GAAG,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAA;IACtE,CAAC;CACJ"}
@@ -0,0 +1,20 @@
1
+ import type { TCoreArgument, TCorePremise, TCorePropositionalExpression, TCorePropositionalVariable } from "../schemata/index.js";
2
+ import type { TCoreArgumentDiff, TCoreDiffOptions, TCoreFieldChange } from "../types/diff.js";
3
+ import type { ArgumentEngine } from "./ArgumentEngine.js";
4
+ /** Compares two argument metadata objects and returns field-level changes for `metadata.title` and `metadata.description`. */
5
+ export declare function defaultCompareArgument(before: TCoreArgument, after: TCoreArgument): TCoreFieldChange[];
6
+ /** Compares two variables and returns field-level changes for `symbol` and `metadata`. */
7
+ export declare function defaultCompareVariable(before: TCorePropositionalVariable, after: TCorePropositionalVariable): TCoreFieldChange[];
8
+ /** Compares two premises and returns field-level changes for `metadata.title` and `rootExpressionId`. */
9
+ export declare function defaultComparePremise(before: TCorePremise, after: TCorePremise): TCoreFieldChange[];
10
+ /** Compares two expressions and returns field-level changes for structural fields (`type`, `parentId`, `position`, `variableId`, `operator`). */
11
+ export declare function defaultCompareExpression(before: TCorePropositionalExpression, after: TCorePropositionalExpression): TCoreFieldChange[];
12
+ /**
13
+ * Computes a structural diff between two argument engines.
14
+ *
15
+ * Compares argument metadata, variables, premises (with nested expression
16
+ * diffs), and role assignments. Uses pluggable comparators that default to
17
+ * the `defaultCompare*` functions.
18
+ */
19
+ export declare function diffArguments(engineA: ArgumentEngine, engineB: ArgumentEngine, options?: TCoreDiffOptions): TCoreArgumentDiff;
20
+ //# sourceMappingURL=diff.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diff.d.ts","sourceRoot":"","sources":["../../../src/lib/core/diff.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,aAAa,EACb,YAAY,EACZ,4BAA4B,EAC5B,0BAA0B,EAC7B,MAAM,sBAAsB,CAAA;AAC7B,OAAO,KAAK,EACR,iBAAiB,EACjB,gBAAgB,EAGhB,gBAAgB,EAKnB,MAAM,kBAAkB,CAAA;AACzB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEzD,8HAA8H;AAC9H,wBAAgB,sBAAsB,CAClC,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,aAAa,GACrB,gBAAgB,EAAE,CAiBpB;AAED,0FAA0F;AAC1F,wBAAgB,sBAAsB,CAClC,MAAM,EAAE,0BAA0B,EAClC,KAAK,EAAE,0BAA0B,GAClC,gBAAgB,EAAE,CAiBpB;AAED,yGAAyG;AACzG,wBAAgB,qBAAqB,CACjC,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,YAAY,GACpB,gBAAgB,EAAE,CAiBpB;AAED,iJAAiJ;AACjJ,wBAAgB,wBAAwB,CACpC,MAAM,EAAE,4BAA4B,EACpC,KAAK,EAAE,4BAA4B,GACpC,gBAAgB,EAAE,CA0CpB;AA0HD;;;;;;GAMG;AACH,wBAAgB,aAAa,CACzB,OAAO,EAAE,cAAc,EACvB,OAAO,EAAE,cAAc,EACvB,OAAO,CAAC,EAAE,gBAAgB,GAC3B,iBAAiB,CAmCnB"}
@@ -0,0 +1,213 @@
1
+ /** Compares two argument metadata objects and returns field-level changes for `metadata.title` and `metadata.description`. */
2
+ export function defaultCompareArgument(before, after) {
3
+ const changes = [];
4
+ if (before.metadata.title !== after.metadata.title) {
5
+ changes.push({
6
+ field: "metadata.title",
7
+ before: before.metadata.title,
8
+ after: after.metadata.title,
9
+ });
10
+ }
11
+ if (before.metadata.description !== after.metadata.description) {
12
+ changes.push({
13
+ field: "metadata.description",
14
+ before: before.metadata.description,
15
+ after: after.metadata.description,
16
+ });
17
+ }
18
+ return changes;
19
+ }
20
+ /** Compares two variables and returns field-level changes for `symbol` and `metadata`. */
21
+ export function defaultCompareVariable(before, after) {
22
+ const changes = [];
23
+ if (before.symbol !== after.symbol) {
24
+ changes.push({
25
+ field: "symbol",
26
+ before: before.symbol,
27
+ after: after.symbol,
28
+ });
29
+ }
30
+ if (JSON.stringify(before.metadata) !== JSON.stringify(after.metadata)) {
31
+ changes.push({
32
+ field: "metadata",
33
+ before: before.metadata,
34
+ after: after.metadata,
35
+ });
36
+ }
37
+ return changes;
38
+ }
39
+ /** Compares two premises and returns field-level changes for `metadata.title` and `rootExpressionId`. */
40
+ export function defaultComparePremise(before, after) {
41
+ const changes = [];
42
+ if (before.metadata.title !== after.metadata.title) {
43
+ changes.push({
44
+ field: "metadata.title",
45
+ before: before.metadata.title,
46
+ after: after.metadata.title,
47
+ });
48
+ }
49
+ if (before.rootExpressionId !== after.rootExpressionId) {
50
+ changes.push({
51
+ field: "rootExpressionId",
52
+ before: before.rootExpressionId,
53
+ after: after.rootExpressionId,
54
+ });
55
+ }
56
+ return changes;
57
+ }
58
+ /** Compares two expressions and returns field-level changes for structural fields (`type`, `parentId`, `position`, `variableId`, `operator`). */
59
+ export function defaultCompareExpression(before, after) {
60
+ const changes = [];
61
+ if (before.type !== after.type) {
62
+ changes.push({
63
+ field: "type",
64
+ before: before.type,
65
+ after: after.type,
66
+ });
67
+ }
68
+ if (before.parentId !== after.parentId) {
69
+ changes.push({
70
+ field: "parentId",
71
+ before: before.parentId,
72
+ after: after.parentId,
73
+ });
74
+ }
75
+ if (before.position !== after.position) {
76
+ changes.push({
77
+ field: "position",
78
+ before: before.position,
79
+ after: after.position,
80
+ });
81
+ }
82
+ if (before.type === "variable" && after.type === "variable") {
83
+ if (before.variableId !== after.variableId) {
84
+ changes.push({
85
+ field: "variableId",
86
+ before: before.variableId,
87
+ after: after.variableId,
88
+ });
89
+ }
90
+ }
91
+ if (before.type === "operator" && after.type === "operator") {
92
+ if (before.operator !== after.operator) {
93
+ changes.push({
94
+ field: "operator",
95
+ before: before.operator,
96
+ after: after.operator,
97
+ });
98
+ }
99
+ }
100
+ return changes;
101
+ }
102
+ // ---------------------------------------------------------------------------
103
+ // Entity set diffing helpers
104
+ // ---------------------------------------------------------------------------
105
+ function diffEntitySet(beforeItems, afterItems, compare) {
106
+ const beforeById = new Map(beforeItems.map((item) => [item.id, item]));
107
+ const afterById = new Map(afterItems.map((item) => [item.id, item]));
108
+ const added = [];
109
+ const removed = [];
110
+ const modified = [];
111
+ for (const [id, beforeItem] of beforeById) {
112
+ const afterItem = afterById.get(id);
113
+ if (!afterItem) {
114
+ removed.push(beforeItem);
115
+ continue;
116
+ }
117
+ const changes = compare(beforeItem, afterItem);
118
+ if (changes.length > 0) {
119
+ modified.push({ before: beforeItem, after: afterItem, changes });
120
+ }
121
+ }
122
+ for (const [id, afterItem] of afterById) {
123
+ if (!beforeById.has(id)) {
124
+ added.push(afterItem);
125
+ }
126
+ }
127
+ return { added, removed, modified };
128
+ }
129
+ function diffPremiseSet(beforePremises, afterPremises, comparePremise, compareExpression) {
130
+ const beforeById = new Map(beforePremises.map((p) => [p.id, p]));
131
+ const afterById = new Map(afterPremises.map((p) => [p.id, p]));
132
+ const added = [];
133
+ const removed = [];
134
+ const modified = [];
135
+ for (const [id, beforePremise] of beforeById) {
136
+ const afterPremise = afterById.get(id);
137
+ if (!afterPremise) {
138
+ removed.push(beforePremise);
139
+ continue;
140
+ }
141
+ const premiseChanges = comparePremise(beforePremise, afterPremise);
142
+ const expressionsDiff = diffEntitySet(beforePremise.expressions, afterPremise.expressions, compareExpression);
143
+ const hasExpressionChanges = expressionsDiff.added.length > 0 ||
144
+ expressionsDiff.removed.length > 0 ||
145
+ expressionsDiff.modified.length > 0;
146
+ if (premiseChanges.length > 0 || hasExpressionChanges) {
147
+ modified.push({
148
+ before: beforePremise,
149
+ after: afterPremise,
150
+ changes: premiseChanges,
151
+ expressions: expressionsDiff,
152
+ });
153
+ }
154
+ }
155
+ for (const [id, afterPremise] of afterById) {
156
+ if (!beforeById.has(id)) {
157
+ added.push(afterPremise);
158
+ }
159
+ }
160
+ return { added, removed, modified };
161
+ }
162
+ function diffRoles(beforeConclusion, afterConclusion, beforeSupporting, afterSupporting) {
163
+ const beforeSet = new Set(beforeSupporting);
164
+ const afterSet = new Set(afterSupporting);
165
+ return {
166
+ conclusion: { before: beforeConclusion, after: afterConclusion },
167
+ supportingAdded: afterSupporting.filter((id) => !beforeSet.has(id)),
168
+ supportingRemoved: beforeSupporting.filter((id) => !afterSet.has(id)),
169
+ };
170
+ }
171
+ function collectVariables(engine) {
172
+ const seen = new Set();
173
+ const vars = [];
174
+ for (const pm of engine.listPremises()) {
175
+ for (const v of pm.getVariables()) {
176
+ if (!seen.has(v.id)) {
177
+ seen.add(v.id);
178
+ vars.push(v);
179
+ }
180
+ }
181
+ }
182
+ return vars;
183
+ }
184
+ // ---------------------------------------------------------------------------
185
+ // Main diff function
186
+ // ---------------------------------------------------------------------------
187
+ /**
188
+ * Computes a structural diff between two argument engines.
189
+ *
190
+ * Compares argument metadata, variables, premises (with nested expression
191
+ * diffs), and role assignments. Uses pluggable comparators that default to
192
+ * the `defaultCompare*` functions.
193
+ */
194
+ export function diffArguments(engineA, engineB, options) {
195
+ const dataA = engineA.toData();
196
+ const dataB = engineB.toData();
197
+ const compareArg = options?.compareArgument ?? defaultCompareArgument;
198
+ const compareVar = options?.compareVariable ?? defaultCompareVariable;
199
+ const comparePrem = options?.comparePremise ?? defaultComparePremise;
200
+ const compareExpr = options?.compareExpression ?? defaultCompareExpression;
201
+ const argumentChanges = compareArg(dataA.argument, dataB.argument);
202
+ return {
203
+ argument: {
204
+ before: dataA.argument,
205
+ after: dataB.argument,
206
+ changes: argumentChanges,
207
+ },
208
+ variables: diffEntitySet(collectVariables(engineA), collectVariables(engineB), compareVar),
209
+ premises: diffPremiseSet(dataA.premises, dataB.premises, comparePrem, compareExpr),
210
+ roles: diffRoles(dataA.roles.conclusionPremiseId, dataB.roles.conclusionPremiseId, dataA.roles.supportingPremiseIds, dataB.roles.supportingPremiseIds),
211
+ };
212
+ }
213
+ //# sourceMappingURL=diff.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diff.js","sourceRoot":"","sources":["../../../src/lib/core/diff.ts"],"names":[],"mappings":"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"}