]> matita.cs.unibo.it Git - helm.git/blobdiff - matita/matita/contribs/lambdadelta/ground_2/relocation/rtmap_isuni.ma
- uniform relocations
[helm.git] / matita / matita / contribs / lambdadelta / ground_2 / relocation / rtmap_isuni.ma
index efde1a1206efdac0358619eb355839abf4d9f8df..273793d9320c6ec9806c981a4e5ffcf12ce79bb6 100644 (file)
@@ -13,7 +13,7 @@
 (**************************************************************************)
 
 include "ground_2/notation/relations/isuniform_1.ma".
-include "ground_2/relocation/rtmap_isid.ma".
+include "ground_2/relocation/rtmap_isfin.ma".
 
 (* RELOCATION MAP ***********************************************************)
 
@@ -39,7 +39,18 @@ lemma isuni_inv_next: āˆ€g. š”ā¦ƒgā¦„ ā†’ āˆ€f. ā«Æf = g ā†’ š”ā¦ƒfā¦„.
 ]
 qed-.
 
+lemma isuni_split: āˆ€g. š”ā¦ƒgā¦„ ā†’ (āˆƒāˆƒf. šˆā¦ƒfā¦„ & ā†‘f = g) āˆØ (āˆƒāˆƒf.š”ā¦ƒfā¦„ & ā«Æf = g).
+#g #H elim (pn_split g) * #f #Hf
+/4 width=3 by isuni_inv_next, isuni_inv_push, or_introl, or_intror, ex2_intro/
+qed-.
+
 (* basic forward lemmas *****************************************************)
 
 lemma isuni_fwd_push: āˆ€g. š”ā¦ƒgā¦„ ā†’ āˆ€f. ā†‘f = g ā†’ š”ā¦ƒfā¦„.
 /3 width=3 by isuni_inv_push, isuni_isid/ qed-.
+
+(* Forward lemmas with test for finite colength *****************************)
+
+lemma isuni_fwd_isfin: āˆ€f. š”ā¦ƒfā¦„ ā†’ š…ā¦ƒfā¦„.
+#f #H elim H -f /3 width=1 by isfin_next, isfin_isid/
+qed-.