Skip to content
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

Wrong contextual type for meta-variable (M) #10

Closed
fferreira opened this issue Jun 3, 2015 · 1 comment
Closed

Wrong contextual type for meta-variable (M) #10

fferreira opened this issue Jun 3, 2015 · 1 comment
Assignees
Labels
B | bug unexpected or incorrect behaviour

Comments

@fferreira
Copy link
Contributor

In the example below Beluga provides the type of M is
{M : [g, x : tm, x : tm |- tm]}

Instead of the expected M with only one variable in the context.

tm : type.
lam : (tm -> tm) -> tm.
app : tm -> tm -> tm.

schema ctx = tm;

rec copy : (g : ctx)  [g |- tm] -> [g |- tm] =
fn t => case t of
| [g |- lam M] => ?
;
@fferreira fferreira added the B | bug unexpected or incorrect behaviour label Jun 3, 2015
@ajcave
Copy link
Contributor

ajcave commented Jun 3, 2015

The problem is in lfrecon where eta expansion is performed (etaExpandFMV); it doesn't properly weaken the identity substitution

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
B | bug unexpected or incorrect behaviour
Projects
None yet
Development

No branches or pull requests

2 participants