DEFINITION pr0_subst1_fwd()
TYPE =
       u2:T.t1:T.t2:T.i:nat.(subst1 i u2 t1 t2)u1:T.(pr0 u2 u1)(ex2 T λt:T.subst1 i u1 t1 t λt:T.pr0 t2 t)
BODY =
        assume u2T
        assume t1T
        assume t2T
        assume inat
        suppose Hsubst1 i u2 t1 t2
          we proceed by induction on H to prove u1:T.(pr0 u2 u1)(ex2 T λt0:T.subst1 i u1 t1 t0 λt0:T.pr0 t2 t0)
             case subst1_refl : 
                the thesis becomes u1:T.(pr0 u2 u1)(ex2 T λt:T.subst1 i u1 t1 t λt:T.pr0 t1 t)
                    assume u1T
                    suppose pr0 u2 u1
                      (h1
                         by (subst1_refl . . .)
subst1 i u1 t1 t1
                      end of h1
                      (h2by (pr0_refl .) we proved pr0 t1 t1
                      by (ex_intro2 . . . . h1 h2)
                      we proved ex2 T λt:T.subst1 i u1 t1 t λt:T.pr0 t1 t
u1:T.(pr0 u2 u1)(ex2 T λt:T.subst1 i u1 t1 t λt:T.pr0 t1 t)
             case subst1_single : t0:T H0:subst0 i u2 t1 t0 
                the thesis becomes u1:T.H1:(pr0 u2 u1).(ex2 T λt:T.subst1 i u1 t1 t λt:T.pr0 t0 t)
                    assume u1T
                    suppose H1pr0 u2 u1
                      by (pr0_subst0_fwd . . . . H0 . H1)
                      we proved ex2 T λt:T.subst0 i u1 t1 t λt:T.pr0 t0 t
                      we proceed by induction on the previous result to prove ex2 T λt:T.subst1 i u1 t1 t λt:T.pr0 t0 t
                         case ex_intro2 : x:T H2:subst0 i u1 t1 x H3:pr0 t0 x 
                            the thesis becomes ex2 T λt:T.subst1 i u1 t1 t λt:T.pr0 t0 t
                               by (subst1_single . . . . H2)
                               we proved subst1 i u1 t1 x
                               by (ex_intro2 . . . . previous H3)
ex2 T λt:T.subst1 i u1 t1 t λt:T.pr0 t0 t
                      we proved ex2 T λt:T.subst1 i u1 t1 t λt:T.pr0 t0 t
u1:T.H1:(pr0 u2 u1).(ex2 T λt:T.subst1 i u1 t1 t λt:T.pr0 t0 t)
          we proved u1:T.(pr0 u2 u1)(ex2 T λt0:T.subst1 i u1 t1 t0 λt0:T.pr0 t2 t0)
       we proved u2:T.t1:T.t2:T.i:nat.(subst1 i u2 t1 t2)u1:T.(pr0 u2 u1)(ex2 T λt0:T.subst1 i u1 t1 t0 λt0:T.pr0 t2 t0)