(* Basic inversion lemmas ***************************************************)
lemma twhnf_inv_thom: โT. ๐โโ[T] โ T โ T.
(* Basic inversion lemmas ***************************************************)
lemma twhnf_inv_thom: โT. ๐โโ[T] โ T โ T.
-lemma tpr_thom: รข\88\80T1,T2. T1 รข\87\92 T2 โ T1 โ T1 โ T1 โ T2.
-#T1 #T2 #H elim H -T1 T2 //
+lemma tpr_thom: รข\88\80T1,T2. T1 รข\9eยก T2 โ T1 โ T1 โ T1 โ T2.
+#T1 #T2 #H elim H -T1 -T2 //
- elim (thom_inv_flat1 โฆ H) -H #W2 #U2 #HT1U2 #HT1 #_ #H1 #H2 destruct -I T1 V1;
- lapply (IHT12 HT1U2) -IHT12 HT1U2 #HUT2
+ elim (thom_inv_flat1 โฆ H) -H #W2 #U2 #HT1U2 #HT1 #_ #H1 #H2 destruct
+ lapply (IHT12 HT1U2) -IHT12 -HT1U2 #HUT2
lapply (simple_thom_repl_dx โฆ HUT2 HT1) /2 width=1/
| #V1 #V2 #W #T1 #T2 #_ #_ #_ #_ #H
elim (thom_inv_flat1 โฆ H) -H #W2 #U2 #_ #H
elim (simple_inv_bind โฆ H)
| #I #V1 #V2 #T1 #T #T2 #_ #_ #_ #_ #_ #H
lapply (simple_thom_repl_dx โฆ HUT2 HT1) /2 width=1/
| #V1 #V2 #W #T1 #T2 #_ #_ #_ #_ #H
elim (thom_inv_flat1 โฆ H) -H #W2 #U2 #_ #H
elim (simple_inv_bind โฆ H)
| #I #V1 #V2 #T1 #T #T2 #_ #_ #_ #_ #_ #H
| #V2 #V1 #V #W1 #W2 #T1 #T2 #_ #_ #_ #_ #_ #_ #_ #H
elim (thom_inv_flat1 โฆ H) -H #U1 #U2 #_ #H
elim (simple_inv_bind โฆ H)
| #V2 #V1 #V #W1 #W2 #T1 #T2 #_ #_ #_ #_ #_ #_ #_ #H
elim (thom_inv_flat1 โฆ H) -H #U1 #U2 #_ #H
elim (simple_inv_bind โฆ H)