You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is an example of "uninformative matching" right?
I'm not aware of this term. I'd call them "non-decision matching", because matching on erased values with a single constructor like in the examples above still can bring erased subproofs into the context or unify variables with something, so such matching brings information into the context, probably it's unfair to call this "uninformative"
Steps to Reproduce
Arguments with quantity
0
can be matched when they have the only constructor in the current context. E.g. this successfully typechecks:You can do this when type index is more complex:
You can match all this deeply with unrestricted quantity and everything typechecks total, prooving that there is only one constructor to match:
But now match deeply still with quantity
0
:Expected Behavior
Typechecks fine
Observed Behavior
Additional observation
If you make argument
n
to be unrestricted in the constructorC
all of the sudden functionh
starts to be typecheckable.The text was updated successfully, but these errors were encountered: