summaryrefslogtreecommitdiff
path: root/src/theory/strings
diff options
context:
space:
mode:
authorAndres Noetzli <noetzli@stanford.edu>2019-06-05 13:01:34 -0700
committerGitHub <noreply@github.com>2019-06-05 13:01:34 -0700
commit6b01e8740111e69219e5d733e1123955f8cd2ea7 (patch)
tree78dfded555702242e0f44aa98924ecce541b7599 /src/theory/strings
parent9af5e9653582a18b1871dfc3774ab50dd24463ce (diff)
Prevent letification from shadowing variables (#3042)
Fixes #3005. When printing nodes, we introduce `let` expressions on the fly. However, when doing that, we have to be careful that we don't shadow existing variables with the same name. When quantifiers are involved, we do not descend into the quantifiers to avoid letifying terms with bound variables that then go out of scope (see #1863). Thus, to avoid shadowing variables appearing in quantifiers, we have to collect all the variables appearing in that term to make sure that the let does not shadow them. In #3005, the issue was caused by a `let` that was introduced outside of a quantifier and then was shadowed in the body of the quantifier by another `let` introduced for that body.
Diffstat (limited to 'src/theory/strings')
0 files changed, 0 insertions, 0 deletions
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback