Lemma presented_abmonoid_extend_comp {X : hSet} {R : hrel (free_abmonoid X)} {Y : abmonoid} (g : monoidfun (presented_abmonoid X R) Y) (H : iscomprelfun R (free_abmonoid_extend (g ∘ presented_abmonoid_intro))) : presented_abmonoid_extend (g ∘ presented_abmonoid_intro) H ~ g. Proof. unfold homot. apply setquotunivprop'. + intro. apply isasetmonoid. + intro x. refine (setquotunivcomm _ _ _ _ _ @ _). exact (free_abmonoid_extend_comp (monoidfuncomp (presented_abmonoid_pr R) g) x). Defined.
Require Import UniMath.MoreFoundations.Subtypes. Require Import UniMath.MoreFoundations.Sets. Require Import UniMath.Algebra.Monoids. Require Import UniMath.Algebra.Groups. Require Import UniMath.Algebra.IteratedBinaryOperations. Require Import UniMath.Combinatorics.Lists.