Library
Module
Module type
Parameter
Class
Class type
val hash : t -> int
hash t
compute the hash value for a term.
val pp_smt2 : bv_format:int -> Stdlib.Format.formatter -> t -> unit
pp_smt2 base formatter t
print term in SMTlib format.
val to_string : ?bv_format:int -> t -> string
to_string t ~bv_format
get string representation of this term.
val id : t -> int64
id t
get the id of this term.
val num_children : t -> int
num_children t
get the number of child terms of a term.
val num_indices : t -> int
num_indices t
get the number of indices of an indexed term.
Requires that given term is an indexed term.
val indices : t -> int array
indices t
get the indices of an indexed term.
Requires that given term is an indexed term.
val symbol : t -> string
symbol t
get the symbol of a term.
val is_const : t -> bool
is_const t
determine if a term is a constant.
val is_variable : t -> bool
is_variable t
determine if a term is a variable.
val is_value : t -> bool
is_value t
determine if a term is a value.
val is_bv_value_zero : t -> bool
is_bv_value_zero t
determine if a term is a bit-vector value representing zero.
val is_bv_value_one : t -> bool
is_bv_value_one t
determine if a term is a bit-vector value representing one.
val is_bv_value_ones : t -> bool
is_bv_value_ones t
determine if a term is a bit-vector value with all bits set to one.
val is_bv_value_min_signed : t -> bool
is_bv_value_min_signed t
determine if a term is a bit-vector minimum signed value.
val is_bv_value_max_signed : t -> bool
is_bv_value_max_signed t
determine if a term is a bit-vector maximum signed value.
val is_fp_value_pos_zero : t -> bool
is_fp_value_pos_zero t
determine if a term is a floating-point positive zero (+zero) value.
val is_fp_value_neg_zero : t -> bool
is_fp_value_neg_zero t
determine if a term is a floating-point value negative zero (-zero).
val is_fp_value_pos_inf : t -> bool
is_fp_value_pos_inf t
determine if a term is a floating-point positive infinity (+oo) value.
val is_fp_value_neg_inf : t -> bool
is_fp_value_neg_inf t
determine if a term is a floating-point negative infinity (-oo) value.
val is_fp_value_nan : t -> bool
is_fp_value_nan t
determine if a term is a floating-point NaN value.
val is_rm_value_rna : t -> bool
is_rm_value_rna t
determine if a term is a rounding mode RNA value.
val is_rm_value_rne : t -> bool
is_rm_value_rna t
determine if a term is a rounding mode RNE value.
val is_rm_value_rtn : t -> bool
is_rm_value_rna t
determine if a term is a rounding mode RTN value.
val is_rm_value_rtp : t -> bool
is_rm_value_rna t
determine if a term is a rounding mode RTP value.
val is_rm_value_rtz : t -> bool
is_rm_value_rna t
determine if a term is a rounding mode RTZ value.
type _ cast =
| Bool : bool cast
for Boolean values
*)| RoundingMode : RoundingMode.t cast
for rounding mode values
*)| String : {
} -> string cast
for any value (Boolean, RoundingMode, bit-vector and floating-point)
*)| IEEE_754 : (string * string * string) cast
for floating-point values as strings for sign bit, exponent and significand
*)| Z : Z.t cast
for bit-vector
*)