]> matita.cs.unibo.it Git - helm.git/blobdiff - matita/matita/contribs/lambdadelta/ground/steps/rtc.ma
milestone update in basic_2, update in ground and static_2
[helm.git] / matita / matita / contribs / lambdadelta / ground / steps / rtc.ma
index 56ced165b335d4cbc9d6fd44013efa490fb7c9ad..8a81ab6f7d6b53f110f3da8f9f7ebbd36d1512e3 100644 (file)
@@ -40,28 +40,30 @@ interpretation "one r-step (rtc)"
 interpretation "one t-step (rtc)"
    'ZeroOne = (mk_rtc O O O (S O)).
 
-definition eq_f: relation rtc ≝ λc1,c2. ⊤.
+definition rtc_eq_f: relation rtc ≝ λc1,c2. ⊤.
 
-inductive eq_t: relation rtc ≝
+inductive rtc_eq_t: relation rtc ≝
 | eq_t_intro: ∀ri1,ri2,rs1,rs2,ti,ts.
-              eq_t (〈ri1,rs1,ti,ts〉) (〈ri2,rs2,ti,ts〉)
+              rtc_eq_t (〈ri1,rs1,ti,ts〉) (〈ri2,rs2,ti,ts〉)
 .
 
 (* Basic properties *********************************************************)
 
-lemma eq_t_refl: reflexive …  eq_t.
+lemma rtc_eq_t_refl: reflexive …  rtc_eq_t.
 * // qed.
 
 (* Basic inversion lemmas ***************************************************)
 
-fact eq_t_inv_dx_aux: ∀x,y. eq_t x y →
-                      ∀ri1,rs1,ti,ts. x = 〈ri1,rs1,ti,ts〉 →
-                      ∃∃ri2,rs2. y = 〈ri2,rs2,ti,ts〉.
+fact rtc_eq_t_inv_dx_aux:
+     ∀x,y. rtc_eq_t x y →
+     ∀ri1,rs1,ti,ts. x = 〈ri1,rs1,ti,ts〉 →
+     ∃∃ri2,rs2. y = 〈ri2,rs2,ti,ts〉.
 #x #y * -x -y
 #ri1 #ri #rs1 #rs #ti1 #ts1 #ri2 #rs2 #ti2 #ts2 #H destruct -ri2 -rs2
 /2 width=3 by ex1_2_intro/
 qed-.
 
-lemma eq_t_inv_dx: ∀ri1,rs1,ti,ts,y. eq_t (〈ri1,rs1,ti,ts〉) y →
-                   ∃∃ri2,rs2. y = 〈ri2,rs2,ti,ts〉.
-/2 width=5 by eq_t_inv_dx_aux/ qed-.
+lemma rtc_eq_t_inv_dx:
+      ∀ri1,rs1,ti,ts,y. rtc_eq_t (〈ri1,rs1,ti,ts〉) y →
+      ∃∃ri2,rs2. y = 〈ri2,rs2,ti,ts〉.
+/2 width=5 by rtc_eq_t_inv_dx_aux/ qed-.