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
The notion of divisibility is defined using a datatype which makes it
impossible to pattern match against a proof that m | n in a let-binding.
I suggest using the following record-based definition instead:
record_∣_ (m n : ℕ) :Setwhereconstructordividesfield quotient : ℕ
equality : n ≡ quotient * m
However this will break some proofs: for some reasons m and n were not
declared as parameters of _|_ but rather as indices. This means that the divides constructor was carrying them as implicit arguments and this is used
in the standard library (see e.g. ∣-antisym).