module algebra.monoid.core where
open import level
open import algebra.semigroup
open import equality.core
open import sum
record IsMonoid {i} (M : Set i) : Set i where
field
instance sgrp : IsSemigroup M
open IsSemigroup sgrp public
field
e : M
lunit : (x : M) → e * x ≡ x
runit : (x : M) → x * e ≡ x
Monoid : ∀ i → Set (lsuc i)
Monoid i = Σ (Set i) IsMonoid