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

dispatching on arguments that bind variables #540

Open
mikeshulman opened this issue Sep 6, 2020 · 0 comments
Open

dispatching on arguments that bind variables #540

mikeshulman opened this issue Sep 6, 2020 · 0 comments

Comments

@mikeshulman
Copy link
Contributor

Was it naive of me to expect this to work?

require eq ;;
rule foo (A type) ({x:A} B type) type ;;
rule bar (C type) type ;;
rule foo_bar (A type) ({x:A} B type) :
  foo A ({x:A} bar B{x}) ≡ foo A B ;;
eq.add_rule foo_bar ;;

Runtime error: uncaught exception ML.EqualityCheckerException
  "cannot make a pattern from a bound type metavariable"

Is it not possible for equality computation rules to dispatch on arguments that bind variables? Is there a theoretical reason for that?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant