mk_distinct method

Z3_ast mk_distinct(
  1. Z3_context c,
  2. int num_args,
  3. Pointer<Z3_ast> args
)

\brief Create an AST node representing \ccode{distinct(args0, ..., argsnum_args-1)}.

The \c distinct construct is used for declaring the arguments pairwise distinct. That is, \ccode{Forall 0 <= i < j < num_args. not argsi = argsj}.

All arguments must have the same sort.

\remark The number of arguments of a distinct construct must be greater than one.

def_API('Z3_mk_distinct', AST, (_in(CONTEXT), _in(UINT), _in_array(1, AST)))

Implementation

Z3_ast mk_distinct(
  Z3_context c,
  int num_args,
  ffi.Pointer<Z3_ast> args,
) {
  return _mk_distinct(
    c,
    num_args,
    args,
  );
}