Why this pattern matching fails in Agda?
-
05-11-2019 - |
質問
Consider function wa''
(need natural number definition, either in stdlib or Agda.Builtin.Nat
):
postulate comm : ∀ m n -> m + n ≡ n + m
wa'' : ∀ m n -> wa (m + n) ≡ wa (n + m)
wa'' m n with comm n m
... | refl = { }0
The pattern matching on comm n m
with refl
fails. But if I add one more match:
wa'' : ∀ m n -> wa (m + n) ≡ wa (n + m)
wa'' m n with (n + m) | comm n m
... | .(m + n) | refl = { }0
This code works. Is there any semantics-level difference between these two code snippets?
正しい解決策はありません
所属していません cs.stackexchange