@polintpro/proposit-core 0.1.6 → 0.1.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.
package/README.md CHANGED
@@ -178,8 +178,13 @@ eng.setConclusionPremise(conclusion.getId())
178
178
 
179
179
  ### Evaluating an argument
180
180
 
181
+ Assignments use `TCoreExpressionAssignment`, which carries both variable truth values (three-valued: `true`, `false`, or `null` for unknown) and a list of rejected expression IDs:
182
+
181
183
  ```typescript
182
- const result = eng.evaluate({ "var-p": true, "var-q": true })
184
+ const result = eng.evaluate({
185
+ variables: { "var-p": true, "var-q": true },
186
+ rejectedExpressionIds: [],
187
+ })
183
188
  if (result.ok) {
184
189
  console.log(result.conclusionTrue) // true
185
190
  console.log(result.allSupportingPremisesTrue) // true
@@ -354,7 +359,7 @@ Checks whether the argument is structurally ready to evaluate. Returns `{ ok, is
354
359
 
355
360
  #### `evaluate(assignment, options?)` → `TArgumentEvaluationResult`
356
361
 
357
- Evaluates all relevant premises under the given variable assignment (`Record<string, boolean>`). Returns per-premise truth values, counterexample status, and an admissibility flag.
362
+ Evaluates all relevant premises under the given expression assignment (`TCoreExpressionAssignment`). The assignment contains `variables` (a `Record<string, boolean | null>`) and `rejectedExpressionIds` (expression IDs that evaluate to `false` with children skipped). Returns per-premise truth values, counterexample status, and an admissibility flag.
358
363
 
359
364
  Options:
360
365
 
@@ -495,6 +500,73 @@ Returns a serialisable snapshot of this premise (`{ id, title, type, rootExpress
495
500
 
496
501
  ---
497
502
 
503
+ ### Standalone Functions
504
+
505
+ #### `diffArguments(engineA, engineB, options?)` → `TCoreArgumentDiff`
506
+
507
+ Compares two `ArgumentEngine` instances and returns a structured diff covering argument metadata, variables, premises (with nested expression diffs), and role changes. Each entity category reports added, removed, and modified items with field-level change details.
508
+
509
+ Options allow plugging custom comparators per entity type via `TCoreDiffOptions`:
510
+
511
+ ```typescript
512
+ import { diffArguments, defaultCompareVariable } from "@polintpro/proposit-core"
513
+
514
+ const diff = diffArguments(engineA, engineB, {
515
+ compareVariable: (before, after) => {
516
+ // Wrap the default comparator with custom logic
517
+ return defaultCompareVariable(before, after)
518
+ },
519
+ })
520
+ ```
521
+
522
+ Default comparators are also exported: `defaultCompareArgument`, `defaultCompareVariable`, `defaultComparePremise`, `defaultCompareExpression`.
523
+
524
+ ---
525
+
526
+ #### `analyzePremiseRelationships(engine, focusedPremiseId)` → `TCorePremiseRelationshipAnalysis`
527
+
528
+ Analyzes how every other premise in the argument relates to a focused premise, classifying each as:
529
+
530
+ | Category | Meaning |
531
+ | --------------- | ------------------------------------------------------------------------ |
532
+ | `supporting` | Consequent feeds into the focused premise's antecedent (helps it fire) |
533
+ | `contradicting` | Infers values that negate the focused premise's antecedent or consequent |
534
+ | `restricting` | Constrains shared variables without clear support or contradiction |
535
+ | `downstream` | Takes the focused premise's consequent as input (inference flows away) |
536
+ | `unrelated` | No variable overlap, even transitively |
537
+
538
+ Each result includes per-variable relationship details and a `transitive` flag.
539
+
540
+ ```typescript
541
+ import { analyzePremiseRelationships } from "@polintpro/proposit-core"
542
+
543
+ const analysis = analyzePremiseRelationships(engine, conclusionPremiseId)
544
+ for (const r of analysis.premises) {
545
+ console.log(`${r.premiseId}: ${r.relationship}`)
546
+ }
547
+ ```
548
+
549
+ ---
550
+
551
+ #### `buildPremiseProfile(premise)` → `TCorePremiseProfile`
552
+
553
+ Builds a profile of a premise's variable appearances, recording each variable's side (`antecedent` or `consequent`) and polarity (`positive` or `negative`, determined by negation depth). Used internally by `analyzePremiseRelationships` but also exported for direct use.
554
+
555
+ ---
556
+
557
+ #### `parseFormula(input)` → `FormulaAST`
558
+
559
+ Parses a logical formula string into an AST. Supports standard logical notation with operators `not`/`¬`, `and`/`∧`, `or`/`∨`, `implies`/`→`, `iff`/`↔`, and parentheses for grouping.
560
+
561
+ ```typescript
562
+ import { parseFormula } from "@polintpro/proposit-core"
563
+ import type { FormulaAST } from "@polintpro/proposit-core"
564
+
565
+ const ast: FormulaAST = parseFormula("(P and Q) implies R")
566
+ ```
567
+
568
+ ---
569
+
498
570
  ## CLI
499
571
 
500
572
  The package ships a command-line interface for managing arguments stored on disk.
@@ -657,6 +729,8 @@ proposit-core <id> <ver> analysis list [--json]
657
729
  proposit-core <id> <ver> analysis show [--file <filename>] [--json]
658
730
  proposit-core <id> <ver> analysis set <symbol> <true|false> [--file <filename>]
659
731
  proposit-core <id> <ver> analysis reset [--file <filename>] [--value <true|false>]
732
+ proposit-core <id> <ver> analysis reject <expression_id> [--file <filename>]
733
+ proposit-core <id> <ver> analysis accept <expression_id> [--file <filename>]
660
734
  proposit-core <id> <ver> analysis validate-assignments [--file <filename>] [--json]
661
735
  proposit-core <id> <ver> analysis delete [--file <filename>] [--confirm]
662
736
  proposit-core <id> <ver> analysis evaluate [--file <filename>] [options]
@@ -668,6 +742,8 @@ proposit-core <id> <ver> analysis export [--json]
668
742
 
669
743
  `--file` defaults to `analysis.json` throughout. Key subcommands:
670
744
 
745
+ - **`reject`** — marks an expression as rejected (it will evaluate to `false` and its children are skipped).
746
+ - **`accept`** — removes an expression from the rejected list (restores normal computation).
671
747
  - **`evaluate`** — resolves symbol→ID, evaluates the argument, reports admissibility, counterexample status, and whether the conclusion is true.
672
748
  - **`check-validity`** — runs the full truth-table search (`--mode first-counterexample|exhaustive`).
673
749
  - **`validate-argument`** — checks structural readiness (conclusion set, inference premises, etc.).
@@ -1 +1 @@
1
- {"version":3,"file":"arguments.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/arguments.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AA0BnC,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAkK/D"}
1
+ {"version":3,"file":"arguments.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/arguments.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AA0BnC,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAqK/D"}
@@ -16,7 +16,7 @@ export function registerArgumentCommands(program) {
16
16
  .description("Create a new argument")
17
17
  .action(async (title, description) => {
18
18
  const id = randomUUID();
19
- const createdAt = Date.now();
19
+ const createdAt = new Date();
20
20
  await writeArgumentMeta({ id, title, description });
21
21
  await writeVersionMeta(id, {
22
22
  version: 0,
@@ -62,7 +62,7 @@ export function registerArgumentCommands(program) {
62
62
  return { meta, vMeta };
63
63
  }));
64
64
  // Sort newest first by createdAt
65
- items.sort((a, b) => b.vMeta.createdAt - a.vMeta.createdAt);
65
+ items.sort((a, b) => b.vMeta.createdAt.getTime() - a.vMeta.createdAt.getTime());
66
66
  if (opts.json) {
67
67
  printJson(items.map(({ meta, vMeta }) => ({
68
68
  id: meta.id,
@@ -75,7 +75,7 @@ export function registerArgumentCommands(program) {
75
75
  }
76
76
  else {
77
77
  for (const { meta, vMeta } of items) {
78
- printLine(`${meta.id} | ${meta.title} (created ${new Date(vMeta.createdAt).toLocaleString()})`);
78
+ printLine(`${meta.id} | ${meta.title} (created ${vMeta.createdAt.toLocaleString()})`);
79
79
  }
80
80
  }
81
81
  });
@@ -115,7 +115,7 @@ export function registerArgumentCommands(program) {
115
115
  await writeVersionMeta(argumentId, {
116
116
  ...vMeta,
117
117
  published: true,
118
- publishedAt: Date.now(),
118
+ publishedAt: new Date(),
119
119
  });
120
120
  // Copy to new version
121
121
  const newV = V + 1;
@@ -123,7 +123,7 @@ export function registerArgumentCommands(program) {
123
123
  // Overwrite new version's meta
124
124
  await writeVersionMeta(argumentId, {
125
125
  version: newV,
126
- createdAt: Date.now(),
126
+ createdAt: new Date(),
127
127
  published: false,
128
128
  });
129
129
  // Remove publishedAt from the new version's meta file if it was copied
@@ -1 +1 @@
1
- {"version":3,"file":"arguments.js","sourceRoot":"","sources":["../../../src/cli/commands/arguments.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"arguments.js","sourceRoot":"","sources":["../../../src/cli/commands/arguments.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"versionShow.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/versionShow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAKnC,wBAAgB,0BAA0B,CACtC,YAAY,EAAE,OAAO,EACrB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,GAChB,IAAI,CA6BN"}
1
+ {"version":3,"file":"versionShow.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/versionShow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAKnC,wBAAgB,0BAA0B,CACtC,YAAY,EAAE,OAAO,EACrB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,GAChB,IAAI,CA2BN"}
@@ -20,10 +20,10 @@ export function registerVersionShowCommand(versionedCmd, argumentId, version) {
20
20
  printLine(`title: ${argMeta.title}`);
21
21
  printLine(`description: ${argMeta.description ?? ""}`);
22
22
  printLine(`version: ${vMeta.version}`);
23
- printLine(`created: ${new Date(vMeta.createdAt).toLocaleString()}`);
23
+ printLine(`created: ${vMeta.createdAt.toLocaleString()}`);
24
24
  printLine(`published: ${vMeta.published}`);
25
25
  if (vMeta.publishedAt !== undefined) {
26
- printLine(`publishedAt: ${new Date(vMeta.publishedAt).toLocaleString()}`);
26
+ printLine(`publishedAt: ${vMeta.publishedAt.toLocaleString()}`);
27
27
  }
28
28
  }
29
29
  });
@@ -1 +1 @@
1
- {"version":3,"file":"versionShow.js","sourceRoot":"","sources":["../../../src/cli/commands/versionShow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAEzD,MAAM,UAAU,0BAA0B,CACtC,YAAqB,EACrB,UAAkB,EAClB,OAAe;IAEf,YAAY;SACP,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,yCAAyC,CAAC;SACtD,MAAM,CAAC,QAAQ,EAAE,gBAAgB,CAAC;SAClC,MAAM,CAAC,KAAK,EAAE,IAAwB,EAAE,EAAE;QACvC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACvC,gBAAgB,CAAC,UAAU,CAAC;YAC5B,eAAe,CAAC,UAAU,EAAE,OAAO,CAAC;SACvC,CAAC,CAAA;QAEF,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACZ,SAAS,CAAC,EAAE,GAAG,OAAO,EAAE,GAAG,KAAK,EAAE,CAAC,CAAA;QACvC,CAAC;aAAM,CAAC;YACJ,SAAS,CAAC,gBAAgB,OAAO,CAAC,EAAE,EAAE,CAAC,CAAA;YACvC,SAAS,CAAC,gBAAgB,OAAO,CAAC,KAAK,EAAE,CAAC,CAAA;YAC1C,SAAS,CAAC,gBAAgB,OAAO,CAAC,WAAW,IAAI,EAAE,EAAE,CAAC,CAAA;YACtD,SAAS,CAAC,gBAAgB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;YAC1C,SAAS,CACL,gBAAgB,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,cAAc,EAAE,EAAE,CAC/D,CAAA;YACD,SAAS,CAAC,gBAAgB,KAAK,CAAC,SAAS,EAAE,CAAC,CAAA;YAC5C,IAAI,KAAK,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;gBAClC,SAAS,CACL,gBAAgB,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,cAAc,EAAE,EAAE,CACjE,CAAA;YACL,CAAC;QACL,CAAC;IACL,CAAC,CAAC,CAAA;AACV,CAAC"}
1
+ {"version":3,"file":"versionShow.js","sourceRoot":"","sources":["../../../src/cli/commands/versionShow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAEzD,MAAM,UAAU,0BAA0B,CACtC,YAAqB,EACrB,UAAkB,EAClB,OAAe;IAEf,YAAY;SACP,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,yCAAyC,CAAC;SACtD,MAAM,CAAC,QAAQ,EAAE,gBAAgB,CAAC;SAClC,MAAM,CAAC,KAAK,EAAE,IAAwB,EAAE,EAAE;QACvC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACvC,gBAAgB,CAAC,UAAU,CAAC;YAC5B,eAAe,CAAC,UAAU,EAAE,OAAO,CAAC;SACvC,CAAC,CAAA;QAEF,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACZ,SAAS,CAAC,EAAE,GAAG,OAAO,EAAE,GAAG,KAAK,EAAE,CAAC,CAAA;QACvC,CAAC;aAAM,CAAC;YACJ,SAAS,CAAC,gBAAgB,OAAO,CAAC,EAAE,EAAE,CAAC,CAAA;YACvC,SAAS,CAAC,gBAAgB,OAAO,CAAC,KAAK,EAAE,CAAC,CAAA;YAC1C,SAAS,CAAC,gBAAgB,OAAO,CAAC,WAAW,IAAI,EAAE,EAAE,CAAC,CAAA;YACtD,SAAS,CAAC,gBAAgB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;YAC1C,SAAS,CAAC,gBAAgB,KAAK,CAAC,SAAS,CAAC,cAAc,EAAE,EAAE,CAAC,CAAA;YAC7D,SAAS,CAAC,gBAAgB,KAAK,CAAC,SAAS,EAAE,CAAC,CAAA;YAC5C,IAAI,KAAK,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;gBAClC,SAAS,CACL,gBAAgB,KAAK,CAAC,WAAW,CAAC,cAAc,EAAE,EAAE,CACvD,CAAA;YACL,CAAC;QACL,CAAC;IACL,CAAC,CAAC,CAAA;AACV,CAAC"}
@@ -175,7 +175,7 @@ export function importArgumentFromYaml(yamlString) {
175
175
  ...(input.metadata.description !== undefined
176
176
  ? { description: input.metadata.description }
177
177
  : {}),
178
- createdAt: Date.now(),
178
+ createdAt: new Date(),
179
179
  published: false,
180
180
  };
181
181
  const engine = new ArgumentEngine(argument);
@@ -1 +1 @@
1
- {"version":3,"file":"import.js","sourceRoot":"","sources":["../../src/cli/import.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"import.js","sourceRoot":"","sources":["../../src/cli/import.ts"],"names":[],"mappings":"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"}
@@ -7,9 +7,9 @@ export declare const CliArgumentMetaSchema: Type.TObject<{
7
7
  export type TCliArgumentMeta = Static<typeof CliArgumentMetaSchema>;
8
8
  export declare const CliArgumentVersionMetaSchema: Type.TObject<{
9
9
  version: Type.TNumber;
10
- createdAt: Type.TNumber;
10
+ createdAt: import("../index.js").TDateType;
11
11
  published: Type.TBoolean;
12
- publishedAt: Type.TOptional<Type.TNumber>;
12
+ publishedAt: Type.TOptional<import("../index.js").TDateType>;
13
13
  }>;
14
14
  export type TCliArgumentVersionMeta = Static<typeof CliArgumentVersionMetaSchema>;
15
15
  export declare const CliArgumentSchema: Type.TIntersect<[Type.TObject<{
@@ -18,9 +18,9 @@ export declare const CliArgumentSchema: Type.TIntersect<[Type.TObject<{
18
18
  }>, Type.TObject<{
19
19
  title: Type.TString;
20
20
  description: Type.TOptional<Type.TString>;
21
- createdAt: Type.TNumber;
21
+ createdAt: import("../index.js").TDateType;
22
22
  published: Type.TBoolean;
23
- publishedAt: Type.TOptional<Type.TNumber>;
23
+ publishedAt: Type.TOptional<import("../index.js").TDateType>;
24
24
  }>]>;
25
25
  export type TCliArgument = Static<typeof CliArgumentSchema>;
26
26
  export declare const CliPremiseMetaSchema: Type.TObject<{
@@ -1,7 +1,7 @@
1
1
  import Type, {} from "typebox";
2
2
  import { CoreArgumentSchema } from "../lib/schemata/argument.js";
3
3
  import { CorePropositionalExpressionSchema } from "../lib/schemata/propositional.js";
4
- import { UUID } from "../lib/schemata/shared.js";
4
+ import { EncodableDate, UUID } from "../lib/schemata/shared.js";
5
5
  // ---------------------------------------------------------------------------
6
6
  // Argument meta (stored in arguments/<id>/meta.json)
7
7
  // Flat fields: { id, title, description? }
@@ -17,9 +17,9 @@ export const CliArgumentMetaSchema = Type.Object({
17
17
  // ---------------------------------------------------------------------------
18
18
  export const CliArgumentVersionMetaSchema = Type.Object({
19
19
  version: Type.Number(),
20
- createdAt: Type.Number(),
20
+ createdAt: EncodableDate,
21
21
  published: Type.Boolean(),
22
- publishedAt: Type.Optional(Type.Number()),
22
+ publishedAt: Type.Optional(EncodableDate),
23
23
  });
24
24
  // ---------------------------------------------------------------------------
25
25
  // Full CLI argument (core identity + CLI-specific flat fields)
@@ -29,9 +29,9 @@ export const CliArgumentSchema = Type.Intersect([
29
29
  Type.Object({
30
30
  title: Type.String(),
31
31
  description: Type.Optional(Type.String()),
32
- createdAt: Type.Number(),
32
+ createdAt: EncodableDate,
33
33
  published: Type.Boolean(),
34
- publishedAt: Type.Optional(Type.Number()),
34
+ publishedAt: Type.Optional(EncodableDate),
35
35
  }),
36
36
  ]);
37
37
  // ---------------------------------------------------------------------------
@@ -1 +1 @@
1
- {"version":3,"file":"schemata.js","sourceRoot":"","sources":["../../src/cli/schemata.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,EAAE,EAAe,MAAM,SAAS,CAAA;AAC3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAA;AAChE,OAAO,EAAE,iCAAiC,EAAE,MAAM,kCAAkC,CAAA;AACpF,OAAO,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAA;AAEhD,8EAA8E;AAC9E,qDAAqD;AACrD,2CAA2C;AAC3C,8EAA8E;AAC9E,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,CAAC,MAAM,CAC5C;IACI,EAAE,EAAE,IAAI;IACR,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE;IACpB,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;CAC5C,EACD,EAAE,oBAAoB,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,CAC1C,CAAA;AAGD,8EAA8E;AAC9E,8DAA8D;AAC9D,kDAAkD;AAClD,8EAA8E;AAC9E,MAAM,CAAC,MAAM,4BAA4B,GAAG,IAAI,CAAC,MAAM,CAAC;IACpD,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE;IACtB,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE;IACxB,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE;IACzB,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;CAC5C,CAAC,CAAA;AAKF,8EAA8E;AAC9E,+DAA+D;AAC/D,8EAA8E;AAC9E,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,CAAC,SAAS,CAAC;IAC5C,kBAAkB;IAClB,IAAI,CAAC,MAAM,CAAC;QACR,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE;QACpB,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACzC,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE;QACxB,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE;QACzB,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;KAC5C,CAAC;CACL,CAAC,CAAA;AAGF,8EAA8E;AAC9E,mDAAmD;AACnD,8BAA8B;AAC9B,8EAA8E;AAC9E,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,CAAC,MAAM,CAC3C;IACI,EAAE,EAAE,IAAI;IACR,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;CACtC,EACD,EAAE,oBAAoB,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,CAC1C,CAAA;AAGD,8EAA8E;AAC9E,mDAAmD;AACnD,gDAAgD;AAChD,8EAA8E;AAC9E,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,CAAC,MAAM,CAAC;IAC5C,gBAAgB,EAAE,IAAI,CAAC,QAAQ,CAC3B,IAAI,CAAC,MAAM,CAAC;QACR,WAAW,EACP,4DAA4D;KACnE,CAAC,CACL;IACD,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;QACxB,WAAW,EAAE,kDAAkD;KAClE,CAAC;IACF,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,iCAAiC,EAAE;QACvD,WAAW,EACP,gEAAgE;KACvE,CAAC;CACL,CAAC,CAAA"}
1
+ {"version":3,"file":"schemata.js","sourceRoot":"","sources":["../../src/cli/schemata.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,EAAE,EAAe,MAAM,SAAS,CAAA;AAC3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAA;AAChE,OAAO,EAAE,iCAAiC,EAAE,MAAM,kCAAkC,CAAA;AACpF,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAA;AAE/D,8EAA8E;AAC9E,qDAAqD;AACrD,2CAA2C;AAC3C,8EAA8E;AAC9E,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,CAAC,MAAM,CAC5C;IACI,EAAE,EAAE,IAAI;IACR,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE;IACpB,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;CAC5C,EACD,EAAE,oBAAoB,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,CAC1C,CAAA;AAGD,8EAA8E;AAC9E,8DAA8D;AAC9D,kDAAkD;AAClD,8EAA8E;AAC9E,MAAM,CAAC,MAAM,4BAA4B,GAAG,IAAI,CAAC,MAAM,CAAC;IACpD,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE;IACtB,SAAS,EAAE,aAAa;IACxB,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE;IACzB,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC;CAC5C,CAAC,CAAA;AAKF,8EAA8E;AAC9E,+DAA+D;AAC/D,8EAA8E;AAC9E,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,CAAC,SAAS,CAAC;IAC5C,kBAAkB;IAClB,IAAI,CAAC,MAAM,CAAC;QACR,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE;QACpB,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACzC,SAAS,EAAE,aAAa;QACxB,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE;QACzB,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC;KAC5C,CAAC;CACL,CAAC,CAAA;AAGF,8EAA8E;AAC9E,mDAAmD;AACnD,8BAA8B;AAC9B,8EAA8E;AAC9E,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,CAAC,MAAM,CAC3C;IACI,EAAE,EAAE,IAAI;IACR,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;CACtC,EACD,EAAE,oBAAoB,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,CAC1C,CAAA;AAGD,8EAA8E;AAC9E,mDAAmD;AACnD,gDAAgD;AAChD,8EAA8E;AAC9E,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,CAAC,MAAM,CAAC;IAC5C,gBAAgB,EAAE,IAAI,CAAC,QAAQ,CAC3B,IAAI,CAAC,MAAM,CAAC;QACR,WAAW,EACP,4DAA4D;KACnE,CAAC,CACL;IACD,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;QACxB,WAAW,EAAE,kDAAkD;KAClE,CAAC;IACF,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,iCAAiC,EAAE;QACvD,WAAW,EACP,gEAAgE;KACvE,CAAC;CACL,CAAC,CAAA"}
package/dist/index.d.ts CHANGED
@@ -10,6 +10,8 @@ export { ArgumentEngine, PremiseManager } from "./lib/index.js";
10
10
  export * from "./lib/schemata/index.js";
11
11
  export * from "./lib/types/diff.js";
12
12
  export { diffArguments, defaultCompareArgument, defaultCompareVariable, defaultComparePremise, defaultCompareExpression, } from "./lib/core/diff.js";
13
+ export * from "./lib/types/relationships.js";
14
+ export { analyzePremiseRelationships, buildPremiseProfile, } from "./lib/core/relationships.js";
13
15
  export { parseFormula } from "./lib/core/parser/formula.js";
14
16
  export type { FormulaAST } from "./lib/core/parser/formula.js";
15
17
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAC/D,cAAc,yBAAyB,CAAA;AACvC,cAAc,qBAAqB,CAAA;AACnC,OAAO,EACH,aAAa,EACb,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,EACrB,wBAAwB,GAC3B,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA;AAC3D,YAAY,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAC/D,cAAc,yBAAyB,CAAA;AACvC,cAAc,qBAAqB,CAAA;AACnC,OAAO,EACH,aAAa,EACb,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,EACrB,wBAAwB,GAC3B,MAAM,oBAAoB,CAAA;AAC3B,cAAc,8BAA8B,CAAA;AAC5C,OAAO,EACH,2BAA2B,EAC3B,mBAAmB,GACtB,MAAM,6BAA6B,CAAA;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA;AAC3D,YAAY,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAA"}
package/dist/index.js CHANGED
@@ -10,5 +10,7 @@ export { ArgumentEngine, PremiseManager } from "./lib/index.js";
10
10
  export * from "./lib/schemata/index.js";
11
11
  export * from "./lib/types/diff.js";
12
12
  export { diffArguments, defaultCompareArgument, defaultCompareVariable, defaultComparePremise, defaultCompareExpression, } from "./lib/core/diff.js";
13
+ export * from "./lib/types/relationships.js";
14
+ export { analyzePremiseRelationships, buildPremiseProfile, } from "./lib/core/relationships.js";
13
15
  export { parseFormula } from "./lib/core/parser/formula.js";
14
16
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAC/D,cAAc,yBAAyB,CAAA;AACvC,cAAc,qBAAqB,CAAA;AACnC,OAAO,EACH,aAAa,EACb,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,EACrB,wBAAwB,GAC3B,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAC/D,cAAc,yBAAyB,CAAA;AACvC,cAAc,qBAAqB,CAAA;AACnC,OAAO,EACH,aAAa,EACb,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,EACrB,wBAAwB,GAC3B,MAAM,oBAAoB,CAAA;AAC3B,cAAc,8BAA8B,CAAA;AAC5C,OAAO,EACH,2BAA2B,EAC3B,mBAAmB,GACtB,MAAM,6BAA6B,CAAA;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA"}
@@ -0,0 +1,15 @@
1
+ import type { ArgumentEngine } from "./ArgumentEngine.js";
2
+ import type { PremiseManager } from "./PremiseManager.js";
3
+ import type { TCorePremiseProfile, TCorePremiseRelationshipAnalysis } from "../types/relationships.js";
4
+ /**
5
+ * Builds a profile of a premise's variable appearances, recording each
6
+ * variable's side (antecedent/consequent) and polarity (positive/negative).
7
+ */
8
+ export declare function buildPremiseProfile(premise: PremiseManager): TCorePremiseProfile;
9
+ /**
10
+ * Analyzes how every other premise in the argument relates to the focused
11
+ * premise, classifying each as supporting, contradicting, restricting,
12
+ * downstream, or unrelated.
13
+ */
14
+ export declare function analyzePremiseRelationships(engine: ArgumentEngine, focusedPremiseId: string): TCorePremiseRelationshipAnalysis;
15
+ //# sourceMappingURL=relationships.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"relationships.d.ts","sourceRoot":"","sources":["../../../src/lib/core/relationships.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACzD,OAAO,KAAK,EAER,mBAAmB,EAGnB,gCAAgC,EAEnC,MAAM,2BAA2B,CAAA;AAuClC;;;GAGG;AACH,wBAAgB,mBAAmB,CAC/B,OAAO,EAAE,cAAc,GACxB,mBAAmB,CAyBrB;AAwPD;;;;GAIG;AACH,wBAAgB,2BAA2B,CACvC,MAAM,EAAE,cAAc,EACtB,gBAAgB,EAAE,MAAM,GACzB,gCAAgC,CA2HlC"}
@@ -0,0 +1,319 @@
1
+ // ── Variable profiling ──────────────────────────────────────────────────
2
+ function collectVariableAppearances(premise, expressionId, side) {
3
+ const appearances = [];
4
+ const stack = [
5
+ { id: expressionId, negationDepth: 0 },
6
+ ];
7
+ while (stack.length > 0) {
8
+ const { id, negationDepth } = stack.pop();
9
+ const expr = premise.getExpression(id);
10
+ if (!expr)
11
+ continue;
12
+ if (expr.type === "variable") {
13
+ appearances.push({
14
+ variableId: expr.variableId,
15
+ side,
16
+ polarity: negationDepth % 2 === 0 ? "positive" : "negative",
17
+ });
18
+ }
19
+ else {
20
+ const nextDepth = expr.type === "operator" && expr.operator === "not"
21
+ ? negationDepth + 1
22
+ : negationDepth;
23
+ for (const child of premise.getChildExpressions(id)) {
24
+ stack.push({ id: child.id, negationDepth: nextDepth });
25
+ }
26
+ }
27
+ }
28
+ return appearances;
29
+ }
30
+ /**
31
+ * Builds a profile of a premise's variable appearances, recording each
32
+ * variable's side (antecedent/consequent) and polarity (positive/negative).
33
+ */
34
+ export function buildPremiseProfile(premise) {
35
+ const premiseId = premise.getId();
36
+ if (!premise.isInference()) {
37
+ return { premiseId, isInference: false, appearances: [] };
38
+ }
39
+ const root = premise.getRootExpression();
40
+ const children = premise.getChildExpressions(root.id);
41
+ const leftChild = children.find((c) => c.position === 0);
42
+ const rightChild = children.find((c) => c.position === 1);
43
+ const appearances = [];
44
+ if (leftChild) {
45
+ appearances.push(...collectVariableAppearances(premise, leftChild.id, "antecedent"));
46
+ }
47
+ if (rightChild) {
48
+ appearances.push(...collectVariableAppearances(premise, rightChild.id, "consequent"));
49
+ }
50
+ return { premiseId, isInference: true, appearances };
51
+ }
52
+ // ── Graph construction ──────────────────────────────────────────────────
53
+ function buildVariableFlowGraph(profiles) {
54
+ const graph = new Map();
55
+ for (const [sourceId, sourceProfile] of profiles) {
56
+ if (!sourceProfile.isInference)
57
+ continue;
58
+ const edges = [];
59
+ const conseqVars = sourceProfile.appearances.filter((a) => a.side === "consequent");
60
+ for (const [targetId, targetProfile] of profiles) {
61
+ if (targetId === sourceId || !targetProfile.isInference)
62
+ continue;
63
+ const anteVars = targetProfile.appearances.filter((a) => a.side === "antecedent");
64
+ const variables = [];
65
+ for (const cv of conseqVars) {
66
+ for (const av of anteVars) {
67
+ if (cv.variableId === av.variableId) {
68
+ variables.push({
69
+ variableId: cv.variableId,
70
+ polarityMatch: cv.polarity === av.polarity,
71
+ });
72
+ }
73
+ }
74
+ }
75
+ if (variables.length > 0) {
76
+ edges.push({ targetPremiseId: targetId, variables });
77
+ }
78
+ }
79
+ graph.set(sourceId, edges);
80
+ }
81
+ return graph;
82
+ }
83
+ function bfsToTarget(graph, sourceId, targetId) {
84
+ const visited = new Set();
85
+ visited.add(sourceId);
86
+ const queue = [];
87
+ // Seed with direct edges from source
88
+ const sourceEdges = graph.get(sourceId) ?? [];
89
+ for (const edge of sourceEdges) {
90
+ const allMatch = edge.variables.every((v) => v.polarityMatch);
91
+ if (edge.targetPremiseId === targetId) {
92
+ return {
93
+ reachable: true,
94
+ polarityMatch: allMatch,
95
+ variableDetails: edge.variables.map((v) => ({
96
+ variableId: v.variableId,
97
+ relationship: v.polarityMatch
98
+ ? "supporting"
99
+ : "contradicting",
100
+ })),
101
+ transitive: false,
102
+ };
103
+ }
104
+ if (!visited.has(edge.targetPremiseId)) {
105
+ visited.add(edge.targetPremiseId);
106
+ queue.push({
107
+ premiseId: edge.targetPremiseId,
108
+ polarityMatch: allMatch,
109
+ entryVariables: edge.variables,
110
+ });
111
+ }
112
+ }
113
+ while (queue.length > 0) {
114
+ const { premiseId, polarityMatch, entryVariables } = queue.shift();
115
+ const edges = graph.get(premiseId) ?? [];
116
+ for (const edge of edges) {
117
+ if (edge.targetPremiseId === targetId) {
118
+ const stepMatch = edge.variables.every((v) => v.polarityMatch);
119
+ // XOR logic: both match or both mismatch = overall match
120
+ const finalMatch = (polarityMatch && stepMatch) ||
121
+ (!polarityMatch && !stepMatch);
122
+ return {
123
+ reachable: true,
124
+ polarityMatch: finalMatch,
125
+ variableDetails: entryVariables.map((v) => ({
126
+ variableId: v.variableId,
127
+ relationship: finalMatch
128
+ ? "supporting"
129
+ : "contradicting",
130
+ })),
131
+ transitive: true,
132
+ };
133
+ }
134
+ if (!visited.has(edge.targetPremiseId)) {
135
+ visited.add(edge.targetPremiseId);
136
+ const stepMatch = edge.variables.every((v) => v.polarityMatch);
137
+ const nextMatch = (polarityMatch && stepMatch) ||
138
+ (!polarityMatch && !stepMatch);
139
+ queue.push({
140
+ premiseId: edge.targetPremiseId,
141
+ polarityMatch: nextMatch,
142
+ entryVariables,
143
+ });
144
+ }
145
+ }
146
+ }
147
+ return {
148
+ reachable: false,
149
+ polarityMatch: true,
150
+ variableDetails: [],
151
+ transitive: false,
152
+ };
153
+ }
154
+ // ── Restricting check ───────────────────────────────────────────────────
155
+ function hasVariableOnBothSides(profile, focusedProfile) {
156
+ const antecedentVarIds = new Set(profile.appearances
157
+ .filter((a) => a.side === "antecedent")
158
+ .map((a) => a.variableId));
159
+ const consequentVarIds = new Set(profile.appearances
160
+ .filter((a) => a.side === "consequent")
161
+ .map((a) => a.variableId));
162
+ const bothSideVarIds = new Set([...antecedentVarIds].filter((id) => consequentVarIds.has(id)));
163
+ const focusedVarIds = new Set(focusedProfile.appearances.map((a) => a.variableId));
164
+ const restricting = [];
165
+ for (const varId of bothSideVarIds) {
166
+ if (focusedVarIds.has(varId)) {
167
+ restricting.push({
168
+ variableId: varId,
169
+ relationship: "restricting",
170
+ });
171
+ }
172
+ }
173
+ return restricting;
174
+ }
175
+ // ── Constraint premise classification ───────────────────────────────────
176
+ function classifyConstraintPremise(premise, focusedProfile, connectedVarIds) {
177
+ const premiseVarIds = new Set(premise.getVariables().map((v) => v.id));
178
+ const focusedVarIds = new Set(focusedProfile.appearances.map((a) => a.variableId));
179
+ const directOverlap = [...premiseVarIds].some((id) => focusedVarIds.has(id));
180
+ const transitiveOverlap = [...premiseVarIds].some((id) => connectedVarIds.has(id));
181
+ if (directOverlap || transitiveOverlap) {
182
+ return {
183
+ premiseId: premise.getId(),
184
+ relationship: "restricting",
185
+ variableDetails: [],
186
+ transitive: !directOverlap && transitiveOverlap,
187
+ };
188
+ }
189
+ return {
190
+ premiseId: premise.getId(),
191
+ relationship: "unrelated",
192
+ variableDetails: [],
193
+ transitive: false,
194
+ };
195
+ }
196
+ // ── Precedence ──────────────────────────────────────────────────────────
197
+ const PRECEDENCE = {
198
+ contradicting: 3,
199
+ restricting: 2,
200
+ supporting: 1,
201
+ };
202
+ function applyPrecedence(details) {
203
+ let highest = "supporting";
204
+ for (const d of details) {
205
+ if (PRECEDENCE[d.relationship] > PRECEDENCE[highest]) {
206
+ highest = d.relationship;
207
+ }
208
+ }
209
+ return highest;
210
+ }
211
+ // ── Main function ───────────────────────────────────────────────────────
212
+ /**
213
+ * Analyzes how every other premise in the argument relates to the focused
214
+ * premise, classifying each as supporting, contradicting, restricting,
215
+ * downstream, or unrelated.
216
+ */
217
+ export function analyzePremiseRelationships(engine, focusedPremiseId) {
218
+ const focusedPremise = engine.getPremise(focusedPremiseId);
219
+ if (!focusedPremise) {
220
+ throw new Error(`Premise "${focusedPremiseId}" does not exist in the argument.`);
221
+ }
222
+ const allPremises = engine.listPremises();
223
+ const otherPremises = allPremises.filter((pm) => pm.getId() !== focusedPremiseId);
224
+ if (otherPremises.length === 0) {
225
+ return { focusedPremiseId, premises: [] };
226
+ }
227
+ // Build profiles for all premises
228
+ const profiles = new Map();
229
+ for (const pm of allPremises) {
230
+ profiles.set(pm.getId(), buildPremiseProfile(pm));
231
+ }
232
+ const focusedProfile = profiles.get(focusedPremiseId);
233
+ // Build variable flow graph (inference premises only)
234
+ const graph = buildVariableFlowGraph(profiles);
235
+ // Collect all variable IDs connected to the focused premise
236
+ // (for constraint classification)
237
+ const connectedVarIds = new Set();
238
+ for (const pm of allPremises) {
239
+ const pmId = pm.getId();
240
+ if (pmId === focusedPremiseId)
241
+ continue;
242
+ const profile = profiles.get(pmId);
243
+ if (!profile.isInference)
244
+ continue;
245
+ const toFocused = bfsToTarget(graph, pmId, focusedPremiseId);
246
+ const fromFocused = bfsToTarget(graph, focusedPremiseId, pmId);
247
+ if (toFocused.reachable || fromFocused.reachable) {
248
+ for (const v of pm.getVariables()) {
249
+ connectedVarIds.add(v.id);
250
+ }
251
+ }
252
+ }
253
+ for (const a of focusedProfile.appearances) {
254
+ connectedVarIds.add(a.variableId);
255
+ }
256
+ // Classify each premise
257
+ const results = [];
258
+ for (const pm of otherPremises) {
259
+ const pmId = pm.getId();
260
+ const profile = profiles.get(pmId);
261
+ // Constraint premises get special handling
262
+ if (!profile.isInference) {
263
+ results.push(classifyConstraintPremise(pm, focusedProfile, connectedVarIds));
264
+ continue;
265
+ }
266
+ // If focused premise is a constraint, all sharing premises are
267
+ // restricting
268
+ if (!focusedProfile.isInference) {
269
+ const focusedVarIds = new Set(focusedPremise.getVariables().map((v) => v.id));
270
+ const pmVarIds = new Set(pm.getVariables().map((v) => v.id));
271
+ const shares = [...pmVarIds].some((id) => focusedVarIds.has(id));
272
+ results.push({
273
+ premiseId: pmId,
274
+ relationship: shares ? "restricting" : "unrelated",
275
+ variableDetails: [],
276
+ transitive: false,
277
+ });
278
+ continue;
279
+ }
280
+ // Check restricting (variable on both sides of source, appearing
281
+ // in focused)
282
+ const restrictingDetails = hasVariableOnBothSides(profile, focusedProfile);
283
+ // Check forward path (source → focused)
284
+ const toFocused = bfsToTarget(graph, pmId, focusedPremiseId);
285
+ // Check reverse path (focused → source) for downstream
286
+ const fromFocused = bfsToTarget(graph, focusedPremiseId, pmId);
287
+ if (restrictingDetails.length > 0 || toFocused.reachable) {
288
+ const allDetails = [
289
+ ...restrictingDetails,
290
+ ...toFocused.variableDetails,
291
+ ];
292
+ const relationship = applyPrecedence(allDetails);
293
+ results.push({
294
+ premiseId: pmId,
295
+ relationship,
296
+ variableDetails: allDetails,
297
+ transitive: toFocused.transitive,
298
+ });
299
+ }
300
+ else if (fromFocused.reachable) {
301
+ results.push({
302
+ premiseId: pmId,
303
+ relationship: "downstream",
304
+ variableDetails: [],
305
+ transitive: fromFocused.transitive,
306
+ });
307
+ }
308
+ else {
309
+ results.push({
310
+ premiseId: pmId,
311
+ relationship: "unrelated",
312
+ variableDetails: [],
313
+ transitive: false,
314
+ });
315
+ }
316
+ }
317
+ return { focusedPremiseId, premises: results };
318
+ }
319
+ //# sourceMappingURL=relationships.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"relationships.js","sourceRoot":"","sources":["../../../src/lib/core/relationships.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,8 @@ export { PremiseManager } from "./core/PremiseManager.js";
7
7
  export * from "./types/evaluation.js";
8
8
  export * from "./types/diff.js";
9
9
  export { diffArguments, defaultCompareArgument, defaultCompareVariable, defaultComparePremise, defaultCompareExpression, } from "./core/diff.js";
10
+ export * from "./types/relationships.js";
11
+ export { analyzePremiseRelationships, buildPremiseProfile, } from "./core/relationships.js";
10
12
  export { parseFormula } from "./core/parser/formula.js";
11
13
  export type { FormulaAST } from "./core/parser/formula.js";
12
14
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AACzD,cAAc,uBAAuB,CAAA;AACrC,cAAc,iBAAiB,CAAA;AAC/B,OAAO,EACH,aAAa,EACb,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,EACrB,wBAAwB,GAC3B,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AACvD,YAAY,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AACzD,cAAc,uBAAuB,CAAA;AACrC,cAAc,iBAAiB,CAAA;AAC/B,OAAO,EACH,aAAa,EACb,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,EACrB,wBAAwB,GAC3B,MAAM,gBAAgB,CAAA;AACvB,cAAc,0BAA0B,CAAA;AACxC,OAAO,EACH,2BAA2B,EAC3B,mBAAmB,GACtB,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AACvD,YAAY,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA"}
package/dist/lib/index.js CHANGED
@@ -7,5 +7,7 @@ export { PremiseManager } from "./core/PremiseManager.js";
7
7
  export * from "./types/evaluation.js";
8
8
  export * from "./types/diff.js";
9
9
  export { diffArguments, defaultCompareArgument, defaultCompareVariable, defaultComparePremise, defaultCompareExpression, } from "./core/diff.js";
10
+ export * from "./types/relationships.js";
11
+ export { analyzePremiseRelationships, buildPremiseProfile, } from "./core/relationships.js";
10
12
  export { parseFormula } from "./core/parser/formula.js";
11
13
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/lib/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AACzD,cAAc,uBAAuB,CAAA;AACrC,cAAc,iBAAiB,CAAA;AAC/B,OAAO,EACH,aAAa,EACb,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,EACrB,wBAAwB,GAC3B,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/lib/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AACzD,cAAc,uBAAuB,CAAA;AACrC,cAAc,iBAAiB,CAAA;AAC/B,OAAO,EACH,aAAa,EACb,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,EACrB,wBAAwB,GAC3B,MAAM,gBAAgB,CAAA;AACvB,cAAc,0BAA0B,CAAA;AACxC,OAAO,EACH,2BAA2B,EAC3B,mBAAmB,GACtB,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA"}
@@ -1,4 +1,28 @@
1
- import Type, { type TSchema, type TSchemaOptions } from "typebox";
1
+ import Type, { type Static, type TSchema, type TSchemaOptions } from "typebox";
2
+ export declare class TDateType extends Type.Base<Date> {
3
+ readonly type: DateConstructor;
4
+ Check(value: unknown): value is Date;
5
+ Errors(value: unknown): object[];
6
+ Convert(value: unknown): Date;
7
+ Clone(): Type.Base<Date>;
8
+ }
9
+ export declare function DateType(): TDateType;
10
+ export declare const EncodableDate: TDateType;
11
+ export declare const JsonPrimitiveSchema: Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull, TDateType]>;
12
+ export type JsonPrimitive = Static<typeof JsonPrimitiveSchema>;
13
+ export declare const JsonValueSchema: Type.TCyclic<{
14
+ JsonValueSchema: Type.TUnion<[Type.TRecord<"^.*$", Type.TRef<"JsonValueSchema">>, Type.TArray<Type.TRef<"JsonValueSchema">>, Type.TString, Type.TNumber, Type.TBoolean, Type.TNull, TDateType]>;
15
+ }, "JsonValueSchema">;
16
+ export declare const JsonObjectSchema: Type.TRecord<"^.*$", Type.TAny>;
17
+ export declare const JsonArraySchema: Type.TArray<Type.TCyclic<{
18
+ JsonValueSchema: Type.TUnion<[Type.TRecord<"^.*$", Type.TRef<"JsonValueSchema">>, Type.TArray<Type.TRef<"JsonValueSchema">>, Type.TString, Type.TNumber, Type.TBoolean, Type.TNull, TDateType]>;
19
+ }, "JsonValueSchema">>;
20
+ export type JsonValue = JsonPrimitive | {
21
+ [key: string]: JsonValue;
22
+ } | JsonValue[];
23
+ export type JsonObject = Record<string, JsonValue>;
24
+ export type JsonArray = JsonValue[];
2
25
  export declare const Nullable: <T extends TSchema>(T: T, options?: Omit<TSchemaOptions, "default">) => Type.TUnion<[T, Type.TNull]>;
3
26
  export declare const UUID: Type.TString;
27
+ export type UUID = Static<typeof UUID>;
4
28
  //# sourceMappingURL=shared.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../src/lib/schemata/shared.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,EAAE,EAAE,KAAK,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,SAAS,CAAA;AAEjE,eAAO,MAAM,QAAQ,GAAI,CAAC,SAAS,OAAO,EACtC,GAAG,CAAC,EACJ,UAAU,IAAI,CAAC,cAAc,EAAE,SAAS,CAAC,iCAG5C,CAAA;AACD,eAAO,MAAM,IAAI,cAAgB,CAAA"}
1
+ {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../src/lib/schemata/shared.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,EAAE,EAAE,KAAK,MAAM,EAAE,KAAK,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,SAAS,CAAA;AAK9E,qBAAa,SAAU,SAAQ,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;IAC1C,SAAgB,IAAI,kBAAO;IAEX,KAAK,CAAC,KAAK,EAAE,OAAO;IAGpB,MAAM,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,EAAE;IAIhC,OAAO,CAAC,KAAK,EAAE,OAAO;IAQtB,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;CAG3C;AACD,wBAAgB,QAAQ,IAAI,SAAS,CAEpC;AACD,eAAO,MAAM,aAAa,WAAa,CAAA;AAKvC,eAAO,MAAM,mBAAmB,iFAM9B,CAAA;AACF,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,mBAAmB,CAAC,CAAA;AAE9D,eAAO,MAAM,eAAe;;qBAa3B,CAAA;AAED,eAAO,MAAM,gBAAgB,iCAAyC,CAAA;AAEtE,eAAO,MAAM,eAAe;;sBAA8B,CAAA;AAI1D,MAAM,MAAM,SAAS,GACf,aAAa,GACb;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,GAC5B,SAAS,EAAE,CAAA;AACjB,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;AAClD,MAAM,MAAM,SAAS,GAAG,SAAS,EAAE,CAAA;AAKnC,eAAO,MAAM,QAAQ,GAAI,CAAC,SAAS,OAAO,EACtC,GAAG,CAAC,EACJ,UAAU,IAAI,CAAC,cAAc,EAAE,SAAS,CAAC,iCAG5C,CAAA;AACD,eAAO,MAAM,IAAI,cAAgB,CAAA;AACjC,MAAM,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,IAAI,CAAC,CAAA"}
@@ -1,4 +1,61 @@
1
1
  import Type, {} from "typebox";
2
+ // ---------------------------------------------------------------------------
3
+ // EncodableDate — custom TypeBox type for Date values
4
+ // ---------------------------------------------------------------------------
5
+ export class TDateType extends Type.Base {
6
+ type = Date;
7
+ Check(value) {
8
+ return value instanceof Date;
9
+ }
10
+ Errors(value) {
11
+ if (this.Check(value))
12
+ return [];
13
+ return [{ message: "Invalid date", value }];
14
+ }
15
+ Convert(value) {
16
+ if (this.Check(value))
17
+ return value;
18
+ if (typeof value === "string" || typeof value === "number") {
19
+ const date = new Date(value);
20
+ if (this.Check(date))
21
+ return date;
22
+ }
23
+ throw new Error("Cannot convert value to Date");
24
+ }
25
+ Clone() {
26
+ return new TDateType();
27
+ }
28
+ }
29
+ export function DateType() {
30
+ return new TDateType();
31
+ }
32
+ export const EncodableDate = DateType();
33
+ // ---------------------------------------------------------------------------
34
+ // JSON value schemata
35
+ // ---------------------------------------------------------------------------
36
+ export const JsonPrimitiveSchema = Type.Union([
37
+ Type.String(),
38
+ Type.Number(),
39
+ Type.Boolean(),
40
+ Type.Null(),
41
+ EncodableDate,
42
+ ]);
43
+ export const JsonValueSchema = Type.Cyclic({
44
+ JsonValueSchema: Type.Union([
45
+ Type.Record(Type.String(), Type.Ref("JsonValueSchema")),
46
+ Type.Array(Type.Ref("JsonValueSchema")),
47
+ Type.String(),
48
+ Type.Number(),
49
+ Type.Boolean(),
50
+ Type.Null(),
51
+ EncodableDate,
52
+ ]),
53
+ }, "JsonValueSchema");
54
+ export const JsonObjectSchema = Type.Record(Type.String(), Type.Any());
55
+ export const JsonArraySchema = Type.Array(JsonValueSchema);
56
+ // ---------------------------------------------------------------------------
57
+ // Helpers
58
+ // ---------------------------------------------------------------------------
2
59
  export const Nullable = (T, options) => {
3
60
  return Type.Union([T, Type.Null()], { ...options, default: null });
4
61
  };
@@ -1 +1 @@
1
- {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../src/lib/schemata/shared.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,EAAE,EAAqC,MAAM,SAAS,CAAA;AAEjE,MAAM,CAAC,MAAM,QAAQ,GAAG,CACpB,CAAI,EACJ,OAAyC,EAC3C,EAAE;IACA,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,GAAG,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;AACtE,CAAC,CAAA;AACD,MAAM,CAAC,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,EAAE,CAAA,CAAC,sDAAsD"}
1
+ {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../src/lib/schemata/shared.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,EAAE,EAAkD,MAAM,SAAS,CAAA;AAE9E,8EAA8E;AAC9E,sDAAsD;AACtD,8EAA8E;AAC9E,MAAM,OAAO,SAAU,SAAQ,IAAI,CAAC,IAAU;IAC1B,IAAI,GAAG,IAAI,CAAA;IAEX,KAAK,CAAC,KAAc;QAChC,OAAO,KAAK,YAAY,IAAI,CAAA;IAChC,CAAC;IACe,MAAM,CAAC,KAAc;QACjC,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;YAAE,OAAO,EAAE,CAAA;QAChC,OAAO,CAAC,EAAE,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,CAAA;IAC/C,CAAC;IACe,OAAO,CAAC,KAAc;QAClC,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAA;QACnC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YACzD,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAA;YAC5B,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;gBAAE,OAAO,IAAI,CAAA;QACrC,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAA;IACnD,CAAC;IACe,KAAK;QACjB,OAAO,IAAI,SAAS,EAAE,CAAA;IAC1B,CAAC;CACJ;AACD,MAAM,UAAU,QAAQ;IACpB,OAAO,IAAI,SAAS,EAAE,CAAA;AAC1B,CAAC;AACD,MAAM,CAAC,MAAM,aAAa,GAAG,QAAQ,EAAE,CAAA;AAEvC,8EAA8E;AAC9E,sBAAsB;AACtB,8EAA8E;AAC9E,MAAM,CAAC,MAAM,mBAAmB,GAAG,IAAI,CAAC,KAAK,CAAC;IAC1C,IAAI,CAAC,MAAM,EAAE;IACb,IAAI,CAAC,MAAM,EAAE;IACb,IAAI,CAAC,OAAO,EAAE;IACd,IAAI,CAAC,IAAI,EAAE;IACX,aAAa;CAChB,CAAC,CAAA;AAGF,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,CAAC,MAAM,CACtC;IACI,eAAe,EAAE,IAAI,CAAC,KAAK,CAAC;QACxB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QACvD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QACvC,IAAI,CAAC,MAAM,EAAE;QACb,IAAI,CAAC,MAAM,EAAE;QACb,IAAI,CAAC,OAAO,EAAE;QACd,IAAI,CAAC,IAAI,EAAE;QACX,aAAa;KAChB,CAAC;CACL,EACD,iBAAiB,CACpB,CAAA;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAA;AAEtE,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAA;AAW1D,8EAA8E;AAC9E,UAAU;AACV,8EAA8E;AAC9E,MAAM,CAAC,MAAM,QAAQ,GAAG,CACpB,CAAI,EACJ,OAAyC,EAC3C,EAAE;IACA,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,GAAG,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;AACtE,CAAC,CAAA;AACD,MAAM,CAAC,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,EAAE,CAAA,CAAC,sDAAsD"}
@@ -0,0 +1,36 @@
1
+ /** Polarity of a variable within an expression subtree. */
2
+ export type TCoreVariablePolarity = "positive" | "negative";
3
+ /** Which side of an inference premise a variable appears on. */
4
+ export type TCorePremiseSide = "antecedent" | "consequent";
5
+ /** A single variable appearance within a premise, recording its side and polarity. */
6
+ export interface TCoreVariableAppearance {
7
+ variableId: string;
8
+ side: TCorePremiseSide;
9
+ polarity: TCoreVariablePolarity;
10
+ }
11
+ /** Profile of a premise's variable appearances, split by antecedent/consequent. */
12
+ export interface TCorePremiseProfile {
13
+ premiseId: string;
14
+ isInference: boolean;
15
+ appearances: TCoreVariableAppearance[];
16
+ }
17
+ /** The five relationship categories a premise can have relative to a focused premise. */
18
+ export type TCorePremiseRelationshipType = "supporting" | "contradicting" | "restricting" | "downstream" | "unrelated";
19
+ /** Per-variable relationship detail explaining why a variable contributes to the classification. */
20
+ export interface TCoreVariableRelationship {
21
+ variableId: string;
22
+ relationship: "supporting" | "contradicting" | "restricting";
23
+ }
24
+ /** Classification result for a single premise relative to the focused premise. */
25
+ export interface TCorePremiseRelationResult {
26
+ premiseId: string;
27
+ relationship: TCorePremiseRelationshipType;
28
+ variableDetails: TCoreVariableRelationship[];
29
+ transitive: boolean;
30
+ }
31
+ /** Top-level result from `analyzePremiseRelationships`. */
32
+ export interface TCorePremiseRelationshipAnalysis {
33
+ focusedPremiseId: string;
34
+ premises: TCorePremiseRelationResult[];
35
+ }
36
+ //# sourceMappingURL=relationships.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"relationships.d.ts","sourceRoot":"","sources":["../../../src/lib/types/relationships.ts"],"names":[],"mappings":"AAAA,2DAA2D;AAC3D,MAAM,MAAM,qBAAqB,GAAG,UAAU,GAAG,UAAU,CAAA;AAE3D,gEAAgE;AAChE,MAAM,MAAM,gBAAgB,GAAG,YAAY,GAAG,YAAY,CAAA;AAE1D,sFAAsF;AACtF,MAAM,WAAW,uBAAuB;IACpC,UAAU,EAAE,MAAM,CAAA;IAClB,IAAI,EAAE,gBAAgB,CAAA;IACtB,QAAQ,EAAE,qBAAqB,CAAA;CAClC;AAED,mFAAmF;AACnF,MAAM,WAAW,mBAAmB;IAChC,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,OAAO,CAAA;IACpB,WAAW,EAAE,uBAAuB,EAAE,CAAA;CACzC;AAED,yFAAyF;AACzF,MAAM,MAAM,4BAA4B,GAClC,YAAY,GACZ,eAAe,GACf,aAAa,GACb,YAAY,GACZ,WAAW,CAAA;AAEjB,oGAAoG;AACpG,MAAM,WAAW,yBAAyB;IACtC,UAAU,EAAE,MAAM,CAAA;IAClB,YAAY,EAAE,YAAY,GAAG,eAAe,GAAG,aAAa,CAAA;CAC/D;AAED,kFAAkF;AAClF,MAAM,WAAW,0BAA0B;IACvC,SAAS,EAAE,MAAM,CAAA;IACjB,YAAY,EAAE,4BAA4B,CAAA;IAC1C,eAAe,EAAE,yBAAyB,EAAE,CAAA;IAC5C,UAAU,EAAE,OAAO,CAAA;CACtB;AAED,2DAA2D;AAC3D,MAAM,WAAW,gCAAgC;IAC7C,gBAAgB,EAAE,MAAM,CAAA;IACxB,QAAQ,EAAE,0BAA0B,EAAE,CAAA;CACzC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=relationships.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"relationships.js","sourceRoot":"","sources":["../../../src/lib/types/relationships.ts"],"names":[],"mappings":""}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@polintpro/proposit-core",
3
- "version": "0.1.6",
3
+ "version": "0.1.8",
4
4
  "description": "Core engine for building and manipulating propositional logic arguments.",
5
5
  "license": "MIT",
6
6
  "keywords": [