Open
Description
lib-1.7 has a general notion AlmostLeft(Right)Cancellative,
and it is used in *-cancelˡ-nonZero
in IsCancellativeCommutativeSemiring
.
On the other hand Nat.Properties
has the definitions of kind.
*-cancelʳ-≡ : ∀ m n {o} → m * suc o ≡ n * suc o → m ≡ n
It has sense to add there *-cancelˡ-nonZero, *-cancelʳ-nonZero
having types AlmostLeft(Right)Cancellative,
and to add the instances of CancellativeCommutativeSemiring
for Nat and Integer.
?