]> matita.cs.unibo.it Git - helm.git/blobdiff - matita/matita/contribs/lambdadelta/basic_2/dynamic/lsubsv_lsuba.ma
- irreflexivity of static type assignment iterated at least once
[helm.git] / matita / matita / contribs / lambdadelta / basic_2 / dynamic / lsubsv_lsuba.ma
index 27da78fcaa09d271b5d64842b2cc04687b42ed50..b170892ea56403863ec25ad8731658848fb3120c 100644 (file)
@@ -19,12 +19,13 @@ include "basic_2/dynamic/lsubsv.ma".
 
 (* Forward lemmas on lenv refinement for atomic arity assignment ************)
 
-lemma lsubsv_fwd_lsuba: ∀h,g,G,L1,L2. G ⊢ L1 ¡⊑[h, g] L2 → G ⊢ L1 ⁝⊑ L2.
-#h #g #G #L1 #L2 #H elim H -L1 -L2 // /2 width=1/
-#L1 #L2 #W #V #W1 #V2 #l #HV #HW #_ #_ #_ #IHL12 -W1 -V2
+lemma lsubsv_fwd_lsuba: ∀h,g,G,L1,L2. G ⊢ L1 ⫃¡[h, g] L2 → G ⊢ L1 ⫃⁝ L2.
+#h #g #G #L1 #L2 #H elim H -L1 -L2 /2 width=1 by lsuba_pair/
+#L1 #L2 #W #V #l #H1W #HV #HVW #H2W #H1l #_ #_ #IHL12
+lapply (snv_scast … HV H1W HVW H1l) -HV -H1W -HVW -H1l #HV
 elim (snv_fwd_aaa … HV) -HV #A #HV
-elim (snv_fwd_aaa … HW) -HW #B #HW
+elim (snv_fwd_aaa … H2W) -H2W #B #HW
 elim (aaa_inv_cast … HV) #HWA #_
 lapply (lsuba_aaa_trans … HW … IHL12) #HWB
-lapply (aaa_mono … HWB … HWA) -HWB -HWA #H destruct /2 width=3/
+lapply (aaa_mono … HWB … HWA) -HWB -HWA #H destruct /2 width=3 by lsuba_beta/
 qed-.