Integrate new int-blaster (#7781)
authoryoni206 <yoni206@users.noreply.github.com>
Mon, 13 Dec 2021 16:16:08 +0000 (18:16 +0200)
committerGitHub <noreply@github.com>
Mon, 13 Dec 2021 16:16:08 +0000 (16:16 +0000)
commitad885db118e388687be7f657ddc943e74a0a9601
tree7759b009f9fe21aba612fac7ce7752faa408dadb
parent05f2d5f39a2e1021bbaf8fc5ba3c9a0d053759a1
Integrate new int-blaster (#7781)

This PR removes the code that translates from bit-vectors to integers from the bv_to_int preprocessing pass, and replaces it with a call to the IntBlaster module.

Tests are updated and added, as well as other minor changes.

Solves the following issues (and contains corresponding tests):
cvc5/cvc5-projects#345
cvc5/cvc5-projects#344
cvc5/cvc5-projects#343

@mpreiner FYI
35 files changed:
src/preprocessing/passes/bv_to_int.cpp
src/preprocessing/passes/bv_to_int.h
src/theory/arith/arith_rewriter.cpp
src/theory/arith/nl/iand_solver.cpp
src/theory/bv/int_blaster.cpp
src/theory/bv/int_blaster.h
src/theory/bv/theory_bv_rewrite_rules_operator_elimination.h
test/api/cpp/CMakeLists.txt
test/api/cpp/proj-issue344.cpp [new file with mode: 0644]
test/api/cpp/proj-issue345.cpp [new file with mode: 0644]
test/regress/CMakeLists.txt
test/regress/regress0/bv/bv_to_int1.smt2
test/regress/regress0/bv/bv_to_int_bvmul2.smt2
test/regress/regress0/bv/bv_to_int_bvuf_to_intuf.smt2
test/regress/regress0/bv/bv_to_int_bvuf_to_intuf_sorts.smt2
test/regress/regress0/bv/bv_to_int_elim_err.smt2
test/regress/regress0/bv/bv_to_int_int1.smt2 [new file with mode: 0644]
test/regress/regress0/bv/bv_to_int_zext.smt2
test/regress/regress0/bv/proj-issue343.smt2 [new file with mode: 0644]
test/regress/regress2/bv_to_int2.smt2
test/regress/regress2/bv_to_int_ashr.smt2
test/regress/regress2/bv_to_int_bitwise.smt2
test/regress/regress2/bv_to_int_bvmul1.smt2
test/regress/regress2/bv_to_int_bvuf_to_intuf_smtlib.smt2
test/regress/regress2/bv_to_int_inc1.smt2
test/regress/regress2/bv_to_int_mask_array_1.smt2
test/regress/regress2/bv_to_int_mask_array_2.smt2
test/regress/regress2/bv_to_int_mask_array_3.smt2
test/regress/regress2/bv_to_int_quantifiers_bvand.smt2 [new file with mode: 0644]
test/regress/regress2/bv_to_int_shifts.smt2
test/regress/regress3/bv_to_int_and_or.smt2
test/regress/regress3/bv_to_int_bench_9839.smt2.minimized.smt2
test/regress/regress3/bv_to_int_check_bvsgt_bvlshr0_4bit.smt2.minimized.smt2
test/regress/regress3/bv_to_int_input_mouser_detect.c.smt2.minimized.smt2
test/unit/theory/theory_bv_int_blaster_white.cpp