DEFINITION pr3_flat()
TYPE =
       c:C
         .u1:T
           .u2:T
             .pr3 c u1 u2
               t1:T.t2:T.(pr3 c t1 t2)f:F.(pr3 c (THead (Flat f) u1 t1) (THead (Flat f) u2 t2))
BODY =
        assume cC
        assume u1T
        assume u2T
        suppose Hpr3 c u1 u2
        assume t1T
        assume t2T
        suppose H0pr3 c t1 t2
        assume fF
          by (pr3_cflat . . . H0 . .)
          we proved pr3 (CHead c (Flat f) u2) t1 t2
          by (pr3_head_12 . . . H . . . previous)
          we proved pr3 c (THead (Flat f) u1 t1) (THead (Flat f) u2 t2)
       we proved 
          c:C
            .u1:T
              .u2:T
                .pr3 c u1 u2
                  t1:T.t2:T.(pr3 c t1 t2)f:F.(pr3 c (THead (Flat f) u1 t1) (THead (Flat f) u2 t2))