DEFINITION subst0_gen_lift_false()
TYPE =
       t:T
         .u:T
           .x:T
             .h:nat
               .d:nat
                 .i:nat
                   .le d i
                     (lt i (plus d h))(subst0 i u (lift h d t) x)P:Prop.P
BODY =
       assume tT
          we proceed by induction on t to prove 
             u:T
               .x:T
                 .h:nat
                   .d:nat
                     .i:nat
                       .le d i
                         (lt i (plus d h))(subst0 i u (lift h d t) x)P:Prop.P
             case TSort : n:nat 
                the thesis becomes 
                u:T
                  .x:T
                    .h:nat
                      .d:nat
                        .i:nat
                          .le d i
                            (lt i (plus d h))H1:(subst0 i u (lift h d (TSort n)) x).P:Prop.P
                    assume uT
                    assume xT
                    assume hnat
                    assume dnat
                    assume inat
                    suppose le d i
                    suppose lt i (plus d h)
                    suppose H1subst0 i u (lift h d (TSort n)) x
                    assume PProp
                      (H2
                         by (lift_sort . . .)
                         we proved eq T (lift h d (TSort n)) (TSort n)
                         we proceed by induction on the previous result to prove subst0 i u (TSort n) x
                            case refl_equal : 
                               the thesis becomes the hypothesis H1
subst0 i u (TSort n) x
                      end of H2
                      by (subst0_gen_sort . . . . H2 .)
                      we proved P

                      u:T
                        .x:T
                          .h:nat
                            .d:nat
                              .i:nat
                                .le d i
                                  (lt i (plus d h))H1:(subst0 i u (lift h d (TSort n)) x).P:Prop.P
             case TLRef : n:nat 
                the thesis becomes 
                u:T
                  .x:T
                    .h:nat
                      .d:nat
                        .i:nat
                          .H:(le d i).H0:(lt i (plus d h)).H1:(subst0 i u (lift h d (TLRef n)) x).P:Prop.P
                    assume uT
                    assume xT
                    assume hnat
                    assume dnat
                    assume inat
                    suppose Hle d i
                    suppose H0lt i (plus d h)
                    suppose H1subst0 i u (lift h d (TLRef n)) x
                    assume PProp
                      (h1
                         suppose H2lt n d
                            (H3
                               by (lift_lref_lt . . . H2)
                               we proved eq T (lift h d (TLRef n)) (TLRef n)
                               we proceed by induction on the previous result to prove subst0 i u (TLRef n) x
                                  case refl_equal : 
                                     the thesis becomes the hypothesis H1
subst0 i u (TLRef n) x
                            end of H3
                            by (subst0_gen_lref . . . . H3)
                            we proved land (eq nat n i) (eq T x (lift (S n) O u))
                            we proceed by induction on the previous result to prove P
                               case conj : H4:eq nat n i :eq T x (lift (S n) O u) 
                                  the thesis becomes P
                                     (H6
                                        we proceed by induction on H4 to prove lt i d
                                           case refl_equal : 
                                              the thesis becomes the hypothesis H2
lt i d
                                     end of H6
                                     consider H6
                                     we proved lt i d
                                     that is equivalent to le (S i) d
                                     by (le_false . . . H previous)
P
                            we proved P
(lt n d)P
                      end of h1
                      (h2
                         suppose H2le d n
                            (H3
                               by (lift_lref_ge . . . H2)
                               we proved eq T (lift h d (TLRef n)) (TLRef (plus n h))
                               we proceed by induction on the previous result to prove subst0 i u (TLRef (plus n h)) x
                                  case refl_equal : 
                                     the thesis becomes the hypothesis H1
subst0 i u (TLRef (plus n h)) x
                            end of H3
                            by (subst0_gen_lref . . . . H3)
                            we proved land (eq nat (plus n h) i) (eq T x (lift (S (plus n h)) O u))
                            we proceed by induction on the previous result to prove P
                               case conj : H4:eq nat (plus n h) i :eq T x (lift (S (plus n h)) O u) 
                                  the thesis becomes P
                                     (H6
                                        by (eq_ind_r . . . H0 . H4)
lt (plus n h) (plus d h)
                                     end of H6
                                     by (simpl_lt_plus_r . . . H6)
                                     we proved lt n d
                                     by (lt_le_S . . previous)
                                     we proved le (S n) d
                                     by (le_false . . . H2 previous)
P
                            we proved P
(le d n)P
                      end of h2
                      by (lt_le_e . . . h1 h2)
                      we proved P

                      u:T
                        .x:T
                          .h:nat
                            .d:nat
                              .i:nat
                                .H:(le d i).H0:(lt i (plus d h)).H1:(subst0 i u (lift h d (TLRef n)) x).P:Prop.P
             case THead : k:K t0:T t1:T 
                the thesis becomes 
                u:T
                  .x:T
                    .h:nat
                      .d:nat
                        .i:nat
                          .H1:(le d i).H2:(lt i (plus d h)).H3:(subst0 i u (lift h d (THead k t0 t1)) x).P:Prop.P
                (H) by induction hypothesis we know 
                   u:T
                     .x:T
                       .h:nat
                         .d:nat
                           .i:nat
                             .le d i
                               (lt i (plus d h))(subst0 i u (lift h d t0) x)P:Prop.P
                (H0) by induction hypothesis we know 
                   u:T
                     .x:T
                       .h:nat
                         .d:nat
                           .i:nat
                             .le d i
                               (lt i (plus d h))(subst0 i u (lift h d t1) x)P:Prop.P
                    assume uT
                    assume xT
                    assume hnat
                    assume dnat
                    assume inat
                    suppose H1le d i
                    suppose H2lt i (plus d h)
                    suppose H3subst0 i u (lift h d (THead k t0 t1)) x
                    assume PProp
                      (H4
                         by (lift_head . . . . .)
                         we proved 
                            eq
                              T
                              lift h d (THead k t0 t1)
                              THead k (lift h d t0) (lift h (s k d) t1)
                         we proceed by induction on the previous result to prove subst0 i u (THead k (lift h d t0) (lift h (s k d) t1)) x
                            case refl_equal : 
                               the thesis becomes the hypothesis H3
subst0 i u (THead k (lift h d t0) (lift h (s k d) t1)) x
                      end of H4
                      by (subst0_gen_head . . . . . . H4)
                      we proved 
                         or3
                           ex2 T λu2:T.eq T x (THead k u2 (lift h (s k d) t1)) λu2:T.subst0 i u (lift h d t0) u2
                           ex2 T λt2:T.eq T x (THead k (lift h d t0) t2) λt2:T.subst0 (s k i) u (lift h (s k d) t1) t2
                           ex3_2
                             T
                             T
                             λu2:T.λt2:T.eq T x (THead k u2 t2)
                             λu2:T.λ:T.subst0 i u (lift h d t0) u2
                             λ:T.λt2:T.subst0 (s k i) u (lift h (s k d) t1) t2
                      we proceed by induction on the previous result to prove P
                         case or3_intro0 : H5:ex2 T λu2:T.eq T x (THead k u2 (lift h (s k d) t1)) λu2:T.subst0 i u (lift h d t0) u2 
                            the thesis becomes P
                               we proceed by induction on H5 to prove P
                                  case ex_intro2 : x0:T :eq T x (THead k x0 (lift h (s k d) t1)) H7:subst0 i u (lift h d t0) x0 
                                     the thesis becomes P
                                        by (H . . . . . H1 H2 H7 .)
P
P
                         case or3_intro1 : H5:ex2 T λt2:T.eq T x (THead k (lift h d t0) t2) λt2:T.subst0 (s k i) u (lift h (s k d) t1) t2 
                            the thesis becomes P
                               we proceed by induction on H5 to prove P
                                  case ex_intro2 : x0:T :eq T x (THead k (lift h d t0) x0) H7:subst0 (s k i) u (lift h (s k d) t1) x0 
                                     the thesis becomes P
                                        (h1
                                           by (s_le . . . H1)
le (s k d) (s k i)
                                        end of h1
                                        (h2
                                           by (s_plus . . .)
                                           we proved eq nat (s k (plus d h)) (plus (s k d) h)
                                           we proceed by induction on the previous result to prove lt (s k i) (plus (s k d) h)
                                              case refl_equal : 
                                                 the thesis becomes lt (s k i) (s k (plus d h))
                                                    by (s_lt . . . H2)
                                                    we proved lt (s k i) (s k (plus d h))
                                                    by (lt_le_S . . previous)
                                                    we proved le (S (s k i)) (s k (plus d h))
lt (s k i) (s k (plus d h))
lt (s k i) (plus (s k d) h)
                                        end of h2
                                        by (H0 . . . . . h1 h2 H7 .)
P
P
                         case or3_intro2 : H5:ex3_2 T T λu2:T.λt2:T.eq T x (THead k u2 t2) λu2:T.λ:T.subst0 i u (lift h d t0) u2 λ:T.λt2:T.subst0 (s k i) u (lift h (s k d) t1) t2 
                            the thesis becomes P
                               we proceed by induction on H5 to prove P
                                  case ex3_2_intro : x0:T x1:T :eq T x (THead k x0 x1) H7:subst0 i u (lift h d t0) x0 :subst0 (s k i) u (lift h (s k d) t1) x1 
                                     the thesis becomes P
                                        by (H . . . . . H1 H2 H7 .)
P
P
                      we proved P

                      u:T
                        .x:T
                          .h:nat
                            .d:nat
                              .i:nat
                                .H1:(le d i).H2:(lt i (plus d h)).H3:(subst0 i u (lift h d (THead k t0 t1)) x).P:Prop.P
          we proved 
             u:T
               .x:T
                 .h:nat
                   .d:nat
                     .i:nat
                       .le d i
                         (lt i (plus d h))(subst0 i u (lift h d t) x)P:Prop.P
       we proved 
          t:T
            .u:T
              .x:T
                .h:nat
                  .d:nat
                    .i:nat
                      .le d i
                        (lt i (plus d h))(subst0 i u (lift h d t) x)P:Prop.P