mirror of
https://github.com/Z3Prover/z3
synced 2025-08-03 01:40:22 +00:00
fix co-factoring'
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
5348af3c4c
commit
b1d167de5b
5 changed files with 17 additions and 5 deletions
|
@ -524,9 +524,10 @@ namespace smt {
|
|||
sort* seq_sort = nullptr;
|
||||
VERIFY(u().is_re(r1, seq_sort));
|
||||
expr_ref r = symmetric_diff(r1, r2);
|
||||
expr_ref s(m.mk_fresh_const("re.member", seq_sort), m);
|
||||
expr_ref is_member(re().mk_in_re(s, r), m);
|
||||
th.add_axiom(th.mk_eq(r1, r2, false), th.mk_literal(is_member));
|
||||
expr_ref emp(re().mk_empty(r->get_sort()), m);
|
||||
expr_ref n(m.mk_fresh_const("re.char", seq_sort), m);
|
||||
expr_ref is_non_empty = sk().mk_is_non_empty(r, r, n);
|
||||
th.add_axiom(th.mk_eq(r1, r2, false), th.mk_literal(is_non_empty));
|
||||
}
|
||||
|
||||
bool seq_regex::is_member(expr* r, expr* u) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue