DEFINITION ty3_subst0()
TYPE =
       g:G
         .c:C
           .t1:T
             .t:T
               .ty3 g c t1 t
                 e:C
                      .u:T
                        .i:nat
                          .(getl i c (CHead e (Bind Abbr) u))t2:T.(subst0 i u t1 t2)(ty3 g c t2 t)
BODY =
        assume gG
        assume cC
        assume t1T
        assume tT
        suppose Hty3 g c t1 t
        assume eC
        assume uT
        assume inat
        suppose H0getl i c (CHead e (Bind Abbr) u)
        assume t2T
        suppose H1subst0 i u t1 t2
          by (fsubst0_snd . . . . . H1)
          we proved fsubst0 i u c t1 c t2
          by (ty3_fsubst0 . . . . H . . . . previous . H0)
          we proved ty3 g c t2 t
       we proved 
          g:G
            .c:C
              .t1:T
                .t:T
                  .ty3 g c t1 t
                    e:C
                         .u:T
                           .i:nat
                             .(getl i c (CHead e (Bind Abbr) u))t2:T.(subst0 i u t1 t2)(ty3 g c t2 t)