]> matita.cs.unibo.it Git - helm.git/blobdiff - matita/matita/contribs/lambda-delta/Basic-2/reduction/cpr.ma
we now use non-telescopic substitution in parallel reduction, rather
[helm.git] / matita / matita / contribs / lambda-delta / Basic-2 / reduction / cpr.ma
index cfd51af8aa87f32aac8b51ae9ce27f26a9b3d94d..f41999e45cf56f4e0772d48eb6e5653fdd110d0e 100644 (file)
@@ -1,15 +1,18 @@
-(*
-    ||M||  This file is part of HELM, an Hypertextual, Electronic
-    ||A||  Library of Mathematics, developed at the Computer Science
-    ||T||  Department of the University of Bologna, Italy.
-    ||I||
-    ||T||
-    ||A||  This file is distributed under the terms of the
-    \   /  GNU General Public License Version 2
-     \ /
-      V_______________________________________________________________ *)
-
-include "lambda-delta/reduction/tpr.ma".
+(**************************************************************************)
+(*       ___                                                              *)
+(*      ||M||                                                             *)
+(*      ||A||       A project by Andrea Asperti                           *)
+(*      ||T||                                                             *)
+(*      ||I||       Developers:                                           *)
+(*      ||T||         The HELM team.                                      *)
+(*      ||A||         http://helm.cs.unibo.it                             *)
+(*      \   /                                                             *)
+(*       \ /        This file is distributed under the terms of the       *)
+(*        v         GNU General Public License Version 2                  *)
+(*                                                                        *)
+(**************************************************************************)
+
+include "Basic-2/reduction/tpr.ma".
 
 (* CONTEXT-SENSITIVE PARALLEL REDUCTION ON TERMS ****************************)
 
@@ -26,7 +29,7 @@ lemma cpr_pr: ∀T1,T2. T1 ⇒ T2 → ∀L. L ⊢ T1 ⇒ T2.
 /2/ qed.
 
 lemma cpr_tps: ∀L,T1,T2,d,e. L ⊢ T1 [d, e] ≫ T2 → L ⊢ T1 ⇒ T2.
-/3 width=5/ qed. 
+/3 width=5/ qed.
 
 lemma cpr_refl: ∀L,T. L ⊢ T ⇒ T.
 /2/ qed.
@@ -37,11 +40,9 @@ lemma cpr_flat: ∀I,L,V1,V2,T1,T2.
 #I #L #V1 #V2 #T1 #T2 * #V #HV1 #HV2 * /3 width=5/
 qed.
 
-lemma cpr_delta: ∀L,K,V1,V2,V,i.
-                 ↓[0, i] L ≡ K. 𝕓{Abbr} V1 → K ⊢ V1 [0, |L| - i - 1] ≫ V2 →
-                 ↑[0, i + 1] V2 ≡ V → L ⊢ #i ⇒ V.
-#L #K #V1 #V2 #V #i #HLK #HV12 #HV2
-@ex2_1_intro [2: // | skip ] /3 width=8/ (**) (* /4/ is too slow *)
+lemma cpr_delta: ∀L,K,V,W,i.
+                 ↓[0, i] L ≡ K. 𝕓{Abbr} V → ↑[0, i + 1] V ≡ W → L ⊢ #i ⇒ W.
+/3/
 qed.
 
 lemma cpr_cast: ∀L,V,T1,T2.