]> matita.cs.unibo.it Git - helm.git/blobdiff - matita/matita/contribs/lambdadelta/basic_2/grammar/lenv_append.ma
some renaming and some typos corrected ...
[helm.git] / matita / matita / contribs / lambdadelta / basic_2 / grammar / lenv_append.ma
index 61b0648b682790fa06b954a2ace4e1d54a7bfd57..68b7a39fe8510b87487bb0a5f190f982092d6c15 100644 (file)
@@ -108,7 +108,19 @@ lemma append_inv_pair_dx: ∀I,L,K,V. L @@ K = L.ⓑ{I}V → K = ⋆.ⓑ{I}V.
 #I #L #K #V #H elim (append_inj_dx … (⋆.ⓑ{I}V) … H) //
 qed-.
 
-(* Basic_eliminators ********************************************************)
+lemma length_inv_pos_dx_ltail: ∀L,d. |L| = d + 1 →
+                               ∃∃I,K,V. |K| = d & L = ⓑ{I}V.K.
+#Y #d #H elim (length_inv_pos_dx … H) -H #I #L #V #Hd #HLK destruct
+elim (lpair_ltail L I V) /2 width=5 by ex2_3_intro/
+qed-.
+
+lemma length_inv_pos_sn_ltail: ∀L,d. d + 1 = |L| →
+                               ∃∃I,K,V. d = |K| & L = ⓑ{I}V.K.
+#Y #d #H elim (length_inv_pos_sn … H) -H #I #L #V #Hd #HLK destruct
+elim (lpair_ltail L I V) /2 width=5 by ex2_3_intro/
+qed-.
+
+(* Basic eliminators ********************************************************)
 
 (* Basic_1: was: c_tail_ind *)
 lemma lenv_ind_alt: ∀R:predicate lenv.