Support get-abduct-next (#7850)
authorAndrew Reynolds <andrew.j.reynolds@gmail.com>
Tue, 21 Dec 2021 18:21:40 +0000 (12:21 -0600)
committerGitHub <noreply@github.com>
Tue, 21 Dec 2021 18:21:40 +0000 (18:21 +0000)
commit36f93a1431e93979744f2c2a1f3d06b2b9008a4f
tree4a05619d0c8705451f9358d31511c79471ea2f81
parent2b7bebc38a48a0bd600b2cd9b2dae7328a3c5d3f
Support get-abduct-next (#7850)

Adds support for incremental abduction, adds regression for using push/pop in combination with get-abduct, and a use of get-abduct-next.

Adds this method to C++, java API.

Interpolation/abduction not yet supported in Python API, I'm waiting for @yoni206 to add this; getAbductNext will be added to Python API in followup PR.
22 files changed:
src/api/cpp/cvc5.cpp
src/api/cpp/cvc5.h
src/api/java/io/github/cvc5/api/Solver.java
src/api/java/jni/solver.cpp
src/expr/symbol_manager.cpp
src/expr/symbol_manager.h
src/parser/smt2/Smt2.g
src/printer/printer.cpp
src/printer/printer.h
src/printer/smt2/smt2_printer.cpp
src/printer/smt2/smt2_printer.h
src/smt/abduction_solver.cpp
src/smt/abduction_solver.h
src/smt/command.cpp
src/smt/command.h
src/smt/solver_engine.cpp
src/smt/solver_engine.h
test/regress/CMakeLists.txt
test/regress/regress1/abduction/simple-incremental-push-pop.smt2 [new file with mode: 0644]
test/regress/regress1/abduction/simple-incremental.smt2 [new file with mode: 0644]
test/unit/api/cpp/solver_black.cpp
test/unit/api/java/SolverTest.java