Class Lambda<R extends Sort>

All Implemented Interfaces:
Comparable<AST>

public class Lambda<R extends Sort> extends ArrayExpr<Sort,R>
Lambda expressions.
  • Method Details

    • getNumBound

      public int getNumBound()
      The number of bound variables.
    • getBoundVariableNames

      public Symbol[] getBoundVariableNames()
      The symbols for the bound variables.
      Throws:
      Z3Exception
    • getBoundVariableSorts

      public Sort[] getBoundVariableSorts()
      The sorts of the bound variables.
      Throws:
      Z3Exception
    • getBody

      public Expr<R> getBody()
      The body of the quantifier.
      Throws:
      Z3Exception
    • translate

      public Lambda<R> translate(Context ctx)
      Translates (copies) the quantifier to the Context ctx.
      Overrides:
      translate in class Expr<ArraySort<Sort,R extends Sort>>
      Parameters:
      ctx - A context
      Returns:
      A copy of the quantifier which is associated with ctx
      Throws:
      Z3Exception - on error
    • of

      public static <R extends Sort> Lambda<R> of(Context ctx, Sort[] sorts, Symbol[] names, Expr<R> body)
    • of

      public static <R extends Sort> Lambda<R> of(Context ctx, Expr<?>[] bound, Expr<R> body)
      Parameters:
      ctx - Context to create the lambda on.
      bound - Bound variables.
      body - Body of the lambda expression.