mirror of
https://github.com/Z3Prover/z3
synced 2025-05-08 00:05:46 +00:00
add QF_DT
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
a0d0812b0c
commit
8ff1e070be
5 changed files with 20 additions and 4 deletions
|
@ -37,6 +37,7 @@ struct check_logic::imp {
|
|||
datatype_util m_dt_util;
|
||||
pb_util m_pb_util;
|
||||
bool m_uf; // true if the logic supports uninterpreted functions
|
||||
bool m_dt; // true if the lgoic supports dattypes
|
||||
bool m_arrays; // true if the logic supports arbitrary arrays
|
||||
bool m_bv_arrays; // true if the logic supports only bv arrays
|
||||
bool m_reals; // true if the logic supports reals
|
||||
|
@ -53,6 +54,7 @@ struct check_logic::imp {
|
|||
|
||||
void reset() {
|
||||
m_uf = false;
|
||||
m_dt = false;
|
||||
m_arrays = false;
|
||||
m_bv_arrays = false;
|
||||
m_reals = false;
|
||||
|
@ -105,6 +107,10 @@ struct check_logic::imp {
|
|||
m_uf = true;
|
||||
m_bvs = true;
|
||||
}
|
||||
else if (logic == "QF_DT") {
|
||||
m_uf = true;
|
||||
m_dt = true;
|
||||
}
|
||||
else if (logic == "QF_AUFLIA") {
|
||||
m_uf = true;
|
||||
m_arrays = true;
|
||||
|
@ -187,6 +193,7 @@ struct check_logic::imp {
|
|||
m_bvs = true;
|
||||
m_uf = true;
|
||||
m_ints = true;
|
||||
m_dt = true;
|
||||
m_nonlinear = true; // non-linear 0-1 variables may get eliminated
|
||||
}
|
||||
else {
|
||||
|
@ -443,7 +450,7 @@ struct check_logic::imp {
|
|||
else if (fid == m_seq_util.get_family_id()) {
|
||||
// nothing to check
|
||||
}
|
||||
else if (fid == m_dt_util.get_family_id() && m_logic == "QF_FD") {
|
||||
else if (fid == m_dt_util.get_family_id() && m_dt) {
|
||||
// nothing to check
|
||||
}
|
||||
else if (fid == m_pb_util.get_family_id() && m_logic == "QF_FD") {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue