36 out <<
"(_ FloatingPoint " <<
floatbv_type.get_e() <<
' '
40 out <<
"? " << type.
id();
59 out <<
"(_ bv" <<
int_value <<
" " << width <<
")";
83 for(
const auto &
c : value)
97 const size_t e = v.
spec.
e;
98 const size_t f = v.
spec.
f + 1;
102 out <<
"(_ NaN " << e <<
" " << f <<
")";
107 out <<
"(_ -oo " << e <<
" " << f <<
")";
109 out <<
"(_ +oo " << e <<
" " << f <<
")";
162 "array_list has even number of operands");
168 out <<
"? " << expr.
id();
Pre-defined bitvector types.
const floatbv_typet & to_floatbv_type(const typet &type)
Cast a typet to a floatbv_typet.
const unsignedbv_typet & to_unsignedbv_type(const typet &type)
Cast a typet to an unsignedbv_typet.
ait supplies three of the four components needed: an abstract interpreter (in this case handling func...
Base class for all expressions.
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.
bool is_constant() const
Return whether the expression is a constant.
typet & type()
Return the type of the expression.
std::size_t width() const
An IEEE 754 floating-point value, including specificiation.
bool get_bool(const irep_idt &name) const
const irep_idt & id() const
The type of an expression, extends irept.
static std::string binary(const constant_exprt &src)
const std::string integer2binary(const mp_integer &n, std::size_t width)
#define DATA_INVARIANT(CONDITION, REASON)
This condition should be used to document that assumptions that are made on goto_functions,...
const multi_ary_exprt & to_multi_ary_expr(const exprt &expr)
Cast an exprt to a multi_ary_exprt.
const constant_exprt & to_constant_expr(const exprt &expr)
Cast an exprt to a constant_exprt.
const symbol_exprt & to_symbol_expr(const exprt &expr)
Cast an exprt to a symbol_exprt.
const with_exprt & to_with_expr(const exprt &expr)
Cast an exprt to a with_exprt.
const array_typet & to_array_type(const typet &type)
Cast a typet to an array_typet.