Lemma free_monoidfun_homot_extend {X Y : hSet} (f : X → Y) : free_monoidfun f ~ free_monoid_extend (free_monoid_unit ∘ f). Proof. exact (foldr1_concatenate f). 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.