diff --git a/src/smt/seq_regex.cpp b/src/smt/seq_regex.cpp index e667d0f5b..6a30cbf38 100644 --- a/src/smt/seq_regex.cpp +++ b/src/smt/seq_regex.cpp @@ -275,6 +275,9 @@ namespace smt { #endif } } + if (!is_ground(d)) { + d = subst(d, sub); + } // at this point there should be no free variables as the ites are at top-level. if (!re().is_empty(d)) conds.push_back(th.mk_literal(sk().mk_accept(s, a().mk_int(idx + 1), d)));