mirror of
https://github.com/Z3Prover/z3
synced 2025-08-03 01:40:22 +00:00
debugging imdds and fixed bug in horn subsumption model transformer
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
a50d8d6b6c
commit
233f7fd53b
14 changed files with 297 additions and 70 deletions
|
@ -1214,9 +1214,8 @@ namespace datalog {
|
|||
|
||||
lbool context::pdr_query(expr* query) {
|
||||
ensure_pdr();
|
||||
lbool result = m_pdr->query(query);
|
||||
m_last_answer = m_pdr->get_answer();
|
||||
return result;
|
||||
m_last_answer = 0;
|
||||
return m_pdr->query(query);
|
||||
}
|
||||
|
||||
void context::ensure_bmc() {
|
||||
|
@ -1227,9 +1226,8 @@ namespace datalog {
|
|||
|
||||
lbool context::bmc_query(expr* query) {
|
||||
ensure_bmc();
|
||||
lbool result = m_bmc->query(query);
|
||||
m_last_answer = m_bmc->get_answer();
|
||||
return result;
|
||||
m_last_answer = 0;
|
||||
return m_bmc->query(query);
|
||||
}
|
||||
|
||||
#define BEGIN_QUERY() \
|
||||
|
@ -1442,6 +1440,23 @@ namespace datalog {
|
|||
}
|
||||
|
||||
expr* context::get_answer_as_formula() {
|
||||
if (m_last_answer) {
|
||||
return m_last_answer.get();
|
||||
}
|
||||
switch(get_engine()) {
|
||||
case PDR_ENGINE:
|
||||
case QPDR_ENGINE:
|
||||
ensure_pdr();
|
||||
m_last_answer = m_pdr->get_answer();
|
||||
return m_last_answer.get();
|
||||
case BMC_ENGINE:
|
||||
ensure_bmc();
|
||||
m_last_answer = m_bmc->get_answer();
|
||||
return m_last_answer.get();
|
||||
default:
|
||||
UNREACHABLE();
|
||||
}
|
||||
m_last_answer = m.mk_false();
|
||||
return m_last_answer.get();
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue