-
Notifications
You must be signed in to change notification settings - Fork 16
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
SMTLIB refuses redefinition or redeclaration #37
Comments
I'll fix that soon (probably in or along #36 ); the support is already there I just have to pass the correct option to the typechecker env to forbid shadowing of declared identifiers. |
Currently the theories doesn't define the symbols the define. It seems that they need to give also this information in order to support that, no? |
ah yes, that's slightly more complex (since some theories actually define an infinite number of symbols), but I have some plans for that, ^^ |
So, I have mostly the patch needed for that, but one last question: are bound variables allowed to shadow identifiers previously declared (whether they previously declared identifiers, identifiers declared by a theory, or other variables in scope) ? |
Fixed by d078da6 |
So, I just saw the following in the standard:
Which is particularly annoying when variables and parameters are allowed to shadow sort symbols coming theories.... |
These rules and exceptions are really too convoluted sometimes :/ |
Yes, they are meant to make solver implementer life easier, but not always for all of them ;). It could be discussed fo the next version of the standard. |
Should be definitely fixed thanks to the n-th big refactoring done in 15985f4 |
Cf SMTLIB v6 end of §4.1.5
Overloading accepted in theory definition but not for users.
The text was updated successfully, but these errors were encountered: