Step * 2 3 1 1 of Lemma monad-from_wf

.....subterm..... T:t
2:n
1. Mnd Monad
2. λx,z. (M-bind(Mnd) x.x)) ∈ A:Type ⟶ (M-map(Mnd) (M-map(Mnd) A)) ⟶ (M-map(Mnd) A)
3. Type
4. M-map(Mnd) X
5. (M-bind(Mnd) M-return(Mnd)) x ∈ (M-map(Mnd) X)
⊢ (M-bind(Mnd) x@0.(M-return(Mnd) x@0))) (M-bind(Mnd) M-return(Mnd)) ∈ (M-map(Mnd) X)
BY
(Subst' x@0.(M-return(Mnd) x@0)) M-return(Mnd) ∈ (X ⟶ (M-map(Mnd) X)) THEN Auto) }


Latex:


Latex:
.....subterm.....  T:t
2:n
1.  Mnd  :  Monad
2.  \mlambda{}x,z.  (M-bind(Mnd)  z  (\mlambda{}x.x))  \mmember{}  A:Type  {}\mrightarrow{}  (M-map(Mnd)  (M-map(Mnd)  A))  {}\mrightarrow{}  (M-map(Mnd)  A)
3.  X  :  Type
4.  x  :  M-map(Mnd)  X
5.  (M-bind(Mnd)  x  M-return(Mnd))  =  x
\mvdash{}  (M-bind(Mnd)  x  (\mlambda{}x@0.(M-return(Mnd)  x@0)))  =  (M-bind(Mnd)  x  M-return(Mnd))


By


Latex:
(Subst'  (\mlambda{}x@0.(M-return(Mnd)  x@0))  =  M-return(Mnd)  0  THEN  Auto)




Home Index