mirror of
https://github.com/Z3Prover/z3
synced 2025-07-23 12:48:53 +00:00
na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
1fd567d1e9
commit
08cc5bc2e5
2 changed files with 7 additions and 6 deletions
|
@ -2995,6 +2995,7 @@ br_status seq_rewriter::mk_re_union(expr* a, expr* b, expr_ref& result) {
|
||||||
result = re().mk_union(a1, re().mk_union(a2, b));
|
result = re().mk_union(a1, re().mk_union(a2, b));
|
||||||
return BR_REWRITE2;
|
return BR_REWRITE2;
|
||||||
}
|
}
|
||||||
|
|
||||||
auto get_id = [&](expr* e) { re().is_complement(e, e); return e->get_id(); };
|
auto get_id = [&](expr* e) { re().is_complement(e, e); return e->get_id(); };
|
||||||
if (re().is_union(b, b1, b2)) {
|
if (re().is_union(b, b1, b2)) {
|
||||||
if (is_subset(a, b1)) {
|
if (is_subset(a, b1)) {
|
||||||
|
@ -3015,10 +3016,6 @@ br_status seq_rewriter::mk_re_union(expr* a, expr* b, expr_ref& result) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
if (get_id(a) > get_id(b)) {
|
|
||||||
result = re().mk_union(b, a);
|
|
||||||
return BR_DONE;
|
|
||||||
}
|
|
||||||
if (is_subset(a, b)) {
|
if (is_subset(a, b)) {
|
||||||
result = b;
|
result = b;
|
||||||
return BR_DONE;
|
return BR_DONE;
|
||||||
|
@ -3027,6 +3024,10 @@ br_status seq_rewriter::mk_re_union(expr* a, expr* b, expr_ref& result) {
|
||||||
result = a;
|
result = a;
|
||||||
return BR_DONE;
|
return BR_DONE;
|
||||||
}
|
}
|
||||||
|
if (get_id(a) > get_id(b)) {
|
||||||
|
result = re().mk_union(b, a);
|
||||||
|
return BR_DONE;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return BR_FAILED;
|
return BR_FAILED;
|
||||||
}
|
}
|
||||||
|
|
|
@ -225,8 +225,8 @@ namespace smt {
|
||||||
d = derivative_wrapper(m.mk_var(0, m.get_sort(head)), r);
|
d = derivative_wrapper(m.mk_var(0, m.get_sort(head)), r);
|
||||||
// timer tm;
|
// timer tm;
|
||||||
// std::cout << d->get_id() << " " << tm.get_seconds() << "\n";
|
// std::cout << d->get_id() << " " << tm.get_seconds() << "\n";
|
||||||
// if (tm.get_seconds() > 1)
|
//if (tm.get_seconds() > 0.3)
|
||||||
// std::cout << d << "\n";
|
// std::cout << d << "\n";
|
||||||
// std::cout.flush();
|
// std::cout.flush();
|
||||||
literal_vector conds;
|
literal_vector conds;
|
||||||
conds.push_back(~lit);
|
conds.push_back(~lit);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue