20 :
log(message_handler)
31 for(symex_target_equationt::SSA_stepst::const_iterator it =
37 it->is_assignment() &&
42 const typet &type = it->ssa_lhs.type();
48 type.
id() == ID_signedbv || type.
id() == ID_fixedbv ||
49 type.
id() == ID_floatbv)
52 minimization_list.insert(abs_expr);
55 minimization_list.insert(it->ssa_lhs);
66 symex_target_equationt::SSA_stepst::const_iterator
73 for(symex_target_equationt::SSA_stepst::const_iterator it =
79 it->is_assert() && prop_conv.
get(it->guard_handle).
is_true() &&
104 typedef std::map<literalt, unsigned> guard_countt;
105 guard_countt guard_count;
107 for(symex_target_equationt::SSA_stepst::const_iterator it =
113 it->is_assignment() &&
129 for(
const auto &g : guard_count)
130 prop_minimize.objective(g.first, g.second);
146 bv_minimize(minimization_list);
std::set< exprt > minimization_listt
void set_to(const exprt &expr, bool value) override
For a Boolean expression expr, add the constraint 'expr' if value is true, otherwise add 'not expr'.
void operator()(boolbvt &boolbv, const symex_target_equationt &equation)
void get_minimization_list(prop_convt &prop_conv, const symex_target_equationt &equation, minimization_listt &minimization_list)
symex_target_equationt::SSA_stepst::const_iterator failed
symex_target_equationt::SSA_stepst::const_iterator get_failed_property(const prop_convt &prop_conv, const symex_target_equationt &equation)
counterexample_beautificationt(message_handlert &message_handler)
virtual exprt get(const exprt &) const =0
Return expr with variables replaced by values from satisfying assignment if available.
bool is_true() const
Return whether the expression is a constant representing true.
bool is_false() const
Return whether the expression is a constant representing false.
const irep_idt & id() const
mstreamt & status() const
message_handlert & get_message_handler()
literalt convert(const exprt &expr) override
Convert a Boolean expression and return the corresponding literal.
Computes a satisfying assignment of minimal cost according to a const function using incremental SAT.
Inheriting the interface of symex_targett this class represents the SSA form of the input program as ...
The type of an expression, extends irept.
Counterexample Beautification.
#define UNREACHABLE
This should be used to mark dead code.
API to expression classes.