cl-z3/ffi
System Information
Definition Index
-
Z3-C-TYPES
Low-level Z3 types
-
EXTERNAL CLASS Z3_APP
No documentation provided. -
EXTERNAL CLASS Z3_APPLY_RESULT
No documentation provided. -
EXTERNAL CLASS Z3_AST
No documentation provided. -
EXTERNAL CLASS Z3_AST_MAP
No documentation provided. -
EXTERNAL CLASS Z3_AST_VECTOR
No documentation provided. -
EXTERNAL CLASS Z3_CONFIG
No documentation provided. -
EXTERNAL CLASS Z3_CONSTRUCTOR
No documentation provided. -
EXTERNAL CLASS Z3_CONSTRUCTOR_LIST
No documentation provided. -
EXTERNAL CLASS Z3_CONTEXT
No documentation provided. -
EXTERNAL CLASS Z3_FIXEDPOINT
No documentation provided. -
EXTERNAL CLASS Z3_FUNC_DECL
No documentation provided. -
EXTERNAL CLASS Z3_FUNC_ENTRY
No documentation provided. -
EXTERNAL CLASS Z3_FUNC_INTERP
No documentation provided. -
EXTERNAL CLASS Z3_GOAL
No documentation provided. -
EXTERNAL CLASS Z3_MODEL
No documentation provided. -
EXTERNAL CLASS Z3_OPTIMIZE
No documentation provided. -
EXTERNAL CLASS Z3_PARAMS
No documentation provided. -
EXTERNAL CLASS Z3_PARAM_DESCRS
No documentation provided. -
EXTERNAL CLASS Z3_PATTERN
No documentation provided. -
EXTERNAL CLASS Z3_PROBE
No documentation provided. -
EXTERNAL CLASS Z3_RCF_NUM
No documentation provided. -
EXTERNAL CLASS Z3_SOLVER
No documentation provided. -
EXTERNAL CLASS Z3_SOLVER_CALLBACK
No documentation provided. -
EXTERNAL CLASS Z3_SORT
No documentation provided. -
EXTERNAL CLASS Z3_STATS
No documentation provided. -
EXTERNAL CLASS Z3_SYMBOL
No documentation provided. -
EXTERNAL CLASS Z3_TACTIC
No documentation provided.
-
-
Z3-C
Bound low-level Z3 C API functions.
-
EXTERNAL FUNCTION Z3-ADD-CONST-INTERP
- C
- M
- F
- A
Add a constant interpretation.
-
EXTERNAL FUNCTION Z3-ADD-FUNC-INTERP
- C
- M
- F
- DEFAULT-VALUE
Create a fresh func_interp object, add it to a model for a specified function. It has reference count 0.
-
EXTERNAL FUNCTION Z3-ADD-REC-DEF
- C
- F
- N
- ARGS
- BODY
Define the body of a recursive function.
-
EXTERNAL FUNCTION Z3-ALGEBRAIC-ADD
- C
- A
- B
Return the value a + b.
-
EXTERNAL FUNCTION Z3-ALGEBRAIC-DIV
- C
- A
- B
Return the value a / b.
-
EXTERNAL FUNCTION Z3-ALGEBRAIC-EQ
- C
- A
- B
Return
true
if a == b, andfalse
otherwise. -
EXTERNAL FUNCTION Z3-ALGEBRAIC-EVAL
- C
- P
- N
- A
Given a multivariate polynomial p(x_0, ..., x_{n-1}), return the sign of p(a[0], ..., a[n-1]).
-
EXTERNAL FUNCTION Z3-ALGEBRAIC-GE
- C
- A
- B
Return
true
if a >= b, andfalse
otherwise. -
EXTERNAL FUNCTION Z3-ALGEBRAIC-GET-I
- C
- A
Return which root of the polynomial the algebraic number represents.
-
EXTERNAL FUNCTION Z3-ALGEBRAIC-GET-POLY
- C
- A
Return the coefficients of the defining polynomial.
-
EXTERNAL FUNCTION Z3-ALGEBRAIC-GT
- C
- A
- B
Return
true
if a > b, andfalse
otherwise. -
EXTERNAL FUNCTION Z3-ALGEBRAIC-IS-NEG
- C
- A
Return
true
ifa
is negative, andfalse
otherwise. -
EXTERNAL FUNCTION Z3-ALGEBRAIC-IS-POS
- C
- A
Return
true
ifa
is positive, andfalse
otherwise. -
EXTERNAL FUNCTION Z3-ALGEBRAIC-IS-VALUE
- C
- A
Return
true
ifa
can be used as value in the Z3 real algebraic number package. -
EXTERNAL FUNCTION Z3-ALGEBRAIC-IS-ZERO
- C
- A
Return
true
ifa
is zero, andfalse
otherwise. -
EXTERNAL FUNCTION Z3-ALGEBRAIC-LE
- C
- A
- B
Return
true
if a <= b, andfalse
otherwise. -
EXTERNAL FUNCTION Z3-ALGEBRAIC-LT
- C
- A
- B
Return
true
if a < b, andfalse
otherwise. -
EXTERNAL FUNCTION Z3-ALGEBRAIC-MUL
- C
- A
- B
Return the value a * b.
-
EXTERNAL FUNCTION Z3-ALGEBRAIC-NEQ
- C
- A
- B
Return
true
if a != b, andfalse
otherwise. -
EXTERNAL FUNCTION Z3-ALGEBRAIC-POWER
- C
- A
- K
Return the a^k
-
EXTERNAL FUNCTION Z3-ALGEBRAIC-ROOT
- C
- A
- K
Return the a^(1/k)
-
EXTERNAL FUNCTION Z3-ALGEBRAIC-ROOTS
- C
- P
- N
- A
Given a multivariate polynomial p(x_0, ..., x_{n-1}, x_n), returns the roots of the univariate polynomial p(a[0], ..., a[n-1], x_n).
-
EXTERNAL FUNCTION Z3-ALGEBRAIC-SIGN
- C
- A
Return 1 if
a
is positive, 0 ifa
is zero, and -1 ifa
is negative. -
EXTERNAL FUNCTION Z3-ALGEBRAIC-SUB
- C
- A
- B
Return the value a - b.
-
EXTERNAL FUNCTION Z3-APP-TO-AST
- C
- A
-
EXTERNAL FUNCTION Z3-APPEND-LOG
- STRING
Append user-defined string to interaction log.
-
EXTERNAL FUNCTION Z3-APPLY-RESULT-DEC-REF
- C
- R
Decrement the reference counter of the given
Z3_apply_result
object. -
EXTERNAL FUNCTION Z3-APPLY-RESULT-GET-NUM-SUBGOALS
- C
- R
Return the number of subgoals in the
Z3_apply_result
object returned byZ3_tactic_apply
. -
EXTERNAL FUNCTION Z3-APPLY-RESULT-GET-SUBGOAL
- C
- R
- I
Return one of the subgoals in the
Z3_apply_result
object returned byZ3_tactic_apply
. -
EXTERNAL FUNCTION Z3-APPLY-RESULT-INC-REF
- C
- R
Increment the reference counter of the given
Z3_apply_result
object. -
EXTERNAL FUNCTION Z3-APPLY-RESULT-TO-STRING
- C
- R
Convert the
Z3_apply_result
object returned byZ3_tactic_apply
into a string. -
EXTERNAL FUNCTION Z3-AST-MAP-CONTAINS
- C
- M
- K
Return true if the map
m
contains the AST keyk
. -
EXTERNAL FUNCTION Z3-AST-MAP-DEC-REF
- C
- M
Decrement the reference counter of the given AST map.
-
EXTERNAL FUNCTION Z3-AST-MAP-ERASE
- C
- M
- K
Erase a key from the map.
-
EXTERNAL FUNCTION Z3-AST-MAP-FIND
- C
- M
- K
Return the value associated with the key
k
. -
EXTERNAL FUNCTION Z3-AST-MAP-INC-REF
- C
- M
Increment the reference counter of the given AST map.
-
EXTERNAL FUNCTION Z3-AST-MAP-INSERT
- C
- M
- K
- V
Store/Replace a new key, value pair in the given map.
-
EXTERNAL FUNCTION Z3-AST-MAP-KEYS
- C
- M
Return the keys stored in the given map.
-
EXTERNAL FUNCTION Z3-AST-MAP-RESET
- C
- M
Remove all keys from the given map.
-
EXTERNAL FUNCTION Z3-AST-MAP-SIZE
- C
- M
Return the size of the given map.
-
EXTERNAL FUNCTION Z3-AST-MAP-TO-STRING
- C
- M
Convert the given map into a string.
-
EXTERNAL FUNCTION Z3-AST-TO-STRING
- C
- A
Convert the given AST node into a string.
-
EXTERNAL FUNCTION Z3-AST-VECTOR-DEC-REF
- C
- V
Decrement the reference counter of the given AST vector.
-
EXTERNAL FUNCTION Z3-AST-VECTOR-GET
- C
- V
- I
Return the AST at position
i
in the AST vectorv
. -
EXTERNAL FUNCTION Z3-AST-VECTOR-INC-REF
- C
- V
Increment the reference counter of the given AST vector.
-
EXTERNAL FUNCTION Z3-AST-VECTOR-PUSH
- C
- V
- A
Add the AST
a
in the end of the AST vectorv
. The size ofv
is increased by one. -
EXTERNAL FUNCTION Z3-AST-VECTOR-RESIZE
- C
- V
- N
Resize the AST vector
v
. -
EXTERNAL FUNCTION Z3-AST-VECTOR-SET
- C
- V
- I
- A
Update position
i
of the AST vectorv
with the ASTa
. -
EXTERNAL FUNCTION Z3-AST-VECTOR-SIZE
- C
- V
Return the size of the given AST vector.
-
EXTERNAL FUNCTION Z3-AST-VECTOR-TO-STRING
- C
- V
Convert AST vector into a string.
-
EXTERNAL FUNCTION Z3-AST-VECTOR-TRANSLATE
- S
- V
- AST
Translate the AST vector
v
from contexts
into an AST vector in contextt
. -
EXTERNAL FUNCTION Z3-BENCHMARK-TO-SMTLIB-STRING
- C
- NAME
- LOGIC
- STATUS
- ATTRIBUTES
- NUM-ASSUMPTIONS
- ASSUMPTIONS
- FORMULA
Convert the given benchmark into SMT-LIB formatted string.
-
EXTERNAL FUNCTION Z3-CLOSE-LOG
Close interaction log.
-
EXTERNAL FUNCTION Z3-DATATYPE-UPDATE-FIELD
- C
- FIELD-ACCESS
- AST
- VALUE
Update record field with a value.
-
EXTERNAL FUNCTION Z3-DEC-REF
- C
- A
Decrement the reference counter of the given AST. The context
c
should have been created usingZ3_mk_context_rc
. This function is a NOOP ifc
was created usingZ3_mk_context
. -
EXTERNAL FUNCTION Z3-DEL-CONFIG
- C
Delete the given configuration object.
-
EXTERNAL FUNCTION Z3-DEL-CONSTRUCTOR
- C
- CONSTR
Reclaim memory allocated to constructor.
-
EXTERNAL FUNCTION Z3-DEL-CONSTRUCTOR-LIST
- C
- CLIST
Reclaim memory allocated for constructor list.
-
EXTERNAL FUNCTION Z3-DEL-CONTEXT
- C
Delete the given logical context.
-
EXTERNAL FUNCTION Z3-DISABLE-TRACE
- TAG
Disable tracing messages tagged as
tag
when Z3 is compiled in debug mode. It is a NOOP otherwise -
EXTERNAL FUNCTION Z3-ENABLE-TRACE
- TAG
Enable tracing messages tagged as
tag
when Z3 is compiled in debug mode. It is a NOOP otherwise -
EXTERNAL FUNCTION Z3-EVAL-SMTLIB2-STRING
- X
- STR
Parse and evaluate and SMT-LIB2 command sequence. The state from a previous call is saved so the next evaluation builds on top of the previous call.
-
EXTERNAL FUNCTION Z3-FINALIZE-MEMORY
Destroy all allocated resources.
-
EXTERNAL FUNCTION Z3-FIXEDPOINT-ADD-CALLBACK
- CTX
- F
- STATE
- NEW-LEMMA-EH
- PREDECESSOR-EH
- UNFOLD-EH
-
EXTERNAL FUNCTION Z3-FIXEDPOINT-ADD-CONSTRAINT
- C
- D
- E
- LVL
-
EXTERNAL FUNCTION Z3-FIXEDPOINT-ADD-COVER
- C
- D
- LEVEL
- PRED
- PROPERTY
Add property about the predicate
pred
. Add a property of predicatepred
atlevel
. It gets pushed forward when possible. -
EXTERNAL FUNCTION Z3-FIXEDPOINT-ADD-FACT
- C
- D
- R
- NUM-ARGS
- ARGS
Add a Database fact.
-
EXTERNAL FUNCTION Z3-FIXEDPOINT-ADD-INVARIANT
- C
- D
- PRED
- PROPERTY
Add an invariant for the predicate
pred
. Add an assumed invariant of predicatepred
. -
EXTERNAL FUNCTION Z3-FIXEDPOINT-ADD-RULE
- C
- D
- RULE
- NAME
Add a universal Horn clause as a named rule. The
horn_rule
should be of the form: -
EXTERNAL FUNCTION Z3-FIXEDPOINT-ASSERT
- C
- D
- AXIOM
Assert a constraint to the fixedpoint context.
-
EXTERNAL FUNCTION Z3-FIXEDPOINT-DEC-REF
- C
- D
Decrement the reference counter of the given fixedpoint context.
-
EXTERNAL FUNCTION Z3-FIXEDPOINT-FROM-FILE
- C
- F
- S
Parse an SMT-LIB2 file with fixedpoint rules. Add the rules to the current fixedpoint context. Return the set of queries in the file.
-
EXTERNAL FUNCTION Z3-FIXEDPOINT-FROM-STRING
- C
- F
- S
Parse an SMT-LIB2 string with fixedpoint rules. Add the rules to the current fixedpoint context. Return the set of queries in the string.
-
EXTERNAL FUNCTION Z3-FIXEDPOINT-GET-ANSWER
- C
- D
Retrieve a formula that encodes satisfying answers to the query.
-
EXTERNAL FUNCTION Z3-FIXEDPOINT-GET-ASSERTIONS
- C
- F
Retrieve set of background assertions from fixedpoint context.
-
EXTERNAL FUNCTION Z3-FIXEDPOINT-GET-COVER-DELTA
- C
- D
- LEVEL
- PRED
-
EXTERNAL FUNCTION Z3-FIXEDPOINT-GET-GROUND-SAT-ANSWER
- C
- D
Retrieve a bottom-up (from query) sequence of ground facts
-
EXTERNAL FUNCTION Z3-FIXEDPOINT-GET-HELP
- C
- F
Return a string describing all fixedpoint available parameters.
-
EXTERNAL FUNCTION Z3-FIXEDPOINT-GET-NUM-LEVELS
- C
- D
- PRED
Query the PDR engine for the maximal levels properties are known about predicate.
-
EXTERNAL FUNCTION Z3-FIXEDPOINT-GET-PARAM-DESCRS
- C
- F
Return the parameter description set for the given fixedpoint object.
-
EXTERNAL FUNCTION Z3-FIXEDPOINT-GET-REACHABLE
- C
- D
- PRED
-
EXTERNAL FUNCTION Z3-FIXEDPOINT-GET-REASON-UNKNOWN
- C
- D
Retrieve a string that describes the last status returned by
Z3_fixedpoint_query
. -
EXTERNAL FUNCTION Z3-FIXEDPOINT-GET-RULE-NAMES-ALONG-TRACE
- C
- D
Obtain the list of rules along the counterexample trace.
-
EXTERNAL FUNCTION Z3-FIXEDPOINT-GET-RULES
- C
- F
Retrieve set of rules from fixedpoint context.
-
EXTERNAL FUNCTION Z3-FIXEDPOINT-GET-RULES-ALONG-TRACE
- C
- D
Obtain the list of rules along the counterexample trace.
-
EXTERNAL FUNCTION Z3-FIXEDPOINT-GET-STATISTICS
- C
- D
Retrieve statistics information from the last call to
Z3_fixedpoint_query
. -
EXTERNAL FUNCTION Z3-FIXEDPOINT-INC-REF
- C
- D
Increment the reference counter of the given fixedpoint context
-
EXTERNAL FUNCTION Z3-FIXEDPOINT-INIT
- C
- D
- STATE
-
EXTERNAL FUNCTION Z3-FIXEDPOINT-QUERY
- C
- D
- QUERY
Pose a query against the asserted rules.
-
EXTERNAL FUNCTION Z3-FIXEDPOINT-QUERY-FROM-LVL
- C
- D
- QUERY
- LVL
Pose a query against the asserted rules at the given level.
-
EXTERNAL FUNCTION Z3-FIXEDPOINT-QUERY-RELATIONS
- C
- D
- NUM-RELATIONS
- RELATIONS
Pose multiple queries against the asserted rules.
-
EXTERNAL FUNCTION Z3-FIXEDPOINT-REGISTER-RELATION
- C
- D
- F
Register relation as Fixedpoint defined. Fixedpoint defined relations have least-fixedpoint semantics. For example, the relation is empty if it does not occur in a head or a fact.
-
EXTERNAL FUNCTION Z3-FIXEDPOINT-SET-PARAMS
- C
- F
- P
Set parameters on fixedpoint context.
-
EXTERNAL FUNCTION Z3-FIXEDPOINT-SET-PREDICATE-REPRESENTATION
- C
- D
- F
- NUM-RELATIONS
- RELATION-KINDS
Configure the predicate representation.
-
EXTERNAL FUNCTION Z3-FIXEDPOINT-SET-REDUCE-APP-CALLBACK
- C
- D
- CB
-
EXTERNAL FUNCTION Z3-FIXEDPOINT-SET-REDUCE-ASSIGN-CALLBACK
- C
- D
- CB
-
EXTERNAL FUNCTION Z3-FIXEDPOINT-TO-STRING
- C
- F
- NUM-QUERIES
- QUERIES
Print the current rules and background axioms as a string. param c - context. param f - fixedpoint context. param num_queries - number of additional queries to print. param queries - additional queries.
-
EXTERNAL FUNCTION Z3-FIXEDPOINT-UPDATE-RULE
- C
- D
- A
- NAME
Update a named rule. A rule with the same name must have been previously created.
-
EXTERNAL FUNCTION Z3-FPA-GET-EBITS
- C
- S
Retrieves the number of bits reserved for the exponent in a FloatingPoint sort.
-
EXTERNAL FUNCTION Z3-FPA-GET-NUMERAL-EXPONENT-BV
- C
- AST
- BIASED
Retrieves the exponent of a floating-point literal as a bit-vector expression.
-
EXTERNAL FUNCTION Z3-FPA-GET-NUMERAL-EXPONENT-INT64
- C
- AST
- N
- BIASED
Return the exponent value of a floating-point numeral as a signed 64-bit integer
-
EXTERNAL FUNCTION Z3-FPA-GET-NUMERAL-EXPONENT-STRING
- C
- AST
- BIASED
Return the exponent value of a floating-point numeral as a string.
-
EXTERNAL FUNCTION Z3-FPA-GET-NUMERAL-SIGN
- C
- AST
- SGN
Retrieves the sign of a floating-point literal.
-
EXTERNAL FUNCTION Z3-FPA-GET-NUMERAL-SIGN-BV
- C
- AST
Retrieves the sign of a floating-point literal as a bit-vector expression.
-
EXTERNAL FUNCTION Z3-FPA-GET-NUMERAL-SIGNIFICAND-BV
- C
- AST
Retrieves the significand of a floating-point literal as a bit-vector expression.
-
EXTERNAL FUNCTION Z3-FPA-GET-NUMERAL-SIGNIFICAND-STRING
- C
- AST
Return the significand value of a floating-point numeral as a string.
-
EXTERNAL FUNCTION Z3-FPA-GET-NUMERAL-SIGNIFICAND-UINT64
- C
- AST
- N
Return the significand value of a floating-point numeral as a uint64.
-
EXTERNAL FUNCTION Z3-FPA-GET-SBITS
- C
- S
Retrieves the number of bits reserved for the significand in a FloatingPoint sort.
-
EXTERNAL FUNCTION Z3-FPA-IS-NUMERAL-INF
- C
- AST
Checks whether a given floating-point numeral is a +oo or -oo.
-
EXTERNAL FUNCTION Z3-FPA-IS-NUMERAL-NAN
- C
- AST
Checks whether a given floating-point numeral is a NaN.
-
EXTERNAL FUNCTION Z3-FPA-IS-NUMERAL-NEGATIVE
- C
- AST
Checks whether a given floating-point numeral is negative.
-
EXTERNAL FUNCTION Z3-FPA-IS-NUMERAL-NORMAL
- C
- AST
Checks whether a given floating-point numeral is normal.
-
EXTERNAL FUNCTION Z3-FPA-IS-NUMERAL-POSITIVE
- C
- AST
Checks whether a given floating-point numeral is positive.
-
EXTERNAL FUNCTION Z3-FPA-IS-NUMERAL-SUBNORMAL
- C
- AST
Checks whether a given floating-point numeral is subnormal.
-
EXTERNAL FUNCTION Z3-FPA-IS-NUMERAL-ZERO
- C
- AST
Checks whether a given floating-point numeral is +zero or -zero.
-
EXTERNAL FUNCTION Z3-FUNC-DECL-TO-AST
- C
- F
Convert a
Z3_func_decl
intoZ3_ast
. This is just type casting. -
EXTERNAL FUNCTION Z3-FUNC-DECL-TO-STRING
- C
- D
-
EXTERNAL FUNCTION Z3-FUNC-ENTRY-DEC-REF
- C
- E
Decrement the reference counter of the given
Z3_func_entry
object. -
EXTERNAL FUNCTION Z3-FUNC-ENTRY-GET-ARG
- C
- E
- I
Return an argument of a
Z3_func_entry
object. -
EXTERNAL FUNCTION Z3-FUNC-ENTRY-GET-NUM-ARGS
- C
- E
Return the number of arguments in a
Z3_func_entry
object. -
EXTERNAL FUNCTION Z3-FUNC-ENTRY-GET-VALUE
- C
- E
Return the value of this point.
-
EXTERNAL FUNCTION Z3-FUNC-ENTRY-INC-REF
- C
- E
Increment the reference counter of the given
Z3_func_entry
object. -
EXTERNAL FUNCTION Z3-FUNC-INTERP-ADD-ENTRY
- C
- FI
- ARGS
- VALUE
add a function entry to a function interpretation.
-
EXTERNAL FUNCTION Z3-FUNC-INTERP-DEC-REF
- C
- F
Decrement the reference counter of the given Z3_func_interp object.
-
EXTERNAL FUNCTION Z3-FUNC-INTERP-GET-ARITY
- C
- F
Return the arity (number of arguments) of the given function interpretation.
-
EXTERNAL FUNCTION Z3-FUNC-INTERP-GET-ELSE
- C
- F
Return the 'else' value of the given function interpretation.
-
EXTERNAL FUNCTION Z3-FUNC-INTERP-GET-ENTRY
- C
- F
- I
Return a "point" of the given function interpretation. It represents the value of
f
in a particular point. -
EXTERNAL FUNCTION Z3-FUNC-INTERP-GET-NUM-ENTRIES
- C
- F
Return the number of entries in the given function interpretation.
-
EXTERNAL FUNCTION Z3-FUNC-INTERP-INC-REF
- C
- F
Increment the reference counter of the given Z3_func_interp object.
-
EXTERNAL FUNCTION Z3-FUNC-INTERP-SET-ELSE
- C
- F
- ELSE-VALUE
Return the 'else' value of the given function interpretation.
-
EXTERNAL FUNCTION Z3-GET-ALGEBRAIC-NUMBER-LOWER
- C
- A
- PRECISION
Return a lower bound for the given real algebraic number. The interval isolating the number is smaller than 1/10^precision. The result is a numeral AST of sort Real.
-
EXTERNAL FUNCTION Z3-GET-ALGEBRAIC-NUMBER-UPPER
- C
- A
- PRECISION
Return a upper bound for the given real algebraic number. The interval isolating the number is smaller than 1/10^precision. The result is a numeral AST of sort Real.
-
EXTERNAL FUNCTION Z3-GET-APP-ARG
- C
- A
- I
Return the i-th argument of the given application.
-
EXTERNAL FUNCTION Z3-GET-APP-DECL
- C
- A
Return the declaration of a constant or function application.
-
EXTERNAL FUNCTION Z3-GET-APP-NUM-ARGS
- C
- A
Return the number of argument of an application. If
t
is an constant, then the number of arguments is 0. -
EXTERNAL FUNCTION Z3-GET-ARITY
- C
- D
Alias for
Z3_get_domain_size
. -
EXTERNAL FUNCTION Z3-GET-ARRAY-SORT-DOMAIN
- C
- AST
Return the domain of the given array sort. In the case of a multi-dimensional array, this function returns the sort of the first dimension.
-
EXTERNAL FUNCTION Z3-GET-ARRAY-SORT-DOMAIN-N
- C
- AST
- IDX
Return the i'th domain sort of an n-dimensional array.
-
EXTERNAL FUNCTION Z3-GET-ARRAY-SORT-RANGE
- C
- AST
Return the range of the given array sort.
-
EXTERNAL FUNCTION Z3-GET-AS-ARRAY-FUNC-DECL
- C
- A
Return the function declaration
f
associated with a(_ as_array f)
node. -
EXTERNAL FUNCTION Z3-GET-AST-HASH
- C
- A
Return a hash code for the given AST. The hash code is structural but two different AST objects can map to the same hash. The result of
Z3_get_ast_id
returns an indentifier that is unique over the set of live AST objects. -
EXTERNAL FUNCTION Z3-GET-AST-ID
- C
- AST
Return a unique identifier for
t
. The identifier is unique up to structural equality. Thus, two ast nodes created by the same context and having the same children and same function symbols have the same identifiers. Ast nodes created in the same context, but having different children or different functions have different identifiers. Variables and quantifiers are also assigned different identifiers according to their structure. -
EXTERNAL FUNCTION Z3-GET-AST-KIND
- C
- A
Return the kind of the given AST.
-
EXTERNAL FUNCTION Z3-GET-BOOL-VALUE
- C
- A
Return
Z3_L_TRUE
ifa
is true,Z3_L_FALSE
if it is false, andZ3_L_UNDEF
otherwise. -
EXTERNAL FUNCTION Z3-GET-BV-SORT-SIZE
- C
- AST
Return the size of the given bit-vector sort.
-
EXTERNAL FUNCTION Z3-GET-DATATYPE-SORT-CONSTRUCTOR
- C
- AST
- IDX
Return idx'th constructor.
-
EXTERNAL FUNCTION Z3-GET-DATATYPE-SORT-CONSTRUCTOR-ACCESSOR
- C
- AST
- IDX-C
- IDX-A
Return idx_a'th accessor for the idx_c'th constructor.
-
EXTERNAL FUNCTION Z3-GET-DATATYPE-SORT-NUM-CONSTRUCTORS
- C
- AST
Return number of constructors for datatype.
-
EXTERNAL FUNCTION Z3-GET-DATATYPE-SORT-RECOGNIZER
- C
- AST
- IDX
Return idx'th recognizer.
-
EXTERNAL FUNCTION Z3-GET-DECL-AST-PARAMETER
- C
- D
- IDX
Return the expression value associated with an expression parameter.
-
EXTERNAL FUNCTION Z3-GET-DECL-DOUBLE-PARAMETER
- C
- D
- IDX
Return the double value associated with an double parameter.
-
EXTERNAL FUNCTION Z3-GET-DECL-FUNC-DECL-PARAMETER
- C
- D
- IDX
Return the expression value associated with an expression parameter.
-
EXTERNAL FUNCTION Z3-GET-DECL-INT-PARAMETER
- C
- D
- IDX
Return the integer value associated with an integer parameter.
-
EXTERNAL FUNCTION Z3-GET-DECL-KIND
- C
- D
Return declaration kind corresponding to declaration.
-
EXTERNAL FUNCTION Z3-GET-DECL-NAME
- C
- D
Return the constant declaration name as a symbol.
-
EXTERNAL FUNCTION Z3-GET-DECL-NUM-PARAMETERS
- C
- D
Return the number of parameters associated with a declaration.
-
EXTERNAL FUNCTION Z3-GET-DECL-PARAMETER-KIND
- C
- D
- IDX
Return the parameter type associated with a declaration.
-
EXTERNAL FUNCTION Z3-GET-DECL-RATIONAL-PARAMETER
- C
- D
- IDX
Return the rational value, as a string, associated with a rational parameter.
-
EXTERNAL FUNCTION Z3-GET-DECL-SORT-PARAMETER
- C
- D
- IDX
Return the sort value associated with a sort parameter.
-
EXTERNAL FUNCTION Z3-GET-DECL-SYMBOL-PARAMETER
- C
- D
- IDX
Return the double value associated with an double parameter.
-
EXTERNAL FUNCTION Z3-GET-DENOMINATOR
- C
- A
Return the denominator (as a numeral AST) of a numeral AST of sort Real.
-
EXTERNAL FUNCTION Z3-GET-DOMAIN
- C
- D
- I
Return the sort of the i-th parameter of the given function declaration.
-
EXTERNAL FUNCTION Z3-GET-DOMAIN-SIZE
- C
- D
Return the number of parameters of the given declaration.
-
EXTERNAL FUNCTION Z3-GET-ERROR-CODE
- C
Return the error code for the last API call.
-
EXTERNAL FUNCTION Z3-GET-ERROR-MSG
- C
- ERR
Return a string describing the given error code.
-
EXTERNAL FUNCTION Z3-GET-ESTIMATED-ALLOC-SIZE
Return the estimated allocated memory in bytes.
-
EXTERNAL FUNCTION Z3-GET-FINITE-DOMAIN-SORT-SIZE
- C
- S
- R
Store the size of the sort in
r
. Returnfalse
if the call failed. That is, Z3_get_sort_kind(s) == Z3_FINITE_DOMAIN_SORT -
EXTERNAL FUNCTION Z3-GET-FULL-VERSION
Return a string that fully describes the version of Z3 in use.
-
EXTERNAL FUNCTION Z3-GET-FUNC-DECL-ID
- C
- F
Return a unique identifier for
f
. -
EXTERNAL FUNCTION Z3-GET-IMPLIED-EQUALITIES
- C
- S
- NUM-TERMS
- TERMS
- CLASS-IDS
Retrieve congruence class representatives for terms.
-
EXTERNAL FUNCTION Z3-GET-INDEX-VALUE
- C
- A
Return index of de-Bruijn bound variable.
-
EXTERNAL FUNCTION Z3-GET-LSTRING
- C
- S
- LENGTH
Retrieve the string constant stored in
s
. The string can contain escape sequences. Characters in the range 1 to 255 are literal. Characters in the range 0, and 256 above are escaped. -
EXTERNAL FUNCTION Z3-GET-NUM-PROBES
- C
Return the number of builtin probes available in Z3.
-
EXTERNAL FUNCTION Z3-GET-NUM-TACTICS
- C
Return the number of builtin tactics available in Z3.
-
EXTERNAL FUNCTION Z3-GET-NUMERAL-BINARY-STRING
- C
- A
Return numeral value, as a binary string of a numeric constant term
-
EXTERNAL FUNCTION Z3-GET-NUMERAL-DECIMAL-STRING
- C
- A
- PRECISION
Return numeral as a string in decimal notation. The result has at most
precision
decimal places. -
EXTERNAL FUNCTION Z3-GET-NUMERAL-DOUBLE
- C
- A
Return numeral as a double.
-
EXTERNAL FUNCTION Z3-GET-NUMERAL-INT
- C
- V
- I
Similar to
Z3_get_numeral_string
, but only succeeds if the value can fit in a machine int. Returntrue
if the call succeeded. -
EXTERNAL FUNCTION Z3-GET-NUMERAL-INT64
- C
- V
- I
Similar to
Z3_get_numeral_string
, but only succeeds if the value can fit in a machineint64_t
int. Returntrue
if the call succeeded. -
EXTERNAL FUNCTION Z3-GET-NUMERAL-RATIONAL-INT64
- C
- V
- NUM
- DEN
Similar to
Z3_get_numeral_string
, but only succeeds if the value can fit as a rational number as machineint64_t
int. Returntrue
if the call succeeded. -
EXTERNAL FUNCTION Z3-GET-NUMERAL-SMALL
- C
- A
- NUM
- DEN
Return numeral value, as a pair of 64 bit numbers if the representation fits.
-
EXTERNAL FUNCTION Z3-GET-NUMERAL-STRING
- C
- A
Return numeral value, as a decimal string of a numeric constant term
-
EXTERNAL FUNCTION Z3-GET-NUMERAL-UINT
- C
- V
- U
Similar to
Z3_get_numeral_string
, but only succeeds if the value can fit in a machine unsigned int. Returntrue
if the call succeeded. -
EXTERNAL FUNCTION Z3-GET-NUMERAL-UINT64
- C
- V
- U
Similar to
Z3_get_numeral_string
, but only succeeds if the value can fit in a machineuint64_t
int. Returntrue
if the call succeeded. -
EXTERNAL FUNCTION Z3-GET-NUMERATOR
- C
- A
Return the numerator (as a numeral AST) of a numeral AST of sort Real.
-
EXTERNAL FUNCTION Z3-GET-PATTERN
- C
- P
- IDX
Return i'th ast in pattern.
-
EXTERNAL FUNCTION Z3-GET-PATTERN-NUM-TERMS
- C
- P
Return number of terms in pattern.
-
EXTERNAL FUNCTION Z3-GET-PROBE-NAME
- C
- I
Return the name of the
i
probe. -
EXTERNAL FUNCTION Z3-GET-QUANTIFIER-BODY
- C
- A
Return body of quantifier.
-
EXTERNAL FUNCTION Z3-GET-QUANTIFIER-BOUND-NAME
- C
- A
- I
Return symbol of the i'th bound variable.
-
EXTERNAL FUNCTION Z3-GET-QUANTIFIER-BOUND-SORT
- C
- A
- I
Return sort of the i'th bound variable.
-
EXTERNAL FUNCTION Z3-GET-QUANTIFIER-NO-PATTERN-AST
- C
- A
- I
Return i'th no_pattern.
-
EXTERNAL FUNCTION Z3-GET-QUANTIFIER-NUM-BOUND
- C
- A
Return number of bound variables of quantifier.
-
EXTERNAL FUNCTION Z3-GET-QUANTIFIER-NUM-NO-PATTERNS
- C
- A
Return number of no_patterns used in quantifier.
-
EXTERNAL FUNCTION Z3-GET-QUANTIFIER-NUM-PATTERNS
- C
- A
Return number of patterns used in quantifier.
-
EXTERNAL FUNCTION Z3-GET-QUANTIFIER-PATTERN-AST
- C
- A
- I
Return i'th pattern.
-
EXTERNAL FUNCTION Z3-GET-QUANTIFIER-WEIGHT
- C
- A
Obtain weight of quantifier.
-
EXTERNAL FUNCTION Z3-GET-RANGE
- C
- D
Return the range of the given declaration.
-
EXTERNAL FUNCTION Z3-GET-RE-SORT-BASIS
- C
- S
Retrieve basis sort for regex sort.
-
EXTERNAL FUNCTION Z3-GET-RELATION-ARITY
- C
- S
Return arity of relation.
-
EXTERNAL FUNCTION Z3-GET-RELATION-COLUMN
- C
- S
- COL
Return sort at i'th column of relation sort.
-
EXTERNAL FUNCTION Z3-GET-SEQ-SORT-BASIS
- C
- S
Retrieve basis sort for sequence sort.
-
EXTERNAL FUNCTION Z3-GET-SORT
- C
- A
Return the sort of an AST node.
-
EXTERNAL FUNCTION Z3-GET-SORT-ID
- C
- S
Return a unique identifier for
s
. -
EXTERNAL FUNCTION Z3-GET-SORT-KIND
- C
- AST
Return the sort kind (e.g., array, tuple, int, bool, etc).
-
EXTERNAL FUNCTION Z3-GET-SORT-NAME
- C
- D
Return the sort name as a symbol.
-
EXTERNAL FUNCTION Z3-GET-STRING
- C
- S
Retrieve the string constant stored in
s
. Characters outside the basic printiable ASCII range are escaped. -
EXTERNAL FUNCTION Z3-GET-STRING-CONTENTS
- C
- S
- LENGTH
- CONTENTS
Retrieve the unescaped string constant stored in
s
. -
EXTERNAL FUNCTION Z3-GET-STRING-LENGTH
- C
- S
Retrieve the length of the unescaped string constant stored in
s
. -
EXTERNAL FUNCTION Z3-GET-SYMBOL-INT
- C
- S
Return the symbol int value.
-
EXTERNAL FUNCTION Z3-GET-SYMBOL-KIND
- C
- S
Return
Z3_INT_SYMBOL
if the symbol was constructed usingZ3_mk_int_symbol
, andZ3_STRING_SYMBOL
if the symbol was constructed usingZ3_mk_string_symbol
. -
EXTERNAL FUNCTION Z3-GET-SYMBOL-STRING
- C
- S
Return the symbol name.
-
EXTERNAL FUNCTION Z3-GET-TACTIC-NAME
- C
- I
Return the name of the idx tactic.
-
EXTERNAL FUNCTION Z3-GET-TUPLE-SORT-FIELD-DECL
- C
- AST
- I
Return the i-th field declaration (i.e., projection function declaration) of the given tuple sort.
-
EXTERNAL FUNCTION Z3-GET-TUPLE-SORT-MK-DECL
- C
- AST
Return the constructor declaration of the given tuple sort.
-
EXTERNAL FUNCTION Z3-GET-TUPLE-SORT-NUM-FIELDS
- C
- AST
Return the number of fields of the given tuple sort.
-
EXTERNAL FUNCTION Z3-GET-VERSION
- MAJOR
- MINOR
- BUILD-NUMBER
- REVISION-NUMBER
Return Z3 version number information.
-
EXTERNAL FUNCTION Z3-GLOBAL-PARAM-GET
- PARAM-ID
- PARAM-VALUE
Get a global (or module) parameter.
-
EXTERNAL FUNCTION Z3-GLOBAL-PARAM-RESET-ALL
Restore the value of all global (and module) parameters. This command will not affect already created objects (such as tactics and solvers).
-
EXTERNAL FUNCTION Z3-GLOBAL-PARAM-SET
- PARAM-ID
- PARAM-VALUE
Set a global (or module) parameter. This setting is shared by all Z3 contexts.
-
EXTERNAL FUNCTION Z3-GOAL-ASSERT
- C
- G
- A
Add a new formula
a
to the given goal. The formula is split according to the following procedure that is applied until a fixed-point: Conjunctions are split into separate formulas. Negations are distributed over disjunctions, resulting in separate formulas. If the goal isfalse,
adding new formulas is a no-op. If the formulaa
istrue,
then nothing is added. If the formulaa
isfalse,
then the entire goal is replaced by the formulafalse
. -
EXTERNAL FUNCTION Z3-GOAL-CONVERT-MODEL
- C
- G
- M
Convert a model of the formulas of a goal to a model of an original goal. The model may be null, in which case the returned model is valid if the goal was established satisfiable.
-
EXTERNAL FUNCTION Z3-GOAL-DEC-REF
- C
- G
Decrement the reference counter of the given goal.
-
EXTERNAL FUNCTION Z3-GOAL-DEPTH
- C
- G
Return the depth of the given goal. It tracks how many transformations were applied to it.
-
EXTERNAL FUNCTION Z3-GOAL-FORMULA
- C
- G
- IDX
Return a formula from the given goal.
-
EXTERNAL FUNCTION Z3-GOAL-INC-REF
- C
- G
Increment the reference counter of the given goal.
-
EXTERNAL FUNCTION Z3-GOAL-INCONSISTENT
- C
- G
Return
true
if the given goal contains the formulafalse
. -
EXTERNAL FUNCTION Z3-GOAL-IS-DECIDED-SAT
- C
- G
Return
true
if the goal is empty, and it is precise or the product of a under approximation. -
EXTERNAL FUNCTION Z3-GOAL-IS-DECIDED-UNSAT
- C
- G
Return
true
if the goal contains false, and it is precise or the product of an over approximation. -
EXTERNAL FUNCTION Z3-GOAL-NUM-EXPRS
- C
- G
Return the number of formulas, subformulas and terms in the given goal.
-
EXTERNAL FUNCTION Z3-GOAL-PRECISION
- C
- G
Return the "precision" of the given goal. Goals can be transformed using over and under approximations. A under approximation is applied when the objective is to find a model for a given goal. An over approximation is applied when the objective is to find a proof for a given goal.
-
EXTERNAL FUNCTION Z3-GOAL-RESET
- C
- G
Erase all formulas from the given goal.
-
EXTERNAL FUNCTION Z3-GOAL-SIZE
- C
- G
Return the number of formulas in the given goal.
-
EXTERNAL FUNCTION Z3-GOAL-TO-DIMACS-STRING
- C
- G
- INCLUDE-NAMES
Convert a goal into a DIMACS formatted string. The goal must be in CNF. You can convert a goal to CNF by applying the tseitin-cnf tactic. Bit-vectors are not automatically converted to Booleans either, so if the caller intends to preserve satisfiability, it should apply bit-blasting tactics. Quantifiers and theory atoms will not be encoded.
-
EXTERNAL FUNCTION Z3-GOAL-TO-STRING
- C
- G
Convert a goal into a string.
-
EXTERNAL FUNCTION Z3-GOAL-TRANSLATE
- SOURCE
- G
- TARGET
Copy a goal
g
from the contextsource
to the contexttarget
. -
EXTERNAL FUNCTION Z3-INC-REF
- C
- A
Increment the reference counter of the given AST. The context
c
should have been created usingZ3_mk_context_rc
. This function is a NOOP ifc
was created usingZ3_mk_context
. -
EXTERNAL FUNCTION Z3-INTERRUPT
- C
Interrupt the execution of a Z3 procedure. This procedure can be used to interrupt: solvers, simplifiers and tactics.
-
EXTERNAL FUNCTION Z3-IS-ALGEBRAIC-NUMBER
- C
- A
Return
true
if the given AST is a real algebraic number. -
EXTERNAL FUNCTION Z3-IS-APP
- C
- A
-
EXTERNAL FUNCTION Z3-IS-AS-ARRAY
- C
- A
The
(_ as-array f)
AST node is a construct for assigning interpretations for arrays in Z3. It is the array such that forall indicesi
we have that(select (_ as-array f) i)
is equal to(f i)
. This procedure returnstrue
if thea
is anas-array
AST node. -
EXTERNAL FUNCTION Z3-IS-CHAR-SORT
- C
- S
Check if
s
is a character sort. -
EXTERNAL FUNCTION Z3-IS-EQ-AST
- C
- T1
- T2
Compare terms.
-
EXTERNAL FUNCTION Z3-IS-EQ-FUNC-DECL
- C
- F1
- F2
Compare terms.
-
EXTERNAL FUNCTION Z3-IS-EQ-SORT
- C
- S1
- S2
compare sorts.
-
EXTERNAL FUNCTION Z3-IS-LAMBDA
- C
- A
Determine if ast is a lambda expression.
-
EXTERNAL FUNCTION Z3-IS-NUMERAL-AST
- C
- A
-
EXTERNAL FUNCTION Z3-IS-QUANTIFIER-EXISTS
- C
- A
Determine if ast is an existential quantifier.
-
EXTERNAL FUNCTION Z3-IS-QUANTIFIER-FORALL
- C
- A
Determine if an ast is a universal quantifier.
-
EXTERNAL FUNCTION Z3-IS-RE-SORT
- C
- S
Check if
s
is a regular expression sort. -
EXTERNAL FUNCTION Z3-IS-SEQ-SORT
- C
- S
Check if
s
is a sequence sort. -
EXTERNAL FUNCTION Z3-IS-STRING
- C
- S
Determine if
s
is a string constant. -
EXTERNAL FUNCTION Z3-IS-STRING-SORT
- C
- S
Check if
s
is a string sort. -
EXTERNAL FUNCTION Z3-IS-WELL-SORTED
- C
- AST
Return
true
if the given expressiont
is well sorted. -
EXTERNAL FUNCTION Z3-MK-ADD
- C
- NUM-ARGS
- ARGS
Create an AST node representing
args[0] + ... + args[num_args-1]
. -
EXTERNAL FUNCTION Z3-MK-AND
- C
- NUM-ARGS
- ARGS
Create an AST node representing
args[0] and ... and args[num_args-1]
. -
EXTERNAL FUNCTION Z3-MK-APP
- C
- D
- NUM-ARGS
- ARGS
Create a constant or function application.
-
EXTERNAL FUNCTION Z3-MK-ARRAY-DEFAULT
- C
- ARRAY
Access the array default value. Produces the default range value, for arrays that can be represented as finite maps with a default range value.
-
EXTERNAL FUNCTION Z3-MK-ARRAY-EXT
- C
- ARG1
- ARG2
Create array extensionality index given two arrays with the same sort. The meaning is given by the axiom: (=> (= (select A (array-ext A B)) (select B (array-ext A B))) (= A B))
-
EXTERNAL FUNCTION Z3-MK-ARRAY-SORT
- C
- DOMAIN
- RANGE
Create an array type.
-
EXTERNAL FUNCTION Z3-MK-ARRAY-SORT-N
- C
- N
- DOMAIN
- RANGE
Create an array type with N arguments
-
EXTERNAL FUNCTION Z3-MK-AS-ARRAY
- C
- F
Create array with the same interpretation as a function. The array satisfies the property (f x) = (select (_ as-array f) x) for every argument x.
-
EXTERNAL FUNCTION Z3-MK-AST-MAP
- C
Return an empty mapping from AST to AST
-
EXTERNAL FUNCTION Z3-MK-AST-VECTOR
- C
Return an empty AST vector.
-
EXTERNAL FUNCTION Z3-MK-ATLEAST
- C
- NUM-ARGS
- ARGS
- K
Pseudo-Boolean relations.
-
EXTERNAL FUNCTION Z3-MK-ATMOST
- C
- NUM-ARGS
- ARGS
- K
Pseudo-Boolean relations.
-
EXTERNAL FUNCTION Z3-MK-BOOL-SORT
- C
Create the Boolean type.
-
EXTERNAL FUNCTION Z3-MK-BOUND
- C
- INDEX
- TY
Create a bound variable.
-
EXTERNAL FUNCTION Z3-MK-BV-NUMERAL
- C
- SZ
- BITS
create a bit-vector numeral from a vector of Booleans.
-
EXTERNAL FUNCTION Z3-MK-BV-SORT
- C
- SZ
Create a bit-vector type of the given size.
-
EXTERNAL FUNCTION Z3-MK-BV2INT
- C
- T1
- IS-SIGNED
Create an integer from the bit-vector argument
t1
. Ifis_signed
is false, then the bit-vectort1
is treated as unsigned. So the result is non-negative and in the range[0..2^N-1]
, where N are the number of bits int1
. Ifis_signed
is true,t1
is treated as a signed bit-vector. -
EXTERNAL FUNCTION Z3-MK-BVADD
- C
- T1
- T2
Standard two's complement addition.
-
EXTERNAL FUNCTION Z3-MK-BVADD-NO-OVERFLOW
- C
- T1
- T2
- IS-SIGNED
Create a predicate that checks that the bit-wise addition of
t1
andt2
does not overflow. -
EXTERNAL FUNCTION Z3-MK-BVADD-NO-UNDERFLOW
- C
- T1
- T2
Create a predicate that checks that the bit-wise signed addition of
t1
andt2
does not underflow. -
EXTERNAL FUNCTION Z3-MK-BVAND
- C
- T1
- T2
Bitwise and.
-
EXTERNAL FUNCTION Z3-MK-BVASHR
- C
- T1
- T2
Arithmetic shift right.
-
EXTERNAL FUNCTION Z3-MK-BVLSHR
- C
- T1
- T2
Logical shift right.
-
EXTERNAL FUNCTION Z3-MK-BVMUL
- C
- T1
- T2
Standard two's complement multiplication.
-
EXTERNAL FUNCTION Z3-MK-BVMUL-NO-OVERFLOW
- C
- T1
- T2
- IS-SIGNED
Create a predicate that checks that the bit-wise multiplication of
t1
andt2
does not overflow. -
EXTERNAL FUNCTION Z3-MK-BVMUL-NO-UNDERFLOW
- C
- T1
- T2
Create a predicate that checks that the bit-wise signed multiplication of
t1
andt2
does not underflow. -
EXTERNAL FUNCTION Z3-MK-BVNAND
- C
- T1
- T2
Bitwise nand.
-
EXTERNAL FUNCTION Z3-MK-BVNEG
- C
- T1
Standard two's complement unary minus.
-
EXTERNAL FUNCTION Z3-MK-BVNEG-NO-OVERFLOW
- C
- T1
Check that bit-wise negation does not overflow when
t1
is interpreted as a signed bit-vector. -
EXTERNAL FUNCTION Z3-MK-BVNOR
- C
- T1
- T2
Bitwise nor.
-
EXTERNAL FUNCTION Z3-MK-BVNOT
- C
- T1
Bitwise negation.
-
EXTERNAL FUNCTION Z3-MK-BVOR
- C
- T1
- T2
Bitwise or.
-
EXTERNAL FUNCTION Z3-MK-BVREDAND
- C
- T1
Take conjunction of bits in vector, return vector of length 1.
-
EXTERNAL FUNCTION Z3-MK-BVREDOR
- C
- T1
Take disjunction of bits in vector, return vector of length 1.
-
EXTERNAL FUNCTION Z3-MK-BVSDIV
- C
- T1
- T2
Two's complement signed division.
-
EXTERNAL FUNCTION Z3-MK-BVSDIV-NO-OVERFLOW
- C
- T1
- T2
Create a predicate that checks that the bit-wise signed division of
t1
andt2
does not overflow. -
EXTERNAL FUNCTION Z3-MK-BVSGE
- C
- T1
- T2
Two's complement signed greater than or equal to.
-
EXTERNAL FUNCTION Z3-MK-BVSGT
- C
- T1
- T2
Two's complement signed greater than.
-
EXTERNAL FUNCTION Z3-MK-BVSHL
- C
- T1
- T2
Shift left.
-
EXTERNAL FUNCTION Z3-MK-BVSLE
- C
- T1
- T2
Two's complement signed less than or equal to.
-
EXTERNAL FUNCTION Z3-MK-BVSLT
- C
- T1
- T2
Two's complement signed less than.
-
EXTERNAL FUNCTION Z3-MK-BVSMOD
- C
- T1
- T2
Two's complement signed remainder (sign follows divisor).
-
EXTERNAL FUNCTION Z3-MK-BVSREM
- C
- T1
- T2
Two's complement signed remainder (sign follows dividend).
-
EXTERNAL FUNCTION Z3-MK-BVSUB
- C
- T1
- T2
Standard two's complement subtraction.
-
EXTERNAL FUNCTION Z3-MK-BVSUB-NO-OVERFLOW
- C
- T1
- T2
Create a predicate that checks that the bit-wise signed subtraction of
t1
andt2
does not overflow. -
EXTERNAL FUNCTION Z3-MK-BVSUB-NO-UNDERFLOW
- C
- T1
- T2
- IS-SIGNED
Create a predicate that checks that the bit-wise subtraction of
t1
andt2
does not underflow. -
EXTERNAL FUNCTION Z3-MK-BVUDIV
- C
- T1
- T2
Unsigned division.
-
EXTERNAL FUNCTION Z3-MK-BVUGE
- C
- T1
- T2
Unsigned greater than or equal to.
-
EXTERNAL FUNCTION Z3-MK-BVUGT
- C
- T1
- T2
Unsigned greater than.
-
EXTERNAL FUNCTION Z3-MK-BVULE
- C
- T1
- T2
Unsigned less than or equal to.
-
EXTERNAL FUNCTION Z3-MK-BVULT
- C
- T1
- T2
Unsigned less than.
-
EXTERNAL FUNCTION Z3-MK-BVUREM
- C
- T1
- T2
Unsigned remainder.
-
EXTERNAL FUNCTION Z3-MK-BVXNOR
- C
- T1
- T2
Bitwise xnor.
-
EXTERNAL FUNCTION Z3-MK-BVXOR
- C
- T1
- T2
Bitwise exclusive-or.
-
EXTERNAL FUNCTION Z3-MK-CHAR
- C
- CH
-
EXTERNAL FUNCTION Z3-MK-CHAR-FROM-BV
- C
- BV
Create a character from a bit-vector (code point).
-
EXTERNAL FUNCTION Z3-MK-CHAR-IS-DIGIT
- C
- CH
Create a check if the character is a digit.
-
EXTERNAL FUNCTION Z3-MK-CHAR-LE
- C
- CH1
- CH2
Create less than or equal to between two characters.
-
EXTERNAL FUNCTION Z3-MK-CHAR-SORT
- C
Create a sort for unicode characters.
-
EXTERNAL FUNCTION Z3-MK-CHAR-TO-BV
- C
- CH
Create a bit-vector (code point) from character.
-
EXTERNAL FUNCTION Z3-MK-CHAR-TO-INT
- C
- CH
Create an integer (code point) from character.
-
EXTERNAL FUNCTION Z3-MK-CONCAT
- C
- T1
- T2
Concatenate the given bit-vectors.
-
EXTERNAL FUNCTION Z3-MK-CONFIG
Create a configuration object for the Z3 context object.
-
EXTERNAL FUNCTION Z3-MK-CONST
- C
- S
- TY
Declare and create a constant.
-
EXTERNAL FUNCTION Z3-MK-CONST-ARRAY
- C
- DOMAIN
- V
Create the constant array.
-
EXTERNAL FUNCTION Z3-MK-CONSTRUCTOR
- C
- NAME
- RECOGNIZER
- NUM-FIELDS
- FIELD-NAMES
- SORTS
- SORT-REFS
Create a constructor.
-
EXTERNAL FUNCTION Z3-MK-CONSTRUCTOR-LIST
- C
- NUM-CONSTRUCTORS
- CONSTRUCTORS
Create list of constructors.
-
EXTERNAL FUNCTION Z3-MK-CONTEXT
- C
Create a context using the given configuration.
-
EXTERNAL FUNCTION Z3-MK-CONTEXT-RC
- C
Create a context using the given configuration. This function is similar to
Z3_mk_context
. However, in the context returned by this function, the user is responsible for managingZ3_ast
reference counters. Managing reference counters is a burden and error-prone, but allows the user to use the memory more efficiently. The user must invokeZ3_inc_ref
for anyZ3_ast
returned by Z3, andZ3_dec_ref
whenever theZ3_ast
is not needed anymore. This idiom is similar to the one used in BDD (binary decision diagrams) packages such as CUDD. -
EXTERNAL FUNCTION Z3-MK-DATATYPE
- C
- NAME
- NUM-CONSTRUCTORS
- CONSTRUCTORS
Create datatype, such as lists, trees, records, enumerations or unions of records. The datatype may be recursive. Return the datatype sort.
-
EXTERNAL FUNCTION Z3-MK-DATATYPES
- C
- NUM-SORTS
- SORT-NAMES
- SORTS
- CONSTRUCTOR-LISTS
Create mutually recursive datatypes.
-
EXTERNAL FUNCTION Z3-MK-DISTINCT
- C
- NUM-ARGS
- ARGS
Create an AST node representing
distinct(args[0], ..., args[num_args-1])
. -
EXTERNAL FUNCTION Z3-MK-DIV
- C
- ARG1
- ARG2
Create an AST node representing
arg1 div arg2
. -
EXTERNAL FUNCTION Z3-MK-DIVIDES
- C
- T1
- T2
Create division predicate.
-
EXTERNAL FUNCTION Z3-MK-EMPTY-SET
- C
- DOMAIN
Create the empty set.
-
EXTERNAL FUNCTION Z3-MK-ENUMERATION-SORT
- C
- NAME
- N
- ENUM-NAMES
- ENUM-CONSTS
- ENUM-TESTERS
Create a enumeration sort.
-
EXTERNAL FUNCTION Z3-MK-EQ
- C
- L
- R
Create an AST node representing
l = r
. -
EXTERNAL FUNCTION Z3-MK-EXISTS
- C
- WEIGHT
- NUM-PATTERNS
- PATTERNS
- NUM-DECLS
- SORTS
- DECL-NAMES
- BODY
Create an exists formula. Similar to
Z3_mk_forall
. -
EXTERNAL FUNCTION Z3-MK-EXISTS-CONST
- C
- WEIGHT
- NUM-BOUND
- BOUND
- NUM-PATTERNS
- PATTERNS
- BODY
Similar to
Z3_mk_forall_const
. Create an existential quantifier using a list of constants that will form the set of bound variables. -
EXTERNAL FUNCTION Z3-MK-EXT-ROTATE-LEFT
- C
- T1
- T2
Rotate bits of
t1
to the leftt2
times. -
EXTERNAL FUNCTION Z3-MK-EXT-ROTATE-RIGHT
- C
- T1
- T2
Rotate bits of
t1
to the rightt2
times. -
EXTERNAL FUNCTION Z3-MK-EXTRACT
- C
- HIGH
- LOW
- T1
Extract the bits
high
down tolow
from a bit-vector of sizem
to yield a new bit-vector of sizen,
wheren = high - low + 1
. -
EXTERNAL FUNCTION Z3-MK-FALSE
- C
Create an AST node representing
false
. -
EXTERNAL FUNCTION Z3-MK-FINITE-DOMAIN-SORT
- C
- NAME
- SIZE
Create a named finite domain sort.
-
EXTERNAL FUNCTION Z3-MK-FIXEDPOINT
- C
Create a new fixedpoint context.
-
EXTERNAL FUNCTION Z3-MK-FORALL
- C
- WEIGHT
- NUM-PATTERNS
- PATTERNS
- NUM-DECLS
- SORTS
- DECL-NAMES
- BODY
Create a forall formula. It takes an expression
body
that contains bound variables of the same sorts as the sorts listed in the arraysorts
. The bound variables are de-Bruijn indices created usingZ3_mk_bound
. The arraydecl_names
contains the names that the quantified formula uses for the bound variables. Z3 applies the convention that the last element in thedecl_names
andsorts
array refers to the variable with index 0, the second to last element ofdecl_names
andsorts
refers to the variable with index 1, etc. -
EXTERNAL FUNCTION Z3-MK-FORALL-CONST
- C
- WEIGHT
- NUM-BOUND
- BOUND
- NUM-PATTERNS
- PATTERNS
- BODY
Create a universal quantifier using a list of constants that will form the set of bound variables.
-
EXTERNAL FUNCTION Z3-MK-FPA-ABS
- C
- AST
Floating-point absolute value
-
EXTERNAL FUNCTION Z3-MK-FPA-ADD
- C
- RM
- T1
- T2
Floating-point addition
-
EXTERNAL FUNCTION Z3-MK-FPA-DIV
- C
- RM
- T1
- T2
Floating-point division
-
EXTERNAL FUNCTION Z3-MK-FPA-EQ
- C
- T1
- T2
Floating-point equality.
-
EXTERNAL FUNCTION Z3-MK-FPA-FMA
- C
- RM
- T1
- T2
- T3
Floating-point fused multiply-add.
-
EXTERNAL FUNCTION Z3-MK-FPA-FP
- C
- SGN
- EXP
- SIG
Create an expression of FloatingPoint sort from three bit-vector expressions.
-
EXTERNAL FUNCTION Z3-MK-FPA-GEQ
- C
- T1
- T2
Floating-point greater than or equal.
-
EXTERNAL FUNCTION Z3-MK-FPA-GT
- C
- T1
- T2
Floating-point greater than.
-
EXTERNAL FUNCTION Z3-MK-FPA-INF
- C
- S
- NEGATIVE
Create a floating-point infinity of sort
s
. -
EXTERNAL FUNCTION Z3-MK-FPA-IS-INFINITE
- C
- AST
Predicate indicating whether
t
is a floating-point number representing +oo or -oo. -
EXTERNAL FUNCTION Z3-MK-FPA-IS-NAN
- C
- AST
Predicate indicating whether
t
is a NaN. -
EXTERNAL FUNCTION Z3-MK-FPA-IS-NEGATIVE
- C
- AST
Predicate indicating whether
t
is a negative floating-point number. -
EXTERNAL FUNCTION Z3-MK-FPA-IS-NORMAL
- C
- AST
Predicate indicating whether
t
is a normal floating-point number. -
EXTERNAL FUNCTION Z3-MK-FPA-IS-POSITIVE
- C
- AST
Predicate indicating whether
t
is a positive floating-point number. -
EXTERNAL FUNCTION Z3-MK-FPA-IS-SUBNORMAL
- C
- AST
Predicate indicating whether
t
is a subnormal floating-point number. -
EXTERNAL FUNCTION Z3-MK-FPA-IS-ZERO
- C
- AST
Predicate indicating whether
t
is a floating-point number with zero value, i.e., +zero or -zero. -
EXTERNAL FUNCTION Z3-MK-FPA-LEQ
- C
- T1
- T2
Floating-point less than or equal.
-
EXTERNAL FUNCTION Z3-MK-FPA-LT
- C
- T1
- T2
Floating-point less than.
-
EXTERNAL FUNCTION Z3-MK-FPA-MAX
- C
- T1
- T2
Maximum of floating-point numbers.
-
EXTERNAL FUNCTION Z3-MK-FPA-MIN
- C
- T1
- T2
Minimum of floating-point numbers.
-
EXTERNAL FUNCTION Z3-MK-FPA-MUL
- C
- RM
- T1
- T2
Floating-point multiplication
-
EXTERNAL FUNCTION Z3-MK-FPA-NAN
- C
- S
Create a floating-point NaN of sort
s
. -
EXTERNAL FUNCTION Z3-MK-FPA-NEG
- C
- AST
Floating-point negation
-
EXTERNAL FUNCTION Z3-MK-FPA-NUMERAL-DOUBLE
- C
- V
- TY
Create a numeral of FloatingPoint sort from a double.
-
EXTERNAL FUNCTION Z3-MK-FPA-NUMERAL-FLOAT
- C
- V
- TY
Create a numeral of FloatingPoint sort from a float.
-
EXTERNAL FUNCTION Z3-MK-FPA-NUMERAL-INT
- C
- V
- TY
Create a numeral of FloatingPoint sort from a signed integer.
-
EXTERNAL FUNCTION Z3-MK-FPA-NUMERAL-INT-UINT
- C
- SGN
- EXP
- SIG
- TY
Create a numeral of FloatingPoint sort from a sign bit and two integers.
-
EXTERNAL FUNCTION Z3-MK-FPA-NUMERAL-INT64-UINT64
- C
- SGN
- EXP
- SIG
- TY
Create a numeral of FloatingPoint sort from a sign bit and two 64-bit integers.
-
EXTERNAL FUNCTION Z3-MK-FPA-REM
- C
- T1
- T2
Floating-point remainder
-
EXTERNAL FUNCTION Z3-MK-FPA-RNA
- C
Create a numeral of RoundingMode sort which represents the NearestTiesToAway rounding mode.
-
EXTERNAL FUNCTION Z3-MK-FPA-RNE
- C
Create a numeral of RoundingMode sort which represents the NearestTiesToEven rounding mode.
-
EXTERNAL FUNCTION Z3-MK-FPA-ROUND-NEAREST-TIES-TO-AWAY
- C
Create a numeral of RoundingMode sort which represents the NearestTiesToAway rounding mode.
-
EXTERNAL FUNCTION Z3-MK-FPA-ROUND-NEAREST-TIES-TO-EVEN
- C
Create a numeral of RoundingMode sort which represents the NearestTiesToEven rounding mode.
-
EXTERNAL FUNCTION Z3-MK-FPA-ROUND-TO-INTEGRAL
- C
- RM
- AST
Floating-point roundToIntegral. Rounds a floating-point number to the closest integer, again represented as a floating-point number.
-
EXTERNAL FUNCTION Z3-MK-FPA-ROUND-TOWARD-NEGATIVE
- C
Create a numeral of RoundingMode sort which represents the TowardNegative rounding mode.
-
EXTERNAL FUNCTION Z3-MK-FPA-ROUND-TOWARD-POSITIVE
- C
Create a numeral of RoundingMode sort which represents the TowardPositive rounding mode.
-
EXTERNAL FUNCTION Z3-MK-FPA-ROUND-TOWARD-ZERO
- C
Create a numeral of RoundingMode sort which represents the TowardZero rounding mode.
-
EXTERNAL FUNCTION Z3-MK-FPA-ROUNDING-MODE-SORT
- C
Create the RoundingMode sort.
-
EXTERNAL FUNCTION Z3-MK-FPA-RTN
- C
Create a numeral of RoundingMode sort which represents the TowardNegative rounding mode.
-
EXTERNAL FUNCTION Z3-MK-FPA-RTP
- C
Create a numeral of RoundingMode sort which represents the TowardPositive rounding mode.
-
EXTERNAL FUNCTION Z3-MK-FPA-RTZ
- C
Create a numeral of RoundingMode sort which represents the TowardZero rounding mode.
-
EXTERNAL FUNCTION Z3-MK-FPA-SORT
- C
- EBITS
- SBITS
Create a FloatingPoint sort.
-
EXTERNAL FUNCTION Z3-MK-FPA-SORT-128
- C
Create the quadruple-precision (128-bit) FloatingPoint sort.
-
EXTERNAL FUNCTION Z3-MK-FPA-SORT-16
- C
Create the half-precision (16-bit) FloatingPoint sort.
-
EXTERNAL FUNCTION Z3-MK-FPA-SORT-32
- C
Create the single-precision (32-bit) FloatingPoint sort.
-
EXTERNAL FUNCTION Z3-MK-FPA-SORT-64
- C
Create the double-precision (64-bit) FloatingPoint sort.
-
EXTERNAL FUNCTION Z3-MK-FPA-SORT-DOUBLE
- C
Create the double-precision (64-bit) FloatingPoint sort.
-
EXTERNAL FUNCTION Z3-MK-FPA-SORT-HALF
- C
Create the half-precision (16-bit) FloatingPoint sort.
-
EXTERNAL FUNCTION Z3-MK-FPA-SORT-QUADRUPLE
- C
Create the quadruple-precision (128-bit) FloatingPoint sort.
-
EXTERNAL FUNCTION Z3-MK-FPA-SORT-SINGLE
- C
Create the single-precision (32-bit) FloatingPoint sort.
-
EXTERNAL FUNCTION Z3-MK-FPA-SQRT
- C
- RM
- AST
Floating-point square root
-
EXTERNAL FUNCTION Z3-MK-FPA-SUB
- C
- RM
- T1
- T2
Floating-point subtraction
-
EXTERNAL FUNCTION Z3-MK-FPA-TO-FP-BV
- C
- BV
- S
Conversion of a single IEEE 754-2008 bit-vector into a floating-point number.
-
EXTERNAL FUNCTION Z3-MK-FPA-TO-FP-FLOAT
- C
- RM
- AST
- S
Conversion of a FloatingPoint term into another term of different FloatingPoint sort.
-
EXTERNAL FUNCTION Z3-MK-FPA-TO-FP-INT-REAL
- C
- RM
- EXP
- SIG
- S
Conversion of a real-sorted significand and an integer-sorted exponent into a term of FloatingPoint sort.
-
EXTERNAL FUNCTION Z3-MK-FPA-TO-FP-REAL
- C
- RM
- AST
- S
Conversion of a term of real sort into a term of FloatingPoint sort.
-
EXTERNAL FUNCTION Z3-MK-FPA-TO-FP-SIGNED
- C
- RM
- AST
- S
Conversion of a 2's complement signed bit-vector term into a term of FloatingPoint sort.
-
EXTERNAL FUNCTION Z3-MK-FPA-TO-FP-UNSIGNED
- C
- RM
- AST
- S
Conversion of a 2's complement unsigned bit-vector term into a term of FloatingPoint sort.
-
EXTERNAL FUNCTION Z3-MK-FPA-TO-IEEE-BV
- C
- AST
Conversion of a floating-point term into a bit-vector term in IEEE 754-2008 format.
-
EXTERNAL FUNCTION Z3-MK-FPA-TO-REAL
- C
- AST
Conversion of a floating-point term into a real-numbered term.
-
EXTERNAL FUNCTION Z3-MK-FPA-TO-SBV
- C
- RM
- AST
- SZ
Conversion of a floating-point term into a signed bit-vector.
-
EXTERNAL FUNCTION Z3-MK-FPA-TO-UBV
- C
- RM
- AST
- SZ
Conversion of a floating-point term into an unsigned bit-vector.
-
EXTERNAL FUNCTION Z3-MK-FPA-ZERO
- C
- S
- NEGATIVE
Create a floating-point zero of sort
s
. -
EXTERNAL FUNCTION Z3-MK-FRESH-CONST
- C
- PREFIX
- TY
Declare and create a fresh constant.
-
EXTERNAL FUNCTION Z3-MK-FRESH-FUNC-DECL
- C
- PREFIX
- DOMAIN-SIZE
- DOMAIN
- RANGE
Declare a fresh constant or function.
-
EXTERNAL FUNCTION Z3-MK-FULL-SET
- C
- DOMAIN
Create the full set.
-
EXTERNAL FUNCTION Z3-MK-FUNC-DECL
- C
- S
- DOMAIN-SIZE
- DOMAIN
- RANGE
Declare a constant or function.
-
EXTERNAL FUNCTION Z3-MK-GE
- C
- T1
- T2
Create greater than or equal to.
-
EXTERNAL FUNCTION Z3-MK-GOAL
- C
- MODELS
- UNSAT-CORES
- PROOFS
Create a goal (aka problem). A goal is essentially a set of formulas, that can be solved and/or transformed using tactics and solvers.
-
EXTERNAL FUNCTION Z3-MK-GT
- C
- T1
- T2
Create greater than.
-
EXTERNAL FUNCTION Z3-MK-IFF
- C
- T1
- T2
Create an AST node representing
t1 iff t2
. -
EXTERNAL FUNCTION Z3-MK-IMPLIES
- C
- T1
- T2
Create an AST node representing
t1 implies t2
. -
EXTERNAL FUNCTION Z3-MK-INT
- C
- V
- TY
Create a numeral of an int, bit-vector, or finite-domain sort.
-
EXTERNAL FUNCTION Z3-MK-INT-SORT
- C
Create the integer type.
-
EXTERNAL FUNCTION Z3-MK-INT-SYMBOL
- C
- I
Create a Z3 symbol using an integer.
-
EXTERNAL FUNCTION Z3-MK-INT-TO-STR
- C
- S
Integer to string conversion.
-
EXTERNAL FUNCTION Z3-MK-INT2BV
- C
- N
- T1
Create an
n
bit bit-vector from the integer argumentt1
. -
EXTERNAL FUNCTION Z3-MK-INT2REAL
- C
- T1
Coerce an integer to a real.
-
EXTERNAL FUNCTION Z3-MK-INT64
- C
- V
- TY
Create a numeral of a int, bit-vector, or finite-domain sort.
-
EXTERNAL FUNCTION Z3-MK-IS-INT
- C
- T1
Check if a real number is an integer.
-
EXTERNAL FUNCTION Z3-MK-ITE
- C
- T1
- T2
- T3
Create an AST node representing an if-then-else:
ite(t1, t2, t3)
. -
EXTERNAL FUNCTION Z3-MK-LAMBDA
- C
- NUM-DECLS
- SORTS
- DECL-NAMES
- BODY
Create a lambda expression. It takes an expression
body
that contains bound variables of the same sorts as the sorts listed in the arraysorts
. The bound variables are de-Bruijn indices created usingZ3_mk_bound
. The arraydecl_names
contains the names that the quantified formula uses for the bound variables. Z3 applies the convention that the last element in thedecl_names
andsorts
array refers to the variable with index 0, the second to last element ofdecl_names
andsorts
refers to the variable with index 1, etc. The sort of the resulting expression is(Array
sorts range) whererange
is the sort ofbody
. For example, if the lambda binds two variables of sortInt
andBool,
and thebody
has sortReal,
the sort of the expression is(Array
Int Bool Real). -
EXTERNAL FUNCTION Z3-MK-LAMBDA-CONST
- C
- NUM-BOUND
- BOUND
- BODY
Create a lambda expression using a list of constants that form the set of bound variables
-
EXTERNAL FUNCTION Z3-MK-LE
- C
- T1
- T2
Create less than or equal to.
-
EXTERNAL FUNCTION Z3-MK-LINEAR-ORDER
- C
- A
- ID
create a linear ordering relation over signature
a
. The relation is identified by the indexid
. -
EXTERNAL FUNCTION Z3-MK-LIST-SORT
- C
- NAME
- ELEM-SORT
- NIL-DECL
- IS-NIL-DECL
- CONS-DECL
- IS-CONS-DECL
- HEAD-DECL
- TAIL-DECL
Create a list sort
-
EXTERNAL FUNCTION Z3-MK-LSTRING
- C
- LEN
- S
Create a string constant out of the string that is passed in It takes the length of the string as well to take into account 0 characters. The string is treated as if it is unescaped so a sequence of characters \u{0} is treated as 5 characters and not the character 0.
-
EXTERNAL FUNCTION Z3-MK-LT
- C
- T1
- T2
Create less than.
-
EXTERNAL FUNCTION Z3-MK-MAP
- C
- F
- N
- ARGS
Map f on the argument arrays.
-
EXTERNAL FUNCTION Z3-MK-MOD
- C
- ARG1
- ARG2
Create an AST node representing
arg1 mod arg2
. -
EXTERNAL FUNCTION Z3-MK-MODEL
- C
Create a fresh model object. It has reference count 0.
-
EXTERNAL FUNCTION Z3-MK-MUL
- C
- NUM-ARGS
- ARGS
Create an AST node representing
args[0] * ... * args[num_args-1]
. -
EXTERNAL FUNCTION Z3-MK-NOT
- C
- A
Create an AST node representing
not(a)
. -
EXTERNAL FUNCTION Z3-MK-NUMERAL
- C
- NUMERAL
- TY
Create a numeral of a given sort.
-
EXTERNAL FUNCTION Z3-MK-OPTIMIZE
- C
Create a new optimize context.
-
EXTERNAL FUNCTION Z3-MK-OR
- C
- NUM-ARGS
- ARGS
Create an AST node representing
args[0] or ... or args[num_args-1]
. -
EXTERNAL FUNCTION Z3-MK-PARAMS
- C
Create a Z3 (empty) parameter set. Starting at Z3 4.0, parameter sets are used to configure many components such as: simplifiers, tactics, solvers, etc.
-
EXTERNAL FUNCTION Z3-MK-PARTIAL-ORDER
- C
- A
- ID
create a partial ordering relation over signature
a
and indexid
. -
EXTERNAL FUNCTION Z3-MK-PATTERN
- C
- NUM-PATTERNS
- TERMS
Create a pattern for quantifier instantiation.
-
EXTERNAL FUNCTION Z3-MK-PBEQ
- C
- NUM-ARGS
- ARGS
- COEFFS
- K
Pseudo-Boolean relations.
-
EXTERNAL FUNCTION Z3-MK-PBGE
- C
- NUM-ARGS
- ARGS
- COEFFS
- K
Pseudo-Boolean relations.
-
EXTERNAL FUNCTION Z3-MK-PBLE
- C
- NUM-ARGS
- ARGS
- COEFFS
- K
Pseudo-Boolean relations.
-
EXTERNAL FUNCTION Z3-MK-PIECEWISE-LINEAR-ORDER
- C
- A
- ID
create a piecewise linear ordering relation over signature
a
and indexid
. -
EXTERNAL FUNCTION Z3-MK-POWER
- C
- ARG1
- ARG2
Create an AST node representing
arg1 ^ arg2
. -
EXTERNAL FUNCTION Z3-MK-PROBE
- C
- NAME
Return a probe associated with the given name. The complete list of probes may be obtained using the procedures
Z3_get_num_probes
andZ3_get_probe_name
. It may also be obtained using the command(help-tactic)
in the SMT 2.0 front-end. -
EXTERNAL FUNCTION Z3-MK-QUANTIFIER
- C
- IS-FORALL
- WEIGHT
- NUM-PATTERNS
- PATTERNS
- NUM-DECLS
- SORTS
- DECL-NAMES
- BODY
Create a quantifier - universal or existential, with pattern hints. See the documentation for
Z3_mk_forall
for an explanation of the parameters. -
EXTERNAL FUNCTION Z3-MK-QUANTIFIER-CONST
- C
- IS-FORALL
- WEIGHT
- NUM-BOUND
- BOUND
- NUM-PATTERNS
- PATTERNS
- BODY
Create a universal or existential quantifier using a list of constants that will form the set of bound variables.
-
EXTERNAL FUNCTION Z3-MK-QUANTIFIER-CONST-EX
- C
- IS-FORALL
- WEIGHT
- QUANTIFIER-ID
- SKOLEM-ID
- NUM-BOUND
- BOUND
- NUM-PATTERNS
- PATTERNS
- NUM-NO-PATTERNS
- NO-PATTERNS
- BODY
Create a universal or existential quantifier using a list of constants that will form the set of bound variables.
-
EXTERNAL FUNCTION Z3-MK-QUANTIFIER-EX
- C
- IS-FORALL
- WEIGHT
- QUANTIFIER-ID
- SKOLEM-ID
- NUM-PATTERNS
- PATTERNS
- NUM-NO-PATTERNS
- NO-PATTERNS
- NUM-DECLS
- SORTS
- DECL-NAMES
- BODY
Create a quantifier - universal or existential, with pattern hints, no patterns, and attributes
-
EXTERNAL FUNCTION Z3-MK-RE-ALLCHAR
- C
- REGEX-SORT
Create a regular expression that accepts all singleton sequences of the regular expression sort
-
EXTERNAL FUNCTION Z3-MK-RE-COMPLEMENT
- C
- RE
Create the complement of the regular language
re
. -
EXTERNAL FUNCTION Z3-MK-RE-CONCAT
- C
- N
- ARGS
Create the concatenation of the regular languages.
-
EXTERNAL FUNCTION Z3-MK-RE-DIFF
- C
- RE1
- RE2
Create the difference of regular expressions.
-
EXTERNAL FUNCTION Z3-MK-RE-EMPTY
- C
- RE
Create an empty regular expression of sort
re
. -
EXTERNAL FUNCTION Z3-MK-RE-FULL
- C
- RE
Create an universal regular expression of sort
re
. -
EXTERNAL FUNCTION Z3-MK-RE-INTERSECT
- C
- N
- ARGS
Create the intersection of the regular languages.
-
EXTERNAL FUNCTION Z3-MK-RE-LOOP
- C
- R
- LO
- HI
Create a regular expression loop. The supplied regular expression
r
is repeated betweenlo
andhi
times. Thelo
should be belowhi
with one exception: when supplying the valuehi
as 0, the meaning is to repeat the argumentr
at leastlo
number of times, and with an unbounded upper bound. -
EXTERNAL FUNCTION Z3-MK-RE-OPTION
- C
- RE
Create the regular language
[re]
. -
EXTERNAL FUNCTION Z3-MK-RE-PLUS
- C
- RE
Create the regular language
re+
. -
EXTERNAL FUNCTION Z3-MK-RE-POWER
- C
- X
- N
Create a power regular expression.
-
EXTERNAL FUNCTION Z3-MK-RE-RANGE
- C
- LO
- HI
Create the range regular expression over two sequences of length 1.
-
EXTERNAL FUNCTION Z3-MK-RE-SORT
- C
- SEQ
Create a regular expression sort out of a sequence sort.
-
EXTERNAL FUNCTION Z3-MK-RE-STAR
- C
- RE
Create the regular language
re*
. -
EXTERNAL FUNCTION Z3-MK-RE-UNION
- C
- N
- ARGS
Create the union of the regular languages.
-
EXTERNAL FUNCTION Z3-MK-REAL
- C
- NUM
- DEN
Create a real from a fraction.
-
EXTERNAL FUNCTION Z3-MK-REAL-SORT
- C
Create the real type.
-
EXTERNAL FUNCTION Z3-MK-REAL2INT
- C
- T1
Coerce a real to an integer.
-
EXTERNAL FUNCTION Z3-MK-REC-FUNC-DECL
- C
- S
- DOMAIN-SIZE
- DOMAIN
- RANGE
Declare a recursive function
-
EXTERNAL FUNCTION Z3-MK-REM
- C
- ARG1
- ARG2
Create an AST node representing
arg1 rem arg2
. -
EXTERNAL FUNCTION Z3-MK-REPEAT
- C
- I
- T1
Repeat the given bit-vector up length
i
. -
EXTERNAL FUNCTION Z3-MK-ROTATE-LEFT
- C
- I
- T1
Rotate bits of
t1
to the lefti
times. -
EXTERNAL FUNCTION Z3-MK-ROTATE-RIGHT
- C
- I
- T1
Rotate bits of
t1
to the righti
times. -
EXTERNAL FUNCTION Z3-MK-SBV-TO-STR
- C
- S
Signed bit-vector to string conversion.
-
EXTERNAL FUNCTION Z3-MK-SELECT
- C
- A
- I
Array read. The argument
a
is the array andi
is the index of the array that gets read. -
EXTERNAL FUNCTION Z3-MK-SELECT-N
- C
- A
- N
- IDXS
n-ary Array read. The argument
a
is the array andidxs
are the indices of the array that gets read. -
EXTERNAL FUNCTION Z3-MK-SEQ-AT
- C
- S
- INDEX
Retrieve from
s
the unit sequence positioned at positionindex
. The sequence is empty if the index is out of bounds. -
EXTERNAL FUNCTION Z3-MK-SEQ-CONCAT
- C
- N
- ARGS
Concatenate sequences.
-
EXTERNAL FUNCTION Z3-MK-SEQ-CONTAINS
- C
- CONTAINER
- CONTAINEE
Check if
container
containscontainee
. -
EXTERNAL FUNCTION Z3-MK-SEQ-EMPTY
- C
- SEQ
Create an empty sequence of the sequence sort
seq
. -
EXTERNAL FUNCTION Z3-MK-SEQ-EXTRACT
- C
- S
- OFFSET
- LENGTH
Extract subsequence starting at
offset
oflength
. -
EXTERNAL FUNCTION Z3-MK-SEQ-IN-RE
- C
- SEQ
- RE
Check if
seq
is in the language generated by the regular expressionre
. -
EXTERNAL FUNCTION Z3-MK-SEQ-INDEX
- C
- S
- SUBSTR
- OFFSET
Return index of first occurrence of
substr
ins
starting from offsetoffset
. Ifs
does not containsubstr,
then the value is -1, ifoffset
is the length ofs,
then the value is -1 as well. The value is -1 ifoffset
is negative or larger than the length ofs
. -
EXTERNAL FUNCTION Z3-MK-SEQ-LAST-INDEX
- C
- X
- SUBSTR
-
EXTERNAL FUNCTION Z3-MK-SEQ-LENGTH
- C
- S
Return the length of the sequence
s
. -
EXTERNAL FUNCTION Z3-MK-SEQ-NTH
- C
- S
- INDEX
Retrieve from
s
the element positioned at positionindex
. The function is under-specified if the index is out of bounds. -
EXTERNAL FUNCTION Z3-MK-SEQ-PREFIX
- C
- PREFIX
- S
Check if
prefix
is a prefix ofs
. -
EXTERNAL FUNCTION Z3-MK-SEQ-REPLACE
- C
- S
- SRC
- DST
Replace the first occurrence of
src
withdst
ins
. -
EXTERNAL FUNCTION Z3-MK-SEQ-SORT
- C
- S
Create a sequence sort out of the sort for the elements.
-
EXTERNAL FUNCTION Z3-MK-SEQ-SUFFIX
- C
- SUFFIX
- S
Check if
suffix
is a suffix ofs
. -
EXTERNAL FUNCTION Z3-MK-SEQ-TO-RE
- C
- SEQ
Create a regular expression that accepts the sequence
seq
. -
EXTERNAL FUNCTION Z3-MK-SEQ-UNIT
- C
- A
Create a unit sequence of
a
. -
EXTERNAL FUNCTION Z3-MK-SET-ADD
- C
- SET
- ELEM
Add an element to a set.
-
EXTERNAL FUNCTION Z3-MK-SET-COMPLEMENT
- C
- ARG
Take the complement of a set.
-
EXTERNAL FUNCTION Z3-MK-SET-DEL
- C
- SET
- ELEM
Remove an element to a set.
-
EXTERNAL FUNCTION Z3-MK-SET-DIFFERENCE
- C
- ARG1
- ARG2
Take the set difference between two sets.
-
EXTERNAL FUNCTION Z3-MK-SET-HAS-SIZE
- C
- SET
- K
Create predicate that holds if Boolean array
set
hask
elements set to true. -
EXTERNAL FUNCTION Z3-MK-SET-INTERSECT
- C
- NUM-ARGS
- ARGS
Take the intersection of a list of sets.
-
EXTERNAL FUNCTION Z3-MK-SET-MEMBER
- C
- ELEM
- SET
Check for set membership.
-
EXTERNAL FUNCTION Z3-MK-SET-SORT
- C
- TY
Create Set type.
-
EXTERNAL FUNCTION Z3-MK-SET-SUBSET
- C
- ARG1
- ARG2
Check for subsetness of sets.
-
EXTERNAL FUNCTION Z3-MK-SET-UNION
- C
- NUM-ARGS
- ARGS
Take the union of a list of sets.
-
EXTERNAL FUNCTION Z3-MK-SIGN-EXT
- C
- I
- T1
Sign-extend of the given bit-vector to the (signed) equivalent bit-vector of size
m+i
, wherem
is the size of the given bit-vector. -
EXTERNAL FUNCTION Z3-MK-SIMPLE-SOLVER
- C
Create a new incremental solver.
-
EXTERNAL FUNCTION Z3-MK-SOLVER
- C
Create a new solver. This solver is a "combined solver" (see combined_solver module) that internally uses a non-incremental (solver1) and an incremental solver (solver2). This combined solver changes its behaviour based on how it is used and how its parameters are set.
-
EXTERNAL FUNCTION Z3-MK-SOLVER-FOR-LOGIC
- C
- LOGIC
Create a new solver customized for the given logic. It behaves like
Z3_mk_solver
if the logic is unknown or unsupported. -
EXTERNAL FUNCTION Z3-MK-SOLVER-FROM-TACTIC
- C
- AST
Create a new solver that is implemented using the given tactic. The solver supports the commands
Z3_solver_push
andZ3_solver_pop
, but it will always solve eachZ3_solver_check
from scratch. -
EXTERNAL FUNCTION Z3-MK-STORE
- C
- A
- I
- V
Array update.
-
EXTERNAL FUNCTION Z3-MK-STORE-N
- C
- A
- N
- IDXS
- V
n-ary Array update.
-
EXTERNAL FUNCTION Z3-MK-STR-LE
- C
- PREFIX
- S
Check if
s1
is equal or lexicographically strictly less thans2
. -
EXTERNAL FUNCTION Z3-MK-STR-LT
- C
- PREFIX
- S
Check if
s1
is lexicographically strictly less thans2
. -
EXTERNAL FUNCTION Z3-MK-STR-TO-INT
- C
- S
Convert string to integer.
-
EXTERNAL FUNCTION Z3-MK-STRING
- C
- S
Create a string constant out of the string that is passed in The string may contain escape encoding for non-printable characters or characters outside of the basic printable ASCII range. For example, the escape encoding \u{0} represents the character 0 and the encoding \u{100} represents the character 256.
-
EXTERNAL FUNCTION Z3-MK-STRING-FROM-CODE
- C
- A
Code to string conversion.
-
EXTERNAL FUNCTION Z3-MK-STRING-SORT
- C
Create a sort for unicode strings.
-
EXTERNAL FUNCTION Z3-MK-STRING-SYMBOL
- C
- S
Create a Z3 symbol using a C string.
-
EXTERNAL FUNCTION Z3-MK-STRING-TO-CODE
- C
- A
String to code conversion.
-
EXTERNAL FUNCTION Z3-MK-SUB
- C
- NUM-ARGS
- ARGS
Create an AST node representing
args[0] - ... - args[num_args - 1]
. -
EXTERNAL FUNCTION Z3-MK-TACTIC
- C
- NAME
Return a tactic associated with the given name. The complete list of tactics may be obtained using the procedures
Z3_get_num_tactics
andZ3_get_tactic_name
. It may also be obtained using the command(help-tactic)
in the SMT 2.0 front-end. -
EXTERNAL FUNCTION Z3-MK-TRANSITIVE-CLOSURE
- C
- F
create transitive closure of binary relation.
-
EXTERNAL FUNCTION Z3-MK-TREE-ORDER
- C
- A
- ID
create a tree ordering relation over signature
a
identified using indexid
. -
EXTERNAL FUNCTION Z3-MK-TRUE
- C
Create an AST node representing
true
. -
EXTERNAL FUNCTION Z3-MK-TUPLE-SORT
- C
- MK-TUPLE-NAME
- NUM-FIELDS
- FIELD-NAMES
- FIELD-SORTS
- MK-TUPLE-DECL
- PROJ-DECL
Create a tuple type.
-
EXTERNAL FUNCTION Z3-MK-U32STRING
- C
- LEN
- CHARS
Create a string constant out of the string that is passed in It takes the length of the string as well to take into account 0 characters. The string is unescaped.
-
EXTERNAL FUNCTION Z3-MK-UBV-TO-STR
- C
- S
Unsigned bit-vector to string conversion.
-
EXTERNAL FUNCTION Z3-MK-UNARY-MINUS
- C
- ARG
Create an AST node representing
- arg
. -
EXTERNAL FUNCTION Z3-MK-UNINTERPRETED-SORT
- C
- S
Create a free (uninterpreted) type using the given name (symbol).
-
EXTERNAL FUNCTION Z3-MK-UNSIGNED-INT
- C
- V
- TY
Create a numeral of a int, bit-vector, or finite-domain sort.
-
EXTERNAL FUNCTION Z3-MK-UNSIGNED-INT64
- C
- V
- TY
Create a numeral of a int, bit-vector, or finite-domain sort.
-
EXTERNAL FUNCTION Z3-MK-XOR
- C
- T1
- T2
Create an AST node representing
t1 xor t2
. -
EXTERNAL FUNCTION Z3-MK-ZERO-EXT
- C
- I
- T1
Extend the given bit-vector with zeros to the (unsigned) equivalent bit-vector of size
m+i
, wherem
is the size of the given bit-vector. -
EXTERNAL FUNCTION Z3-MODEL-DEC-REF
- C
- M
Decrement the reference counter of the given model.
-
EXTERNAL FUNCTION Z3-MODEL-EVAL
- C
- M
- AST
- MODEL-COMPLETION
- V
Evaluate the AST node
t
in the given model. Returntrue
if succeeded, and store the result inv
. -
EXTERNAL FUNCTION Z3-MODEL-EXTRAPOLATE
- C
- M
- FML
Extrapolates a model of a formula
-
EXTERNAL FUNCTION Z3-MODEL-GET-CONST-DECL
- C
- M
- I
Return the i-th constant in the given model.
-
EXTERNAL FUNCTION Z3-MODEL-GET-CONST-INTERP
- C
- M
- A
Return the interpretation (i.e., assignment) of constant
a
in the modelm
. ReturnNULL,
if the model does not assign an interpretation fora
. That should be interpreted as: the value ofa
does not matter. -
EXTERNAL FUNCTION Z3-MODEL-GET-FUNC-DECL
- C
- M
- I
Return the declaration of the i-th function in the given model.
-
EXTERNAL FUNCTION Z3-MODEL-GET-FUNC-INTERP
- C
- M
- F
Return the interpretation of the function
f
in the modelm
. ReturnNULL,
if the model does not assign an interpretation forf
. That should be interpreted as: thef
does not matter. -
EXTERNAL FUNCTION Z3-MODEL-GET-NUM-CONSTS
- C
- M
Return the number of constants assigned by the given model.
-
EXTERNAL FUNCTION Z3-MODEL-GET-NUM-FUNCS
- C
- M
Return the number of function interpretations in the given model.
-
EXTERNAL FUNCTION Z3-MODEL-GET-NUM-SORTS
- C
- M
Return the number of uninterpreted sorts that
m
assigns an interpretation to. -
EXTERNAL FUNCTION Z3-MODEL-GET-SORT
- C
- M
- I
Return a uninterpreted sort that
m
assigns an interpretation. -
EXTERNAL FUNCTION Z3-MODEL-GET-SORT-UNIVERSE
- C
- M
- S
Return the finite set of distinct values that represent the interpretation for sort
s
. -
EXTERNAL FUNCTION Z3-MODEL-HAS-INTERP
- C
- M
- A
Test if there exists an interpretation (i.e., assignment) for
a
in the modelm
. -
EXTERNAL FUNCTION Z3-MODEL-INC-REF
- C
- M
Increment the reference counter of the given model.
-
EXTERNAL FUNCTION Z3-MODEL-TO-STRING
- C
- M
Convert the given model into a string.
-
EXTERNAL FUNCTION Z3-MODEL-TRANSLATE
- C
- M
- DST
translate model from context
c
to contextdst
. -
EXTERNAL FUNCTION Z3-OPEN-LOG
- FILENAME
Log interaction to a file.
-
EXTERNAL FUNCTION Z3-OPTIMIZE-ASSERT
- C
- O
- A
Assert hard constraint to the optimization context.
-
EXTERNAL FUNCTION Z3-OPTIMIZE-ASSERT-AND-TRACK
- C
- O
- A
- AST
Assert tracked hard constraint to the optimization context.
-
EXTERNAL FUNCTION Z3-OPTIMIZE-ASSERT-SOFT
- C
- O
- A
- WEIGHT
- ID
Assert soft constraint to the optimization context. param c - context param o - optimization context param a - formula param weight - a penalty for violating soft constraint. Negative weights convert into rewards. param id - optional identifier to group soft constraints
-
EXTERNAL FUNCTION Z3-OPTIMIZE-CHECK
- C
- O
- NUM-ASSUMPTIONS
- ASSUMPTIONS
Check consistency and produce optimal values. param c - context param o - optimization context param num_assumptions - number of additional assumptions param assumptions - the additional assumptions
-
EXTERNAL FUNCTION Z3-OPTIMIZE-DEC-REF
- C
- D
Decrement the reference counter of the given optimize context.
-
EXTERNAL FUNCTION Z3-OPTIMIZE-FROM-FILE
- C
- O
- S
Parse an SMT-LIB2 file with assertions, soft constraints and optimization objectives. Add the parsed constraints and objectives to the optimization context.
-
EXTERNAL FUNCTION Z3-OPTIMIZE-FROM-STRING
- C
- O
- S
Parse an SMT-LIB2 string with assertions, soft constraints and optimization objectives. Add the parsed constraints and objectives to the optimization context.
-
EXTERNAL FUNCTION Z3-OPTIMIZE-GET-ASSERTIONS
- C
- O
Return the set of asserted formulas on the optimization context.
-
EXTERNAL FUNCTION Z3-OPTIMIZE-GET-HELP
- C
- AST
Return a string containing a description of parameters accepted by optimize.
-
EXTERNAL FUNCTION Z3-OPTIMIZE-GET-LOWER
- C
- O
- IDX
Retrieve lower bound value or approximation for the i'th optimization objective.
-
EXTERNAL FUNCTION Z3-OPTIMIZE-GET-LOWER-AS-VECTOR
- C
- O
- IDX
Retrieve lower bound value or approximation for the i'th optimization objective. The returned vector is of length 3. It always contains numerals. The three numerals are coefficients
a,
b,
c
and encode the result ofZ3_optimize_get_lower
a * infinity + b + c * epsilon
. -
EXTERNAL FUNCTION Z3-OPTIMIZE-GET-MODEL
- C
- O
Retrieve the model for the last
Z3_optimize_check
-
EXTERNAL FUNCTION Z3-OPTIMIZE-GET-OBJECTIVES
- C
- O
Return objectives on the optimization context. If the objective function is a max-sat objective it is returned as a Pseudo-Boolean (minimization) sum of the form
(+ (if f1 w1 0) (if f2 w2 0) ...)
If the objective function is entered as a maximization objective, then return the corresponding minimization objective. In this way the resulting objective function is always returned as a minimization objective. -
EXTERNAL FUNCTION Z3-OPTIMIZE-GET-PARAM-DESCRS
- C
- O
Return the parameter description set for the given optimize object.
-
EXTERNAL FUNCTION Z3-OPTIMIZE-GET-REASON-UNKNOWN
- C
- D
Retrieve a string that describes the last status returned by
Z3_optimize_check
. -
EXTERNAL FUNCTION Z3-OPTIMIZE-GET-STATISTICS
- C
- D
Retrieve statistics information from the last call to
Z3_optimize_check
-
EXTERNAL FUNCTION Z3-OPTIMIZE-GET-UNSAT-CORE
- C
- O
Retrieve the unsat core for the last
Z3_optimize_check
The unsat core is a subset of the assumptionsa
. -
EXTERNAL FUNCTION Z3-OPTIMIZE-GET-UPPER
- C
- O
- IDX
Retrieve upper bound value or approximation for the i'th optimization objective.
-
EXTERNAL FUNCTION Z3-OPTIMIZE-GET-UPPER-AS-VECTOR
- C
- O
- IDX
Retrieve upper bound value or approximation for the i'th optimization objective.
-
EXTERNAL FUNCTION Z3-OPTIMIZE-INC-REF
- C
- D
Increment the reference counter of the given optimize context
-
EXTERNAL FUNCTION Z3-OPTIMIZE-MAXIMIZE
- C
- O
- AST
Add a maximization constraint. param c - context param o - optimization context param t - arithmetical term
-
EXTERNAL FUNCTION Z3-OPTIMIZE-MINIMIZE
- C
- O
- AST
Add a minimization constraint. param c - context param o - optimization context param t - arithmetical term
-
EXTERNAL FUNCTION Z3-OPTIMIZE-POP
- C
- D
Backtrack one level.
-
EXTERNAL FUNCTION Z3-OPTIMIZE-PUSH
- C
- D
Create a backtracking point.
-
EXTERNAL FUNCTION Z3-OPTIMIZE-REGISTER-MODEL-EH
- C
- O
- M
- CTX
- MODEL-EH
-
EXTERNAL FUNCTION Z3-OPTIMIZE-SET-PARAMS
- C
- O
- P
Set parameters on optimization context.
-
EXTERNAL FUNCTION Z3-OPTIMIZE-TO-STRING
- C
- O
Print the current context as a string. param c - context. param o - optimization context.
-
EXTERNAL FUNCTION Z3-PARAM-DESCRS-DEC-REF
- C
- P
Decrement the reference counter of the given parameter description set.
-
EXTERNAL FUNCTION Z3-PARAM-DESCRS-GET-DOCUMENTATION
- C
- P
- S
Retrieve documentation string corresponding to parameter name
s
. -
EXTERNAL FUNCTION Z3-PARAM-DESCRS-GET-KIND
- C
- P
- N
Return the kind associated with the given parameter name
n
. -
EXTERNAL FUNCTION Z3-PARAM-DESCRS-GET-NAME
- C
- P
- I
Return the name of the parameter at given index
i
. -
EXTERNAL FUNCTION Z3-PARAM-DESCRS-INC-REF
- C
- P
Increment the reference counter of the given parameter description set.
-
EXTERNAL FUNCTION Z3-PARAM-DESCRS-SIZE
- C
- P
Return the number of parameters in the given parameter description set.
-
EXTERNAL FUNCTION Z3-PARAM-DESCRS-TO-STRING
- C
- P
Convert a parameter description set into a string. This function is mainly used for printing the contents of a parameter description set.
-
EXTERNAL FUNCTION Z3-PARAMS-DEC-REF
- C
- P
Decrement the reference counter of the given parameter set.
-
EXTERNAL FUNCTION Z3-PARAMS-INC-REF
- C
- P
Increment the reference counter of the given parameter set.
-
EXTERNAL FUNCTION Z3-PARAMS-SET-BOOL
- C
- P
- K
- V
Add a Boolean parameter
k
with valuev
to the parameter setp
. -
EXTERNAL FUNCTION Z3-PARAMS-SET-DOUBLE
- C
- P
- K
- V
Add a double parameter
k
with valuev
to the parameter setp
. -
EXTERNAL FUNCTION Z3-PARAMS-SET-SYMBOL
- C
- P
- K
- V
Add a symbol parameter
k
with valuev
to the parameter setp
. -
EXTERNAL FUNCTION Z3-PARAMS-SET-UINT
- C
- P
- K
- V
Add a unsigned parameter
k
with valuev
to the parameter setp
. -
EXTERNAL FUNCTION Z3-PARAMS-TO-STRING
- C
- P
Convert a parameter set into a string. This function is mainly used for printing the contents of a parameter set.
-
EXTERNAL FUNCTION Z3-PARAMS-VALIDATE
- C
- P
- D
Validate the parameter set
p
against the parameter description setd
. -
EXTERNAL FUNCTION Z3-PARSE-SMTLIB2-FILE
- C
- FILE-NAME
- NUM-SORTS
- SORT-NAMES
- SORTS
- NUM-DECLS
- DECL-NAMES
- DECLS
Similar to
Z3_parse_smtlib2_string
, but reads the benchmark from a file. -
EXTERNAL FUNCTION Z3-PARSE-SMTLIB2-STRING
- C
- STR
- NUM-SORTS
- SORT-NAMES
- SORTS
- NUM-DECLS
- DECL-NAMES
- DECLS
Parse the given string using the SMT-LIB2 parser.
-
EXTERNAL FUNCTION Z3-PATTERN-TO-AST
- C
- P
Convert a Z3_pattern into Z3_ast. This is just type casting.
-
EXTERNAL FUNCTION Z3-PATTERN-TO-STRING
- C
- P
-
EXTERNAL FUNCTION Z3-POLYNOMIAL-SUBRESULTANTS
- C
- P
- Q
- X
Return the nonzero subresultants of
p
andq
with respect to the "variable"x
. -
EXTERNAL FUNCTION Z3-PROBE-AND
- X
- P1
- P2
Return a probe that evaluates to "true" when
p1
andp2
evaluates to true. -
EXTERNAL FUNCTION Z3-PROBE-APPLY
- C
- P
- G
Execute the probe over the goal. The probe always produce a double value. "Boolean" probes return 0.0 for false, and a value different from 0.0 for true.
-
EXTERNAL FUNCTION Z3-PROBE-CONST
- X
- VAL
Return a probe that always evaluates to val.
-
EXTERNAL FUNCTION Z3-PROBE-DEC-REF
- C
- P
Decrement the reference counter of the given probe.
-
EXTERNAL FUNCTION Z3-PROBE-EQ
- X
- P1
- P2
Return a probe that evaluates to "true" when the value returned by
p1
is equal to the value returned byp2
. -
EXTERNAL FUNCTION Z3-PROBE-GE
- X
- P1
- P2
Return a probe that evaluates to "true" when the value returned by
p1
is greater than or equal to the value returned byp2
. -
EXTERNAL FUNCTION Z3-PROBE-GET-DESCR
- C
- NAME
Return a string containing a description of the probe with the given name.
-
EXTERNAL FUNCTION Z3-PROBE-GT
- X
- P1
- P2
Return a probe that evaluates to "true" when the value returned by
p1
is greater than the value returned byp2
. -
EXTERNAL FUNCTION Z3-PROBE-INC-REF
- C
- P
Increment the reference counter of the given probe.
-
EXTERNAL FUNCTION Z3-PROBE-LE
- X
- P1
- P2
Return a probe that evaluates to "true" when the value returned by
p1
is less than or equal to the value returned byp2
. -
EXTERNAL FUNCTION Z3-PROBE-LT
- X
- P1
- P2
Return a probe that evaluates to "true" when the value returned by
p1
is less than the value returned byp2
. -
EXTERNAL FUNCTION Z3-PROBE-NOT
- X
- P
Return a probe that evaluates to "true" when
p
does not evaluate to true. -
EXTERNAL FUNCTION Z3-PROBE-OR
- X
- P1
- P2
Return a probe that evaluates to "true" when
p1
orp2
evaluates to true. -
EXTERNAL FUNCTION Z3-QE-LITE
- C
- VARS
- BODY
-
EXTERNAL FUNCTION Z3-QE-MODEL-PROJECT
- C
- M
- NUM-BOUNDS
- BOUND
- BODY
Project variables given a model
-
EXTERNAL FUNCTION Z3-QE-MODEL-PROJECT-SKOLEM
- C
- M
- NUM-BOUNDS
- BOUND
- BODY
- MAP
Project variables given a model
-
EXTERNAL FUNCTION Z3-QUERY-CONSTRUCTOR
- C
- CONSTR
- NUM-FIELDS
- CONSTRUCTOR
- TESTER
- ACCESSORS
Query constructor for declared functions.
-
EXTERNAL FUNCTION Z3-RCF-ADD
- C
- A
- B
Return the value
a + b
. -
EXTERNAL FUNCTION Z3-RCF-DEL
- C
- A
Delete a RCF numeral created using the RCF API.
-
EXTERNAL FUNCTION Z3-RCF-DIV
- C
- A
- B
Return the value
a / b
. -
EXTERNAL FUNCTION Z3-RCF-EQ
- C
- A
- B
Return
true
ifa == b
. -
EXTERNAL FUNCTION Z3-RCF-GE
- C
- A
- B
Return
true
ifa >= b
. -
EXTERNAL FUNCTION Z3-RCF-GET-NUMERATOR-DENOMINATOR
- C
- A
- N
- D
Extract the "numerator" and "denominator" of the given RCF numeral. We have that
a = n/d
, moreovern
andd
are not represented using rational functions. -
EXTERNAL FUNCTION Z3-RCF-GT
- C
- A
- B
Return
true
ifa > b
. -
EXTERNAL FUNCTION Z3-RCF-INV
- C
- A
Return the value
1/a
. -
EXTERNAL FUNCTION Z3-RCF-LE
- C
- A
- B
Return
true
ifa <= b
. -
EXTERNAL FUNCTION Z3-RCF-LT
- C
- A
- B
Return
true
ifa < b
. -
EXTERNAL FUNCTION Z3-RCF-MK-E
- C
Return e (Euler's constant)
-
EXTERNAL FUNCTION Z3-RCF-MK-INFINITESIMAL
- C
Return a new infinitesimal that is smaller than all elements in the Z3 field.
-
EXTERNAL FUNCTION Z3-RCF-MK-PI
- C
Return Pi
-
EXTERNAL FUNCTION Z3-RCF-MK-RATIONAL
- C
- VAL
Return a RCF rational using the given string.
-
EXTERNAL FUNCTION Z3-RCF-MK-ROOTS
- C
- N
- A
- ROOTS
Store in roots the roots of the polynomial
a[n-1]*x^{n-1
+ ... + a[0]}. The output vectorroots
must have sizen
. It returns the number of roots of the polynomial. -
EXTERNAL FUNCTION Z3-RCF-MK-SMALL-INT
- C
- VAL
Return a RCF small integer.
-
EXTERNAL FUNCTION Z3-RCF-MUL
- C
- A
- B
Return the value
a * b
. -
EXTERNAL FUNCTION Z3-RCF-NEG
- C
- A
Return the value
-a
. -
EXTERNAL FUNCTION Z3-RCF-NEQ
- C
- A
- B
Return
true
ifa != b
. -
EXTERNAL FUNCTION Z3-RCF-NUM-TO-DECIMAL-STRING
- C
- A
- PREC
Convert the RCF numeral into a string in decimal notation.
-
EXTERNAL FUNCTION Z3-RCF-NUM-TO-STRING
- C
- A
- COMPACT
- HTML
Convert the RCF numeral into a string.
-
EXTERNAL FUNCTION Z3-RCF-POWER
- C
- A
- K
Return the value
a^k
. -
EXTERNAL FUNCTION Z3-RCF-SUB
- C
- A
- B
Return the value
a - b
. -
EXTERNAL FUNCTION Z3-RESET-MEMORY
Reset all allocated resources.
-
EXTERNAL FUNCTION Z3-SET-AST-PRINT-MODE
- C
- MODE
Select mode for the format used for pretty-printing AST nodes.
-
EXTERNAL FUNCTION Z3-SET-ERROR
- C
- E
Set an error.
-
EXTERNAL FUNCTION Z3-SET-ERROR-HANDLER
- C
- H
-
EXTERNAL FUNCTION Z3-SET-PARAM-VALUE
- C
- PARAM-ID
- PARAM-VALUE
Set a configuration parameter.
-
EXTERNAL FUNCTION Z3-SIMPLIFY
- C
- A
Interface to simplifier.
-
EXTERNAL FUNCTION Z3-SIMPLIFY-EX
- C
- A
- P
Interface to simplifier.
-
EXTERNAL FUNCTION Z3-SIMPLIFY-GET-HELP
- C
Return a string describing all available parameters.
-
EXTERNAL FUNCTION Z3-SIMPLIFY-GET-PARAM-DESCRS
- C
Return the parameter description set for the simplify procedure.
-
EXTERNAL FUNCTION Z3-SOLVER-ASSERT
- C
- S
- A
Assert a constraint into the solver.
-
EXTERNAL FUNCTION Z3-SOLVER-ASSERT-AND-TRACK
- C
- S
- A
- P
Assert a constraint
a
into the solver, and track it (in the unsat) core using the Boolean constantp
. -
EXTERNAL FUNCTION Z3-SOLVER-CHECK
- C
- S
Check whether the assertions in a given solver are consistent or not.
-
EXTERNAL FUNCTION Z3-SOLVER-CHECK-ASSUMPTIONS
- C
- S
- NUM-ASSUMPTIONS
- ASSUMPTIONS
Check whether the assertions in the given solver and optional assumptions are consistent or not.
-
EXTERNAL FUNCTION Z3-SOLVER-CUBE
- C
- S
- VARS
- BACKTRACK-LEVEL
extract a next cube for a solver. The last cube is the constant
true
orfalse
. The number of (non-constant) cubes is by default 1. For the sat solver cubing is controlled using parameters sat.lookahead.cube.cutoff and sat.lookahead.cube.fraction. -
EXTERNAL FUNCTION Z3-SOLVER-DEC-REF
- C
- S
Decrement the reference counter of the given solver.
-
EXTERNAL FUNCTION Z3-SOLVER-FROM-FILE
- C
- S
- FILE-NAME
load solver assertions from a file.
-
EXTERNAL FUNCTION Z3-SOLVER-FROM-STRING
- C
- S
- FILE-NAME
load solver assertions from a string.
-
EXTERNAL FUNCTION Z3-SOLVER-GET-ASSERTIONS
- C
- S
Return the set of asserted formulas on the solver.
-
EXTERNAL FUNCTION Z3-SOLVER-GET-CONSEQUENCES
- C
- S
- ASSUMPTIONS
- VARIABLES
- CONSEQUENCES
retrieve consequences from solver that determine values of the supplied function symbols.
-
EXTERNAL FUNCTION Z3-SOLVER-GET-HELP
- C
- S
Return a string describing all solver available parameters.
-
EXTERNAL FUNCTION Z3-SOLVER-GET-LEVELS
- C
- S
- LITERALS
- SZ
- LEVELS
retrieve the decision depth of Boolean literals (variables or their negations). Assumes a check-sat call and no other calls (to extract models) have been invoked.
-
EXTERNAL FUNCTION Z3-SOLVER-GET-MODEL
- C
- S
Retrieve the model for the last
Z3_solver_check
orZ3_solver_check_assumptions
-
EXTERNAL FUNCTION Z3-SOLVER-GET-NON-UNITS
- C
- S
Return the set of non units in the solver state.
-
EXTERNAL FUNCTION Z3-SOLVER-GET-NUM-SCOPES
- C
- S
Return the number of backtracking points.
-
EXTERNAL FUNCTION Z3-SOLVER-GET-PARAM-DESCRS
- C
- S
Return the parameter description set for the given solver object.
-
EXTERNAL FUNCTION Z3-SOLVER-GET-PROOF
- C
- S
Retrieve the proof for the last
Z3_solver_check
orZ3_solver_check_assumptions
-
EXTERNAL FUNCTION Z3-SOLVER-GET-REASON-UNKNOWN
- C
- S
Return a brief justification for an "unknown" result (i.e.,
Z3_L_UNDEF)
for the commandsZ3_solver_check
andZ3_solver_check_assumptions
-
EXTERNAL FUNCTION Z3-SOLVER-GET-STATISTICS
- C
- S
Return statistics for the given solver.
-
EXTERNAL FUNCTION Z3-SOLVER-GET-TRAIL
- C
- S
Return the trail modulo model conversion, in order of decision level The decision level can be retrieved using
Z3_solver_get_level
based on the trail. -
EXTERNAL FUNCTION Z3-SOLVER-GET-UNITS
- C
- S
Return the set of units modulo model conversion.
-
EXTERNAL FUNCTION Z3-SOLVER-GET-UNSAT-CORE
- C
- S
Retrieve the unsat core for the last
Z3_solver_check_assumptions
The unsat core is a subset of the assumptionsa
. -
EXTERNAL FUNCTION Z3-SOLVER-IMPORT-MODEL-CONVERTER
- CTX
- SRC
- DST
Ad-hoc method for importing model conversion from solver.
-
EXTERNAL FUNCTION Z3-SOLVER-INC-REF
- C
- S
Increment the reference counter of the given solver.
-
EXTERNAL FUNCTION Z3-SOLVER-INTERRUPT
- C
- S
Solver local interrupt. Normally you should use Z3_interrupt to cancel solvers because only one solver is enabled concurrently per context. However, per GitHub issue
1006
, there are use cases where it is more convenient to cancel a specific solver. Solvers that are not selected for interrupts are left alone. -
EXTERNAL FUNCTION Z3-SOLVER-POP
- C
- S
- N
Backtrack
n
backtracking points. -
EXTERNAL FUNCTION Z3-SOLVER-PROPAGATE-CONSEQUENCE
- C
- X
- NUM-FIXED
- FIXED
- NUM-EQS
- EQ-LHS
- EQ-RHS
- CONSEQ
propagate a consequence based on fixed values. This is a callback a client may invoke during the fixed_eh callback. The callback adds a propagation consequence based on the fixed values of the
ids
. -
EXTERNAL FUNCTION Z3-SOLVER-PROPAGATE-CREATED
- C
- S
- CREATED-EH
-
EXTERNAL FUNCTION Z3-SOLVER-PROPAGATE-DECLARE
- C
- NAME
- N
- DOMAIN
- RANGE
-
EXTERNAL FUNCTION Z3-SOLVER-PROPAGATE-DISEQ
- C
- S
- EQ-EH
-
EXTERNAL FUNCTION Z3-SOLVER-PROPAGATE-EQ
- C
- S
- EQ-EH
-
EXTERNAL FUNCTION Z3-SOLVER-PROPAGATE-FINAL
- C
- S
- FINAL-EH
-
EXTERNAL FUNCTION Z3-SOLVER-PROPAGATE-FIXED
- C
- S
- FIXED-EH
-
EXTERNAL FUNCTION Z3-SOLVER-PROPAGATE-INIT
- C
- S
- USER-CONTEXT
- PUSH-EH
- POP-EH
- FRESH-EH
-
EXTERNAL FUNCTION Z3-SOLVER-PROPAGATE-REGISTER
- C
- S
- E
register an expression to propagate on with the solver. Only expressions of type Bool and type Bit-Vector can be registered for propagation.
-
EXTERNAL FUNCTION Z3-SOLVER-PROPAGATE-REGISTER-CB
- C
- CB
- E
register an expression to propagate on with the solver. Only expressions of type Bool and type Bit-Vector can be registered for propagation. Unlike ref Z3_solver_propagate_register, this function takes a solver callback context as argument. It can be invoked during a callback to register new expressions.
-
EXTERNAL FUNCTION Z3-SOLVER-PUSH
- C
- S
Create a backtracking point.
-
EXTERNAL FUNCTION Z3-SOLVER-RESET
- C
- S
Remove all assertions from the solver.
-
EXTERNAL FUNCTION Z3-SOLVER-SET-PARAMS
- C
- S
- P
Set the given solver using the given parameters.
-
EXTERNAL FUNCTION Z3-SOLVER-TO-DIMACS-STRING
- C
- S
- INCLUDE-NAMES
Convert a solver into a DIMACS formatted string. sa Z3_goal_to_diamcs_string for requirements.
-
EXTERNAL FUNCTION Z3-SOLVER-TO-STRING
- C
- S
Convert a solver into a string.
-
EXTERNAL FUNCTION Z3-SOLVER-TRANSLATE
- SOURCE
- S
- TARGET
Copy a solver
s
from the contextsource
to the contexttarget
. -
EXTERNAL FUNCTION Z3-SORT-TO-AST
- C
- S
-
EXTERNAL FUNCTION Z3-SORT-TO-STRING
- C
- S
-
EXTERNAL FUNCTION Z3-STATS-DEC-REF
- C
- S
Decrement the reference counter of the given statistics object.
-
EXTERNAL FUNCTION Z3-STATS-GET-DOUBLE-VALUE
- C
- S
- IDX
Return the double value of the given statistical data.
-
EXTERNAL FUNCTION Z3-STATS-GET-KEY
- C
- S
- IDX
Return the key (a string) for a particular statistical data.
-
EXTERNAL FUNCTION Z3-STATS-GET-UINT-VALUE
- C
- S
- IDX
Return the unsigned value of the given statistical data.
-
EXTERNAL FUNCTION Z3-STATS-INC-REF
- C
- S
Increment the reference counter of the given statistics object.
-
EXTERNAL FUNCTION Z3-STATS-IS-DOUBLE
- C
- S
- IDX
Return
true
if the given statistical data is a double. -
EXTERNAL FUNCTION Z3-STATS-IS-UINT
- C
- S
- IDX
Return
true
if the given statistical data is a unsigned integer. -
EXTERNAL FUNCTION Z3-STATS-SIZE
- C
- S
Return the number of statistical data in
s
. -
EXTERNAL FUNCTION Z3-STATS-TO-STRING
- C
- S
Convert a statistics into a string.
-
EXTERNAL FUNCTION Z3-SUBSTITUTE
- C
- A
- NUM-EXPRS
- FROM
- TO
Substitute every occurrence of
from[i]
ina
withto[i]
, fori
smaller thannum_exprs
. The result is the new AST. The arraysfrom
andto
must have sizenum_exprs
. For everyi
smaller thannum_exprs,
we must have that sort offrom[i]
must be equal to sort ofto[i]
. -
EXTERNAL FUNCTION Z3-SUBSTITUTE-VARS
- C
- A
- NUM-EXPRS
- TO
Substitute the free variables in
a
with the expressions into
. For everyi
smaller thannum_exprs,
the variable with de-Bruijn indexi
is replaced with termto[i]
. -
EXTERNAL FUNCTION Z3-TACTIC-AND-THEN
- C
- T1
- T2
Return a tactic that applies
t1
to a given goal andt2
to every subgoal produced byt1
. -
EXTERNAL FUNCTION Z3-TACTIC-APPLY
- C
- AST
- G
Apply tactic
t
to the goalg
. -
EXTERNAL FUNCTION Z3-TACTIC-APPLY-EX
- C
- AST
- G
- P
Apply tactic
t
to the goalg
using the parameter setp
. -
EXTERNAL FUNCTION Z3-TACTIC-COND
- C
- P
- T1
- T2
Return a tactic that applies
t1
to a given goal if the probep
evaluates to true, andt2
ifp
evaluates to false. -
EXTERNAL FUNCTION Z3-TACTIC-DEC-REF
- C
- G
Decrement the reference counter of the given tactic.
-
EXTERNAL FUNCTION Z3-TACTIC-FAIL
- C
Return a tactic that always fails.
-
EXTERNAL FUNCTION Z3-TACTIC-FAIL-IF
- C
- P
Return a tactic that fails if the probe
p
evaluates to false. -
EXTERNAL FUNCTION Z3-TACTIC-FAIL-IF-NOT-DECIDED
- C
Return a tactic that fails if the goal is not trivially satisfiable (i.e., empty) or trivially unsatisfiable (i.e., contains false).
-
EXTERNAL FUNCTION Z3-TACTIC-GET-DESCR
- C
- NAME
Return a string containing a description of the tactic with the given name.
-
EXTERNAL FUNCTION Z3-TACTIC-GET-HELP
- C
- AST
Return a string containing a description of parameters accepted by the given tactic.
-
EXTERNAL FUNCTION Z3-TACTIC-GET-PARAM-DESCRS
- C
- AST
Return the parameter description set for the given tactic object.
-
EXTERNAL FUNCTION Z3-TACTIC-INC-REF
- C
- AST
Increment the reference counter of the given tactic.
-
EXTERNAL FUNCTION Z3-TACTIC-OR-ELSE
- C
- T1
- T2
Return a tactic that first applies
t1
to a given goal, if it fails then returns the result oft2
applied to the given goal. -
EXTERNAL FUNCTION Z3-TACTIC-PAR-AND-THEN
- C
- T1
- T2
Return a tactic that applies
t1
to a given goal and thent2
to every subgoal produced byt1
. The subgoals are processed in parallel. -
EXTERNAL FUNCTION Z3-TACTIC-PAR-OR
- C
- NUM
- TS
Return a tactic that applies the given tactics in parallel.
-
EXTERNAL FUNCTION Z3-TACTIC-REPEAT
- C
- AST
- MAX
-
EXTERNAL FUNCTION Z3-TACTIC-SKIP
- C
Return a tactic that just return the given goal.
-
EXTERNAL FUNCTION Z3-TACTIC-TRY-FOR
- C
- AST
- MS
-
EXTERNAL FUNCTION Z3-TACTIC-USING-PARAMS
- C
- AST
- P
Return a tactic that applies
t
using the given set of parameters. -
EXTERNAL FUNCTION Z3-TACTIC-WHEN
- C
- P
- AST
Return a tactic that applies
t
to a given goal is the probep
evaluates to true. Ifp
evaluates to false, then the new tactic behaves like the skip tactic. -
EXTERNAL FUNCTION Z3-TO-APP
- C
- A
Convert an
ast
into anAPP_AST
. This is just type casting. -
EXTERNAL FUNCTION Z3-TO-FUNC-DECL
- C
- A
Convert an AST into a FUNC_DECL_AST. This is just type casting.
-
EXTERNAL FUNCTION Z3-TOGGLE-WARNING-MESSAGES
- ENABLED
Enable/disable printing warning messages to the console.
-
EXTERNAL FUNCTION Z3-TRANSLATE
- SOURCE
- A
- TARGET
Translate/Copy the AST
a
from contextsource
to contexttarget
. ASTa
must have been created using contextsource
. pre source != target -
EXTERNAL FUNCTION Z3-UPDATE-PARAM-VALUE
- C
- PARAM-ID
- PARAM-VALUE
Set a value of a context parameter.
-
EXTERNAL FUNCTION Z3-UPDATE-TERM
- C
- A
- NUM-ARGS
- ARGS
Update the arguments of term
a
using the argumentsargs
. The number of argumentsnum_args
should coincide with the number of arguments toa
. Ifa
is a quantifier, then num_args has to be 1.
-