mCRL2
|
#include <invariant_checker.h>
Public Member Functions | |
Invariant_Checker (const Specification &a_lps, data::rewriter::strategy a_rewrite_strategy=data::jitty, int a_time_limit=0, bool a_path_eliminator=false, data::detail::smt_solver_type a_solver_type=data::detail::solver_type_cvc, bool a_apply_induction=false, bool a_counter_example=false, bool a_all_violations=false, const std::string &a_dot_file_name=std::string()) | |
bool | check_invariant (const data::data_expression &a_invariant) |
precondition: the argument passed as parameter a_invariant is a valid expression in internal mCRL2 format | |
Private Types | |
typedef Specification::process_type | process_type |
typedef process_type::action_summand_type | action_summand_type |
typedef std::vector< action_summand_type > | action_summand_vector_type |
Private Member Functions | |
void | print_counter_example () |
void | save_dot_file (std::size_t a_summand_number) |
bool | check_init (const data::data_expression &a_invariant) |
bool | check_summand (const data::data_expression &a_invariant, const action_summand_type &a_summand, const std::size_t a_summand_number) |
bool | check_summands (const data::data_expression &a_invariant) |
Private Attributes | |
const Specification & | f_spec |
data::detail::BDD_Prover | f_bdd_prover |
data::detail::BDD2Dot | f_bdd2dot |
process_initializer | f_init |
action_summand_vector_type | f_summands |
bool | f_counter_example |
bool | f_all_violations |
std::string | f_dot_file_name |
Definition at line 72 of file invariant_checker.h.
|
private |
Definition at line 75 of file invariant_checker.h.
|
private |
Definition at line 76 of file invariant_checker.h.
|
private |
Definition at line 74 of file invariant_checker.h.
mcrl2::lps::detail::Invariant_Checker< Specification >::Invariant_Checker | ( | const Specification & | a_lps, |
data::rewriter::strategy | a_rewrite_strategy = data::jitty , |
||
int | a_time_limit = 0 , |
||
bool | a_path_eliminator = false , |
||
data::detail::smt_solver_type | a_solver_type = data::detail::solver_type_cvc , |
||
bool | a_apply_induction = false , |
||
bool | a_counter_example = false , |
||
bool | a_all_violations = false , |
||
const std::string & | a_dot_file_name = std::string() |
||
) |
precondition: the argument passed as parameter a_lps is a valid mCRL2 LPS precondition: the argument passed as parameter a_time_limit is greater than or equal to 0. If the argument is equal to 0, no time limit will be enforced
Definition at line 238 of file invariant_checker.h.
|
private |
Definition at line 151 of file invariant_checker.h.
bool mcrl2::lps::detail::Invariant_Checker< Specification >::check_invariant | ( | const data::data_expression & | a_invariant | ) |
precondition: the argument passed as parameter a_invariant is a valid expression in internal mCRL2 format
Definition at line 256 of file invariant_checker.h.
|
private |
Definition at line 183 of file invariant_checker.h.
|
private |
Definition at line 222 of file invariant_checker.h.
|
private |
Definition at line 117 of file invariant_checker.h.
|
private |
Definition at line 130 of file invariant_checker.h.
|
private |
Definition at line 85 of file invariant_checker.h.
|
private |
Definition at line 81 of file invariant_checker.h.
|
private |
Definition at line 80 of file invariant_checker.h.
|
private |
Definition at line 84 of file invariant_checker.h.
|
private |
Definition at line 86 of file invariant_checker.h.
|
private |
Definition at line 82 of file invariant_checker.h.
|
private |
Definition at line 79 of file invariant_checker.h.
|
private |
Definition at line 83 of file invariant_checker.h.