-
Notifications
You must be signed in to change notification settings - Fork 143
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
Overloads with free variables cause unexportable theory #115
Labels
Comments
mn200
added a commit
that referenced
this issue
Apr 13, 2013
Currently failing so I've put this onto a branch of its own.
Incidentally, overloads are supposed to be able to have free variables. It makes doing some group (algebra) theory much smoother because you can do things like
where |
I should also note that this bug was stumbled upon by Joseph Chan. |
mn200
added a commit
that referenced
this issue
Apr 26, 2013
mn200
added a commit
that referenced
this issue
Apr 26, 2013
The problem arises in the standard kernel (only) when a term has a bound variable of name n with scope over a different variable of the same name (i.e., there is a free variable of the same name but a different type under the binder). Fundamentally, the issue is that the standard kernel’s dest_abs necessarily traverses the body of a term in order to turn indexes into free vars. In the process it detects if it is about to create a term with free variables of same names and different types. In that situation it renames the bound variable and repeats. Perhaps this is a mis-design.
mn200
added a commit
that referenced
this issue
Apr 26, 2013
mn200
added a commit
that referenced
this issue
Aug 12, 2013
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
The following results in a theory that fails to export correctly:
The theorem
sample
proves OK but the call toexport_theory
fails with aNotFound
exception.The text was updated successfully, but these errors were encountered: