`∀[C:SmallCategory]. ∀[M:Monad(C)]. ∀[x,y,z:cat-ob(C)]. ∀[g:cat-arrow(C) x M(y)]. ∀[h:cat-arrow(C) y M(z)].`
`  (monad-extend(C;M;x;z;cat-comp(C) x M(y) M(z) g monad-extend(C;M;y;z;h))`
`  = (cat-comp(C) M(x) M(y) M(z) monad-extend(C;M;x;y;g) monad-extend(C;M;y;z;h))`
`  ∈ (cat-arrow(C) M(x) M(z)))`

Proof

Definitions occuring in Statement :  monad-extend: `monad-extend(C;M;x;y;f)` monad-fun: `M(x)` cat-monad: `Monad(C)` cat-comp: `cat-comp(C)` cat-arrow: `cat-arrow(C)` cat-ob: `cat-ob(C)` small-category: `SmallCategory` uall: `∀[x:A]. B[x]` apply: `f a` equal: `s = t ∈ T`
Definitions unfolded in proof :  uall: `∀[x:A]. B[x]` member: `t ∈ T` cat-monad: `Monad(C)` nat-trans: `nat-trans(C;D;F;G)` monad-fun: `M(x)` functor-comp: `functor-comp(F;G)` all: `∀x:A. B[x]` top: `Top` so_lambda: `so_lambda(x,y,z.t[x; y; z])` so_apply: `x[s1;s2;s3]` so_lambda: `λ2x.t[x]` so_apply: `x[s]` id_functor: `1` monad-extend: `monad-extend(C;M;x;y;f)` monad-functor: `monad-functor(M)` pi1: `fst(t)` monad-op: `monad-op(M;x)` pi2: `snd(t)` spreadn: spread3 and: `P ∧ Q` true: `True` functor_arrow: `F(f)` cat_comp: `g o f` squash: `↓T` prop: `ℙ` subtype_rel: `A ⊆r B` uimplies: `b supposing a` guard: `{T}` iff: `P `⇐⇒` Q` rev_implies: `P `` Q` implies: `P `` Q`
Lemmas referenced :  ob_mk_functor_lemma arrow_mk_functor_lemma cat-arrow_wf monad-fun_wf cat-ob_wf cat-monad_wf small-category_wf functor-ob_wf cat-comp_wf functor-arrow_wf equal_wf squash_wf true_wf cat-comp-assoc functor-arrow-comp iff_weakening_equal cat_comp_wf functor_arrow_wf cat_comp_assoc
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity isect_memberFormation introduction cut sqequalHypSubstitution setElimination thin rename productElimination sqequalRule extract_by_obid dependent_functionElimination isect_memberEquality voidElimination voidEquality hypothesis applyEquality isectElimination hypothesisEquality axiomEquality because_Cache functionExtensionality natural_numberEquality lambdaEquality imageElimination equalityTransitivity equalitySymmetry universeEquality imageMemberEquality baseClosed independent_isectElimination independent_functionElimination

Latex:
\mforall{}[C:SmallCategory].  \mforall{}[M:Monad(C)].  \mforall{}[x,y,z:cat-ob(C)].  \mforall{}[g:cat-arrow(C)  x  M(y)].  \mforall{}[h:cat-arrow(C)  y
M(z)].