mirror of
https://github.com/Z3Prover/z3
synced 2026-06-29 03:48:51 +00:00
block_if_empty relied solely on the AST-identity state graph for dead-state detection, which never closes on intersections/complements whose derivative product states do not canonicalize. For ground regexes, fall back to the antimirov NFA reachability check (re_is_empty), the same procedure propagate_eq already uses for re.none equalities. Resolves str.in_re emptiness timeouts on inter(., comp(.)) regexes (e.g. z3test 5728, parts of 5721). Also drop a stale is_antimirov_union reference left in seq_regex_bisim.cpp after the operator removal (test-z3 did not compile) and update a now-stale comment. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> |
||
|---|---|---|
| .. | ||
| ackermannization | ||
| api | ||
| ast | ||
| cmd_context | ||
| math | ||
| model | ||
| muz | ||
| nlsat | ||
| opt | ||
| params | ||
| parsers | ||
| qe | ||
| sat | ||
| shell | ||
| smt | ||
| solver | ||
| tactic | ||
| test | ||
| util | ||
| CMakeLists.txt | ||