mirror of
https://github.com/Z3Prover/z3
synced 2025-07-19 10:52:02 +00:00
sign of life for CSQ using pogo
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
72f60f5bfc
commit
246df792df
5 changed files with 92 additions and 40 deletions
|
@ -975,6 +975,22 @@ namespace qe {
|
|||
reset();
|
||||
return res;
|
||||
}
|
||||
|
||||
expr_ref_vector get_ackerman_disequalities() {
|
||||
expr_ref_vector res(m);
|
||||
purify();
|
||||
lits2pure(res);
|
||||
unsigned sz = res.size();
|
||||
mk_distinct(res);
|
||||
reset();
|
||||
unsigned j = 0;
|
||||
for (unsigned i = sz; i < res.size(); ++i) {
|
||||
res[j++] = res.get(i);
|
||||
}
|
||||
res.shrink(j);
|
||||
return res;
|
||||
}
|
||||
|
||||
expr_ref_vector solve() {
|
||||
expr_ref_vector res(m);
|
||||
purify();
|
||||
|
@ -1011,4 +1027,11 @@ namespace qe {
|
|||
return p.solve();
|
||||
}
|
||||
|
||||
expr_ref_vector term_graph::get_ackerman_disequalities() {
|
||||
m_is_var.reset_solved();
|
||||
term_graph::projector p(*this);
|
||||
return p.get_ackerman_disequalities();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue