mirror of
https://github.com/Z3Prover/z3
synced 2025-06-27 00:18:45 +00:00
Move spacer qe into spacer_qe namespace
Attempt to solve compilation issues with GCC and current replication of qe namespace inside and outside spacer
This commit is contained in:
parent
56bce005a0
commit
054c6196a0
4 changed files with 64 additions and 64 deletions
|
@ -99,7 +99,7 @@ void qe_project(ast_manager& m, app_ref_vector& vars, expr_ref& fml, model_ref&
|
||||||
);
|
);
|
||||||
{
|
{
|
||||||
scoped_no_proof _sp(m);
|
scoped_no_proof _sp(m);
|
||||||
qe::arith_project(*M, arith_vars, fml, map);
|
spacer_qe::arith_project(*M, arith_vars, fml, map);
|
||||||
}
|
}
|
||||||
SASSERT(arith_vars.empty());
|
SASSERT(arith_vars.empty());
|
||||||
TRACE("spacer",
|
TRACE("spacer",
|
||||||
|
|
|
@ -41,7 +41,7 @@ Revision History:
|
||||||
#include "muz/spacer/spacer_mev_array.h"
|
#include "muz/spacer/spacer_mev_array.h"
|
||||||
#include "muz/spacer/spacer_qe_project.h"
|
#include "muz/spacer/spacer_qe_project.h"
|
||||||
|
|
||||||
namespace
|
namespace spacer_qe
|
||||||
{
|
{
|
||||||
bool is_partial_eq (app* a);
|
bool is_partial_eq (app* a);
|
||||||
|
|
||||||
|
@ -186,7 +186,7 @@ bool is_partial_eq (app* a) {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
namespace qe {
|
namespace spacer_qe {
|
||||||
|
|
||||||
class is_relevant_default : public i_expr_pred {
|
class is_relevant_default : public i_expr_pred {
|
||||||
public:
|
public:
|
||||||
|
@ -195,7 +195,7 @@ namespace qe {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
class mk_atom_default : public i_nnf_atom {
|
class mk_atom_default : public qe::i_nnf_atom {
|
||||||
public:
|
public:
|
||||||
void operator()(expr* e, bool pol, expr_ref& result) override {
|
void operator()(expr* e, bool pol, expr_ref& result) override {
|
||||||
if (pol) result = e;
|
if (pol) result = e;
|
||||||
|
@ -2254,7 +2254,7 @@ namespace qe {
|
||||||
void arith_project(model& mdl, app_ref_vector& vars, expr_ref& fml) {
|
void arith_project(model& mdl, app_ref_vector& vars, expr_ref& fml) {
|
||||||
ast_manager& m = vars.get_manager();
|
ast_manager& m = vars.get_manager();
|
||||||
arith_project_util ap(m);
|
arith_project_util ap(m);
|
||||||
atom_set pos_lits, neg_lits;
|
qe::atom_set pos_lits, neg_lits;
|
||||||
is_relevant_default is_relevant;
|
is_relevant_default is_relevant;
|
||||||
mk_atom_default mk_atom;
|
mk_atom_default mk_atom;
|
||||||
get_nnf (fml, is_relevant, mk_atom, pos_lits, neg_lits);
|
get_nnf (fml, is_relevant, mk_atom, pos_lits, neg_lits);
|
||||||
|
@ -2264,7 +2264,7 @@ namespace qe {
|
||||||
void arith_project(model& mdl, app_ref_vector& vars, expr_ref& fml, expr_map& map) {
|
void arith_project(model& mdl, app_ref_vector& vars, expr_ref& fml, expr_map& map) {
|
||||||
ast_manager& m = vars.get_manager();
|
ast_manager& m = vars.get_manager();
|
||||||
arith_project_util ap(m);
|
arith_project_util ap(m);
|
||||||
atom_set pos_lits, neg_lits;
|
qe::atom_set pos_lits, neg_lits;
|
||||||
is_relevant_default is_relevant;
|
is_relevant_default is_relevant;
|
||||||
mk_atom_default mk_atom;
|
mk_atom_default mk_atom;
|
||||||
get_nnf (fml, is_relevant, mk_atom, pos_lits, neg_lits);
|
get_nnf (fml, is_relevant, mk_atom, pos_lits, neg_lits);
|
||||||
|
|
|
@ -23,7 +23,7 @@ Notes:
|
||||||
#include "model/model.h"
|
#include "model/model.h"
|
||||||
#include "ast/expr_map.h"
|
#include "ast/expr_map.h"
|
||||||
|
|
||||||
namespace qe {
|
namespace spacer_qe {
|
||||||
/**
|
/**
|
||||||
Loos-Weispfenning model-based projection for a basic conjunction.
|
Loos-Weispfenning model-based projection for a basic conjunction.
|
||||||
Lits is a vector of literals.
|
Lits is a vector of literals.
|
||||||
|
|
|
@ -545,7 +545,7 @@ namespace spacer {
|
||||||
scoped_no_proof _sp (m);
|
scoped_no_proof _sp (m);
|
||||||
// -- local rewriter that is aware of current proof mode
|
// -- local rewriter that is aware of current proof mode
|
||||||
th_rewriter srw(m);
|
th_rewriter srw(m);
|
||||||
qe::array_project (*M.get (), array_vars, fml, vars, reduce_all_selects);
|
spacer_qe::array_project (*M.get (), array_vars, fml, vars, reduce_all_selects);
|
||||||
SASSERT (array_vars.empty ());
|
SASSERT (array_vars.empty ());
|
||||||
srw (fml);
|
srw (fml);
|
||||||
SASSERT (!m.is_false (fml));
|
SASSERT (!m.is_false (fml));
|
||||||
|
@ -582,7 +582,7 @@ namespace spacer {
|
||||||
SASSERT (arith_vars.empty ());
|
SASSERT (arith_vars.empty ());
|
||||||
} else {
|
} else {
|
||||||
scoped_no_proof _sp (m);
|
scoped_no_proof _sp (m);
|
||||||
qe::arith_project (*M.get (), arith_vars, fml);
|
spacer_qe::arith_project (*M.get (), arith_vars, fml);
|
||||||
}
|
}
|
||||||
|
|
||||||
TRACE ("spacer_mbp",
|
TRACE ("spacer_mbp",
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue