@polintpro/proposit-core 0.2.6 → 0.2.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. package/README.md +164 -4
  2. package/dist/cli/commands/expressions.d.ts.map +1 -1
  3. package/dist/cli/commands/expressions.js +15 -3
  4. package/dist/cli/commands/expressions.js.map +1 -1
  5. package/dist/cli/commands/premises.js +2 -2
  6. package/dist/cli/engine.d.ts +1 -1
  7. package/dist/cli/engine.d.ts.map +1 -1
  8. package/dist/cli/engine.js +5 -5
  9. package/dist/cli/engine.js.map +1 -1
  10. package/dist/cli/import.d.ts +1 -1
  11. package/dist/cli/import.js +1 -1
  12. package/dist/index.d.ts +1 -16
  13. package/dist/index.d.ts.map +1 -1
  14. package/dist/index.js +1 -12
  15. package/dist/index.js.map +1 -1
  16. package/dist/lib/consts.d.ts.map +1 -1
  17. package/dist/lib/consts.js +1 -6
  18. package/dist/lib/consts.js.map +1 -1
  19. package/dist/lib/core/ArgumentEngine.d.ts +35 -5
  20. package/dist/lib/core/ArgumentEngine.d.ts.map +1 -1
  21. package/dist/lib/core/ArgumentEngine.js +104 -9
  22. package/dist/lib/core/ArgumentEngine.js.map +1 -1
  23. package/dist/lib/core/ExpressionManager.d.ts +3 -3
  24. package/dist/lib/core/ExpressionManager.d.ts.map +1 -1
  25. package/dist/lib/core/ExpressionManager.js +1 -1
  26. package/dist/lib/core/ExpressionManager.js.map +1 -1
  27. package/dist/lib/core/PremiseEngine.d.ts +12 -7
  28. package/dist/lib/core/PremiseEngine.d.ts.map +1 -1
  29. package/dist/lib/core/PremiseEngine.js +58 -36
  30. package/dist/lib/core/PremiseEngine.js.map +1 -1
  31. package/dist/lib/core/VariableManager.d.ts +5 -3
  32. package/dist/lib/core/VariableManager.d.ts.map +1 -1
  33. package/dist/lib/core/VariableManager.js +16 -9
  34. package/dist/lib/core/VariableManager.js.map +1 -1
  35. package/dist/lib/core/diff.d.ts +3 -3
  36. package/dist/lib/core/diff.d.ts.map +1 -1
  37. package/dist/lib/core/diff.js +12 -16
  38. package/dist/lib/core/diff.js.map +1 -1
  39. package/dist/lib/core/evaluation/kleene.d.ts +12 -0
  40. package/dist/lib/core/evaluation/kleene.d.ts.map +1 -0
  41. package/dist/lib/core/evaluation/kleene.js +29 -0
  42. package/dist/lib/core/evaluation/kleene.js.map +1 -0
  43. package/dist/lib/core/evaluation/validation.d.ts +10 -0
  44. package/dist/lib/core/evaluation/validation.d.ts.map +1 -0
  45. package/dist/lib/core/evaluation/validation.js +28 -0
  46. package/dist/lib/core/evaluation/validation.js.map +1 -0
  47. package/dist/lib/core/relationships.d.ts +2 -2
  48. package/dist/lib/index.d.ts +9 -8
  49. package/dist/lib/index.d.ts.map +1 -1
  50. package/dist/lib/index.js +4 -3
  51. package/dist/lib/index.js.map +1 -1
  52. package/dist/lib/schemata/propositional.d.ts +0 -32
  53. package/dist/lib/schemata/propositional.d.ts.map +1 -1
  54. package/dist/lib/schemata/propositional.js +1 -10
  55. package/dist/lib/schemata/propositional.js.map +1 -1
  56. package/dist/lib/types/checksum.d.ts +1 -1
  57. package/dist/lib/types/checksum.d.ts.map +1 -1
  58. package/dist/lib/utils/defaultMap.d.ts +17 -0
  59. package/dist/lib/utils/defaultMap.d.ts.map +1 -0
  60. package/dist/lib/utils/defaultMap.js +33 -0
  61. package/dist/lib/utils/defaultMap.js.map +1 -0
  62. package/package.json +1 -1
@@ -0,0 +1,29 @@
1
+ /** Kleene three-valued NOT: null propagates. */
2
+ export function kleeneNot(a) {
3
+ return a === null ? null : !a;
4
+ }
5
+ /** Kleene three-valued AND: false dominates, null propagates. */
6
+ export function kleeneAnd(a, b) {
7
+ if (a === false || b === false)
8
+ return false;
9
+ if (a === null || b === null)
10
+ return null;
11
+ return true;
12
+ }
13
+ /** Kleene three-valued OR: true dominates, null propagates. */
14
+ export function kleeneOr(a, b) {
15
+ if (a === true || b === true)
16
+ return true;
17
+ if (a === null || b === null)
18
+ return null;
19
+ return false;
20
+ }
21
+ /** Kleene three-valued material implication: NOT a OR b. */
22
+ export function kleeneImplies(a, b) {
23
+ return kleeneOr(kleeneNot(a), b);
24
+ }
25
+ /** Kleene three-valued biconditional: (a -> b) AND (b -> a). */
26
+ export function kleeneIff(a, b) {
27
+ return kleeneAnd(kleeneImplies(a, b), kleeneImplies(b, a));
28
+ }
29
+ //# sourceMappingURL=kleene.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kleene.js","sourceRoot":"","sources":["../../../../src/lib/core/evaluation/kleene.ts"],"names":[],"mappings":"AAEA,gDAAgD;AAChD,MAAM,UAAU,SAAS,CAAC,CAAsB;IAC5C,OAAO,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AACjC,CAAC;AAED,iEAAiE;AACjE,MAAM,UAAU,SAAS,CACrB,CAAsB,EACtB,CAAsB;IAEtB,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,KAAK;QAAE,OAAO,KAAK,CAAA;IAC5C,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,IAAI;QAAE,OAAO,IAAI,CAAA;IACzC,OAAO,IAAI,CAAA;AACf,CAAC;AAED,+DAA+D;AAC/D,MAAM,UAAU,QAAQ,CACpB,CAAsB,EACtB,CAAsB;IAEtB,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,IAAI;QAAE,OAAO,IAAI,CAAA;IACzC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,IAAI;QAAE,OAAO,IAAI,CAAA;IACzC,OAAO,KAAK,CAAA;AAChB,CAAC;AAED,4DAA4D;AAC5D,MAAM,UAAU,aAAa,CACzB,CAAsB,EACtB,CAAsB;IAEtB,OAAO,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;AACpC,CAAC;AAED,gEAAgE;AAChE,MAAM,UAAU,SAAS,CACrB,CAAsB,EACtB,CAAsB;IAEtB,OAAO,SAAS,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;AAC9D,CAAC"}
@@ -0,0 +1,10 @@
1
+ import type { TCoreDirectionalVacuity, TCoreTrivalentValue, TCoreValidationIssue, TCoreValidationResult } from "../../types/evaluation.js";
2
+ /** Creates a validation result, setting `ok` based on whether any error-severity issues exist. */
3
+ export declare function makeValidationResult(issues: TCoreValidationIssue[]): TCoreValidationResult;
4
+ /** Creates a validation issue with `severity: "error"`. */
5
+ export declare function makeErrorIssue(issue: Omit<TCoreValidationIssue, "severity">): TCoreValidationIssue;
6
+ /** Computes Kleene three-valued material implication: `!antecedent || consequent`. */
7
+ export declare function implicationValue(antecedent: TCoreTrivalentValue, consequent: TCoreTrivalentValue): TCoreTrivalentValue;
8
+ /** Builds a directional vacuity diagnostic for one direction of an implication. */
9
+ export declare function buildDirectionalVacuity(antecedentTrue: TCoreTrivalentValue, consequentTrue: TCoreTrivalentValue): TCoreDirectionalVacuity;
10
+ //# sourceMappingURL=validation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../../../src/lib/core/evaluation/validation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,uBAAuB,EACvB,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACxB,MAAM,2BAA2B,CAAA;AAGlC,kGAAkG;AAClG,wBAAgB,oBAAoB,CAChC,MAAM,EAAE,oBAAoB,EAAE,GAC/B,qBAAqB,CAKvB;AAED,2DAA2D;AAC3D,wBAAgB,cAAc,CAC1B,KAAK,EAAE,IAAI,CAAC,oBAAoB,EAAE,UAAU,CAAC,GAC9C,oBAAoB,CAEtB;AAED,sFAAsF;AACtF,wBAAgB,gBAAgB,CAC5B,UAAU,EAAE,mBAAmB,EAC/B,UAAU,EAAE,mBAAmB,GAChC,mBAAmB,CAErB;AAED,mFAAmF;AACnF,wBAAgB,uBAAuB,CACnC,cAAc,EAAE,mBAAmB,EACnC,cAAc,EAAE,mBAAmB,GACpC,uBAAuB,CASzB"}
@@ -0,0 +1,28 @@
1
+ import { kleeneAnd, kleeneImplies, kleeneNot } from "./kleene.js";
2
+ /** Creates a validation result, setting `ok` based on whether any error-severity issues exist. */
3
+ export function makeValidationResult(issues) {
4
+ return {
5
+ ok: issues.every((issue) => issue.severity !== "error"),
6
+ issues,
7
+ };
8
+ }
9
+ /** Creates a validation issue with `severity: "error"`. */
10
+ export function makeErrorIssue(issue) {
11
+ return { severity: "error", ...issue };
12
+ }
13
+ /** Computes Kleene three-valued material implication: `!antecedent || consequent`. */
14
+ export function implicationValue(antecedent, consequent) {
15
+ return kleeneImplies(antecedent, consequent);
16
+ }
17
+ /** Builds a directional vacuity diagnostic for one direction of an implication. */
18
+ export function buildDirectionalVacuity(antecedentTrue, consequentTrue) {
19
+ const implication = implicationValue(antecedentTrue, consequentTrue);
20
+ return {
21
+ antecedentTrue,
22
+ consequentTrue,
23
+ implicationValue: implication,
24
+ isVacuouslyTrue: kleeneAnd(implication, kleeneNot(antecedentTrue)),
25
+ fired: antecedentTrue,
26
+ };
27
+ }
28
+ //# sourceMappingURL=validation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../../../src/lib/core/evaluation/validation.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAEjE,kGAAkG;AAClG,MAAM,UAAU,oBAAoB,CAChC,MAA8B;IAE9B,OAAO;QACH,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,KAAK,OAAO,CAAC;QACvD,MAAM;KACT,CAAA;AACL,CAAC;AAED,2DAA2D;AAC3D,MAAM,UAAU,cAAc,CAC1B,KAA6C;IAE7C,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,KAAK,EAAE,CAAA;AAC1C,CAAC;AAED,sFAAsF;AACtF,MAAM,UAAU,gBAAgB,CAC5B,UAA+B,EAC/B,UAA+B;IAE/B,OAAO,aAAa,CAAC,UAAU,EAAE,UAAU,CAAC,CAAA;AAChD,CAAC;AAED,mFAAmF;AACnF,MAAM,UAAU,uBAAuB,CACnC,cAAmC,EACnC,cAAmC;IAEnC,MAAM,WAAW,GAAG,gBAAgB,CAAC,cAAc,EAAE,cAAc,CAAC,CAAA;IACpE,OAAO;QACH,cAAc;QACd,cAAc;QACd,gBAAgB,EAAE,WAAW;QAC7B,eAAe,EAAE,SAAS,CAAC,WAAW,EAAE,SAAS,CAAC,cAAc,CAAC,CAAC;QAClE,KAAK,EAAE,cAAc;KACxB,CAAA;AACL,CAAC"}
@@ -1,5 +1,5 @@
1
- import type { ArgumentEngine } from "./ArgumentEngine.js";
2
- import type { PremiseEngine } from "./PremiseEngine.js";
1
+ import type { ArgumentEngine } from "./argumentEngine.js";
2
+ import type { PremiseEngine } from "./premiseEngine.js";
3
3
  import type { TCorePremiseProfile, TCorePremiseRelationshipAnalysis } from "../types/relationships.js";
4
4
  /**
5
5
  * Builds a profile of a premise's variable appearances, recording each
@@ -1,13 +1,14 @@
1
1
  /**
2
2
  * Library barrel export. Re-exports core classes, evaluation types, diff
3
- * types, and the diff function.
3
+ * types, schemata, and the diff function.
4
4
  */
5
- export { ArgumentEngine } from "./core/ArgumentEngine.js";
6
- export type { TLogicEngineOptions, TArgumentEngineSnapshot, } from "./core/ArgumentEngine.js";
7
- export { PremiseEngine } from "./core/PremiseEngine.js";
8
- export type { TPremiseEngineSnapshot } from "./core/PremiseEngine.js";
9
- export type { TExpressionManagerSnapshot } from "./core/ExpressionManager.js";
10
- export type { TVariableManagerSnapshot } from "./core/VariableManager.js";
5
+ export * from "./schemata/index.js";
6
+ export { ArgumentEngine } from "./core/argumentEngine.js";
7
+ export type { TLogicEngineOptions, TArgumentEngineSnapshot, } from "./core/argumentEngine.js";
8
+ export { PremiseEngine } from "./core/premiseEngine.js";
9
+ export type { TPremiseEngineSnapshot } from "./core/premiseEngine.js";
10
+ export type { TExpressionManagerSnapshot } from "./core/expressionManager.js";
11
+ export type { TVariableManagerSnapshot } from "./core/variableManager.js";
11
12
  export * from "./types/evaluation.js";
12
13
  export * from "./types/diff.js";
13
14
  export * from "./types/mutation.js";
@@ -19,7 +20,7 @@ export { analyzePremiseRelationships, buildPremiseProfile, } from "./core/relati
19
20
  export { DEFAULT_CHECKSUM_CONFIG, createChecksumConfig } from "./consts.js";
20
21
  export { parseFormula } from "./core/parser/formula.js";
21
22
  export type { FormulaAST } from "./core/parser/formula.js";
22
- export type { TExpressionInput, TExpressionWithoutPosition, TExpressionUpdate, } from "./core/ExpressionManager.js";
23
+ export type { TExpressionInput, TExpressionWithoutPosition, TExpressionUpdate, } from "./core/expressionManager.js";
23
24
  export { POSITION_MIN, POSITION_MAX, POSITION_INITIAL, DEFAULT_POSITION_CONFIG, midpoint, } from "./utils/position.js";
24
25
  export type { TCorePositionConfig } from "./utils/position.js";
25
26
  //# 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,YAAY,EACR,mBAAmB,EACnB,uBAAuB,GAC1B,MAAM,0BAA0B,CAAA;AACjC,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AACvD,YAAY,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;AACrE,YAAY,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAA;AAC7E,YAAY,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAA;AACzE,cAAc,uBAAuB,CAAA;AACrC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,qBAAqB,CAAA;AACnC,cAAc,qBAAqB,CAAA;AACnC,OAAO,EACH,WAAW,EACX,kBAAkB,EAClB,cAAc,GACjB,MAAM,oBAAoB,CAAA;AAC3B,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,uBAAuB,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAC3E,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AACvD,YAAY,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC1D,YAAY,EACR,gBAAgB,EAChB,0BAA0B,EAC1B,iBAAiB,GACpB,MAAM,6BAA6B,CAAA;AACpC,OAAO,EACH,YAAY,EACZ,YAAY,EACZ,gBAAgB,EAChB,uBAAuB,EACvB,QAAQ,GACX,MAAM,qBAAqB,CAAA;AAC5B,YAAY,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,cAAc,qBAAqB,CAAA;AACnC,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AACzD,YAAY,EACR,mBAAmB,EACnB,uBAAuB,GAC1B,MAAM,0BAA0B,CAAA;AACjC,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AACvD,YAAY,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;AACrE,YAAY,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAA;AAC7E,YAAY,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAA;AACzE,cAAc,uBAAuB,CAAA;AACrC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,qBAAqB,CAAA;AACnC,cAAc,qBAAqB,CAAA;AACnC,OAAO,EACH,WAAW,EACX,kBAAkB,EAClB,cAAc,GACjB,MAAM,oBAAoB,CAAA;AAC3B,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,uBAAuB,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAC3E,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AACvD,YAAY,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC1D,YAAY,EACR,gBAAgB,EAChB,0BAA0B,EAC1B,iBAAiB,GACpB,MAAM,6BAA6B,CAAA;AACpC,OAAO,EACH,YAAY,EACZ,YAAY,EACZ,gBAAgB,EAChB,uBAAuB,EACvB,QAAQ,GACX,MAAM,qBAAqB,CAAA;AAC5B,YAAY,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA"}
package/dist/lib/index.js CHANGED
@@ -1,9 +1,10 @@
1
1
  /**
2
2
  * Library barrel export. Re-exports core classes, evaluation types, diff
3
- * types, and the diff function.
3
+ * types, schemata, and the diff function.
4
4
  */
5
- export { ArgumentEngine } from "./core/ArgumentEngine.js";
6
- export { PremiseEngine } from "./core/PremiseEngine.js";
5
+ export * from "./schemata/index.js";
6
+ export { ArgumentEngine } from "./core/argumentEngine.js";
7
+ export { PremiseEngine } from "./core/premiseEngine.js";
7
8
  export * from "./types/evaluation.js";
8
9
  export * from "./types/diff.js";
9
10
  export * from "./types/mutation.js";
@@ -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;AAKzD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AAIvD,cAAc,uBAAuB,CAAA;AACrC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,qBAAqB,CAAA;AACnC,cAAc,qBAAqB,CAAA;AACnC,OAAO,EACH,WAAW,EACX,kBAAkB,EAClB,cAAc,GACjB,MAAM,oBAAoB,CAAA;AAC3B,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,uBAAuB,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAC3E,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAOvD,OAAO,EACH,YAAY,EACZ,YAAY,EACZ,gBAAgB,EAChB,uBAAuB,EACvB,QAAQ,GACX,MAAM,qBAAqB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/lib/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,cAAc,qBAAqB,CAAA;AACnC,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AAKzD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AAIvD,cAAc,uBAAuB,CAAA;AACrC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,qBAAqB,CAAA;AACnC,cAAc,qBAAqB,CAAA;AACnC,OAAO,EACH,WAAW,EACX,kBAAkB,EAClB,cAAc,GACjB,MAAM,oBAAoB,CAAA;AAC3B,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,uBAAuB,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAC3E,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAOvD,OAAO,EACH,YAAY,EACZ,YAAY,EACZ,gBAAgB,EAChB,uBAAuB,EACvB,QAAQ,GACX,MAAM,qBAAqB,CAAA"}
@@ -84,38 +84,6 @@ export declare const CorePremiseSchema: Type.TObject<{
84
84
  id: Type.TString;
85
85
  argumentId: Type.TString;
86
86
  argumentVersion: Type.TNumber;
87
- rootExpressionId: Type.TOptional<Type.TString>;
88
- variables: Type.TArray<Type.TString>;
89
- expressions: Type.TArray<Type.TUnion<[Type.TObject<{
90
- id: Type.TString;
91
- argumentId: Type.TString;
92
- argumentVersion: Type.TNumber;
93
- premiseId: Type.TString;
94
- parentId: Type.TUnion<[Type.TString, Type.TNull]>;
95
- position: Type.TNumber;
96
- checksum: Type.TString;
97
- type: Type.TLiteral<"variable">;
98
- variableId: Type.TString;
99
- }>, Type.TObject<{
100
- id: Type.TString;
101
- argumentId: Type.TString;
102
- argumentVersion: Type.TNumber;
103
- premiseId: Type.TString;
104
- parentId: Type.TUnion<[Type.TString, Type.TNull]>;
105
- position: Type.TNumber;
106
- checksum: Type.TString;
107
- type: Type.TLiteral<"operator">;
108
- operator: Type.TUnion<[Type.TLiteral<"not">, Type.TLiteral<"and">, Type.TLiteral<"or">, Type.TLiteral<"implies">, Type.TLiteral<"iff">]>;
109
- }>, Type.TObject<{
110
- id: Type.TString;
111
- argumentId: Type.TString;
112
- argumentVersion: Type.TNumber;
113
- premiseId: Type.TString;
114
- parentId: Type.TUnion<[Type.TString, Type.TNull]>;
115
- position: Type.TNumber;
116
- checksum: Type.TString;
117
- type: Type.TLiteral<"formula">;
118
- }>]>>;
119
87
  checksum: Type.TString;
120
88
  }>;
121
89
  export type TCorePremise = Static<typeof CorePremiseSchema>;
@@ -1 +1 @@
1
- {"version":3,"file":"propositional.d.ts","sourceRoot":"","sources":["../../../src/lib/schemata/propositional.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,EAAE,EAAE,KAAK,MAAM,EAAE,MAAM,SAAS,CAAA;AAO3C,eAAO,MAAM,gCAAgC,+FAI3C,CAAA;AACF,MAAM,MAAM,iCAAiC,GAAG,MAAM,CAClD,OAAO,gCAAgC,CAC1C,CAAA;AAsBD,eAAO,MAAM,yCAAyC;;;;;;;;;;EAMrD,CAAA;AAED,MAAM,MAAM,oCAAoC,GAAG,MAAM,CACrD,OAAO,yCAAyC,CACnD,CAAA;AAED,eAAO,MAAM,uBAAuB,gIAMlC,CAAA;AAEF,MAAM,MAAM,wBAAwB,GAAG,MAAM,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAE7E,eAAO,MAAM,4BAA4B;;;;;;;;;;EAMxC,CAAA;AACD,MAAM,MAAM,uBAAuB,GAAG,MAAM,CACxC,OAAO,4BAA4B,CACtC,CAAA;AAED,eAAO,MAAM,2BAA2B;;;;;;;;;EAKvC,CAAA;AACD,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC,OAAO,2BAA2B,CAAC,CAAA;AAE/E,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAI5C,CAAA;AAEF,MAAM,MAAM,oCAAoC,GAAG,MAAM,CACrD,OAAO,iCAAiC,CAC3C,CAAA;AAED,MAAM,MAAM,4BAA4B,CACpC,CAAC,SAAS,iCAAiC,GACvC,iCAAiC,IACrC,OAAO,CAAC,oCAAoC,EAAE;IAAE,IAAI,EAAE,CAAC,CAAA;CAAE,CAAC,CAAA;AAE9D,eAAO,MAAM,+BAA+B;;;;;;EAkB3C,CAAA;AAED,MAAM,MAAM,0BAA0B,GAAG,MAAM,CAC3C,OAAO,+BAA+B,CACzC,CAAA;AAED,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2B7B,CAAA;AAED,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,iBAAiB,CAAC,CAAA"}
1
+ {"version":3,"file":"propositional.d.ts","sourceRoot":"","sources":["../../../src/lib/schemata/propositional.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,EAAE,EAAE,KAAK,MAAM,EAAE,MAAM,SAAS,CAAA;AAO3C,eAAO,MAAM,gCAAgC,+FAI3C,CAAA;AACF,MAAM,MAAM,iCAAiC,GAAG,MAAM,CAClD,OAAO,gCAAgC,CAC1C,CAAA;AAsBD,eAAO,MAAM,yCAAyC;;;;;;;;;;EAMrD,CAAA;AAED,MAAM,MAAM,oCAAoC,GAAG,MAAM,CACrD,OAAO,yCAAyC,CACnD,CAAA;AAED,eAAO,MAAM,uBAAuB,gIAMlC,CAAA;AAEF,MAAM,MAAM,wBAAwB,GAAG,MAAM,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAE7E,eAAO,MAAM,4BAA4B;;;;;;;;;;EAMxC,CAAA;AACD,MAAM,MAAM,uBAAuB,GAAG,MAAM,CACxC,OAAO,4BAA4B,CACtC,CAAA;AAED,eAAO,MAAM,2BAA2B;;;;;;;;;EAKvC,CAAA;AACD,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC,OAAO,2BAA2B,CAAC,CAAA;AAE/E,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAI5C,CAAA;AAEF,MAAM,MAAM,oCAAoC,GAAG,MAAM,CACrD,OAAO,iCAAiC,CAC3C,CAAA;AAED,MAAM,MAAM,4BAA4B,CACpC,CAAC,SAAS,iCAAiC,GACvC,iCAAiC,IACrC,OAAO,CAAC,oCAAoC,EAAE;IAAE,IAAI,EAAE,CAAC,CAAA;CAAE,CAAC,CAAA;AAE9D,eAAO,MAAM,+BAA+B;;;;;;EAkB3C,CAAA;AAED,MAAM,MAAM,0BAA0B,GAAG,MAAM,CAC3C,OAAO,+BAA+B,CACzC,CAAA;AAED,eAAO,MAAM,iBAAiB;;;;;EAc7B,CAAA;AAED,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,iBAAiB,CAAC,CAAA"}
@@ -64,20 +64,11 @@ export const CorePremiseSchema = Type.Object({
64
64
  id: UUID,
65
65
  argumentId: UUID,
66
66
  argumentVersion: Type.Number(),
67
- rootExpressionId: Type.Optional(Type.String({
68
- description: "ID of the root expression, if the premise has expressions.",
69
- })),
70
- variables: Type.Array(UUID, {
71
- description: "IDs of all variables referenced in this premise.",
72
- }),
73
- expressions: Type.Array(CorePropositionalExpressionSchema, {
74
- description: "All expressions in this premise. The root has a null parentId.",
75
- }),
76
67
  checksum: Type.String({
77
68
  description: "Premise-level checksum for sync detection.",
78
69
  }),
79
70
  }, {
80
71
  additionalProperties: true,
81
- description: "A premise containing an expression tree and variable references.",
72
+ description: "A premise entity with identity and metadata. Expressions and variables are managed by PremiseEngine.",
82
73
  });
83
74
  //# sourceMappingURL=propositional.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"propositional.js","sourceRoot":"","sources":["../../../src/lib/schemata/propositional.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"propositional.js","sourceRoot":"","sources":["../../../src/lib/schemata/propositional.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@ export interface TCoreChecksumConfig {
4
4
  expressionFields?: Set<string>;
5
5
  /** Fields to hash for variable entities. Defaults to all variable fields. */
6
6
  variableFields?: Set<string>;
7
- /** Fields to hash for premise metadata. Defaults to ["id", "rootExpressionId"]. */
7
+ /** Fields to hash for premise metadata. Defaults to ["id", "argumentId", "argumentVersion"]. */
8
8
  premiseFields?: Set<string>;
9
9
  /** Fields to hash for argument metadata. Defaults to ["id", "version"]. */
10
10
  argumentFields?: Set<string>;
@@ -1 +1 @@
1
- {"version":3,"file":"checksum.d.ts","sourceRoot":"","sources":["../../../src/lib/types/checksum.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,MAAM,WAAW,mBAAmB;IAChC,sFAAsF;IACtF,gBAAgB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAC9B,6EAA6E;IAC7E,cAAc,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAC5B,mFAAmF;IACnF,aAAa,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAC3B,2EAA2E;IAC3E,cAAc,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAC5B,0EAA0E;IAC1E,UAAU,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;CAC3B"}
1
+ {"version":3,"file":"checksum.d.ts","sourceRoot":"","sources":["../../../src/lib/types/checksum.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,MAAM,WAAW,mBAAmB;IAChC,sFAAsF;IACtF,gBAAgB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAC9B,6EAA6E;IAC7E,cAAc,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAC5B,gGAAgG;IAChG,aAAa,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAC3B,2EAA2E;IAC3E,cAAc,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAC5B,0EAA0E;IAC1E,UAAU,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;CAC3B"}
@@ -0,0 +1,17 @@
1
+ type DefaultValueFactory<K, V> = (key?: K) => V;
2
+ /**
3
+ * A `Map` subclass that auto-creates values for missing keys using a
4
+ * factory function. Optionally enforces an LRU-style size limit by
5
+ * evicting the oldest entry when the limit is reached.
6
+ */
7
+ export declare class DefaultMap<K, V> extends Map<K, V> {
8
+ private mkDefault;
9
+ private limit;
10
+ constructor(mkDefault: DefaultValueFactory<K, V>, entries?: Iterable<[K, V]>, limit?: number);
11
+ /** Returns the value for `key`, creating it via the factory if absent. */
12
+ get(key: K): V;
13
+ /** Sets `key` to `value`, evicting the oldest entry if the size limit is reached. */
14
+ set(key: K, value: V): this;
15
+ }
16
+ export {};
17
+ //# sourceMappingURL=defaultMap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defaultMap.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/defaultMap.ts"],"names":[],"mappings":"AAAA,KAAK,mBAAmB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,CAAA;AAE/C;;;;GAIG;AACH,qBAAa,UAAU,CAAC,CAAC,EAAE,CAAC,CAAE,SAAQ,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IAC3C,OAAO,CAAC,SAAS,CAA2B;IAC5C,OAAO,CAAC,KAAK,CAAQ;gBAGjB,SAAS,EAAE,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,EACpC,OAAO,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAC1B,KAAK,SAAK;IAOd,0EAA0E;IACnE,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC;IAOrB,qFAAqF;IAC9E,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC;CAS9B"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * A `Map` subclass that auto-creates values for missing keys using a
3
+ * factory function. Optionally enforces an LRU-style size limit by
4
+ * evicting the oldest entry when the limit is reached.
5
+ */
6
+ export class DefaultMap extends Map {
7
+ mkDefault;
8
+ limit;
9
+ constructor(mkDefault, entries, limit = -1) {
10
+ super(entries);
11
+ this.mkDefault = mkDefault;
12
+ this.limit = limit;
13
+ }
14
+ /** Returns the value for `key`, creating it via the factory if absent. */
15
+ get(key) {
16
+ if (!this.has(key)) {
17
+ this.set(key, this.mkDefault(key));
18
+ }
19
+ return super.get(key);
20
+ }
21
+ /** Sets `key` to `value`, evicting the oldest entry if the size limit is reached. */
22
+ set(key, value) {
23
+ if (this.limit >= 0 && this.size + 1 >= this.limit) {
24
+ // Remove the oldest entry when the limit is reached
25
+ // This implementation uses the first entry, which is the oldest in insertion order
26
+ const oldestKey = this.keys().next().value;
27
+ if (oldestKey !== undefined)
28
+ this.delete(oldestKey);
29
+ }
30
+ return super.set(key, value);
31
+ }
32
+ }
33
+ //# sourceMappingURL=defaultMap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defaultMap.js","sourceRoot":"","sources":["../../../src/lib/utils/defaultMap.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,MAAM,OAAO,UAAiB,SAAQ,GAAS;IACnC,SAAS,CAA2B;IACpC,KAAK,CAAQ;IAErB,YACI,SAAoC,EACpC,OAA0B,EAC1B,KAAK,GAAG,CAAC,CAAC;QAEV,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;IACtB,CAAC;IAED,0EAA0E;IACnE,GAAG,CAAC,GAAM;QACb,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACjB,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAA;QACtC,CAAC;QACD,OAAO,KAAK,CAAC,GAAG,CAAC,GAAG,CAAE,CAAA;IAC1B,CAAC;IAED,qFAAqF;IAC9E,GAAG,CAAC,GAAM,EAAE,KAAQ;QACvB,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACjD,oDAAoD;YACpD,mFAAmF;YACnF,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAA;YAC1C,IAAI,SAAS,KAAK,SAAS;gBAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;QACvD,CAAC;QACD,OAAO,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;IAChC,CAAC;CACJ"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@polintpro/proposit-core",
3
- "version": "0.2.6",
3
+ "version": "0.2.8",
4
4
  "description": "Core engine for building and manipulating propositional logic arguments.",
5
5
  "license": "MIT",
6
6
  "keywords": [