mirror of
https://github.com/Z3Prover/z3
synced 2025-06-06 14:13:23 +00:00
fix #7446, by adding rewrite simplification
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
1cc808c58d
commit
c0e748a51a
1 changed files with 4 additions and 0 deletions
|
@ -2471,6 +2471,10 @@ br_status seq_rewriter::mk_str_lt(expr* a, expr* b, expr_ref& result) {
|
||||||
result = m().mk_false();
|
result = m().mk_false();
|
||||||
return BR_DONE;
|
return BR_DONE;
|
||||||
}
|
}
|
||||||
|
if (str().is_empty(a)) {
|
||||||
|
result = m().mk_not(m().mk_eq(a, b));
|
||||||
|
return BR_DONE;
|
||||||
|
}
|
||||||
if (str().is_string(a, as) && str().is_string(b, bs)) {
|
if (str().is_string(a, as) && str().is_string(b, bs)) {
|
||||||
unsigned sz = std::min(as.length(), bs.length());
|
unsigned sz = std::min(as.length(), bs.length());
|
||||||
for (unsigned i = 0; i < sz; ++i) {
|
for (unsigned i = 0; i < sz; ++i) {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue