|
std::size_t | get_object_width (const pointer_typet &) const |
|
std::size_t | get_offset_width (const pointer_typet &) const |
|
bvt | encode (const mp_integer &object, const pointer_typet &) const |
|
virtual bvt | convert_pointer_type (const exprt &) |
|
virtual bvt | add_addr (const exprt &) |
|
literalt | convert_rest (const exprt &) override |
|
bvt | convert_bitvector (const exprt &) override |
| Converts an expression into its gate-level representation and returns a vector of literals corresponding to the outputs of the Boolean circuit.
|
|
exprt | bv_get_rec (const exprt &, const bvt &, std::size_t offset) const override |
|
std::optional< bvt > | convert_address_of_rec (const exprt &) |
|
bvt | offset_arithmetic (const pointer_typet &, const bvt &, const mp_integer &) |
|
bvt | offset_arithmetic (const pointer_typet &, const bvt &, const mp_integer &factor, const exprt &index) |
|
bvt | offset_arithmetic (const pointer_typet &, const bvt &, const mp_integer &factor, const bvt &index_bv) |
|
void | do_postponed (const postponedt &postponed) |
|
bvt | object_literals (const bvt &bv, const pointer_typet &type) const |
| Given a pointer encoded in bv , extract the literals identifying the object that the pointer points to.
|
|
bvt | offset_literals (const bvt &bv, const pointer_typet &type) const |
| Given a pointer encoded in bv , extract the literals representing the offset into an object that the pointer points to.
|
|
virtual bool | boolbv_set_equality_to_true (const equal_exprt &expr) |
|
bvt | conversion_failed (const exprt &expr) |
| Print that the expression of x has failed conversion, then return a vector of x's width.
|
|
bool | type_conversion (const typet &src_type, const bvt &src, const typet &dest_type, bvt &dest) |
|
virtual literalt | convert_bv_rel (const binary_relation_exprt &) |
| Flatten <, >, <= and >= expressions.
|
|
virtual literalt | convert_typecast (const typecast_exprt &expr) |
| conversion from bitvector types to boolean
|
|
virtual literalt | convert_reduction (const unary_exprt &expr) |
|
virtual literalt | convert_onehot (const unary_exprt &expr) |
|
virtual literalt | convert_extractbit (const extractbit_exprt &expr) |
|
virtual literalt | convert_binary_overflow (const binary_overflow_exprt &expr) |
|
virtual literalt | convert_unary_overflow (const unary_overflow_exprt &expr) |
|
virtual literalt | convert_equality (const equal_exprt &expr) |
|
virtual literalt | convert_verilog_case_equality (const binary_relation_exprt &expr) |
|
virtual literalt | convert_ieee_float_rel (const binary_relation_exprt &) |
|
virtual literalt | convert_quantifier (const quantifier_exprt &expr) |
|
virtual bvt | convert_index (const exprt &array, const mp_integer &index) |
| index operator with constant index
|
|
virtual bvt | convert_index (const index_exprt &expr) |
|
virtual bvt | convert_bswap (const bswap_exprt &expr) |
|
virtual bvt | convert_byte_extract (const byte_extract_exprt &expr) |
|
virtual bvt | convert_byte_update (const byte_update_exprt &expr) |
|
virtual bvt | convert_constraint_select_one (const exprt &expr) |
|
virtual bvt | convert_if (const if_exprt &expr) |
|
virtual bvt | convert_struct (const struct_exprt &expr) |
|
virtual bvt | convert_array (const exprt &expr) |
| Flatten array.
|
|
virtual bvt | convert_complex (const complex_exprt &expr) |
|
virtual bvt | convert_complex_real (const complex_real_exprt &expr) |
|
virtual bvt | convert_complex_imag (const complex_imag_exprt &expr) |
|
virtual bvt | convert_array_comprehension (const array_comprehension_exprt &) |
|
virtual bvt | convert_let (const let_exprt &) |
|
virtual bvt | convert_array_of (const array_of_exprt &expr) |
| Flatten arrays constructed from a single element.
|
|
virtual bvt | convert_union (const union_exprt &expr) |
|
virtual bvt | convert_empty_union (const empty_union_exprt &expr) |
|
virtual bvt | convert_bv_typecast (const typecast_exprt &expr) |
|
virtual bvt | convert_add_sub (const exprt &expr) |
|
virtual bvt | convert_mult (const mult_exprt &expr) |
|
virtual bvt | convert_div (const div_exprt &expr) |
|
virtual bvt | convert_mod (const mod_exprt &expr) |
|
virtual bvt | convert_floatbv_op (const ieee_float_op_exprt &) |
|
virtual bvt | convert_floatbv_mod_rem (const binary_exprt &) |
|
virtual bvt | convert_floatbv_typecast (const floatbv_typecast_exprt &expr) |
|
virtual bvt | convert_floatbv_round_to_integral (const floatbv_round_to_integral_exprt &) |
|
virtual bvt | convert_member (const member_exprt &expr) |
|
virtual bvt | convert_with (const with_exprt &expr) |
|
virtual bvt | convert_update (const update_exprt &) |
|
virtual bvt | convert_update_bit (const update_bit_exprt &) |
|
virtual bvt | convert_update_bits (const update_bits_exprt &) |
|
virtual bvt | convert_case (const exprt &expr) |
|
virtual bvt | convert_cond (const cond_exprt &) |
|
virtual bvt | convert_shift (const binary_exprt &expr) |
|
virtual bvt | convert_bitwise (const exprt &expr) |
|
virtual bvt | convert_unary_minus (const unary_minus_exprt &expr) |
|
virtual bvt | convert_abs (const abs_exprt &expr) |
|
virtual bvt | convert_concatenation (const concatenation_exprt &expr) |
|
virtual bvt | convert_replication (const replication_exprt &expr) |
|
virtual bvt | convert_constant (const constant_exprt &expr) |
|
virtual bvt | convert_extractbits (const extractbits_exprt &expr) |
|
virtual bvt | convert_symbol (const exprt &expr) |
|
virtual bvt | convert_bv_reduction (const unary_exprt &expr) |
|
virtual bvt | convert_not (const not_exprt &expr) |
|
virtual bvt | convert_power (const binary_exprt &expr) |
|
virtual bvt | convert_function_application (const function_application_exprt &expr) |
|
virtual bvt | convert_bitreverse (const bitreverse_exprt &expr) |
|
virtual bvt | convert_saturating_add_sub (const binary_exprt &expr) |
|
virtual bvt | convert_overflow_result (const overflow_result_exprt &expr) |
|
bvt | convert_update_bits (bvt src, const exprt &index, const bvt &new_value) |
|
void | convert_with (const typet &type, const exprt &where, const exprt &new_value, const bvt &prev_bv, bvt &next_bv) |
|
void | convert_with_bv (const exprt &index, const exprt &new_value, const bvt &prev_bv, bvt &next_bv) |
|
void | convert_with_array (const array_typet &type, const exprt &index, const exprt &new_value, const bvt &prev_bv, bvt &next_bv) |
|
void | convert_with_union (const union_typet &type, const exprt &new_value, const bvt &prev_bv, bvt &next_bv) |
|
void | convert_with_struct (const struct_typet &type, const exprt &where, const exprt &new_value, const bvt &prev_bv, bvt &next_bv) |
|
void | convert_update_rec (const exprt::operandst &designator, std::size_t d, const typet &type, std::size_t offset, const exprt &new_value, bvt &bv) |
|
virtual exprt | bv_get_unbounded_array (const exprt &) const |
|
exprt | bv_get (const bvt &bv, const typet &type) const |
|
exprt | bv_get_cache (const exprt &expr) const |
|
bool | is_unbounded_array (const typet &type) const override |
|
void | finish_eager_conversion_quantifiers () |
|
offset_mapt | build_offset_map (const struct_typet &src) |
|
binding_exprt::variablest | fresh_binding (const binding_exprt &) |
| create new, unique variables for the given binding
|
|
virtual void | finish_eager_conversion_arrays () |
|
void | add_array_constraint (const lazy_constraintt &lazy, bool refine=true) |
| adds array constraints (refine=true...lazily for the refinement loop)
|
|
void | display_array_constraint_count () |
|
std::string | enum_to_string (constraint_typet) |
|
void | add_array_constraints () |
|
void | add_array_Ackermann_constraints () |
|
void | add_array_constraints_equality (const index_sett &index_set, const array_equalityt &array_equality) |
|
void | add_array_constraints (const index_sett &index_set, const exprt &expr) |
|
void | add_array_constraints_if (const index_sett &index_set, const if_exprt &exprt) |
|
void | add_array_constraints_with (const index_sett &index_set, const with_exprt &expr) |
|
void | add_array_constraints_update (const index_sett &index_set, const update_exprt &expr) |
|
void | add_array_constraints_array_of (const index_sett &index_set, const array_of_exprt &exprt) |
|
void | add_array_constraints_array_constant (const index_sett &index_set, const array_exprt &exprt) |
|
void | add_array_constraints_comprehension (const index_sett &index_set, const array_comprehension_exprt &expr) |
|
void | update_index_map (bool update_all) |
|
void | update_index_map (std::size_t i) |
| merge the indices into the root
|
|
void | collect_arrays (const exprt &a) |
|
void | collect_indices () |
|
void | collect_indices (const exprt &a) |
|
virtual literalt | equality2 (const exprt &e1, const exprt &e2) |
|
virtual void | add_equality_constraints () |
|
virtual void | add_equality_constraints (const typestructt &typestruct) |
|
virtual std::optional< bool > | get_bool (const exprt &expr) const |
| Get a boolean value from the model if the formula is satisfiable.
|
|
virtual literalt | convert_bool (const exprt &expr) |
|
virtual bool | set_equality_to_true (const equal_exprt &expr) |
|
virtual literalt | get_literal (const irep_idt &symbol) |
|
virtual void | ignoring (const exprt &expr) |
|