`∀[C:SmallCategory]. ∀[T:Functor(C;C)]. ∀[u:nat-trans(C;C;1;T)]. ∀[m:nat-trans(C;C;functor-comp(T;T);T)].`
`  (mk-monad(T;`
`            u;`
`            m) ∈ Monad(C)) supposing `
`     ((∀X:cat-ob(C)`
`         ((cat-comp(C) (T X) (T (T X)) (T X) (u (T X)) (m X)) = (cat-id(C) (T X)) ∈ (cat-arrow(C) (T X) (T X)))) and `
`     (∀X:cat-ob(C)`
`        ((cat-comp(C) (T X) (T (T X)) (T X) (T X (T X) (u X)) (m X))`
`        = (cat-id(C) (T X))`
`        ∈ (cat-arrow(C) (T X) (T X)))) and `
`     (∀X:cat-ob(C)`
`        ((cat-comp(C) (T (T (T X))) (T (T X)) (T X) (m (T X)) (m X))`
`        = (cat-comp(C) (T (T (T X))) (T (T X)) (T X) (T (T (T X)) (T X) (m X)) (m X))`
`        ∈ (cat-arrow(C) (T (T (T X))) (T X)))))`

Proof

Definitions occuring in Statement :  mk-monad: mk-monad cat-monad: `Monad(C)` id_functor: `1` functor-comp: `functor-comp(F;G)` nat-trans: `nat-trans(C;D;F;G)` functor-arrow: `arrow(F)` functor-ob: `ob(F)` cat-functor: `Functor(C1;C2)` cat-comp: `cat-comp(C)` cat-id: `cat-id(C)` cat-arrow: `cat-arrow(C)` cat-ob: `cat-ob(C)` small-category: `SmallCategory` uimplies: `b supposing a` uall: `∀[x:A]. B[x]` all: `∀x:A. B[x]` member: `t ∈ T` apply: `f a` equal: `s = t ∈ T`
Definitions unfolded in proof :  uall: `∀[x:A]. B[x]` functor-comp: `functor-comp(F;G)` nat-trans: `nat-trans(C;D;F;G)` all: `∀x:A. B[x]` member: `t ∈ T` top: `Top` so_lambda: so_lambda3 so_apply: `x[s1;s2;s3]` so_lambda: `λ2x.t[x]` so_apply: `x[s]` id_functor: `1` uimplies: `b supposing a` cat-monad: `Monad(C)` mk-monad: mk-monad prop: `ℙ` spreadn: spread3 and: `P ∧ Q` cand: `A c∧ B`
Lemmas referenced :  ob_mk_functor_lemma arrow_mk_functor_lemma all_wf equal_wf cat-comp_wf functor-arrow_wf cat-ob_wf cat-arrow_wf functor-ob_wf cat-id_wf nat-trans_wf functor-comp_wf id_functor_wf cat-functor_wf small-category_wf
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity isect_memberFormation sqequalHypSubstitution sqequalRule cut introduction extract_by_obid dependent_functionElimination thin isect_memberEquality voidElimination voidEquality hypothesis dependent_set_memberEquality dependent_pairEquality hypothesisEquality independent_pairEquality setElimination rename because_Cache isectElimination lambdaEquality applyEquality functionExtensionality productEquality setEquality functionEquality independent_pairFormation productElimination

Latex:
\mforall{}[C:SmallCategory].  \mforall{}[T:Functor(C;C)].  \mforall{}[u:nat-trans(C;C;1;T)].
\mforall{}[m:nat-trans(C;C;functor-comp(T;T);T)].
u;
((\mforall{}X:cat-ob(C).  ((cat-comp(C)  (T  X)  (T  (T  X))  (T  X)  (u  (T  X))  (m  X))  =  (cat-id(C)  (T  X))))  and
(\mforall{}X:cat-ob(C)
((cat-comp(C)  (T  X)  (T  (T  X))  (T  X)  (T  X  (T  X)  (u  X))  (m  X))  =  (cat-id(C)  (T  X))))  and
(\mforall{}X:cat-ob(C)
((cat-comp(C)  (T  (T  (T  X)))  (T  (T  X))  (T  X)  (m  (T  X))  (m  X))
=  (cat-comp(C)  (T  (T  (T  X)))  (T  (T  X))  (T  X)  (T  (T  (T  X))  (T  X)  (m  X))  (m  X)))))

Date html generated: 2020_05_20-AM-07_58_33
Last ObjectModification: 2017_01_16-PM-08_02_54

Theory : small!categories

Home Index