mirror of
https://github.com/Z3Prover/z3
synced 2025-06-27 00:18:45 +00:00
refactoring to use for-range
This commit is contained in:
parent
7ebe7c46b9
commit
47c12f9a18
7 changed files with 20 additions and 26 deletions
|
@ -652,8 +652,8 @@ namespace datalog {
|
||||||
void init_ctx(rule_set& rules) {
|
void init_ctx(rule_set& rules) {
|
||||||
m_inner_ctx.reset();
|
m_inner_ctx.reset();
|
||||||
func_decl_set const& predicates = m_ctx.get_predicates();
|
func_decl_set const& predicates = m_ctx.get_predicates();
|
||||||
for (func_decl_set::iterator fit = predicates.begin(); fit != predicates.end(); ++fit) {
|
for (auto* fit : predicates) {
|
||||||
m_inner_ctx.register_predicate(*fit, false);
|
m_inner_ctx.register_predicate(fit, false);
|
||||||
}
|
}
|
||||||
m_inner_ctx.ensure_opened();
|
m_inner_ctx.ensure_opened();
|
||||||
m_inner_ctx.replace_rules(rules);
|
m_inner_ctx.replace_rules(rules);
|
||||||
|
|
|
@ -3185,15 +3185,13 @@ namespace smt {
|
||||||
TRACE("theory_case_split", tout << "assigned literal " << l.index() << " is a theory case split literal" << std::endl;);
|
TRACE("theory_case_split", tout << "assigned literal " << l.index() << " is a theory case split literal" << std::endl;);
|
||||||
// now find the sets of literals which contain l
|
// now find the sets of literals which contain l
|
||||||
vector<literal_vector> const& case_split_sets = m_literal2casesplitsets[l.index()];
|
vector<literal_vector> const& case_split_sets = m_literal2casesplitsets[l.index()];
|
||||||
for (vector<literal_vector>::const_iterator it = case_split_sets.begin(); it != case_split_sets.end(); ++it) {
|
for (const auto& case_split_set : case_split_sets) {
|
||||||
literal_vector case_split_set = *it;
|
|
||||||
TRACE("theory_case_split", tout << "found case split set { ";
|
TRACE("theory_case_split", tout << "found case split set { ";
|
||||||
for(literal_vector::iterator set_it = case_split_set.begin(); set_it != case_split_set.end(); ++set_it) {
|
for (const auto& set_elem : case_split_set) {
|
||||||
tout << set_it->index() << " ";
|
tout << set_elem.index() << " ";
|
||||||
}
|
}
|
||||||
tout << "}" << std::endl;);
|
tout << "}" << std::endl;);
|
||||||
for(literal_vector::iterator set_it = case_split_set.begin(); set_it != case_split_set.end(); ++set_it) {
|
for (const auto& l2 : case_split_set) {
|
||||||
literal l2 = *set_it;
|
|
||||||
if (l2 != l) {
|
if (l2 != l) {
|
||||||
b_justification js(l);
|
b_justification js(l);
|
||||||
TRACE("theory_case_split", tout << "case split literal "; smt::display(tout, l2, m, m_bool_var2expr.data()); tout << std::endl;);
|
TRACE("theory_case_split", tout << "case split literal "; smt::display(tout, l2, m, m_bool_var2expr.data()); tout << std::endl;);
|
||||||
|
|
|
@ -30,7 +30,7 @@ class cofactor_term_ite_tactic : public tactic {
|
||||||
void process(goal & g) {
|
void process(goal & g) {
|
||||||
ast_manager & m = g.m();
|
ast_manager & m = g.m();
|
||||||
unsigned idx = 0;
|
unsigned idx = 0;
|
||||||
for (auto [f, dep, pr] : g) {
|
for (const auto& [f, dep, pr] : g) {
|
||||||
if (g.inconsistent())
|
if (g.inconsistent())
|
||||||
break;
|
break;
|
||||||
expr_ref new_f(m);
|
expr_ref new_f(m);
|
||||||
|
|
|
@ -853,7 +853,7 @@ class tseitin_cnf_tactic : public tactic {
|
||||||
m_mc = nullptr;
|
m_mc = nullptr;
|
||||||
|
|
||||||
unsigned idx = 0;
|
unsigned idx = 0;
|
||||||
for (auto [f, dep, pr] : *g) {
|
for (const auto& [f, dep, pr] : *g) {
|
||||||
process(f, dep);
|
process(f, dep);
|
||||||
g->update(idx++, m.mk_true(), nullptr, nullptr);
|
g->update(idx++, m.mk_true(), nullptr, nullptr);
|
||||||
}
|
}
|
||||||
|
|
|
@ -488,7 +488,7 @@ void goal::shrink(unsigned j) {
|
||||||
*/
|
*/
|
||||||
void goal::elim_true() {
|
void goal::elim_true() {
|
||||||
unsigned i = 0, j = 0;
|
unsigned i = 0, j = 0;
|
||||||
for (auto [f, dep, pr] : *this) {
|
for (const auto& [f, dep, pr] : *this) {
|
||||||
if (m().is_true(f)) {
|
if (m().is_true(f)) {
|
||||||
++i;
|
++i;
|
||||||
continue;
|
continue;
|
||||||
|
|
|
@ -25,18 +25,18 @@ Notes:
|
||||||
static void display_anums(std::ostream & out, scoped_anum_vector const & rs) {
|
static void display_anums(std::ostream & out, scoped_anum_vector const & rs) {
|
||||||
out << "numbers in decimal:\n";
|
out << "numbers in decimal:\n";
|
||||||
algebraic_numbers::manager & m = rs.m();
|
algebraic_numbers::manager & m = rs.m();
|
||||||
for (unsigned i = 0; i < rs.size(); i++) {
|
for (const auto& r : rs) {
|
||||||
m.display_decimal(out, rs[i], 10);
|
m.display_decimal(out, r, 10);
|
||||||
out << "\n";
|
out << "\n";
|
||||||
}
|
}
|
||||||
out << "numbers as root objects\n";
|
out << "numbers as root objects\n";
|
||||||
for (unsigned i = 0; i < rs.size(); i++) {
|
for (const auto& r : rs) {
|
||||||
m.display_root(out, rs[i]);
|
m.display_root(out, r);
|
||||||
out << "\n";
|
out << "\n";
|
||||||
}
|
}
|
||||||
out << "numbers as intervals\n";
|
out << "numbers as intervals\n";
|
||||||
for (unsigned i = 0; i < rs.size(); i++) {
|
for (const auto& r : rs) {
|
||||||
m.display_interval(out, rs[i]);
|
m.display_interval(out, r);
|
||||||
out << "\n";
|
out << "\n";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -83,18 +83,14 @@ static void tst2() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
safe_int_set::iterator it = h2.begin();
|
for (const auto& elem : h2) {
|
||||||
safe_int_set::iterator end = h2.end();
|
ENSURE(contains(h1, elem));
|
||||||
for(; it != end; ++it) {
|
|
||||||
ENSURE(contains(h1, *it));
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
int_set::iterator it = h1.begin();
|
|
||||||
int_set::iterator end = h1.end();
|
|
||||||
int n = 0;
|
int n = 0;
|
||||||
for (; it != end; ++it) {
|
for (const auto& elem : h1) {
|
||||||
ENSURE(contains(h1, *it));
|
ENSURE(contains(h1, elem));
|
||||||
n++;
|
n++;
|
||||||
}
|
}
|
||||||
ENSURE(n == h1.size());
|
ENSURE(n == h1.size());
|
||||||
|
@ -202,7 +198,7 @@ void test_hashtable_iterators() {
|
||||||
ht.insert(3);
|
ht.insert(3);
|
||||||
|
|
||||||
int count = 0;
|
int count = 0;
|
||||||
for(auto it = ht.begin(); it != ht.end(); ++it) {
|
for (const auto& elem : ht) {
|
||||||
++count;
|
++count;
|
||||||
}
|
}
|
||||||
VERIFY(count == 3);
|
VERIFY(count == 3);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue