@polintpro/proposit-core 0.3.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (100) hide show
  1. package/README.md +13 -0
  2. package/dist/cli/commands/sources.d.ts +3 -0
  3. package/dist/cli/commands/sources.d.ts.map +1 -0
  4. package/dist/cli/commands/sources.js +175 -0
  5. package/dist/cli/commands/sources.js.map +1 -0
  6. package/dist/cli/config.d.ts +2 -0
  7. package/dist/cli/config.d.ts.map +1 -1
  8. package/dist/cli/config.js +6 -0
  9. package/dist/cli/config.js.map +1 -1
  10. package/dist/cli/engine.d.ts.map +1 -1
  11. package/dist/cli/engine.js +39 -1
  12. package/dist/cli/engine.js.map +1 -1
  13. package/dist/cli/schemata.d.ts +8 -0
  14. package/dist/cli/schemata.d.ts.map +1 -1
  15. package/dist/cli/schemata.js +10 -0
  16. package/dist/cli/schemata.js.map +1 -1
  17. package/dist/cli/storage/sources.d.ts +11 -0
  18. package/dist/cli/storage/sources.d.ts.map +1 -0
  19. package/dist/cli/storage/sources.js +105 -0
  20. package/dist/cli/storage/sources.js.map +1 -0
  21. package/dist/cli.js +2 -0
  22. package/dist/cli.js.map +1 -1
  23. package/dist/extensions/ieee/index.d.ts +3 -0
  24. package/dist/extensions/ieee/index.d.ts.map +1 -0
  25. package/dist/extensions/ieee/index.js +3 -0
  26. package/dist/extensions/ieee/index.js.map +1 -0
  27. package/dist/extensions/ieee/references.d.ts +620 -0
  28. package/dist/extensions/ieee/references.d.ts.map +1 -0
  29. package/dist/extensions/ieee/references.js +450 -0
  30. package/dist/extensions/ieee/references.js.map +1 -0
  31. package/dist/extensions/ieee/source.d.ts +286 -0
  32. package/dist/extensions/ieee/source.d.ts.map +1 -0
  33. package/dist/extensions/ieee/source.js +12 -0
  34. package/dist/extensions/ieee/source.js.map +1 -0
  35. package/dist/lib/consts.d.ts.map +1 -1
  36. package/dist/lib/consts.js +19 -0
  37. package/dist/lib/consts.js.map +1 -1
  38. package/dist/lib/core/argument-engine.d.ts +42 -134
  39. package/dist/lib/core/argument-engine.d.ts.map +1 -1
  40. package/dist/lib/core/argument-engine.js +299 -116
  41. package/dist/lib/core/argument-engine.js.map +1 -1
  42. package/dist/lib/core/change-collector.d.ts +12 -2
  43. package/dist/lib/core/change-collector.d.ts.map +1 -1
  44. package/dist/lib/core/change-collector.js +27 -0
  45. package/dist/lib/core/change-collector.js.map +1 -1
  46. package/dist/lib/core/diff.d.ts +8 -2
  47. package/dist/lib/core/diff.d.ts.map +1 -1
  48. package/dist/lib/core/diff.js +58 -0
  49. package/dist/lib/core/diff.js.map +1 -1
  50. package/dist/lib/core/interfaces/argument-engine.interfaces.d.ts +334 -0
  51. package/dist/lib/core/interfaces/argument-engine.interfaces.d.ts.map +1 -0
  52. package/dist/lib/core/interfaces/argument-engine.interfaces.js +2 -0
  53. package/dist/lib/core/interfaces/argument-engine.interfaces.js.map +1 -0
  54. package/dist/lib/core/interfaces/index.d.ts +5 -0
  55. package/dist/lib/core/interfaces/index.d.ts.map +1 -0
  56. package/dist/lib/core/interfaces/index.js +2 -0
  57. package/dist/lib/core/interfaces/index.js.map +1 -0
  58. package/dist/lib/core/interfaces/premise-engine.interfaces.d.ts +317 -0
  59. package/dist/lib/core/interfaces/premise-engine.interfaces.d.ts.map +1 -0
  60. package/dist/lib/core/interfaces/premise-engine.interfaces.js +2 -0
  61. package/dist/lib/core/interfaces/premise-engine.interfaces.js.map +1 -0
  62. package/dist/lib/core/interfaces/shared.interfaces.d.ts +24 -0
  63. package/dist/lib/core/interfaces/shared.interfaces.d.ts.map +1 -0
  64. package/dist/lib/core/interfaces/shared.interfaces.js +2 -0
  65. package/dist/lib/core/interfaces/shared.interfaces.js.map +1 -0
  66. package/dist/lib/core/interfaces/source-management.interfaces.d.ts +110 -0
  67. package/dist/lib/core/interfaces/source-management.interfaces.d.ts.map +1 -0
  68. package/dist/lib/core/interfaces/source-management.interfaces.js +2 -0
  69. package/dist/lib/core/interfaces/source-management.interfaces.js.map +1 -0
  70. package/dist/lib/core/premise-engine.d.ts +19 -153
  71. package/dist/lib/core/premise-engine.d.ts.map +1 -1
  72. package/dist/lib/core/premise-engine.js +95 -143
  73. package/dist/lib/core/premise-engine.js.map +1 -1
  74. package/dist/lib/core/source-manager.d.ts +109 -0
  75. package/dist/lib/core/source-manager.d.ts.map +1 -0
  76. package/dist/lib/core/source-manager.js +420 -0
  77. package/dist/lib/core/source-manager.js.map +1 -0
  78. package/dist/lib/index.d.ts +4 -1
  79. package/dist/lib/index.d.ts.map +1 -1
  80. package/dist/lib/index.js +2 -1
  81. package/dist/lib/index.js.map +1 -1
  82. package/dist/lib/schemata/index.d.ts +1 -0
  83. package/dist/lib/schemata/index.d.ts.map +1 -1
  84. package/dist/lib/schemata/index.js +1 -0
  85. package/dist/lib/schemata/index.js.map +1 -1
  86. package/dist/lib/schemata/source.d.ts +28 -0
  87. package/dist/lib/schemata/source.d.ts.map +1 -0
  88. package/dist/lib/schemata/source.js +35 -0
  89. package/dist/lib/schemata/source.js.map +1 -0
  90. package/dist/lib/types/checksum.d.ts +6 -0
  91. package/dist/lib/types/checksum.d.ts.map +1 -1
  92. package/dist/lib/types/diff.d.ts +9 -3
  93. package/dist/lib/types/diff.d.ts.map +1 -1
  94. package/dist/lib/types/evaluation.d.ts +1 -1
  95. package/dist/lib/types/evaluation.d.ts.map +1 -1
  96. package/dist/lib/types/mutation.d.ts +7 -3
  97. package/dist/lib/types/mutation.d.ts.map +1 -1
  98. package/dist/lib/types/reactive.d.ts +5 -2
  99. package/dist/lib/types/reactive.d.ts.map +1 -1
  100. package/package.json +5 -1
@@ -1,4 +1,4 @@
1
- import type { TCoreArgument, TCorePremise, TCorePropositionalExpression, TCorePropositionalVariable, TOptionalChecksum } from "../schemata/index.js";
1
+ import type { TCoreArgument, TCorePremise, TCorePropositionalExpression, TCorePropositionalVariable, TOptionalChecksum, TCoreSource, TCoreVariableSourceAssociation, TCoreExpressionSourceAssociation } from "../schemata/index.js";
2
2
  import type { TCoreArgumentEvaluationOptions, TCoreArgumentEvaluationResult, TCoreArgumentRoleState, TCoreExpressionAssignment, TCoreValidationResult, TCoreValidityCheckOptions, TCoreValidityCheckResult } from "../types/evaluation.js";
3
3
  import type { TCoreChecksumConfig } from "../types/checksum.js";
4
4
  import type { TCorePositionConfig } from "../utils/position.js";
@@ -8,16 +8,19 @@ import type { TExpressionInput } from "./expression-manager.js";
8
8
  import { PremiseEngine } from "./premise-engine.js";
9
9
  import type { TPremiseEngineSnapshot } from "./premise-engine.js";
10
10
  import type { TVariableManagerSnapshot } from "./variable-manager.js";
11
+ import type { TPremiseCrud, TVariableManagement, TArgumentExpressionQueries, TArgumentRoleState, TArgumentEvaluation, TArgumentLifecycle, TArgumentIdentity, TSourceManagement, TDisplayable, TChecksummable } from "./interfaces/index.js";
12
+ import type { TSourceManagerSnapshot } from "./source-manager.js";
11
13
  export type TLogicEngineOptions = {
12
14
  checksumConfig?: TCoreChecksumConfig;
13
15
  positionConfig?: TCorePositionConfig;
14
16
  };
15
- export type TArgumentEngineSnapshot<TArg extends TCoreArgument = TCoreArgument, TPremise extends TCorePremise = TCorePremise, TExpr extends TCorePropositionalExpression = TCorePropositionalExpression, TVar extends TCorePropositionalVariable = TCorePropositionalVariable> = {
17
+ export type TArgumentEngineSnapshot<TArg extends TCoreArgument = TCoreArgument, TPremise extends TCorePremise = TCorePremise, TExpr extends TCorePropositionalExpression = TCorePropositionalExpression, TVar extends TCorePropositionalVariable = TCorePropositionalVariable, TSource extends TCoreSource = TCoreSource> = {
16
18
  argument: TOptionalChecksum<TArg>;
17
19
  variables: TVariableManagerSnapshot<TVar>;
18
20
  premises: TPremiseEngineSnapshot<TPremise, TExpr>[];
19
21
  conclusionPremiseId?: string;
20
22
  config?: TLogicEngineOptions;
23
+ sources?: TSourceManagerSnapshot<TSource>;
21
24
  };
22
25
  /**
23
26
  * Manages a propositional logic argument composed of premises, variable
@@ -26,10 +29,11 @@ export type TArgumentEngineSnapshot<TArg extends TCoreArgument = TCoreArgument,
26
29
  * Provides premise CRUD, role management, evaluation of individual
27
30
  * assignments, and exhaustive validity checking via truth-table enumeration.
28
31
  */
29
- export declare class ArgumentEngine<TArg extends TCoreArgument = TCoreArgument, TPremise extends TCorePremise = TCorePremise, TExpr extends TCorePropositionalExpression = TCorePropositionalExpression, TVar extends TCorePropositionalVariable = TCorePropositionalVariable> {
32
+ export declare class ArgumentEngine<TArg extends TCoreArgument = TCoreArgument, TPremise extends TCorePremise = TCorePremise, TExpr extends TCorePropositionalExpression = TCorePropositionalExpression, TVar extends TCorePropositionalVariable = TCorePropositionalVariable, TSource extends TCoreSource = TCoreSource> implements TPremiseCrud<TArg, TPremise, TExpr, TVar, TSource>, TVariableManagement<TArg, TPremise, TExpr, TVar, TSource>, TArgumentExpressionQueries<TExpr>, TArgumentRoleState<TArg, TPremise, TExpr, TVar, TSource>, TArgumentEvaluation, TArgumentLifecycle<TArg, TPremise, TExpr, TVar, TSource>, TArgumentIdentity<TArg>, TSourceManagement<TArg, TPremise, TExpr, TVar, TSource>, TDisplayable, TChecksummable {
30
33
  private argument;
31
34
  private premises;
32
35
  private variables;
36
+ private sourceManager;
33
37
  private conclusionPremiseId;
34
38
  private checksumConfig?;
35
39
  private positionConfig?;
@@ -40,145 +44,78 @@ export declare class ArgumentEngine<TArg extends TCoreArgument = TCoreArgument,
40
44
  private reactiveDirty;
41
45
  private cachedReactiveSnapshot;
42
46
  constructor(argument: TOptionalChecksum<TArg>, options?: TLogicEngineOptions);
43
- /**
44
- * Registers a listener that is called after every mutation.
45
- * Returns an unsubscribe function.
46
- */
47
47
  subscribe: (listener: () => void) => (() => void);
48
48
  protected notifySubscribers(): void;
49
- getSnapshot: () => TReactiveSnapshot<TArg, TPremise, TExpr, TVar>;
50
- protected buildReactiveSnapshot(): TReactiveSnapshot<TArg, TPremise, TExpr, TVar>;
49
+ getSnapshot: () => TReactiveSnapshot<TArg, TPremise, TExpr, TVar, TSource>;
50
+ protected buildReactiveSnapshot(): TReactiveSnapshot<TArg, TPremise, TExpr, TVar, TSource>;
51
51
  private buildVariablesRecord;
52
52
  private buildAllPremisesRecord;
53
53
  private buildPremiseRecord;
54
54
  private markReactiveDirty;
55
- /** Returns a shallow copy of the argument metadata with checksum attached. */
56
55
  getArgument(): TArg;
57
- /** Renders the argument as a multi-line string with role labels for each premise. */
58
56
  toDisplayString(): string;
59
- /**
60
- * Creates a new premise with an auto-generated UUID and registers it
61
- * with this engine.
62
- */
63
- createPremise(extras?: Record<string, unknown>): TCoreMutationResult<PremiseEngine<TArg, TPremise, TExpr, TVar>, TExpr, TVar, TPremise, TArg>;
64
- /**
65
- * Creates a premise with a caller-supplied ID and registers it with
66
- * this engine.
67
- *
68
- * @throws If a premise with the given ID already exists.
69
- */
70
- createPremiseWithId(id: string, extras?: Record<string, unknown>): TCoreMutationResult<PremiseEngine<TArg, TPremise, TExpr, TVar>, TExpr, TVar, TPremise, TArg>;
71
- /**
72
- * Removes a premise and clears any role assignments that reference it.
73
- * Returns the removed premise data, or `undefined` if not found.
74
- */
75
- removePremise(premiseId: string): TCoreMutationResult<TPremise | undefined, TExpr, TVar, TPremise, TArg>;
76
- /** Returns the premise with the given ID, or `undefined` if not found. */
77
- getPremise(premiseId: string): PremiseEngine<TArg, TPremise, TExpr, TVar> | undefined;
78
- /** Returns `true` if a premise with the given ID exists. */
57
+ createPremise(extras?: Record<string, unknown>): TCoreMutationResult<PremiseEngine<TArg, TPremise, TExpr, TVar, TSource>, TExpr, TVar, TPremise, TArg, TSource>;
58
+ createPremiseWithId(id: string, extras?: Record<string, unknown>): TCoreMutationResult<PremiseEngine<TArg, TPremise, TExpr, TVar, TSource>, TExpr, TVar, TPremise, TArg, TSource>;
59
+ removePremise(premiseId: string): TCoreMutationResult<TPremise | undefined, TExpr, TVar, TPremise, TArg, TSource>;
60
+ getPremise(premiseId: string): PremiseEngine<TArg, TPremise, TExpr, TVar, TSource> | undefined;
79
61
  hasPremise(premiseId: string): boolean;
80
- /** Returns all premise IDs in lexicographic order. */
81
62
  listPremiseIds(): string[];
82
- /** Returns all premises in lexicographic ID order. */
83
- listPremises(): PremiseEngine<TArg, TPremise, TExpr, TVar>[];
84
- /**
85
- * Registers a propositional variable for use across all premises.
86
- *
87
- * @throws If `variable.symbol` is already in use.
88
- * @throws If `variable.id` already exists.
89
- * @throws If the variable does not belong to this argument.
90
- */
91
- addVariable(variable: TOptionalChecksum<TVar>): TCoreMutationResult<TVar, TExpr, TVar, TPremise, TArg>;
92
- /**
93
- * Updates fields on an existing variable. Since all premises share the
94
- * same VariableManager, the update is immediately visible everywhere.
95
- *
96
- * @throws If the new symbol is already in use by a different variable.
97
- */
63
+ listPremises(): PremiseEngine<TArg, TPremise, TExpr, TVar, TSource>[];
64
+ addVariable(variable: TOptionalChecksum<TVar>): TCoreMutationResult<TVar, TExpr, TVar, TPremise, TArg, TSource>;
98
65
  updateVariable(variableId: string, updates: {
99
66
  symbol?: string;
100
- }): TCoreMutationResult<TVar | undefined, TExpr, TVar, TPremise, TArg>;
101
- /**
102
- * Removes a variable and cascade-deletes all expressions referencing it
103
- * across every premise (including subtrees and operator collapse).
104
- */
105
- removeVariable(variableId: string): TCoreMutationResult<TVar | undefined, TExpr, TVar, TPremise, TArg>;
106
- /** Returns all registered variables sorted by ID. */
67
+ }): TCoreMutationResult<TVar | undefined, TExpr, TVar, TPremise, TArg, TSource>;
68
+ removeVariable(variableId: string): TCoreMutationResult<TVar | undefined, TExpr, TVar, TPremise, TArg, TSource>;
107
69
  getVariables(): TVar[];
108
- /** Returns the variable with the given ID, or `undefined` if not found. */
109
70
  getVariable(variableId: string): TVar | undefined;
110
- /** Returns `true` if a variable with the given ID exists. */
111
71
  hasVariable(variableId: string): boolean;
112
- /** Returns the variable with the given symbol, or `undefined` if not found. */
113
72
  getVariableBySymbol(symbol: string): TVar | undefined;
114
- /**
115
- * Builds a Map keyed by a caller-supplied function over all variables.
116
- * Useful for indexing by extension fields (e.g. statementId).
117
- * The caller should cache the result — this is O(n) per call.
118
- */
119
73
  buildVariableIndex<K>(keyFn: (v: TVar) => K): Map<K, TVar>;
120
- /** Returns an expression by ID from any premise, or `undefined` if not found. */
121
74
  getExpression(expressionId: string): TExpr | undefined;
122
- /** Returns `true` if an expression with the given ID exists in any premise. */
123
75
  hasExpression(expressionId: string): boolean;
124
- /** Returns the premise ID that contains the given expression, or `undefined`. */
125
76
  getExpressionPremiseId(expressionId: string): string | undefined;
126
- /** Returns the PremiseEngine containing the given expression, or `undefined`. */
127
- findPremiseByExpressionId(expressionId: string): PremiseEngine<TArg, TPremise, TExpr, TVar> | undefined;
128
- /** Returns all expressions across all premises, sorted by ID. */
77
+ findPremiseByExpressionId(expressionId: string): PremiseEngine<TArg, TPremise, TExpr, TVar, TSource> | undefined;
129
78
  getAllExpressions(): TExpr[];
130
- /**
131
- * Returns all expressions that reference the given variable ID,
132
- * across all premises.
133
- */
134
79
  getExpressionsByVariableId(variableId: string): TExpr[];
135
- /** Returns the root expression from each premise that has one. */
136
80
  listRootExpressions(): TExpr[];
137
- /** Returns the current role assignments (conclusion premise ID only; supporting is derived). */
138
81
  getRoleState(): TCoreArgumentRoleState;
139
- /**
140
- * Designates a premise as the argument's conclusion.
141
- *
142
- * @throws If the premise does not exist.
143
- */
144
- setConclusionPremise(premiseId: string): TCoreMutationResult<TCoreArgumentRoleState, TExpr, TVar, TPremise, TArg>;
145
- /** Clears the conclusion designation. */
146
- clearConclusionPremise(): TCoreMutationResult<TCoreArgumentRoleState, TExpr, TVar, TPremise, TArg>;
147
- /** Returns the conclusion premise, or `undefined` if none is set. */
148
- getConclusionPremise(): PremiseEngine<TArg, TPremise, TExpr, TVar> | undefined;
149
- /**
150
- * Returns all supporting premises (derived: inference premises that are
151
- * not the conclusion) in lexicographic ID order.
152
- */
153
- listSupportingPremises(): PremiseEngine<TArg, TPremise, TExpr, TVar>[];
154
- /** Returns a serializable snapshot of the full engine state. */
155
- snapshot(): TArgumentEngineSnapshot<TArg, TPremise, TExpr, TVar>;
82
+ setConclusionPremise(premiseId: string): TCoreMutationResult<TCoreArgumentRoleState, TExpr, TVar, TPremise, TArg, TSource>;
83
+ clearConclusionPremise(): TCoreMutationResult<TCoreArgumentRoleState, TExpr, TVar, TPremise, TArg, TSource>;
84
+ getConclusionPremise(): PremiseEngine<TArg, TPremise, TExpr, TVar, TSource> | undefined;
85
+ listSupportingPremises(): PremiseEngine<TArg, TPremise, TExpr, TVar, TSource>[];
86
+ addSource(source: TOptionalChecksum<TSource>): TCoreMutationResult<TSource, TExpr, TVar, TPremise, TArg, TSource>;
87
+ removeSource(sourceId: string): TCoreMutationResult<TSource | undefined, TExpr, TVar, TPremise, TArg, TSource>;
88
+ addVariableSourceAssociation(sourceId: string, variableId: string): TCoreMutationResult<TCoreVariableSourceAssociation, TExpr, TVar, TPremise, TArg, TSource>;
89
+ removeVariableSourceAssociation(associationId: string): TCoreMutationResult<TCoreVariableSourceAssociation | undefined, TExpr, TVar, TPremise, TArg, TSource>;
90
+ addExpressionSourceAssociation(sourceId: string, expressionId: string, premiseId: string): TCoreMutationResult<TCoreExpressionSourceAssociation, TExpr, TVar, TPremise, TArg, TSource>;
91
+ removeExpressionSourceAssociation(associationId: string): TCoreMutationResult<TCoreExpressionSourceAssociation | undefined, TExpr, TVar, TPremise, TArg, TSource>;
92
+ getSources(): TSource[];
93
+ getSource(sourceId: string): TSource | undefined;
94
+ getAssociationsForSource(sourceId: string): {
95
+ variable: TCoreVariableSourceAssociation[];
96
+ expression: TCoreExpressionSourceAssociation[];
97
+ };
98
+ getAssociationsForVariable(variableId: string): TCoreVariableSourceAssociation[];
99
+ getAssociationsForExpression(expressionId: string): TCoreExpressionSourceAssociation[];
100
+ getAllVariableSourceAssociations(): TCoreVariableSourceAssociation[];
101
+ getAllExpressionSourceAssociations(): TCoreExpressionSourceAssociation[];
102
+ snapshot(): TArgumentEngineSnapshot<TArg, TPremise, TExpr, TVar, TSource>;
156
103
  /** Creates a new ArgumentEngine from a previously captured snapshot. */
157
- static fromSnapshot<TArg extends TCoreArgument = TCoreArgument, TPremise extends TCorePremise = TCorePremise, TExpr extends TCorePropositionalExpression = TCorePropositionalExpression, TVar extends TCorePropositionalVariable = TCorePropositionalVariable>(snapshot: TArgumentEngineSnapshot<TArg, TPremise, TExpr, TVar>): ArgumentEngine<TArg, TPremise, TExpr, TVar>;
104
+ static fromSnapshot<TArg extends TCoreArgument = TCoreArgument, TPremise extends TCorePremise = TCorePremise, TExpr extends TCorePropositionalExpression = TCorePropositionalExpression, TVar extends TCorePropositionalVariable = TCorePropositionalVariable, TSource extends TCoreSource = TCoreSource>(snapshot: TArgumentEngineSnapshot<TArg, TPremise, TExpr, TVar, TSource>): ArgumentEngine<TArg, TPremise, TExpr, TVar, TSource>;
158
105
  /**
159
106
  * Creates a new ArgumentEngine from flat arrays of entities, as typically
160
107
  * stored in a relational database. Expressions are grouped by their
161
108
  * `premiseId` field and loaded in BFS order (roots first, then children
162
109
  * of already-added nodes) to satisfy parent-existence requirements.
163
110
  */
164
- static fromData<TArg extends TCoreArgument = TCoreArgument, TPremise extends TCorePremise = TCorePremise, TExpr extends TCorePropositionalExpression = TCorePropositionalExpression, TVar extends TCorePropositionalVariable = TCorePropositionalVariable>(argument: TOptionalChecksum<TArg>, variables: TOptionalChecksum<TVar>[], premises: TOptionalChecksum<TPremise>[], expressions: TExpressionInput<TExpr>[], roles: TCoreArgumentRoleState, config?: TLogicEngineOptions): ArgumentEngine<TArg, TPremise, TExpr, TVar>;
165
- /** Restores the engine to a previously captured snapshot state. */
166
- rollback(snapshot: TArgumentEngineSnapshot<TArg, TPremise, TExpr, TVar>): void;
167
- /**
168
- * Returns an argument-level checksum combining argument metadata, role
169
- * state, and all premise checksums. Computed lazily -- only recalculated
170
- * when the engine's own state has changed.
171
- */
111
+ static fromData<TArg extends TCoreArgument = TCoreArgument, TPremise extends TCorePremise = TCorePremise, TExpr extends TCorePropositionalExpression = TCorePropositionalExpression, TVar extends TCorePropositionalVariable = TCorePropositionalVariable, TSource extends TCoreSource = TCoreSource>(argument: TOptionalChecksum<TArg>, variables: TOptionalChecksum<TVar>[], premises: TOptionalChecksum<TPremise>[], expressions: TExpressionInput<TExpr>[], roles: TCoreArgumentRoleState, config?: TLogicEngineOptions): ArgumentEngine<TArg, TPremise, TExpr, TVar, TSource>;
112
+ rollback(snapshot: TArgumentEngineSnapshot<TArg, TPremise, TExpr, TVar, TSource>): void;
172
113
  checksum(): string;
173
114
  private computeChecksum;
174
115
  private markDirty;
175
116
  /** Invalidate all premise checksums (e.g. after variable changes). */
176
117
  private markAllPremisesDirty;
177
118
  private attachVariableChecksum;
178
- /**
179
- * Collects all variables referenced by expressions across all premises,
180
- * indexed both by variable ID and by symbol.
181
- */
182
119
  collectReferencedVariables(): {
183
120
  variableIds: string[];
184
121
  byId: Record<string, {
@@ -190,37 +127,8 @@ export declare class ArgumentEngine<TArg extends TCoreArgument = TCoreArgument,
190
127
  premiseIds: string[];
191
128
  }>;
192
129
  };
193
- /**
194
- * Validates that this argument is structurally ready for evaluation:
195
- * a conclusion must be set, all role references must point to existing
196
- * premises, variable ID/symbol mappings must be consistent, and every
197
- * premise must be individually evaluable.
198
- */
199
130
  validateEvaluability(): TCoreValidationResult;
200
- /**
201
- * Evaluates the argument under a three-valued expression assignment.
202
- *
203
- * Variables may be `true`, `false`, or `null` (unknown). Expressions
204
- * listed in `rejectedExpressionIds` evaluate to `false` (children
205
- * skipped). All result flags (`isAdmissibleAssignment`,
206
- * `allSupportingPremisesTrue`, `conclusionTrue`, `isCounterexample`,
207
- * `preservesTruthUnderAssignment`) are three-valued: `null` means
208
- * the result is indeterminate due to unknown variable values.
209
- *
210
- * Returns `{ ok: false }` with validation details if the argument is
211
- * not structurally evaluable.
212
- */
213
131
  evaluate(assignment: TCoreExpressionAssignment, options?: TCoreArgumentEvaluationOptions): TCoreArgumentEvaluationResult;
214
- /**
215
- * Enumerates all 2^n variable assignments and checks for counterexamples.
216
- *
217
- * A counterexample is an admissible assignment where all supporting
218
- * premises are true but the conclusion is false. The argument is valid
219
- * if no counterexamples exist.
220
- *
221
- * Supports early termination (`firstCounterexample` mode) and
222
- * configurable limits on variables and assignments checked.
223
- */
224
132
  checkValidity(options?: TCoreValidityCheckOptions): TCoreValidityCheckResult;
225
133
  }
226
134
  //# sourceMappingURL=argument-engine.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"argument-engine.d.ts","sourceRoot":"","sources":["../../../src/lib/core/argument-engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"argument-engine.d.ts","sourceRoot":"","sources":["../../../src/lib/core/argument-engine.ts"],"names":[],"mappings":"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"}