3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2026-04-20 10:53:29 +00:00

implement replace_all_axiom using recursive predicate ra(s,p,t,r) (#9095)

Agent-Logs-Url: https://github.com/Z3Prover/z3/sessions/c550da78-28c6-4ab4-9bfb-7403ecc3320b

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
This commit is contained in:
Copilot 2026-03-22 18:44:29 -07:00 committed by GitHub
parent d1d050f69f
commit ad94dd1b7a
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 35 additions and 39 deletions

View file

@ -3300,7 +3300,7 @@ void theory_seq::relevant_eh(app* n) {
m_util.str.is_unit(n) ||
m_util.str.is_last_index(n) ||
m_util.str.is_length(n) ||
/* m_util.str.is_replace_all(n) || uncomment to enable axiomatization */
m_util.str.is_replace_all(n) ||
m_util.str.is_le(n)) {
enque_axiom(n);
}
@ -3329,8 +3329,7 @@ void theory_seq::relevant_eh(app* n) {
if (m_util.str.is_length(n, arg) && !has_length(arg) && ctx.e_internalized(arg))
add_length_to_eqc(arg);
if (m_util.str.is_replace_all(n) ||
m_util.str.is_replace_re(n) ||
if (m_util.str.is_replace_re(n) ||
m_util.str.is_replace_re_all(n)) {
add_unhandled_expr(n);
}