ESBMC
Efficient SMT-based Context-Bounded Model Checker
Loading...
Searching...
No Matches
solve.h
Go to the documentation of this file.
1#ifndef _ESBMC_SOLVERS_SOLVE_H_
2#define _ESBMC_SOLVERS_SOLVE_H_
3
4#include <string>
8
9class array_iface;
10class fp_convt;
11class smt_convt;
13class tuple_iface;
14
15typedef smt_solver_baset *(solver_creator)(const optionst &options,
16 const namespacet &ns,
17 tuple_iface **tuple_api,
18 array_iface **array_api,
19 fp_convt **fp_api);
20
22 std::string solver_name,
23 const namespacet &ns,
24 const optionst &options);
25
30void check_solver_availability(const optionst &options);
31
32#endif
Definition smt_array.h:10
Definition fp_conv.h:8
Definition namespace.h:10
Definition options.h:11
Slim, frontend-facing SMT interface.
Definition smt_conv.h:30
The base SMT-conversion class/interface.
Definition smt_solver.h:170
Definition smt_tuple.h:27
void check_solver_availability(const optionst &options)
Abort early if the user explicitly selected an SMT solver that was not built into this ESBMC binary.
Definition solve.cpp:118
smt_solver_baset * solver_creator(const optionst &options, const namespacet &ns, tuple_iface **tuple_api, array_iface **array_api, fp_convt **fp_api)
Definition solve.h:15
smt_convt * create_solver(std::string solver_name, const namespacet &ns, const optionst &options)
Definition solve.cpp:195