]> matita.cs.unibo.it Git - helm.git/blobdiff - matita/matita/contribs/lambdadelta/basic_2/reduction/crr.ma
universary milestone in basic_2
[helm.git] / matita / matita / contribs / lambdadelta / basic_2 / reduction / crr.ma
index 02aaa82098fbb7fe3ab7e7396abfc7779c38312e..50107c4ab524be51e6dc9fb3666fe399c50463be 100644 (file)
 (*                                                                        *)
 (**************************************************************************)
 
-include "basic_2/notation/relations/reducible_3.ma".
+include "basic_2/notation/relations/predreducible_3.ma".
 include "basic_2/grammar/genv.ma".
-include "basic_2/relocation/ldrop.ma".
+include "basic_2/substitution/drop.ma".
 
-(* CONTEXT-SENSITIVE REDUCIBLE TERMS ****************************************)
+(* REDUCIBLE TERMS FOR CONTEXT-SENSITIVE REDUCTION **************************)
 
 (* reducible binary items *)
 definition ri2: predicate item2 ≝
@@ -29,7 +29,7 @@ definition ib2: relation2 bool bind2 ≝
 (* activate genv *)
 (* reducible terms *)
 inductive crr (G:genv): relation2 lenv term ≝
-| crr_delta  : â\88\80L,K,V,i. â\87©[i] L ≡ K.ⓓV → crr G L (#i)
+| crr_delta  : â\88\80L,K,V,i. â¬\87[i] L ≡ K.ⓓV → crr G L (#i)
 | crr_appl_sn: ∀L,V,T. crr G L V → crr G L (ⓐV.T)
 | crr_appl_dx: ∀L,V,T. crr G L T → crr G L (ⓐV.T)
 | crr_ri2    : ∀I,L,V,T. ri2 I → crr G L (②{I}V.T)
@@ -40,13 +40,13 @@ inductive crr (G:genv): relation2 lenv term ≝
 .
 
 interpretation
-   "context-sensitive reducibility (term)"
-   'Reducible G L T = (crr G L T).
+   "reducibility for context-sensitive reduction (term)"
+   'PRedReducible G L T = (crr G L T).
 
 (* Basic inversion lemmas ***************************************************)
 
-fact crr_inv_sort_aux: ∀G,L,T,k. ⦃G, L⦄ ⊢ ➡ 𝐑⦃T⦄ → T = ⋆k → ⊥.
-#G #L #T #k0 * -L -T
+fact crr_inv_sort_aux: ∀G,L,T,s. ⦃G, L⦄ ⊢ ➡ 𝐑⦃T⦄ → T = ⋆s → ⊥.
+#G #L #T #s0 * -L -T
 [ #L #K #V #i #HLK #H destruct
 | #L #V #T #_ #H destruct
 | #L #V #T #_ #H destruct
@@ -58,11 +58,11 @@ fact crr_inv_sort_aux: ∀G,L,T,k. ⦃G, L⦄ ⊢ ➡ 𝐑⦃T⦄ → T = ⋆k 
 ]
 qed-.
 
-lemma crr_inv_sort: ∀G,L,k. ⦃G, L⦄ ⊢ ➡ 𝐑⦃⋆k⦄ → ⊥.
+lemma crr_inv_sort: ∀G,L,s. ⦃G, L⦄ ⊢ ➡ 𝐑⦃⋆s⦄ → ⊥.
 /2 width=6 by crr_inv_sort_aux/ qed-.
 
 fact crr_inv_lref_aux: ∀G,L,T,i. ⦃G, L⦄ ⊢ ➡ 𝐑⦃T⦄ → T = #i →
-                       â\88\83â\88\83K,V. â\87©[i] L ≡ K.ⓓV.
+                       â\88\83â\88\83K,V. â¬\87[i] L ≡ K.ⓓV.
 #G #L #T #j * -L -T
 [ #L #K #V #i #HLK #H destruct /2 width=3 by ex1_2_intro/
 | #L #V #T #_ #H destruct
@@ -75,7 +75,7 @@ fact crr_inv_lref_aux: ∀G,L,T,i. ⦃G, L⦄ ⊢ ➡ 𝐑⦃T⦄ → T = #i →
 ]
 qed-.
 
-lemma crr_inv_lref: â\88\80G,L,i. â¦\83G, Lâ¦\84 â\8a¢ â\9e¡ ð\9d\90\91â¦\83#iâ¦\84 â\86\92 â\88\83â\88\83K,V. â\87©[i] L ≡ K.ⓓV.
+lemma crr_inv_lref: â\88\80G,L,i. â¦\83G, Lâ¦\84 â\8a¢ â\9e¡ ð\9d\90\91â¦\83#iâ¦\84 â\86\92 â\88\83â\88\83K,V. â¬\87[i] L ≡ K.ⓓV.
 /2 width=4 by crr_inv_lref_aux/ qed-.
 
 fact crr_inv_gref_aux: ∀G,L,T,p. ⦃G, L⦄ ⊢ ➡ 𝐑⦃T⦄ → T = §p → ⊥.
@@ -98,7 +98,7 @@ lemma trr_inv_atom: ∀G,I. ⦃G, ⋆⦄ ⊢ ➡ 𝐑⦃⓪{I}⦄ → ⊥.
 #G * #i #H
 [ elim (crr_inv_sort … H)
 | elim (crr_inv_lref … H) -H #L #V #H
-  elim (ldrop_inv_atom1 … H) -H #H destruct
+  elim (drop_inv_atom1 … H) -H #H destruct
 | elim (crr_inv_gref … H)
 ]
 qed-.