proposition: Lemma free_monoid_extend_comp {X : hSet} {Y : monoid} (g : monoidfun (free_monoid X) Y): free_monoid_extend (g ∘ free_monoid_unit) ~ g.
proof: Proof. unfold homot. simpl. apply list_ind. + exact (! monoidfununel g). + intros x xs IH. rewrite map_cons, iterop_list_mon_step, IH. exact (!pr1 (pr2 g) _ _). Defined.
imports: UniMath.MoreFoundations.Subtypes UniMath.MoreFoundations.Sets UniMath.Algebra.Monoids UniMath.Algebra.Groups UniMath.Algebra.IteratedBinaryOperations UniMath.Combinatorics.Lists