DEFINITION pr0_subst0()
TYPE =
       t1:T.t2:T.(pr0 t1 t2)v1:T.w1:T.i:nat.(subst0 i v1 t1 w1)v2:T.(pr0 v1 v2)(or (pr0 w1 t2) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t2 w2))
BODY =
        assume t1T
        assume t2T
        suppose Hpr0 t1 t2
          we proceed by induction on H to prove v1:T.w1:T.i:nat.(subst0 i v1 t1 w1)v2:T.(pr0 v1 v2)(or (pr0 w1 t2) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t2 w2))
             case pr0_refl : t:T 
                the thesis becomes v1:T.w1:T.i:nat.H0:(subst0 i v1 t w1).v2:T.H1:(pr0 v1 v2).(or (pr0 w1 t) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t w2))
                    assume v1T
                    assume w1T
                    assume inat
                    suppose H0subst0 i v1 t w1
                    assume v2T
                    suppose H1pr0 v1 v2
                      by (pr0_subst0_fwd . . . . H0 . H1)
                      we proved ex2 T λt:T.subst0 i v2 t t λt:T.pr0 w1 t
                      by (ex2_sym . . . previous)
                      we proved ex2 T λx:T.pr0 w1 x λx:T.subst0 i v2 t x
                      by (or_intror . . previous)
                      we proved or (pr0 w1 t) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t w2)
v1:T.w1:T.i:nat.H0:(subst0 i v1 t w1).v2:T.H1:(pr0 v1 v2).(or (pr0 w1 t) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t w2))
             case pr0_comp : u1:T u2:T H0:pr0 u1 u2 t3:T t4:T H2:pr0 t3 t4 k:K 
                the thesis becomes 
                v1:T
                  .w1:T
                    .i:nat
                      .H4:subst0 i v1 (THead k u1 t3) w1
                        .v2:T.H5:(pr0 v1 v2).(or (pr0 w1 (THead k u2 t4)) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 (THead k u2 t4) w2))
                (H1) by induction hypothesis we know v1:T.w1:T.i:nat.(subst0 i v1 u1 w1)v2:T.(pr0 v1 v2)(or (pr0 w1 u2) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 u2 w2))
                (H3) by induction hypothesis we know v1:T.w1:T.i:nat.(subst0 i v1 t3 w1)v2:T.(pr0 v1 v2)(or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2))
                    assume v1T
                    assume w1T
                    assume inat
                    suppose H4subst0 i v1 (THead k u1 t3) w1
                    assume v2T
                    suppose H5pr0 v1 v2
                      by (subst0_gen_head . . . . . . H4)
                      we proved 
                         or3
                           ex2 T λu2:T.eq T w1 (THead k u2 t3) λu2:T.subst0 i v1 u1 u2
                           ex2 T λt2:T.eq T w1 (THead k u1 t2) λt2:T.subst0 (s k i) v1 t3 t2
                           ex3_2 T T λu2:T.λt2:T.eq T w1 (THead k u2 t2) λu2:T.λ:T.subst0 i v1 u1 u2 λ:T.λt2:T.subst0 (s k i) v1 t3 t2
                      we proceed by induction on the previous result to prove or (pr0 w1 (THead k u2 t4)) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 (THead k u2 t4) w2)
                         case or3_intro0 : H6:ex2 T λu3:T.eq T w1 (THead k u3 t3) λu3:T.subst0 i v1 u1 u3 
                            the thesis becomes or (pr0 w1 (THead k u2 t4)) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 (THead k u2 t4) w2)
                               we proceed by induction on H6 to prove or (pr0 w1 (THead k u2 t4)) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 (THead k u2 t4) w2)
                                  case ex_intro2 : x:T H7:eq T w1 (THead k x t3) H8:subst0 i v1 u1 x 
                                     the thesis becomes or (pr0 w1 (THead k u2 t4)) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 (THead k u2 t4) w2)
                                        by (H1 . . . H8 . H5)
                                        we proved or (pr0 x u2) (ex2 T λw2:T.pr0 x w2 λw2:T.subst0 i v2 u2 w2)
                                        we proceed by induction on the previous result to prove 
                                           or
                                             pr0 (THead k x t3) (THead k u2 t4)
                                             ex2 T λw2:T.pr0 (THead k x t3) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                           case or_introl : H9:pr0 x u2 
                                              the thesis becomes 
                                              or
                                                pr0 (THead k x t3) (THead k u2 t4)
                                                ex2 T λw2:T.pr0 (THead k x t3) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                                 by (pr0_comp . . H9 . . H2 .)
                                                 we proved pr0 (THead k x t3) (THead k u2 t4)
                                                 by (or_introl . . previous)

                                                    or
                                                      pr0 (THead k x t3) (THead k u2 t4)
                                                      ex2 T λw2:T.pr0 (THead k x t3) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                           case or_intror : H9:ex2 T λw2:T.pr0 x w2 λw2:T.subst0 i v2 u2 w2 
                                              the thesis becomes 
                                              or
                                                pr0 (THead k x t3) (THead k u2 t4)
                                                ex2 T λw2:T.pr0 (THead k x t3) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                                 we proceed by induction on H9 to prove 
                                                    or
                                                      pr0 (THead k x t3) (THead k u2 t4)
                                                      ex2 T λw2:T.pr0 (THead k x t3) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                                    case ex_intro2 : x0:T H10:pr0 x x0 H11:subst0 i v2 u2 x0 
                                                       the thesis becomes 
                                                       or
                                                         pr0 (THead k x t3) (THead k u2 t4)
                                                         ex2 T λw2:T.pr0 (THead k x t3) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                                          (h1
                                                             by (pr0_comp . . H10 . . H2 .)
pr0 (THead k x t3) (THead k x0 t4)
                                                          end of h1
                                                          (h2
                                                             by (subst0_fst . . . . H11 . .)
subst0 i v2 (THead k u2 t4) (THead k x0 t4)
                                                          end of h2
                                                          by (ex_intro2 . . . . h1 h2)
                                                          we proved ex2 T λw2:T.pr0 (THead k x t3) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                                          by (or_intror . . previous)

                                                             or
                                                               pr0 (THead k x t3) (THead k u2 t4)
                                                               ex2 T λw2:T.pr0 (THead k x t3) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2

                                                    or
                                                      pr0 (THead k x t3) (THead k u2 t4)
                                                      ex2 T λw2:T.pr0 (THead k x t3) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                        we proved 
                                           or
                                             pr0 (THead k x t3) (THead k u2 t4)
                                             ex2 T λw2:T.pr0 (THead k x t3) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                        by (eq_ind_r . . . previous . H7)
or (pr0 w1 (THead k u2 t4)) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 (THead k u2 t4) w2)
or (pr0 w1 (THead k u2 t4)) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 (THead k u2 t4) w2)
                         case or3_intro1 : H6:ex2 T λt5:T.eq T w1 (THead k u1 t5) λt5:T.subst0 (s k i) v1 t3 t5 
                            the thesis becomes or (pr0 w1 (THead k u2 t4)) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 (THead k u2 t4) w2)
                               we proceed by induction on H6 to prove or (pr0 w1 (THead k u2 t4)) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 (THead k u2 t4) w2)
                                  case ex_intro2 : x:T H7:eq T w1 (THead k u1 x) H8:subst0 (s k i) v1 t3 x 
                                     the thesis becomes or (pr0 w1 (THead k u2 t4)) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 (THead k u2 t4) w2)
                                        by (H3 . . . H8 . H5)
                                        we proved or (pr0 x t4) (ex2 T λw2:T.pr0 x w2 λw2:T.subst0 (s k i) v2 t4 w2)
                                        we proceed by induction on the previous result to prove 
                                           or
                                             pr0 (THead k u1 x) (THead k u2 t4)
                                             ex2 T λw2:T.pr0 (THead k u1 x) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                           case or_introl : H9:pr0 x t4 
                                              the thesis becomes 
                                              or
                                                pr0 (THead k u1 x) (THead k u2 t4)
                                                ex2 T λw2:T.pr0 (THead k u1 x) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                                 by (pr0_comp . . H0 . . H9 .)
                                                 we proved pr0 (THead k u1 x) (THead k u2 t4)
                                                 by (or_introl . . previous)

                                                    or
                                                      pr0 (THead k u1 x) (THead k u2 t4)
                                                      ex2 T λw2:T.pr0 (THead k u1 x) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                           case or_intror : H9:ex2 T λw2:T.pr0 x w2 λw2:T.subst0 (s k i) v2 t4 w2 
                                              the thesis becomes 
                                              or
                                                pr0 (THead k u1 x) (THead k u2 t4)
                                                ex2 T λw2:T.pr0 (THead k u1 x) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                                 we proceed by induction on H9 to prove 
                                                    or
                                                      pr0 (THead k u1 x) (THead k u2 t4)
                                                      ex2 T λw2:T.pr0 (THead k u1 x) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                                    case ex_intro2 : x0:T H10:pr0 x x0 H11:subst0 (s k i) v2 t4 x0 
                                                       the thesis becomes 
                                                       or
                                                         pr0 (THead k u1 x) (THead k u2 t4)
                                                         ex2 T λw2:T.pr0 (THead k u1 x) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                                          (h1
                                                             by (pr0_comp . . H0 . . H10 .)
pr0 (THead k u1 x) (THead k u2 x0)
                                                          end of h1
                                                          (h2
                                                             by (subst0_snd . . . . . H11 .)
subst0 i v2 (THead k u2 t4) (THead k u2 x0)
                                                          end of h2
                                                          by (ex_intro2 . . . . h1 h2)
                                                          we proved ex2 T λw2:T.pr0 (THead k u1 x) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                                          by (or_intror . . previous)

                                                             or
                                                               pr0 (THead k u1 x) (THead k u2 t4)
                                                               ex2 T λw2:T.pr0 (THead k u1 x) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2

                                                    or
                                                      pr0 (THead k u1 x) (THead k u2 t4)
                                                      ex2 T λw2:T.pr0 (THead k u1 x) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                        we proved 
                                           or
                                             pr0 (THead k u1 x) (THead k u2 t4)
                                             ex2 T λw2:T.pr0 (THead k u1 x) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                        by (eq_ind_r . . . previous . H7)
or (pr0 w1 (THead k u2 t4)) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 (THead k u2 t4) w2)
or (pr0 w1 (THead k u2 t4)) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 (THead k u2 t4) w2)
                         case or3_intro2 : H6:ex3_2 T T λu3:T.λt5:T.eq T w1 (THead k u3 t5) λu3:T.λ:T.subst0 i v1 u1 u3 λ:T.λt5:T.subst0 (s k i) v1 t3 t5 
                            the thesis becomes or (pr0 w1 (THead k u2 t4)) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 (THead k u2 t4) w2)
                               we proceed by induction on H6 to prove or (pr0 w1 (THead k u2 t4)) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 (THead k u2 t4) w2)
                                  case ex3_2_intro : x0:T x1:T H7:eq T w1 (THead k x0 x1) H8:subst0 i v1 u1 x0 H9:subst0 (s k i) v1 t3 x1 
                                     the thesis becomes or (pr0 w1 (THead k u2 t4)) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 (THead k u2 t4) w2)
                                        by (H3 . . . H9 . H5)
                                        we proved or (pr0 x1 t4) (ex2 T λw2:T.pr0 x1 w2 λw2:T.subst0 (s k i) v2 t4 w2)
                                        we proceed by induction on the previous result to prove 
                                           or
                                             pr0 (THead k x0 x1) (THead k u2 t4)
                                             ex2 T λw2:T.pr0 (THead k x0 x1) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                           case or_introl : H10:pr0 x1 t4 
                                              the thesis becomes 
                                              or
                                                pr0 (THead k x0 x1) (THead k u2 t4)
                                                ex2 T λw2:T.pr0 (THead k x0 x1) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                                 by (H1 . . . H8 . H5)
                                                 we proved or (pr0 x0 u2) (ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 i v2 u2 w2)
                                                 we proceed by induction on the previous result to prove 
                                                    or
                                                      pr0 (THead k x0 x1) (THead k u2 t4)
                                                      ex2 T λw2:T.pr0 (THead k x0 x1) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                                    case or_introl : H11:pr0 x0 u2 
                                                       the thesis becomes 
                                                       or
                                                         pr0 (THead k x0 x1) (THead k u2 t4)
                                                         ex2 T λw2:T.pr0 (THead k x0 x1) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                                          by (pr0_comp . . H11 . . H10 .)
                                                          we proved pr0 (THead k x0 x1) (THead k u2 t4)
                                                          by (or_introl . . previous)

                                                             or
                                                               pr0 (THead k x0 x1) (THead k u2 t4)
                                                               ex2 T λw2:T.pr0 (THead k x0 x1) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                                    case or_intror : H11:ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 i v2 u2 w2 
                                                       the thesis becomes 
                                                       or
                                                         pr0 (THead k x0 x1) (THead k u2 t4)
                                                         ex2 T λw2:T.pr0 (THead k x0 x1) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                                          we proceed by induction on H11 to prove 
                                                             or
                                                               pr0 (THead k x0 x1) (THead k u2 t4)
                                                               ex2 T λw2:T.pr0 (THead k x0 x1) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                                             case ex_intro2 : x:T H12:pr0 x0 x H13:subst0 i v2 u2 x 
                                                                the thesis becomes 
                                                                or
                                                                  pr0 (THead k x0 x1) (THead k u2 t4)
                                                                  ex2 T λw2:T.pr0 (THead k x0 x1) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                                                   (h1
                                                                      by (pr0_comp . . H12 . . H10 .)
pr0 (THead k x0 x1) (THead k x t4)
                                                                   end of h1
                                                                   (h2
                                                                      by (subst0_fst . . . . H13 . .)
subst0 i v2 (THead k u2 t4) (THead k x t4)
                                                                   end of h2
                                                                   by (ex_intro2 . . . . h1 h2)
                                                                   we proved ex2 T λw2:T.pr0 (THead k x0 x1) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                                                   by (or_intror . . previous)

                                                                      or
                                                                        pr0 (THead k x0 x1) (THead k u2 t4)
                                                                        ex2 T λw2:T.pr0 (THead k x0 x1) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2

                                                             or
                                                               pr0 (THead k x0 x1) (THead k u2 t4)
                                                               ex2 T λw2:T.pr0 (THead k x0 x1) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2

                                                    or
                                                      pr0 (THead k x0 x1) (THead k u2 t4)
                                                      ex2 T λw2:T.pr0 (THead k x0 x1) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                           case or_intror : H10:ex2 T λw2:T.pr0 x1 w2 λw2:T.subst0 (s k i) v2 t4 w2 
                                              the thesis becomes 
                                              or
                                                pr0 (THead k x0 x1) (THead k u2 t4)
                                                ex2 T λw2:T.pr0 (THead k x0 x1) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                                 we proceed by induction on H10 to prove 
                                                    or
                                                      pr0 (THead k x0 x1) (THead k u2 t4)
                                                      ex2 T λw2:T.pr0 (THead k x0 x1) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                                    case ex_intro2 : x:T H11:pr0 x1 x H12:subst0 (s k i) v2 t4 x 
                                                       the thesis becomes 
                                                       or
                                                         pr0 (THead k x0 x1) (THead k u2 t4)
                                                         ex2 T λw2:T.pr0 (THead k x0 x1) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                                          by (H1 . . . H8 . H5)
                                                          we proved or (pr0 x0 u2) (ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 i v2 u2 w2)
                                                          we proceed by induction on the previous result to prove 
                                                             or
                                                               pr0 (THead k x0 x1) (THead k u2 t4)
                                                               ex2 T λw2:T.pr0 (THead k x0 x1) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                                             case or_introl : H13:pr0 x0 u2 
                                                                the thesis becomes 
                                                                or
                                                                  pr0 (THead k x0 x1) (THead k u2 t4)
                                                                  ex2 T λw2:T.pr0 (THead k x0 x1) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                                                   (h1
                                                                      by (pr0_comp . . H13 . . H11 .)
pr0 (THead k x0 x1) (THead k u2 x)
                                                                   end of h1
                                                                   (h2
                                                                      by (subst0_snd . . . . . H12 .)
subst0 i v2 (THead k u2 t4) (THead k u2 x)
                                                                   end of h2
                                                                   by (ex_intro2 . . . . h1 h2)
                                                                   we proved ex2 T λw2:T.pr0 (THead k x0 x1) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                                                   by (or_intror . . previous)

                                                                      or
                                                                        pr0 (THead k x0 x1) (THead k u2 t4)
                                                                        ex2 T λw2:T.pr0 (THead k x0 x1) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                                             case or_intror : H13:ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 i v2 u2 w2 
                                                                the thesis becomes 
                                                                or
                                                                  pr0 (THead k x0 x1) (THead k u2 t4)
                                                                  ex2 T λw2:T.pr0 (THead k x0 x1) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                                                   we proceed by induction on H13 to prove 
                                                                      or
                                                                        pr0 (THead k x0 x1) (THead k u2 t4)
                                                                        ex2 T λw2:T.pr0 (THead k x0 x1) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                                                      case ex_intro2 : x2:T H14:pr0 x0 x2 H15:subst0 i v2 u2 x2 
                                                                         the thesis becomes 
                                                                         or
                                                                           pr0 (THead k x0 x1) (THead k u2 t4)
                                                                           ex2 T λw2:T.pr0 (THead k x0 x1) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                                                            (h1
                                                                               by (pr0_comp . . H14 . . H11 .)
pr0 (THead k x0 x1) (THead k x2 x)
                                                                            end of h1
                                                                            (h2
                                                                               by (subst0_both . . . . H15 . . . H12)
subst0 i v2 (THead k u2 t4) (THead k x2 x)
                                                                            end of h2
                                                                            by (ex_intro2 . . . . h1 h2)
                                                                            we proved ex2 T λw2:T.pr0 (THead k x0 x1) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                                                            by (or_intror . . previous)

                                                                               or
                                                                                 pr0 (THead k x0 x1) (THead k u2 t4)
                                                                                 ex2 T λw2:T.pr0 (THead k x0 x1) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2

                                                                      or
                                                                        pr0 (THead k x0 x1) (THead k u2 t4)
                                                                        ex2 T λw2:T.pr0 (THead k x0 x1) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2

                                                             or
                                                               pr0 (THead k x0 x1) (THead k u2 t4)
                                                               ex2 T λw2:T.pr0 (THead k x0 x1) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2

                                                    or
                                                      pr0 (THead k x0 x1) (THead k u2 t4)
                                                      ex2 T λw2:T.pr0 (THead k x0 x1) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                        we proved 
                                           or
                                             pr0 (THead k x0 x1) (THead k u2 t4)
                                             ex2 T λw2:T.pr0 (THead k x0 x1) w2 λw2:T.subst0 i v2 (THead k u2 t4) w2
                                        by (eq_ind_r . . . previous . H7)
or (pr0 w1 (THead k u2 t4)) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 (THead k u2 t4) w2)
or (pr0 w1 (THead k u2 t4)) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 (THead k u2 t4) w2)
                      we proved or (pr0 w1 (THead k u2 t4)) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 (THead k u2 t4) w2)

                      v1:T
                        .w1:T
                          .i:nat
                            .H4:subst0 i v1 (THead k u1 t3) w1
                              .v2:T.H5:(pr0 v1 v2).(or (pr0 w1 (THead k u2 t4)) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 (THead k u2 t4) w2))
             case pr0_beta : u:T v1:T v2:T H0:pr0 v1 v2 t3:T t4:T H2:pr0 t3 t4 
                the thesis becomes 
                v0:T
                  .w1:T
                    .i:nat
                      .H4:subst0 i v0 (THead (Flat Appl) v1 (THead (Bind Abst) u t3)) w1
                        .v3:T
                          .H5:pr0 v0 v3
                            .or
                              pr0 w1 (THead (Bind Abbr) v2 t4)
                              ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                (H1) by induction hypothesis we know v3:T.w1:T.i:nat.(subst0 i v3 v1 w1)v4:T.(pr0 v3 v4)(or (pr0 w1 v2) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v4 v2 w2))
                (H3) by induction hypothesis we know v3:T.w1:T.i:nat.(subst0 i v3 t3 w1)v4:T.(pr0 v3 v4)(or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v4 t4 w2))
                    assume v0T
                    assume w1T
                    assume inat
                    suppose H4subst0 i v0 (THead (Flat Appl) v1 (THead (Bind Abst) u t3)) w1
                    assume v3T
                    suppose H5pr0 v0 v3
                      by (subst0_gen_head . . . . . . H4)
                      we proved 
                         or3
                           ex2 T λu2:T.eq T w1 (THead (Flat Appl) u2 (THead (Bind Abst) u t3)) λu2:T.subst0 i v0 v1 u2
                           ex2
                             T
                             λt2:T.eq T w1 (THead (Flat Appl) v1 t2)
                             λt2:T.subst0 (s (Flat Appl) i) v0 (THead (Bind Abst) u t3) t2
                           ex3_2
                             T
                             T
                             λu2:T.λt2:T.eq T w1 (THead (Flat Appl) u2 t2)
                             λu2:T.λ:T.subst0 i v0 v1 u2
                             λ:T.λt2:T.subst0 (s (Flat Appl) i) v0 (THead (Bind Abst) u t3) t2
                      we proceed by induction on the previous result to prove 
                         or
                           pr0 w1 (THead (Bind Abbr) v2 t4)
                           ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                         case or3_intro0 : H6:ex2 T λu2:T.eq T w1 (THead (Flat Appl) u2 (THead (Bind Abst) u t3)) λu2:T.subst0 i v0 v1 u2 
                            the thesis becomes 
                            or
                              pr0 w1 (THead (Bind Abbr) v2 t4)
                              ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                               we proceed by induction on H6 to prove 
                                  or
                                    pr0 w1 (THead (Bind Abbr) v2 t4)
                                    ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                  case ex_intro2 : x:T H7:eq T w1 (THead (Flat Appl) x (THead (Bind Abst) u t3)) H8:subst0 i v0 v1 x 
                                     the thesis becomes 
                                     or
                                       pr0 w1 (THead (Bind Abbr) v2 t4)
                                       ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                        by (H1 . . . H8 . H5)
                                        we proved or (pr0 x v2) (ex2 T λw2:T.pr0 x w2 λw2:T.subst0 i v3 v2 w2)
                                        we proceed by induction on the previous result to prove 
                                           or
                                             pr0
                                               THead (Flat Appl) x (THead (Bind Abst) u t3)
                                               THead (Bind Abbr) v2 t4
                                             ex2
                                               T
                                               λw2:T.pr0 (THead (Flat Appl) x (THead (Bind Abst) u t3)) w2
                                               λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                           case or_introl : H9:pr0 x v2 
                                              the thesis becomes 
                                              or
                                                pr0
                                                  THead (Flat Appl) x (THead (Bind Abst) u t3)
                                                  THead (Bind Abbr) v2 t4
                                                ex2
                                                  T
                                                  λw2:T.pr0 (THead (Flat Appl) x (THead (Bind Abst) u t3)) w2
                                                  λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                 by (pr0_beta . . . H9 . . H2)
                                                 we proved 
                                                    pr0
                                                      THead (Flat Appl) x (THead (Bind Abst) u t3)
                                                      THead (Bind Abbr) v2 t4
                                                 by (or_introl . . previous)

                                                    or
                                                      pr0
                                                        THead (Flat Appl) x (THead (Bind Abst) u t3)
                                                        THead (Bind Abbr) v2 t4
                                                      ex2
                                                        T
                                                        λw2:T.pr0 (THead (Flat Appl) x (THead (Bind Abst) u t3)) w2
                                                        λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                           case or_intror : H9:ex2 T λw2:T.pr0 x w2 λw2:T.subst0 i v3 v2 w2 
                                              the thesis becomes 
                                              or
                                                pr0
                                                  THead (Flat Appl) x (THead (Bind Abst) u t3)
                                                  THead (Bind Abbr) v2 t4
                                                ex2
                                                  T
                                                  λw2:T.pr0 (THead (Flat Appl) x (THead (Bind Abst) u t3)) w2
                                                  λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                 we proceed by induction on H9 to prove 
                                                    or
                                                      pr0
                                                        THead (Flat Appl) x (THead (Bind Abst) u t3)
                                                        THead (Bind Abbr) v2 t4
                                                      ex2
                                                        T
                                                        λw2:T.pr0 (THead (Flat Appl) x (THead (Bind Abst) u t3)) w2
                                                        λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                    case ex_intro2 : x0:T H10:pr0 x x0 H11:subst0 i v3 v2 x0 
                                                       the thesis becomes 
                                                       or
                                                         pr0
                                                           THead (Flat Appl) x (THead (Bind Abst) u t3)
                                                           THead (Bind Abbr) v2 t4
                                                         ex2
                                                           T
                                                           λw2:T.pr0 (THead (Flat Appl) x (THead (Bind Abst) u t3)) w2
                                                           λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                          (h1
                                                             by (pr0_beta . . . H10 . . H2)

                                                                pr0
                                                                  THead (Flat Appl) x (THead (Bind Abst) u t3)
                                                                  THead (Bind Abbr) x0 t4
                                                          end of h1
                                                          (h2
                                                             by (subst0_fst . . . . H11 . .)
subst0 i v3 (THead (Bind Abbr) v2 t4) (THead (Bind Abbr) x0 t4)
                                                          end of h2
                                                          by (ex_intro2 . . . . h1 h2)
                                                          we proved 
                                                             ex2
                                                               T
                                                               λw2:T.pr0 (THead (Flat Appl) x (THead (Bind Abst) u t3)) w2
                                                               λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                          by (or_intror . . previous)

                                                             or
                                                               pr0
                                                                 THead (Flat Appl) x (THead (Bind Abst) u t3)
                                                                 THead (Bind Abbr) v2 t4
                                                               ex2
                                                                 T
                                                                 λw2:T.pr0 (THead (Flat Appl) x (THead (Bind Abst) u t3)) w2
                                                                 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2

                                                    or
                                                      pr0
                                                        THead (Flat Appl) x (THead (Bind Abst) u t3)
                                                        THead (Bind Abbr) v2 t4
                                                      ex2
                                                        T
                                                        λw2:T.pr0 (THead (Flat Appl) x (THead (Bind Abst) u t3)) w2
                                                        λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                        we proved 
                                           or
                                             pr0
                                               THead (Flat Appl) x (THead (Bind Abst) u t3)
                                               THead (Bind Abbr) v2 t4
                                             ex2
                                               T
                                               λw2:T.pr0 (THead (Flat Appl) x (THead (Bind Abst) u t3)) w2
                                               λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                        by (eq_ind_r . . . previous . H7)

                                           or
                                             pr0 w1 (THead (Bind Abbr) v2 t4)
                                             ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2

                                  or
                                    pr0 w1 (THead (Bind Abbr) v2 t4)
                                    ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                         case or3_intro1 : H6:ex2 T λt5:T.eq T w1 (THead (Flat Appl) v1 t5) λt5:T.subst0 (s (Flat Appl) i) v0 (THead (Bind Abst) u t3) t5 
                            the thesis becomes 
                            or
                              pr0 w1 (THead (Bind Abbr) v2 t4)
                              ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                               we proceed by induction on H6 to prove 
                                  or
                                    pr0 w1 (THead (Bind Abbr) v2 t4)
                                    ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                  case ex_intro2 : x:T H7:eq T w1 (THead (Flat Appl) v1 x) H8:subst0 (s (Flat Appl) i) v0 (THead (Bind Abst) u t3) x 
                                     the thesis becomes 
                                     or
                                       pr0 w1 (THead (Bind Abbr) v2 t4)
                                       ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                        by (subst0_gen_head . . . . . . H8)
                                        we proved 
                                           or3
                                             ex2 T λu2:T.eq T x (THead (Bind Abst) u2 t3) λu2:T.subst0 (s (Flat Appl) i) v0 u u2
                                             ex2
                                               T
                                               λt2:T.eq T x (THead (Bind Abst) u t2)
                                               λt2:T.subst0 (s (Bind Abst) (s (Flat Appl) i)) v0 t3 t2
                                             ex3_2
                                               T
                                               T
                                               λu2:T.λt2:T.eq T x (THead (Bind Abst) u2 t2)
                                               λu2:T.λ:T.subst0 (s (Flat Appl) i) v0 u u2
                                               λ:T.λt2:T.subst0 (s (Bind Abst) (s (Flat Appl) i)) v0 t3 t2
                                        we proceed by induction on the previous result to prove 
                                           or
                                             pr0 w1 (THead (Bind Abbr) v2 t4)
                                             ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                           case or3_intro0 : H9:ex2 T λu2:T.eq T x (THead (Bind Abst) u2 t3) λu2:T.subst0 (s (Flat Appl) i) v0 u u2 
                                              the thesis becomes 
                                              or
                                                pr0 w1 (THead (Bind Abbr) v2 t4)
                                                ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                 we proceed by induction on H9 to prove 
                                                    or
                                                      pr0 w1 (THead (Bind Abbr) v2 t4)
                                                      ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                    case ex_intro2 : x0:T H10:eq T x (THead (Bind Abst) x0 t3) :subst0 (s (Flat Appl) i) v0 u x0 
                                                       the thesis becomes 
                                                       or
                                                         pr0 w1 (THead (Bind Abbr) v2 t4)
                                                         ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                          (H12
                                                             we proceed by induction on H10 to prove eq T w1 (THead (Flat Appl) v1 (THead (Bind Abst) x0 t3))
                                                                case refl_equal : 
                                                                   the thesis becomes the hypothesis H7
eq T w1 (THead (Flat Appl) v1 (THead (Bind Abst) x0 t3))
                                                          end of H12
                                                          by (pr0_beta . . . H0 . . H2)
                                                          we proved 
                                                             pr0
                                                               THead (Flat Appl) v1 (THead (Bind Abst) x0 t3)
                                                               THead (Bind Abbr) v2 t4
                                                          by (or_introl . . previous)
                                                          we proved 
                                                             or
                                                               pr0
                                                                 THead (Flat Appl) v1 (THead (Bind Abst) x0 t3)
                                                                 THead (Bind Abbr) v2 t4
                                                               ex2
                                                                 T
                                                                 λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind Abst) x0 t3)) w2
                                                                 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                          by (eq_ind_r . . . previous . H12)

                                                             or
                                                               pr0 w1 (THead (Bind Abbr) v2 t4)
                                                               ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2

                                                    or
                                                      pr0 w1 (THead (Bind Abbr) v2 t4)
                                                      ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                           case or3_intro1 : H9:ex2 T λt5:T.eq T x (THead (Bind Abst) u t5) λt5:T.subst0 (s (Bind Abst) (s (Flat Appl) i)) v0 t3 t5 
                                              the thesis becomes 
                                              or
                                                pr0 w1 (THead (Bind Abbr) v2 t4)
                                                ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                 we proceed by induction on H9 to prove 
                                                    or
                                                      pr0 w1 (THead (Bind Abbr) v2 t4)
                                                      ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                    case ex_intro2 : x0:T H10:eq T x (THead (Bind Abst) u x0) H11:subst0 (s (Bind Abst) (s (Flat Appl) i)) v0 t3 x0 
                                                       the thesis becomes 
                                                       or
                                                         pr0 w1 (THead (Bind Abbr) v2 t4)
                                                         ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                          (H12
                                                             we proceed by induction on H10 to prove eq T w1 (THead (Flat Appl) v1 (THead (Bind Abst) u x0))
                                                                case refl_equal : 
                                                                   the thesis becomes the hypothesis H7
eq T w1 (THead (Flat Appl) v1 (THead (Bind Abst) u x0))
                                                          end of H12
                                                          by (H3 . . . H11 . H5)
                                                          we proved or (pr0 x0 t4) (ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 (s (Bind Abst) (s (Flat Appl) i)) v3 t4 w2)
                                                          we proceed by induction on the previous result to prove 
                                                             or
                                                               pr0
                                                                 THead (Flat Appl) v1 (THead (Bind Abst) u x0)
                                                                 THead (Bind Abbr) v2 t4
                                                               ex2
                                                                 T
                                                                 λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind Abst) u x0)) w2
                                                                 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                             case or_introl : H13:pr0 x0 t4 
                                                                the thesis becomes 
                                                                or
                                                                  pr0
                                                                    THead (Flat Appl) v1 (THead (Bind Abst) u x0)
                                                                    THead (Bind Abbr) v2 t4
                                                                  ex2
                                                                    T
                                                                    λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind Abst) u x0)) w2
                                                                    λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                   by (pr0_beta . . . H0 . . H13)
                                                                   we proved 
                                                                      pr0
                                                                        THead (Flat Appl) v1 (THead (Bind Abst) u x0)
                                                                        THead (Bind Abbr) v2 t4
                                                                   by (or_introl . . previous)

                                                                      or
                                                                        pr0
                                                                          THead (Flat Appl) v1 (THead (Bind Abst) u x0)
                                                                          THead (Bind Abbr) v2 t4
                                                                        ex2
                                                                          T
                                                                          λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind Abst) u x0)) w2
                                                                          λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                             case or_intror : H13:ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 (s (Bind Abst) (s (Flat Appl) i)) v3 t4 w2 
                                                                the thesis becomes 
                                                                or
                                                                  pr0
                                                                    THead (Flat Appl) v1 (THead (Bind Abst) u x0)
                                                                    THead (Bind Abbr) v2 t4
                                                                  ex2
                                                                    T
                                                                    λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind Abst) u x0)) w2
                                                                    λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                   we proceed by induction on H13 to prove 
                                                                      or
                                                                        pr0
                                                                          THead (Flat Appl) v1 (THead (Bind Abst) u x0)
                                                                          THead (Bind Abbr) v2 t4
                                                                        ex2
                                                                          T
                                                                          λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind Abst) u x0)) w2
                                                                          λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                      case ex_intro2 : x1:T H14:pr0 x0 x1 H15:subst0 (s (Bind Abst) (s (Flat Appl) i)) v3 t4 x1 
                                                                         the thesis becomes 
                                                                         or
                                                                           pr0
                                                                             THead (Flat Appl) v1 (THead (Bind Abst) u x0)
                                                                             THead (Bind Abbr) v2 t4
                                                                           ex2
                                                                             T
                                                                             λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind Abst) u x0)) w2
                                                                             λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                            (h1
                                                                               by (pr0_beta . . . H0 . . H14)

                                                                                  pr0
                                                                                    THead (Flat Appl) v1 (THead (Bind Abst) u x0)
                                                                                    THead (Bind Abbr) v2 x1
                                                                            end of h1
                                                                            (h2
                                                                               consider H15
                                                                               we proved subst0 (s (Bind Abst) (s (Flat Appl) i)) v3 t4 x1
                                                                               that is equivalent to subst0 (s (Bind Abbr) i) v3 t4 x1
                                                                               by (subst0_snd . . . . . previous .)
subst0 i v3 (THead (Bind Abbr) v2 t4) (THead (Bind Abbr) v2 x1)
                                                                            end of h2
                                                                            by (ex_intro2 . . . . h1 h2)
                                                                            we proved 
                                                                               ex2
                                                                                 T
                                                                                 λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind Abst) u x0)) w2
                                                                                 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                            by (or_intror . . previous)

                                                                               or
                                                                                 pr0
                                                                                   THead (Flat Appl) v1 (THead (Bind Abst) u x0)
                                                                                   THead (Bind Abbr) v2 t4
                                                                                 ex2
                                                                                   T
                                                                                   λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind Abst) u x0)) w2
                                                                                   λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2

                                                                      or
                                                                        pr0
                                                                          THead (Flat Appl) v1 (THead (Bind Abst) u x0)
                                                                          THead (Bind Abbr) v2 t4
                                                                        ex2
                                                                          T
                                                                          λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind Abst) u x0)) w2
                                                                          λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                          we proved 
                                                             or
                                                               pr0
                                                                 THead (Flat Appl) v1 (THead (Bind Abst) u x0)
                                                                 THead (Bind Abbr) v2 t4
                                                               ex2
                                                                 T
                                                                 λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind Abst) u x0)) w2
                                                                 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                          by (eq_ind_r . . . previous . H12)

                                                             or
                                                               pr0 w1 (THead (Bind Abbr) v2 t4)
                                                               ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2

                                                    or
                                                      pr0 w1 (THead (Bind Abbr) v2 t4)
                                                      ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                           case or3_intro2 : H9:ex3_2 T T λu2:T.λt5:T.eq T x (THead (Bind Abst) u2 t5) λu2:T.λ:T.subst0 (s (Flat Appl) i) v0 u u2 λ:T.λt5:T.subst0 (s (Bind Abst) (s (Flat Appl) i)) v0 t3 t5 
                                              the thesis becomes 
                                              or
                                                pr0 w1 (THead (Bind Abbr) v2 t4)
                                                ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                 we proceed by induction on H9 to prove 
                                                    or
                                                      pr0 w1 (THead (Bind Abbr) v2 t4)
                                                      ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                    case ex3_2_intro : x0:T x1:T H10:eq T x (THead (Bind Abst) x0 x1) :subst0 (s (Flat Appl) i) v0 u x0 H12:subst0 (s (Bind Abst) (s (Flat Appl) i)) v0 t3 x1 
                                                       the thesis becomes 
                                                       or
                                                         pr0 w1 (THead (Bind Abbr) v2 t4)
                                                         ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                          (H13
                                                             we proceed by induction on H10 to prove eq T w1 (THead (Flat Appl) v1 (THead (Bind Abst) x0 x1))
                                                                case refl_equal : 
                                                                   the thesis becomes the hypothesis H7
eq T w1 (THead (Flat Appl) v1 (THead (Bind Abst) x0 x1))
                                                          end of H13
                                                          by (H3 . . . H12 . H5)
                                                          we proved or (pr0 x1 t4) (ex2 T λw2:T.pr0 x1 w2 λw2:T.subst0 (s (Bind Abst) (s (Flat Appl) i)) v3 t4 w2)
                                                          we proceed by induction on the previous result to prove 
                                                             or
                                                               pr0
                                                                 THead (Flat Appl) v1 (THead (Bind Abst) x0 x1)
                                                                 THead (Bind Abbr) v2 t4
                                                               ex2
                                                                 T
                                                                 λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind Abst) x0 x1)) w2
                                                                 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                             case or_introl : H14:pr0 x1 t4 
                                                                the thesis becomes 
                                                                or
                                                                  pr0
                                                                    THead (Flat Appl) v1 (THead (Bind Abst) x0 x1)
                                                                    THead (Bind Abbr) v2 t4
                                                                  ex2
                                                                    T
                                                                    λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind Abst) x0 x1)) w2
                                                                    λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                   by (pr0_beta . . . H0 . . H14)
                                                                   we proved 
                                                                      pr0
                                                                        THead (Flat Appl) v1 (THead (Bind Abst) x0 x1)
                                                                        THead (Bind Abbr) v2 t4
                                                                   by (or_introl . . previous)

                                                                      or
                                                                        pr0
                                                                          THead (Flat Appl) v1 (THead (Bind Abst) x0 x1)
                                                                          THead (Bind Abbr) v2 t4
                                                                        ex2
                                                                          T
                                                                          λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind Abst) x0 x1)) w2
                                                                          λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                             case or_intror : H14:ex2 T λw2:T.pr0 x1 w2 λw2:T.subst0 (s (Bind Abst) (s (Flat Appl) i)) v3 t4 w2 
                                                                the thesis becomes 
                                                                or
                                                                  pr0
                                                                    THead (Flat Appl) v1 (THead (Bind Abst) x0 x1)
                                                                    THead (Bind Abbr) v2 t4
                                                                  ex2
                                                                    T
                                                                    λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind Abst) x0 x1)) w2
                                                                    λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                   we proceed by induction on H14 to prove 
                                                                      or
                                                                        pr0
                                                                          THead (Flat Appl) v1 (THead (Bind Abst) x0 x1)
                                                                          THead (Bind Abbr) v2 t4
                                                                        ex2
                                                                          T
                                                                          λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind Abst) x0 x1)) w2
                                                                          λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                      case ex_intro2 : x2:T H15:pr0 x1 x2 H16:subst0 (s (Bind Abst) (s (Flat Appl) i)) v3 t4 x2 
                                                                         the thesis becomes 
                                                                         or
                                                                           pr0
                                                                             THead (Flat Appl) v1 (THead (Bind Abst) x0 x1)
                                                                             THead (Bind Abbr) v2 t4
                                                                           ex2
                                                                             T
                                                                             λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind Abst) x0 x1)) w2
                                                                             λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                            (h1
                                                                               by (pr0_beta . . . H0 . . H15)

                                                                                  pr0
                                                                                    THead (Flat Appl) v1 (THead (Bind Abst) x0 x1)
                                                                                    THead (Bind Abbr) v2 x2
                                                                            end of h1
                                                                            (h2
                                                                               consider H16
                                                                               we proved subst0 (s (Bind Abst) (s (Flat Appl) i)) v3 t4 x2
                                                                               that is equivalent to subst0 (s (Bind Abbr) i) v3 t4 x2
                                                                               by (subst0_snd . . . . . previous .)
subst0 i v3 (THead (Bind Abbr) v2 t4) (THead (Bind Abbr) v2 x2)
                                                                            end of h2
                                                                            by (ex_intro2 . . . . h1 h2)
                                                                            we proved 
                                                                               ex2
                                                                                 T
                                                                                 λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind Abst) x0 x1)) w2
                                                                                 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                            by (or_intror . . previous)

                                                                               or
                                                                                 pr0
                                                                                   THead (Flat Appl) v1 (THead (Bind Abst) x0 x1)
                                                                                   THead (Bind Abbr) v2 t4
                                                                                 ex2
                                                                                   T
                                                                                   λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind Abst) x0 x1)) w2
                                                                                   λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2

                                                                      or
                                                                        pr0
                                                                          THead (Flat Appl) v1 (THead (Bind Abst) x0 x1)
                                                                          THead (Bind Abbr) v2 t4
                                                                        ex2
                                                                          T
                                                                          λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind Abst) x0 x1)) w2
                                                                          λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                          we proved 
                                                             or
                                                               pr0
                                                                 THead (Flat Appl) v1 (THead (Bind Abst) x0 x1)
                                                                 THead (Bind Abbr) v2 t4
                                                               ex2
                                                                 T
                                                                 λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind Abst) x0 x1)) w2
                                                                 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                          by (eq_ind_r . . . previous . H13)

                                                             or
                                                               pr0 w1 (THead (Bind Abbr) v2 t4)
                                                               ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2

                                                    or
                                                      pr0 w1 (THead (Bind Abbr) v2 t4)
                                                      ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2

                                           or
                                             pr0 w1 (THead (Bind Abbr) v2 t4)
                                             ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2

                                  or
                                    pr0 w1 (THead (Bind Abbr) v2 t4)
                                    ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                         case or3_intro2 : H6:ex3_2 T T λu2:T.λt5:T.eq T w1 (THead (Flat Appl) u2 t5) λu2:T.λ:T.subst0 i v0 v1 u2 λ:T.λt5:T.subst0 (s (Flat Appl) i) v0 (THead (Bind Abst) u t3) t5 
                            the thesis becomes 
                            or
                              pr0 w1 (THead (Bind Abbr) v2 t4)
                              ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                               we proceed by induction on H6 to prove 
                                  or
                                    pr0 w1 (THead (Bind Abbr) v2 t4)
                                    ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                  case ex3_2_intro : x0:T x1:T H7:eq T w1 (THead (Flat Appl) x0 x1) H8:subst0 i v0 v1 x0 H9:subst0 (s (Flat Appl) i) v0 (THead (Bind Abst) u t3) x1 
                                     the thesis becomes 
                                     or
                                       pr0 w1 (THead (Bind Abbr) v2 t4)
                                       ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                        by (subst0_gen_head . . . . . . H9)
                                        we proved 
                                           or3
                                             ex2 T λu2:T.eq T x1 (THead (Bind Abst) u2 t3) λu2:T.subst0 (s (Flat Appl) i) v0 u u2
                                             ex2
                                               T
                                               λt2:T.eq T x1 (THead (Bind Abst) u t2)
                                               λt2:T.subst0 (s (Bind Abst) (s (Flat Appl) i)) v0 t3 t2
                                             ex3_2
                                               T
                                               T
                                               λu2:T.λt2:T.eq T x1 (THead (Bind Abst) u2 t2)
                                               λu2:T.λ:T.subst0 (s (Flat Appl) i) v0 u u2
                                               λ:T.λt2:T.subst0 (s (Bind Abst) (s (Flat Appl) i)) v0 t3 t2
                                        we proceed by induction on the previous result to prove 
                                           or
                                             pr0 w1 (THead (Bind Abbr) v2 t4)
                                             ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                           case or3_intro0 : H10:ex2 T λu2:T.eq T x1 (THead (Bind Abst) u2 t3) λu2:T.subst0 (s (Flat Appl) i) v0 u u2 
                                              the thesis becomes 
                                              or
                                                pr0 w1 (THead (Bind Abbr) v2 t4)
                                                ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                 we proceed by induction on H10 to prove 
                                                    or
                                                      pr0 w1 (THead (Bind Abbr) v2 t4)
                                                      ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                    case ex_intro2 : x:T H11:eq T x1 (THead (Bind Abst) x t3) :subst0 (s (Flat Appl) i) v0 u x 
                                                       the thesis becomes 
                                                       or
                                                         pr0 w1 (THead (Bind Abbr) v2 t4)
                                                         ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                          (H13
                                                             we proceed by induction on H11 to prove eq T w1 (THead (Flat Appl) x0 (THead (Bind Abst) x t3))
                                                                case refl_equal : 
                                                                   the thesis becomes the hypothesis H7
eq T w1 (THead (Flat Appl) x0 (THead (Bind Abst) x t3))
                                                          end of H13
                                                          by (H1 . . . H8 . H5)
                                                          we proved or (pr0 x0 v2) (ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 i v3 v2 w2)
                                                          we proceed by induction on the previous result to prove 
                                                             or
                                                               pr0
                                                                 THead (Flat Appl) x0 (THead (Bind Abst) x t3)
                                                                 THead (Bind Abbr) v2 t4
                                                               ex2
                                                                 T
                                                                 λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) x t3)) w2
                                                                 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                             case or_introl : H14:pr0 x0 v2 
                                                                the thesis becomes 
                                                                or
                                                                  pr0
                                                                    THead (Flat Appl) x0 (THead (Bind Abst) x t3)
                                                                    THead (Bind Abbr) v2 t4
                                                                  ex2
                                                                    T
                                                                    λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) x t3)) w2
                                                                    λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                   by (pr0_beta . . . H14 . . H2)
                                                                   we proved 
                                                                      pr0
                                                                        THead (Flat Appl) x0 (THead (Bind Abst) x t3)
                                                                        THead (Bind Abbr) v2 t4
                                                                   by (or_introl . . previous)

                                                                      or
                                                                        pr0
                                                                          THead (Flat Appl) x0 (THead (Bind Abst) x t3)
                                                                          THead (Bind Abbr) v2 t4
                                                                        ex2
                                                                          T
                                                                          λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) x t3)) w2
                                                                          λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                             case or_intror : H14:ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 i v3 v2 w2 
                                                                the thesis becomes 
                                                                or
                                                                  pr0
                                                                    THead (Flat Appl) x0 (THead (Bind Abst) x t3)
                                                                    THead (Bind Abbr) v2 t4
                                                                  ex2
                                                                    T
                                                                    λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) x t3)) w2
                                                                    λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                   we proceed by induction on H14 to prove 
                                                                      or
                                                                        pr0
                                                                          THead (Flat Appl) x0 (THead (Bind Abst) x t3)
                                                                          THead (Bind Abbr) v2 t4
                                                                        ex2
                                                                          T
                                                                          λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) x t3)) w2
                                                                          λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                      case ex_intro2 : x2:T H15:pr0 x0 x2 H16:subst0 i v3 v2 x2 
                                                                         the thesis becomes 
                                                                         or
                                                                           pr0
                                                                             THead (Flat Appl) x0 (THead (Bind Abst) x t3)
                                                                             THead (Bind Abbr) v2 t4
                                                                           ex2
                                                                             T
                                                                             λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) x t3)) w2
                                                                             λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                            (h1
                                                                               by (pr0_beta . . . H15 . . H2)

                                                                                  pr0
                                                                                    THead (Flat Appl) x0 (THead (Bind Abst) x t3)
                                                                                    THead (Bind Abbr) x2 t4
                                                                            end of h1
                                                                            (h2
                                                                               by (subst0_fst . . . . H16 . .)
subst0 i v3 (THead (Bind Abbr) v2 t4) (THead (Bind Abbr) x2 t4)
                                                                            end of h2
                                                                            by (ex_intro2 . . . . h1 h2)
                                                                            we proved 
                                                                               ex2
                                                                                 T
                                                                                 λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) x t3)) w2
                                                                                 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                            by (or_intror . . previous)

                                                                               or
                                                                                 pr0
                                                                                   THead (Flat Appl) x0 (THead (Bind Abst) x t3)
                                                                                   THead (Bind Abbr) v2 t4
                                                                                 ex2
                                                                                   T
                                                                                   λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) x t3)) w2
                                                                                   λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2

                                                                      or
                                                                        pr0
                                                                          THead (Flat Appl) x0 (THead (Bind Abst) x t3)
                                                                          THead (Bind Abbr) v2 t4
                                                                        ex2
                                                                          T
                                                                          λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) x t3)) w2
                                                                          λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                          we proved 
                                                             or
                                                               pr0
                                                                 THead (Flat Appl) x0 (THead (Bind Abst) x t3)
                                                                 THead (Bind Abbr) v2 t4
                                                               ex2
                                                                 T
                                                                 λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) x t3)) w2
                                                                 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                          by (eq_ind_r . . . previous . H13)

                                                             or
                                                               pr0 w1 (THead (Bind Abbr) v2 t4)
                                                               ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2

                                                    or
                                                      pr0 w1 (THead (Bind Abbr) v2 t4)
                                                      ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                           case or3_intro1 : H10:ex2 T λt5:T.eq T x1 (THead (Bind Abst) u t5) λt5:T.subst0 (s (Bind Abst) (s (Flat Appl) i)) v0 t3 t5 
                                              the thesis becomes 
                                              or
                                                pr0 w1 (THead (Bind Abbr) v2 t4)
                                                ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                 we proceed by induction on H10 to prove 
                                                    or
                                                      pr0 w1 (THead (Bind Abbr) v2 t4)
                                                      ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                    case ex_intro2 : x:T H11:eq T x1 (THead (Bind Abst) u x) H12:subst0 (s (Bind Abst) (s (Flat Appl) i)) v0 t3 x 
                                                       the thesis becomes 
                                                       or
                                                         pr0 w1 (THead (Bind Abbr) v2 t4)
                                                         ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                          (H13
                                                             we proceed by induction on H11 to prove eq T w1 (THead (Flat Appl) x0 (THead (Bind Abst) u x))
                                                                case refl_equal : 
                                                                   the thesis becomes the hypothesis H7
eq T w1 (THead (Flat Appl) x0 (THead (Bind Abst) u x))
                                                          end of H13
                                                          by (H3 . . . H12 . H5)
                                                          we proved or (pr0 x t4) (ex2 T λw2:T.pr0 x w2 λw2:T.subst0 (s (Bind Abst) (s (Flat Appl) i)) v3 t4 w2)
                                                          we proceed by induction on the previous result to prove 
                                                             or
                                                               pr0
                                                                 THead (Flat Appl) x0 (THead (Bind Abst) u x)
                                                                 THead (Bind Abbr) v2 t4
                                                               ex2
                                                                 T
                                                                 λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) u x)) w2
                                                                 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                             case or_introl : H14:pr0 x t4 
                                                                the thesis becomes 
                                                                or
                                                                  pr0
                                                                    THead (Flat Appl) x0 (THead (Bind Abst) u x)
                                                                    THead (Bind Abbr) v2 t4
                                                                  ex2
                                                                    T
                                                                    λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) u x)) w2
                                                                    λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                   by (H1 . . . H8 . H5)
                                                                   we proved or (pr0 x0 v2) (ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 i v3 v2 w2)
                                                                   we proceed by induction on the previous result to prove 
                                                                      or
                                                                        pr0
                                                                          THead (Flat Appl) x0 (THead (Bind Abst) u x)
                                                                          THead (Bind Abbr) v2 t4
                                                                        ex2
                                                                          T
                                                                          λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) u x)) w2
                                                                          λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                      case or_introl : H15:pr0 x0 v2 
                                                                         the thesis becomes 
                                                                         or
                                                                           pr0
                                                                             THead (Flat Appl) x0 (THead (Bind Abst) u x)
                                                                             THead (Bind Abbr) v2 t4
                                                                           ex2
                                                                             T
                                                                             λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) u x)) w2
                                                                             λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                            by (pr0_beta . . . H15 . . H14)
                                                                            we proved 
                                                                               pr0
                                                                                 THead (Flat Appl) x0 (THead (Bind Abst) u x)
                                                                                 THead (Bind Abbr) v2 t4
                                                                            by (or_introl . . previous)

                                                                               or
                                                                                 pr0
                                                                                   THead (Flat Appl) x0 (THead (Bind Abst) u x)
                                                                                   THead (Bind Abbr) v2 t4
                                                                                 ex2
                                                                                   T
                                                                                   λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) u x)) w2
                                                                                   λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                      case or_intror : H15:ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 i v3 v2 w2 
                                                                         the thesis becomes 
                                                                         or
                                                                           pr0
                                                                             THead (Flat Appl) x0 (THead (Bind Abst) u x)
                                                                             THead (Bind Abbr) v2 t4
                                                                           ex2
                                                                             T
                                                                             λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) u x)) w2
                                                                             λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                            we proceed by induction on H15 to prove 
                                                                               or
                                                                                 pr0
                                                                                   THead (Flat Appl) x0 (THead (Bind Abst) u x)
                                                                                   THead (Bind Abbr) v2 t4
                                                                                 ex2
                                                                                   T
                                                                                   λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) u x)) w2
                                                                                   λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                               case ex_intro2 : x2:T H16:pr0 x0 x2 H17:subst0 i v3 v2 x2 
                                                                                  the thesis becomes 
                                                                                  or
                                                                                    pr0
                                                                                      THead (Flat Appl) x0 (THead (Bind Abst) u x)
                                                                                      THead (Bind Abbr) v2 t4
                                                                                    ex2
                                                                                      T
                                                                                      λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) u x)) w2
                                                                                      λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                                     (h1
                                                                                        by (pr0_beta . . . H16 . . H14)

                                                                                           pr0
                                                                                             THead (Flat Appl) x0 (THead (Bind Abst) u x)
                                                                                             THead (Bind Abbr) x2 t4
                                                                                     end of h1
                                                                                     (h2
                                                                                        by (subst0_fst . . . . H17 . .)
subst0 i v3 (THead (Bind Abbr) v2 t4) (THead (Bind Abbr) x2 t4)
                                                                                     end of h2
                                                                                     by (ex_intro2 . . . . h1 h2)
                                                                                     we proved 
                                                                                        ex2
                                                                                          T
                                                                                          λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) u x)) w2
                                                                                          λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                                     by (or_intror . . previous)

                                                                                        or
                                                                                          pr0
                                                                                            THead (Flat Appl) x0 (THead (Bind Abst) u x)
                                                                                            THead (Bind Abbr) v2 t4
                                                                                          ex2
                                                                                            T
                                                                                            λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) u x)) w2
                                                                                            λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2

                                                                               or
                                                                                 pr0
                                                                                   THead (Flat Appl) x0 (THead (Bind Abst) u x)
                                                                                   THead (Bind Abbr) v2 t4
                                                                                 ex2
                                                                                   T
                                                                                   λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) u x)) w2
                                                                                   λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2

                                                                      or
                                                                        pr0
                                                                          THead (Flat Appl) x0 (THead (Bind Abst) u x)
                                                                          THead (Bind Abbr) v2 t4
                                                                        ex2
                                                                          T
                                                                          λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) u x)) w2
                                                                          λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                             case or_intror : H14:ex2 T λw2:T.pr0 x w2 λw2:T.subst0 (s (Bind Abst) (s (Flat Appl) i)) v3 t4 w2 
                                                                the thesis becomes 
                                                                or
                                                                  pr0
                                                                    THead (Flat Appl) x0 (THead (Bind Abst) u x)
                                                                    THead (Bind Abbr) v2 t4
                                                                  ex2
                                                                    T
                                                                    λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) u x)) w2
                                                                    λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                   we proceed by induction on H14 to prove 
                                                                      or
                                                                        pr0
                                                                          THead (Flat Appl) x0 (THead (Bind Abst) u x)
                                                                          THead (Bind Abbr) v2 t4
                                                                        ex2
                                                                          T
                                                                          λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) u x)) w2
                                                                          λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                      case ex_intro2 : x2:T H15:pr0 x x2 H16:subst0 (s (Bind Abst) (s (Flat Appl) i)) v3 t4 x2 
                                                                         the thesis becomes 
                                                                         or
                                                                           pr0
                                                                             THead (Flat Appl) x0 (THead (Bind Abst) u x)
                                                                             THead (Bind Abbr) v2 t4
                                                                           ex2
                                                                             T
                                                                             λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) u x)) w2
                                                                             λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                            by (H1 . . . H8 . H5)
                                                                            we proved or (pr0 x0 v2) (ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 i v3 v2 w2)
                                                                            we proceed by induction on the previous result to prove 
                                                                               or
                                                                                 pr0
                                                                                   THead (Flat Appl) x0 (THead (Bind Abst) u x)
                                                                                   THead (Bind Abbr) v2 t4
                                                                                 ex2
                                                                                   T
                                                                                   λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) u x)) w2
                                                                                   λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                               case or_introl : H17:pr0 x0 v2 
                                                                                  the thesis becomes 
                                                                                  or
                                                                                    pr0
                                                                                      THead (Flat Appl) x0 (THead (Bind Abst) u x)
                                                                                      THead (Bind Abbr) v2 t4
                                                                                    ex2
                                                                                      T
                                                                                      λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) u x)) w2
                                                                                      λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                                     (h1
                                                                                        by (pr0_beta . . . H17 . . H15)

                                                                                           pr0
                                                                                             THead (Flat Appl) x0 (THead (Bind Abst) u x)
                                                                                             THead (Bind Abbr) v2 x2
                                                                                     end of h1
                                                                                     (h2
                                                                                        consider H16
                                                                                        we proved subst0 (s (Bind Abst) (s (Flat Appl) i)) v3 t4 x2
                                                                                        that is equivalent to subst0 (s (Bind Abbr) i) v3 t4 x2
                                                                                        by (subst0_snd . . . . . previous .)
subst0 i v3 (THead (Bind Abbr) v2 t4) (THead (Bind Abbr) v2 x2)
                                                                                     end of h2
                                                                                     by (ex_intro2 . . . . h1 h2)
                                                                                     we proved 
                                                                                        ex2
                                                                                          T
                                                                                          λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) u x)) w2
                                                                                          λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                                     by (or_intror . . previous)

                                                                                        or
                                                                                          pr0
                                                                                            THead (Flat Appl) x0 (THead (Bind Abst) u x)
                                                                                            THead (Bind Abbr) v2 t4
                                                                                          ex2
                                                                                            T
                                                                                            λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) u x)) w2
                                                                                            λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                               case or_intror : H17:ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 i v3 v2 w2 
                                                                                  the thesis becomes 
                                                                                  or
                                                                                    pr0
                                                                                      THead (Flat Appl) x0 (THead (Bind Abst) u x)
                                                                                      THead (Bind Abbr) v2 t4
                                                                                    ex2
                                                                                      T
                                                                                      λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) u x)) w2
                                                                                      λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                                     we proceed by induction on H17 to prove 
                                                                                        or
                                                                                          pr0
                                                                                            THead (Flat Appl) x0 (THead (Bind Abst) u x)
                                                                                            THead (Bind Abbr) v2 t4
                                                                                          ex2
                                                                                            T
                                                                                            λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) u x)) w2
                                                                                            λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                                        case ex_intro2 : x3:T H18:pr0 x0 x3 H19:subst0 i v3 v2 x3 
                                                                                           the thesis becomes 
                                                                                           or
                                                                                             pr0
                                                                                               THead (Flat Appl) x0 (THead (Bind Abst) u x)
                                                                                               THead (Bind Abbr) v2 t4
                                                                                             ex2
                                                                                               T
                                                                                               λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) u x)) w2
                                                                                               λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                                              (h1
                                                                                                 by (pr0_beta . . . H18 . . H15)

                                                                                                    pr0
                                                                                                      THead (Flat Appl) x0 (THead (Bind Abst) u x)
                                                                                                      THead (Bind Abbr) x3 x2
                                                                                              end of h1
                                                                                              (h2
                                                                                                 consider H16
                                                                                                 we proved subst0 (s (Bind Abst) (s (Flat Appl) i)) v3 t4 x2
                                                                                                 that is equivalent to subst0 (s (Bind Abbr) i) v3 t4 x2
                                                                                                 by (subst0_both . . . . H19 . . . previous)
subst0 i v3 (THead (Bind Abbr) v2 t4) (THead (Bind Abbr) x3 x2)
                                                                                              end of h2
                                                                                              by (ex_intro2 . . . . h1 h2)
                                                                                              we proved 
                                                                                                 ex2
                                                                                                   T
                                                                                                   λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) u x)) w2
                                                                                                   λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                                              by (or_intror . . previous)

                                                                                                 or
                                                                                                   pr0
                                                                                                     THead (Flat Appl) x0 (THead (Bind Abst) u x)
                                                                                                     THead (Bind Abbr) v2 t4
                                                                                                   ex2
                                                                                                     T
                                                                                                     λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) u x)) w2
                                                                                                     λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2

                                                                                        or
                                                                                          pr0
                                                                                            THead (Flat Appl) x0 (THead (Bind Abst) u x)
                                                                                            THead (Bind Abbr) v2 t4
                                                                                          ex2
                                                                                            T
                                                                                            λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) u x)) w2
                                                                                            λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2

                                                                               or
                                                                                 pr0
                                                                                   THead (Flat Appl) x0 (THead (Bind Abst) u x)
                                                                                   THead (Bind Abbr) v2 t4
                                                                                 ex2
                                                                                   T
                                                                                   λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) u x)) w2
                                                                                   λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2

                                                                      or
                                                                        pr0
                                                                          THead (Flat Appl) x0 (THead (Bind Abst) u x)
                                                                          THead (Bind Abbr) v2 t4
                                                                        ex2
                                                                          T
                                                                          λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) u x)) w2
                                                                          λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                          we proved 
                                                             or
                                                               pr0
                                                                 THead (Flat Appl) x0 (THead (Bind Abst) u x)
                                                                 THead (Bind Abbr) v2 t4
                                                               ex2
                                                                 T
                                                                 λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) u x)) w2
                                                                 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                          by (eq_ind_r . . . previous . H13)

                                                             or
                                                               pr0 w1 (THead (Bind Abbr) v2 t4)
                                                               ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2

                                                    or
                                                      pr0 w1 (THead (Bind Abbr) v2 t4)
                                                      ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                           case or3_intro2 : H10:ex3_2 T T λu2:T.λt5:T.eq T x1 (THead (Bind Abst) u2 t5) λu2:T.λ:T.subst0 (s (Flat Appl) i) v0 u u2 λ:T.λt5:T.subst0 (s (Bind Abst) (s (Flat Appl) i)) v0 t3 t5 
                                              the thesis becomes 
                                              or
                                                pr0 w1 (THead (Bind Abbr) v2 t4)
                                                ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                 we proceed by induction on H10 to prove 
                                                    or
                                                      pr0 w1 (THead (Bind Abbr) v2 t4)
                                                      ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                    case ex3_2_intro : x2:T x3:T H11:eq T x1 (THead (Bind Abst) x2 x3) :subst0 (s (Flat Appl) i) v0 u x2 H13:subst0 (s (Bind Abst) (s (Flat Appl) i)) v0 t3 x3 
                                                       the thesis becomes 
                                                       or
                                                         pr0 w1 (THead (Bind Abbr) v2 t4)
                                                         ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                          (H14
                                                             we proceed by induction on H11 to prove eq T w1 (THead (Flat Appl) x0 (THead (Bind Abst) x2 x3))
                                                                case refl_equal : 
                                                                   the thesis becomes the hypothesis H7
eq T w1 (THead (Flat Appl) x0 (THead (Bind Abst) x2 x3))
                                                          end of H14
                                                          by (H3 . . . H13 . H5)
                                                          we proved or (pr0 x3 t4) (ex2 T λw2:T.pr0 x3 w2 λw2:T.subst0 (s (Bind Abst) (s (Flat Appl) i)) v3 t4 w2)
                                                          we proceed by induction on the previous result to prove 
                                                             or
                                                               pr0
                                                                 THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)
                                                                 THead (Bind Abbr) v2 t4
                                                               ex2
                                                                 T
                                                                 λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)) w2
                                                                 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                             case or_introl : H15:pr0 x3 t4 
                                                                the thesis becomes 
                                                                or
                                                                  pr0
                                                                    THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)
                                                                    THead (Bind Abbr) v2 t4
                                                                  ex2
                                                                    T
                                                                    λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)) w2
                                                                    λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                   by (H1 . . . H8 . H5)
                                                                   we proved or (pr0 x0 v2) (ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 i v3 v2 w2)
                                                                   we proceed by induction on the previous result to prove 
                                                                      or
                                                                        pr0
                                                                          THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)
                                                                          THead (Bind Abbr) v2 t4
                                                                        ex2
                                                                          T
                                                                          λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)) w2
                                                                          λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                      case or_introl : H16:pr0 x0 v2 
                                                                         the thesis becomes 
                                                                         or
                                                                           pr0
                                                                             THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)
                                                                             THead (Bind Abbr) v2 t4
                                                                           ex2
                                                                             T
                                                                             λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)) w2
                                                                             λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                            by (pr0_beta . . . H16 . . H15)
                                                                            we proved 
                                                                               pr0
                                                                                 THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)
                                                                                 THead (Bind Abbr) v2 t4
                                                                            by (or_introl . . previous)

                                                                               or
                                                                                 pr0
                                                                                   THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)
                                                                                   THead (Bind Abbr) v2 t4
                                                                                 ex2
                                                                                   T
                                                                                   λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)) w2
                                                                                   λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                      case or_intror : H16:ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 i v3 v2 w2 
                                                                         the thesis becomes 
                                                                         or
                                                                           pr0
                                                                             THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)
                                                                             THead (Bind Abbr) v2 t4
                                                                           ex2
                                                                             T
                                                                             λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)) w2
                                                                             λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                            we proceed by induction on H16 to prove 
                                                                               or
                                                                                 pr0
                                                                                   THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)
                                                                                   THead (Bind Abbr) v2 t4
                                                                                 ex2
                                                                                   T
                                                                                   λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)) w2
                                                                                   λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                               case ex_intro2 : x:T H17:pr0 x0 x H18:subst0 i v3 v2 x 
                                                                                  the thesis becomes 
                                                                                  or
                                                                                    pr0
                                                                                      THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)
                                                                                      THead (Bind Abbr) v2 t4
                                                                                    ex2
                                                                                      T
                                                                                      λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)) w2
                                                                                      λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                                     (h1
                                                                                        by (pr0_beta . . . H17 . . H15)

                                                                                           pr0
                                                                                             THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)
                                                                                             THead (Bind Abbr) x t4
                                                                                     end of h1
                                                                                     (h2
                                                                                        by (subst0_fst . . . . H18 . .)
subst0 i v3 (THead (Bind Abbr) v2 t4) (THead (Bind Abbr) x t4)
                                                                                     end of h2
                                                                                     by (ex_intro2 . . . . h1 h2)
                                                                                     we proved 
                                                                                        ex2
                                                                                          T
                                                                                          λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)) w2
                                                                                          λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                                     by (or_intror . . previous)

                                                                                        or
                                                                                          pr0
                                                                                            THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)
                                                                                            THead (Bind Abbr) v2 t4
                                                                                          ex2
                                                                                            T
                                                                                            λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)) w2
                                                                                            λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2

                                                                               or
                                                                                 pr0
                                                                                   THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)
                                                                                   THead (Bind Abbr) v2 t4
                                                                                 ex2
                                                                                   T
                                                                                   λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)) w2
                                                                                   λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2

                                                                      or
                                                                        pr0
                                                                          THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)
                                                                          THead (Bind Abbr) v2 t4
                                                                        ex2
                                                                          T
                                                                          λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)) w2
                                                                          λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                             case or_intror : H15:ex2 T λw2:T.pr0 x3 w2 λw2:T.subst0 (s (Bind Abst) (s (Flat Appl) i)) v3 t4 w2 
                                                                the thesis becomes 
                                                                or
                                                                  pr0
                                                                    THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)
                                                                    THead (Bind Abbr) v2 t4
                                                                  ex2
                                                                    T
                                                                    λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)) w2
                                                                    λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                   we proceed by induction on H15 to prove 
                                                                      or
                                                                        pr0
                                                                          THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)
                                                                          THead (Bind Abbr) v2 t4
                                                                        ex2
                                                                          T
                                                                          λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)) w2
                                                                          λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                      case ex_intro2 : x:T H16:pr0 x3 x H17:subst0 (s (Bind Abst) (s (Flat Appl) i)) v3 t4 x 
                                                                         the thesis becomes 
                                                                         or
                                                                           pr0
                                                                             THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)
                                                                             THead (Bind Abbr) v2 t4
                                                                           ex2
                                                                             T
                                                                             λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)) w2
                                                                             λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                            by (H1 . . . H8 . H5)
                                                                            we proved or (pr0 x0 v2) (ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 i v3 v2 w2)
                                                                            we proceed by induction on the previous result to prove 
                                                                               or
                                                                                 pr0
                                                                                   THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)
                                                                                   THead (Bind Abbr) v2 t4
                                                                                 ex2
                                                                                   T
                                                                                   λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)) w2
                                                                                   λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                               case or_introl : H18:pr0 x0 v2 
                                                                                  the thesis becomes 
                                                                                  or
                                                                                    pr0
                                                                                      THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)
                                                                                      THead (Bind Abbr) v2 t4
                                                                                    ex2
                                                                                      T
                                                                                      λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)) w2
                                                                                      λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                                     (h1
                                                                                        by (pr0_beta . . . H18 . . H16)

                                                                                           pr0
                                                                                             THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)
                                                                                             THead (Bind Abbr) v2 x
                                                                                     end of h1
                                                                                     (h2
                                                                                        consider H17
                                                                                        we proved subst0 (s (Bind Abst) (s (Flat Appl) i)) v3 t4 x
                                                                                        that is equivalent to subst0 (s (Bind Abbr) i) v3 t4 x
                                                                                        by (subst0_snd . . . . . previous .)
subst0 i v3 (THead (Bind Abbr) v2 t4) (THead (Bind Abbr) v2 x)
                                                                                     end of h2
                                                                                     by (ex_intro2 . . . . h1 h2)
                                                                                     we proved 
                                                                                        ex2
                                                                                          T
                                                                                          λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)) w2
                                                                                          λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                                     by (or_intror . . previous)

                                                                                        or
                                                                                          pr0
                                                                                            THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)
                                                                                            THead (Bind Abbr) v2 t4
                                                                                          ex2
                                                                                            T
                                                                                            λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)) w2
                                                                                            λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                               case or_intror : H18:ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 i v3 v2 w2 
                                                                                  the thesis becomes 
                                                                                  or
                                                                                    pr0
                                                                                      THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)
                                                                                      THead (Bind Abbr) v2 t4
                                                                                    ex2
                                                                                      T
                                                                                      λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)) w2
                                                                                      λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                                     we proceed by induction on H18 to prove 
                                                                                        or
                                                                                          pr0
                                                                                            THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)
                                                                                            THead (Bind Abbr) v2 t4
                                                                                          ex2
                                                                                            T
                                                                                            λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)) w2
                                                                                            λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                                        case ex_intro2 : x4:T H19:pr0 x0 x4 H20:subst0 i v3 v2 x4 
                                                                                           the thesis becomes 
                                                                                           or
                                                                                             pr0
                                                                                               THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)
                                                                                               THead (Bind Abbr) v2 t4
                                                                                             ex2
                                                                                               T
                                                                                               λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)) w2
                                                                                               λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                                              (h1
                                                                                                 by (pr0_beta . . . H19 . . H16)

                                                                                                    pr0
                                                                                                      THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)
                                                                                                      THead (Bind Abbr) x4 x
                                                                                              end of h1
                                                                                              (h2
                                                                                                 consider H17
                                                                                                 we proved subst0 (s (Bind Abst) (s (Flat Appl) i)) v3 t4 x
                                                                                                 that is equivalent to subst0 (s (Bind Abbr) i) v3 t4 x
                                                                                                 by (subst0_both . . . . H20 . . . previous)
subst0 i v3 (THead (Bind Abbr) v2 t4) (THead (Bind Abbr) x4 x)
                                                                                              end of h2
                                                                                              by (ex_intro2 . . . . h1 h2)
                                                                                              we proved 
                                                                                                 ex2
                                                                                                   T
                                                                                                   λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)) w2
                                                                                                   λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                                                              by (or_intror . . previous)

                                                                                                 or
                                                                                                   pr0
                                                                                                     THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)
                                                                                                     THead (Bind Abbr) v2 t4
                                                                                                   ex2
                                                                                                     T
                                                                                                     λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)) w2
                                                                                                     λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2

                                                                                        or
                                                                                          pr0
                                                                                            THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)
                                                                                            THead (Bind Abbr) v2 t4
                                                                                          ex2
                                                                                            T
                                                                                            λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)) w2
                                                                                            λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2

                                                                               or
                                                                                 pr0
                                                                                   THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)
                                                                                   THead (Bind Abbr) v2 t4
                                                                                 ex2
                                                                                   T
                                                                                   λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)) w2
                                                                                   λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2

                                                                      or
                                                                        pr0
                                                                          THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)
                                                                          THead (Bind Abbr) v2 t4
                                                                        ex2
                                                                          T
                                                                          λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)) w2
                                                                          λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                          we proved 
                                                             or
                                                               pr0
                                                                 THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)
                                                                 THead (Bind Abbr) v2 t4
                                                               ex2
                                                                 T
                                                                 λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind Abst) x2 x3)) w2
                                                                 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                                                          by (eq_ind_r . . . previous . H14)

                                                             or
                                                               pr0 w1 (THead (Bind Abbr) v2 t4)
                                                               ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2

                                                    or
                                                      pr0 w1 (THead (Bind Abbr) v2 t4)
                                                      ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2

                                           or
                                             pr0 w1 (THead (Bind Abbr) v2 t4)
                                             ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2

                                  or
                                    pr0 w1 (THead (Bind Abbr) v2 t4)
                                    ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
                      we proved 
                         or
                           pr0 w1 (THead (Bind Abbr) v2 t4)
                           ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2

                      v0:T
                        .w1:T
                          .i:nat
                            .H4:subst0 i v0 (THead (Flat Appl) v1 (THead (Bind Abst) u t3)) w1
                              .v3:T
                                .H5:pr0 v0 v3
                                  .or
                                    pr0 w1 (THead (Bind Abbr) v2 t4)
                                    ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v3 (THead (Bind Abbr) v2 t4) w2
             case pr0_upsilon : b:B H0:not (eq B b Abst) v1:T v2:T H1:pr0 v1 v2 u1:T u2:T H3:pr0 u1 u2 t3:T t4:T H5:pr0 t3 t4 
                the thesis becomes 
                v0:T
                  .w1:T
                    .i:nat
                      .H7:subst0 i v0 (THead (Flat Appl) v1 (THead (Bind b) u1 t3)) w1
                        .v3:T
                          .H8:pr0 v0 v3
                            .or
                              pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                              ex2
                                T
                                λw2:T.pr0 w1 w2
                                λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                (H2) by induction hypothesis we know v3:T.w1:T.i:nat.(subst0 i v3 v1 w1)v4:T.(pr0 v3 v4)(or (pr0 w1 v2) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v4 v2 w2))
                (H4) by induction hypothesis we know v3:T.w1:T.i:nat.(subst0 i v3 u1 w1)v4:T.(pr0 v3 v4)(or (pr0 w1 u2) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v4 u2 w2))
                (H6) by induction hypothesis we know v3:T.w1:T.i:nat.(subst0 i v3 t3 w1)v4:T.(pr0 v3 v4)(or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v4 t4 w2))
                    assume v0T
                    assume w1T
                    assume inat
                    suppose H7subst0 i v0 (THead (Flat Appl) v1 (THead (Bind b) u1 t3)) w1
                    assume v3T
                    suppose H8pr0 v0 v3
                      by (subst0_gen_head . . . . . . H7)
                      we proved 
                         or3
                           ex2 T λu2:T.eq T w1 (THead (Flat Appl) u2 (THead (Bind b) u1 t3)) λu2:T.subst0 i v0 v1 u2
                           ex2
                             T
                             λt2:T.eq T w1 (THead (Flat Appl) v1 t2)
                             λt2:T.subst0 (s (Flat Appl) i) v0 (THead (Bind b) u1 t3) t2
                           ex3_2
                             T
                             T
                             λu2:T.λt2:T.eq T w1 (THead (Flat Appl) u2 t2)
                             λu2:T.λ:T.subst0 i v0 v1 u2
                             λ:T.λt2:T.subst0 (s (Flat Appl) i) v0 (THead (Bind b) u1 t3) t2
                      we proceed by induction on the previous result to prove 
                         or
                           pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                           ex2
                             T
                             λw2:T.pr0 w1 w2
                             λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                         case or3_intro0 : H9:ex2 T λu3:T.eq T w1 (THead (Flat Appl) u3 (THead (Bind b) u1 t3)) λu3:T.subst0 i v0 v1 u3 
                            the thesis becomes 
                            or
                              pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                              ex2
                                T
                                λw2:T.pr0 w1 w2
                                λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                               we proceed by induction on H9 to prove 
                                  or
                                    pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                    ex2
                                      T
                                      λw2:T.pr0 w1 w2
                                      λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                  case ex_intro2 : x:T H10:eq T w1 (THead (Flat Appl) x (THead (Bind b) u1 t3)) H11:subst0 i v0 v1 x 
                                     the thesis becomes 
                                     or
                                       pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                       ex2
                                         T
                                         λw2:T.pr0 w1 w2
                                         λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                        by (H2 . . . H11 . H8)
                                        we proved or (pr0 x v2) (ex2 T λw2:T.pr0 x w2 λw2:T.subst0 i v3 v2 w2)
                                        we proceed by induction on the previous result to prove 
                                           or
                                             pr0
                                               THead (Flat Appl) x (THead (Bind b) u1 t3)
                                               THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                             ex2
                                               T
                                               λw2:T.pr0 (THead (Flat Appl) x (THead (Bind b) u1 t3)) w2
                                               λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                           case or_introl : H12:pr0 x v2 
                                              the thesis becomes 
                                              or
                                                pr0
                                                  THead (Flat Appl) x (THead (Bind b) u1 t3)
                                                  THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                ex2
                                                  T
                                                  λw2:T.pr0 (THead (Flat Appl) x (THead (Bind b) u1 t3)) w2
                                                  λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                 by (pr0_upsilon . H0 . . H12 . . H3 . . H5)
                                                 we proved 
                                                    pr0
                                                      THead (Flat Appl) x (THead (Bind b) u1 t3)
                                                      THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                 by (or_introl . . previous)

                                                    or
                                                      pr0
                                                        THead (Flat Appl) x (THead (Bind b) u1 t3)
                                                        THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                      ex2
                                                        T
                                                        λw2:T.pr0 (THead (Flat Appl) x (THead (Bind b) u1 t3)) w2
                                                        λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                           case or_intror : H12:ex2 T λw2:T.pr0 x w2 λw2:T.subst0 i v3 v2 w2 
                                              the thesis becomes 
                                              or
                                                pr0
                                                  THead (Flat Appl) x (THead (Bind b) u1 t3)
                                                  THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                ex2
                                                  T
                                                  λw2:T.pr0 (THead (Flat Appl) x (THead (Bind b) u1 t3)) w2
                                                  λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                 we proceed by induction on H12 to prove 
                                                    or
                                                      pr0
                                                        THead (Flat Appl) x (THead (Bind b) u1 t3)
                                                        THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                      ex2
                                                        T
                                                        λw2:T.pr0 (THead (Flat Appl) x (THead (Bind b) u1 t3)) w2
                                                        λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                    case ex_intro2 : x0:T H13:pr0 x x0 H14:subst0 i v3 v2 x0 
                                                       the thesis becomes 
                                                       or
                                                         pr0
                                                           THead (Flat Appl) x (THead (Bind b) u1 t3)
                                                           THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                         ex2
                                                           T
                                                           λw2:T.pr0 (THead (Flat Appl) x (THead (Bind b) u1 t3)) w2
                                                           λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                          (h1
                                                             by (pr0_upsilon . H0 . . H13 . . H3 . . H5)

                                                                pr0
                                                                  THead (Flat Appl) x (THead (Bind b) u1 t3)
                                                                  THead (Bind b) u2 (THead (Flat Appl) (lift (S OO x0) t4)
                                                          end of h1
                                                          (h2
                                                             by (le_O_n .)
                                                             we proved le O i
                                                             by (subst0_lift_ge_s . . . . H14 . previous .)
                                                             we proved subst0 (s (Bind b) i) v3 (lift (S OO v2) (lift (S OO x0)
                                                             by (subst0_fst . . . . previous . .)
                                                             we proved 
                                                                subst0
                                                                  s (Bind b) i
                                                                  v3
                                                                  THead (Flat Appl) (lift (S OO v2) t4
                                                                  THead (Flat Appl) (lift (S OO x0) t4
                                                             by (subst0_snd . . . . . previous .)

                                                                subst0
                                                                  i
                                                                  v3
                                                                  THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                  THead (Bind b) u2 (THead (Flat Appl) (lift (S OO x0) t4)
                                                          end of h2
                                                          by (ex_intro2 . . . . h1 h2)
                                                          we proved 
                                                             ex2
                                                               T
                                                               λw2:T.pr0 (THead (Flat Appl) x (THead (Bind b) u1 t3)) w2
                                                               λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                          by (or_intror . . previous)

                                                             or
                                                               pr0
                                                                 THead (Flat Appl) x (THead (Bind b) u1 t3)
                                                                 THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                               ex2
                                                                 T
                                                                 λw2:T.pr0 (THead (Flat Appl) x (THead (Bind b) u1 t3)) w2
                                                                 λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                                    or
                                                      pr0
                                                        THead (Flat Appl) x (THead (Bind b) u1 t3)
                                                        THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                      ex2
                                                        T
                                                        λw2:T.pr0 (THead (Flat Appl) x (THead (Bind b) u1 t3)) w2
                                                        λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                        we proved 
                                           or
                                             pr0
                                               THead (Flat Appl) x (THead (Bind b) u1 t3)
                                               THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                             ex2
                                               T
                                               λw2:T.pr0 (THead (Flat Appl) x (THead (Bind b) u1 t3)) w2
                                               λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                        by (eq_ind_r . . . previous . H10)

                                           or
                                             pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                             ex2
                                               T
                                               λw2:T.pr0 w1 w2
                                               λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                  or
                                    pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                    ex2
                                      T
                                      λw2:T.pr0 w1 w2
                                      λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                         case or3_intro1 : H9:ex2 T λt5:T.eq T w1 (THead (Flat Appl) v1 t5) λt5:T.subst0 (s (Flat Appl) i) v0 (THead (Bind b) u1 t3) t5 
                            the thesis becomes 
                            or
                              pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                              ex2
                                T
                                λw2:T.pr0 w1 w2
                                λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                               we proceed by induction on H9 to prove 
                                  or
                                    pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                    ex2
                                      T
                                      λw2:T.pr0 w1 w2
                                      λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                  case ex_intro2 : x:T H10:eq T w1 (THead (Flat Appl) v1 x) H11:subst0 (s (Flat Appl) i) v0 (THead (Bind b) u1 t3) x 
                                     the thesis becomes 
                                     or
                                       pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                       ex2
                                         T
                                         λw2:T.pr0 w1 w2
                                         λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                        by (subst0_gen_head . . . . . . H11)
                                        we proved 
                                           or3
                                             ex2 T λu2:T.eq T x (THead (Bind b) u2 t3) λu2:T.subst0 (s (Flat Appl) i) v0 u1 u2
                                             ex2
                                               T
                                               λt2:T.eq T x (THead (Bind b) u1 t2)
                                               λt2:T.subst0 (s (Bind b) (s (Flat Appl) i)) v0 t3 t2
                                             ex3_2
                                               T
                                               T
                                               λu2:T.λt2:T.eq T x (THead (Bind b) u2 t2)
                                               λu2:T.λ:T.subst0 (s (Flat Appl) i) v0 u1 u2
                                               λ:T.λt2:T.subst0 (s (Bind b) (s (Flat Appl) i)) v0 t3 t2
                                        we proceed by induction on the previous result to prove 
                                           or
                                             pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                             ex2
                                               T
                                               λw2:T.pr0 w1 w2
                                               λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                           case or3_intro0 : H12:ex2 T λu3:T.eq T x (THead (Bind b) u3 t3) λu3:T.subst0 (s (Flat Appl) i) v0 u1 u3 
                                              the thesis becomes 
                                              or
                                                pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                                ex2
                                                  T
                                                  λw2:T.pr0 w1 w2
                                                  λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                 we proceed by induction on H12 to prove 
                                                    or
                                                      pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                                      ex2
                                                        T
                                                        λw2:T.pr0 w1 w2
                                                        λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                    case ex_intro2 : x0:T H13:eq T x (THead (Bind b) x0 t3) H14:subst0 (s (Flat Appl) i) v0 u1 x0 
                                                       the thesis becomes 
                                                       or
                                                         pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                                         ex2
                                                           T
                                                           λw2:T.pr0 w1 w2
                                                           λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                          (H15
                                                             we proceed by induction on H13 to prove eq T w1 (THead (Flat Appl) v1 (THead (Bind b) x0 t3))
                                                                case refl_equal : 
                                                                   the thesis becomes the hypothesis H10
eq T w1 (THead (Flat Appl) v1 (THead (Bind b) x0 t3))
                                                          end of H15
                                                          by (H4 . . . H14 . H8)
                                                          we proved or (pr0 x0 u2) (ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 (s (Flat Appl) i) v3 u2 w2)
                                                          we proceed by induction on the previous result to prove 
                                                             or
                                                               pr0
                                                                 THead (Flat Appl) v1 (THead (Bind b) x0 t3)
                                                                 THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                               ex2
                                                                 T
                                                                 λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) x0 t3)) w2
                                                                 λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                             case or_introl : H16:pr0 x0 u2 
                                                                the thesis becomes 
                                                                or
                                                                  pr0
                                                                    THead (Flat Appl) v1 (THead (Bind b) x0 t3)
                                                                    THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                  ex2
                                                                    T
                                                                    λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) x0 t3)) w2
                                                                    λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                   by (pr0_upsilon . H0 . . H1 . . H16 . . H5)
                                                                   we proved 
                                                                      pr0
                                                                        THead (Flat Appl) v1 (THead (Bind b) x0 t3)
                                                                        THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                   by (or_introl . . previous)

                                                                      or
                                                                        pr0
                                                                          THead (Flat Appl) v1 (THead (Bind b) x0 t3)
                                                                          THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                        ex2
                                                                          T
                                                                          λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) x0 t3)) w2
                                                                          λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                             case or_intror : H16:ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 (s (Flat Appl) i) v3 u2 w2 
                                                                the thesis becomes 
                                                                or
                                                                  pr0
                                                                    THead (Flat Appl) v1 (THead (Bind b) x0 t3)
                                                                    THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                  ex2
                                                                    T
                                                                    λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) x0 t3)) w2
                                                                    λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                   we proceed by induction on H16 to prove 
                                                                      or
                                                                        pr0
                                                                          THead (Flat Appl) v1 (THead (Bind b) x0 t3)
                                                                          THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                        ex2
                                                                          T
                                                                          λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) x0 t3)) w2
                                                                          λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                      case ex_intro2 : x1:T H17:pr0 x0 x1 H18:subst0 (s (Flat Appl) i) v3 u2 x1 
                                                                         the thesis becomes 
                                                                         or
                                                                           pr0
                                                                             THead (Flat Appl) v1 (THead (Bind b) x0 t3)
                                                                             THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                           ex2
                                                                             T
                                                                             λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) x0 t3)) w2
                                                                             λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                            (h1
                                                                               by (pr0_upsilon . H0 . . H1 . . H17 . . H5)

                                                                                  pr0
                                                                                    THead (Flat Appl) v1 (THead (Bind b) x0 t3)
                                                                                    THead (Bind b) x1 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                            end of h1
                                                                            (h2
                                                                               consider H18
                                                                               we proved subst0 (s (Flat Appl) i) v3 u2 x1
                                                                               that is equivalent to subst0 i v3 u2 x1
                                                                               by (subst0_fst . . . . previous . .)

                                                                                  subst0
                                                                                    i
                                                                                    v3
                                                                                    THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                    THead (Bind b) x1 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                            end of h2
                                                                            by (ex_intro2 . . . . h1 h2)
                                                                            we proved 
                                                                               ex2
                                                                                 T
                                                                                 λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) x0 t3)) w2
                                                                                 λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                            by (or_intror . . previous)

                                                                               or
                                                                                 pr0
                                                                                   THead (Flat Appl) v1 (THead (Bind b) x0 t3)
                                                                                   THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                 ex2
                                                                                   T
                                                                                   λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) x0 t3)) w2
                                                                                   λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                                                      or
                                                                        pr0
                                                                          THead (Flat Appl) v1 (THead (Bind b) x0 t3)
                                                                          THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                        ex2
                                                                          T
                                                                          λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) x0 t3)) w2
                                                                          λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                          we proved 
                                                             or
                                                               pr0
                                                                 THead (Flat Appl) v1 (THead (Bind b) x0 t3)
                                                                 THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                               ex2
                                                                 T
                                                                 λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) x0 t3)) w2
                                                                 λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                          by (eq_ind_r . . . previous . H15)

                                                             or
                                                               pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                                               ex2
                                                                 T
                                                                 λw2:T.pr0 w1 w2
                                                                 λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                                    or
                                                      pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                                      ex2
                                                        T
                                                        λw2:T.pr0 w1 w2
                                                        λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                           case or3_intro1 : H12:ex2 T λt5:T.eq T x (THead (Bind b) u1 t5) λt5:T.subst0 (s (Bind b) (s (Flat Appl) i)) v0 t3 t5 
                                              the thesis becomes 
                                              or
                                                pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                                ex2
                                                  T
                                                  λw2:T.pr0 w1 w2
                                                  λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                 we proceed by induction on H12 to prove 
                                                    or
                                                      pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                                      ex2
                                                        T
                                                        λw2:T.pr0 w1 w2
                                                        λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                    case ex_intro2 : x0:T H13:eq T x (THead (Bind b) u1 x0) H14:subst0 (s (Bind b) (s (Flat Appl) i)) v0 t3 x0 
                                                       the thesis becomes 
                                                       or
                                                         pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                                         ex2
                                                           T
                                                           λw2:T.pr0 w1 w2
                                                           λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                          (H15
                                                             we proceed by induction on H13 to prove eq T w1 (THead (Flat Appl) v1 (THead (Bind b) u1 x0))
                                                                case refl_equal : 
                                                                   the thesis becomes the hypothesis H10
eq T w1 (THead (Flat Appl) v1 (THead (Bind b) u1 x0))
                                                          end of H15
                                                          by (H6 . . . H14 . H8)
                                                          we proved or (pr0 x0 t4) (ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 (s (Bind b) (s (Flat Appl) i)) v3 t4 w2)
                                                          we proceed by induction on the previous result to prove 
                                                             or
                                                               pr0
                                                                 THead (Flat Appl) v1 (THead (Bind b) u1 x0)
                                                                 THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                               ex2
                                                                 T
                                                                 λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) u1 x0)) w2
                                                                 λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                             case or_introl : H16:pr0 x0 t4 
                                                                the thesis becomes 
                                                                or
                                                                  pr0
                                                                    THead (Flat Appl) v1 (THead (Bind b) u1 x0)
                                                                    THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                  ex2
                                                                    T
                                                                    λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) u1 x0)) w2
                                                                    λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                   by (pr0_upsilon . H0 . . H1 . . H3 . . H16)
                                                                   we proved 
                                                                      pr0
                                                                        THead (Flat Appl) v1 (THead (Bind b) u1 x0)
                                                                        THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                   by (or_introl . . previous)

                                                                      or
                                                                        pr0
                                                                          THead (Flat Appl) v1 (THead (Bind b) u1 x0)
                                                                          THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                        ex2
                                                                          T
                                                                          λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) u1 x0)) w2
                                                                          λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                             case or_intror : H16:ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 (s (Bind b) (s (Flat Appl) i)) v3 t4 w2 
                                                                the thesis becomes 
                                                                or
                                                                  pr0
                                                                    THead (Flat Appl) v1 (THead (Bind b) u1 x0)
                                                                    THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                  ex2
                                                                    T
                                                                    λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) u1 x0)) w2
                                                                    λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                   we proceed by induction on H16 to prove 
                                                                      or
                                                                        pr0
                                                                          THead (Flat Appl) v1 (THead (Bind b) u1 x0)
                                                                          THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                        ex2
                                                                          T
                                                                          λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) u1 x0)) w2
                                                                          λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                      case ex_intro2 : x1:T H17:pr0 x0 x1 H18:subst0 (s (Bind b) (s (Flat Appl) i)) v3 t4 x1 
                                                                         the thesis becomes 
                                                                         or
                                                                           pr0
                                                                             THead (Flat Appl) v1 (THead (Bind b) u1 x0)
                                                                             THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                           ex2
                                                                             T
                                                                             λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) u1 x0)) w2
                                                                             λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                            (h1
                                                                               by (pr0_upsilon . H0 . . H1 . . H3 . . H17)

                                                                                  pr0
                                                                                    THead (Flat Appl) v1 (THead (Bind b) u1 x0)
                                                                                    THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) x1)
                                                                            end of h1
                                                                            (h2
                                                                               consider H18
                                                                               we proved subst0 (s (Bind b) (s (Flat Appl) i)) v3 t4 x1
                                                                               that is equivalent to subst0 (s (Flat Appl) (s (Bind b) i)) v3 t4 x1
                                                                               by (subst0_snd . . . . . previous .)
                                                                               we proved 
                                                                                  subst0
                                                                                    s (Bind b) i
                                                                                    v3
                                                                                    THead (Flat Appl) (lift (S OO v2) t4
                                                                                    THead (Flat Appl) (lift (S OO v2) x1
                                                                               by (subst0_snd . . . . . previous .)

                                                                                  subst0
                                                                                    i
                                                                                    v3
                                                                                    THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                    THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) x1)
                                                                            end of h2
                                                                            by (ex_intro2 . . . . h1 h2)
                                                                            we proved 
                                                                               ex2
                                                                                 T
                                                                                 λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) u1 x0)) w2
                                                                                 λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                            by (or_intror . . previous)

                                                                               or
                                                                                 pr0
                                                                                   THead (Flat Appl) v1 (THead (Bind b) u1 x0)
                                                                                   THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                 ex2
                                                                                   T
                                                                                   λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) u1 x0)) w2
                                                                                   λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                                                      or
                                                                        pr0
                                                                          THead (Flat Appl) v1 (THead (Bind b) u1 x0)
                                                                          THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                        ex2
                                                                          T
                                                                          λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) u1 x0)) w2
                                                                          λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                          we proved 
                                                             or
                                                               pr0
                                                                 THead (Flat Appl) v1 (THead (Bind b) u1 x0)
                                                                 THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                               ex2
                                                                 T
                                                                 λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) u1 x0)) w2
                                                                 λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                          by (eq_ind_r . . . previous . H15)

                                                             or
                                                               pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                                               ex2
                                                                 T
                                                                 λw2:T.pr0 w1 w2
                                                                 λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                                    or
                                                      pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                                      ex2
                                                        T
                                                        λw2:T.pr0 w1 w2
                                                        λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                           case or3_intro2 : H12:ex3_2 T T λu3:T.λt5:T.eq T x (THead (Bind b) u3 t5) λu3:T.λ:T.subst0 (s (Flat Appl) i) v0 u1 u3 λ:T.λt5:T.subst0 (s (Bind b) (s (Flat Appl) i)) v0 t3 t5 
                                              the thesis becomes 
                                              or
                                                pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                                ex2
                                                  T
                                                  λw2:T.pr0 w1 w2
                                                  λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                 we proceed by induction on H12 to prove 
                                                    or
                                                      pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                                      ex2
                                                        T
                                                        λw2:T.pr0 w1 w2
                                                        λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                    case ex3_2_intro : x0:T x1:T H13:eq T x (THead (Bind b) x0 x1) H14:subst0 (s (Flat Appl) i) v0 u1 x0 H15:subst0 (s (Bind b) (s (Flat Appl) i)) v0 t3 x1 
                                                       the thesis becomes 
                                                       or
                                                         pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                                         ex2
                                                           T
                                                           λw2:T.pr0 w1 w2
                                                           λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                          (H16
                                                             we proceed by induction on H13 to prove eq T w1 (THead (Flat Appl) v1 (THead (Bind b) x0 x1))
                                                                case refl_equal : 
                                                                   the thesis becomes the hypothesis H10
eq T w1 (THead (Flat Appl) v1 (THead (Bind b) x0 x1))
                                                          end of H16
                                                          by (H6 . . . H15 . H8)
                                                          we proved or (pr0 x1 t4) (ex2 T λw2:T.pr0 x1 w2 λw2:T.subst0 (s (Bind b) (s (Flat Appl) i)) v3 t4 w2)
                                                          we proceed by induction on the previous result to prove 
                                                             or
                                                               pr0
                                                                 THead (Flat Appl) v1 (THead (Bind b) x0 x1)
                                                                 THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                               ex2
                                                                 T
                                                                 λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) x0 x1)) w2
                                                                 λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                             case or_introl : H17:pr0 x1 t4 
                                                                the thesis becomes 
                                                                or
                                                                  pr0
                                                                    THead (Flat Appl) v1 (THead (Bind b) x0 x1)
                                                                    THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                  ex2
                                                                    T
                                                                    λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) x0 x1)) w2
                                                                    λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                   by (H4 . . . H14 . H8)
                                                                   we proved or (pr0 x0 u2) (ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 (s (Flat Appl) i) v3 u2 w2)
                                                                   we proceed by induction on the previous result to prove 
                                                                      or
                                                                        pr0
                                                                          THead (Flat Appl) v1 (THead (Bind b) x0 x1)
                                                                          THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                        ex2
                                                                          T
                                                                          λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) x0 x1)) w2
                                                                          λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                      case or_introl : H18:pr0 x0 u2 
                                                                         the thesis becomes 
                                                                         or
                                                                           pr0
                                                                             THead (Flat Appl) v1 (THead (Bind b) x0 x1)
                                                                             THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                           ex2
                                                                             T
                                                                             λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) x0 x1)) w2
                                                                             λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                            by (pr0_upsilon . H0 . . H1 . . H18 . . H17)
                                                                            we proved 
                                                                               pr0
                                                                                 THead (Flat Appl) v1 (THead (Bind b) x0 x1)
                                                                                 THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                            by (or_introl . . previous)

                                                                               or
                                                                                 pr0
                                                                                   THead (Flat Appl) v1 (THead (Bind b) x0 x1)
                                                                                   THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                 ex2
                                                                                   T
                                                                                   λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) x0 x1)) w2
                                                                                   λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                      case or_intror : H18:ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 (s (Flat Appl) i) v3 u2 w2 
                                                                         the thesis becomes 
                                                                         or
                                                                           pr0
                                                                             THead (Flat Appl) v1 (THead (Bind b) x0 x1)
                                                                             THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                           ex2
                                                                             T
                                                                             λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) x0 x1)) w2
                                                                             λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                            we proceed by induction on H18 to prove 
                                                                               or
                                                                                 pr0
                                                                                   THead (Flat Appl) v1 (THead (Bind b) x0 x1)
                                                                                   THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                 ex2
                                                                                   T
                                                                                   λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) x0 x1)) w2
                                                                                   λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                               case ex_intro2 : x2:T H19:pr0 x0 x2 H20:subst0 (s (Flat Appl) i) v3 u2 x2 
                                                                                  the thesis becomes 
                                                                                  or
                                                                                    pr0
                                                                                      THead (Flat Appl) v1 (THead (Bind b) x0 x1)
                                                                                      THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                    ex2
                                                                                      T
                                                                                      λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) x0 x1)) w2
                                                                                      λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                     (h1
                                                                                        by (pr0_upsilon . H0 . . H1 . . H19 . . H17)

                                                                                           pr0
                                                                                             THead (Flat Appl) v1 (THead (Bind b) x0 x1)
                                                                                             THead (Bind b) x2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                     end of h1
                                                                                     (h2
                                                                                        consider H20
                                                                                        we proved subst0 (s (Flat Appl) i) v3 u2 x2
                                                                                        that is equivalent to subst0 i v3 u2 x2
                                                                                        by (subst0_fst . . . . previous . .)

                                                                                           subst0
                                                                                             i
                                                                                             v3
                                                                                             THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                             THead (Bind b) x2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                     end of h2
                                                                                     by (ex_intro2 . . . . h1 h2)
                                                                                     we proved 
                                                                                        ex2
                                                                                          T
                                                                                          λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) x0 x1)) w2
                                                                                          λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                     by (or_intror . . previous)

                                                                                        or
                                                                                          pr0
                                                                                            THead (Flat Appl) v1 (THead (Bind b) x0 x1)
                                                                                            THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                          ex2
                                                                                            T
                                                                                            λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) x0 x1)) w2
                                                                                            λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                                                               or
                                                                                 pr0
                                                                                   THead (Flat Appl) v1 (THead (Bind b) x0 x1)
                                                                                   THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                 ex2
                                                                                   T
                                                                                   λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) x0 x1)) w2
                                                                                   λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                                                      or
                                                                        pr0
                                                                          THead (Flat Appl) v1 (THead (Bind b) x0 x1)
                                                                          THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                        ex2
                                                                          T
                                                                          λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) x0 x1)) w2
                                                                          λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                             case or_intror : H17:ex2 T λw2:T.pr0 x1 w2 λw2:T.subst0 (s (Bind b) (s (Flat Appl) i)) v3 t4 w2 
                                                                the thesis becomes 
                                                                or
                                                                  pr0
                                                                    THead (Flat Appl) v1 (THead (Bind b) x0 x1)
                                                                    THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                  ex2
                                                                    T
                                                                    λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) x0 x1)) w2
                                                                    λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                   we proceed by induction on H17 to prove 
                                                                      or
                                                                        pr0
                                                                          THead (Flat Appl) v1 (THead (Bind b) x0 x1)
                                                                          THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                        ex2
                                                                          T
                                                                          λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) x0 x1)) w2
                                                                          λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                      case ex_intro2 : x2:T H18:pr0 x1 x2 H19:subst0 (s (Bind b) (s (Flat Appl) i)) v3 t4 x2 
                                                                         the thesis becomes 
                                                                         or
                                                                           pr0
                                                                             THead (Flat Appl) v1 (THead (Bind b) x0 x1)
                                                                             THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                           ex2
                                                                             T
                                                                             λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) x0 x1)) w2
                                                                             λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                            by (H4 . . . H14 . H8)
                                                                            we proved or (pr0 x0 u2) (ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 (s (Flat Appl) i) v3 u2 w2)
                                                                            we proceed by induction on the previous result to prove 
                                                                               or
                                                                                 pr0
                                                                                   THead (Flat Appl) v1 (THead (Bind b) x0 x1)
                                                                                   THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                 ex2
                                                                                   T
                                                                                   λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) x0 x1)) w2
                                                                                   λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                               case or_introl : H20:pr0 x0 u2 
                                                                                  the thesis becomes 
                                                                                  or
                                                                                    pr0
                                                                                      THead (Flat Appl) v1 (THead (Bind b) x0 x1)
                                                                                      THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                    ex2
                                                                                      T
                                                                                      λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) x0 x1)) w2
                                                                                      λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                     (h1
                                                                                        by (pr0_upsilon . H0 . . H1 . . H20 . . H18)

                                                                                           pr0
                                                                                             THead (Flat Appl) v1 (THead (Bind b) x0 x1)
                                                                                             THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) x2)
                                                                                     end of h1
                                                                                     (h2
                                                                                        consider H19
                                                                                        we proved subst0 (s (Bind b) (s (Flat Appl) i)) v3 t4 x2
                                                                                        that is equivalent to subst0 (s (Flat Appl) (s (Bind b) i)) v3 t4 x2
                                                                                        by (subst0_snd . . . . . previous .)
                                                                                        we proved 
                                                                                           subst0
                                                                                             s (Bind b) i
                                                                                             v3
                                                                                             THead (Flat Appl) (lift (S OO v2) t4
                                                                                             THead (Flat Appl) (lift (S OO v2) x2
                                                                                        by (subst0_snd . . . . . previous .)

                                                                                           subst0
                                                                                             i
                                                                                             v3
                                                                                             THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                             THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) x2)
                                                                                     end of h2
                                                                                     by (ex_intro2 . . . . h1 h2)
                                                                                     we proved 
                                                                                        ex2
                                                                                          T
                                                                                          λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) x0 x1)) w2
                                                                                          λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                     by (or_intror . . previous)

                                                                                        or
                                                                                          pr0
                                                                                            THead (Flat Appl) v1 (THead (Bind b) x0 x1)
                                                                                            THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                          ex2
                                                                                            T
                                                                                            λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) x0 x1)) w2
                                                                                            λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                               case or_intror : H20:ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 (s (Flat Appl) i) v3 u2 w2 
                                                                                  the thesis becomes 
                                                                                  or
                                                                                    pr0
                                                                                      THead (Flat Appl) v1 (THead (Bind b) x0 x1)
                                                                                      THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                    ex2
                                                                                      T
                                                                                      λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) x0 x1)) w2
                                                                                      λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                     we proceed by induction on H20 to prove 
                                                                                        or
                                                                                          pr0
                                                                                            THead (Flat Appl) v1 (THead (Bind b) x0 x1)
                                                                                            THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                          ex2
                                                                                            T
                                                                                            λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) x0 x1)) w2
                                                                                            λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                        case ex_intro2 : x3:T H21:pr0 x0 x3 H22:subst0 (s (Flat Appl) i) v3 u2 x3 
                                                                                           the thesis becomes 
                                                                                           or
                                                                                             pr0
                                                                                               THead (Flat Appl) v1 (THead (Bind b) x0 x1)
                                                                                               THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                             ex2
                                                                                               T
                                                                                               λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) x0 x1)) w2
                                                                                               λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                              (h1
                                                                                                 by (pr0_upsilon . H0 . . H1 . . H21 . . H18)

                                                                                                    pr0
                                                                                                      THead (Flat Appl) v1 (THead (Bind b) x0 x1)
                                                                                                      THead (Bind b) x3 (THead (Flat Appl) (lift (S OO v2) x2)
                                                                                              end of h1
                                                                                              (h2
                                                                                                 (h1
                                                                                                    consider H22
                                                                                                    we proved subst0 (s (Flat Appl) i) v3 u2 x3
subst0 i v3 u2 x3
                                                                                                 end of h1
                                                                                                 (h2
                                                                                                    consider H19
                                                                                                    we proved subst0 (s (Bind b) (s (Flat Appl) i)) v3 t4 x2
                                                                                                    that is equivalent to subst0 (s (Flat Appl) (s (Bind b) i)) v3 t4 x2
                                                                                                    by (subst0_snd . . . . . previous .)

                                                                                                       subst0
                                                                                                         s (Bind b) i
                                                                                                         v3
                                                                                                         THead (Flat Appl) (lift (S OO v2) t4
                                                                                                         THead (Flat Appl) (lift (S OO v2) x2
                                                                                                 end of h2
                                                                                                 by (subst0_both . . . . h1 . . . h2)

                                                                                                    subst0
                                                                                                      i
                                                                                                      v3
                                                                                                      THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                                      THead (Bind b) x3 (THead (Flat Appl) (lift (S OO v2) x2)
                                                                                              end of h2
                                                                                              by (ex_intro2 . . . . h1 h2)
                                                                                              we proved 
                                                                                                 ex2
                                                                                                   T
                                                                                                   λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) x0 x1)) w2
                                                                                                   λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                              by (or_intror . . previous)

                                                                                                 or
                                                                                                   pr0
                                                                                                     THead (Flat Appl) v1 (THead (Bind b) x0 x1)
                                                                                                     THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                                   ex2
                                                                                                     T
                                                                                                     λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) x0 x1)) w2
                                                                                                     λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                                                                        or
                                                                                          pr0
                                                                                            THead (Flat Appl) v1 (THead (Bind b) x0 x1)
                                                                                            THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                          ex2
                                                                                            T
                                                                                            λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) x0 x1)) w2
                                                                                            λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                                                               or
                                                                                 pr0
                                                                                   THead (Flat Appl) v1 (THead (Bind b) x0 x1)
                                                                                   THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                 ex2
                                                                                   T
                                                                                   λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) x0 x1)) w2
                                                                                   λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                                                      or
                                                                        pr0
                                                                          THead (Flat Appl) v1 (THead (Bind b) x0 x1)
                                                                          THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                        ex2
                                                                          T
                                                                          λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) x0 x1)) w2
                                                                          λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                          we proved 
                                                             or
                                                               pr0
                                                                 THead (Flat Appl) v1 (THead (Bind b) x0 x1)
                                                                 THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                               ex2
                                                                 T
                                                                 λw2:T.pr0 (THead (Flat Appl) v1 (THead (Bind b) x0 x1)) w2
                                                                 λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                          by (eq_ind_r . . . previous . H16)

                                                             or
                                                               pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                                               ex2
                                                                 T
                                                                 λw2:T.pr0 w1 w2
                                                                 λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                                    or
                                                      pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                                      ex2
                                                        T
                                                        λw2:T.pr0 w1 w2
                                                        λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                           or
                                             pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                             ex2
                                               T
                                               λw2:T.pr0 w1 w2
                                               λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                  or
                                    pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                    ex2
                                      T
                                      λw2:T.pr0 w1 w2
                                      λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                         case or3_intro2 : H9:ex3_2 T T λu3:T.λt5:T.eq T w1 (THead (Flat Appl) u3 t5) λu3:T.λ:T.subst0 i v0 v1 u3 λ:T.λt5:T.subst0 (s (Flat Appl) i) v0 (THead (Bind b) u1 t3) t5 
                            the thesis becomes 
                            or
                              pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                              ex2
                                T
                                λw2:T.pr0 w1 w2
                                λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                               we proceed by induction on H9 to prove 
                                  or
                                    pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                    ex2
                                      T
                                      λw2:T.pr0 w1 w2
                                      λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                  case ex3_2_intro : x0:T x1:T H10:eq T w1 (THead (Flat Appl) x0 x1) H11:subst0 i v0 v1 x0 H12:subst0 (s (Flat Appl) i) v0 (THead (Bind b) u1 t3) x1 
                                     the thesis becomes 
                                     or
                                       pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                       ex2
                                         T
                                         λw2:T.pr0 w1 w2
                                         λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                        by (subst0_gen_head . . . . . . H12)
                                        we proved 
                                           or3
                                             ex2 T λu2:T.eq T x1 (THead (Bind b) u2 t3) λu2:T.subst0 (s (Flat Appl) i) v0 u1 u2
                                             ex2
                                               T
                                               λt2:T.eq T x1 (THead (Bind b) u1 t2)
                                               λt2:T.subst0 (s (Bind b) (s (Flat Appl) i)) v0 t3 t2
                                             ex3_2
                                               T
                                               T
                                               λu2:T.λt2:T.eq T x1 (THead (Bind b) u2 t2)
                                               λu2:T.λ:T.subst0 (s (Flat Appl) i) v0 u1 u2
                                               λ:T.λt2:T.subst0 (s (Bind b) (s (Flat Appl) i)) v0 t3 t2
                                        we proceed by induction on the previous result to prove 
                                           or
                                             pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                             ex2
                                               T
                                               λw2:T.pr0 w1 w2
                                               λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                           case or3_intro0 : H13:ex2 T λu3:T.eq T x1 (THead (Bind b) u3 t3) λu3:T.subst0 (s (Flat Appl) i) v0 u1 u3 
                                              the thesis becomes 
                                              or
                                                pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                                ex2
                                                  T
                                                  λw2:T.pr0 w1 w2
                                                  λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                 we proceed by induction on H13 to prove 
                                                    or
                                                      pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                                      ex2
                                                        T
                                                        λw2:T.pr0 w1 w2
                                                        λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                    case ex_intro2 : x:T H14:eq T x1 (THead (Bind b) x t3) H15:subst0 (s (Flat Appl) i) v0 u1 x 
                                                       the thesis becomes 
                                                       or
                                                         pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                                         ex2
                                                           T
                                                           λw2:T.pr0 w1 w2
                                                           λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                          (H16
                                                             we proceed by induction on H14 to prove eq T w1 (THead (Flat Appl) x0 (THead (Bind b) x t3))
                                                                case refl_equal : 
                                                                   the thesis becomes the hypothesis H10
eq T w1 (THead (Flat Appl) x0 (THead (Bind b) x t3))
                                                          end of H16
                                                          by (H4 . . . H15 . H8)
                                                          we proved or (pr0 x u2) (ex2 T λw2:T.pr0 x w2 λw2:T.subst0 (s (Flat Appl) i) v3 u2 w2)
                                                          we proceed by induction on the previous result to prove 
                                                             or
                                                               pr0
                                                                 THead (Flat Appl) x0 (THead (Bind b) x t3)
                                                                 THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                               ex2
                                                                 T
                                                                 λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x t3)) w2
                                                                 λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                             case or_introl : H17:pr0 x u2 
                                                                the thesis becomes 
                                                                or
                                                                  pr0
                                                                    THead (Flat Appl) x0 (THead (Bind b) x t3)
                                                                    THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                  ex2
                                                                    T
                                                                    λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x t3)) w2
                                                                    λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                   by (H2 . . . H11 . H8)
                                                                   we proved or (pr0 x0 v2) (ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 i v3 v2 w2)
                                                                   we proceed by induction on the previous result to prove 
                                                                      or
                                                                        pr0
                                                                          THead (Flat Appl) x0 (THead (Bind b) x t3)
                                                                          THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                        ex2
                                                                          T
                                                                          λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x t3)) w2
                                                                          λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                      case or_introl : H18:pr0 x0 v2 
                                                                         the thesis becomes 
                                                                         or
                                                                           pr0
                                                                             THead (Flat Appl) x0 (THead (Bind b) x t3)
                                                                             THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                           ex2
                                                                             T
                                                                             λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x t3)) w2
                                                                             λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                            by (pr0_upsilon . H0 . . H18 . . H17 . . H5)
                                                                            we proved 
                                                                               pr0
                                                                                 THead (Flat Appl) x0 (THead (Bind b) x t3)
                                                                                 THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                            by (or_introl . . previous)

                                                                               or
                                                                                 pr0
                                                                                   THead (Flat Appl) x0 (THead (Bind b) x t3)
                                                                                   THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                 ex2
                                                                                   T
                                                                                   λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x t3)) w2
                                                                                   λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                      case or_intror : H18:ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 i v3 v2 w2 
                                                                         the thesis becomes 
                                                                         or
                                                                           pr0
                                                                             THead (Flat Appl) x0 (THead (Bind b) x t3)
                                                                             THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                           ex2
                                                                             T
                                                                             λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x t3)) w2
                                                                             λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                            we proceed by induction on H18 to prove 
                                                                               or
                                                                                 pr0
                                                                                   THead (Flat Appl) x0 (THead (Bind b) x t3)
                                                                                   THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                 ex2
                                                                                   T
                                                                                   λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x t3)) w2
                                                                                   λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                               case ex_intro2 : x2:T H19:pr0 x0 x2 H20:subst0 i v3 v2 x2 
                                                                                  the thesis becomes 
                                                                                  or
                                                                                    pr0
                                                                                      THead (Flat Appl) x0 (THead (Bind b) x t3)
                                                                                      THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                    ex2
                                                                                      T
                                                                                      λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x t3)) w2
                                                                                      λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                     (h1
                                                                                        by (pr0_upsilon . H0 . . H19 . . H17 . . H5)

                                                                                           pr0
                                                                                             THead (Flat Appl) x0 (THead (Bind b) x t3)
                                                                                             THead (Bind b) u2 (THead (Flat Appl) (lift (S OO x2) t4)
                                                                                     end of h1
                                                                                     (h2
                                                                                        by (le_O_n .)
                                                                                        we proved le O i
                                                                                        by (subst0_lift_ge_s . . . . H20 . previous .)
                                                                                        we proved subst0 (s (Bind b) i) v3 (lift (S OO v2) (lift (S OO x2)
                                                                                        by (subst0_fst . . . . previous . .)
                                                                                        we proved 
                                                                                           subst0
                                                                                             s (Bind b) i
                                                                                             v3
                                                                                             THead (Flat Appl) (lift (S OO v2) t4
                                                                                             THead (Flat Appl) (lift (S OO x2) t4
                                                                                        by (subst0_snd . . . . . previous .)

                                                                                           subst0
                                                                                             i
                                                                                             v3
                                                                                             THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                             THead (Bind b) u2 (THead (Flat Appl) (lift (S OO x2) t4)
                                                                                     end of h2
                                                                                     by (ex_intro2 . . . . h1 h2)
                                                                                     we proved 
                                                                                        ex2
                                                                                          T
                                                                                          λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x t3)) w2
                                                                                          λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                     by (or_intror . . previous)

                                                                                        or
                                                                                          pr0
                                                                                            THead (Flat Appl) x0 (THead (Bind b) x t3)
                                                                                            THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                          ex2
                                                                                            T
                                                                                            λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x t3)) w2
                                                                                            λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                                                               or
                                                                                 pr0
                                                                                   THead (Flat Appl) x0 (THead (Bind b) x t3)
                                                                                   THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                 ex2
                                                                                   T
                                                                                   λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x t3)) w2
                                                                                   λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                                                      or
                                                                        pr0
                                                                          THead (Flat Appl) x0 (THead (Bind b) x t3)
                                                                          THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                        ex2
                                                                          T
                                                                          λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x t3)) w2
                                                                          λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                             case or_intror : H17:ex2 T λw2:T.pr0 x w2 λw2:T.subst0 (s (Flat Appl) i) v3 u2 w2 
                                                                the thesis becomes 
                                                                or
                                                                  pr0
                                                                    THead (Flat Appl) x0 (THead (Bind b) x t3)
                                                                    THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                  ex2
                                                                    T
                                                                    λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x t3)) w2
                                                                    λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                   we proceed by induction on H17 to prove 
                                                                      or
                                                                        pr0
                                                                          THead (Flat Appl) x0 (THead (Bind b) x t3)
                                                                          THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                        ex2
                                                                          T
                                                                          λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x t3)) w2
                                                                          λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                      case ex_intro2 : x2:T H18:pr0 x x2 H19:subst0 (s (Flat Appl) i) v3 u2 x2 
                                                                         the thesis becomes 
                                                                         or
                                                                           pr0
                                                                             THead (Flat Appl) x0 (THead (Bind b) x t3)
                                                                             THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                           ex2
                                                                             T
                                                                             λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x t3)) w2
                                                                             λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                            by (H2 . . . H11 . H8)
                                                                            we proved or (pr0 x0 v2) (ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 i v3 v2 w2)
                                                                            we proceed by induction on the previous result to prove 
                                                                               or
                                                                                 pr0
                                                                                   THead (Flat Appl) x0 (THead (Bind b) x t3)
                                                                                   THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                 ex2
                                                                                   T
                                                                                   λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x t3)) w2
                                                                                   λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                               case or_introl : H20:pr0 x0 v2 
                                                                                  the thesis becomes 
                                                                                  or
                                                                                    pr0
                                                                                      THead (Flat Appl) x0 (THead (Bind b) x t3)
                                                                                      THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                    ex2
                                                                                      T
                                                                                      λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x t3)) w2
                                                                                      λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                     (h1
                                                                                        by (pr0_upsilon . H0 . . H20 . . H18 . . H5)

                                                                                           pr0
                                                                                             THead (Flat Appl) x0 (THead (Bind b) x t3)
                                                                                             THead (Bind b) x2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                     end of h1
                                                                                     (h2
                                                                                        consider H19
                                                                                        we proved subst0 (s (Flat Appl) i) v3 u2 x2
                                                                                        that is equivalent to subst0 i v3 u2 x2
                                                                                        by (subst0_fst . . . . previous . .)

                                                                                           subst0
                                                                                             i
                                                                                             v3
                                                                                             THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                             THead (Bind b) x2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                     end of h2
                                                                                     by (ex_intro2 . . . . h1 h2)
                                                                                     we proved 
                                                                                        ex2
                                                                                          T
                                                                                          λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x t3)) w2
                                                                                          λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                     by (or_intror . . previous)

                                                                                        or
                                                                                          pr0
                                                                                            THead (Flat Appl) x0 (THead (Bind b) x t3)
                                                                                            THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                          ex2
                                                                                            T
                                                                                            λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x t3)) w2
                                                                                            λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                               case or_intror : H20:ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 i v3 v2 w2 
                                                                                  the thesis becomes 
                                                                                  or
                                                                                    pr0
                                                                                      THead (Flat Appl) x0 (THead (Bind b) x t3)
                                                                                      THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                    ex2
                                                                                      T
                                                                                      λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x t3)) w2
                                                                                      λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                     we proceed by induction on H20 to prove 
                                                                                        or
                                                                                          pr0
                                                                                            THead (Flat Appl) x0 (THead (Bind b) x t3)
                                                                                            THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                          ex2
                                                                                            T
                                                                                            λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x t3)) w2
                                                                                            λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                        case ex_intro2 : x3:T H21:pr0 x0 x3 H22:subst0 i v3 v2 x3 
                                                                                           the thesis becomes 
                                                                                           or
                                                                                             pr0
                                                                                               THead (Flat Appl) x0 (THead (Bind b) x t3)
                                                                                               THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                             ex2
                                                                                               T
                                                                                               λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x t3)) w2
                                                                                               λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                              (h1
                                                                                                 by (pr0_upsilon . H0 . . H21 . . H18 . . H5)

                                                                                                    pr0
                                                                                                      THead (Flat Appl) x0 (THead (Bind b) x t3)
                                                                                                      THead (Bind b) x2 (THead (Flat Appl) (lift (S OO x3) t4)
                                                                                              end of h1
                                                                                              (h2
                                                                                                 (h1
                                                                                                    consider H19
                                                                                                    we proved subst0 (s (Flat Appl) i) v3 u2 x2
subst0 i v3 u2 x2
                                                                                                 end of h1
                                                                                                 (h2
                                                                                                    by (le_O_n .)
                                                                                                    we proved le O i
                                                                                                    by (subst0_lift_ge_s . . . . H22 . previous .)
                                                                                                    we proved subst0 (s (Bind b) i) v3 (lift (S OO v2) (lift (S OO x3)
                                                                                                    by (subst0_fst . . . . previous . .)

                                                                                                       subst0
                                                                                                         s (Bind b) i
                                                                                                         v3
                                                                                                         THead (Flat Appl) (lift (S OO v2) t4
                                                                                                         THead (Flat Appl) (lift (S OO x3) t4
                                                                                                 end of h2
                                                                                                 by (subst0_both . . . . h1 . . . h2)

                                                                                                    subst0
                                                                                                      i
                                                                                                      v3
                                                                                                      THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                                      THead (Bind b) x2 (THead (Flat Appl) (lift (S OO x3) t4)
                                                                                              end of h2
                                                                                              by (ex_intro2 . . . . h1 h2)
                                                                                              we proved 
                                                                                                 ex2
                                                                                                   T
                                                                                                   λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x t3)) w2
                                                                                                   λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                              by (or_intror . . previous)

                                                                                                 or
                                                                                                   pr0
                                                                                                     THead (Flat Appl) x0 (THead (Bind b) x t3)
                                                                                                     THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                                   ex2
                                                                                                     T
                                                                                                     λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x t3)) w2
                                                                                                     λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                                                                        or
                                                                                          pr0
                                                                                            THead (Flat Appl) x0 (THead (Bind b) x t3)
                                                                                            THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                          ex2
                                                                                            T
                                                                                            λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x t3)) w2
                                                                                            λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                                                               or
                                                                                 pr0
                                                                                   THead (Flat Appl) x0 (THead (Bind b) x t3)
                                                                                   THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                 ex2
                                                                                   T
                                                                                   λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x t3)) w2
                                                                                   λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                                                      or
                                                                        pr0
                                                                          THead (Flat Appl) x0 (THead (Bind b) x t3)
                                                                          THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                        ex2
                                                                          T
                                                                          λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x t3)) w2
                                                                          λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                          we proved 
                                                             or
                                                               pr0
                                                                 THead (Flat Appl) x0 (THead (Bind b) x t3)
                                                                 THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                               ex2
                                                                 T
                                                                 λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x t3)) w2
                                                                 λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                          by (eq_ind_r . . . previous . H16)

                                                             or
                                                               pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                                               ex2
                                                                 T
                                                                 λw2:T.pr0 w1 w2
                                                                 λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                                    or
                                                      pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                                      ex2
                                                        T
                                                        λw2:T.pr0 w1 w2
                                                        λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                           case or3_intro1 : H13:ex2 T λt5:T.eq T x1 (THead (Bind b) u1 t5) λt5:T.subst0 (s (Bind b) (s (Flat Appl) i)) v0 t3 t5 
                                              the thesis becomes 
                                              or
                                                pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                                ex2
                                                  T
                                                  λw2:T.pr0 w1 w2
                                                  λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                 we proceed by induction on H13 to prove 
                                                    or
                                                      pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                                      ex2
                                                        T
                                                        λw2:T.pr0 w1 w2
                                                        λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                    case ex_intro2 : x:T H14:eq T x1 (THead (Bind b) u1 x) H15:subst0 (s (Bind b) (s (Flat Appl) i)) v0 t3 x 
                                                       the thesis becomes 
                                                       or
                                                         pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                                         ex2
                                                           T
                                                           λw2:T.pr0 w1 w2
                                                           λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                          (H16
                                                             we proceed by induction on H14 to prove eq T w1 (THead (Flat Appl) x0 (THead (Bind b) u1 x))
                                                                case refl_equal : 
                                                                   the thesis becomes the hypothesis H10
eq T w1 (THead (Flat Appl) x0 (THead (Bind b) u1 x))
                                                          end of H16
                                                          by (H6 . . . H15 . H8)
                                                          we proved or (pr0 x t4) (ex2 T λw2:T.pr0 x w2 λw2:T.subst0 (s (Bind b) (s (Flat Appl) i)) v3 t4 w2)
                                                          we proceed by induction on the previous result to prove 
                                                             or
                                                               pr0
                                                                 THead (Flat Appl) x0 (THead (Bind b) u1 x)
                                                                 THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                               ex2
                                                                 T
                                                                 λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) u1 x)) w2
                                                                 λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                             case or_introl : H17:pr0 x t4 
                                                                the thesis becomes 
                                                                or
                                                                  pr0
                                                                    THead (Flat Appl) x0 (THead (Bind b) u1 x)
                                                                    THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                  ex2
                                                                    T
                                                                    λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) u1 x)) w2
                                                                    λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                   by (H2 . . . H11 . H8)
                                                                   we proved or (pr0 x0 v2) (ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 i v3 v2 w2)
                                                                   we proceed by induction on the previous result to prove 
                                                                      or
                                                                        pr0
                                                                          THead (Flat Appl) x0 (THead (Bind b) u1 x)
                                                                          THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                        ex2
                                                                          T
                                                                          λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) u1 x)) w2
                                                                          λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                      case or_introl : H18:pr0 x0 v2 
                                                                         the thesis becomes 
                                                                         or
                                                                           pr0
                                                                             THead (Flat Appl) x0 (THead (Bind b) u1 x)
                                                                             THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                           ex2
                                                                             T
                                                                             λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) u1 x)) w2
                                                                             λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                            by (pr0_upsilon . H0 . . H18 . . H3 . . H17)
                                                                            we proved 
                                                                               pr0
                                                                                 THead (Flat Appl) x0 (THead (Bind b) u1 x)
                                                                                 THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                            by (or_introl . . previous)

                                                                               or
                                                                                 pr0
                                                                                   THead (Flat Appl) x0 (THead (Bind b) u1 x)
                                                                                   THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                 ex2
                                                                                   T
                                                                                   λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) u1 x)) w2
                                                                                   λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                      case or_intror : H18:ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 i v3 v2 w2 
                                                                         the thesis becomes 
                                                                         or
                                                                           pr0
                                                                             THead (Flat Appl) x0 (THead (Bind b) u1 x)
                                                                             THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                           ex2
                                                                             T
                                                                             λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) u1 x)) w2
                                                                             λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                            we proceed by induction on H18 to prove 
                                                                               or
                                                                                 pr0
                                                                                   THead (Flat Appl) x0 (THead (Bind b) u1 x)
                                                                                   THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                 ex2
                                                                                   T
                                                                                   λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) u1 x)) w2
                                                                                   λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                               case ex_intro2 : x2:T H19:pr0 x0 x2 H20:subst0 i v3 v2 x2 
                                                                                  the thesis becomes 
                                                                                  or
                                                                                    pr0
                                                                                      THead (Flat Appl) x0 (THead (Bind b) u1 x)
                                                                                      THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                    ex2
                                                                                      T
                                                                                      λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) u1 x)) w2
                                                                                      λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                     (h1
                                                                                        by (pr0_upsilon . H0 . . H19 . . H3 . . H17)

                                                                                           pr0
                                                                                             THead (Flat Appl) x0 (THead (Bind b) u1 x)
                                                                                             THead (Bind b) u2 (THead (Flat Appl) (lift (S OO x2) t4)
                                                                                     end of h1
                                                                                     (h2
                                                                                        by (le_O_n .)
                                                                                        we proved le O i
                                                                                        by (subst0_lift_ge_s . . . . H20 . previous .)
                                                                                        we proved subst0 (s (Bind b) i) v3 (lift (S OO v2) (lift (S OO x2)
                                                                                        by (subst0_fst . . . . previous . .)
                                                                                        we proved 
                                                                                           subst0
                                                                                             s (Bind b) i
                                                                                             v3
                                                                                             THead (Flat Appl) (lift (S OO v2) t4
                                                                                             THead (Flat Appl) (lift (S OO x2) t4
                                                                                        by (subst0_snd . . . . . previous .)

                                                                                           subst0
                                                                                             i
                                                                                             v3
                                                                                             THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                             THead (Bind b) u2 (THead (Flat Appl) (lift (S OO x2) t4)
                                                                                     end of h2
                                                                                     by (ex_intro2 . . . . h1 h2)
                                                                                     we proved 
                                                                                        ex2
                                                                                          T
                                                                                          λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) u1 x)) w2
                                                                                          λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                     by (or_intror . . previous)

                                                                                        or
                                                                                          pr0
                                                                                            THead (Flat Appl) x0 (THead (Bind b) u1 x)
                                                                                            THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                          ex2
                                                                                            T
                                                                                            λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) u1 x)) w2
                                                                                            λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                                                               or
                                                                                 pr0
                                                                                   THead (Flat Appl) x0 (THead (Bind b) u1 x)
                                                                                   THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                 ex2
                                                                                   T
                                                                                   λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) u1 x)) w2
                                                                                   λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                                                      or
                                                                        pr0
                                                                          THead (Flat Appl) x0 (THead (Bind b) u1 x)
                                                                          THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                        ex2
                                                                          T
                                                                          λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) u1 x)) w2
                                                                          λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                             case or_intror : H17:ex2 T λw2:T.pr0 x w2 λw2:T.subst0 (s (Bind b) (s (Flat Appl) i)) v3 t4 w2 
                                                                the thesis becomes 
                                                                or
                                                                  pr0
                                                                    THead (Flat Appl) x0 (THead (Bind b) u1 x)
                                                                    THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                  ex2
                                                                    T
                                                                    λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) u1 x)) w2
                                                                    λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                   we proceed by induction on H17 to prove 
                                                                      or
                                                                        pr0
                                                                          THead (Flat Appl) x0 (THead (Bind b) u1 x)
                                                                          THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                        ex2
                                                                          T
                                                                          λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) u1 x)) w2
                                                                          λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                      case ex_intro2 : x2:T H18:pr0 x x2 H19:subst0 (s (Bind b) (s (Flat Appl) i)) v3 t4 x2 
                                                                         the thesis becomes 
                                                                         or
                                                                           pr0
                                                                             THead (Flat Appl) x0 (THead (Bind b) u1 x)
                                                                             THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                           ex2
                                                                             T
                                                                             λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) u1 x)) w2
                                                                             λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                            by (H2 . . . H11 . H8)
                                                                            we proved or (pr0 x0 v2) (ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 i v3 v2 w2)
                                                                            we proceed by induction on the previous result to prove 
                                                                               or
                                                                                 pr0
                                                                                   THead (Flat Appl) x0 (THead (Bind b) u1 x)
                                                                                   THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                 ex2
                                                                                   T
                                                                                   λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) u1 x)) w2
                                                                                   λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                               case or_introl : H20:pr0 x0 v2 
                                                                                  the thesis becomes 
                                                                                  or
                                                                                    pr0
                                                                                      THead (Flat Appl) x0 (THead (Bind b) u1 x)
                                                                                      THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                    ex2
                                                                                      T
                                                                                      λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) u1 x)) w2
                                                                                      λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                     (h1
                                                                                        by (pr0_upsilon . H0 . . H20 . . H3 . . H18)

                                                                                           pr0
                                                                                             THead (Flat Appl) x0 (THead (Bind b) u1 x)
                                                                                             THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) x2)
                                                                                     end of h1
                                                                                     (h2
                                                                                        consider H19
                                                                                        we proved subst0 (s (Bind b) (s (Flat Appl) i)) v3 t4 x2
                                                                                        that is equivalent to subst0 (s (Flat Appl) (s (Bind b) i)) v3 t4 x2
                                                                                        by (subst0_snd . . . . . previous .)
                                                                                        we proved 
                                                                                           subst0
                                                                                             s (Bind b) i
                                                                                             v3
                                                                                             THead (Flat Appl) (lift (S OO v2) t4
                                                                                             THead (Flat Appl) (lift (S OO v2) x2
                                                                                        by (subst0_snd . . . . . previous .)

                                                                                           subst0
                                                                                             i
                                                                                             v3
                                                                                             THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                             THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) x2)
                                                                                     end of h2
                                                                                     by (ex_intro2 . . . . h1 h2)
                                                                                     we proved 
                                                                                        ex2
                                                                                          T
                                                                                          λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) u1 x)) w2
                                                                                          λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                     by (or_intror . . previous)

                                                                                        or
                                                                                          pr0
                                                                                            THead (Flat Appl) x0 (THead (Bind b) u1 x)
                                                                                            THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                          ex2
                                                                                            T
                                                                                            λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) u1 x)) w2
                                                                                            λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                               case or_intror : H20:ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 i v3 v2 w2 
                                                                                  the thesis becomes 
                                                                                  or
                                                                                    pr0
                                                                                      THead (Flat Appl) x0 (THead (Bind b) u1 x)
                                                                                      THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                    ex2
                                                                                      T
                                                                                      λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) u1 x)) w2
                                                                                      λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                     we proceed by induction on H20 to prove 
                                                                                        or
                                                                                          pr0
                                                                                            THead (Flat Appl) x0 (THead (Bind b) u1 x)
                                                                                            THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                          ex2
                                                                                            T
                                                                                            λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) u1 x)) w2
                                                                                            λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                        case ex_intro2 : x3:T H21:pr0 x0 x3 H22:subst0 i v3 v2 x3 
                                                                                           the thesis becomes 
                                                                                           or
                                                                                             pr0
                                                                                               THead (Flat Appl) x0 (THead (Bind b) u1 x)
                                                                                               THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                             ex2
                                                                                               T
                                                                                               λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) u1 x)) w2
                                                                                               λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                              (h1
                                                                                                 by (pr0_upsilon . H0 . . H21 . . H3 . . H18)

                                                                                                    pr0
                                                                                                      THead (Flat Appl) x0 (THead (Bind b) u1 x)
                                                                                                      THead (Bind b) u2 (THead (Flat Appl) (lift (S OO x3) x2)
                                                                                              end of h1
                                                                                              (h2
                                                                                                 (h1
                                                                                                    by (le_O_n .)
                                                                                                    we proved le O i
                                                                                                    by (subst0_lift_ge_s . . . . H22 . previous .)
subst0 (s (Bind b) i) v3 (lift (S OO v2) (lift (S OO x3)
                                                                                                 end of h1
                                                                                                 (h2
                                                                                                    consider H19
                                                                                                    we proved subst0 (s (Bind b) (s (Flat Appl) i)) v3 t4 x2
subst0 (s (Flat Appl) (s (Bind b) i)) v3 t4 x2
                                                                                                 end of h2
                                                                                                 by (subst0_both . . . . h1 . . . h2)
                                                                                                 we proved 
                                                                                                    subst0
                                                                                                      s (Bind b) i
                                                                                                      v3
                                                                                                      THead (Flat Appl) (lift (S OO v2) t4
                                                                                                      THead (Flat Appl) (lift (S OO x3) x2
                                                                                                 by (subst0_snd . . . . . previous .)

                                                                                                    subst0
                                                                                                      i
                                                                                                      v3
                                                                                                      THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                                      THead (Bind b) u2 (THead (Flat Appl) (lift (S OO x3) x2)
                                                                                              end of h2
                                                                                              by (ex_intro2 . . . . h1 h2)
                                                                                              we proved 
                                                                                                 ex2
                                                                                                   T
                                                                                                   λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) u1 x)) w2
                                                                                                   λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                              by (or_intror . . previous)

                                                                                                 or
                                                                                                   pr0
                                                                                                     THead (Flat Appl) x0 (THead (Bind b) u1 x)
                                                                                                     THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                                   ex2
                                                                                                     T
                                                                                                     λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) u1 x)) w2
                                                                                                     λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                                                                        or
                                                                                          pr0
                                                                                            THead (Flat Appl) x0 (THead (Bind b) u1 x)
                                                                                            THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                          ex2
                                                                                            T
                                                                                            λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) u1 x)) w2
                                                                                            λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                                                               or
                                                                                 pr0
                                                                                   THead (Flat Appl) x0 (THead (Bind b) u1 x)
                                                                                   THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                 ex2
                                                                                   T
                                                                                   λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) u1 x)) w2
                                                                                   λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                                                      or
                                                                        pr0
                                                                          THead (Flat Appl) x0 (THead (Bind b) u1 x)
                                                                          THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                        ex2
                                                                          T
                                                                          λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) u1 x)) w2
                                                                          λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                          we proved 
                                                             or
                                                               pr0
                                                                 THead (Flat Appl) x0 (THead (Bind b) u1 x)
                                                                 THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                               ex2
                                                                 T
                                                                 λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) u1 x)) w2
                                                                 λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                          by (eq_ind_r . . . previous . H16)

                                                             or
                                                               pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                                               ex2
                                                                 T
                                                                 λw2:T.pr0 w1 w2
                                                                 λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                                    or
                                                      pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                                      ex2
                                                        T
                                                        λw2:T.pr0 w1 w2
                                                        λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                           case or3_intro2 : H13:ex3_2 T T λu3:T.λt5:T.eq T x1 (THead (Bind b) u3 t5) λu3:T.λ:T.subst0 (s (Flat Appl) i) v0 u1 u3 λ:T.λt5:T.subst0 (s (Bind b) (s (Flat Appl) i)) v0 t3 t5 
                                              the thesis becomes 
                                              or
                                                pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                                ex2
                                                  T
                                                  λw2:T.pr0 w1 w2
                                                  λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                 we proceed by induction on H13 to prove 
                                                    or
                                                      pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                                      ex2
                                                        T
                                                        λw2:T.pr0 w1 w2
                                                        λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                    case ex3_2_intro : x2:T x3:T H14:eq T x1 (THead (Bind b) x2 x3) H15:subst0 (s (Flat Appl) i) v0 u1 x2 H16:subst0 (s (Bind b) (s (Flat Appl) i)) v0 t3 x3 
                                                       the thesis becomes 
                                                       or
                                                         pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                                         ex2
                                                           T
                                                           λw2:T.pr0 w1 w2
                                                           λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                          (H17
                                                             we proceed by induction on H14 to prove eq T w1 (THead (Flat Appl) x0 (THead (Bind b) x2 x3))
                                                                case refl_equal : 
                                                                   the thesis becomes the hypothesis H10
eq T w1 (THead (Flat Appl) x0 (THead (Bind b) x2 x3))
                                                          end of H17
                                                          by (H6 . . . H16 . H8)
                                                          we proved or (pr0 x3 t4) (ex2 T λw2:T.pr0 x3 w2 λw2:T.subst0 (s (Bind b) (s (Flat Appl) i)) v3 t4 w2)
                                                          we proceed by induction on the previous result to prove 
                                                             or
                                                               pr0
                                                                 THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                 THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                               ex2
                                                                 T
                                                                 λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                 λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                             case or_introl : H18:pr0 x3 t4 
                                                                the thesis becomes 
                                                                or
                                                                  pr0
                                                                    THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                    THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                  ex2
                                                                    T
                                                                    λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                    λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                   by (H4 . . . H15 . H8)
                                                                   we proved or (pr0 x2 u2) (ex2 T λw2:T.pr0 x2 w2 λw2:T.subst0 (s (Flat Appl) i) v3 u2 w2)
                                                                   we proceed by induction on the previous result to prove 
                                                                      or
                                                                        pr0
                                                                          THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                          THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                        ex2
                                                                          T
                                                                          λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                          λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                      case or_introl : H19:pr0 x2 u2 
                                                                         the thesis becomes 
                                                                         or
                                                                           pr0
                                                                             THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                             THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                           ex2
                                                                             T
                                                                             λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                             λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                            by (H2 . . . H11 . H8)
                                                                            we proved or (pr0 x0 v2) (ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 i v3 v2 w2)
                                                                            we proceed by induction on the previous result to prove 
                                                                               or
                                                                                 pr0
                                                                                   THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                   THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                 ex2
                                                                                   T
                                                                                   λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                   λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                               case or_introl : H20:pr0 x0 v2 
                                                                                  the thesis becomes 
                                                                                  or
                                                                                    pr0
                                                                                      THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                      THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                    ex2
                                                                                      T
                                                                                      λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                      λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                     by (pr0_upsilon . H0 . . H20 . . H19 . . H18)
                                                                                     we proved 
                                                                                        pr0
                                                                                          THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                          THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                     by (or_introl . . previous)

                                                                                        or
                                                                                          pr0
                                                                                            THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                            THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                          ex2
                                                                                            T
                                                                                            λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                            λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                               case or_intror : H20:ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 i v3 v2 w2 
                                                                                  the thesis becomes 
                                                                                  or
                                                                                    pr0
                                                                                      THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                      THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                    ex2
                                                                                      T
                                                                                      λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                      λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                     we proceed by induction on H20 to prove 
                                                                                        or
                                                                                          pr0
                                                                                            THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                            THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                          ex2
                                                                                            T
                                                                                            λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                            λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                        case ex_intro2 : x:T H21:pr0 x0 x H22:subst0 i v3 v2 x 
                                                                                           the thesis becomes 
                                                                                           or
                                                                                             pr0
                                                                                               THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                               THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                             ex2
                                                                                               T
                                                                                               λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                               λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                              (h1
                                                                                                 by (pr0_upsilon . H0 . . H21 . . H19 . . H18)

                                                                                                    pr0
                                                                                                      THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                                      THead (Bind b) u2 (THead (Flat Appl) (lift (S OO x) t4)
                                                                                              end of h1
                                                                                              (h2
                                                                                                 by (le_O_n .)
                                                                                                 we proved le O i
                                                                                                 by (subst0_lift_ge_s . . . . H22 . previous .)
                                                                                                 we proved subst0 (s (Bind b) i) v3 (lift (S OO v2) (lift (S OO x)
                                                                                                 by (subst0_fst . . . . previous . .)
                                                                                                 we proved 
                                                                                                    subst0
                                                                                                      s (Bind b) i
                                                                                                      v3
                                                                                                      THead (Flat Appl) (lift (S OO v2) t4
                                                                                                      THead (Flat Appl) (lift (S OO x) t4
                                                                                                 by (subst0_snd . . . . . previous .)

                                                                                                    subst0
                                                                                                      i
                                                                                                      v3
                                                                                                      THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                                      THead (Bind b) u2 (THead (Flat Appl) (lift (S OO x) t4)
                                                                                              end of h2
                                                                                              by (ex_intro2 . . . . h1 h2)
                                                                                              we proved 
                                                                                                 ex2
                                                                                                   T
                                                                                                   λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                                   λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                              by (or_intror . . previous)

                                                                                                 or
                                                                                                   pr0
                                                                                                     THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                                     THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                                   ex2
                                                                                                     T
                                                                                                     λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                                     λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                                                                        or
                                                                                          pr0
                                                                                            THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                            THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                          ex2
                                                                                            T
                                                                                            λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                            λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                                                               or
                                                                                 pr0
                                                                                   THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                   THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                 ex2
                                                                                   T
                                                                                   λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                   λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                      case or_intror : H19:ex2 T λw2:T.pr0 x2 w2 λw2:T.subst0 (s (Flat Appl) i) v3 u2 w2 
                                                                         the thesis becomes 
                                                                         or
                                                                           pr0
                                                                             THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                             THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                           ex2
                                                                             T
                                                                             λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                             λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                            we proceed by induction on H19 to prove 
                                                                               or
                                                                                 pr0
                                                                                   THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                   THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                 ex2
                                                                                   T
                                                                                   λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                   λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                               case ex_intro2 : x:T H20:pr0 x2 x H21:subst0 (s (Flat Appl) i) v3 u2 x 
                                                                                  the thesis becomes 
                                                                                  or
                                                                                    pr0
                                                                                      THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                      THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                    ex2
                                                                                      T
                                                                                      λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                      λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                     by (H2 . . . H11 . H8)
                                                                                     we proved or (pr0 x0 v2) (ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 i v3 v2 w2)
                                                                                     we proceed by induction on the previous result to prove 
                                                                                        or
                                                                                          pr0
                                                                                            THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                            THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                          ex2
                                                                                            T
                                                                                            λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                            λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                        case or_introl : H22:pr0 x0 v2 
                                                                                           the thesis becomes 
                                                                                           or
                                                                                             pr0
                                                                                               THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                               THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                             ex2
                                                                                               T
                                                                                               λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                               λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                              (h1
                                                                                                 by (pr0_upsilon . H0 . . H22 . . H20 . . H18)

                                                                                                    pr0
                                                                                                      THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                                      THead (Bind b) x (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                              end of h1
                                                                                              (h2
                                                                                                 consider H21
                                                                                                 we proved subst0 (s (Flat Appl) i) v3 u2 x
                                                                                                 that is equivalent to subst0 i v3 u2 x
                                                                                                 by (subst0_fst . . . . previous . .)

                                                                                                    subst0
                                                                                                      i
                                                                                                      v3
                                                                                                      THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                                      THead (Bind b) x (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                              end of h2
                                                                                              by (ex_intro2 . . . . h1 h2)
                                                                                              we proved 
                                                                                                 ex2
                                                                                                   T
                                                                                                   λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                                   λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                              by (or_intror . . previous)

                                                                                                 or
                                                                                                   pr0
                                                                                                     THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                                     THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                                   ex2
                                                                                                     T
                                                                                                     λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                                     λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                        case or_intror : H22:ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 i v3 v2 w2 
                                                                                           the thesis becomes 
                                                                                           or
                                                                                             pr0
                                                                                               THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                               THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                             ex2
                                                                                               T
                                                                                               λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                               λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                              we proceed by induction on H22 to prove 
                                                                                                 or
                                                                                                   pr0
                                                                                                     THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                                     THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                                   ex2
                                                                                                     T
                                                                                                     λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                                     λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                                 case ex_intro2 : x4:T H23:pr0 x0 x4 H24:subst0 i v3 v2 x4 
                                                                                                    the thesis becomes 
                                                                                                    or
                                                                                                      pr0
                                                                                                        THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                                        THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                                      ex2
                                                                                                        T
                                                                                                        λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                                        λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                                       (h1
                                                                                                          by (pr0_upsilon . H0 . . H23 . . H20 . . H18)

                                                                                                             pr0
                                                                                                               THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                                               THead (Bind b) x (THead (Flat Appl) (lift (S OO x4) t4)
                                                                                                       end of h1
                                                                                                       (h2
                                                                                                          (h1
                                                                                                             consider H21
                                                                                                             we proved subst0 (s (Flat Appl) i) v3 u2 x
subst0 i v3 u2 x
                                                                                                          end of h1
                                                                                                          (h2
                                                                                                             by (le_O_n .)
                                                                                                             we proved le O i
                                                                                                             by (subst0_lift_ge_s . . . . H24 . previous .)
                                                                                                             we proved subst0 (s (Bind b) i) v3 (lift (S OO v2) (lift (S OO x4)
                                                                                                             by (subst0_fst . . . . previous . .)

                                                                                                                subst0
                                                                                                                  s (Bind b) i
                                                                                                                  v3
                                                                                                                  THead (Flat Appl) (lift (S OO v2) t4
                                                                                                                  THead (Flat Appl) (lift (S OO x4) t4
                                                                                                          end of h2
                                                                                                          by (subst0_both . . . . h1 . . . h2)

                                                                                                             subst0
                                                                                                               i
                                                                                                               v3
                                                                                                               THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                                               THead (Bind b) x (THead (Flat Appl) (lift (S OO x4) t4)
                                                                                                       end of h2
                                                                                                       by (ex_intro2 . . . . h1 h2)
                                                                                                       we proved 
                                                                                                          ex2
                                                                                                            T
                                                                                                            λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                                            λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                                       by (or_intror . . previous)

                                                                                                          or
                                                                                                            pr0
                                                                                                              THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                                              THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                                            ex2
                                                                                                              T
                                                                                                              λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                                              λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                                                                                 or
                                                                                                   pr0
                                                                                                     THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                                     THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                                   ex2
                                                                                                     T
                                                                                                     λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                                     λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                                                                        or
                                                                                          pr0
                                                                                            THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                            THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                          ex2
                                                                                            T
                                                                                            λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                            λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                                                               or
                                                                                 pr0
                                                                                   THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                   THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                 ex2
                                                                                   T
                                                                                   λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                   λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                                                      or
                                                                        pr0
                                                                          THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                          THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                        ex2
                                                                          T
                                                                          λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                          λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                             case or_intror : H18:ex2 T λw2:T.pr0 x3 w2 λw2:T.subst0 (s (Bind b) (s (Flat Appl) i)) v3 t4 w2 
                                                                the thesis becomes 
                                                                or
                                                                  pr0
                                                                    THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                    THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                  ex2
                                                                    T
                                                                    λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                    λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                   we proceed by induction on H18 to prove 
                                                                      or
                                                                        pr0
                                                                          THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                          THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                        ex2
                                                                          T
                                                                          λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                          λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                      case ex_intro2 : x:T H19:pr0 x3 x H20:subst0 (s (Bind b) (s (Flat Appl) i)) v3 t4 x 
                                                                         the thesis becomes 
                                                                         or
                                                                           pr0
                                                                             THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                             THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                           ex2
                                                                             T
                                                                             λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                             λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                            by (H4 . . . H15 . H8)
                                                                            we proved or (pr0 x2 u2) (ex2 T λw2:T.pr0 x2 w2 λw2:T.subst0 (s (Flat Appl) i) v3 u2 w2)
                                                                            we proceed by induction on the previous result to prove 
                                                                               or
                                                                                 pr0
                                                                                   THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                   THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                 ex2
                                                                                   T
                                                                                   λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                   λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                               case or_introl : H21:pr0 x2 u2 
                                                                                  the thesis becomes 
                                                                                  or
                                                                                    pr0
                                                                                      THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                      THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                    ex2
                                                                                      T
                                                                                      λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                      λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                     by (H2 . . . H11 . H8)
                                                                                     we proved or (pr0 x0 v2) (ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 i v3 v2 w2)
                                                                                     we proceed by induction on the previous result to prove 
                                                                                        or
                                                                                          pr0
                                                                                            THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                            THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                          ex2
                                                                                            T
                                                                                            λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                            λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                        case or_introl : H22:pr0 x0 v2 
                                                                                           the thesis becomes 
                                                                                           or
                                                                                             pr0
                                                                                               THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                               THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                             ex2
                                                                                               T
                                                                                               λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                               λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                              (h1
                                                                                                 by (pr0_upsilon . H0 . . H22 . . H21 . . H19)

                                                                                                    pr0
                                                                                                      THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                                      THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) x)
                                                                                              end of h1
                                                                                              (h2
                                                                                                 consider H20
                                                                                                 we proved subst0 (s (Bind b) (s (Flat Appl) i)) v3 t4 x
                                                                                                 that is equivalent to subst0 (s (Flat Appl) (s (Bind b) i)) v3 t4 x
                                                                                                 by (subst0_snd . . . . . previous .)
                                                                                                 we proved 
                                                                                                    subst0
                                                                                                      s (Bind b) i
                                                                                                      v3
                                                                                                      THead (Flat Appl) (lift (S OO v2) t4
                                                                                                      THead (Flat Appl) (lift (S OO v2) x
                                                                                                 by (subst0_snd . . . . . previous .)

                                                                                                    subst0
                                                                                                      i
                                                                                                      v3
                                                                                                      THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                                      THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) x)
                                                                                              end of h2
                                                                                              by (ex_intro2 . . . . h1 h2)
                                                                                              we proved 
                                                                                                 ex2
                                                                                                   T
                                                                                                   λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                                   λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                              by (or_intror . . previous)

                                                                                                 or
                                                                                                   pr0
                                                                                                     THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                                     THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                                   ex2
                                                                                                     T
                                                                                                     λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                                     λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                        case or_intror : H22:ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 i v3 v2 w2 
                                                                                           the thesis becomes 
                                                                                           or
                                                                                             pr0
                                                                                               THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                               THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                             ex2
                                                                                               T
                                                                                               λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                               λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                              we proceed by induction on H22 to prove 
                                                                                                 or
                                                                                                   pr0
                                                                                                     THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                                     THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                                   ex2
                                                                                                     T
                                                                                                     λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                                     λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                                 case ex_intro2 : x4:T H23:pr0 x0 x4 H24:subst0 i v3 v2 x4 
                                                                                                    the thesis becomes 
                                                                                                    or
                                                                                                      pr0
                                                                                                        THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                                        THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                                      ex2
                                                                                                        T
                                                                                                        λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                                        λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                                       (h1
                                                                                                          by (pr0_upsilon . H0 . . H23 . . H21 . . H19)

                                                                                                             pr0
                                                                                                               THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                                               THead (Bind b) u2 (THead (Flat Appl) (lift (S OO x4) x)
                                                                                                       end of h1
                                                                                                       (h2
                                                                                                          (h1
                                                                                                             by (le_O_n .)
                                                                                                             we proved le O i
                                                                                                             by (subst0_lift_ge_s . . . . H24 . previous .)
subst0 (s (Bind b) i) v3 (lift (S OO v2) (lift (S OO x4)
                                                                                                          end of h1
                                                                                                          (h2
                                                                                                             consider H20
                                                                                                             we proved subst0 (s (Bind b) (s (Flat Appl) i)) v3 t4 x
subst0 (s (Flat Appl) (s (Bind b) i)) v3 t4 x
                                                                                                          end of h2
                                                                                                          by (subst0_both . . . . h1 . . . h2)
                                                                                                          we proved 
                                                                                                             subst0
                                                                                                               s (Bind b) i
                                                                                                               v3
                                                                                                               THead (Flat Appl) (lift (S OO v2) t4
                                                                                                               THead (Flat Appl) (lift (S OO x4) x
                                                                                                          by (subst0_snd . . . . . previous .)

                                                                                                             subst0
                                                                                                               i
                                                                                                               v3
                                                                                                               THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                                               THead (Bind b) u2 (THead (Flat Appl) (lift (S OO x4) x)
                                                                                                       end of h2
                                                                                                       by (ex_intro2 . . . . h1 h2)
                                                                                                       we proved 
                                                                                                          ex2
                                                                                                            T
                                                                                                            λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                                            λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                                       by (or_intror . . previous)

                                                                                                          or
                                                                                                            pr0
                                                                                                              THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                                              THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                                            ex2
                                                                                                              T
                                                                                                              λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                                              λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                                                                                 or
                                                                                                   pr0
                                                                                                     THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                                     THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                                   ex2
                                                                                                     T
                                                                                                     λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                                     λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                                                                        or
                                                                                          pr0
                                                                                            THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                            THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                          ex2
                                                                                            T
                                                                                            λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                            λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                               case or_intror : H21:ex2 T λw2:T.pr0 x2 w2 λw2:T.subst0 (s (Flat Appl) i) v3 u2 w2 
                                                                                  the thesis becomes 
                                                                                  or
                                                                                    pr0
                                                                                      THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                      THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                    ex2
                                                                                      T
                                                                                      λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                      λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                     we proceed by induction on H21 to prove 
                                                                                        or
                                                                                          pr0
                                                                                            THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                            THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                          ex2
                                                                                            T
                                                                                            λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                            λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                        case ex_intro2 : x4:T H22:pr0 x2 x4 H23:subst0 (s (Flat Appl) i) v3 u2 x4 
                                                                                           the thesis becomes 
                                                                                           or
                                                                                             pr0
                                                                                               THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                               THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                             ex2
                                                                                               T
                                                                                               λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                               λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                              by (H2 . . . H11 . H8)
                                                                                              we proved or (pr0 x0 v2) (ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 i v3 v2 w2)
                                                                                              we proceed by induction on the previous result to prove 
                                                                                                 or
                                                                                                   pr0
                                                                                                     THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                                     THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                                   ex2
                                                                                                     T
                                                                                                     λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                                     λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                                 case or_introl : H24:pr0 x0 v2 
                                                                                                    the thesis becomes 
                                                                                                    or
                                                                                                      pr0
                                                                                                        THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                                        THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                                      ex2
                                                                                                        T
                                                                                                        λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                                        λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                                       (h1
                                                                                                          by (pr0_upsilon . H0 . . H24 . . H22 . . H19)

                                                                                                             pr0
                                                                                                               THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                                               THead (Bind b) x4 (THead (Flat Appl) (lift (S OO v2) x)
                                                                                                       end of h1
                                                                                                       (h2
                                                                                                          (h1
                                                                                                             consider H23
                                                                                                             we proved subst0 (s (Flat Appl) i) v3 u2 x4
subst0 i v3 u2 x4
                                                                                                          end of h1
                                                                                                          (h2
                                                                                                             consider H20
                                                                                                             we proved subst0 (s (Bind b) (s (Flat Appl) i)) v3 t4 x
                                                                                                             that is equivalent to subst0 (s (Flat Appl) (s (Bind b) i)) v3 t4 x
                                                                                                             by (subst0_snd . . . . . previous .)

                                                                                                                subst0
                                                                                                                  s (Bind b) i
                                                                                                                  v3
                                                                                                                  THead (Flat Appl) (lift (S OO v2) t4
                                                                                                                  THead (Flat Appl) (lift (S OO v2) x
                                                                                                          end of h2
                                                                                                          by (subst0_both . . . . h1 . . . h2)

                                                                                                             subst0
                                                                                                               i
                                                                                                               v3
                                                                                                               THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                                               THead (Bind b) x4 (THead (Flat Appl) (lift (S OO v2) x)
                                                                                                       end of h2
                                                                                                       by (ex_intro2 . . . . h1 h2)
                                                                                                       we proved 
                                                                                                          ex2
                                                                                                            T
                                                                                                            λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                                            λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                                       by (or_intror . . previous)

                                                                                                          or
                                                                                                            pr0
                                                                                                              THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                                              THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                                            ex2
                                                                                                              T
                                                                                                              λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                                              λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                                 case or_intror : H24:ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 i v3 v2 w2 
                                                                                                    the thesis becomes 
                                                                                                    or
                                                                                                      pr0
                                                                                                        THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                                        THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                                      ex2
                                                                                                        T
                                                                                                        λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                                        λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                                       we proceed by induction on H24 to prove 
                                                                                                          or
                                                                                                            pr0
                                                                                                              THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                                              THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                                            ex2
                                                                                                              T
                                                                                                              λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                                              λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                                          case ex_intro2 : x5:T H25:pr0 x0 x5 H26:subst0 i v3 v2 x5 
                                                                                                             the thesis becomes 
                                                                                                             or
                                                                                                               pr0
                                                                                                                 THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                                                 THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                                               ex2
                                                                                                                 T
                                                                                                                 λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                                                 λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                                                (h1
                                                                                                                   by (pr0_upsilon . H0 . . H25 . . H22 . . H19)

                                                                                                                      pr0
                                                                                                                        THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                                                        THead (Bind b) x4 (THead (Flat Appl) (lift (S OO x5) x)
                                                                                                                end of h1
                                                                                                                (h2
                                                                                                                   (h1
                                                                                                                      consider H23
                                                                                                                      we proved subst0 (s (Flat Appl) i) v3 u2 x4
subst0 i v3 u2 x4
                                                                                                                   end of h1
                                                                                                                   (h2
                                                                                                                      (h1
                                                                                                                         by (le_O_n .)
                                                                                                                         we proved le O i
                                                                                                                         by (subst0_lift_ge_s . . . . H26 . previous .)
subst0 (s (Bind b) i) v3 (lift (S OO v2) (lift (S OO x5)
                                                                                                                      end of h1
                                                                                                                      (h2
                                                                                                                         consider H20
                                                                                                                         we proved subst0 (s (Bind b) (s (Flat Appl) i)) v3 t4 x
subst0 (s (Flat Appl) (s (Bind b) i)) v3 t4 x
                                                                                                                      end of h2
                                                                                                                      by (subst0_both . . . . h1 . . . h2)

                                                                                                                         subst0
                                                                                                                           s (Bind b) i
                                                                                                                           v3
                                                                                                                           THead (Flat Appl) (lift (S OO v2) t4
                                                                                                                           THead (Flat Appl) (lift (S OO x5) x
                                                                                                                   end of h2
                                                                                                                   by (subst0_both . . . . h1 . . . h2)

                                                                                                                      subst0
                                                                                                                        i
                                                                                                                        v3
                                                                                                                        THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                                                        THead (Bind b) x4 (THead (Flat Appl) (lift (S OO x5) x)
                                                                                                                end of h2
                                                                                                                by (ex_intro2 . . . . h1 h2)
                                                                                                                we proved 
                                                                                                                   ex2
                                                                                                                     T
                                                                                                                     λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                                                     λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                                                                                by (or_intror . . previous)

                                                                                                                   or
                                                                                                                     pr0
                                                                                                                       THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                                                       THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                                                     ex2
                                                                                                                       T
                                                                                                                       λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                                                       λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                                                                                          or
                                                                                                            pr0
                                                                                                              THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                                              THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                                            ex2
                                                                                                              T
                                                                                                              λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                                              λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                                                                                 or
                                                                                                   pr0
                                                                                                     THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                                     THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                                   ex2
                                                                                                     T
                                                                                                     λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                                     λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                                                                        or
                                                                                          pr0
                                                                                            THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                            THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                          ex2
                                                                                            T
                                                                                            λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                            λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                                                               or
                                                                                 pr0
                                                                                   THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                                   THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                                 ex2
                                                                                   T
                                                                                   λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                                   λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                                                      or
                                                                        pr0
                                                                          THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                          THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                                        ex2
                                                                          T
                                                                          λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                          λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                          we proved 
                                                             or
                                                               pr0
                                                                 THead (Flat Appl) x0 (THead (Bind b) x2 x3)
                                                                 THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)
                                                               ex2
                                                                 T
                                                                 λw2:T.pr0 (THead (Flat Appl) x0 (THead (Bind b) x2 x3)) w2
                                                                 λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                                                          by (eq_ind_r . . . previous . H17)

                                                             or
                                                               pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                                               ex2
                                                                 T
                                                                 λw2:T.pr0 w1 w2
                                                                 λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                                    or
                                                      pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                                      ex2
                                                        T
                                                        λw2:T.pr0 w1 w2
                                                        λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                           or
                                             pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                             ex2
                                               T
                                               λw2:T.pr0 w1 w2
                                               λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                                  or
                                    pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                    ex2
                                      T
                                      λw2:T.pr0 w1 w2
                                      λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
                      we proved 
                         or
                           pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                           ex2
                             T
                             λw2:T.pr0 w1 w2
                             λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2

                      v0:T
                        .w1:T
                          .i:nat
                            .H7:subst0 i v0 (THead (Flat Appl) v1 (THead (Bind b) u1 t3)) w1
                              .v3:T
                                .H8:pr0 v0 v3
                                  .or
                                    pr0 w1 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4))
                                    ex2
                                      T
                                      λw2:T.pr0 w1 w2
                                      λw2:T.subst0 i v3 (THead (Bind b) u2 (THead (Flat Appl) (lift (S OO v2) t4)) w2
             case pr0_delta : u1:T u2:T H0:pr0 u1 u2 t3:T t4:T H2:pr0 t3 t4 w:T H4:subst0 O u2 t4 w 
                the thesis becomes 
                v1:T
                  .w1:T
                    .i:nat
                      .H5:subst0 i v1 (THead (Bind Abbr) u1 t3) w1
                        .v2:T
                          .H6:pr0 v1 v2
                            .or
                              pr0 w1 (THead (Bind Abbr) u2 w)
                              ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                (H1) by induction hypothesis we know v1:T.w1:T.i:nat.(subst0 i v1 u1 w1)v2:T.(pr0 v1 v2)(or (pr0 w1 u2) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 u2 w2))
                (H3) by induction hypothesis we know v1:T.w1:T.i:nat.(subst0 i v1 t3 w1)v2:T.(pr0 v1 v2)(or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2))
                    assume v1T
                    assume w1T
                    assume inat
                    suppose H5subst0 i v1 (THead (Bind Abbr) u1 t3) w1
                    assume v2T
                    suppose H6pr0 v1 v2
                      by (subst0_gen_head . . . . . . H5)
                      we proved 
                         or3
                           ex2 T λu2:T.eq T w1 (THead (Bind Abbr) u2 t3) λu2:T.subst0 i v1 u1 u2
                           ex2 T λt2:T.eq T w1 (THead (Bind Abbr) u1 t2) λt2:T.subst0 (s (Bind Abbr) i) v1 t3 t2
                           ex3_2
                             T
                             T
                             λu2:T.λt2:T.eq T w1 (THead (Bind Abbr) u2 t2)
                             λu2:T.λ:T.subst0 i v1 u1 u2
                             λ:T.λt2:T.subst0 (s (Bind Abbr) i) v1 t3 t2
                      we proceed by induction on the previous result to prove 
                         or
                           pr0 w1 (THead (Bind Abbr) u2 w)
                           ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                         case or3_intro0 : H7:ex2 T λu3:T.eq T w1 (THead (Bind Abbr) u3 t3) λu3:T.subst0 i v1 u1 u3 
                            the thesis becomes 
                            or
                              pr0 w1 (THead (Bind Abbr) u2 w)
                              ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                               we proceed by induction on H7 to prove 
                                  or
                                    pr0 w1 (THead (Bind Abbr) u2 w)
                                    ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                  case ex_intro2 : x:T H8:eq T w1 (THead (Bind Abbr) x t3) H9:subst0 i v1 u1 x 
                                     the thesis becomes 
                                     or
                                       pr0 w1 (THead (Bind Abbr) u2 w)
                                       ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                        by (H1 . . . H9 . H6)
                                        we proved or (pr0 x u2) (ex2 T λw2:T.pr0 x w2 λw2:T.subst0 i v2 u2 w2)
                                        we proceed by induction on the previous result to prove 
                                           or
                                             pr0 (THead (Bind Abbr) x t3) (THead (Bind Abbr) u2 w)
                                             ex2 T λw2:T.pr0 (THead (Bind Abbr) x t3) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                           case or_introl : H10:pr0 x u2 
                                              the thesis becomes 
                                              or
                                                pr0 (THead (Bind Abbr) x t3) (THead (Bind Abbr) u2 w)
                                                ex2 T λw2:T.pr0 (THead (Bind Abbr) x t3) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                 by (pr0_delta . . H10 . . H2 . H4)
                                                 we proved pr0 (THead (Bind Abbr) x t3) (THead (Bind Abbr) u2 w)
                                                 by (or_introl . . previous)

                                                    or
                                                      pr0 (THead (Bind Abbr) x t3) (THead (Bind Abbr) u2 w)
                                                      ex2 T λw2:T.pr0 (THead (Bind Abbr) x t3) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                           case or_intror : H10:ex2 T λw2:T.pr0 x w2 λw2:T.subst0 i v2 u2 w2 
                                              the thesis becomes 
                                              or
                                                pr0 (THead (Bind Abbr) x t3) (THead (Bind Abbr) u2 w)
                                                ex2 T λw2:T.pr0 (THead (Bind Abbr) x t3) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                 we proceed by induction on H10 to prove 
                                                    or
                                                      pr0 (THead (Bind Abbr) x t3) (THead (Bind Abbr) u2 w)
                                                      ex2 T λw2:T.pr0 (THead (Bind Abbr) x t3) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                    case ex_intro2 : x0:T H11:pr0 x x0 H12:subst0 i v2 u2 x0 
                                                       the thesis becomes 
                                                       or
                                                         pr0 (THead (Bind Abbr) x t3) (THead (Bind Abbr) u2 w)
                                                         ex2 T λw2:T.pr0 (THead (Bind Abbr) x t3) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                          by (subst0_subst0_back . . . . H4 . . . H12)
                                                          we proved ex2 T λt:T.subst0 O x0 t4 t λt:T.subst0 (S (plus i O)) v2 w t
                                                          we proceed by induction on the previous result to prove 
                                                             or
                                                               pr0 (THead (Bind Abbr) x t3) (THead (Bind Abbr) u2 w)
                                                               ex2 T λw2:T.pr0 (THead (Bind Abbr) x t3) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                             case ex_intro2 : x1:T H13:subst0 O x0 t4 x1 H14:subst0 (S (plus i O)) v2 w x1 
                                                                the thesis becomes 
                                                                or
                                                                  pr0 (THead (Bind Abbr) x t3) (THead (Bind Abbr) u2 w)
                                                                  ex2 T λw2:T.pr0 (THead (Bind Abbr) x t3) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                                   (H15
                                                                      by (plus_n_O .)
                                                                      we proved eq nat i (plus i O)
                                                                      by (sym_eq . . . previous)
                                                                      we proved eq nat (plus i O) i
                                                                      by (f_equal . . . . . previous)
eq nat (S (plus i O)) (S i)
                                                                   end of H15
                                                                   (H16
                                                                      we proceed by induction on H15 to prove subst0 (S i) v2 w x1
                                                                         case refl_equal : 
                                                                            the thesis becomes the hypothesis H14
subst0 (S i) v2 w x1
                                                                   end of H16
                                                                   (h1
                                                                      by (pr0_delta . . H11 . . H2 . H13)
pr0 (THead (Bind Abbr) x t3) (THead (Bind Abbr) x0 x1)
                                                                   end of h1
                                                                   (h2
                                                                      consider H16
                                                                      we proved subst0 (S i) v2 w x1
                                                                      that is equivalent to subst0 (s (Bind Abbr) i) v2 w x1
                                                                      by (subst0_both . . . . H12 . . . previous)
subst0 i v2 (THead (Bind Abbr) u2 w) (THead (Bind Abbr) x0 x1)
                                                                   end of h2
                                                                   by (ex_intro2 . . . . h1 h2)
                                                                   we proved ex2 T λw2:T.pr0 (THead (Bind Abbr) x t3) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                                   by (or_intror . . previous)

                                                                      or
                                                                        pr0 (THead (Bind Abbr) x t3) (THead (Bind Abbr) u2 w)
                                                                        ex2 T λw2:T.pr0 (THead (Bind Abbr) x t3) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2

                                                             or
                                                               pr0 (THead (Bind Abbr) x t3) (THead (Bind Abbr) u2 w)
                                                               ex2 T λw2:T.pr0 (THead (Bind Abbr) x t3) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2

                                                    or
                                                      pr0 (THead (Bind Abbr) x t3) (THead (Bind Abbr) u2 w)
                                                      ex2 T λw2:T.pr0 (THead (Bind Abbr) x t3) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                        we proved 
                                           or
                                             pr0 (THead (Bind Abbr) x t3) (THead (Bind Abbr) u2 w)
                                             ex2 T λw2:T.pr0 (THead (Bind Abbr) x t3) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                        by (eq_ind_r . . . previous . H8)

                                           or
                                             pr0 w1 (THead (Bind Abbr) u2 w)
                                             ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2

                                  or
                                    pr0 w1 (THead (Bind Abbr) u2 w)
                                    ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                         case or3_intro1 : H7:ex2 T λt5:T.eq T w1 (THead (Bind Abbr) u1 t5) λt5:T.subst0 (s (Bind Abbr) i) v1 t3 t5 
                            the thesis becomes 
                            or
                              pr0 w1 (THead (Bind Abbr) u2 w)
                              ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                               we proceed by induction on H7 to prove 
                                  or
                                    pr0 w1 (THead (Bind Abbr) u2 w)
                                    ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                  case ex_intro2 : x:T H8:eq T w1 (THead (Bind Abbr) u1 x) H9:subst0 (s (Bind Abbr) i) v1 t3 x 
                                     the thesis becomes 
                                     or
                                       pr0 w1 (THead (Bind Abbr) u2 w)
                                       ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                        by (H3 . . . H9 . H6)
                                        we proved or (pr0 x t4) (ex2 T λw2:T.pr0 x w2 λw2:T.subst0 (s (Bind Abbr) i) v2 t4 w2)
                                        we proceed by induction on the previous result to prove 
                                           or
                                             pr0 (THead (Bind Abbr) u1 x) (THead (Bind Abbr) u2 w)
                                             ex2 T λw2:T.pr0 (THead (Bind Abbr) u1 x) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                           case or_introl : H10:pr0 x t4 
                                              the thesis becomes 
                                              or
                                                pr0 (THead (Bind Abbr) u1 x) (THead (Bind Abbr) u2 w)
                                                ex2 T λw2:T.pr0 (THead (Bind Abbr) u1 x) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                 by (pr0_delta . . H0 . . H10 . H4)
                                                 we proved pr0 (THead (Bind Abbr) u1 x) (THead (Bind Abbr) u2 w)
                                                 by (or_introl . . previous)

                                                    or
                                                      pr0 (THead (Bind Abbr) u1 x) (THead (Bind Abbr) u2 w)
                                                      ex2 T λw2:T.pr0 (THead (Bind Abbr) u1 x) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                           case or_intror : H10:ex2 T λw2:T.pr0 x w2 λw2:T.subst0 (s (Bind Abbr) i) v2 t4 w2 
                                              the thesis becomes 
                                              or
                                                pr0 (THead (Bind Abbr) u1 x) (THead (Bind Abbr) u2 w)
                                                ex2 T λw2:T.pr0 (THead (Bind Abbr) u1 x) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                 we proceed by induction on H10 to prove 
                                                    or
                                                      pr0 (THead (Bind Abbr) u1 x) (THead (Bind Abbr) u2 w)
                                                      ex2 T λw2:T.pr0 (THead (Bind Abbr) u1 x) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                    case ex_intro2 : x0:T H11:pr0 x x0 H12:subst0 (s (Bind Abbr) i) v2 t4 x0 
                                                       the thesis becomes 
                                                       or
                                                         pr0 (THead (Bind Abbr) u1 x) (THead (Bind Abbr) u2 w)
                                                         ex2 T λw2:T.pr0 (THead (Bind Abbr) u1 x) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                          by (O_S .)
                                                          we proved not (eq nat O (S i))
                                                          by (sym_not_eq . . . previous)
                                                          we proved not (eq nat (S i) O)
                                                          that is equivalent to not (eq nat (s (Bind Abbr) i) O)
                                                          by (subst0_confluence_neq . . . . H12 . . . H4 previous)
                                                          we proved ex2 T λt:T.subst0 O u2 x0 t λt:T.subst0 (s (Bind Abbr) i) v2 w t
                                                          we proceed by induction on the previous result to prove 
                                                             or
                                                               pr0 (THead (Bind Abbr) u1 x) (THead (Bind Abbr) u2 w)
                                                               ex2 T λw2:T.pr0 (THead (Bind Abbr) u1 x) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                             case ex_intro2 : x1:T H13:subst0 O u2 x0 x1 H14:subst0 (s (Bind Abbr) i) v2 w x1 
                                                                the thesis becomes 
                                                                or
                                                                  pr0 (THead (Bind Abbr) u1 x) (THead (Bind Abbr) u2 w)
                                                                  ex2 T λw2:T.pr0 (THead (Bind Abbr) u1 x) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                                   (h1
                                                                      by (pr0_delta . . H0 . . H11 . H13)
pr0 (THead (Bind Abbr) u1 x) (THead (Bind Abbr) u2 x1)
                                                                   end of h1
                                                                   (h2
                                                                      by (subst0_snd . . . . . H14 .)
subst0 i v2 (THead (Bind Abbr) u2 w) (THead (Bind Abbr) u2 x1)
                                                                   end of h2
                                                                   by (ex_intro2 . . . . h1 h2)
                                                                   we proved ex2 T λw2:T.pr0 (THead (Bind Abbr) u1 x) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                                   by (or_intror . . previous)

                                                                      or
                                                                        pr0 (THead (Bind Abbr) u1 x) (THead (Bind Abbr) u2 w)
                                                                        ex2 T λw2:T.pr0 (THead (Bind Abbr) u1 x) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2

                                                             or
                                                               pr0 (THead (Bind Abbr) u1 x) (THead (Bind Abbr) u2 w)
                                                               ex2 T λw2:T.pr0 (THead (Bind Abbr) u1 x) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2

                                                    or
                                                      pr0 (THead (Bind Abbr) u1 x) (THead (Bind Abbr) u2 w)
                                                      ex2 T λw2:T.pr0 (THead (Bind Abbr) u1 x) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                        we proved 
                                           or
                                             pr0 (THead (Bind Abbr) u1 x) (THead (Bind Abbr) u2 w)
                                             ex2 T λw2:T.pr0 (THead (Bind Abbr) u1 x) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                        by (eq_ind_r . . . previous . H8)

                                           or
                                             pr0 w1 (THead (Bind Abbr) u2 w)
                                             ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2

                                  or
                                    pr0 w1 (THead (Bind Abbr) u2 w)
                                    ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                         case or3_intro2 : H7:ex3_2 T T λu3:T.λt5:T.eq T w1 (THead (Bind Abbr) u3 t5) λu3:T.λ:T.subst0 i v1 u1 u3 λ:T.λt5:T.subst0 (s (Bind Abbr) i) v1 t3 t5 
                            the thesis becomes 
                            or
                              pr0 w1 (THead (Bind Abbr) u2 w)
                              ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                               we proceed by induction on H7 to prove 
                                  or
                                    pr0 w1 (THead (Bind Abbr) u2 w)
                                    ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                  case ex3_2_intro : x0:T x1:T H8:eq T w1 (THead (Bind Abbr) x0 x1) H9:subst0 i v1 u1 x0 H10:subst0 (s (Bind Abbr) i) v1 t3 x1 
                                     the thesis becomes 
                                     or
                                       pr0 w1 (THead (Bind Abbr) u2 w)
                                       ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                        by (H3 . . . H10 . H6)
                                        we proved or (pr0 x1 t4) (ex2 T λw2:T.pr0 x1 w2 λw2:T.subst0 (s (Bind Abbr) i) v2 t4 w2)
                                        we proceed by induction on the previous result to prove 
                                           or
                                             pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) u2 w)
                                             ex2 T λw2:T.pr0 (THead (Bind Abbr) x0 x1) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                           case or_introl : H11:pr0 x1 t4 
                                              the thesis becomes 
                                              or
                                                pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) u2 w)
                                                ex2 T λw2:T.pr0 (THead (Bind Abbr) x0 x1) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                 by (H1 . . . H9 . H6)
                                                 we proved or (pr0 x0 u2) (ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 i v2 u2 w2)
                                                 we proceed by induction on the previous result to prove 
                                                    or
                                                      pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) u2 w)
                                                      ex2 T λw2:T.pr0 (THead (Bind Abbr) x0 x1) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                    case or_introl : H12:pr0 x0 u2 
                                                       the thesis becomes 
                                                       or
                                                         pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) u2 w)
                                                         ex2 T λw2:T.pr0 (THead (Bind Abbr) x0 x1) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                          by (pr0_delta . . H12 . . H11 . H4)
                                                          we proved pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) u2 w)
                                                          by (or_introl . . previous)

                                                             or
                                                               pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) u2 w)
                                                               ex2 T λw2:T.pr0 (THead (Bind Abbr) x0 x1) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                    case or_intror : H12:ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 i v2 u2 w2 
                                                       the thesis becomes 
                                                       or
                                                         pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) u2 w)
                                                         ex2 T λw2:T.pr0 (THead (Bind Abbr) x0 x1) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                          we proceed by induction on H12 to prove 
                                                             or
                                                               pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) u2 w)
                                                               ex2 T λw2:T.pr0 (THead (Bind Abbr) x0 x1) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                             case ex_intro2 : x:T H13:pr0 x0 x H14:subst0 i v2 u2 x 
                                                                the thesis becomes 
                                                                or
                                                                  pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) u2 w)
                                                                  ex2 T λw2:T.pr0 (THead (Bind Abbr) x0 x1) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                                   by (subst0_subst0_back . . . . H4 . . . H14)
                                                                   we proved ex2 T λt:T.subst0 O x t4 t λt:T.subst0 (S (plus i O)) v2 w t
                                                                   we proceed by induction on the previous result to prove 
                                                                      or
                                                                        pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) u2 w)
                                                                        ex2 T λw2:T.pr0 (THead (Bind Abbr) x0 x1) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                                      case ex_intro2 : x2:T H15:subst0 O x t4 x2 H16:subst0 (S (plus i O)) v2 w x2 
                                                                         the thesis becomes 
                                                                         or
                                                                           pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) u2 w)
                                                                           ex2 T λw2:T.pr0 (THead (Bind Abbr) x0 x1) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                                            (H17
                                                                               by (plus_n_O .)
                                                                               we proved eq nat i (plus i O)
                                                                               by (sym_eq . . . previous)
                                                                               we proved eq nat (plus i O) i
                                                                               by (f_equal . . . . . previous)
eq nat (S (plus i O)) (S i)
                                                                            end of H17
                                                                            (H18
                                                                               we proceed by induction on H17 to prove subst0 (S i) v2 w x2
                                                                                  case refl_equal : 
                                                                                     the thesis becomes the hypothesis H16
subst0 (S i) v2 w x2
                                                                            end of H18
                                                                            (h1
                                                                               by (pr0_delta . . H13 . . H11 . H15)
pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) x x2)
                                                                            end of h1
                                                                            (h2
                                                                               consider H18
                                                                               we proved subst0 (S i) v2 w x2
                                                                               that is equivalent to subst0 (s (Bind Abbr) i) v2 w x2
                                                                               by (subst0_both . . . . H14 . . . previous)
subst0 i v2 (THead (Bind Abbr) u2 w) (THead (Bind Abbr) x x2)
                                                                            end of h2
                                                                            by (ex_intro2 . . . . h1 h2)
                                                                            we proved ex2 T λw2:T.pr0 (THead (Bind Abbr) x0 x1) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                                            by (or_intror . . previous)

                                                                               or
                                                                                 pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) u2 w)
                                                                                 ex2 T λw2:T.pr0 (THead (Bind Abbr) x0 x1) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2

                                                                      or
                                                                        pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) u2 w)
                                                                        ex2 T λw2:T.pr0 (THead (Bind Abbr) x0 x1) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2

                                                             or
                                                               pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) u2 w)
                                                               ex2 T λw2:T.pr0 (THead (Bind Abbr) x0 x1) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2

                                                    or
                                                      pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) u2 w)
                                                      ex2 T λw2:T.pr0 (THead (Bind Abbr) x0 x1) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                           case or_intror : H11:ex2 T λw2:T.pr0 x1 w2 λw2:T.subst0 (s (Bind Abbr) i) v2 t4 w2 
                                              the thesis becomes 
                                              or
                                                pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) u2 w)
                                                ex2 T λw2:T.pr0 (THead (Bind Abbr) x0 x1) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                 we proceed by induction on H11 to prove 
                                                    or
                                                      pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) u2 w)
                                                      ex2 T λw2:T.pr0 (THead (Bind Abbr) x0 x1) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                    case ex_intro2 : x:T H12:pr0 x1 x H13:subst0 (s (Bind Abbr) i) v2 t4 x 
                                                       the thesis becomes 
                                                       or
                                                         pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) u2 w)
                                                         ex2 T λw2:T.pr0 (THead (Bind Abbr) x0 x1) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                          by (H1 . . . H9 . H6)
                                                          we proved or (pr0 x0 u2) (ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 i v2 u2 w2)
                                                          we proceed by induction on the previous result to prove 
                                                             or
                                                               pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) u2 w)
                                                               ex2 T λw2:T.pr0 (THead (Bind Abbr) x0 x1) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                             case or_introl : H14:pr0 x0 u2 
                                                                the thesis becomes 
                                                                or
                                                                  pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) u2 w)
                                                                  ex2 T λw2:T.pr0 (THead (Bind Abbr) x0 x1) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                                   by (O_S .)
                                                                   we proved not (eq nat O (S i))
                                                                   by (sym_not_eq . . . previous)
                                                                   we proved not (eq nat (S i) O)
                                                                   that is equivalent to not (eq nat (s (Bind Abbr) i) O)
                                                                   by (subst0_confluence_neq . . . . H13 . . . H4 previous)
                                                                   we proved ex2 T λt:T.subst0 O u2 x t λt:T.subst0 (s (Bind Abbr) i) v2 w t
                                                                   we proceed by induction on the previous result to prove 
                                                                      or
                                                                        pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) u2 w)
                                                                        ex2 T λw2:T.pr0 (THead (Bind Abbr) x0 x1) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                                      case ex_intro2 : x2:T H15:subst0 O u2 x x2 H16:subst0 (s (Bind Abbr) i) v2 w x2 
                                                                         the thesis becomes 
                                                                         or
                                                                           pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) u2 w)
                                                                           ex2 T λw2:T.pr0 (THead (Bind Abbr) x0 x1) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                                            (h1
                                                                               by (pr0_delta . . H14 . . H12 . H15)
pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) u2 x2)
                                                                            end of h1
                                                                            (h2
                                                                               by (subst0_snd . . . . . H16 .)
subst0 i v2 (THead (Bind Abbr) u2 w) (THead (Bind Abbr) u2 x2)
                                                                            end of h2
                                                                            by (ex_intro2 . . . . h1 h2)
                                                                            we proved ex2 T λw2:T.pr0 (THead (Bind Abbr) x0 x1) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                                            by (or_intror . . previous)

                                                                               or
                                                                                 pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) u2 w)
                                                                                 ex2 T λw2:T.pr0 (THead (Bind Abbr) x0 x1) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2

                                                                      or
                                                                        pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) u2 w)
                                                                        ex2 T λw2:T.pr0 (THead (Bind Abbr) x0 x1) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                             case or_intror : H14:ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 i v2 u2 w2 
                                                                the thesis becomes 
                                                                or
                                                                  pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) u2 w)
                                                                  ex2 T λw2:T.pr0 (THead (Bind Abbr) x0 x1) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                                   we proceed by induction on H14 to prove 
                                                                      or
                                                                        pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) u2 w)
                                                                        ex2 T λw2:T.pr0 (THead (Bind Abbr) x0 x1) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                                      case ex_intro2 : x2:T H15:pr0 x0 x2 H16:subst0 i v2 u2 x2 
                                                                         the thesis becomes 
                                                                         or
                                                                           pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) u2 w)
                                                                           ex2 T λw2:T.pr0 (THead (Bind Abbr) x0 x1) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                                            by (subst0_subst0_back . . . . H4 . . . H16)
                                                                            we proved ex2 T λt:T.subst0 O x2 t4 t λt:T.subst0 (S (plus i O)) v2 w t
                                                                            we proceed by induction on the previous result to prove 
                                                                               or
                                                                                 pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) u2 w)
                                                                                 ex2 T λw2:T.pr0 (THead (Bind Abbr) x0 x1) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                                               case ex_intro2 : x3:T H17:subst0 O x2 t4 x3 H18:subst0 (S (plus i O)) v2 w x3 
                                                                                  the thesis becomes 
                                                                                  or
                                                                                    pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) u2 w)
                                                                                    ex2 T λw2:T.pr0 (THead (Bind Abbr) x0 x1) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                                                     (H19
                                                                                        by (plus_n_O .)
                                                                                        we proved eq nat i (plus i O)
                                                                                        by (sym_eq . . . previous)
                                                                                        we proved eq nat (plus i O) i
                                                                                        by (f_equal . . . . . previous)
eq nat (S (plus i O)) (S i)
                                                                                     end of H19
                                                                                     (H20
                                                                                        we proceed by induction on H19 to prove subst0 (S i) v2 w x3
                                                                                           case refl_equal : 
                                                                                              the thesis becomes the hypothesis H18
subst0 (S i) v2 w x3
                                                                                     end of H20
                                                                                     by (O_S .)
                                                                                     we proved not (eq nat O (S i))
                                                                                     that is equivalent to not (eq nat O (s (Bind Abbr) i))
                                                                                     by (subst0_confluence_neq . . . . H17 . . . H13 previous)
                                                                                     we proved ex2 T λt:T.subst0 (s (Bind Abbr) i) v2 x3 t λt:T.subst0 O x2 x t
                                                                                     we proceed by induction on the previous result to prove 
                                                                                        or
                                                                                          pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) u2 w)
                                                                                          ex2 T λw2:T.pr0 (THead (Bind Abbr) x0 x1) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                                                        case ex_intro2 : x4:T H21:subst0 (s (Bind Abbr) i) v2 x3 x4 H22:subst0 O x2 x x4 
                                                                                           the thesis becomes 
                                                                                           or
                                                                                             pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) u2 w)
                                                                                             ex2 T λw2:T.pr0 (THead (Bind Abbr) x0 x1) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                                                              (h1
                                                                                                 by (pr0_delta . . H15 . . H12 . H22)
pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) x2 x4)
                                                                                              end of h1
                                                                                              (h2
                                                                                                 consider H20
                                                                                                 we proved subst0 (S i) v2 w x3
                                                                                                 that is equivalent to subst0 (s (Bind Abbr) i) v2 w x3
                                                                                                 by (subst0_trans . . . . previous . H21)
                                                                                                 we proved subst0 (s (Bind Abbr) i) v2 w x4
                                                                                                 by (subst0_both . . . . H16 . . . previous)
subst0 i v2 (THead (Bind Abbr) u2 w) (THead (Bind Abbr) x2 x4)
                                                                                              end of h2
                                                                                              by (ex_intro2 . . . . h1 h2)
                                                                                              we proved ex2 T λw2:T.pr0 (THead (Bind Abbr) x0 x1) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                                                                              by (or_intror . . previous)

                                                                                                 or
                                                                                                   pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) u2 w)
                                                                                                   ex2 T λw2:T.pr0 (THead (Bind Abbr) x0 x1) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2

                                                                                        or
                                                                                          pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) u2 w)
                                                                                          ex2 T λw2:T.pr0 (THead (Bind Abbr) x0 x1) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2

                                                                               or
                                                                                 pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) u2 w)
                                                                                 ex2 T λw2:T.pr0 (THead (Bind Abbr) x0 x1) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2

                                                                      or
                                                                        pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) u2 w)
                                                                        ex2 T λw2:T.pr0 (THead (Bind Abbr) x0 x1) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2

                                                             or
                                                               pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) u2 w)
                                                               ex2 T λw2:T.pr0 (THead (Bind Abbr) x0 x1) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2

                                                    or
                                                      pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) u2 w)
                                                      ex2 T λw2:T.pr0 (THead (Bind Abbr) x0 x1) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                        we proved 
                                           or
                                             pr0 (THead (Bind Abbr) x0 x1) (THead (Bind Abbr) u2 w)
                                             ex2 T λw2:T.pr0 (THead (Bind Abbr) x0 x1) w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                                        by (eq_ind_r . . . previous . H8)

                                           or
                                             pr0 w1 (THead (Bind Abbr) u2 w)
                                             ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2

                                  or
                                    pr0 w1 (THead (Bind Abbr) u2 w)
                                    ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
                      we proved 
                         or
                           pr0 w1 (THead (Bind Abbr) u2 w)
                           ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2

                      v1:T
                        .w1:T
                          .i:nat
                            .H5:subst0 i v1 (THead (Bind Abbr) u1 t3) w1
                              .v2:T
                                .H6:pr0 v1 v2
                                  .or
                                    pr0 w1 (THead (Bind Abbr) u2 w)
                                    ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 (THead (Bind Abbr) u2 w) w2
             case pr0_zeta : b:B H0:not (eq B b Abst) t3:T t4:T H1:pr0 t3 t4 u:T 
                the thesis becomes 
                v1:T
                  .w1:T
                    .i:nat
                      .H3:subst0 i v1 (THead (Bind b) u (lift (S OO t3)) w1
                        .v2:T.H4:(pr0 v1 v2).(or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2))
                (H2) by induction hypothesis we know v1:T.w1:T.i:nat.(subst0 i v1 t3 w1)v2:T.(pr0 v1 v2)(or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2))
                    assume v1T
                    assume w1T
                    assume inat
                    suppose H3subst0 i v1 (THead (Bind b) u (lift (S OO t3)) w1
                    assume v2T
                    suppose H4pr0 v1 v2
                      by (subst0_gen_head . . . . . . H3)
                      we proved 
                         or3
                           ex2 T λu2:T.eq T w1 (THead (Bind b) u2 (lift (S OO t3)) λu2:T.subst0 i v1 u u2
                           ex2
                             T
                             λt2:T.eq T w1 (THead (Bind b) u t2)
                             λt2:T.subst0 (s (Bind b) i) v1 (lift (S OO t3) t2
                           ex3_2
                             T
                             T
                             λu2:T.λt2:T.eq T w1 (THead (Bind b) u2 t2)
                             λu2:T.λ:T.subst0 i v1 u u2
                             λ:T.λt2:T.subst0 (s (Bind b) i) v1 (lift (S OO t3) t2
                      we proceed by induction on the previous result to prove or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2)
                         case or3_intro0 : H5:ex2 T λu2:T.eq T w1 (THead (Bind b) u2 (lift (S OO t3)) λu2:T.subst0 i v1 u u2 
                            the thesis becomes or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2)
                               we proceed by induction on H5 to prove or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2)
                                  case ex_intro2 : x:T H6:eq T w1 (THead (Bind b) x (lift (S OO t3)) :subst0 i v1 u x 
                                     the thesis becomes or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2)
                                        by (pr0_zeta . H0 . . H1 .)
                                        we proved pr0 (THead (Bind b) x (lift (S OO t3)) t4
                                        by (or_introl . . previous)
                                        we proved 
                                           or
                                             pr0 (THead (Bind b) x (lift (S OO t3)) t4
                                             ex2 T λw2:T.pr0 (THead (Bind b) x (lift (S OO t3)) w2 λw2:T.subst0 i v2 t4 w2
                                        by (eq_ind_r . . . previous . H6)
or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2)
or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2)
                         case or3_intro1 : H5:ex2 T λt5:T.eq T w1 (THead (Bind b) u t5) λt5:T.subst0 (s (Bind b) i) v1 (lift (S OO t3) t5 
                            the thesis becomes or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2)
                               we proceed by induction on H5 to prove or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2)
                                  case ex_intro2 : x:T H6:eq T w1 (THead (Bind b) u x) H7:subst0 (s (Bind b) i) v1 (lift (S OO t3) x 
                                     the thesis becomes or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2)
                                        by (le_O_n .)
                                        we proved le O i
                                        by (le_n_S . . previous)
                                        we proved le (S O) (S i)
                                        that is equivalent to le (plus O (S O)) (s (Bind b) i)
                                        by (subst0_gen_lift_ge . . . . . . H7 previous)
                                        we proved 
                                           ex2 T λt2:T.eq T x (lift (S OO t2) λt2:T.subst0 (minus (s (Bind b) i) (S O)) v1 t3 t2
                                        we proceed by induction on the previous result to prove or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2)
                                           case ex_intro2 : x0:T H8:eq T x (lift (S OO x0) H9:subst0 (minus (s (Bind b) i) (S O)) v1 t3 x0 
                                              the thesis becomes or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2)
                                                 (H10
                                                    we proceed by induction on H8 to prove eq T w1 (THead (Bind b) u (lift (S OO x0))
                                                       case refl_equal : 
                                                          the thesis becomes the hypothesis H6
eq T w1 (THead (Bind b) u (lift (S OO x0))
                                                 end of H10
                                                 (H11
                                                    (h1
                                                       consider H9
                                                       we proved subst0 (minus (s (Bind b) i) (S O)) v1 t3 x0
subst0 (minus i O) v1 t3 x0
                                                    end of h1
                                                    (h2
                                                       by (minus_n_O .)
eq nat i (minus i O)
                                                    end of h2
                                                    by (eq_ind_r . . . h1 . h2)
subst0 i v1 t3 x0
                                                 end of H11
                                                 by (H2 . . . H11 . H4)
                                                 we proved or (pr0 x0 t4) (ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 i v2 t4 w2)
                                                 we proceed by induction on the previous result to prove 
                                                    or
                                                      pr0 (THead (Bind b) u (lift (S OO x0)) t4
                                                      ex2 T λw2:T.pr0 (THead (Bind b) u (lift (S OO x0)) w2 λw2:T.subst0 i v2 t4 w2
                                                    case or_introl : H12:pr0 x0 t4 
                                                       the thesis becomes 
                                                       or
                                                         pr0 (THead (Bind b) u (lift (S OO x0)) t4
                                                         ex2 T λw2:T.pr0 (THead (Bind b) u (lift (S OO x0)) w2 λw2:T.subst0 i v2 t4 w2
                                                          by (pr0_zeta . H0 . . H12 .)
                                                          we proved pr0 (THead (Bind b) u (lift (S OO x0)) t4
                                                          by (or_introl . . previous)

                                                             or
                                                               pr0 (THead (Bind b) u (lift (S OO x0)) t4
                                                               ex2 T λw2:T.pr0 (THead (Bind b) u (lift (S OO x0)) w2 λw2:T.subst0 i v2 t4 w2
                                                    case or_intror : H12:ex2 T λw2:T.pr0 x0 w2 λw2:T.subst0 i v2 t4 w2 
                                                       the thesis becomes 
                                                       or
                                                         pr0 (THead (Bind b) u (lift (S OO x0)) t4
                                                         ex2 T λw2:T.pr0 (THead (Bind b) u (lift (S OO x0)) w2 λw2:T.subst0 i v2 t4 w2
                                                          we proceed by induction on H12 to prove 
                                                             or
                                                               pr0 (THead (Bind b) u (lift (S OO x0)) t4
                                                               ex2 T λw2:T.pr0 (THead (Bind b) u (lift (S OO x0)) w2 λw2:T.subst0 i v2 t4 w2
                                                             case ex_intro2 : x1:T H13:pr0 x0 x1 H14:subst0 i v2 t4 x1 
                                                                the thesis becomes 
                                                                or
                                                                  pr0 (THead (Bind b) u (lift (S OO x0)) t4
                                                                  ex2 T λw2:T.pr0 (THead (Bind b) u (lift (S OO x0)) w2 λw2:T.subst0 i v2 t4 w2
                                                                   by (pr0_zeta . H0 . . H13 .)
                                                                   we proved pr0 (THead (Bind b) u (lift (S OO x0)) x1
                                                                   by (ex_intro2 . . . . previous H14)
                                                                   we proved ex2 T λw2:T.pr0 (THead (Bind b) u (lift (S OO x0)) w2 λw2:T.subst0 i v2 t4 w2
                                                                   by (or_intror . . previous)

                                                                      or
                                                                        pr0 (THead (Bind b) u (lift (S OO x0)) t4
                                                                        ex2 T λw2:T.pr0 (THead (Bind b) u (lift (S OO x0)) w2 λw2:T.subst0 i v2 t4 w2

                                                             or
                                                               pr0 (THead (Bind b) u (lift (S OO x0)) t4
                                                               ex2 T λw2:T.pr0 (THead (Bind b) u (lift (S OO x0)) w2 λw2:T.subst0 i v2 t4 w2
                                                 we proved 
                                                    or
                                                      pr0 (THead (Bind b) u (lift (S OO x0)) t4
                                                      ex2 T λw2:T.pr0 (THead (Bind b) u (lift (S OO x0)) w2 λw2:T.subst0 i v2 t4 w2
                                                 by (eq_ind_r . . . previous . H10)
or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2)
or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2)
or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2)
                         case or3_intro2 : H5:ex3_2 T T λu2:T.λt5:T.eq T w1 (THead (Bind b) u2 t5) λu2:T.λ:T.subst0 i v1 u u2 λ:T.λt5:T.subst0 (s (Bind b) i) v1 (lift (S OO t3) t5 
                            the thesis becomes or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2)
                               we proceed by induction on H5 to prove or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2)
                                  case ex3_2_intro : x0:T x1:T H6:eq T w1 (THead (Bind b) x0 x1) :subst0 i v1 u x0 H8:subst0 (s (Bind b) i) v1 (lift (S OO t3) x1 
                                     the thesis becomes or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2)
                                        by (le_O_n .)
                                        we proved le O i
                                        by (le_n_S . . previous)
                                        we proved le (S O) (S i)
                                        that is equivalent to le (plus O (S O)) (s (Bind b) i)
                                        by (subst0_gen_lift_ge . . . . . . H8 previous)
                                        we proved ex2 T λt2:T.eq T x1 (lift (S OO t2) λt2:T.subst0 (minus (s (Bind b) i) (S O)) v1 t3 t2
                                        we proceed by induction on the previous result to prove or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2)
                                           case ex_intro2 : x:T H9:eq T x1 (lift (S OO x) H10:subst0 (minus (s (Bind b) i) (S O)) v1 t3 x 
                                              the thesis becomes or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2)
                                                 (H11
                                                    we proceed by induction on H9 to prove eq T w1 (THead (Bind b) x0 (lift (S OO x))
                                                       case refl_equal : 
                                                          the thesis becomes the hypothesis H6
eq T w1 (THead (Bind b) x0 (lift (S OO x))
                                                 end of H11
                                                 (H12
                                                    (h1
                                                       consider H10
                                                       we proved subst0 (minus (s (Bind b) i) (S O)) v1 t3 x
subst0 (minus i O) v1 t3 x
                                                    end of h1
                                                    (h2
                                                       by (minus_n_O .)
eq nat i (minus i O)
                                                    end of h2
                                                    by (eq_ind_r . . . h1 . h2)
subst0 i v1 t3 x
                                                 end of H12
                                                 by (H2 . . . H12 . H4)
                                                 we proved or (pr0 x t4) (ex2 T λw2:T.pr0 x w2 λw2:T.subst0 i v2 t4 w2)
                                                 we proceed by induction on the previous result to prove 
                                                    or
                                                      pr0 (THead (Bind b) x0 (lift (S OO x)) t4
                                                      ex2 T λw2:T.pr0 (THead (Bind b) x0 (lift (S OO x)) w2 λw2:T.subst0 i v2 t4 w2
                                                    case or_introl : H13:pr0 x t4 
                                                       the thesis becomes 
                                                       or
                                                         pr0 (THead (Bind b) x0 (lift (S OO x)) t4
                                                         ex2 T λw2:T.pr0 (THead (Bind b) x0 (lift (S OO x)) w2 λw2:T.subst0 i v2 t4 w2
                                                          by (pr0_zeta . H0 . . H13 .)
                                                          we proved pr0 (THead (Bind b) x0 (lift (S OO x)) t4
                                                          by (or_introl . . previous)

                                                             or
                                                               pr0 (THead (Bind b) x0 (lift (S OO x)) t4
                                                               ex2 T λw2:T.pr0 (THead (Bind b) x0 (lift (S OO x)) w2 λw2:T.subst0 i v2 t4 w2
                                                    case or_intror : H13:ex2 T λw2:T.pr0 x w2 λw2:T.subst0 i v2 t4 w2 
                                                       the thesis becomes 
                                                       or
                                                         pr0 (THead (Bind b) x0 (lift (S OO x)) t4
                                                         ex2 T λw2:T.pr0 (THead (Bind b) x0 (lift (S OO x)) w2 λw2:T.subst0 i v2 t4 w2
                                                          we proceed by induction on H13 to prove 
                                                             or
                                                               pr0 (THead (Bind b) x0 (lift (S OO x)) t4
                                                               ex2 T λw2:T.pr0 (THead (Bind b) x0 (lift (S OO x)) w2 λw2:T.subst0 i v2 t4 w2
                                                             case ex_intro2 : x2:T H14:pr0 x x2 H15:subst0 i v2 t4 x2 
                                                                the thesis becomes 
                                                                or
                                                                  pr0 (THead (Bind b) x0 (lift (S OO x)) t4
                                                                  ex2 T λw2:T.pr0 (THead (Bind b) x0 (lift (S OO x)) w2 λw2:T.subst0 i v2 t4 w2
                                                                   by (pr0_zeta . H0 . . H14 .)
                                                                   we proved pr0 (THead (Bind b) x0 (lift (S OO x)) x2
                                                                   by (ex_intro2 . . . . previous H15)
                                                                   we proved ex2 T λw2:T.pr0 (THead (Bind b) x0 (lift (S OO x)) w2 λw2:T.subst0 i v2 t4 w2
                                                                   by (or_intror . . previous)

                                                                      or
                                                                        pr0 (THead (Bind b) x0 (lift (S OO x)) t4
                                                                        ex2 T λw2:T.pr0 (THead (Bind b) x0 (lift (S OO x)) w2 λw2:T.subst0 i v2 t4 w2

                                                             or
                                                               pr0 (THead (Bind b) x0 (lift (S OO x)) t4
                                                               ex2 T λw2:T.pr0 (THead (Bind b) x0 (lift (S OO x)) w2 λw2:T.subst0 i v2 t4 w2
                                                 we proved 
                                                    or
                                                      pr0 (THead (Bind b) x0 (lift (S OO x)) t4
                                                      ex2 T λw2:T.pr0 (THead (Bind b) x0 (lift (S OO x)) w2 λw2:T.subst0 i v2 t4 w2
                                                 by (eq_ind_r . . . previous . H11)
or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2)
or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2)
or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2)
                      we proved or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2)

                      v1:T
                        .w1:T
                          .i:nat
                            .H3:subst0 i v1 (THead (Bind b) u (lift (S OO t3)) w1
                              .v2:T.H4:(pr0 v1 v2).(or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2))
             case pr0_tau : t3:T t4:T H0:pr0 t3 t4 u:T 
                the thesis becomes 
                v1:T.w1:T.i:nat.H2:(subst0 i v1 (THead (Flat Cast) u t3) w1).v2:T.H3:(pr0 v1 v2).(or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2))
                (H1) by induction hypothesis we know v1:T.w1:T.i:nat.(subst0 i v1 t3 w1)v2:T.(pr0 v1 v2)(or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2))
                    assume v1T
                    assume w1T
                    assume inat
                    suppose H2subst0 i v1 (THead (Flat Cast) u t3) w1
                    assume v2T
                    suppose H3pr0 v1 v2
                      by (subst0_gen_head . . . . . . H2)
                      we proved 
                         or3
                           ex2 T λu2:T.eq T w1 (THead (Flat Cast) u2 t3) λu2:T.subst0 i v1 u u2
                           ex2 T λt2:T.eq T w1 (THead (Flat Cast) u t2) λt2:T.subst0 (s (Flat Cast) i) v1 t3 t2
                           ex3_2
                             T
                             T
                             λu2:T.λt2:T.eq T w1 (THead (Flat Cast) u2 t2)
                             λu2:T.λ:T.subst0 i v1 u u2
                             λ:T.λt2:T.subst0 (s (Flat Cast) i) v1 t3 t2
                      we proceed by induction on the previous result to prove or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2)
                         case or3_intro0 : H4:ex2 T λu2:T.eq T w1 (THead (Flat Cast) u2 t3) λu2:T.subst0 i v1 u u2 
                            the thesis becomes or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2)
                               we proceed by induction on H4 to prove or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2)
                                  case ex_intro2 : x:T H5:eq T w1 (THead (Flat Cast) x t3) :subst0 i v1 u x 
                                     the thesis becomes or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2)
                                        by (pr0_tau . . H0 .)
                                        we proved pr0 (THead (Flat Cast) x t3) t4
                                        by (or_introl . . previous)
                                        we proved 
                                           or
                                             pr0 (THead (Flat Cast) x t3) t4
                                             ex2 T λw2:T.pr0 (THead (Flat Cast) x t3) w2 λw2:T.subst0 i v2 t4 w2
                                        by (eq_ind_r . . . previous . H5)
or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2)
or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2)
                         case or3_intro1 : H4:ex2 T λt5:T.eq T w1 (THead (Flat Cast) u t5) λt5:T.subst0 (s (Flat Cast) i) v1 t3 t5 
                            the thesis becomes or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2)
                               we proceed by induction on H4 to prove or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2)
                                  case ex_intro2 : x:T H5:eq T w1 (THead (Flat Cast) u x) H6:subst0 (s (Flat Cast) i) v1 t3 x 
                                     the thesis becomes or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2)
                                        by (H1 . . . H6 . H3)
                                        we proved or (pr0 x t4) (ex2 T λw2:T.pr0 x w2 λw2:T.subst0 (s (Flat Cast) i) v2 t4 w2)
                                        we proceed by induction on the previous result to prove 
                                           or
                                             pr0 (THead (Flat Cast) u x) t4
                                             ex2 T λw2:T.pr0 (THead (Flat Cast) u x) w2 λw2:T.subst0 i v2 t4 w2
                                           case or_introl : H7:pr0 x t4 
                                              the thesis becomes 
                                              or
                                                pr0 (THead (Flat Cast) u x) t4
                                                ex2 T λw2:T.pr0 (THead (Flat Cast) u x) w2 λw2:T.subst0 i v2 t4 w2
                                                 by (pr0_tau . . H7 .)
                                                 we proved pr0 (THead (Flat Cast) u x) t4
                                                 by (or_introl . . previous)

                                                    or
                                                      pr0 (THead (Flat Cast) u x) t4
                                                      ex2 T λw2:T.pr0 (THead (Flat Cast) u x) w2 λw2:T.subst0 i v2 t4 w2
                                           case or_intror : H7:ex2 T λw2:T.pr0 x w2 λw2:T.subst0 (s (Flat Cast) i) v2 t4 w2 
                                              the thesis becomes 
                                              or
                                                pr0 (THead (Flat Cast) u x) t4
                                                ex2 T λw2:T.pr0 (THead (Flat Cast) u x) w2 λw2:T.subst0 i v2 t4 w2
                                                 we proceed by induction on H7 to prove 
                                                    or
                                                      pr0 (THead (Flat Cast) u x) t4
                                                      ex2 T λw2:T.pr0 (THead (Flat Cast) u x) w2 λw2:T.subst0 i v2 t4 w2
                                                    case ex_intro2 : x0:T H8:pr0 x x0 H9:subst0 (s (Flat Cast) i) v2 t4 x0 
                                                       the thesis becomes 
                                                       or
                                                         pr0 (THead (Flat Cast) u x) t4
                                                         ex2 T λw2:T.pr0 (THead (Flat Cast) u x) w2 λw2:T.subst0 i v2 t4 w2
                                                          (h1
                                                             by (pr0_tau . . H8 .)
pr0 (THead (Flat Cast) u x) x0
                                                          end of h1
                                                          (h2
                                                             consider H9
                                                             we proved subst0 (s (Flat Cast) i) v2 t4 x0
subst0 i v2 t4 x0
                                                          end of h2
                                                          by (ex_intro2 . . . . h1 h2)
                                                          we proved ex2 T λw2:T.pr0 (THead (Flat Cast) u x) w2 λw2:T.subst0 i v2 t4 w2
                                                          by (or_intror . . previous)

                                                             or
                                                               pr0 (THead (Flat Cast) u x) t4
                                                               ex2 T λw2:T.pr0 (THead (Flat Cast) u x) w2 λw2:T.subst0 i v2 t4 w2

                                                    or
                                                      pr0 (THead (Flat Cast) u x) t4
                                                      ex2 T λw2:T.pr0 (THead (Flat Cast) u x) w2 λw2:T.subst0 i v2 t4 w2
                                        we proved 
                                           or
                                             pr0 (THead (Flat Cast) u x) t4
                                             ex2 T λw2:T.pr0 (THead (Flat Cast) u x) w2 λw2:T.subst0 i v2 t4 w2
                                        by (eq_ind_r . . . previous . H5)
or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2)
or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2)
                         case or3_intro2 : H4:ex3_2 T T λu2:T.λt5:T.eq T w1 (THead (Flat Cast) u2 t5) λu2:T.λ:T.subst0 i v1 u u2 λ:T.λt5:T.subst0 (s (Flat Cast) i) v1 t3 t5 
                            the thesis becomes or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2)
                               we proceed by induction on H4 to prove or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2)
                                  case ex3_2_intro : x0:T x1:T H5:eq T w1 (THead (Flat Cast) x0 x1) :subst0 i v1 u x0 H7:subst0 (s (Flat Cast) i) v1 t3 x1 
                                     the thesis becomes or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2)
                                        by (H1 . . . H7 . H3)
                                        we proved or (pr0 x1 t4) (ex2 T λw2:T.pr0 x1 w2 λw2:T.subst0 (s (Flat Cast) i) v2 t4 w2)
                                        we proceed by induction on the previous result to prove 
                                           or
                                             pr0 (THead (Flat Cast) x0 x1) t4
                                             ex2 T λw2:T.pr0 (THead (Flat Cast) x0 x1) w2 λw2:T.subst0 i v2 t4 w2
                                           case or_introl : H8:pr0 x1 t4 
                                              the thesis becomes 
                                              or
                                                pr0 (THead (Flat Cast) x0 x1) t4
                                                ex2 T λw2:T.pr0 (THead (Flat Cast) x0 x1) w2 λw2:T.subst0 i v2 t4 w2
                                                 by (pr0_tau . . H8 .)
                                                 we proved pr0 (THead (Flat Cast) x0 x1) t4
                                                 by (or_introl . . previous)

                                                    or
                                                      pr0 (THead (Flat Cast) x0 x1) t4
                                                      ex2 T λw2:T.pr0 (THead (Flat Cast) x0 x1) w2 λw2:T.subst0 i v2 t4 w2
                                           case or_intror : H8:ex2 T λw2:T.pr0 x1 w2 λw2:T.subst0 (s (Flat Cast) i) v2 t4 w2 
                                              the thesis becomes 
                                              or
                                                pr0 (THead (Flat Cast) x0 x1) t4
                                                ex2 T λw2:T.pr0 (THead (Flat Cast) x0 x1) w2 λw2:T.subst0 i v2 t4 w2
                                                 we proceed by induction on H8 to prove 
                                                    or
                                                      pr0 (THead (Flat Cast) x0 x1) t4
                                                      ex2 T λw2:T.pr0 (THead (Flat Cast) x0 x1) w2 λw2:T.subst0 i v2 t4 w2
                                                    case ex_intro2 : x:T H9:pr0 x1 x H10:subst0 (s (Flat Cast) i) v2 t4 x 
                                                       the thesis becomes 
                                                       or
                                                         pr0 (THead (Flat Cast) x0 x1) t4
                                                         ex2 T λw2:T.pr0 (THead (Flat Cast) x0 x1) w2 λw2:T.subst0 i v2 t4 w2
                                                          (h1
                                                             by (pr0_tau . . H9 .)
pr0 (THead (Flat Cast) x0 x1) x
                                                          end of h1
                                                          (h2
                                                             consider H10
                                                             we proved subst0 (s (Flat Cast) i) v2 t4 x
subst0 i v2 t4 x
                                                          end of h2
                                                          by (ex_intro2 . . . . h1 h2)
                                                          we proved ex2 T λw2:T.pr0 (THead (Flat Cast) x0 x1) w2 λw2:T.subst0 i v2 t4 w2
                                                          by (or_intror . . previous)

                                                             or
                                                               pr0 (THead (Flat Cast) x0 x1) t4
                                                               ex2 T λw2:T.pr0 (THead (Flat Cast) x0 x1) w2 λw2:T.subst0 i v2 t4 w2

                                                    or
                                                      pr0 (THead (Flat Cast) x0 x1) t4
                                                      ex2 T λw2:T.pr0 (THead (Flat Cast) x0 x1) w2 λw2:T.subst0 i v2 t4 w2
                                        we proved 
                                           or
                                             pr0 (THead (Flat Cast) x0 x1) t4
                                             ex2 T λw2:T.pr0 (THead (Flat Cast) x0 x1) w2 λw2:T.subst0 i v2 t4 w2
                                        by (eq_ind_r . . . previous . H5)
or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2)
or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2)
                      we proved or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2)

                      v1:T.w1:T.i:nat.H2:(subst0 i v1 (THead (Flat Cast) u t3) w1).v2:T.H3:(pr0 v1 v2).(or (pr0 w1 t4) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t4 w2))
          we proved v1:T.w1:T.i:nat.(subst0 i v1 t1 w1)v2:T.(pr0 v1 v2)(or (pr0 w1 t2) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t2 w2))
       we proved 
          t1:T.t2:T.(pr0 t1 t2)v1:T.w1:T.i:nat.(subst0 i v1 t1 w1)v2:T.(pr0 v1 v2)(or (pr0 w1 t2) (ex2 T λw2:T.pr0 w1 w2 λw2:T.subst0 i v2 t2 w2))