author | Christian Urban <urbanc@in.tum.de> |
Sat, 17 Dec 2011 17:08:47 +0000 | |
branch | Nominal2-Isabelle2011-1 |
changeset 3071 | 11f6a561eb4b |
parent 3029 | 6fd3fc3254ee |
permissions | -rw-r--r-- |
2436
3885dc2669f9
cleaned up (almost completely) the examples
Christian Urban <urbanc@in.tum.de>
parents:
2120
diff
changeset
|
1 |
theory LetRec2 |
2454
9ffee4eb1ae1
renamed NewParser to Nominal2
Christian Urban <urbanc@in.tum.de>
parents:
2438
diff
changeset
|
2 |
imports "../Nominal2" |
1603
2b367c80c0d7
Moved let properties from Term5 to ExLetRec.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
diff
changeset
|
3 |
begin |
2b367c80c0d7
Moved let properties from Term5 to ExLetRec.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
diff
changeset
|
4 |
|
2b367c80c0d7
Moved let properties from Term5 to ExLetRec.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
diff
changeset
|
5 |
atom_decl name |
2b367c80c0d7
Moved let properties from Term5 to ExLetRec.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
diff
changeset
|
6 |
|
2b367c80c0d7
Moved let properties from Term5 to ExLetRec.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
diff
changeset
|
7 |
nominal_datatype trm = |
3071
11f6a561eb4b
cleaned examples for stable branch
Christian Urban <urbanc@in.tum.de>
parents:
3029
diff
changeset
|
8 |
Vr "name" |
11f6a561eb4b
cleaned examples for stable branch
Christian Urban <urbanc@in.tum.de>
parents:
3029
diff
changeset
|
9 |
| Ap "trm" "trm" |
11f6a561eb4b
cleaned examples for stable branch
Christian Urban <urbanc@in.tum.de>
parents:
3029
diff
changeset
|
10 |
| Lm x::"name" t::"trm" binds (set) x in t |
11f6a561eb4b
cleaned examples for stable branch
Christian Urban <urbanc@in.tum.de>
parents:
3029
diff
changeset
|
11 |
| Lt a::"lts" t::"trm" binds "bn a" in a t |
11f6a561eb4b
cleaned examples for stable branch
Christian Urban <urbanc@in.tum.de>
parents:
3029
diff
changeset
|
12 |
and lts = |
11f6a561eb4b
cleaned examples for stable branch
Christian Urban <urbanc@in.tum.de>
parents:
3029
diff
changeset
|
13 |
Lnil |
11f6a561eb4b
cleaned examples for stable branch
Christian Urban <urbanc@in.tum.de>
parents:
3029
diff
changeset
|
14 |
| Lcons "name" "trm" "lts" |
1603
2b367c80c0d7
Moved let properties from Term5 to ExLetRec.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
diff
changeset
|
15 |
binder |
2b367c80c0d7
Moved let properties from Term5 to ExLetRec.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
diff
changeset
|
16 |
bn |
2b367c80c0d7
Moved let properties from Term5 to ExLetRec.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
diff
changeset
|
17 |
where |
3071
11f6a561eb4b
cleaned examples for stable branch
Christian Urban <urbanc@in.tum.de>
parents:
3029
diff
changeset
|
18 |
"bn Lnil = []" |
11f6a561eb4b
cleaned examples for stable branch
Christian Urban <urbanc@in.tum.de>
parents:
3029
diff
changeset
|
19 |
| "bn (Lcons x t l) = (atom x) # (bn l)" |
2561
7926f1cb45eb
respectfulness for permute_bn functions
Christian Urban <urbanc@in.tum.de>
parents:
2454
diff
changeset
|
20 |
|
7926f1cb45eb
respectfulness for permute_bn functions
Christian Urban <urbanc@in.tum.de>
parents:
2454
diff
changeset
|
21 |
|
3071
11f6a561eb4b
cleaned examples for stable branch
Christian Urban <urbanc@in.tum.de>
parents:
3029
diff
changeset
|
22 |
thm trm_lts.fv_defs |
11f6a561eb4b
cleaned examples for stable branch
Christian Urban <urbanc@in.tum.de>
parents:
3029
diff
changeset
|
23 |
thm trm_lts.eq_iff |
11f6a561eb4b
cleaned examples for stable branch
Christian Urban <urbanc@in.tum.de>
parents:
3029
diff
changeset
|
24 |
thm trm_lts.bn_defs |
11f6a561eb4b
cleaned examples for stable branch
Christian Urban <urbanc@in.tum.de>
parents:
3029
diff
changeset
|
25 |
thm trm_lts.perm_simps |
11f6a561eb4b
cleaned examples for stable branch
Christian Urban <urbanc@in.tum.de>
parents:
3029
diff
changeset
|
26 |
thm trm_lts.induct |
11f6a561eb4b
cleaned examples for stable branch
Christian Urban <urbanc@in.tum.de>
parents:
3029
diff
changeset
|
27 |
thm trm_lts.distinct |
1603
2b367c80c0d7
Moved let properties from Term5 to ExLetRec.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
diff
changeset
|
28 |
|
2b367c80c0d7
Moved let properties from Term5 to ExLetRec.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
diff
changeset
|
29 |
|
2b367c80c0d7
Moved let properties from Term5 to ExLetRec.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
diff
changeset
|
30 |
end |
2b367c80c0d7
Moved let properties from Term5 to ExLetRec.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
diff
changeset
|
31 |
|
2b367c80c0d7
Moved let properties from Term5 to ExLetRec.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
diff
changeset
|
32 |
|
2b367c80c0d7
Moved let properties from Term5 to ExLetRec.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
diff
changeset
|
33 |