Interface Goal<Name>

Goal is a collection of constraints we want to find a solution or show to be unsatisfiable. Goals are processed using Tactics. A Tactic transforms a goal into a set of subgoals.

interface Goal<Name extends string = "main"> {
    ctx: Context<Name>;
    ptr: Z3_goal;
    add(...constraints: (boolean | Bool<Name>)[]): void;
    asExpr(): Bool<Name>;
    convertModel(model: Model<Name>): Model<Name>;
    depth(): number;
    dimacs(includeNames?: boolean): string;
    get(i: number): Bool<Name>;
    inconsistent(): boolean;
    isDecidedSat(): boolean;
    isDecidedUnsat(): boolean;
    numExprs(): number;
    precision(): Z3_goal_prec;
    reset(): void;
    size(): number;
    toString(): string;
}

Type Parameters

  • Name extends string = "main"

Properties

ptr: Z3_goal

Methods

  • Return a DIMACS string representation of the goal.

    Parameters

    • OptionalincludeNames: boolean

    Returns string

  • Return the precision of the goal (precise, under-approximation, over-approximation).

    Returns Z3_goal_prec