equal
deleted
inserted
replaced
15 with great help from Markus Wenzel. *} |
15 with great help from Markus Wenzel. *} |
16 |
16 |
17 section {* Types for Names, Nominal Datatype Declaration for Types and Terms *} |
17 section {* Types for Names, Nominal Datatype Declaration for Types and Terms *} |
18 |
18 |
19 no_syntax |
19 no_syntax |
20 "_Map" :: "maplets => 'a ~=> 'b" ("(1[_])") |
20 "_Map" :: "maplets => 'a \<rightharpoonup> 'b" ("(1[_])") |
21 |
21 |
22 text {* The main point of this solution is to use names everywhere (be they bound, |
22 text {* The main point of this solution is to use names everywhere (be they bound, |
23 binding or free). In System \FSUB{} there are two kinds of names corresponding to |
23 binding or free). In System \FSUB{} there are two kinds of names corresponding to |
24 type-variables and to term-variables. These two kinds of names are represented in |
24 type-variables and to term-variables. These two kinds of names are represented in |
25 the nominal datatype package as atom-types @{text "tyvrs"} and @{text "vrs"}: *} |
25 the nominal datatype package as atom-types @{text "tyvrs"} and @{text "vrs"}: *} |