elim (csx_fwd_flat … H) -H /3 width=1 by lsx_flat/
]
qed.
-
-(* Advanced eliminators *****************************************************)
-
-fact csx_ind_lsx_aux: ∀h,g,G,T,d. ∀R:predicate lenv.
- (∀L1. ⦃G, L1⦄ ⊢ ⬊*[h, g] T →
- (∀L2. ⦃G, L1⦄ ⊢ ➡*[h, g] L2 → (L1 ⋕[T, d] L2 → ⊥) → R L2) →
- R L1
- ) →
- ∀L. G ⊢ ⋕⬊*[h, g, T, d] L → ⦃G, L⦄ ⊢ ⬊*[h, g] T → R L.
-#h #g #G #T #d #R #IH #L #H @(lsx_ind … H) -L
-#L1 #_ #IHL1 #HL1 @IH -IH //
-#L2 #HL12 #HnT @IHL1 -IHL1 /2 width=3 by csx_lpxs_conf/
-qed-.
-
-lemma csx_ind_lsx: ∀h,g,G,T,d. ∀R:predicate lenv.
- (∀L1. ⦃G, L1⦄ ⊢ ⬊*[h, g] T →
- (∀L2. ⦃G, L1⦄ ⊢ ➡*[h, g] L2 → (L1 ⋕[T, d] L2 → ⊥) → R L2) →
- R L1
- ) →
- ∀L. ⦃G, L⦄ ⊢ ⬊*[h, g] T → R L.
-#h #g #G #T #d #R #IH #L #HL @(csx_ind_lsx_aux … d … HL) /4 width=1 by csx_lsx/
-qed-.