3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-09-03 16:48:06 +00:00

move functionality from qe_util to ast_util

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2015-06-23 14:33:45 +02:00
parent 5f484c069b
commit bf5419d44a
25 changed files with 174 additions and 161 deletions

View file

@ -18,9 +18,10 @@ Revision History:
--*/
#include "dl_mk_array_blast.h"
#include "qe_util.h"
#include "ast_util.h"
#include "scoped_proof.h"
namespace datalog {
@ -115,7 +116,7 @@ namespace datalog {
bool mk_array_blast::ackermanize(rule const& r, expr_ref& body, expr_ref& head) {
expr_ref_vector conjs(m), trail(m);
qe::flatten_and(body, conjs);
flatten_and(body, conjs);
m_defs.reset();
m_next_var = 0;
ptr_vector<expr> todo;
@ -246,7 +247,7 @@ namespace datalog {
for (unsigned i = utsz; i < tsz; ++i) {
conjs.push_back(r.get_tail(i));
}
qe::flatten_and(conjs);
flatten_and(conjs);
for (unsigned i = 0; i < conjs.size(); ++i) {
expr* x, *y, *e = conjs[i].get();

View file

@ -25,6 +25,7 @@ Revision History:
#include"rewriter_def.h"
#include"dl_mk_rule_inliner.h"
#include"dl_mk_interp_tail_simplifier.h"
#include"ast_util.h"
namespace datalog {
@ -547,7 +548,7 @@ namespace datalog {
if (modified) {
m_conj.reset();
qe::flatten_and(simp_res, m_conj);
flatten_and(simp_res, m_conj);
for (unsigned i = 0; i < m_conj.size(); ++i) {
expr* e = m_conj[i].get();
if (is_app(e)) {

View file

@ -49,7 +49,7 @@ namespace datalog {
for (unsigned j = 0; j < tsz; ++j) {
conjs.push_back(r.get_tail(j));
}
qe::flatten_and(conjs);
flatten_and(conjs);
for (unsigned j = 0; j < conjs.size(); ++j) {
expr* e = conjs[j].get();
quantifier* q;

View file

@ -52,6 +52,7 @@ Revision History:
#include "dl_mk_slice.h"
#include "ast_pp.h"
#include "ast_util.h"
#include "expr_functors.h"
#include "dl_mk_rule_inliner.h"
#include "model_smt2_pp.h"
@ -619,7 +620,7 @@ namespace datalog {
for (unsigned j = r.get_uninterpreted_tail_size(); j < r.get_tail_size(); ++j) {
conjs.push_back(r.get_tail(j));
}
qe::flatten_and(conjs);
flatten_and(conjs);
return conjs;
}