bddt from_expr(const exprt &expr)
bddt bdd_or(const bddt &other) const
guard_bddt & append(const guard_bddt &guard)
Base class for all expressions.
bool is_false() const
Return whether the expression is a constant representing false.
Conversion between exprt and bbdt This encapsulate a bdd_managert, thus BDDs created with this class ...
guard_bddt & add(const exprt &expr)
#define PRECONDITION(CONDITION)
exprt boolean_negate(const exprt &src)
negate a Boolean expression, possibly removing a not_exprt, and swapping false and true
guard_bddt(const exprt &e, bdd_exprt &manager)
exprt as_expr(const bddt &root) const
exprt guard_expr(exprt expr) const
Return guard => dest or a simplified variant thereof if either guard or dest are trivial.
Deprecated expression utility functions.
guard_bddt & operator|=(guard_bddt &g1, const guard_bddt &g2)
bddt bdd_and(const bddt &other) const
guard_bddt & operator=(const guard_bddt &other)
std::string from_expr(const namespacet &ns, const irep_idt &identifier, const exprt &expr)
bddt constrain(const bddt &other)
guard_bddt & operator-=(guard_bddt &g1, const guard_bddt &g2)