mirror of
https://github.com/Z3Prover/z3
synced 2025-04-23 17:15:31 +00:00
call it data instead of c_ptr for approaching C++11 std::vector convention.
This commit is contained in:
parent
524dcd35f9
commit
4a6083836a
456 changed files with 2802 additions and 2802 deletions
|
@ -318,11 +318,11 @@ public:
|
|||
}
|
||||
first = false;
|
||||
m_last_index = index;
|
||||
is_sat = check_sat(index, asms.c_ptr());
|
||||
is_sat = check_sat(index, asms.data());
|
||||
}
|
||||
}
|
||||
else {
|
||||
is_sat = check_sat(asms.size(), asms.c_ptr());
|
||||
is_sat = check_sat(asms.size(), asms.data());
|
||||
}
|
||||
return is_sat;
|
||||
}
|
||||
|
@ -390,7 +390,7 @@ public:
|
|||
model_ref mdl;
|
||||
get_mus_model(mdl);
|
||||
is_sat = minimize_core(_core);
|
||||
core.append(_core.size(), _core.c_ptr());
|
||||
core.append(_core.size(), _core.data());
|
||||
DEBUG_CODE(verify_core(core););
|
||||
++m_stats.m_num_cores;
|
||||
if (is_sat != l_true) {
|
||||
|
@ -459,11 +459,11 @@ public:
|
|||
|
||||
void sort_assumptions(expr_ref_vector& _asms) {
|
||||
compare_asm comp(*this);
|
||||
exprs asms(_asms.size(), _asms.c_ptr());
|
||||
exprs asms(_asms.size(), _asms.data());
|
||||
expr_ref_vector trail(_asms);
|
||||
std::sort(asms.begin(), asms.end(), comp);
|
||||
_asms.reset();
|
||||
_asms.append(asms.size(), asms.c_ptr());
|
||||
_asms.append(asms.size(), asms.data());
|
||||
DEBUG_CODE(
|
||||
for (unsigned i = 0; i + 1 < asms.size(); ++i) {
|
||||
SASSERT(get_weight(asms[i]) >= get_weight(asms[i+1]));
|
||||
|
@ -536,7 +536,7 @@ public:
|
|||
TRACE("opt", display_vec(tout << "minimized core: ", core););
|
||||
IF_VERBOSE(10, display_vec(verbose_stream() << "core: ", core););
|
||||
max_resolve(core, w);
|
||||
fml = mk_not(m, mk_and(m, core.size(), core.c_ptr()));
|
||||
fml = mk_not(m, mk_and(m, core.size(), core.data()));
|
||||
add(fml);
|
||||
// save small cores such that lex-combinations of maxres can reuse these cores.
|
||||
if (core.size() <= 2) {
|
||||
|
@ -593,7 +593,7 @@ public:
|
|||
return l_true;
|
||||
}
|
||||
m_mus.reset();
|
||||
m_mus.add_soft(core.size(), core.c_ptr());
|
||||
m_mus.add_soft(core.size(), core.data());
|
||||
lbool is_sat = m_mus.get_mus(m_new_core);
|
||||
if (is_sat != l_true) {
|
||||
return is_sat;
|
||||
|
@ -631,11 +631,11 @@ public:
|
|||
}
|
||||
|
||||
void display_vec(std::ostream& out, exprs const& exprs) {
|
||||
display_vec(out, exprs.size(), exprs.c_ptr());
|
||||
display_vec(out, exprs.size(), exprs.data());
|
||||
}
|
||||
|
||||
void display_vec(std::ostream& out, expr_ref_vector const& exprs) {
|
||||
display_vec(out, exprs.size(), exprs.c_ptr());
|
||||
display_vec(out, exprs.size(), exprs.data());
|
||||
}
|
||||
|
||||
void display_vec(std::ostream& out, unsigned sz, expr* const* args) const {
|
||||
|
@ -656,7 +656,7 @@ public:
|
|||
expr_ref fml(m), asum(m);
|
||||
app_ref cls(m), d(m), dd(m);
|
||||
m_B.reset();
|
||||
m_B.append(core.size(), core.c_ptr());
|
||||
m_B.append(core.size(), core.data());
|
||||
//
|
||||
// d_0 := true
|
||||
// d_i := b_{i-1} and d_{i-1} for i = 1...sz-1
|
||||
|
@ -708,7 +708,7 @@ public:
|
|||
expr_ref fml(m), asum(m);
|
||||
app_ref cls(m), d(m), dd(m);
|
||||
m_B.reset();
|
||||
m_B.append(cs.size(), cs.c_ptr());
|
||||
m_B.append(cs.size(), cs.data());
|
||||
d = m.mk_false();
|
||||
//
|
||||
// d_0 := false
|
||||
|
@ -771,7 +771,7 @@ public:
|
|||
void relax_cores(vector<expr_ref_vector> const& cores) {
|
||||
vector<weighted_core> wcores;
|
||||
for (auto & core : cores) {
|
||||
exprs _core(core.size(), core.c_ptr());
|
||||
exprs _core(core.size(), core.data());
|
||||
wcores.push_back(weighted_core(_core, core_weight(_core)));
|
||||
remove_soft(_core, m_asms);
|
||||
split_core(_core);
|
||||
|
@ -842,7 +842,7 @@ public:
|
|||
nsoft.push_back(mk_not(m, s.s));
|
||||
weights.push_back(s.weight);
|
||||
}
|
||||
fml = u.mk_lt(nsoft.size(), weights.c_ptr(), nsoft.c_ptr(), m_upper);
|
||||
fml = u.mk_lt(nsoft.size(), weights.data(), nsoft.data(), m_upper);
|
||||
TRACE("opt", tout << "block upper bound " << fml << "\n";);;
|
||||
add(fml);
|
||||
}
|
||||
|
@ -906,7 +906,7 @@ public:
|
|||
|
||||
void verify_core(exprs const& core) {
|
||||
return;
|
||||
IF_VERBOSE(1, verbose_stream() << "verify core " << s().check_sat(core.size(), core.c_ptr()) << "\n";);
|
||||
IF_VERBOSE(1, verbose_stream() << "verify core " << s().check_sat(core.size(), core.data()) << "\n";);
|
||||
ref<solver> _solver = mk_smt_solver(m, m_params, symbol());
|
||||
_solver->assert_expr(s().get_assertions());
|
||||
_solver->assert_expr(core);
|
||||
|
|
|
@ -72,7 +72,7 @@ namespace opt {
|
|||
fmls.push_back(s.s);
|
||||
}
|
||||
pb_util pb(m);
|
||||
tmp = pb.mk_ge(weights.size(), weights.c_ptr(), fmls.c_ptr(), k);
|
||||
tmp = pb.mk_ge(weights.size(), weights.data(), fmls.data(), k);
|
||||
TRACE("opt", tout << "cost: " << cost << "\n" << tmp << "\n";);
|
||||
s().assert_expr(tmp);
|
||||
}
|
||||
|
@ -194,10 +194,10 @@ namespace opt {
|
|||
return;
|
||||
}
|
||||
maxsmt_compare_soft cmp(new_soft);
|
||||
ptr_vector<expr> _mutex(mutex.size(), mutex.c_ptr());
|
||||
ptr_vector<expr> _mutex(mutex.size(), mutex.data());
|
||||
std::sort(_mutex.begin(), _mutex.end(), cmp);
|
||||
mutex.reset();
|
||||
mutex.append(_mutex.size(), _mutex.c_ptr());
|
||||
mutex.append(_mutex.size(), _mutex.data());
|
||||
|
||||
rational weight(0), sum1(0), sum2(0);
|
||||
vector<rational> weights;
|
||||
|
@ -208,7 +208,7 @@ namespace opt {
|
|||
new_soft.remove(e);
|
||||
}
|
||||
for (unsigned i = mutex.size(); i-- > 0; ) {
|
||||
expr_ref soft(m.mk_or(i+1, mutex.c_ptr()), m);
|
||||
expr_ref soft(m.mk_or(i+1, mutex.data()), m);
|
||||
m_trail.push_back(soft);
|
||||
rational w = weights[i];
|
||||
weight = w - weight;
|
||||
|
|
|
@ -215,7 +215,7 @@ namespace opt {
|
|||
for (unsigned i = 0; i < o.m_terms.size(); ++i) {
|
||||
args.push_back(m.mk_ite(o.m_terms[i], zero, m_arith.mk_numeral(o.m_weights[i], false)));
|
||||
}
|
||||
result = m_arith.mk_add(args.size(), args.c_ptr());
|
||||
result = m_arith.mk_add(args.size(), args.data());
|
||||
break;
|
||||
case O_MAXIMIZE:
|
||||
result = o.m_term;
|
||||
|
@ -299,7 +299,7 @@ namespace opt {
|
|||
|
||||
IF_VERBOSE(1, verbose_stream() << "(optimize:check-sat)\n");
|
||||
|
||||
lbool is_sat = s.check_sat(asms.size(),asms.c_ptr());
|
||||
lbool is_sat = s.check_sat(asms.size(),asms.data());
|
||||
|
||||
TRACE("opt", s.display(tout << "initial search result: " << is_sat << "\n"););
|
||||
if (is_sat != l_false) {
|
||||
|
@ -581,10 +581,10 @@ namespace opt {
|
|||
}
|
||||
}
|
||||
if (is_ge) {
|
||||
result = pb.mk_ge(sz, coeffs.c_ptr(), terms.c_ptr(), k);
|
||||
result = pb.mk_ge(sz, coeffs.data(), terms.data(), k);
|
||||
}
|
||||
else {
|
||||
result = pb.mk_le(sz, coeffs.c_ptr(), terms.c_ptr(), k);
|
||||
result = pb.mk_le(sz, coeffs.data(), terms.data(), k);
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
@ -869,7 +869,7 @@ namespace opt {
|
|||
expr_dependency_ref core(r->dep(i), m);
|
||||
m.linearize(core, deps);
|
||||
if (!deps.empty()) {
|
||||
fmls.push_back(m.mk_implies(m.mk_and(deps.size(), deps.c_ptr()), r->form(i)));
|
||||
fmls.push_back(m.mk_implies(m.mk_and(deps.size(), deps.data()), r->form(i)));
|
||||
}
|
||||
else {
|
||||
fmls.push_back(r->form(i));
|
||||
|
@ -879,7 +879,7 @@ namespace opt {
|
|||
ptr_vector<expr> core_elems;
|
||||
expr_dependency_ref core(r->dep(0), m);
|
||||
m.linearize(core, core_elems);
|
||||
m_core.append(core_elems.size(), core_elems.c_ptr());
|
||||
m_core.append(core_elems.size(), core_elems.data());
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1029,7 +1029,7 @@ namespace opt {
|
|||
case O_MAXSMT: name = "maxsat"; break;
|
||||
default: break;
|
||||
}
|
||||
func_decl* f = m.mk_fresh_func_decl(name,"", domain.size(), domain.c_ptr(), m.mk_bool_sort());
|
||||
func_decl* f = m.mk_fresh_func_decl(name,"", domain.size(), domain.data(), m.mk_bool_sort());
|
||||
m_objective_fns.insert(f, index);
|
||||
m_objective_refs.push_back(f);
|
||||
m_objective_orig.insert(f, sz > 0 ? args[0] : nullptr);
|
||||
|
@ -1175,7 +1175,7 @@ namespace opt {
|
|||
args.push_back(purify(fm, arg));
|
||||
}
|
||||
}
|
||||
term = m_arith.mk_add(args.size(), args.c_ptr());
|
||||
term = m_arith.mk_add(args.size(), args.data());
|
||||
}
|
||||
else if (m.is_ite(term) || !is_mul_const(term)) {
|
||||
TRACE("opt", tout << "Purifying " << term << "\n";);
|
||||
|
@ -1247,7 +1247,7 @@ namespace opt {
|
|||
fmls.push_back(mk_maximize(i, obj.m_term));
|
||||
break;
|
||||
case O_MAXSMT:
|
||||
fmls.push_back(mk_maxsat(i, obj.m_terms.size(), obj.m_terms.c_ptr()));
|
||||
fmls.push_back(mk_maxsat(i, obj.m_terms.size(), obj.m_terms.data()));
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -1353,7 +1353,7 @@ namespace opt {
|
|||
) {
|
||||
objective& o = m_objectives[0];
|
||||
unsigned sz = o.m_terms.size();
|
||||
inc_sat_display(verbose_stream(), get_solver(), sz, o.m_terms.c_ptr(), o.m_weights.c_ptr());
|
||||
inc_sat_display(verbose_stream(), get_solver(), sz, o.m_terms.data(), o.m_weights.data());
|
||||
}
|
||||
|
||||
|
||||
|
@ -1481,7 +1481,7 @@ namespace opt {
|
|||
switch(args.size()) {
|
||||
case 0: return expr_ref(m_arith.mk_numeral(rational(0), true), m);
|
||||
case 1: return expr_ref(args[0].get(), m);
|
||||
default: return expr_ref(m_arith.mk_add(args.size(), args.c_ptr()), m);
|
||||
default: return expr_ref(m_arith.mk_add(args.size(), args.data()), m);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1582,7 +1582,7 @@ namespace opt {
|
|||
std::ostringstream strm;
|
||||
m_sat_solver = mk_inc_sat_solver(m, m_params);
|
||||
m_sat_solver->assert_expr(m_hard_constraints);
|
||||
inc_sat_display(strm, *m_sat_solver.get(), soft_f.size(), soft_f.c_ptr(), soft_w.c_ptr());
|
||||
inc_sat_display(strm, *m_sat_solver.get(), soft_f.size(), soft_f.data(), soft_w.data());
|
||||
return strm.str();
|
||||
}
|
||||
|
||||
|
|
|
@ -96,7 +96,7 @@ namespace opt {
|
|||
m_hardened.reset();
|
||||
for (expr* a : ctx.soft())
|
||||
m_is_assumption.mark(a);
|
||||
shuffle(m_unprocessed.size(), m_unprocessed.c_ptr(), m_rand);
|
||||
shuffle(m_unprocessed.size(), m_unprocessed.data(), m_rand);
|
||||
|
||||
model_ref mdl = m_best_model->copy();
|
||||
unsigned j = 0;
|
||||
|
|
|
@ -134,7 +134,7 @@ class wcnf {
|
|||
if (parsed_lit < 0) p = m.mk_not(p);
|
||||
ors.push_back(p);
|
||||
}
|
||||
result = to_app(mk_or(m, ors.size(), ors.c_ptr()));
|
||||
result = to_app(mk_or(m, ors.size(), ors.data()));
|
||||
return result;
|
||||
}
|
||||
|
||||
|
@ -222,7 +222,7 @@ class opb {
|
|||
in.skip_whitespace();
|
||||
while ('0' <= *in && *in <='9') num.push_back(*in), ++in;
|
||||
num.push_back(0);
|
||||
return rational(num.c_ptr());
|
||||
return rational(num.data());
|
||||
}
|
||||
|
||||
app_ref parse_coeff() {
|
||||
|
@ -410,7 +410,7 @@ private:
|
|||
c = in.ch();
|
||||
}
|
||||
m_buffer.push_back(0);
|
||||
m_tokens.push_back(asymbol(symbol(m_buffer.c_ptr()), in.line()));
|
||||
m_tokens.push_back(asymbol(symbol(m_buffer.data()), in.line()));
|
||||
IF_VERBOSE(10, verbose_stream() << "tok: " << m_tokens.back() << "\n");
|
||||
continue;
|
||||
}
|
||||
|
@ -456,7 +456,7 @@ private:
|
|||
}
|
||||
}
|
||||
m_buffer.push_back(0);
|
||||
m_tokens.push_back(asymbol(symbol(m_buffer.c_ptr()), in.line()));
|
||||
m_tokens.push_back(asymbol(symbol(m_buffer.data()), in.line()));
|
||||
IF_VERBOSE(10, verbose_stream() << "tok: " << m_tokens.back() << "\n");
|
||||
}
|
||||
}
|
||||
|
@ -868,7 +868,7 @@ private:
|
|||
}
|
||||
result.push_back(term);
|
||||
}
|
||||
return expr_ref(a.mk_add(result.size(), result.c_ptr()), m);
|
||||
return expr_ref(a.mk_add(result.size(), result.data()), m);
|
||||
}
|
||||
|
||||
expr_ref mk_var(symbol const& v) {
|
||||
|
|
|
@ -357,7 +357,7 @@ namespace opt {
|
|||
r.reset();
|
||||
buffer<symbol> tmp;
|
||||
m_context.get_relevant_labels(nullptr, tmp);
|
||||
r.append(tmp.size(), tmp.c_ptr());
|
||||
r.append(tmp.size(), tmp.data());
|
||||
}
|
||||
|
||||
void opt_solver::set_progress_callback(progress_callback * callback) {
|
||||
|
|
|
@ -433,7 +433,7 @@ namespace opt {
|
|||
for (unsigned i = 0; i < m_lower.size() && m.inc(); ++i) {
|
||||
if (m_lower[i] <= mid[i] && mid[i] <= m_upper[i] && m_lower[i] < m_upper[i]) {
|
||||
th.enable_record_conflict(bounds[i].get());
|
||||
lbool is_sat = m_s->check_sat(1, bounds.c_ptr() + i);
|
||||
lbool is_sat = m_s->check_sat(1, bounds.data() + i);
|
||||
switch(is_sat) {
|
||||
case l_true:
|
||||
IF_VERBOSE(2, verbose_stream() << "(optsmt lower bound for v" << m_vars[i] << " := " << m_upper[i] << ")\n";);
|
||||
|
|
|
@ -663,7 +663,7 @@ namespace smt {
|
|||
coeffs.push_back(pb.get_coeff(f2, i));
|
||||
k += pb.get_coeff(f2, i);
|
||||
}
|
||||
tmp = pb.mk_ge(coeffs.size(), coeffs.c_ptr(), args.c_ptr(), k);
|
||||
tmp = pb.mk_ge(coeffs.size(), coeffs.data(), args.data(), k);
|
||||
return compile_clause(tmp, cls);
|
||||
}
|
||||
else if (pb.is_ge(f) || pb.is_eq(f)) {
|
||||
|
|
|
@ -67,7 +67,7 @@ namespace opt {
|
|||
--n;
|
||||
}
|
||||
}
|
||||
m_sort.sorting(in.size(), in.c_ptr(), out);
|
||||
m_sort.sorting(in.size(), in.data(), out);
|
||||
|
||||
// initialize sorting network outputs using the initial assignment.
|
||||
unsigned first = 0;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue