proposition: Lemma compose_assoc (a b c : A) : compose (compose a b) c = compose a (compose b c).
proof: Proof. unfold compose, aaction. pose (v := weqvecfun _ [(a ; b ; c)]). pose (Hv := λ i, !(pr_action _ (i : stn 3) v)). rewrite (Hv (● 0) : a = _). rewrite (Hv (● 1) : b = _). rewrite (Hv (● 2) : c = _). do 4 (rewrite (move_action_through_vector_2 A _ _ _), <- comp_action). apply (maponpaths (λ x, aaction x v)). apply compose_assoc_λ. Qed.
imports: UniMath.Foundations.All UniMath.MoreFoundations.All UniMath.Algebra.Monoids UniMath.CategoryTheory.Categories.HSET.Core UniMath.CategoryTheory.Core.Categories UniMath.CategoryTheory.Core.Functors UniMath.CategoryTheory.Core.Isos UniMath.CategoryTheory.Limits.BinProducts UniMath.Combinatorics.StandardFiniteSets UniMath.Combinatorics.Tuples UniMath.Combinatorics.Vectors UniMath.AlgebraicTheories.AlgebraicTheories UniMath.AlgebraicTheories.Algebras UniMath.AlgebraicTheories.AlgebraMorphisms UniMath.AlgebraicTheories.Examples.LambdaCalculus UniMath.AlgebraicTheories.Examples.EndomorphismTheory UniMath.AlgebraicTheories.FundamentalTheorem.SpecificUtilities.LambdaTerms UniMath.AlgebraicTheories.FundamentalTheorem.CommonUtilities.MonoidActions UniMath.AlgebraicTheories.LambdaTheories UniMath.AlgebraicTheories.LambdaCalculus UniMath.AlgebraicTheories.LambdaTheoryCategory