]> matita.cs.unibo.it Git - helm.git/blob - matita/matita/contribs/lambdadelta/basic_2/etc/cpxs/cpxs.etc
cpx_tsts completed
[helm.git] / matita / matita / contribs / lambdadelta / basic_2 / etc / cpxs / cpxs.etc
1
2 lemma cprs_cpxs: ∀h,o,G,L,T1,T2. ⦃G, L⦄ ⊢ T1 ⬈* T2 → ⦃G, L⦄ ⊢ T1 ⬈*[h] T2.
3 #h #o #G #L #T1 #T2 #H @(cprs_ind … H) -T2 /3 width=3 by cpxs_strap1,
4 cpr_cpx/
5 qed.
6
7 lemma cpxs_neq_inv_step_sn: ∀h,o,G,L,T1,T2. ⦃G, L⦄ ⊢ T1 ⬈*[h] T2 → (T1 = T2 → ⊥) →
8                             ∃∃T. ⦃G, L⦄ ⊢ T1 ⬈[h] T & T1 = T → ⊥ & ⦃G, L⦄ ⊢ T ⬈*[h] T2.
9 #h #o #G #L #T1 #T2 #H @(cpxs_ind_dx … H) -T1
10 [ #H elim H -H //
11 | #T1 #T #H1 #H2 #IH2 #H12 elim (eq_term_dec T1 T) #H destruct
12   [ -H1 -H2 /3 width=1 by/
13   | -IH2 /3 width=4 by ex3_intro/ (**) (* auto fails without clear *)
14   ]
15 ]
16 qed-.