DEFINITION sty1_abbr()
TYPE =
       g:G
         .c:C
           .d:C
             .v:T
               .i:nat
                 .getl i c (CHead d (Bind Abbr) v)
                   w:T.(sty1 g d v w)(sty1 g c (TLRef i) (lift (S i) O w))
BODY =
        assume gG
        assume cC
        assume dC
        assume vT
        assume inat
        suppose Hgetl i c (CHead d (Bind Abbr) v)
        assume wT
        suppose H0sty1 g d v w
          we proceed by induction on H0 to prove sty1 g c (TLRef i) (lift (S i) O w)
             case sty1_sty0 : t2:T H1:sty0 g d v t2 
                the thesis becomes sty1 g c (TLRef i) (lift (S i) O t2)
                   by (sty0_abbr . . . . . H . H1)
                   we proved sty0 g c (TLRef i) (lift (S i) O t2)
                   by (sty1_sty0 . . . . previous)
sty1 g c (TLRef i) (lift (S i) O t2)
             case sty1_sing : t:T :sty1 g d v t t2:T H3:sty0 g d t t2 
                the thesis becomes sty1 g c (TLRef i) (lift (S i) O t2)
                (H2) by induction hypothesis we know sty1 g c (TLRef i) (lift (S i) O t)
                   by (getl_drop . . . . . H)
                   we proved drop (S i) O c d
                   by (sty0_lift . . . . H3 . . . previous)
                   we proved sty0 g c (lift (S i) O t) (lift (S i) O t2)
                   by (sty1_sing . . . . H2 . previous)
sty1 g c (TLRef i) (lift (S i) O t2)
          we proved sty1 g c (TLRef i) (lift (S i) O w)
       we proved 
          g:G
            .c:C
              .d:C
                .v:T
                  .i:nat
                    .getl i c (CHead d (Bind Abbr) v)
                      w:T.(sty1 g d v w)(sty1 g c (TLRef i) (lift (S i) O w))