proposit-core
    Preparing search index...

    Class ArgumentParser<TArg, TPremise, TExpr, TVar, TClaim, TCitation, TAxiom>

    Validates and builds an ArgumentEngine from a parsed LLM response.

    Override the protected map* hooks to inject custom fields into the entities created during the build phase.

    Type Parameters

    Hierarchy (View Summary)

    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;
        }

      Parameters

      • OptionalresponseSchema: TSchema

      Returns ArgumentParser<TArg, TPremise, TExpr, TVar, TClaim, TCitation, TAxiom>

    Properties

    responseSchema: TSchema

    Methods

    • Build an ArgumentEngine from a validated response.

      Parameters

      • response: {
            argument:
                | {
                    claims: {
                        miniId: string;
                        role: "conclusion"
                        | "premise"
                        | "intermediate";
                        type: "normal" | "citation" | "axiomatic";
                    }[];
                    conclusionPremiseMiniId: string;
                    premises: { formula: string; miniId: string }[];
                    variables: { claimMiniId: string; miniId: string; symbol: string }[];
                }
                | null;
            failureText: string
            | null;
            selectionRationale: string | null;
            uncategorizedText: string | null;
        }
      • Optionaloptions: TParserBuildOptions

      Returns TArgumentParserResult<TArg, TPremise, TExpr, TVar, TClaim, TCitation, TAxiom>

      If response.argument is null

      If any formula references an undeclared variable

      If any formula contains nested implies/iff

      If a variable references an undeclared claim miniId

      If the conclusion premise miniId is unresolvable

    • Parameters

      • _parsed: {
            claims: {
                miniId: string;
                role: "conclusion" | "premise" | "intermediate";
                type: "normal" | "citation" | "axiomatic";
            }[];
            conclusionPremiseMiniId: string;
            premises: { formula: string; miniId: string }[];
            variables: { claimMiniId: string; miniId: string; symbol: string }[];
        }

      Returns Record<string, unknown>

    • Parameters

      • _parsed: {
            miniId: string;
            role: "conclusion" | "premise" | "intermediate";
            type: "normal" | "citation" | "axiomatic";
        }

      Returns Record<string, unknown>

    • Parameters

      • _dependentParsed: {
            miniId: string;
            role: "conclusion" | "premise" | "intermediate";
            type: "normal" | "citation" | "axiomatic";
        }
      • _supportingParsed: {
            miniId: string;
            role: "conclusion" | "premise" | "intermediate";
            type: "normal" | "citation" | "axiomatic";
        }
      • _dependentClaimId: string
      • _supportingClaimId: string

      Returns Record<string, unknown>

    • Parameters

      • _dependentParsed: {
            miniId: string;
            role: "conclusion" | "premise" | "intermediate";
            type: "normal" | "citation" | "axiomatic";
        }
      • _supportingParsed: {
            miniId: string;
            role: "conclusion" | "premise" | "intermediate";
            type: "normal" | "citation" | "axiomatic";
        }
      • _dependentClaimId: string
      • _supportingClaimId: string

      Returns Record<string, unknown>

    • Parameters

      • _parsed: { formula: string; miniId: string }

      Returns Record<string, unknown>

    • Parameters

      • _parsed: { claimMiniId: string; miniId: string; symbol: string }

      Returns Record<string, unknown>

    • Validate raw LLM output against the response schema.

      Parameters

      • raw: unknown

      Returns {
          argument:
              | {
                  claims: {
                      miniId: string;
                      role: "conclusion"
                      | "premise"
                      | "intermediate";
                      type: "normal" | "citation" | "axiomatic";
                  }[];
                  conclusionPremiseMiniId: string;
                  premises: { formula: string; miniId: string }[];
                  variables: { claimMiniId: string; miniId: string; symbol: string }[];
              }
              | null;
          failureText: string
          | null;
          selectionRationale: string | null;
          uncategorizedText: string | null;
      }