{-# LINE 1 "src/Z3/Base/C.hsc" #-}
{-# LANGUAGE EmptyDataDecls #-}
module Z3.Base.C where
import Foreign
import Foreign.C.Types
import Foreign.C.String
data Z3_config
data Z3_context
data Z3_symbol
data Z3_symbol_kind
data Z3_ast
data Z3_sort
data Z3_func_decl
data Z3_decl_kind
data Z3_app
data Z3_pattern
data Z3_constructor
data Z3_constructor_list
data Z3_model
data Z3_goal
data Z3_goal_prec
data Z3_tactic
data Z3_probe
data Z3_apply_result
data Z3_func_interp
data Z3_func_entry
data Z3_fixedpoint
data Z3_optimize
data Z3_solver
data Z3_stats
data Z3_params
data Z3_param_descrs
data Z3_param_kind
data Z3_ast_vector
data Z3_ast_map
data Z3_rcf_num
newtype Z3_lbool = Z3_lbool CInt
deriving Z3_lbool -> Z3_lbool -> Bool
(Z3_lbool -> Z3_lbool -> Bool)
-> (Z3_lbool -> Z3_lbool -> Bool) -> Eq Z3_lbool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: Z3_lbool -> Z3_lbool -> Bool
== :: Z3_lbool -> Z3_lbool -> Bool
$c/= :: Z3_lbool -> Z3_lbool -> Bool
/= :: Z3_lbool -> Z3_lbool -> Bool
Eq
z3_l_true, z3_l_false, z3_l_undef :: Z3_lbool
z3_l_true :: Z3_lbool
z3_l_true = Z3_ast_kind -> Z3_lbool
Z3_lbool (Z3_ast_kind
1)
{-# LINE 103 "src/Z3/Base/C.hsc" #-}
z3_l_false = Z3_lbool (-1)
{-# LINE 104 "src/Z3/Base/C.hsc" #-}
z3_l_undef = Z3_lbool (0)
{-# LINE 105 "src/Z3/Base/C.hsc" #-}
newtype Z3_bool = Z3_bool CInt
deriving Z3_bool -> Z3_bool -> Bool
(Z3_bool -> Z3_bool -> Bool)
-> (Z3_bool -> Z3_bool -> Bool) -> Eq Z3_bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: Z3_bool -> Z3_bool -> Bool
== :: Z3_bool -> Z3_bool -> Bool
$c/= :: Z3_bool -> Z3_bool -> Bool
/= :: Z3_bool -> Z3_bool -> Bool
Eq
type Z3_error_handler = Ptr Z3_context -> Z3_error_code -> IO ()
z3_true, z3_false :: Z3_bool
z3_true :: Z3_bool
z3_true = Z3_ast_kind -> Z3_bool
Z3_bool(Z3_ast_kind
1)
{-# LINE 116 "src/Z3/Base/C.hsc" #-}
z3_false :: Z3_bool
z3_false = Z3_ast_kind -> Z3_bool
Z3_bool(Z3_ast_kind
0)
{-# LINE 118 "src/Z3/Base/C.hsc" #-}
type Z3_string = CString
type Z3_ast_print_mode = CInt
z3_print_smtlib_full :: Z3_ast_print_mode
z3_print_smtlib_full :: Z3_ast_kind
z3_print_smtlib_full = Z3_ast_kind
0
{-# LINE 126 "src/Z3/Base/C.hsc" #-}
z3_print_low_level :: Z3_ast_print_mode
z3_print_low_level :: Z3_ast_kind
z3_print_low_level = Z3_ast_kind
1
{-# LINE 128 "src/Z3/Base/C.hsc" #-}
z3_print_smtlib2_compliant :: Z3_ast_print_mode
z3_print_smtlib2_compliant :: Z3_ast_kind
z3_print_smtlib2_compliant = Z3_ast_kind
2
{-# LINE 130 "src/Z3/Base/C.hsc" #-}
type Z3_error_code = CInt
z3_ok :: Z3_error_code
z3_ok :: Z3_ast_kind
z3_ok = Z3_ast_kind
0
z3_sort_error :: Z3_error_code
z3_sort_error :: Z3_ast_kind
z3_sort_error = Z3_ast_kind
1
z3_iob :: Z3_error_code
z3_iob :: Z3_ast_kind
z3_iob = Z3_ast_kind
2
z3_invalid_arg :: Z3_error_code
z3_invalid_arg :: Z3_ast_kind
z3_invalid_arg = Z3_ast_kind
3
z3_parser_error :: Z3_error_code
z3_parser_error :: Z3_ast_kind
z3_parser_error = Z3_ast_kind
4
z3_no_parser :: Z3_error_code
z3_no_parser :: Z3_ast_kind
z3_no_parser = Z3_ast_kind
5
z3_invalid_pattern :: Z3_error_code
z3_invalid_pattern :: Z3_ast_kind
z3_invalid_pattern = Z3_ast_kind
6
z3_memout_fail :: Z3_error_code
z3_memout_fail :: Z3_ast_kind
z3_memout_fail = Z3_ast_kind
7
z3_file_access_error :: Z3_error_code
z3_file_access_error :: Z3_ast_kind
z3_file_access_error = Z3_ast_kind
8
z3_internal_fatal :: Z3_error_code
z3_internal_fatal :: Z3_ast_kind
z3_internal_fatal = Z3_ast_kind
9
z3_invalid_usage :: Z3_error_code
Z3_ast_kind
z3_invalid_usage = Z3_ast_kind
10
z3_dec_ref_error :: Z3_error_code
z3_dec_ref_error :: Z3_ast_kind
z3_dec_ref_error = Z3_ast_kind
11
z3_exception :: Z3_error_code
z3_exception :: Z3_ast_kind
z3_real_sort :: Z3_ast_kind
z3_exception = Z3_ast_kind
12
{-# LINE 148 "src/Z3/Base/C.hsc" #-}
type Z3_sort_kind = CInt
z3_uninterpreted_sort :: Z3_sort_kind
z3_uninterpreted_sort = 0
{-# LINE 153 "src/Z3/Base/C.hsc" #-}
z3_bool_sort :: Z3_sort_kind
z3_bool_sort = 1
{-# LINE 155 "src/Z3/Base/C.hsc" #-}
z3_int_sort :: Z3_sort_kind
z3_int_sort = 2
{-# LINE 157 "src/Z3/Base/C.hsc" #-}
z3_real_sort :: Z3_sort_kind
z3_real_sort = 3
{-# LINE 159 "src/Z3/Base/C.hsc" #-}
z3_bv_sort :: Z3_sort_kind
z3_bv_sort = 4
{-# LINE 161 "src/Z3/Base/C.hsc" #-}
z3_array_sort :: Z3_sort_kind
z3_array_sort :: Z3_ast_kind
z3_array_sort = Z3_ast_kind
5
{-# LINE 163 "src/Z3/Base/C.hsc" #-}
z3_datatype_sort :: Z3_sort_kind
z3_datatype_sort :: Z3_ast_kind
z3_datatype_sort = Z3_ast_kind
6
{-# LINE 165 "src/Z3/Base/C.hsc" #-}
z3_relation_sort :: Z3_sort_kind
z3_relation_sort :: Z3_ast_kind
z3_relation_sort = Z3_ast_kind
7
{-# LINE 167 "src/Z3/Base/C.hsc" #-}
z3_finite_domain_sort :: Z3_sort_kind
z3_finite_domain_sort :: Z3_ast_kind
z3_finite_domain_sort = Z3_ast_kind
8
{-# LINE 169 "src/Z3/Base/C.hsc" #-}
z3_floating_point_sort :: Z3_sort_kind
z3_floating_point_sort :: Z3_ast_kind
z3_floating_point_sort = Z3_ast_kind
9
{-# LINE 171 "src/Z3/Base/C.hsc" #-}
z3_rounding_mode_sort :: Z3_sort_kind
z3_rounding_mode_sort :: Z3_ast_kind
z3_rounding_mode_sort = Z3_ast_kind
10
{-# LINE 173 "src/Z3/Base/C.hsc" #-}
z3_unknown_sort :: Z3_sort_kind
z3_unknown_sort :: Z3_ast_kind
z3_unknown_sort = Z3_ast_kind
1000
{-# LINE 175 "src/Z3/Base/C.hsc" #-}
type Z3_ast_kind = CInt
z3_numeral_ast :: Z3_ast_kind
z3_numeral_ast :: Z3_ast_kind
z3_numeral_ast = Z3_ast_kind
0
{-# LINE 181 "src/Z3/Base/C.hsc" #-}
z3_app_ast :: Z3_ast_kind
z3_app_ast :: Z3_ast_kind
z3_app_ast = Z3_ast_kind
1
{-# LINE 183 "src/Z3/Base/C.hsc" #-}
z3_var_ast :: Z3_ast_kind
z3_var_ast :: Z3_ast_kind
z3_var_ast = Z3_ast_kind
2
{-# LINE 185 "src/Z3/Base/C.hsc" #-}
z3_quantifier_ast :: Z3_ast_kind
z3_quantifier_ast :: Z3_ast_kind
z3_quantifier_ast = Z3_ast_kind
3
{-# LINE 187 "src/Z3/Base/C.hsc" #-}
z3_sort_ast :: Z3_ast_kind
z3_sort_ast :: Z3_ast_kind
z3_sort_ast = Z3_ast_kind
4
{-# LINE 189 "src/Z3/Base/C.hsc" #-}
z3_func_decl_ast :: Z3_ast_kind
z3_func_decl_ast :: Z3_ast_kind
z3_func_decl_ast = Z3_ast_kind
5
{-# LINE 191 "src/Z3/Base/C.hsc" #-}
z3_unknown_ast :: Z3_ast_kind
z3_unknown_ast :: Z3_ast_kind
z3_unknown_ast = Z3_ast_kind
1000
{-# LINE 193 "src/Z3/Base/C.hsc" #-}
foreign import ccall unsafe "Z3_algebraic_is_value"
z3_algebraic_is_value :: Ptr Z3_context -> Ptr Z3_ast -> IO Z3_bool
foreign import ccall unsafe "Z3_algebraic_is_pos"
z3_algebraic_is_pos :: Ptr Z3_context -> Ptr Z3_ast -> IO Z3_bool
foreign import ccall unsafe "Z3_algebraic_is_neg"
z3_algebraic_is_neg :: Ptr Z3_context -> Ptr Z3_ast -> IO Z3_bool
foreign import ccall unsafe "Z3_algebraic_is_zero"
z3_algebraic_is_zero :: Ptr Z3_context -> Ptr Z3_ast -> IO Z3_bool
foreign import ccall unsafe "Z3_algebraic_sign"
z3_algebraic_sign :: Ptr Z3_context -> Ptr Z3_ast -> IO CInt
foreign import ccall unsafe "Z3_algebraic_add"
z3_algebraic_add :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_algebraic_sub"
z3_algebraic_sub :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_algebraic_mul"
z3_algebraic_mul :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_algebraic_div"
z3_algebraic_div :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_algebraic_root"
z3_algebraic_root :: Ptr Z3_context -> Ptr Z3_ast -> CUInt -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_algebraic_power"
z3_algebraic_power :: Ptr Z3_context -> Ptr Z3_ast -> CUInt -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_algebraic_lt"
z3_algebraic_lt :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO Z3_bool
foreign import ccall unsafe "Z3_algebraic_gt"
z3_algebraic_gt :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO Z3_bool
foreign import ccall unsafe "Z3_algebraic_le"
z3_algebraic_le :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO Z3_bool
foreign import ccall unsafe "Z3_algebraic_ge"
z3_algebraic_ge :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO Z3_bool
foreign import ccall unsafe "Z3_algebraic_eq"
z3_algebraic_eq :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO Z3_bool
foreign import ccall unsafe "Z3_algebraic_neq"
z3_algebraic_neq :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO Z3_bool
foreign import ccall unsafe "Z3_algebraic_roots"
z3_algebraic_roots :: Ptr Z3_context -> Ptr Z3_ast -> CUInt -> Ptr (Ptr Z3_ast) -> IO (Ptr Z3_ast_vector)
foreign import ccall unsafe "Z3_algebraic_eval"
z3_algebraic_eval :: Ptr Z3_context -> Ptr Z3_ast -> CUInt -> Ptr (Ptr Z3_ast) -> IO CInt
foreign import ccall unsafe "Z3_algebraic_get_poly"
z3_algebraic_get_poly :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_ast_vector)
foreign import ccall unsafe "Z3_algebraic_get_i"
z3_algebraic_get_i :: Ptr Z3_context -> Ptr Z3_ast -> IO CUInt
foreign import ccall unsafe "Z3_global_param_set"
z3_global_param_set :: Z3_string -> Z3_string -> IO ()
foreign import ccall unsafe "Z3_global_param_reset_all"
z3_global_param_reset_all :: IO ()
foreign import ccall unsafe "Z3_global_param_get"
z3_global_param_get :: Z3_string -> Ptr Z3_string -> IO Z3_bool
foreign import ccall unsafe "Z3_mk_config"
z3_mk_config :: IO (Ptr Z3_config)
foreign import ccall unsafe "Z3_del_config"
z3_del_config :: Ptr Z3_config -> IO ()
foreign import ccall unsafe "Z3_set_param_value"
z3_set_param_value :: Ptr Z3_config -> Z3_string -> Z3_string -> IO ()
foreign import ccall unsafe "Z3_mk_context"
z3_mk_context :: Ptr Z3_config -> IO (Ptr Z3_context)
foreign import ccall unsafe "Z3_mk_context_rc"
z3_mk_context_rc :: Ptr Z3_config -> IO (Ptr Z3_context)
foreign import ccall unsafe "Z3_del_context"
z3_del_context :: Ptr Z3_context -> IO ()
foreign import ccall unsafe "Z3_inc_ref"
z3_inc_ref :: Ptr Z3_context -> Ptr Z3_ast -> IO ()
foreign import ccall unsafe "Z3_dec_ref"
z3_dec_ref :: Ptr Z3_context -> Ptr Z3_ast -> IO ()
foreign import ccall unsafe "Z3_update_param_value"
z3_update_param_value :: Ptr Z3_context -> Z3_string -> Z3_string -> IO ()
foreign import ccall unsafe "Z3_interrupt"
z3_interrupt :: Ptr Z3_context -> IO ()
foreign import ccall unsafe "Z3_mk_params"
z3_mk_params :: Ptr Z3_context -> IO (Ptr Z3_params)
foreign import ccall unsafe "Z3_params_inc_ref"
z3_params_inc_ref :: Ptr Z3_context -> Ptr Z3_params -> IO ()
foreign import ccall unsafe "Z3_params_dec_ref"
z3_params_dec_ref :: Ptr Z3_context -> Ptr Z3_params -> IO ()
foreign import ccall unsafe "Z3_params_set_bool"
z3_params_set_bool :: Ptr Z3_context -> Ptr Z3_params -> Ptr Z3_symbol ->
Z3_bool -> IO ()
foreign import ccall unsafe "Z3_params_set_uint"
z3_params_set_uint :: Ptr Z3_context -> Ptr Z3_params -> Ptr Z3_symbol ->
CUInt -> IO ()
foreign import ccall unsafe "Z3_params_set_double"
z3_params_set_double :: Ptr Z3_context -> Ptr Z3_params -> Ptr Z3_symbol ->
CDouble -> IO ()
foreign import ccall unsafe "Z3_params_set_symbol"
z3_params_set_symbol :: Ptr Z3_context -> Ptr Z3_params -> Ptr Z3_symbol ->
Ptr Z3_symbol -> IO ()
foreign import ccall unsafe "Z3_params_to_string"
z3_params_to_string :: Ptr Z3_context -> Ptr Z3_params -> IO Z3_string
foreign import ccall unsafe "Z3_params_validate"
z3_params_validate :: Ptr Z3_context -> Ptr Z3_params -> Ptr Z3_param_descrs -> IO ()
foreign import ccall unsafe "Z3_param_descrs_inc_ref"
z3_param_descrs_inc_ref :: Ptr Z3_context -> Ptr Z3_param_descrs -> IO ()
foreign import ccall unsafe "Z3_param_descrs_dec_ref"
z3_param_descrs_dec_ref :: Ptr Z3_context -> Ptr Z3_param_descrs -> IO ()
foreign import ccall unsafe "Z3_param_descrs_get_kind"
z3_param_descrs_get_kind :: Ptr Z3_context -> Ptr Z3_param_descrs -> Ptr Z3_symbol -> IO (Ptr Z3_param_kind)
foreign import ccall unsafe "Z3_param_descrs_size"
z3_param_descrs_size :: Ptr Z3_context -> Ptr Z3_param_descrs -> IO (CUInt)
foreign import ccall unsafe "Z3_param_descrs_get_name"
z3_param_descrs_get_name :: Ptr Z3_context -> Ptr Z3_param_descrs -> CUInt -> IO (Ptr Z3_symbol)
foreign import ccall unsafe "Z3_param_descrs_get_documentation"
z3_param_descrs_get_documentation :: Ptr Z3_context -> Ptr Z3_param_descrs -> Ptr Z3_symbol -> IO (Z3_string)
foreign import ccall unsafe "Z3_param_descrs_to_string"
z3_param_descrs_to_string :: Ptr Z3_context -> Ptr Z3_param_descrs -> IO (Z3_string)
foreign import ccall unsafe "Z3_mk_int_symbol"
z3_mk_int_symbol :: Ptr Z3_context -> CInt -> IO (Ptr Z3_symbol)
foreign import ccall unsafe "Z3_mk_string_symbol"
z3_mk_string_symbol :: Ptr Z3_context -> Z3_string -> IO (Ptr Z3_symbol)
foreign import ccall unsafe "Z3_mk_uninterpreted_sort"
z3_mk_uninterpreted_sort :: Ptr Z3_context -> Ptr Z3_symbol -> IO (Ptr Z3_sort)
foreign import ccall unsafe "Z3_mk_bool_sort"
z3_mk_bool_sort :: Ptr Z3_context -> IO (Ptr Z3_sort)
foreign import ccall unsafe "Z3_mk_int_sort"
z3_mk_int_sort :: Ptr Z3_context -> IO (Ptr Z3_sort)
foreign import ccall unsafe "Z3_mk_real_sort"
z3_mk_real_sort :: Ptr Z3_context -> IO (Ptr Z3_sort)
foreign import ccall unsafe "Z3_mk_bv_sort"
z3_mk_bv_sort :: Ptr Z3_context -> CUInt -> IO (Ptr Z3_sort)
foreign import ccall unsafe "Z3_mk_finite_domain_sort"
z3_mk_finite_domain_sort :: Ptr Z3_context -> Ptr Z3_symbol -> CULLong -> IO (Ptr Z3_sort)
foreign import ccall unsafe "Z3_mk_array_sort"
z3_mk_array_sort :: Ptr Z3_context
-> Ptr Z3_sort
-> Ptr Z3_sort
-> IO (Ptr Z3_sort)
foreign import ccall unsafe "Z3_mk_array_sort_n"
z3_mk_array_sort_n :: Ptr Z3_context
-> CUInt
-> Ptr (Ptr Z3_sort)
-> Ptr Z3_sort
-> IO (Ptr Z3_sort)
foreign import ccall unsafe "Z3_mk_tuple_sort"
z3_mk_tuple_sort :: Ptr Z3_context
-> Ptr Z3_symbol
-> CUInt
-> Ptr (Ptr Z3_symbol)
-> Ptr (Ptr Z3_sort)
-> Ptr (Ptr Z3_func_decl)
-> Ptr (Ptr Z3_func_decl)
-> IO (Ptr Z3_sort)
foreign import ccall unsafe "Z3_mk_enumeration_sort"
z3_mk_enumeration_sort :: Ptr Z3_context
-> Ptr Z3_symbol
-> CUInt
-> Ptr (Ptr Z3_symbol)
-> Ptr (Ptr Z3_func_decl)
-> Ptr (Ptr Z3_func_decl)
-> IO (Ptr Z3_sort)
foreign import ccall unsafe "Z3_mk_list_sort"
z3_mk_list_sort :: Ptr Z3_context
-> Ptr Z3_symbol
-> Ptr Z3_sort
-> Ptr (Ptr Z3_func_decl)
-> Ptr (Ptr Z3_func_decl)
-> Ptr (Ptr Z3_func_decl)
-> Ptr (Ptr Z3_func_decl)
-> Ptr (Ptr Z3_func_decl)
-> Ptr (Ptr Z3_func_decl)
-> IO (Ptr Z3_sort)
foreign import ccall unsafe "Z3_mk_constructor"
z3_mk_constructor :: Ptr Z3_context
-> Ptr Z3_symbol
-> Ptr Z3_symbol
-> CUInt
-> Ptr (Ptr Z3_symbol)
-> Ptr (Ptr Z3_sort)
-> Ptr CUInt
-> IO (Ptr Z3_constructor)
foreign import ccall unsafe "Z3_del_constructor"
z3_del_constructor :: Ptr Z3_context -> Ptr Z3_constructor -> IO ()
foreign import ccall unsafe "Z3_mk_datatype"
z3_mk_datatype :: Ptr Z3_context
-> Ptr Z3_symbol
-> CUInt
-> Ptr (Ptr Z3_constructor)
-> IO (Ptr Z3_sort)
foreign import ccall unsafe "Z3_mk_constructor_list"
z3_mk_constructor_list :: Ptr Z3_context
-> CUInt
-> Ptr (Ptr Z3_constructor)
-> IO (Ptr Z3_constructor_list)
foreign import ccall unsafe "Z3_del_constructor_list"
z3_del_constructor_list :: Ptr Z3_context
-> Ptr (Z3_constructor_list)
-> IO ()
foreign import ccall unsafe "Z3_mk_datatypes"
z3_mk_datatypes :: Ptr Z3_context
-> CUInt
-> Ptr (Ptr Z3_symbol)
-> Ptr (Ptr Z3_sort)
-> Ptr (Ptr Z3_constructor_list)
-> IO ()
foreign import ccall unsafe "Z3_query_constructor"
z3_query_constructor :: Ptr Z3_context
-> Ptr Z3_constructor
-> CUInt
-> Ptr Z3_func_decl
-> Ptr Z3_func_decl
-> Ptr (Ptr Z3_func_decl)
foreign import ccall unsafe "Z3_mk_func_decl"
z3_mk_func_decl :: Ptr Z3_context
-> Ptr Z3_symbol
-> CUInt
-> Ptr (Ptr Z3_sort)
-> Ptr Z3_sort
-> IO (Ptr Z3_func_decl)
foreign import ccall unsafe "Z3_mk_app"
z3_mk_app :: Ptr Z3_context
-> Ptr Z3_func_decl
-> CUInt
-> Ptr (Ptr Z3_ast)
-> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_const"
z3_mk_const :: Ptr Z3_context -> Ptr Z3_symbol -> Ptr Z3_sort -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fresh_func_decl"
z3_mk_fresh_func_decl :: Ptr z3_context
-> Z3_string
-> CUInt
-> Ptr (Ptr Z3_sort)
-> Ptr Z3_sort
-> IO (Ptr Z3_func_decl)
foreign import ccall unsafe "Z3_mk_fresh_const"
z3_mk_fresh_const :: Ptr Z3_context -> Z3_string -> Ptr Z3_sort -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_rec_func_decl"
z3_mk_rec_func_decl :: Ptr Z3_context
-> Ptr Z3_symbol
-> CUInt
-> Ptr (Ptr Z3_sort)
-> Ptr Z3_sort
-> IO (Ptr Z3_func_decl)
foreign import ccall unsafe "Z3_add_rec_def"
z3_add_rec_def :: Ptr Z3_context
-> Ptr Z3_func_decl
-> CUInt
-> Ptr (Ptr Z3_ast)
-> Ptr Z3_ast
-> IO ()
foreign import ccall unsafe "Z3_mk_true"
z3_mk_true :: Ptr Z3_context -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_false"
z3_mk_false :: Ptr Z3_context -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_eq"
z3_mk_eq :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_distinct"
z3_mk_distinct :: Ptr Z3_context -> CUInt -> Ptr (Ptr Z3_ast) -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_not"
z3_mk_not :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_ite"
z3_mk_ite :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_iff"
z3_mk_iff :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_implies"
z3_mk_implies :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_xor"
z3_mk_xor :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_and"
z3_mk_and :: Ptr Z3_context -> CUInt -> Ptr (Ptr Z3_ast) -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_or"
z3_mk_or :: Ptr Z3_context -> CUInt -> Ptr (Ptr Z3_ast) -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_add"
z3_mk_add :: Ptr Z3_context -> CUInt -> Ptr (Ptr Z3_ast) -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_mul"
z3_mk_mul :: Ptr Z3_context -> CUInt -> Ptr (Ptr Z3_ast) -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_sub"
z3_mk_sub :: Ptr Z3_context -> CUInt -> Ptr (Ptr Z3_ast) -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_unary_minus"
z3_mk_unary_minus :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_div"
z3_mk_div :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_mod"
z3_mk_mod :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_rem"
z3_mk_rem :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_power"
z3_mk_power :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_lt"
z3_mk_lt :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_le"
z3_mk_le :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_gt"
z3_mk_gt :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_ge"
z3_mk_ge :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_divides"
z3_mk_divides :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_int2real"
z3_mk_int2real :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_real2int"
z3_mk_real2int :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_is_int"
z3_mk_is_int :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_bvnot"
z3_mk_bvnot :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_bvredand"
z3_mk_bvredand :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_bvredor"
z3_mk_bvredor :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_bvand"
z3_mk_bvand :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_bvor"
z3_mk_bvor :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_bvxor"
z3_mk_bvxor :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_bvnand"
z3_mk_bvnand :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_bvnor"
z3_mk_bvnor :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_bvxnor"
z3_mk_bvxnor :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_bvneg"
z3_mk_bvneg :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_bvadd"
z3_mk_bvadd :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_bvsub"
z3_mk_bvsub :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_bvmul"
z3_mk_bvmul :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_bvudiv"
z3_mk_bvudiv :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_bvsdiv"
z3_mk_bvsdiv :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_bvurem"
z3_mk_bvurem :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_bvsrem"
z3_mk_bvsrem :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_bvsmod"
z3_mk_bvsmod :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_bvult"
z3_mk_bvult :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_bvslt"
z3_mk_bvslt :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_bvule"
z3_mk_bvule :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_bvsle"
z3_mk_bvsle :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_bvuge"
z3_mk_bvuge :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_bvsge"
z3_mk_bvsge :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_bvugt"
z3_mk_bvugt :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_bvsgt"
z3_mk_bvsgt :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_concat"
z3_mk_concat :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_extract"
:: Ptr Z3_context -> CUInt -> CUInt -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_sign_ext"
z3_mk_sign_ext :: Ptr Z3_context -> CUInt -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_zero_ext"
z3_mk_zero_ext :: Ptr Z3_context -> CUInt -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_repeat"
z3_mk_repeat :: Ptr Z3_context -> CUInt -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_bvshl"
z3_mk_bvshl :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_bvlshr"
z3_mk_bvlshr :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_bvashr"
z3_mk_bvashr :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_rotate_left"
z3_mk_rotate_left :: Ptr Z3_context -> CUInt -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_rotate_right"
z3_mk_rotate_right :: Ptr Z3_context -> CUInt -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_ext_rotate_left"
z3_mk_ext_rotate_left :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_ext_rotate_right"
z3_mk_ext_rotate_right :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_int2bv"
z3_mk_int2bv :: Ptr Z3_context -> CUInt -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_bv2int"
z3_mk_bv2int :: Ptr Z3_context -> Ptr Z3_ast -> Z3_bool -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_bvadd_no_overflow"
z3_mk_bvadd_no_overflow :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> Z3_bool -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_bvadd_no_underflow"
z3_mk_bvadd_no_underflow :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_bvsub_no_overflow"
z3_mk_bvsub_no_overflow :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_bvsub_no_underflow"
z3_mk_bvsub_no_underflow :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_bvsdiv_no_overflow"
z3_mk_bvsdiv_no_overflow :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_bvneg_no_overflow"
z3_mk_bvneg_no_overflow :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_bvmul_no_overflow"
z3_mk_bvmul_no_overflow :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> Z3_bool -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_bvmul_no_underflow"
z3_mk_bvmul_no_underflow :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_select"
z3_mk_select :: Ptr Z3_context
-> Ptr Z3_ast
-> Ptr Z3_ast
-> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_select_n"
z3_mk_select_n :: Ptr Z3_context
-> Ptr Z3_ast
-> CUInt
-> Ptr Z3_ast_vector
-> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_store"
z3_mk_store :: Ptr Z3_context
-> Ptr Z3_ast
-> Ptr Z3_ast
-> Ptr Z3_ast
-> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_store_n"
z3_mk_store_n :: Ptr Z3_context
-> Ptr Z3_ast
-> CUInt
-> Ptr Z3_ast_vector
-> Ptr Z3_ast
-> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_const_array"
z3_mk_const_array :: Ptr Z3_context -> Ptr Z3_sort -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_map"
z3_mk_map :: Ptr Z3_context -> Ptr Z3_func_decl -> CUInt -> Ptr (Ptr Z3_ast) -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_array_default"
z3_mk_array_default :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_as_array"
z3_mk_as_array :: Ptr Z3_context
-> Ptr Z3_func_decl
-> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_set_has_size"
z3_mk_set_has_size :: Ptr Z3_context
-> Ptr Z3_ast
-> Ptr Z3_ast
-> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_set_sort"
z3_mk_set_sort :: Ptr Z3_context -> Ptr Z3_sort -> IO (Ptr Z3_sort)
foreign import ccall unsafe "Z3_mk_empty_set"
z3_mk_empty_set :: Ptr Z3_context -> Ptr Z3_sort -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_full_set"
z3_mk_full_set :: Ptr Z3_context -> Ptr Z3_sort -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_set_add"
z3_mk_set_add :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_set_del"
z3_mk_set_del :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_set_union"
z3_mk_set_union :: Ptr Z3_context -> CUInt -> Ptr (Ptr Z3_ast) -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_set_intersect"
z3_mk_set_intersect :: Ptr Z3_context -> CUInt -> Ptr (Ptr Z3_ast) -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_set_difference"
z3_mk_set_difference :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_set_complement"
z3_mk_set_complement :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_set_member"
z3_mk_set_member :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_set_subset"
z3_mk_set_subset :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_array_ext"
z3_mk_array_ext :: Ptr Z3_context
-> Ptr Z3_ast
-> Ptr Z3_ast
-> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_numeral"
z3_mk_numeral :: Ptr Z3_context -> Z3_string -> Ptr Z3_sort -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_real"
z3_mk_real :: Ptr Z3_context -> CInt -> CInt -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_int"
z3_mk_int :: Ptr Z3_context -> CInt -> Ptr Z3_sort -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_unsigned_int"
z3_mk_unsigned_int :: Ptr Z3_context -> CUInt -> Ptr Z3_sort -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_int64"
z3_mk_int64 :: Ptr Z3_context -> CLLong -> Ptr Z3_sort -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_unsigned_int64"
z3_mk_unsigned_int64 :: Ptr Z3_context -> CULLong -> Ptr Z3_sort -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_bv_numeral"
z3_mk_bv_numeral :: Ptr Z3_context
-> CUInt
-> Ptr Z3_bool
-> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_seq_sort"
z3_mk_seq_sort :: Ptr Z3_context -> Ptr Z3_sort -> IO (Ptr Z3_sort)
foreign import ccall unsafe "Z3_is_seq_sort"
z3_is_seq_sort :: Ptr Z3_context -> Ptr Z3_sort -> IO Z3_bool
foreign import ccall unsafe "Z3_get_seq_sort_basis"
z3_get_seq_sort_basis :: Ptr Z3_context
-> Ptr Z3_sort
-> IO (Ptr Z3_sort)
foreign import ccall unsafe "Z3_mk_re_sort"
z3_mk_re_sort :: Ptr Z3_context -> Ptr Z3_sort -> IO (Ptr Z3_sort)
foreign import ccall unsafe "Z3_is_re_sort"
z3_is_re_sort :: Ptr Z3_context -> Ptr Z3_sort -> IO Z3_bool
foreign import ccall unsafe "Z3_get_re_sort_basis"
z3_get_re_sort_basis :: Ptr Z3_context
-> Ptr Z3_sort
-> IO (Ptr Z3_sort)
foreign import ccall unsafe "Z3_mk_string_sort"
z3_mk_string_sort :: Ptr Z3_context -> IO (Ptr Z3_sort)
foreign import ccall unsafe "Z3_is_string_sort"
z3_is_string_sort :: Ptr Z3_context -> Ptr Z3_sort -> IO Z3_bool
foreign import ccall unsafe "Z3_mk_string"
z3_mk_string :: Ptr Z3_context -> Z3_string -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_lstring"
z3_mk_lstring :: Ptr Z3_context -> CUInt -> Z3_string -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_is_string"
z3_is_string :: Ptr Z3_context -> Ptr Z3_ast -> IO Z3_bool
foreign import ccall unsafe "Z3_get_string"
z3_get_string :: Ptr Z3_context -> Ptr Z3_ast -> IO Z3_string
foreign import ccall unsafe "Z3_get_lstring"
z3_get_lstring :: Ptr Z3_context -> Ptr Z3_ast -> CUInt -> IO Z3_string
foreign import ccall unsafe "Z3_mk_seq_empty"
z3_mk_seq_empty :: Ptr Z3_context -> Ptr Z3_sort -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_seq_unit"
z3_mk_seq_unit :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_seq_concat"
z3_mk_seq_concat :: Ptr Z3_context -> CUInt -> Ptr (Ptr Z3_ast) -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_seq_prefix"
z3_mk_seq_prefix :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_seq_suffix"
z3_mk_seq_suffix :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_seq_contains"
z3_mk_seq_contains :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_str_lt"
z3_mk_str_lt :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_str_le"
z3_mk_str_le :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_seq_extract"
:: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_seq_replace"
z3_mk_seq_replace :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_seq_at"
z3_mk_seq_at :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_seq_nth"
z3_mk_seq_nth :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_seq_length"
z3_mk_seq_length :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_seq_index"
z3_mk_seq_index :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_seq_last_index"
z3_mk_seq_last_index :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_str_to_int"
z3_mk_str_to_int :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_int_to_str"
z3_mk_int_to_str :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_seq_to_re"
z3_mk_seq_to_re :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_seq_in_re"
z3_mk_seq_in_re :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_re_plus"
z3_mk_re_plus :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_re_star"
z3_mk_re_star :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_re_option"
z3_mk_re_option :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_re_union"
z3_mk_re_union :: Ptr Z3_context -> CUInt -> Ptr (Ptr Z3_ast) -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_re_concat"
z3_mk_re_concat :: Ptr Z3_context -> CUInt -> Ptr (Ptr Z3_ast) -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_re_range"
z3_mk_re_range :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_re_loop"
z3_mk_re_loop :: Ptr Z3_context -> Ptr Z3_ast -> CUInt -> CUInt -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_re_intersect"
z3_mk_re_intersect :: Ptr Z3_context -> CUInt -> Ptr (Ptr Z3_ast) -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_re_complement"
z3_mk_re_complement :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_re_empty"
z3_mk_re_empty :: Ptr Z3_context -> Ptr Z3_sort -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_re_full"
z3_mk_re_full :: Ptr Z3_context -> Ptr Z3_sort -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_linear_order"
z3_mk_linear_order :: Ptr Z3_context -> Ptr Z3_sort -> CUInt -> IO (Ptr Z3_func_decl)
foreign import ccall unsafe "Z3_mk_partial_order"
z3_mk_partial_order :: Ptr Z3_context -> Ptr Z3_sort -> CUInt -> IO (Ptr Z3_func_decl)
foreign import ccall unsafe "Z3_mk_piecewise_linear_order"
z3_mk_piecewise_linear_order :: Ptr Z3_context -> Ptr Z3_sort -> CUInt -> IO (Ptr Z3_func_decl)
foreign import ccall unsafe "Z3_mk_tree_order"
z3_mk_tree_order :: Ptr Z3_context -> Ptr Z3_sort -> CUInt -> IO (Ptr Z3_func_decl)
foreign import ccall unsafe "Z3_mk_transitive_closure"
z3_mk_transitive_closure :: Ptr Z3_context -> Ptr Z3_func_decl -> IO (Ptr Z3_func_decl)
foreign import ccall unsafe "Z3_mk_pattern"
z3_mk_pattern :: Ptr Z3_context -> CUInt -> Ptr (Ptr Z3_ast) -> IO (Ptr Z3_pattern)
foreign import ccall unsafe "Z3_mk_bound"
z3_mk_bound :: Ptr Z3_context -> CUInt -> Ptr Z3_sort -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_forall"
z3_mk_forall :: Ptr Z3_context -> CUInt
-> CUInt -> Ptr (Ptr Z3_pattern)
-> CUInt -> Ptr (Ptr Z3_sort) -> Ptr (Ptr Z3_symbol)
-> Ptr Z3_ast
-> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_exists"
z3_mk_exists :: Ptr Z3_context -> CUInt
-> CUInt -> Ptr (Ptr Z3_pattern)
-> CUInt -> Ptr (Ptr Z3_sort) -> Ptr (Ptr Z3_symbol)
-> Ptr Z3_ast
-> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_quantifier"
z3_mk_quantifier :: Ptr Z3_context
-> Z3_bool
-> CUInt
-> CUInt
-> Ptr (Ptr Z3_pattern)
-> CUInt
-> Ptr (Ptr Z3_sort)
-> Ptr (Ptr Z3_symbol)
-> Ptr Z3_ast
-> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_quantifier_ex"
z3_mk_quantifier_ex :: Ptr Z3_context
-> Z3_bool
-> CUInt
-> Ptr Z3_symbol
-> Ptr Z3_symbol
-> CUInt
-> Ptr (Ptr Z3_pattern)
-> CUInt
-> Ptr (Ptr Z3_pattern)
-> CUInt
-> Ptr (Ptr Z3_sort)
-> Ptr (Ptr Z3_symbol)
-> Ptr Z3_ast
-> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_forall_const"
z3_mk_forall_const :: Ptr Z3_context
-> CUInt
-> CUInt
-> Ptr (Ptr Z3_app)
-> CUInt
-> Ptr (Ptr Z3_pattern)
-> Ptr Z3_ast
-> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_exists_const"
z3_mk_exists_const :: Ptr Z3_context
-> CUInt
-> CUInt
-> Ptr (Ptr Z3_app)
-> CUInt
-> Ptr (Ptr Z3_pattern)
-> Ptr Z3_ast
-> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_quantifier_const"
z3_mk_quantifier_const :: Ptr Z3_context
-> Z3_bool
-> CUInt
-> CUInt
-> Ptr (Ptr Z3_app)
-> CUInt
-> Ptr (Ptr Z3_pattern)
-> Ptr Z3_ast
-> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_quantifier_const_ex"
z3_mk_quantifier_const_ex :: Ptr Z3_context
-> Z3_bool
-> CUInt
-> Ptr Z3_symbol
-> Ptr Z3_symbol
-> CUInt
-> Ptr (Ptr Z3_app)
-> CUInt
-> Ptr (Ptr Z3_pattern)
-> CUInt
-> Ptr (Ptr Z3_pattern)
-> Ptr Z3_ast
-> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_lambda"
z3_mk_lambda :: Ptr Z3_context
-> CUInt
-> Ptr (Ptr Z3_sort)
-> Ptr (Ptr Z3_symbol)
-> Ptr Z3_ast
-> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_lambda_const"
z3_mk_lambda_const :: Ptr Z3_context
-> CUInt
-> Ptr (Ptr Z3_app)
-> Ptr Z3_ast
-> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_get_symbol_kind"
z3_get_symbol_kind :: Ptr Z3_context
-> Ptr Z3_symbol
-> IO (Ptr Z3_symbol_kind)
foreign import ccall unsafe "Z3_get_symbol_int"
z3_get_symbol_int :: Ptr Z3_context
-> Ptr Z3_symbol
-> IO (CInt)
foreign import ccall unsafe "Z3_get_symbol_string"
z3_get_symbol_string :: Ptr Z3_context -> Ptr Z3_symbol -> IO Z3_string
foreign import ccall unsafe "Z3_get_sort_name"
z3_get_sort_name :: Ptr Z3_context -> Ptr Z3_sort -> IO (Ptr Z3_symbol)
foreign import ccall unsafe "Z3_get_sort_id"
z3_get_sort_id :: Ptr Z3_context -> Ptr Z3_sort -> IO CUInt
foreign import ccall unsafe "Z3_sort_to_ast"
z3_sort_to_ast :: Ptr Z3_context -> Ptr Z3_sort -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_is_eq_sort"
z3_is_eq_sort :: Ptr Z3_context -> Ptr Z3_sort -> Ptr Z3_sort -> IO (Z3_bool)
foreign import ccall unsafe "Z3_get_sort_kind"
z3_get_sort_kind :: Ptr Z3_context -> Ptr Z3_sort -> IO Z3_sort_kind
foreign import ccall unsafe "Z3_get_bv_sort_size"
z3_get_bv_sort_size :: Ptr Z3_context -> Ptr Z3_sort -> IO CUInt
foreign import ccall unsafe "Z3_get_finite_domain_sort_size"
z3_get_finite_domain_sort_size :: Ptr Z3_context -> Ptr Z3_sort -> Ptr CULLong -> IO Z3_bool
foreign import ccall unsafe "Z3_get_array_sort_domain"
z3_get_array_sort_domain :: Ptr Z3_context -> Ptr Z3_sort -> IO (Ptr Z3_sort)
foreign import ccall unsafe "Z3_get_array_sort_range"
z3_get_array_sort_range :: Ptr Z3_context -> Ptr Z3_sort -> IO (Ptr Z3_sort)
foreign import ccall unsafe "Z3_get_tuple_sort_mk_decl"
z3_get_tuple_sort_mk_decl :: Ptr Z3_context -> Ptr Z3_sort -> IO (Ptr Z3_func_decl)
foreign import ccall unsafe "Z3_get_tuple_sort_num_fields"
z3_get_tuple_sort_num_fields :: Ptr Z3_context -> Ptr Z3_sort -> IO CUInt
foreign import ccall unsafe "Z3_get_tuple_sort_field_decl"
z3_get_tuple_sort_field_decl :: Ptr Z3_context -> Ptr Z3_sort -> CUInt -> IO (Ptr Z3_func_decl)
foreign import ccall unsafe "Z3_get_datatype_sort_num_constructors"
z3_get_datatype_sort_num_constructors :: Ptr Z3_context -> Ptr Z3_sort -> IO CUInt
foreign import ccall unsafe "Z3_get_datatype_sort_constructor"
z3_get_datatype_sort_constructor :: Ptr Z3_context -> Ptr Z3_sort -> CUInt -> IO (Ptr Z3_func_decl)
foreign import ccall unsafe "Z3_get_datatype_sort_recognizer"
z3_get_datatype_sort_recognizer :: Ptr Z3_context -> Ptr Z3_sort -> CUInt -> IO (Ptr Z3_func_decl)
foreign import ccall unsafe "Z3_get_datatype_sort_constructor_accessor"
z3_get_datatype_sort_constructor_accessor :: Ptr Z3_context -> Ptr Z3_sort -> CUInt -> CUInt -> IO (Ptr Z3_func_decl)
foreign import ccall unsafe "Z3_datatype_update_field"
z3_datatype_update_field :: Ptr Z3_context -> Ptr Z3_func_decl -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_get_relation_arity"
z3_get_relation_arity :: Ptr Z3_context -> Ptr Z3_sort -> IO CUInt
foreign import ccall unsafe "Z3_get_relation_column"
z3_get_relation_column :: Ptr Z3_context -> Ptr Z3_sort -> CUInt -> IO (Ptr Z3_sort)
foreign import ccall unsafe "Z3_mk_atmost"
z3_mk_atmost :: Ptr Z3_context -> CUInt -> Ptr (Ptr Z3_ast) -> CUInt -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_atleast"
z3_mk_atleast :: Ptr Z3_context -> CUInt -> Ptr (Ptr Z3_ast) -> CUInt -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_pble"
z3_mk_pble :: Ptr Z3_context -> CUInt -> Ptr Z3_ast_vector -> Ptr CInt -> CInt -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_pbge"
z3_mk_pbge :: Ptr Z3_context -> CUInt -> Ptr Z3_ast_vector -> Ptr CInt -> CInt -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_pbeq"
z3_mk_pbeq :: Ptr Z3_context -> CUInt -> Ptr Z3_ast_vector -> Ptr CInt -> CInt -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_func_decl_to_ast"
z3_func_decl_to_ast :: Ptr Z3_context -> Ptr Z3_func_decl -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_is_eq_func_decl"
z3_is_eq_func_decl :: Ptr Z3_context -> Ptr Z3_func_decl -> Ptr Z3_func_decl -> IO Z3_bool
foreign import ccall unsafe "Z3_get_func_decl_id"
z3_get_func_decl_id :: Ptr Z3_context -> Ptr Z3_func_decl -> IO CUInt
foreign import ccall unsafe "Z3_get_decl_name"
z3_get_decl_name :: Ptr Z3_context -> Ptr Z3_func_decl -> IO (Ptr Z3_symbol)
foreign import ccall unsafe "Z3_get_decl_kind"
z3_get_decl_kind :: Ptr Z3_context -> Ptr Z3_func_decl -> IO (Ptr Z3_decl_kind)
foreign import ccall unsafe "Z3_get_domain_size"
z3_get_domain_size :: Ptr Z3_context -> Ptr Z3_func_decl -> IO CUInt
foreign import ccall unsafe "Z3_get_arity"
z3_get_arity :: Ptr Z3_context -> Ptr Z3_func_decl -> IO CUInt
foreign import ccall unsafe "Z3_get_domain"
z3_get_domain :: Ptr Z3_context -> Ptr Z3_func_decl -> CUInt -> IO (Ptr Z3_sort)
foreign import ccall unsafe "Z3_get_range"
z3_get_range :: Ptr Z3_context -> Ptr Z3_func_decl -> IO (Ptr Z3_sort)
foreign import ccall unsafe "Z3_get_decl_num_parameters"
z3_get_decl_num_parameters :: Ptr Z3_context -> Ptr Z3_func_decl -> IO CUInt
foreign import ccall unsafe "Z3_get_decl_parameter_kind"
z3_get_decl_parameter_kind :: Ptr Z3_context -> Ptr Z3_func_decl -> CUInt -> IO (Ptr Z3_param_kind)
foreign import ccall unsafe "Z3_get_decl_int_parameter"
z3_get_decl_int_parameter :: Ptr Z3_context -> Ptr Z3_func_decl -> CUInt -> IO CInt
foreign import ccall unsafe "Z3_get_decl_double_parameter"
z3_get_decl_double_parameter :: Ptr Z3_context -> Ptr Z3_func_decl -> CUInt -> IO CDouble
foreign import ccall unsafe "Z3_get_decl_symbol_parameter"
z3_get_decl_symbol_parameter :: Ptr Z3_context -> Ptr Z3_func_decl -> CUInt -> IO (Ptr Z3_symbol)
foreign import ccall unsafe "Z3_get_decl_sort_parameter"
z3_get_decl_sort_parameter :: Ptr Z3_context -> Ptr Z3_func_decl -> CUInt -> IO (Ptr Z3_sort)
foreign import ccall unsafe "Z3_get_decl_ast_parameter"
z3_get_decl_ast_parameter :: Ptr Z3_context -> Ptr Z3_func_decl -> CUInt -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_get_decl_func_decl_parameter"
z3_get_decl_func_decl_parameter :: Ptr Z3_context -> Ptr Z3_func_decl -> CUInt -> IO (Ptr Z3_func_decl)
foreign import ccall unsafe "Z3_get_decl_rational_parameter"
z3_get_decl_rational_parameter :: Ptr Z3_context -> Ptr Z3_func_decl -> CUInt -> IO Z3_string
foreign import ccall unsafe "Z3_app_to_ast"
z3_app_to_ast :: Ptr Z3_context -> Ptr Z3_app -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_get_app_decl"
z3_get_app_decl :: Ptr Z3_context -> Ptr Z3_app -> IO (Ptr Z3_func_decl)
foreign import ccall unsafe "Z3_get_app_num_args"
z3_get_app_num_args :: Ptr Z3_context -> Ptr Z3_app -> IO CUInt
foreign import ccall unsafe "Z3_get_app_arg"
z3_get_app_arg :: Ptr Z3_context -> Ptr Z3_app -> CUInt -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_is_eq_ast"
z3_is_eq_ast :: Ptr Z3_context
-> Ptr Z3_ast
-> Ptr Z3_ast
-> IO Z3_bool
foreign import ccall unsafe "Z3_get_ast_id"
z3_get_ast_id :: Ptr Z3_context
-> Ptr Z3_ast
-> IO CUInt
foreign import ccall unsafe "Z3_get_ast_hash"
z3_get_ast_hash :: Ptr Z3_context
-> Ptr Z3_ast
-> IO CUInt
foreign import ccall unsafe "Z3_get_sort"
z3_get_sort :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_sort)
foreign import ccall unsafe "Z3_is_well_sorted"
z3_is_well_sorted :: Ptr Z3_context -> Ptr Z3_ast -> IO (Z3_bool)
foreign import ccall unsafe "Z3_get_bool_value"
z3_get_bool_value :: Ptr Z3_context -> Ptr Z3_ast -> IO Z3_lbool
foreign import ccall unsafe "Z3_get_ast_kind"
z3_get_ast_kind :: Ptr Z3_context -> Ptr Z3_ast -> IO Z3_ast_kind
foreign import ccall unsafe "Z3_is_app"
z3_is_app :: Ptr Z3_context -> Ptr Z3_ast -> IO Z3_bool
foreign import ccall unsafe "Z3_is_numeral_ast"
z3_is_numeral_ast :: Ptr Z3_context -> Ptr Z3_ast -> IO Z3_bool
foreign import ccall unsafe "Z3_is_algebraic_number"
z3_is_algebraic_number :: Ptr Z3_context -> Ptr Z3_ast -> IO Z3_bool
foreign import ccall unsafe "Z3_to_app"
z3_to_app :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_app)
foreign import ccall unsafe "Z3_to_func_decl"
z3_to_func_decl :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_func_decl)
foreign import ccall unsafe "Z3_get_numeral_string"
z3_get_numeral_string :: Ptr Z3_context -> Ptr Z3_ast -> IO Z3_string
foreign import ccall unsafe "Z3_get_numeral_binary_string"
z3_get_numeral_binary_string :: Ptr Z3_context -> Ptr Z3_ast -> IO Z3_string
foreign import ccall unsafe "Z3_get_numeral_decimal_string"
z3_get_numeral_decimal_string :: Ptr Z3_context -> Ptr Z3_ast -> IO Z3_string
foreign import ccall unsafe "Z3_get_numeral_double"
z3_get_numeral_double :: Ptr Z3_context -> Ptr Z3_ast -> IO CDouble
foreign import ccall unsafe "Z3_get_numerator"
z3_get_numerator :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_get_denominator"
z3_get_denominator :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_get_numeral_small"
z3_get_numeral_small :: Ptr Z3_context -> Ptr Z3_ast -> Ptr CLong -> Ptr CLong -> IO Z3_bool
foreign import ccall unsafe "Z3_get_numeral_int"
z3_get_numeral_int :: Ptr Z3_context -> Ptr Z3_ast -> Ptr CInt -> IO Z3_bool
foreign import ccall unsafe "Z3_get_numeral_uint"
z3_get_numeral_uint :: Ptr Z3_context -> Ptr Z3_ast -> Ptr CUInt -> IO Z3_bool
foreign import ccall unsafe "Z3_get_numeral_uint64"
z3_get_numeral_uint64 :: Ptr Z3_context -> Ptr Z3_ast -> Ptr CULong -> IO Z3_bool
foreign import ccall unsafe "Z3_get_numeral_int64"
z3_get_numeral_int64 :: Ptr Z3_context -> Ptr Z3_ast -> Ptr CLong -> IO Z3_bool
foreign import ccall unsafe "Z3_get_numeral_rational_int64"
z3_get_numeral_rational_int64 :: Ptr Z3_context -> Ptr Z3_ast -> Ptr CLong -> Ptr CLong -> IO Z3_bool
foreign import ccall unsafe "Z3_get_algebraic_number_lower"
z3_get_algebraic_number_lower :: Ptr Z3_context -> Ptr Z3_ast -> CUInt -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_get_algebraic_number_upper"
z3_get_algebraic_number_upper :: Ptr Z3_context -> Ptr Z3_ast -> CUInt -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_pattern_to_ast"
z3_pattern_to_ast :: Ptr Z3_context -> Ptr Z3_pattern -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_get_pattern_num_terms"
z3_get_pattern_num_terms :: Ptr Z3_context -> Ptr Z3_pattern -> IO CUInt
foreign import ccall unsafe "Z3_get_pattern"
z3_get_pattern :: Ptr Z3_context -> Ptr Z3_pattern -> CUInt -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_get_index_value"
z3_get_index_value :: Ptr Z3_context -> Ptr Z3_ast -> IO CUInt
foreign import ccall unsafe "Z3_is_quantifier_forall"
z3_is_quantifier_forall :: Ptr Z3_context -> Ptr Z3_ast -> IO Z3_bool
foreign import ccall unsafe "Z3_is_quantifier_exists"
z3_is_quantifier_exists :: Ptr Z3_context -> Ptr Z3_ast -> IO Z3_bool
foreign import ccall unsafe "Z3_is_lambda"
z3_is_lambda :: Ptr Z3_context -> Ptr Z3_ast -> IO Z3_bool
foreign import ccall unsafe "Z3_get_quantifier_weight"
z3_get_quantifier_weight :: Ptr Z3_context -> Ptr Z3_ast -> IO CUInt
foreign import ccall unsafe "Z3_get_quantifier_num_patterns"
z3_get_quantifier_num_patterns :: Ptr Z3_context -> Ptr Z3_ast -> IO CUInt
foreign import ccall unsafe "Z3_get_quantifier_pattern_ast"
z3_get_quantifier_pattern_ast :: Ptr Z3_context -> Ptr Z3_ast -> CUInt -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_get_quantifier_num_no_patterns"
z3_get_quantifier_num_no_patterns :: Ptr Z3_context -> Ptr Z3_ast -> IO CUInt
foreign import ccall unsafe "Z3_get_quantifier_no_pattern_ast"
z3_get_quantifier_no_pattern_ast :: Ptr Z3_context -> Ptr Z3_ast -> CUInt -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_get_quantifier_num_bound"
z3_get_quantifier_num_bound :: Ptr Z3_context -> Ptr Z3_ast -> IO CUInt
foreign import ccall unsafe "Z3_get_quantifier_bound_name"
z3_get_quantifier_bound_name :: Ptr Z3_context -> Ptr Z3_ast -> CUInt -> IO (Ptr Z3_symbol)
foreign import ccall unsafe "Z3_get_quantifier_bound_sort"
z3_get_quantifier_bound_sort :: Ptr Z3_context -> Ptr Z3_ast -> CUInt -> IO (Ptr Z3_sort)
foreign import ccall unsafe "Z3_get_quantifier_body"
z3_get_quantifier_body :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_simplify"
z3_simplify :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_simplify_ex"
z3_simplify_ex :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_params -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_simplify_get_help"
z3_simplify_get_help :: Ptr Z3_context -> IO Z3_string
foreign import ccall unsafe "Z3_simplify_get_param_descrs"
z3_simplify_get_param_descrs :: Ptr Z3_context -> IO (Ptr Z3_param_descrs)
foreign import ccall unsafe "Z3_update_term"
z3_update_term :: Ptr Z3_context -> IO (Ptr Z3_ast_vector)
foreign import ccall unsafe "Z3_substitute_vars"
z3_substitute_vars :: Ptr Z3_context -> Ptr Z3_ast -> CUInt -> Ptr (Ptr Z3_ast) -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_substitute"
z3_substitute :: Ptr Z3_context -> Ptr Z3_ast -> CUInt -> Ptr (Ptr Z3_ast) -> Ptr (Ptr Z3_ast) -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_translate"
z3_translate :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_context -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_model"
z3_mk_model :: Ptr Z3_context -> IO (Ptr Z3_model)
foreign import ccall unsafe "Z3_model_inc_ref"
z3_model_inc_ref :: Ptr Z3_context
-> Ptr Z3_model
-> IO ()
foreign import ccall unsafe "Z3_model_dec_ref"
z3_model_dec_ref :: Ptr Z3_context
-> Ptr Z3_model
-> IO ()
foreign import ccall unsafe "Z3_model_eval"
z3_model_eval :: Ptr Z3_context
-> Ptr Z3_model
-> Ptr Z3_ast
-> Z3_bool
-> Ptr (Ptr Z3_ast)
-> IO Z3_bool
foreign import ccall unsafe "Z3_model_get_const_interp"
z3_model_get_const_interp :: Ptr Z3_context
-> Ptr Z3_model
-> Ptr Z3_func_decl
-> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_model_has_interp"
z3_model_has_interp :: Ptr Z3_context
-> Ptr Z3_model
-> Ptr Z3_func_decl
-> IO Z3_bool
foreign import ccall unsafe "Z3_model_get_func_interp"
z3_model_get_func_interp :: Ptr Z3_context
-> Ptr Z3_model
-> Ptr Z3_func_decl
-> IO (Ptr Z3_func_interp)
foreign import ccall unsafe "Z3_model_get_num_consts"
z3_model_get_num_consts :: Ptr Z3_context
-> Ptr Z3_model
-> IO CUInt
foreign import ccall unsafe "Z3_model_get_const_decl"
z3_model_get_const_decl :: Ptr Z3_context
-> Ptr Z3_model
-> CUInt
-> IO (Ptr Z3_func_decl)
foreign import ccall unsafe "Z3_model_get_num_funcs"
z3_model_get_num_funcs :: Ptr Z3_context
-> Ptr Z3_model
-> IO CUInt
foreign import ccall unsafe "Z3_model_get_func_decl"
z3_model_get_func_decl :: Ptr Z3_context
-> Ptr Z3_model
-> CUInt
-> IO (Ptr Z3_func_decl)
foreign import ccall unsafe "Z3_model_get_num_sorts"
z3_model_get_num_sorts :: Ptr Z3_context
-> Ptr Z3_model
-> IO CUInt
foreign import ccall unsafe "Z3_model_get_sort"
z3_model_get_sort :: Ptr Z3_context
-> Ptr Z3_model
-> CUInt
-> IO (Ptr Z3_sort)
foreign import ccall unsafe "Z3_model_get_sort_universe"
z3_model_get_sort_universe :: Ptr Z3_context
-> Ptr Z3_model
-> Ptr Z3_sort
-> IO (Ptr Z3_ast_vector)
foreign import ccall unsafe "Z3_model_translate"
z3_model_translate :: Ptr Z3_context
-> Ptr Z3_model
-> Ptr Z3_context
-> IO (Ptr Z3_model)
foreign import ccall unsafe "Z3_is_as_array"
z3_is_as_array :: Ptr Z3_context
-> Ptr Z3_ast
-> IO Z3_bool
foreign import ccall unsafe "Z3_get_as_array_func_decl"
z3_get_as_array_func_decl :: Ptr Z3_context
-> Ptr Z3_ast
-> IO (Ptr Z3_func_decl)
foreign import ccall unsafe "Z3_add_func_interp"
z3_add_func_interp :: Ptr Z3_context
-> Ptr Z3_model
-> Ptr Z3_func_decl
-> Ptr Z3_ast
-> IO (Ptr Z3_func_interp)
foreign import ccall unsafe "Z3_add_const_interp"
z3_add_const_interp :: Ptr Z3_context
-> Ptr Z3_model
-> Ptr Z3_func_decl
-> Ptr Z3_ast
-> IO ()
foreign import ccall unsafe "Z3_func_interp_inc_ref"
z3_func_interp_inc_ref :: Ptr Z3_context
-> Ptr Z3_func_interp
-> IO ()
foreign import ccall unsafe "Z3_func_interp_dec_ref"
z3_func_interp_dec_ref :: Ptr Z3_context
-> Ptr Z3_func_interp
-> IO ()
foreign import ccall unsafe "Z3_func_interp_get_num_entries"
z3_func_interp_get_num_entries :: Ptr Z3_context
-> Ptr Z3_func_interp
-> IO CUInt
foreign import ccall unsafe "Z3_func_interp_get_entry"
z3_func_interp_get_entry :: Ptr Z3_context
-> Ptr Z3_func_interp
-> CUInt
-> IO (Ptr Z3_func_entry)
foreign import ccall unsafe "Z3_func_interp_get_else"
z3_func_interp_get_else :: Ptr Z3_context
-> Ptr Z3_func_interp
-> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_func_interp_set_else"
z3_func_interp_set_else :: Ptr Z3_context
-> Ptr Z3_func_interp
-> Ptr Z3_ast
-> IO ()
foreign import ccall unsafe "Z3_func_interp_get_arity"
z3_func_interp_get_arity :: Ptr Z3_context
-> Ptr Z3_func_interp
-> IO CUInt
foreign import ccall unsafe "Z3_func_interp_add_entry"
z3_func_interp_add_entry :: Ptr Z3_context
-> Ptr Z3_func_interp
-> Ptr Z3_ast_vector
-> Ptr Z3_ast
-> IO ()
foreign import ccall unsafe "Z3_func_entry_inc_ref"
z3_func_entry_inc_ref :: Ptr Z3_context
-> Ptr Z3_func_entry
-> IO ()
foreign import ccall unsafe "Z3_func_entry_dec_ref"
z3_func_entry_dec_ref :: Ptr Z3_context
-> Ptr Z3_func_entry
-> IO ()
foreign import ccall unsafe "Z3_func_entry_get_value"
z3_func_entry_get_value :: Ptr Z3_context
-> Ptr Z3_func_entry
-> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_func_entry_get_num_args"
z3_func_entry_get_num_args :: Ptr Z3_context
-> Ptr Z3_func_entry
-> IO CUInt
foreign import ccall unsafe "Z3_func_entry_get_arg"
z3_func_entry_get_arg :: Ptr Z3_context
-> Ptr Z3_func_entry
-> CUInt
-> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_open_log"
z3_open_log :: Z3_string -> IO Z3_bool
foreign import ccall unsafe "Z3_append_log"
z3_append_log :: Z3_string -> IO Z3_bool
foreign import ccall unsafe "Z3_close_log"
z3_close_log :: IO ()
foreign import ccall unsafe "Z3_toggle_warning_messages"
z3_toggle_warning_messages :: Z3_bool -> IO ()
foreign import ccall unsafe "Z3_set_ast_print_mode"
z3_set_ast_print_mode :: Ptr Z3_context -> Z3_ast_print_mode -> IO ()
foreign import ccall unsafe "Z3_ast_to_string"
z3_ast_to_string :: Ptr Z3_context -> Ptr Z3_ast -> IO Z3_string
foreign import ccall unsafe "Z3_pattern_to_string"
z3_pattern_to_string :: Ptr Z3_context -> Ptr Z3_pattern -> IO Z3_string
foreign import ccall unsafe "Z3_sort_to_string"
z3_sort_to_string :: Ptr Z3_context -> Ptr Z3_sort -> IO Z3_string
foreign import ccall unsafe "Z3_func_decl_to_string"
z3_func_decl_to_string :: Ptr Z3_context -> Ptr Z3_func_decl -> IO Z3_string
foreign import ccall unsafe "Z3_model_to_string"
z3_model_to_string :: Ptr Z3_context -> Ptr Z3_model -> IO Z3_string
foreign import ccall unsafe "Z3_benchmark_to_smtlib_string"
z3_benchmark_to_smtlib_string :: Ptr Z3_context
-> Z3_string
-> Z3_string
-> Z3_string
-> Z3_string
-> CUInt
-> Ptr (Ptr Z3_ast)
-> Ptr Z3_ast
-> IO Z3_string
foreign import ccall unsafe "Z3_parse_smtlib2_string"
z3_parse_smtlib2_string :: Ptr Z3_context
-> Z3_string
-> CUInt
-> Ptr (Ptr Z3_symbol)
-> Ptr (Ptr Z3_sort)
-> CUInt
-> Ptr (Ptr Z3_symbol)
-> Ptr (Ptr Z3_func_decl)
-> IO (Ptr Z3_ast_vector)
foreign import ccall unsafe "Z3_parse_smtlib2_file"
z3_parse_smtlib2_file :: Ptr Z3_context
-> Z3_string
-> CUInt
-> Ptr (Ptr Z3_symbol)
-> Ptr (Ptr Z3_sort)
-> CUInt
-> Ptr (Ptr Z3_symbol)
-> Ptr (Ptr Z3_func_decl)
-> IO (Ptr Z3_ast_vector)
foreign import ccall unsafe "Z3_eval_smtlib2_string"
z3_eval_smtlib2_string :: Ptr Z3_context
-> Z3_string
-> IO Z3_string
foreign import ccall unsafe "Z3_get_error_code"
z3_get_error_code :: Ptr Z3_context -> IO Z3_error_code
foreign import ccall unsafe "Z3_set_error_handler"
z3_set_error_handler :: Ptr Z3_context -> FunPtr Z3_error_handler -> IO ()
foreign import ccall unsafe "Z3_set_error"
z3_set_error :: Ptr Z3_context -> Z3_error_code -> IO ()
foreign import ccall unsafe "Z3_get_error_msg"
z3_get_error_msg :: Ptr Z3_context -> Z3_error_code -> IO Z3_string
foreign import ccall unsafe "Z3_get_version"
z3_get_version :: Ptr CUInt -> Ptr CUInt -> Ptr CUInt -> Ptr CUInt -> IO ()
foreign import ccall unsafe "Z3_get_full_version"
z3_get_full_version :: IO Z3_string
foreign import ccall unsafe "Z3_enable_trace"
z3_enable_trace :: Z3_string -> IO ()
foreign import ccall unsafe "Z3_disable_trace"
z3_disable_trace :: Z3_string -> IO ()
foreign import ccall unsafe "Z3_reset_memory"
z3_reset_memory :: IO ()
foreign import ccall unsafe "Z3_finalize_memory"
z3_finalize_memory :: IO ()
foreign import ccall unsafe "Z3_mk_goal"
z3_mk_goal :: Ptr Z3_context -> Z3_bool -> Z3_bool -> Z3_bool -> IO (Ptr Z3_goal)
foreign import ccall unsafe "Z3_goal_inc_ref"
z3_goal_inc_ref :: Ptr Z3_context -> Ptr Z3_goal -> IO ()
foreign import ccall unsafe "Z3_goal_dec_ref"
z3_goal_dec_ref :: Ptr Z3_context -> Ptr Z3_goal -> IO ()
foreign import ccall unsafe "Z3_goal_precision"
z3_goal_precision :: Ptr Z3_context -> Ptr Z3_goal -> IO (Ptr Z3_goal_prec)
foreign import ccall unsafe "Z3_goal_assert"
z3_goal_assert :: Ptr Z3_context -> Ptr Z3_goal -> Ptr Z3_ast -> IO ()
foreign import ccall unsafe "Z3_goal_inconsistent"
z3_goal_inconsistent :: Ptr Z3_context -> Ptr Z3_goal -> IO Z3_bool
foreign import ccall unsafe "Z3_goal_depth"
z3_goal_depth :: Ptr Z3_context -> Ptr Z3_goal -> IO CUInt
foreign import ccall unsafe "Z3_goal_reset"
z3_goal_reset :: Ptr Z3_context -> Ptr Z3_goal -> IO ()
foreign import ccall unsafe "Z3_goal_size"
z3_goal_size :: Ptr Z3_context -> Ptr Z3_goal -> IO CUInt
foreign import ccall unsafe "Z3_goal_formula"
z3_goal_formula :: Ptr Z3_context -> Ptr Z3_goal -> CUInt -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_goal_num_exprs"
z3_goal_num_exprs :: Ptr Z3_context -> Ptr Z3_goal -> IO CUInt
foreign import ccall unsafe "Z3_goal_is_decided_sat"
z3_goal_is_decided_sat :: Ptr Z3_context -> Ptr Z3_goal -> IO Z3_bool
foreign import ccall unsafe "Z3_goal_is_decided_unsat"
z3_goal_is_decided_unsat :: Ptr Z3_context -> Ptr Z3_goal -> IO Z3_bool
foreign import ccall unsafe "Z3_goal_translate"
z3_goal_translate :: Ptr Z3_context -> Ptr Z3_goal -> Ptr Z3_context -> IO (Ptr Z3_goal)
foreign import ccall unsafe "Z3_goal_convert_model"
z3_goal_convert_model :: Ptr Z3_context -> Ptr Z3_goal -> Ptr Z3_model-> IO (Ptr Z3_model)
foreign import ccall unsafe "Z3_goal_to_string"
z3_goal_to_string :: Ptr Z3_context -> Ptr Z3_goal -> IO Z3_string
foreign import ccall unsafe "Z3_goal_to_dimacs_string"
z3_goal_to_dimacs_string :: Ptr Z3_context -> Ptr Z3_goal -> IO Z3_string
foreign import ccall unsafe "Z3_mk_tactic"
z3_mk_tactic :: Ptr Z3_context -> Ptr CChar -> IO (Ptr Z3_tactic)
foreign import ccall unsafe "Z3_tactic_inc_ref"
z3_tactic_inc_ref :: Ptr Z3_context -> Ptr Z3_tactic -> IO ()
foreign import ccall unsafe "Z3_tactic_dec_ref"
z3_tactic_dec_ref :: Ptr Z3_context -> Ptr Z3_tactic -> IO ()
foreign import ccall unsafe "Z3_mk_probe"
z3_mk_probe :: Ptr Z3_context -> Z3_string -> IO (Ptr Z3_probe)
foreign import ccall unsafe "Z3_probe_inc_ref"
z3_probe_inc_ref :: Ptr Z3_context -> Ptr Z3_probe -> IO ()
foreign import ccall unsafe "Z3_probe_dec_ref"
z3_probe_dec_ref :: Ptr Z3_context -> Ptr Z3_probe -> IO ()
foreign import ccall unsafe "Z3_tactic_and_then"
z3_tactic_and_then :: Ptr Z3_context -> Ptr Z3_tactic -> Ptr Z3_tactic -> IO (Ptr Z3_tactic)
foreign import ccall unsafe "Z3_tactic_or_else"
z3_tactic_or_else :: Ptr Z3_context -> Ptr Z3_tactic -> Ptr Z3_tactic -> IO (Ptr Z3_tactic)
foreign import ccall unsafe "Z3_tactic_par_or"
z3_tactic_par_or :: Ptr Z3_context -> CUInt -> Ptr (Ptr Z3_tactic) -> IO (Ptr Z3_tactic)
foreign import ccall unsafe "Z3_tactic_par_and_then"
z3_tactic_par_and_then :: Ptr Z3_context -> Ptr Z3_tactic -> Ptr Z3_tactic -> IO (Ptr Z3_tactic)
foreign import ccall unsafe "Z3_tactic_try_for"
z3_tactic_try_for :: Ptr Z3_context -> Ptr Z3_tactic -> CUInt -> IO (Ptr Z3_tactic)
foreign import ccall unsafe "Z3_tactic_when"
z3_tactic_when :: Ptr Z3_context -> Ptr Z3_probe -> Ptr Z3_tactic -> IO (Ptr Z3_tactic)
foreign import ccall unsafe "Z3_tactic_cond"
z3_tactic_cond :: Ptr Z3_context -> Ptr Z3_probe -> Ptr Z3_tactic -> Ptr Z3_tactic -> IO (Ptr Z3_tactic)
foreign import ccall unsafe "Z3_tactic_repeat"
z3_tactic_repeat :: Ptr Z3_context -> Ptr Z3_tactic -> CUInt -> IO (Ptr Z3_tactic)
foreign import ccall unsafe "Z3_tactic_skip"
z3_tactic_skip :: Ptr Z3_context -> IO (Ptr Z3_tactic)
foreign import ccall unsafe "Z3_tactic_fail"
z3_tactic_fail :: Ptr Z3_context -> IO (Ptr Z3_tactic)
foreign import ccall unsafe "Z3_tactic_fail_if"
z3_tactic_fail_if :: Ptr Z3_context -> Ptr Z3_probe -> IO (Ptr Z3_tactic)
foreign import ccall unsafe "Z3_tactic_fail_if_not_decided"
z3_tactic_fail_if_not_decided :: Ptr Z3_context -> IO (Ptr Z3_tactic)
foreign import ccall unsafe "Z3_tactic_using_params"
z3_tactic_using_params :: Ptr Z3_context -> Ptr Z3_tactic -> Ptr Z3_params -> IO (Ptr Z3_tactic)
foreign import ccall unsafe "Z3_probe_const"
z3_probe_const :: Ptr Z3_context -> CDouble -> IO (Ptr Z3_probe)
foreign import ccall unsafe "Z3_probe_lt"
z3_probe_lt :: Ptr Z3_context -> Ptr Z3_probe -> Ptr Z3_probe -> IO (Ptr Z3_probe)
foreign import ccall unsafe "Z3_probe_gt"
z3_probe_gt :: Ptr Z3_context -> Ptr Z3_probe -> Ptr Z3_probe -> IO (Ptr Z3_probe)
foreign import ccall unsafe "Z3_probe_le"
z3_probe_le :: Ptr Z3_context -> Ptr Z3_probe -> Ptr Z3_probe -> IO (Ptr Z3_probe)
foreign import ccall unsafe "Z3_probe_ge"
z3_probe_ge :: Ptr Z3_context -> Ptr Z3_probe -> Ptr Z3_probe -> IO (Ptr Z3_probe)
foreign import ccall unsafe "Z3_probe_eq"
z3_probe_eq :: Ptr Z3_context -> Ptr Z3_probe -> Ptr Z3_probe -> IO (Ptr Z3_probe)
foreign import ccall unsafe "Z3_probe_and"
z3_probe_and :: Ptr Z3_context -> Ptr Z3_probe -> Ptr Z3_probe -> IO (Ptr Z3_probe)
foreign import ccall unsafe "Z3_probe_or"
z3_probe_or :: Ptr Z3_context -> Ptr Z3_probe -> Ptr Z3_probe -> IO (Ptr Z3_probe)
foreign import ccall unsafe "Z3_probe_not"
z3_probe_not :: Ptr Z3_context -> Ptr Z3_probe -> IO (Ptr Z3_probe)
foreign import ccall unsafe "Z3_get_num_tactics"
z3_get_num_tactics :: Ptr Z3_context -> IO CUInt
foreign import ccall unsafe "Z3_get_tactic_name"
z3_get_tactic_name :: Ptr Z3_context -> Ptr CUInt -> IO Z3_string
foreign import ccall unsafe "Z3_get_num_probes"
z3_get_num_probes :: Ptr Z3_context -> IO CUInt
foreign import ccall unsafe "Z3_get_probe_name"
z3_get_probe_name :: Ptr Z3_context -> Ptr CUInt -> IO Z3_string
foreign import ccall unsafe "Z3_tactic_get_help"
z3_tactic_get_help :: Ptr Z3_context -> Ptr Z3_tactic -> IO Z3_string
foreign import ccall unsafe "Z3_tactic_get_param_descrs"
z3_tactic_get_param_descrs :: Ptr Z3_context -> Ptr Z3_tactic -> IO (Ptr Z3_param_descrs)
foreign import ccall unsafe "Z3_tactic_get_descr"
z3_tactic_get_descr :: Ptr Z3_context -> Z3_string -> IO Z3_string
foreign import ccall unsafe "Z3_probe_get_descr"
z3_probe_get_descr :: Ptr Z3_context -> Z3_string -> IO Z3_string
foreign import ccall unsafe "Z3_probe_apply"
z3_probe_apply :: Ptr Z3_context -> Ptr Z3_probe -> Ptr Z3_goal -> IO CDouble
foreign import ccall unsafe "Z3_tactic_apply"
z3_tactic_apply :: Ptr Z3_context -> Ptr Z3_tactic -> Ptr Z3_goal -> IO (Ptr Z3_apply_result)
foreign import ccall unsafe "Z3_tactic_apply_ex"
z3_tactic_apply_ex :: Ptr Z3_context -> Ptr Z3_tactic -> Ptr Z3_goal -> Ptr Z3_params -> IO (Ptr Z3_apply_result)
foreign import ccall unsafe "Z3_apply_result_inc_ref"
z3_apply_result_inc_ref :: Ptr Z3_context -> Ptr Z3_apply_result -> IO ()
foreign import ccall unsafe "Z3_apply_result_dec_ref"
z3_apply_result_dec_ref :: Ptr Z3_context -> Ptr Z3_apply_result -> IO ()
foreign import ccall unsafe "Z3_apply_result_to_string"
z3_apply_result_to_string :: Ptr Z3_context -> Ptr Z3_apply_result -> IO Z3_string
foreign import ccall unsafe "Z3_apply_result_get_num_subgoals"
z3_apply_result_get_num_subgoals :: Ptr Z3_context -> Ptr Z3_apply_result -> IO CUInt
foreign import ccall unsafe "Z3_apply_result_get_subgoal"
z3_apply_result_get_subgoal :: Ptr Z3_context -> Ptr Z3_apply_result -> CUInt -> IO (Ptr Z3_goal)
foreign import ccall unsafe "Z3_mk_solver"
z3_mk_solver :: Ptr Z3_context -> IO (Ptr Z3_solver)
foreign import ccall unsafe "Z3_mk_simple_solver"
z3_mk_simple_solver :: Ptr Z3_context -> IO (Ptr Z3_solver)
foreign import ccall unsafe "Z3_mk_solver_for_logic"
z3_mk_solver_for_logic :: Ptr Z3_context -> Ptr Z3_symbol -> IO (Ptr Z3_solver)
foreign import ccall unsafe "Z3_mk_solver_from_tactic"
z3_mk_solver_from_tactic :: Ptr Z3_context -> Ptr Z3_tactic -> IO (Ptr Z3_solver)
foreign import ccall unsafe "Z3_solver_translate"
z3_solver_translate :: Ptr Z3_context -> Ptr Z3_solver -> Ptr Z3_context -> IO (Ptr Z3_solver)
foreign import ccall unsafe "Z3_solver_import_model_converter"
z3_solver_import_model_converter :: Ptr Z3_context -> Ptr Z3_solver -> Ptr Z3_solver -> IO ()
foreign import ccall unsafe "Z3_solver_get_help"
z3_solver_get_help :: Ptr Z3_context -> Ptr Z3_solver -> IO Z3_string
foreign import ccall unsafe "Z3_solver_get_param_descrs"
z3_solver_get_param_descrs :: Ptr Z3_context -> Ptr Z3_solver -> IO (Ptr Z3_param_descrs)
foreign import ccall unsafe "Z3_solver_set_params"
z3_solver_set_params :: Ptr Z3_context -> Ptr Z3_solver -> Ptr Z3_params ->
IO ()
foreign import ccall unsafe "Z3_solver_inc_ref"
z3_solver_inc_ref :: Ptr Z3_context -> Ptr Z3_solver -> IO ()
foreign import ccall unsafe "Z3_solver_dec_ref"
z3_solver_dec_ref :: Ptr Z3_context -> Ptr Z3_solver -> IO ()
foreign import ccall unsafe "Z3_solver_interrupt"
z3_solver_interrupt :: Ptr Z3_context -> Ptr Z3_solver -> IO ()
foreign import ccall unsafe "Z3_solver_push"
z3_solver_push :: Ptr Z3_context -> Ptr Z3_solver -> IO ()
foreign import ccall unsafe "Z3_solver_pop"
z3_solver_pop :: Ptr Z3_context -> Ptr Z3_solver -> CUInt -> IO ()
foreign import ccall unsafe "Z3_solver_reset"
z3_solver_reset :: Ptr Z3_context -> Ptr Z3_solver -> IO ()
foreign import ccall unsafe "Z3_solver_get_num_scopes"
z3_solver_get_num_scopes :: Ptr Z3_context -> Ptr Z3_solver -> IO CUInt
foreign import ccall unsafe "Z3_solver_assert"
z3_solver_assert :: Ptr Z3_context -> Ptr Z3_solver -> Ptr Z3_ast -> IO ()
foreign import ccall unsafe "Z3_solver_assert_and_track"
z3_solver_assert_and_track :: Ptr Z3_context -> Ptr Z3_solver ->
Ptr Z3_ast -> Ptr Z3_ast -> IO ()
foreign import ccall unsafe "Z3_solver_from_file"
z3_solver_from_file :: Ptr Z3_context -> Ptr Z3_solver -> Z3_string -> IO ()
foreign import ccall unsafe "Z3_solver_from_string"
z3_solver_from_string :: Ptr Z3_context -> Ptr Z3_solver -> Z3_string -> IO ()
foreign import ccall unsafe "Z3_solver_get_assertions"
z3_solver_get_assertions :: Ptr Z3_context -> Ptr Z3_solver -> IO (Ptr Z3_ast_vector)
foreign import ccall unsafe "Z3_solver_get_units"
z3_solver_get_units :: Ptr Z3_context -> Ptr Z3_solver -> IO (Ptr Z3_ast_vector)
foreign import ccall unsafe "Z3_solver_get_trail"
z3_solver_get_trail :: Ptr Z3_context -> Ptr Z3_solver -> IO (Ptr Z3_ast_vector)
foreign import ccall unsafe "Z3_solver_get_non_units"
z3_solver_get_non_units :: Ptr Z3_context -> Ptr Z3_solver -> IO (Ptr Z3_ast_vector)
foreign import ccall unsafe "Z3_solver_get_levels"
z3_solver_get_levels :: Ptr Z3_context -> Ptr Z3_solver -> Ptr Z3_ast_vector -> CUInt -> Ptr CUInt -> IO ()
foreign import ccall unsafe "Z3_solver_check"
z3_solver_check :: Ptr Z3_context -> Ptr Z3_solver -> IO Z3_lbool
foreign import ccall unsafe "Z3_solver_check_assumptions"
z3_solver_check_assumptions :: Ptr Z3_context -> Ptr Z3_solver -> CUInt -> Ptr (Ptr Z3_ast) -> IO Z3_lbool
foreign import ccall unsafe "Z3_get_implied_equalities"
z3_get_implied_equalities :: Ptr Z3_context -> Ptr Z3_solver -> CUInt -> Ptr Z3_ast_vector -> Ptr (CUInt) -> IO Z3_lbool
foreign import ccall unsafe "Z3_solver_get_consequences"
z3_solver_get_consequences :: Ptr Z3_context -> Ptr Z3_solver -> Ptr Z3_ast_vector -> Ptr Z3_ast_vector -> Ptr Z3_ast_vector -> IO Z3_lbool
foreign import ccall unsafe "Z3_solver_cube"
z3_solver_cube :: Ptr Z3_context -> Ptr Z3_solver -> Ptr Z3_ast_vector -> CUInt -> IO (Ptr Z3_ast_vector)
foreign import ccall unsafe "Z3_solver_get_model"
z3_solver_get_model :: Ptr Z3_context -> Ptr Z3_solver -> IO (Ptr Z3_model)
foreign import ccall unsafe "Z3_solver_get_proof"
z3_solver_get_proof :: Ptr Z3_context -> Ptr Z3_solver -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_solver_get_unsat_core"
z3_solver_get_unsat_core :: Ptr Z3_context -> Ptr Z3_solver -> IO (Ptr Z3_ast_vector)
foreign import ccall unsafe "Z3_solver_get_reason_unknown"
z3_solver_get_reason_unknown :: Ptr Z3_context -> Ptr Z3_solver ->
IO Z3_string
foreign import ccall unsafe "Z3_solver_get_statistics"
z3_solver_get_statistics :: Ptr Z3_context -> Ptr Z3_solver -> IO (Ptr Z3_stats)
foreign import ccall unsafe "Z3_solver_to_string"
z3_solver_to_string :: Ptr Z3_context -> Ptr Z3_solver -> IO Z3_string
foreign import ccall unsafe "Z3_solver_to_dimacs_string"
z3_solver_to_dimacs_string :: Ptr Z3_context -> Ptr Z3_solver -> IO Z3_string
foreign import ccall unsafe "Z3_stats_to_string"
z3_stats_to_string :: Ptr Z3_context -> Ptr Z3_stats -> IO Z3_string
foreign import ccall unsafe "Z3_stats_inc_ref"
z3_stats_inc_ref :: Ptr Z3_context -> Ptr Z3_stats -> IO ()
foreign import ccall unsafe "Z3_stats_dec_ref"
z3_stats_dec_ref :: Ptr Z3_context -> Ptr Z3_stats -> IO ()
foreign import ccall unsafe "Z3_stats_size"
z3_stats_size :: Ptr Z3_context -> Ptr Z3_stats -> IO CUInt
foreign import ccall unsafe "Z3_stats_get_key"
z3_stats_get_key :: Ptr Z3_context -> Ptr Z3_stats -> CUInt -> IO Z3_string
foreign import ccall unsafe "Z3_stats_is_uint"
z3_stats_is_uint :: Ptr Z3_context -> Ptr Z3_stats -> CUInt -> IO Z3_bool
foreign import ccall unsafe "Z3_stats_is_double"
z3_stats_is_double :: Ptr Z3_context -> Ptr Z3_stats -> CUInt -> IO Z3_bool
foreign import ccall unsafe "Z3_stats_get_uint_value"
z3_stats_get_uint_value :: Ptr Z3_context -> Ptr Z3_stats -> CUInt -> IO CUInt
foreign import ccall unsafe "Z3_stats_get_double_value"
z3_stats_get_double_value :: Ptr Z3_context -> Ptr Z3_stats -> CUInt -> IO CDouble
foreign import ccall unsafe "Z3_get_estimated_alloc_size"
z3_get_estimated_alloc_size:: IO CULong
foreign import ccall unsafe "Z3_mk_ast_vector"
z3_mk_ast_vector :: Ptr Z3_context -> IO (Ptr Z3_ast_vector)
foreign import ccall unsafe "Z3_ast_vector_inc_ref"
z3_ast_vector_inc_ref :: Ptr Z3_context -> Ptr Z3_ast_vector -> IO ()
foreign import ccall unsafe "Z3_ast_vector_dec_ref"
z3_ast_vector_dec_ref :: Ptr Z3_context -> Ptr Z3_ast_vector -> IO ()
foreign import ccall unsafe "Z3_ast_vector_size"
z3_ast_vector_size :: Ptr Z3_context -> Ptr Z3_ast_vector -> IO CUInt
foreign import ccall unsafe "Z3_ast_vector_get"
z3_ast_vector_get :: Ptr Z3_context -> Ptr Z3_ast_vector -> CUInt -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_ast_vector_set"
z3_ast_vector_set :: Ptr Z3_context -> Ptr Z3_ast_vector -> CUInt -> Ptr Z3_ast -> IO ()
foreign import ccall unsafe "Z3_ast_vector_resize"
z3_ast_vector_resize :: Ptr Z3_context -> Ptr Z3_ast_vector -> CUInt -> IO ()
foreign import ccall unsafe "Z3_ast_vector_push"
z3_ast_vector_push :: Ptr Z3_context -> Ptr Z3_ast_vector -> Ptr Z3_ast -> IO ()
foreign import ccall unsafe "Z3_ast_vector_translate"
z3_ast_vector_translate :: Ptr Z3_context -> Ptr Z3_ast_vector -> Ptr Z3_context -> IO (Ptr Z3_ast_vector)
foreign import ccall unsafe "Z3_ast_vector_to_string"
z3_ast_vector_to_string :: Ptr Z3_context -> Ptr Z3_ast_vector -> IO Z3_string
foreign import ccall unsafe "Z3_mk_ast_map"
z3_mk_ast_map :: Ptr Z3_context -> IO (Ptr Z3_ast_map)
foreign import ccall unsafe "Z3_ast_map_inc_ref"
z3_ast_map_inc_ref :: Ptr Z3_context -> Ptr Z3_ast_map -> IO ()
foreign import ccall unsafe "Z3_ast_map_dec_ref"
z3_ast_map_dec_ref :: Ptr Z3_context -> Ptr Z3_ast_map -> IO ()
foreign import ccall unsafe "Z3_ast_map_contains"
z3_ast_map_contains :: Ptr Z3_context -> Ptr Z3_ast_map -> Ptr Z3_ast -> IO Z3_bool
foreign import ccall unsafe "Z3_ast_map_find"
z3_ast_map_find :: Ptr Z3_context -> Ptr Z3_ast_map -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_ast_map_insert"
z3_ast_map_insert :: Ptr Z3_context -> Ptr Z3_ast_map -> Ptr Z3_ast -> Ptr Z3_ast -> IO ()
foreign import ccall unsafe "Z3_ast_map_erase"
z3_ast_map_erase :: Ptr Z3_context -> Ptr Z3_ast_map -> Ptr Z3_ast -> IO ()
foreign import ccall unsafe "Z3_ast_map_reset"
z3_ast_map_reset :: Ptr Z3_context -> Ptr Z3_ast_map -> IO ()
foreign import ccall unsafe "Z3_ast_map_size"
z3_ast_map_size :: Ptr Z3_context -> Ptr Z3_ast_map -> IO CUInt
foreign import ccall unsafe "Z3_ast_map_keys"
z3_ast_map_keys :: Ptr Z3_context -> Ptr Z3_ast_map -> IO (Ptr Z3_ast_vector)
foreign import ccall unsafe "Z3_ast_map_to_string"
z3_ast_map_to_string :: Ptr Z3_context -> Ptr Z3_ast_map -> IO Z3_string
foreign import ccall unsafe "Z3_mk_fixedpoint"
z3_mk_fixedpoint :: Ptr Z3_context -> IO (Ptr Z3_fixedpoint)
foreign import ccall unsafe "Z3_fixedpoint_inc_ref"
z3_fixedpoint_inc_ref :: Ptr Z3_context -> Ptr Z3_fixedpoint -> IO ()
foreign import ccall unsafe "Z3_fixedpoint_dec_ref"
z3_fixedpoint_dec_ref :: Ptr Z3_context -> Ptr Z3_fixedpoint -> IO ()
foreign import ccall unsafe "Z3_fixedpoint_add_rule"
z3_fixedpoint_add_rule :: Ptr Z3_context -> Ptr Z3_fixedpoint -> Ptr Z3_ast -> Ptr Z3_symbol -> IO ()
foreign import ccall unsafe "Z3_fixedpoint_add_fact"
z3_fixedpoint_add_fact :: Ptr Z3_context -> Ptr Z3_fixedpoint -> Ptr Z3_func_decl -> CUInt -> Ptr CUInt -> IO ()
foreign import ccall unsafe "Z3_fixedpoint_assert"
z3_fixedpoint_assert :: Ptr Z3_context -> Ptr Z3_fixedpoint -> Ptr Z3_ast -> IO ()
foreign import ccall unsafe "Z3_fixedpoint_query"
z3_fixedpoint_query :: Ptr Z3_context -> Ptr Z3_fixedpoint -> Ptr Z3_ast -> IO Z3_bool
foreign import ccall unsafe "Z3_fixedpoint_query_relations"
z3_fixedpoint_query_relations :: Ptr Z3_context
-> Ptr Z3_fixedpoint
-> CUInt
-> Ptr (Ptr Z3_func_decl)
-> IO Z3_lbool
foreign import ccall unsafe "Z3_fixedpoint_get_answer"
z3_fixedpoint_get_answer :: Ptr Z3_context -> Ptr Z3_fixedpoint -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_fixedpoint_get_reason_unknown"
z3_fixedpoint_get_reason_unknown :: Ptr Z3_context -> Ptr Z3_fixedpoint -> IO Z3_string
foreign import ccall unsafe "Z3_fixedpoint_update_rule"
z3_fixedpoint_update_rule :: Ptr Z3_context -> Ptr Z3_fixedpoint -> Ptr Z3_ast -> Ptr Z3_symbol -> IO ()
foreign import ccall unsafe "Z3_fixedpoint_get_num_levels"
z3_fixedpoint_get_num_levels :: Ptr Z3_context -> Ptr Z3_fixedpoint -> Ptr Z3_func_decl -> IO CUInt
foreign import ccall unsafe "Z3_fixedpoint_get_cover_delta"
z3_fixedpoint_get_cover_delta :: Ptr Z3_context -> Ptr Z3_fixedpoint -> CInt -> Ptr Z3_func_decl -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_fixedpoint_add_cover"
z3_fixedpoint_add_cover :: Ptr Z3_context -> Ptr Z3_fixedpoint -> CInt -> Ptr Z3_func_decl -> Ptr Z3_ast -> IO ()
foreign import ccall unsafe "Z3_fixedpoint_get_statistics"
z3_fixedpoint_get_statistics :: Ptr Z3_context -> Ptr Z3_fixedpoint -> IO (Ptr Z3_stats)
foreign import ccall unsafe "Z3_fixedpoint_register_relation"
z3_fixedpoint_register_relation :: Ptr Z3_context -> Ptr Z3_fixedpoint -> Ptr Z3_func_decl -> IO ()
foreign import ccall unsafe "Z3_fixedpoint_set_predicate_representation"
z3_fixedpoint_set_predicate_representation :: Ptr Z3_context -> Ptr Z3_fixedpoint -> Ptr Z3_func_decl -> CUInt -> Ptr (Ptr Z3_symbol) -> IO ()
foreign import ccall unsafe "Z3_fixedpoint_get_rules"
z3_fixedpoint_get_rules :: Ptr Z3_context -> Ptr Z3_fixedpoint -> IO (Ptr Z3_ast_vector)
foreign import ccall unsafe "Z3_fixedpoint_get_assertions"
z3_fixedpoint_get_assertions :: Ptr Z3_context -> Ptr Z3_fixedpoint -> IO (Ptr Z3_ast_vector)
foreign import ccall unsafe "Z3_fixedpoint_set_params"
z3_fixedpoint_set_params :: Ptr Z3_context -> Ptr Z3_fixedpoint -> Ptr Z3_params -> IO ()
foreign import ccall unsafe "Z3_fixedpoint_get_help"
z3_fixedpoint_get_help :: Ptr Z3_context -> Ptr Z3_fixedpoint -> IO Z3_string
foreign import ccall unsafe "Z3_fixedpoint_get_param_descrs"
z3_fixedpoint_get_param_descrs :: Ptr Z3_context -> Ptr Z3_fixedpoint -> IO (Ptr Z3_param_descrs)
foreign import ccall unsafe "Z3_fixedpoint_to_string"
z3_fixedpoint_to_string :: Ptr Z3_context -> Ptr Z3_fixedpoint -> CUInt -> Ptr Z3_ast_vector -> IO Z3_string
foreign import ccall unsafe "Z3_fixedpoint_from_string"
z3_fixedpoint_from_string :: Ptr Z3_context -> Ptr Z3_fixedpoint -> Z3_string -> IO (Ptr Z3_ast_vector)
foreign import ccall unsafe "Z3_fixedpoint_from_file"
z3_fixedpoint_from_file :: Ptr Z3_context -> Ptr Z3_fixedpoint -> Z3_string -> IO (Ptr Z3_ast_vector)
foreign import ccall unsafe "Z3_fixedpoint_add_constraint"
z3_fixedpoint_add_constraint :: Ptr Z3_context -> Ptr Z3_fixedpoint -> Ptr Z3_ast -> CUInt -> IO ()
foreign import ccall unsafe "Z3_mk_fpa_rounding_mode_sort"
z3_mk_fpa_rounding_mode_sort :: Ptr Z3_context -> IO (Ptr Z3_sort)
foreign import ccall unsafe "Z3_mk_fpa_round_nearest_ties_to_even"
z3_mk_fpa_round_nearest_ties_to_even :: Ptr Z3_context -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_rne"
z3_mk_fpa_rne :: Ptr Z3_context -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_round_nearest_ties_to_away"
z3_mk_fpa_round_nearest_ties_to_away :: Ptr Z3_context -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_rna"
z3_mk_fpa_rna :: Ptr Z3_context -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_round_toward_positive"
z3_mk_fpa_round_toward_positive :: Ptr Z3_context -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_rtp"
z3_mk_fpa_rtp :: Ptr Z3_context -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_round_toward_negative"
z3_mk_fpa_round_toward_negative :: Ptr Z3_context -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_rtn"
z3_mk_fpa_rtn :: Ptr Z3_context -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_round_toward_zero"
z3_mk_fpa_round_toward_zero :: Ptr Z3_context -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_rtz"
z3_mk_fpa_rtz :: Ptr Z3_context -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_sort"
z3_mk_fpa_sort :: Ptr Z3_context -> CUInt -> CUInt -> IO (Ptr Z3_sort)
foreign import ccall unsafe "Z3_mk_fpa_sort_half"
z3_mk_fpa_sort_half :: Ptr Z3_context -> IO (Ptr Z3_sort)
foreign import ccall unsafe "Z3_mk_fpa_sort_16"
z3_mk_fpa_sort_16 :: Ptr Z3_context -> IO (Ptr Z3_sort)
foreign import ccall unsafe "Z3_mk_fpa_sort_single"
z3_mk_fpa_sort_single :: Ptr Z3_context -> IO (Ptr Z3_sort)
foreign import ccall unsafe "Z3_mk_fpa_sort_32"
z3_mk_fpa_sort_32 :: Ptr Z3_context -> IO (Ptr Z3_sort)
foreign import ccall unsafe "Z3_mk_fpa_sort_double"
z3_mk_fpa_sort_double :: Ptr Z3_context -> IO (Ptr Z3_sort)
foreign import ccall unsafe "Z3_mk_fpa_sort_64"
z3_mk_fpa_sort_64 :: Ptr Z3_context -> IO (Ptr Z3_sort)
foreign import ccall unsafe "Z3_mk_fpa_sort_quadruple"
z3_mk_fpa_sort_quadruple :: Ptr Z3_context -> IO (Ptr Z3_sort)
foreign import ccall unsafe "Z3_mk_fpa_sort_128"
z3_mk_fpa_sort_128 :: Ptr Z3_context -> IO (Ptr Z3_sort)
foreign import ccall unsafe "Z3_mk_fpa_nan"
z3_mk_fpa_nan :: Ptr Z3_context -> Ptr Z3_sort -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_inf"
z3_mk_fpa_inf :: Ptr Z3_context -> Ptr Z3_sort -> Z3_bool -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_zero"
z3_mk_fpa_zero :: Ptr Z3_context -> Ptr Z3_sort -> Z3_bool -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_fp"
z3_mk_fpa_fp :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_numeral_float"
z3_mk_fpa_numeral_float :: Ptr Z3_context -> CFloat -> Ptr Z3_sort -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_numeral_double"
z3_mk_fpa_numeral_double :: Ptr Z3_context -> CDouble -> Ptr Z3_sort -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_numeral_int"
z3_mk_fpa_numeral_int :: Ptr Z3_context -> CInt -> Ptr Z3_sort -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_numeral_int_uint"
z3_mk_fpa_numeral_int_uint :: Ptr Z3_context -> Z3_bool -> CInt -> CUInt -> Ptr Z3_sort -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_numeral_int64_uint64"
z3_mk_fpa_numeral_int64_uint64 :: Ptr Z3_context -> Z3_bool -> CLong -> CULong -> Ptr Z3_sort -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_abs"
z3_mk_fpa_abs :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_neg"
z3_mk_fpa_neg :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_add"
z3_mk_fpa_add :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_sub"
z3_mk_fpa_sub :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_mul"
z3_mk_fpa_mul :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_div"
z3_mk_fpa_div :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_fma"
z3_mk_fpa_fma :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_sqrt"
z3_mk_fpa_sqrt :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_rem"
z3_mk_fpa_rem :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_round_to_integral"
z3_mk_fpa_round_to_integral :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_min"
z3_mk_fpa_min :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_max"
z3_mk_fpa_max :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_leq"
z3_mk_fpa_leq :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_lt"
z3_mk_fpa_lt :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_geq"
z3_mk_fpa_geq :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_gt"
z3_mk_fpa_gt :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_eq"
z3_mk_fpa_eq :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_is_normal"
z3_mk_fpa_is_normal :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_is_subnormal"
z3_mk_fpa_is_subnormal :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_is_zero"
z3_mk_fpa_is_zero :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_is_infinite"
z3_mk_fpa_is_infinite :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_is_nan"
z3_mk_fpa_is_nan :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_is_negative"
z3_mk_fpa_is_negative :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_is_positive"
z3_mk_fpa_is_positive :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_to_fp_bv"
z3_mk_fpa_to_fp_bv :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_sort -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_to_fp_float"
z3_mk_fpa_to_fp_float :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> Ptr Z3_sort -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_to_fp_real"
z3_mk_fpa_to_fp_real :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> Ptr Z3_sort -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_to_fp_signed"
z3_mk_fpa_to_fp_signed :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> Ptr Z3_sort -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_to_fp_unsigned"
z3_mk_fpa_to_fp_unsigned :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> Ptr Z3_sort -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_to_ubv"
z3_mk_fpa_to_ubv :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> CUInt -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_to_sbv"
z3_mk_fpa_to_sbv :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> CUInt -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_to_real"
z3_mk_fpa_to_real :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_fpa_get_ebits"
z3_fpa_get_ebits :: Ptr Z3_context -> Ptr Z3_sort -> IO CUInt
foreign import ccall unsafe "Z3_fpa_get_sbits"
z3_fpa_get_sbits :: Ptr Z3_context -> Ptr Z3_sort -> IO CUInt
foreign import ccall unsafe "Z3_fpa_is_numeral_nan"
z3_fpa_is_numeral_nan :: Ptr Z3_context -> Ptr Z3_ast -> IO Z3_bool
foreign import ccall unsafe "Z3_fpa_is_numeral_inf"
z3_fpa_is_numeral_inf :: Ptr Z3_context -> Ptr Z3_ast -> IO Z3_bool
foreign import ccall unsafe "Z3_fpa_is_numeral_zero"
z3_fpa_is_numeral_zero :: Ptr Z3_context -> Ptr Z3_ast -> IO Z3_bool
foreign import ccall unsafe "Z3_fpa_is_numeral_normal"
z3_fpa_is_numeral_normal :: Ptr Z3_context -> Ptr Z3_ast -> IO Z3_bool
foreign import ccall unsafe "Z3_fpa_is_numeral_subnormal"
z3_fpa_is_numeral_subnormal :: Ptr Z3_context -> Ptr Z3_ast -> IO Z3_bool
foreign import ccall unsafe "Z3_fpa_is_numeral_positive"
z3_fpa_is_numeral_positive :: Ptr Z3_context -> Ptr Z3_ast -> IO Z3_bool
foreign import ccall unsafe "Z3_fpa_is_numeral_negative"
z3_fpa_is_numeral_negative :: Ptr Z3_context -> Ptr Z3_ast -> IO Z3_bool
foreign import ccall unsafe "Z3_fpa_get_numeral_sign_bv"
z3_fpa_get_numeral_sign_bv :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_fpa_get_numeral_significand_bv"
z3_fpa_get_numeral_significand_bv :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_fpa_get_numeral_sign"
z3_fpa_get_numeral_sign :: Ptr Z3_context -> Ptr Z3_ast -> Ptr CInt -> IO Z3_bool
foreign import ccall unsafe "Z3_fpa_get_numeral_significand_string"
z3_fpa_get_numeral_significand_string :: Ptr Z3_context -> Ptr Z3_ast -> IO Z3_string
foreign import ccall unsafe "Z3_fpa_get_numeral_significand_uint64"
z3_fpa_get_numeral_significand_uint64 :: Ptr Z3_context -> Ptr Z3_ast -> Ptr CULong -> IO Z3_bool
foreign import ccall unsafe "Z3_fpa_get_numeral_exponent_string"
z3_fpa_get_numeral_exponent_string :: Ptr Z3_context -> Ptr Z3_ast -> Z3_bool -> IO Z3_string
foreign import ccall unsafe "Z3_fpa_get_numeral_exponent_int64"
z3_fpa_get_numeral_exponent_int64 :: Ptr Z3_context -> Ptr Z3_ast -> Ptr CLong -> Z3_bool -> IO Z3_bool
foreign import ccall unsafe "Z3_fpa_get_numeral_exponent_bv"
z3_fpa_get_numeral_exponent_bv :: Ptr Z3_context -> Ptr Z3_ast -> Z3_bool -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_to_ieee_bv"
z3_mk_fpa_to_ieee_bv :: Ptr Z3_context -> Ptr Z3_ast -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_fpa_to_fp_int_real"
z3_mk_fpa_to_fp_int_real :: Ptr Z3_context -> Ptr Z3_ast -> Ptr Z3_ast -> Ptr Z3_ast -> Ptr Z3_sort -> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_mk_optimize"
z3_mk_optimize :: Ptr Z3_context -> IO (Ptr Z3_optimize)
foreign import ccall unsafe "Z3_optimize_inc_ref"
z3_optimize_inc_ref :: Ptr Z3_context -> Ptr Z3_optimize -> IO ()
foreign import ccall unsafe "Z3_optimize_dec_ref"
z3_optimize_dec_ref :: Ptr Z3_context -> Ptr Z3_optimize -> IO ()
foreign import ccall unsafe "Z3_optimize_assert"
z3_optimize_assert :: Ptr Z3_context -> Ptr Z3_optimize -> Ptr Z3_ast -> IO ()
foreign import ccall unsafe "Z3_optimize_assert_and_track"
z3_optimize_assert_and_track :: Ptr Z3_context
-> Ptr Z3_optimize
-> Ptr Z3_ast
-> Ptr Z3_ast
-> IO ()
foreign import ccall unsafe "Z3_optimize_assert_soft"
z3_optimize_assert_soft :: Ptr Z3_context
-> Ptr Z3_optimize
-> Ptr Z3_ast
-> Z3_string
-> Ptr Z3_symbol
-> IO CUInt
foreign import ccall unsafe "Z3_optimize_maximize"
z3_optimize_maximize :: Ptr Z3_context
-> Ptr Z3_optimize
-> Ptr Z3_ast
-> IO CUInt
foreign import ccall unsafe "Z3_optimize_minimize"
z3_optimize_minimize :: Ptr Z3_context
-> Ptr Z3_optimize
-> Ptr Z3_ast
-> IO CUInt
foreign import ccall unsafe "Z3_optimize_push"
z3_optimize_push :: Ptr Z3_context
-> Ptr Z3_optimize
-> IO ()
foreign import ccall unsafe "Z3_optimize_pop"
z3_optimize_pop :: Ptr Z3_context
-> Ptr Z3_optimize
-> IO ()
foreign import ccall unsafe "Z3_optimize_check"
z3_optimize_check :: Ptr Z3_context
-> Ptr Z3_optimize
-> CUInt
-> Ptr (Ptr Z3_ast)
-> IO Z3_lbool
foreign import ccall unsafe "Z3_optimize_get_reason_unknown"
z3_optimize_get_reason_unknown :: Ptr Z3_context
-> Ptr Z3_optimize
-> IO Z3_string
foreign import ccall unsafe "Z3_optimize_get_model"
z3_optimize_get_model :: Ptr Z3_context
-> Ptr Z3_optimize
-> IO (Ptr Z3_model)
foreign import ccall unsafe "Z3_optimize_get_unsat_core"
z3_optimize_get_unsat_core :: Ptr Z3_context
-> Ptr Z3_optimize
-> IO (Ptr Z3_ast_vector)
foreign import ccall unsafe "Z3_optimize_set_params"
z3_optimize_set_params :: Ptr Z3_context
-> Ptr Z3_optimize
-> Ptr Z3_params
-> IO ()
foreign import ccall unsafe "Z3_optimize_get_param_descrs"
z3_optimize_get_param_descrs :: Ptr Z3_context
-> Ptr Z3_optimize
-> IO (Ptr Z3_param_descrs)
foreign import ccall unsafe "Z3_optimize_get_lower"
z3_optimize_get_lower :: Ptr Z3_context
-> Ptr Z3_optimize
-> CUInt
-> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_optimize_get_upper"
z3_optimize_get_upper :: Ptr Z3_context
-> Ptr Z3_optimize
-> CUInt
-> IO (Ptr Z3_ast)
foreign import ccall unsafe "Z3_optimize_get_lower_as_vector"
z3_optimize_get_lower_as_vector :: Ptr Z3_context
-> Ptr Z3_optimize
-> CUInt
-> IO (Ptr Z3_ast_vector)
foreign import ccall unsafe "Z3_optimize_get_upper_as_vector"
z3_optimize_get_upper_as_vector :: Ptr Z3_context
-> Ptr Z3_optimize
-> CUInt
-> IO (Ptr Z3_ast_vector)
foreign import ccall unsafe "Z3_optimize_to_string"
z3_optimize_to_string :: Ptr Z3_context
-> Ptr Z3_optimize
-> IO Z3_string
foreign import ccall unsafe "Z3_optimize_from_string"
z3_optimize_from_string :: Ptr Z3_context
-> Ptr Z3_optimize
-> Z3_string
-> IO ()
foreign import ccall unsafe "Z3_optimize_from_file"
z3_optimize_from_file :: Ptr Z3_context
-> Ptr Z3_optimize
-> Z3_string
-> IO ()
foreign import ccall unsafe "Z3_optimize_get_help"
z3_optimize_get_help :: Ptr Z3_context
-> Ptr Z3_optimize
-> IO Z3_string
foreign import ccall unsafe "Z3_optimize_get_statistics"
z3_optimize_get_statistics :: Ptr Z3_context
-> Ptr Z3_optimize
-> IO (Ptr Z3_stats)
foreign import ccall unsafe "Z3_optimize_get_assertions"
z3_optimize_get_assertions :: Ptr Z3_context
-> Ptr Z3_optimize
-> IO (Ptr Z3_ast_vector)
foreign import ccall unsafe "Z3_optimize_get_objectives"
z3_optimize_get_objectives :: Ptr Z3_context
-> Ptr Z3_optimize
-> IO (Ptr Z3_ast_vector)
foreign import ccall unsafe "Z3_polynomial_subresultants"
z3_polynomial_subresultants :: Ptr Z3_context
-> Ptr Z3_ast
-> Ptr Z3_ast
-> Ptr Z3_ast
-> IO (Ptr Z3_ast_vector)
foreign import ccall unsafe "Z3_rcf_del"
z3_rcf_del :: Ptr Z3_context
-> Ptr Z3_rcf_num
-> IO ()
foreign import ccall unsafe "Z3_rcf_mk_rational"
z3_rcf_mk_rational :: Ptr Z3_context
-> Z3_string
-> IO (Ptr Z3_rcf_num)
foreign import ccall unsafe "Z3_rcf_mk_small_int"
z3_rcf_mk_small_int :: Ptr Z3_context
-> CInt
-> IO (Ptr Z3_rcf_num)
foreign import ccall unsafe "Z3_rcf_mk_pi"
z3_rcf_mk_pi :: Ptr Z3_context
-> IO (Ptr Z3_rcf_num)
foreign import ccall unsafe "Z3_rcf_mk_e"
z3_rcf_mk_e :: Ptr Z3_context
-> IO (Ptr Z3_rcf_num)
foreign import ccall unsafe "Z3_rcf_mk_infinitesimal"
z3_rcf_mk_infinitesimal :: Ptr Z3_context
-> IO (Ptr Z3_rcf_num)
foreign import ccall unsafe "Z3_rcf_mk_roots"
z3_rcf_mk_roots :: Ptr Z3_context
-> CUInt
-> Ptr (Ptr Z3_rcf_num)
-> Ptr (Ptr Z3_rcf_num)
-> IO CUInt
foreign import ccall unsafe "Z3_rcf_add"
z3_rcf_add :: Ptr Z3_context
-> Ptr Z3_rcf_num
-> Ptr Z3_rcf_num
-> IO (Ptr Z3_rcf_num)
foreign import ccall unsafe "Z3_rcf_sub"
z3_rcf_sub :: Ptr Z3_context
-> Ptr Z3_rcf_num
-> Ptr Z3_rcf_num
-> IO (Ptr Z3_rcf_num)
foreign import ccall unsafe "Z3_rcf_mul"
z3_rcf_mul :: Ptr Z3_context
-> Ptr Z3_rcf_num
-> Ptr Z3_rcf_num
-> IO (Ptr Z3_rcf_num)
foreign import ccall unsafe "Z3_rcf_div"
z3_rcf_div :: Ptr Z3_context
-> Ptr Z3_rcf_num
-> Ptr Z3_rcf_num
-> IO (Ptr Z3_rcf_num)
foreign import ccall unsafe "Z3_rcf_neg"
z3_rcf_neg :: Ptr Z3_context
-> Ptr Z3_rcf_num
-> IO (Ptr Z3_rcf_num)
foreign import ccall unsafe "Z3_rcf_inv"
z3_rcf_inv :: Ptr Z3_context
-> Ptr Z3_rcf_num
-> IO (Ptr Z3_rcf_num)
foreign import ccall unsafe "Z3_rcf_power"
z3_rcf_power :: Ptr Z3_context
-> Ptr Z3_rcf_num
-> CUInt
-> IO (Ptr Z3_rcf_num)
foreign import ccall unsafe "Z3_rcf_lt"
z3_rcf_lt :: Ptr Z3_context
-> Ptr Z3_rcf_num
-> Ptr Z3_rcf_num
-> IO Z3_bool
foreign import ccall unsafe "Z3_rcf_gt"
z3_rcf_gt :: Ptr Z3_context
-> Ptr Z3_rcf_num
-> Ptr Z3_rcf_num
-> IO Z3_bool
foreign import ccall unsafe "Z3_rcf_le"
z3_rcf_le :: Ptr Z3_context
-> Ptr Z3_rcf_num
-> Ptr Z3_rcf_num
-> IO Z3_bool
foreign import ccall unsafe "Z3_rcf_ge"
z3_rcf_ge :: Ptr Z3_context
-> Ptr Z3_rcf_num
-> Ptr Z3_rcf_num
-> IO Z3_bool
foreign import ccall unsafe "Z3_rcf_eq"
z3_rcf_eq :: Ptr Z3_context
-> Ptr Z3_rcf_num
-> Ptr Z3_rcf_num
-> IO Z3_bool
foreign import ccall unsafe "Z3_rcf_neq"
z3_rcf_neq :: Ptr Z3_context
-> Ptr Z3_rcf_num
-> Ptr Z3_rcf_num
-> IO Z3_bool
foreign import ccall unsafe "Z3_rcf_num_to_string"
z3_rcf_num_to_string :: Ptr Z3_context
-> Ptr Z3_rcf_num
-> IO Z3_string
foreign import ccall unsafe "Z3_rcf_num_to_decimal_string"
z3_rcf_num_to_decimal_string :: Ptr Z3_context
-> Ptr Z3_rcf_num
-> CUInt
-> IO Z3_string
foreign import ccall unsafe "Z3_rcf_get_numerator_denominator"
z3_rcf_get_numerator_denominator :: Ptr Z3_context
-> Ptr Z3_rcf_num
-> Ptr (Ptr Z3_rcf_num)
-> Ptr (Ptr Z3_rcf_num)
-> IO ()