mirror of
https://github.com/Z3Prover/z3
synced 2025-10-28 10:19:23 +00:00
Use nullptr.
This commit is contained in:
parent
f01328c65f
commit
76eb7b9ede
625 changed files with 4639 additions and 4639 deletions
|
|
@ -82,7 +82,7 @@ namespace datalog {
|
|||
void get_labels(proof* p, labels&);
|
||||
|
||||
public:
|
||||
boogie_proof(ast_manager& m): m(m), m_proof(m), m_model(0) {}
|
||||
boogie_proof(ast_manager& m): m(m), m_proof(m), m_model(nullptr) {}
|
||||
|
||||
void set_proof(proof* p);
|
||||
|
||||
|
|
|
|||
|
|
@ -154,7 +154,7 @@ namespace datalog {
|
|||
rule_set* m_old_rules;
|
||||
void reset() {
|
||||
dealloc(m_old_rules);
|
||||
m_old_rules = 0;
|
||||
m_old_rules = nullptr;
|
||||
}
|
||||
public:
|
||||
restore_rules(rule_set& r): m_old_rules(alloc(rule_set, r)) {}
|
||||
|
|
@ -221,9 +221,9 @@ namespace datalog {
|
|||
m_rule_fmls_head(0),
|
||||
m_rule_fmls(m),
|
||||
m_background(m),
|
||||
m_mc(0),
|
||||
m_rel(0),
|
||||
m_engine(0),
|
||||
m_mc(nullptr),
|
||||
m_rel(nullptr),
|
||||
m_engine(nullptr),
|
||||
m_closed(false),
|
||||
m_saturation_was_run(false),
|
||||
m_enable_bind_variables(true),
|
||||
|
|
@ -251,8 +251,8 @@ namespace datalog {
|
|||
m_preds.reset();
|
||||
m_preds_by_name.reset();
|
||||
reset_dealloc_values(m_sorts);
|
||||
m_engine = 0;
|
||||
m_rel = 0;
|
||||
m_engine = nullptr;
|
||||
m_rel = nullptr;
|
||||
}
|
||||
|
||||
bool context::is_fact(app * head) const {
|
||||
|
|
@ -465,7 +465,7 @@ namespace datalog {
|
|||
scoped_proof_mode _scp(m, generate_proof_trace()?PGM_ENABLED:PGM_DISABLED);
|
||||
while (m_rule_fmls_head < m_rule_fmls.size()) {
|
||||
expr* fml = m_rule_fmls[m_rule_fmls_head].get();
|
||||
proof* p = generate_proof_trace()?m.mk_asserted(fml):0;
|
||||
proof* p = generate_proof_trace()?m.mk_asserted(fml):nullptr;
|
||||
rm.mk_rule(fml, p, m_rule_set, m_rule_names[m_rule_fmls_head]);
|
||||
++m_rule_fmls_head;
|
||||
}
|
||||
|
|
@ -478,7 +478,7 @@ namespace datalog {
|
|||
//
|
||||
void context::update_rule(expr* rl, symbol const& name) {
|
||||
datalog::rule_manager& rm = get_rule_manager();
|
||||
proof* p = 0;
|
||||
proof* p = nullptr;
|
||||
if (generate_proof_trace()) {
|
||||
p = m.mk_asserted(rl);
|
||||
}
|
||||
|
|
@ -493,7 +493,7 @@ namespace datalog {
|
|||
// The new rule is inserted last:
|
||||
rule_ref r(m_rule_set.get_rule(size_before), rm);
|
||||
rule_ref_vector const& rls = m_rule_set.get_rules();
|
||||
rule* old_rule = 0;
|
||||
rule* old_rule = nullptr;
|
||||
for (unsigned i = 0; i < size_before; ++i) {
|
||||
if (rls[i]->name() == name) {
|
||||
if (old_rule) {
|
||||
|
|
@ -861,8 +861,8 @@ namespace datalog {
|
|||
lbool context::query(expr* query) {
|
||||
m_mc = mk_skip_model_converter();
|
||||
m_last_status = OK;
|
||||
m_last_answer = 0;
|
||||
m_last_ground_answer = 0;
|
||||
m_last_answer = nullptr;
|
||||
m_last_ground_answer = nullptr;
|
||||
switch (get_engine()) {
|
||||
case DATALOG_ENGINE:
|
||||
case SPACER_ENGINE:
|
||||
|
|
@ -890,8 +890,8 @@ namespace datalog {
|
|||
lbool context::query_from_lvl (expr* query, unsigned lvl) {
|
||||
m_mc = mk_skip_model_converter();
|
||||
m_last_status = OK;
|
||||
m_last_answer = 0;
|
||||
m_last_ground_answer = 0;
|
||||
m_last_answer = nullptr;
|
||||
m_last_ground_answer = nullptr;
|
||||
switch (get_engine()) {
|
||||
case DATALOG_ENGINE:
|
||||
case SPACER_ENGINE:
|
||||
|
|
@ -933,7 +933,7 @@ namespace datalog {
|
|||
}
|
||||
|
||||
lbool context::rel_query(unsigned num_rels, func_decl * const* rels) {
|
||||
m_last_answer = 0;
|
||||
m_last_answer = nullptr;
|
||||
ensure_engine();
|
||||
return m_engine->query(num_rels, rels);
|
||||
}
|
||||
|
|
@ -1059,7 +1059,7 @@ namespace datalog {
|
|||
for (unsigned i = m_rule_fmls_head; i < m_rule_fmls.size(); ++i) {
|
||||
m_free_vars(m_rule_fmls[i].get());
|
||||
if (!m_free_vars.empty()) {
|
||||
rm.mk_rule(m_rule_fmls[i].get(), 0, m_rule_set, m_rule_names[i]);
|
||||
rm.mk_rule(m_rule_fmls[i].get(), nullptr, m_rule_set, m_rule_names[i]);
|
||||
m_rule_fmls[i] = m_rule_fmls.back();
|
||||
m_rule_names[i] = m_rule_names.back();
|
||||
m_rule_fmls.pop_back();
|
||||
|
|
|
|||
|
|
@ -331,7 +331,7 @@ namespace datalog {
|
|||
names. Generally, the names coming from the parses are registered here.
|
||||
*/
|
||||
func_decl * try_get_predicate_decl(symbol const& pred_name) const {
|
||||
func_decl * res = 0;
|
||||
func_decl * res = nullptr;
|
||||
m_preds_by_name.find(pred_name, res);
|
||||
return res;
|
||||
}
|
||||
|
|
@ -341,7 +341,7 @@ namespace datalog {
|
|||
|
||||
*/
|
||||
func_decl * mk_fresh_head_predicate(symbol const & prefix, symbol const & suffix,
|
||||
unsigned arity, sort * const * domain, func_decl* orig_pred=0);
|
||||
unsigned arity, sort * const * domain, func_decl* orig_pred=nullptr);
|
||||
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -128,7 +128,7 @@ namespace datalog {
|
|||
//
|
||||
// -----------------------------------
|
||||
|
||||
cost_recorder::cost_recorder() : m_obj(0) {
|
||||
cost_recorder::cost_recorder() : m_obj(nullptr) {
|
||||
m_stopwatch = alloc(stopwatch);
|
||||
m_stopwatch->start();
|
||||
}
|
||||
|
|
@ -149,7 +149,7 @@ namespace datalog {
|
|||
c.milliseconds+=time_delta;
|
||||
m_obj->m_being_recorded = false;
|
||||
}
|
||||
m_running = obj!=0;
|
||||
m_running = obj!=nullptr;
|
||||
m_obj = obj;
|
||||
m_last_time = curr_time;
|
||||
if(obj) {
|
||||
|
|
|
|||
|
|
@ -63,7 +63,7 @@ namespace datalog {
|
|||
costs m_processed_cost;
|
||||
bool m_being_recorded;
|
||||
protected:
|
||||
accounted_object() : m_context(0), m_parent_object(0), m_being_recorded(false) {}
|
||||
accounted_object() : m_context(nullptr), m_parent_object(nullptr), m_being_recorded(false) {}
|
||||
~accounted_object();
|
||||
public:
|
||||
|
||||
|
|
@ -107,7 +107,7 @@ namespace datalog {
|
|||
before separately.
|
||||
*/
|
||||
void start(accounted_object *);
|
||||
void finish() { start(0); }
|
||||
void finish() { start(nullptr); }
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -81,7 +81,7 @@ namespace datalog {
|
|||
}
|
||||
|
||||
var_idx_set& rule_manager::collect_vars(expr* e) {
|
||||
return collect_vars(e, 0);
|
||||
return collect_vars(e, nullptr);
|
||||
}
|
||||
|
||||
var_idx_set& rule_manager::collect_vars(expr* e1, expr* e2) {
|
||||
|
|
@ -274,11 +274,11 @@ namespace datalog {
|
|||
bind_variables(query, false, q);
|
||||
|
||||
quantifier_hoister qh(m);
|
||||
qh.pull_quantifier(false, q, 0, &names);
|
||||
qh.pull_quantifier(false, q, nullptr, &names);
|
||||
// retrieve free variables.
|
||||
m_free_vars(q);
|
||||
vars.append(m_free_vars.size(), m_free_vars.c_ptr());
|
||||
if (vars.contains(static_cast<sort*>(0))) {
|
||||
if (vars.contains(static_cast<sort*>(nullptr))) {
|
||||
var_subst sub(m, false);
|
||||
expr_ref_vector args(m);
|
||||
// [s0, 0, s2, ..]
|
||||
|
|
@ -306,7 +306,7 @@ namespace datalog {
|
|||
}
|
||||
body.push_back(to_app(q));
|
||||
flatten_body(body);
|
||||
func_decl* body_pred = 0;
|
||||
func_decl* body_pred = nullptr;
|
||||
for (unsigned i = 0; i < body.size(); i++) {
|
||||
if (is_uninterp(body[i].get())) {
|
||||
body_pred = body[i]->get_decl();
|
||||
|
|
@ -472,7 +472,7 @@ namespace datalog {
|
|||
r->m_head = head;
|
||||
r->m_name = name;
|
||||
r->m_tail_size = n;
|
||||
r->m_proof = 0;
|
||||
r->m_proof = nullptr;
|
||||
m.inc_ref(r->m_head);
|
||||
|
||||
app * * uninterp_tail = r->m_tail; //grows upwards
|
||||
|
|
@ -482,7 +482,7 @@ namespace datalog {
|
|||
bool has_neg = false;
|
||||
|
||||
for (unsigned i = 0; i < n; i++) {
|
||||
bool is_neg = (is_negated != 0 && is_negated[i]);
|
||||
bool is_neg = (is_negated != nullptr && is_negated[i]);
|
||||
app * curr = tail[i];
|
||||
|
||||
if (is_neg && !m_ctx.is_predicate(curr)) {
|
||||
|
|
@ -548,7 +548,7 @@ namespace datalog {
|
|||
r->m_tail_size = n;
|
||||
r->m_positive_cnt = source->m_positive_cnt;
|
||||
r->m_uninterp_cnt = source->m_uninterp_cnt;
|
||||
r->m_proof = 0;
|
||||
r->m_proof = nullptr;
|
||||
m.inc_ref(r->m_head);
|
||||
for (unsigned i = 0; i < n; i++) {
|
||||
r->m_tail[i] = source->m_tail[i];
|
||||
|
|
@ -978,7 +978,7 @@ namespace datalog {
|
|||
subst_vals.push_back(m.mk_var(next_fresh_var++, var_srt));
|
||||
}
|
||||
else {
|
||||
subst_vals.push_back(0);
|
||||
subst_vals.push_back(nullptr);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -54,7 +54,7 @@ namespace datalog {
|
|||
bool m_found;
|
||||
func_decl* m_func;
|
||||
uninterpreted_function_finder_proc(ast_manager& m):
|
||||
m(m), m_dt(m), m_dl(m), m_found(false), m_func(0) {}
|
||||
m(m), m_dt(m), m_dl(m), m_found(false), m_func(nullptr) {}
|
||||
void operator()(var * n) { }
|
||||
void operator()(quantifier * n) { }
|
||||
void operator()(app * n) {
|
||||
|
|
@ -71,7 +71,7 @@ namespace datalog {
|
|||
}
|
||||
}
|
||||
}
|
||||
void reset() { m_found = false; m_func = 0; }
|
||||
void reset() { m_found = false; m_func = nullptr; }
|
||||
|
||||
bool found(func_decl*& f) const { f = m_func; return m_found; }
|
||||
};
|
||||
|
|
@ -209,7 +209,7 @@ namespace datalog {
|
|||
|
||||
\remark A tail may contain negation. tail[i] is assumed to be negated if is_neg != 0 && is_neg[i] == true
|
||||
*/
|
||||
rule * mk(app * head, unsigned n, app * const * tail, bool const * is_neg = 0,
|
||||
rule * mk(app * head, unsigned n, app * const * tail, bool const * is_neg = nullptr,
|
||||
symbol const& name = symbol::null, bool normalize = true);
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -282,7 +282,7 @@ namespace datalog {
|
|||
m_rule_manager(ctx.get_rule_manager()),
|
||||
m_rules(m_rule_manager),
|
||||
m_deps(ctx),
|
||||
m_stratifier(0),
|
||||
m_stratifier(nullptr),
|
||||
m_refs(ctx.get_manager()) {
|
||||
}
|
||||
|
||||
|
|
@ -291,7 +291,7 @@ namespace datalog {
|
|||
m_rule_manager(other.m_rule_manager),
|
||||
m_rules(m_rule_manager),
|
||||
m_deps(other.m_context),
|
||||
m_stratifier(0),
|
||||
m_stratifier(nullptr),
|
||||
m_refs(m_context.get_manager()) {
|
||||
add_rules(other);
|
||||
if (other.m_stratifier) {
|
||||
|
|
@ -307,7 +307,7 @@ namespace datalog {
|
|||
m_rules.reset();
|
||||
reset_dealloc_values(m_head2rules);
|
||||
m_deps.reset();
|
||||
m_stratifier = 0;
|
||||
m_stratifier = nullptr;
|
||||
m_output_preds.reset();
|
||||
m_orig2pred.reset();
|
||||
m_pred2orig.reset();
|
||||
|
|
@ -401,7 +401,7 @@ namespace datalog {
|
|||
m_deps.populate(*this);
|
||||
m_stratifier = alloc(rule_stratifier, m_deps);
|
||||
if (!stratified_negation()) {
|
||||
m_stratifier = 0;
|
||||
m_stratifier = nullptr;
|
||||
m_deps.reset();
|
||||
return false;
|
||||
}
|
||||
|
|
@ -410,7 +410,7 @@ namespace datalog {
|
|||
|
||||
void rule_set::reopen() {
|
||||
if (is_closed()) {
|
||||
m_stratifier = 0;
|
||||
m_stratifier = nullptr;
|
||||
m_deps.reset();
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -87,7 +87,7 @@ namespace datalog {
|
|||
(higher priority plugins will be applied first).
|
||||
*/
|
||||
plugin(unsigned priority, bool can_destratify_negation = false) : m_priority(priority),
|
||||
m_can_destratify_negation(can_destratify_negation), m_transformer(0) {}
|
||||
m_can_destratify_negation(can_destratify_negation), m_transformer(nullptr) {}
|
||||
|
||||
public:
|
||||
virtual ~plugin() {}
|
||||
|
|
|
|||
|
|
@ -34,7 +34,7 @@ Revision History:
|
|||
|
||||
namespace datalog {
|
||||
|
||||
verbose_action::verbose_action(char const* msg, unsigned lvl): m_lvl(lvl), m_sw(0) {
|
||||
verbose_action::verbose_action(char const* msg, unsigned lvl): m_lvl(lvl), m_sw(nullptr) {
|
||||
IF_VERBOSE(m_lvl,
|
||||
(verbose_stream() << msg << "...").flush();
|
||||
m_sw = alloc(stopwatch);
|
||||
|
|
@ -87,7 +87,7 @@ namespace datalog {
|
|||
else {
|
||||
SASSERT(is_var(arg));
|
||||
int vidx = to_var(arg)->get_idx();
|
||||
var * new_var = 0;
|
||||
var * new_var = nullptr;
|
||||
if (!varidx2var.find(vidx, new_var)) {
|
||||
new_var = m.mk_var(next_idx, to_var(arg)->get_sort());
|
||||
next_idx++;
|
||||
|
|
@ -428,7 +428,7 @@ namespace datalog {
|
|||
|
||||
unsigned tgt_sz = max_var_idx+1;
|
||||
unsigned tgt_ofs = tgt_sz-1;
|
||||
tgt.resize(tgt_sz, 0);
|
||||
tgt.resize(tgt_sz, nullptr);
|
||||
for(unsigned i=0; i<src_sz; i++) {
|
||||
expr * e = src[src_ofs-i];
|
||||
if(!e) {
|
||||
|
|
@ -446,7 +446,7 @@ namespace datalog {
|
|||
out << "(";
|
||||
for(int i=len-1; i>=0; i--) {
|
||||
out << (len-1-i) <<"->";
|
||||
if(cont.get(i)==0) {
|
||||
if(cont.get(i)==nullptr) {
|
||||
out << "{none}";
|
||||
}
|
||||
else {
|
||||
|
|
|
|||
|
|
@ -153,7 +153,7 @@ public:
|
|||
m_fresh_predicates.reset();
|
||||
m_todo.push_back(n);
|
||||
m_proofs.push_back(p);
|
||||
m_produce_proofs = p != 0;
|
||||
m_produce_proofs = p != nullptr;
|
||||
while (!m_todo.empty() && checkpoint()) {
|
||||
fml = m_todo.back();
|
||||
pr = m_proofs.back();
|
||||
|
|
@ -269,7 +269,7 @@ private:
|
|||
expr* const* args = _or->get_args();
|
||||
for (unsigned i = 0; i < sz; ++i) {
|
||||
m_todo.push_back(bind_variables(m.mk_implies(args[i], head)));
|
||||
m_proofs.push_back(0);
|
||||
m_proofs.push_back(nullptr);
|
||||
}
|
||||
|
||||
if (premise) {
|
||||
|
|
@ -284,7 +284,7 @@ private:
|
|||
m_proofs[m_proofs.size()-sz+i] = m.mk_and_elim(p2, i);
|
||||
}
|
||||
}
|
||||
fml = 0;
|
||||
fml = nullptr;
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
@ -330,7 +330,7 @@ private:
|
|||
bool is_disj = false;
|
||||
expr_ref_vector _body(m);
|
||||
unsigned num_disj = 0;
|
||||
expr* const* disjs = 0;
|
||||
expr* const* disjs = nullptr;
|
||||
if (!contains_predicate(b)) {
|
||||
return;
|
||||
}
|
||||
|
|
@ -356,7 +356,7 @@ private:
|
|||
negate_args = false;
|
||||
}
|
||||
if (is_disj) {
|
||||
app* old_head = 0;
|
||||
app* old_head = nullptr;
|
||||
if (m_memoize_disj.find(b, old_head)) {
|
||||
body = old_head;
|
||||
}
|
||||
|
|
@ -369,7 +369,7 @@ private:
|
|||
e = m.mk_not(e);
|
||||
}
|
||||
m_todo.push_back(bind_variables(m.mk_implies(e, head)));
|
||||
m_proofs.push_back(0);
|
||||
m_proofs.push_back(nullptr);
|
||||
if (produce_proofs()) {
|
||||
defs.push_back(m.mk_def_intro(m_todo.back()));
|
||||
m_proofs[m_proofs.size()-1] = defs.back();
|
||||
|
|
@ -423,7 +423,7 @@ private:
|
|||
if (!is_predicate(e)) {
|
||||
app_ref head = mk_fresh_head(e);
|
||||
m_todo.push_back(bind_variables(m.mk_implies(e, head)));
|
||||
m_proofs.push_back(0);
|
||||
m_proofs.push_back(nullptr);
|
||||
body = m.update_quantifier(q, head);
|
||||
if (produce_proofs()) {
|
||||
proof* def_intro = m.mk_def_intro(m_todo.back());
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue