module Algebra.Monoid.Instances.Transformation where

Full transformation monoids🔗

If is a set, then so too is its type of endomaps Moreover, is a monoid under composition, called the full transformation monoid on with the associativity and identity laws holding definitionally:

End : ∀ {ℓ} (X : Set ℓ) → Monoid-on (∣ X ∣ → ∣ X ∣)
End X = to-monoid-on M where
  open make-monoid
  M : make-monoid (∣ X ∣ → ∣ X ∣)
  M .monoid-is-set = hlevel 2
  M ._⋆_ f g = f ∘ g
  M .1M = id
  M .⋆-assoc f g h = refl
  M .⋆-idl f = refl
  M .⋆-idr f = refl

In the case is a standard finite set, there is a more convenient isomorphic construction.