]> matita.cs.unibo.it Git - helm.git/blobdiff - matita/matita/contribs/lambdadelta/basic_2/relocation/lifts.ma
advances on csx towards strong normalization of rt-computation ,,,
[helm.git] / matita / matita / contribs / lambdadelta / basic_2 / relocation / lifts.ma
index 73f3be9e7f48bb30597a0689c733e6f73e395eac..6f0cef9d0be252cf2e58847e28a0d538b1b36101 100644 (file)
@@ -41,6 +41,21 @@ interpretation "uniform relocation (term)"
 interpretation "generic relocation (term)"
    'RLiftStar f T1 T2 = (lifts f T1 T2).
 
+definition liftable2: predicate (relation term) ≝
+                      λR. ∀T1,T2. R T1 T2 → ∀f,U1. ⬆*[f] T1 ≡ U1 → 
+                      ∃∃U2. ⬆*[f] T2 ≡ U2 & R U1 U2.
+
+definition deliftable2_sn: predicate (relation term) ≝
+                           λR. ∀U1,U2. R U1 U2 → ∀f,T1. ⬆*[f] T1 ≡ U1 →
+                           ∃∃T2. ⬆*[f] T2 ≡ U2 & R T1 T2.
+
+definition liftable2_bi: predicate (relation term) ≝
+                         λR. ∀T1,T2. R T1 T2 → ∀f,U1. ⬆*[f] T1 ≡ U1 → 
+                         ∀U2. ⬆*[f] T2 ≡ U2 → R U1 U2.
+
+definition deliftable2_bi: predicate (relation term) ≝
+                           λR. ∀U1,U2. R U1 U2 → ∀f,T1. ⬆*[f] T1 ≡ U1 →
+                           ∀T2. ⬆*[f] T2 ≡ U2 → R T1 T2.
 
 (* Basic inversion lemmas ***************************************************)