3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-29 03:45:51 +00:00

add fd solver for finite domain queries

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2016-10-18 22:34:34 -04:00
parent 948a1e600e
commit d060359f01
16 changed files with 676 additions and 204 deletions

View file

@ -568,6 +568,7 @@ bool cmd_context::logic_has_bv_core(symbol const & s) const {
s == "QF_FPBV" ||
s == "QF_BVFP" ||
s == "ALL" ||
s == "QF_FD" ||
s == "HORN";
}
@ -622,7 +623,7 @@ bool cmd_context::logic_has_array() const {
}
bool cmd_context::logic_has_datatype() const {
return !has_logic();
return !has_logic() || m_logic == "QF_FD";
}
void cmd_context::init_manager_core(bool new_manager) {
@ -705,7 +706,7 @@ void cmd_context::init_external_manager() {
}
bool cmd_context::supported_logic(symbol const & s) const {
return s == "QF_UF" || s == "UF" || s == "ALL" ||
return s == "QF_UF" || s == "UF" || s == "ALL" || s == "QF_FD" ||
logic_has_arith_core(s) || logic_has_bv_core(s) ||
logic_has_array_core(s) || logic_has_seq_core(s) ||
logic_has_horn(s) || logic_has_fpa_core(s);