]> matita.cs.unibo.it Git - helm.git/blob - matita/matita/lib/lambda/lambda_notation.ma
we started the implementation of higher order saturated sets
[helm.git] / matita / matita / lib / lambda / lambda_notation.ma
1 (**************************************************************************)
2 (*       ___                                                              *)
3 (*      ||M||                                                             *)
4 (*      ||A||       A project by Andrea Asperti                           *)
5 (*      ||T||                                                             *)
6 (*      ||I||       Developers:                                           *)
7 (*      ||T||         The HELM team.                                      *)
8 (*      ||A||         http://helm.cs.unibo.it                             *)
9 (*      \   /                                                             *)
10 (*       \ /        This file is distributed under the terms of the       *)
11 (*        v         GNU General Public License Version 2                  *)
12 (*                                                                        *)
13 (**************************************************************************)
14
15 (* NOTATION FOR THE LAMBDA CALCULUS *******************************************)
16
17 (* equivalences *)
18
19 notation "hvbox(a break ≅ b)" 
20   non associative with precedence 45
21   for @{'Eq $a $b}.
22
23 notation "hvbox(a break (≅ ^ term 90 c) b)"
24   non associative with precedence 45
25   for @{'Eq1 $c $a $b}.
26
27 (* lifting, substitution *)
28
29 notation "hvbox(M break [ l ])"
30    non associative with precedence 90
31    for @{'Subst1 $M $l}.
32
33 (* evaluation, interpretation *)
34
35 notation "hvbox(〚term 90 T〛)"
36    non associative with precedence 50
37    for @{'Eval $T}.
38
39 notation "hvbox(〚term 90 T〛 break _ [term 90 E])"
40    non associative with precedence 50
41    for @{'Eval1 $T $E}.
42
43 notation "hvbox(〚term 90 T〛 break _ [term 90 E1 break , term 90 E2])"
44    non associative with precedence 50
45    for @{'Eval2 $T $E1 $E2}.