proposit-core
    Preparing search index...

    Class PropositCore<TArg, TPremise, TExpr, TVar, TClaim, TCitation, TAxiom, TArgFork, TPremiseFork, TExprFork, TVarFork, TClaimFork>

    Top-level orchestrator for the proposit-core system. Owns all four libraries (claims, claim citations, forks, arguments) and provides unified snapshot/restore and validation.

    Construction order follows dependency order: claims -> citations -> axioms -> forks -> arguments.

    As of v0.10.0 the legacy sources and claimSources libraries have been folded into claims and citations respectively — sources are now claims with type: "citation". As of v0.12.0 a parallel axioms library holds axiomatic-claim connections (a third claim type "axiomatic").

    Type Parameters

    Index

    Constructors

    • Type Parameters

      • TArg extends {
            checksum: string;
            combinedChecksum: string;
            descendantChecksum: string | null;
            id: string;
            version: number;
        } = {
            checksum: string;
            combinedChecksum: string;
            descendantChecksum: string | null;
            id: string;
            version: number;
        }
      • TPremise extends
            | {
                argumentId: string;
                argumentVersion: number;
                checksum: string;
                combinedChecksum: string;
                descendantChecksum: string
                | null;
                id: string;
                type: "freeform";
            }
            | {
                argumentId: string;
                argumentVersion: number;
                checksum: string;
                combinedChecksum: string;
                derivedClaimId: string;
                descendantChecksum: string
                | null;
                id: string;
                type: "derivation";
            } =
            | {
                argumentId: string;
                argumentVersion: number;
                checksum: string;
                combinedChecksum: string;
                descendantChecksum: string
                | null;
                id: string;
                type: "freeform";
            }
            | {
                argumentId: string;
                argumentVersion: number;
                checksum: string;
                combinedChecksum: string;
                derivedClaimId: string;
                descendantChecksum: string
                | null;
                id: string;
                type: "derivation";
            }
      • TExpr extends TCorePropositionalExpression = TCorePropositionalExpression
      • TVar extends
            | {
                argumentId: string;
                argumentVersion: number;
                checksum: string;
                claimId: string;
                claimVersion: number;
                id: string;
                symbol: string;
            }
            | {
                argumentId: string;
                argumentVersion: number;
                boundArgumentId: string;
                boundArgumentVersion: number;
                boundPremiseId: string;
                checksum: string;
                id: string;
                symbol: string;
            } =
            | {
                argumentId: string;
                argumentVersion: number;
                checksum: string;
                claimId: string;
                claimVersion: number;
                id: string;
                symbol: string;
            }
            | {
                argumentId: string;
                argumentVersion: number;
                boundArgumentId: string;
                boundArgumentVersion: number;
                boundPremiseId: string;
                checksum: string;
                id: string;
                symbol: string;
            }
      • TClaim extends {
            checksum: string;
            frozen: boolean;
            id: string;
            type: "normal" | "citation" | "axiomatic";
            version: number;
        } = {
            checksum: string;
            frozen: boolean;
            id: string;
            type: "normal" | "citation" | "axiomatic";
            version: number;
        }
      • TCitation extends {
            checksum: string;
            claimId: string;
            claimVersion: number;
            id: string;
            supportingClaimId: string;
            supportingClaimVersion: number;
        } = {
            checksum: string;
            claimId: string;
            claimVersion: number;
            id: string;
            supportingClaimId: string;
            supportingClaimVersion: number;
        }
      • TAxiom extends {
            checksum: string;
            claimId: string;
            claimVersion: number;
            id: string;
            supportingClaimId: string;
            supportingClaimVersion: number;
        } = {
            checksum: string;
            claimId: string;
            claimVersion: number;
            id: string;
            supportingClaimId: string;
            supportingClaimVersion: number;
        }
      • TArgFork extends {
            entityId: string;
            forkedFromArgumentId: string;
            forkedFromArgumentVersion: number;
            forkedFromEntityId: string;
            forkId: string;
        } = {
            entityId: string;
            forkedFromArgumentId: string;
            forkedFromArgumentVersion: number;
            forkedFromEntityId: string;
            forkId: string;
        }
      • TPremiseFork extends {
            entityId: string;
            forkedFromArgumentId: string;
            forkedFromArgumentVersion: number;
            forkedFromEntityId: string;
            forkId: string;
        } = {
            entityId: string;
            forkedFromArgumentId: string;
            forkedFromArgumentVersion: number;
            forkedFromEntityId: string;
            forkId: string;
        }
      • TExprFork extends {
            entityId: string;
            forkedFromArgumentId: string;
            forkedFromArgumentVersion: number;
            forkedFromEntityId: string;
            forkId: string;
        } & { forkedFromPremiseId: string } = {
            entityId: string;
            forkedFromArgumentId: string;
            forkedFromArgumentVersion: number;
            forkedFromEntityId: string;
            forkId: string;
        } & { forkedFromPremiseId: string }
      • TVarFork extends {
            entityId: string;
            forkedFromArgumentId: string;
            forkedFromArgumentVersion: number;
            forkedFromEntityId: string;
            forkId: string;
        } = {
            entityId: string;
            forkedFromArgumentId: string;
            forkedFromArgumentVersion: number;
            forkedFromEntityId: string;
            forkId: string;
        }
      • TClaimFork extends {
            entityId: string;
            forkedFromArgumentId: string;
            forkedFromArgumentVersion: number;
            forkedFromEntityId: string;
            forkId: string;
        } & { forkedFromEntityVersion: number } = {
            entityId: string;
            forkedFromArgumentId: string;
            forkedFromArgumentVersion: number;
            forkedFromEntityId: string;
            forkId: string;
        } & { forkedFromEntityVersion: number }

      Parameters

      Returns PropositCore<
          TArg,
          TPremise,
          TExpr,
          TVar,
          TClaim,
          TCitation,
          TAxiom,
          TArgFork,
          TPremiseFork,
          TExprFork,
          TVarFork,
          TClaimFork,
      >

    Properties

    generateId: () => string

    Methods

    • Forks an argument, cloning its referenced claims (including any citation-typed claims reachable via citations) and the citation edges between them, then remaps variable claim references to point at the cloned claims. Creates fork records in all five namespaces.

      Parameters

      • argumentId: string

        The ID of the argument to fork.

      • OptionalnewArgumentId: string

        The ID for the forked argument. Defaults to this.generateId().

      • Optionaloptions: TForkArgumentOptions & {
            argumentForkExtras?: Partial<
                Omit<
                    TArgFork,
                    | "entityId"
                    | "forkedFromEntityId"
                    | "forkedFromArgumentId"
                    | "forkedFromArgumentVersion"
                    | "forkId",
                >,
            >;
            claimForkExtras?: Partial<
                Omit<
                    TClaimFork,
                    | "entityId"
                    | "forkedFromEntityId"
                    | "forkedFromArgumentId"
                    | "forkedFromArgumentVersion"
                    | "forkId"
                    | "forkedFromEntityVersion",
                >,
            >;
            expressionForkExtras?: Partial<
                Omit<
                    TExprFork,
                    | "entityId"
                    | "forkedFromEntityId"
                    | "forkedFromArgumentId"
                    | "forkedFromArgumentVersion"
                    | "forkId"
                    | "forkedFromPremiseId",
                >,
            >;
            forkId?: string;
            premiseForkExtras?: Partial<
                Omit<
                    TPremiseFork,
                    | "entityId"
                    | "forkedFromEntityId"
                    | "forkedFromArgumentId"
                    | "forkedFromArgumentVersion"
                    | "forkId",
                >,
            >;
            variableForkExtras?: Partial<
                Omit<
                    TVarFork,
                    | "entityId"
                    | "forkedFromEntityId"
                    | "forkedFromArgumentId"
                    | "forkedFromArgumentVersion"
                    | "forkId",
                >,
            >;
        }

        Optional fork configuration and extras for fork records.

      Returns {
          argumentFork: TArgFork;
          claimRemap: Map<string, string>;
          engine: ArgumentEngine<TArg, TPremise, TExpr, TVar, TClaim>;
          remapTable: TForkRemapTable;
      }

      The forked engine, remap tables, and the argument fork record.

    • Restores a PropositCore instance from a snapshot. Libraries are restored in dependency order: claims -> citations -> axioms -> forks -> arguments.

      Type Parameters

      • TArg extends {
            checksum: string;
            combinedChecksum: string;
            descendantChecksum: string | null;
            id: string;
            version: number;
        } = {
            checksum: string;
            combinedChecksum: string;
            descendantChecksum: string | null;
            id: string;
            version: number;
        }
      • TPremise extends
            | {
                argumentId: string;
                argumentVersion: number;
                checksum: string;
                combinedChecksum: string;
                descendantChecksum: string
                | null;
                id: string;
                type: "freeform";
            }
            | {
                argumentId: string;
                argumentVersion: number;
                checksum: string;
                combinedChecksum: string;
                derivedClaimId: string;
                descendantChecksum: string
                | null;
                id: string;
                type: "derivation";
            } =
            | {
                argumentId: string;
                argumentVersion: number;
                checksum: string;
                combinedChecksum: string;
                descendantChecksum: string
                | null;
                id: string;
                type: "freeform";
            }
            | {
                argumentId: string;
                argumentVersion: number;
                checksum: string;
                combinedChecksum: string;
                derivedClaimId: string;
                descendantChecksum: string
                | null;
                id: string;
                type: "derivation";
            }
      • TExpr extends TCorePropositionalExpression = TCorePropositionalExpression
      • TVar extends
            | {
                argumentId: string;
                argumentVersion: number;
                checksum: string;
                claimId: string;
                claimVersion: number;
                id: string;
                symbol: string;
            }
            | {
                argumentId: string;
                argumentVersion: number;
                boundArgumentId: string;
                boundArgumentVersion: number;
                boundPremiseId: string;
                checksum: string;
                id: string;
                symbol: string;
            } =
            | {
                argumentId: string;
                argumentVersion: number;
                checksum: string;
                claimId: string;
                claimVersion: number;
                id: string;
                symbol: string;
            }
            | {
                argumentId: string;
                argumentVersion: number;
                boundArgumentId: string;
                boundArgumentVersion: number;
                boundPremiseId: string;
                checksum: string;
                id: string;
                symbol: string;
            }
      • TClaim extends {
            checksum: string;
            frozen: boolean;
            id: string;
            type: "normal" | "citation" | "axiomatic";
            version: number;
        } = {
            checksum: string;
            frozen: boolean;
            id: string;
            type: "normal" | "citation" | "axiomatic";
            version: number;
        }
      • TCitation extends {
            checksum: string;
            claimId: string;
            claimVersion: number;
            id: string;
            supportingClaimId: string;
            supportingClaimVersion: number;
        } = {
            checksum: string;
            claimId: string;
            claimVersion: number;
            id: string;
            supportingClaimId: string;
            supportingClaimVersion: number;
        }
      • TAxiom extends {
            checksum: string;
            claimId: string;
            claimVersion: number;
            id: string;
            supportingClaimId: string;
            supportingClaimVersion: number;
        } = {
            checksum: string;
            claimId: string;
            claimVersion: number;
            id: string;
            supportingClaimId: string;
            supportingClaimVersion: number;
        }
      • TArgFork extends {
            entityId: string;
            forkedFromArgumentId: string;
            forkedFromArgumentVersion: number;
            forkedFromEntityId: string;
            forkId: string;
        } = {
            entityId: string;
            forkedFromArgumentId: string;
            forkedFromArgumentVersion: number;
            forkedFromEntityId: string;
            forkId: string;
        }
      • TPremiseFork extends {
            entityId: string;
            forkedFromArgumentId: string;
            forkedFromArgumentVersion: number;
            forkedFromEntityId: string;
            forkId: string;
        } = {
            entityId: string;
            forkedFromArgumentId: string;
            forkedFromArgumentVersion: number;
            forkedFromEntityId: string;
            forkId: string;
        }
      • TExprFork extends {
            entityId: string;
            forkedFromArgumentId: string;
            forkedFromArgumentVersion: number;
            forkedFromEntityId: string;
            forkId: string;
        } & { forkedFromPremiseId: string } = {
            entityId: string;
            forkedFromArgumentId: string;
            forkedFromArgumentVersion: number;
            forkedFromEntityId: string;
            forkId: string;
        } & { forkedFromPremiseId: string }
      • TVarFork extends {
            entityId: string;
            forkedFromArgumentId: string;
            forkedFromArgumentVersion: number;
            forkedFromEntityId: string;
            forkId: string;
        } = {
            entityId: string;
            forkedFromArgumentId: string;
            forkedFromArgumentVersion: number;
            forkedFromEntityId: string;
            forkId: string;
        }
      • TClaimFork extends {
            entityId: string;
            forkedFromArgumentId: string;
            forkedFromArgumentVersion: number;
            forkedFromEntityId: string;
            forkId: string;
        } & { forkedFromEntityVersion: number } = {
            entityId: string;
            forkedFromArgumentId: string;
            forkedFromArgumentVersion: number;
            forkedFromEntityId: string;
            forkId: string;
        } & { forkedFromEntityVersion: number }

      Parameters

      Returns PropositCore<
          TArg,
          TPremise,
          TExpr,
          TVar,
          TClaim,
          TCitation,
          TAxiom,
          TArgFork,
          TPremiseFork,
          TExprFork,
          TVarFork,
          TClaimFork,
      >

      A fully restored PropositCore instance.