Interface Quantifier<Name, QVarSorts, QSort>

interface Quantifier<
    Name extends string = "main",
    QVarSorts extends NonEmptySortArray<Name> = [Sort<Name>, ...Sort<Name>[]],
    QSort extends
        BoolSort<Name> | SMTArraySort<Name, QVarSorts> =
        | BoolSort<Name>
        | SMTArraySort<Name, QVarSorts>,
> {
    ctx: Context<Name>;
    get ast(): Z3_ast;
    get sort(): S;
    arg(i: number): AnyExpr<Name>;
    body(): BodyT<Name, QVarSorts, QSort>;
    children(): [BodyT<Name, QVarSorts, QSort>];
    decl(): FuncDecl<Name, Sort<Name>[], Sort<Name>>;
    eq(other: CoercibleToExpr<Name>): Bool<Name>;
    eqIdentity(other: Ast<Name, unknown>): boolean;
    hash(): number;
    id(): number;
    is_exists(): boolean;
    is_forall(): boolean;
    is_lambda(): boolean;
    name(): string | number;
    neq(other: CoercibleToExpr<Name>): Bool<Name>;
    neqIdentity(other: Ast<Name, unknown>): boolean;
    no_pattern(i: number): Expr<Name, AnySort<Name>, unknown>;
    num_no_patterns(): number;
    num_patterns(): number;
    num_vars(): number;
    numArgs(): number;
    params(): (
        | string
        | number
        | Sort<Name>
        | Expr<Name, AnySort<Name>, unknown>
        | FuncDecl<Name, Sort<Name>[], Sort<Name>>
    )[];
    pattern(i: number): Pattern<Name>;
    sexpr(): string;
    var_name(i: number): string | number;
    var_sort<T extends number>(i: T): QVarSorts[T];
    weight(): number;
}

Type Parameters

Hierarchy (View Summary)

Properties

Accessors

Methods