--- /dev/null
+(**************************************************************************)
+(* ___ *)
+(* ||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 "delayed_updating/notation/functions/uparrow_2.ma".
+include "delayed_updating/syntax/label.ma".
+include "ground/relocation/tr_pap.ma".
+
+(* PRELIFT FOR LABEL ********************************************************)
+
+definition prelift_label (f) (l): label ā
+match l with
+[ label_d n ā š±(fļ¼ ā§£āØnā©)
+| label_m ā šŗ
+| label_L ā š
+| label_A ā š
+| label_S ā š¦
+].
+
+interpretation
+ "prelift (label)"
+ 'UpArrow f l = (prelift_label f l).
+
+(* Basic constructions ******************************************************)
+
+lemma prelift_label_d (f) (n):
+ (š±(fļ¼ ā§£āØnā©)) = ā[f]š±n.
+// qed.
+
+lemma prelift_label_m (f):
+ (šŗ) = ā[f]šŗ.
+// qed.
+
+lemma prelift_label_L (f):
+ (š) = ā[f]š.
+// qed.
+
+lemma prelift_label_A (f):
+ (š) = ā[f]š.
+// qed.
+
+lemma prelift_label_S (f):
+ (š¦) = ā[f]š¦.
+// qed.