author | Christian Urban <urbanc@in.tum.de> |
Tue, 04 May 2010 14:38:07 +0100 | |
changeset 2048 | 20be95dce643 |
parent 2045 | 6800fcaafa2a |
child 2383 | 83f1b16486ee |
permissions | -rw-r--r-- |
1555
73992021c8f0
Described automatically created funs.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
1527
diff
changeset
|
1 |
Automatically created functions: |
73992021c8f0
Described automatically created funs.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
1527
diff
changeset
|
2 |
|
73992021c8f0
Described automatically created funs.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
1527
diff
changeset
|
3 |
ty1_tyn.bn[simp] lifted equations for bn funs |
73992021c8f0
Described automatically created funs.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
1527
diff
changeset
|
4 |
ty1_tyn.fv[simp] lifted equations for fv funs |
73992021c8f0
Described automatically created funs.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
1527
diff
changeset
|
5 |
ty1_tyn.perm[simp] lifted permutation equations |
73992021c8f0
Described automatically created funs.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
1527
diff
changeset
|
6 |
ty1_tyn.distinct[simp] lifted distincts |
73992021c8f0
Described automatically created funs.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
1527
diff
changeset
|
7 |
ty1_tyn.eq_iff |
73992021c8f0
Described automatically created funs.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
1527
diff
changeset
|
8 |
ty1_tyn.induct |
73992021c8f0
Described automatically created funs.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
1527
diff
changeset
|
9 |
ty1_tyn.inducts |
73992021c8f0
Described automatically created funs.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
1527
diff
changeset
|
10 |
instance ty1 and tyn :: fs |
1573
b39108f42638
fv_rsp proved automatically.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
1561
diff
changeset
|
11 |
ty1_tyn.supp empty when for too many bindings |
1555
73992021c8f0
Described automatically created funs.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
1527
diff
changeset
|
12 |
|
1987
72bed4519c86
Some of the exceptions that the parser should check in TODO.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
1808
diff
changeset
|
13 |
Parser should check that: |
72bed4519c86
Some of the exceptions that the parser should check in TODO.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
1808
diff
changeset
|
14 |
- types of bindings match types of binding functions |
72bed4519c86
Some of the exceptions that the parser should check in TODO.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
1808
diff
changeset
|
15 |
- fsets are not bound in lst bindings |
72bed4519c86
Some of the exceptions that the parser should check in TODO.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
1808
diff
changeset
|
16 |
- bound arguments are not datatypes |
2045
6800fcaafa2a
Separate Term8, as it may work soon.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
1987
diff
changeset
|
17 |
- binder is referred to by name and not by type |
1987
72bed4519c86
Some of the exceptions that the parser should check in TODO.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
1808
diff
changeset
|
18 |
|
1501 | 19 |
Smaller things: |
20 |
||
1802
9a32e02cc95b
added small ittems about equivaraince of alpha_gens and name of lam.perm
Christian Urban <urbanc@in.tum.de>
parents:
1794
diff
changeset
|
21 |
- lam.perm should be called permute_lam.simps (that is |
9a32e02cc95b
added small ittems about equivaraince of alpha_gens and name of lam.perm
Christian Urban <urbanc@in.tum.de>
parents:
1794
diff
changeset
|
22 |
the convention from Nominal2) |
9a32e02cc95b
added small ittems about equivaraince of alpha_gens and name of lam.perm
Christian Urban <urbanc@in.tum.de>
parents:
1794
diff
changeset
|
23 |
|
1510
be911e869fde
Added fv,bn,distinct,perm to the simplifier.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
1504
diff
changeset
|
24 |
- maybe <type>_perm whould be called permute_<type>.simps; |
1501 | 25 |
that would conform with the terminology in Nominal2 |
26 |
||
1527
e1c74b864b1b
added item about size functions
Christian Urban <urbanc@in.tum.de>
parents:
1516
diff
changeset
|
27 |
- we also need to lift the size function for nominal |
e1c74b864b1b
added item about size functions
Christian Urban <urbanc@in.tum.de>
parents:
1516
diff
changeset
|
28 |
datatypes |
1501 | 29 |
|
1802
9a32e02cc95b
added small ittems about equivaraince of alpha_gens and name of lam.perm
Christian Urban <urbanc@in.tum.de>
parents:
1794
diff
changeset
|
30 |
- Abs.thy contains lemmas for equivariance of the alphas; |
9a32e02cc95b
added small ittems about equivaraince of alpha_gens and name of lam.perm
Christian Urban <urbanc@in.tum.de>
parents:
1794
diff
changeset
|
31 |
they are not yet used anywhere |
9a32e02cc95b
added small ittems about equivaraince of alpha_gens and name of lam.perm
Christian Urban <urbanc@in.tum.de>
parents:
1794
diff
changeset
|
32 |
|
1501 | 33 |
Bigger things: |
34 |
||
1808
d7a2c45b447a
added TODO item about parser creating syntax for the wrong type
Christian Urban <urbanc@in.tum.de>
parents:
1802
diff
changeset
|
35 |
- Parser adds syntax for raw datatype, but should |
d7a2c45b447a
added TODO item about parser creating syntax for the wrong type
Christian Urban <urbanc@in.tum.de>
parents:
1802
diff
changeset
|
36 |
add for lifted datatype. |
d7a2c45b447a
added TODO item about parser creating syntax for the wrong type
Christian Urban <urbanc@in.tum.de>
parents:
1802
diff
changeset
|
37 |
|
1738
be28f7b4b97b
added an item about alpha-equivalence (the existential should be closer to the abstraction)
Christian Urban <urbanc@in.tum.de>
parents:
1678
diff
changeset
|
38 |
- the alpha equivalence for |
be28f7b4b97b
added an item about alpha-equivalence (the existential should be closer to the abstraction)
Christian Urban <urbanc@in.tum.de>
parents:
1678
diff
changeset
|
39 |
|
be28f7b4b97b
added an item about alpha-equivalence (the existential should be closer to the abstraction)
Christian Urban <urbanc@in.tum.de>
parents:
1678
diff
changeset
|
40 |
Let as::assn t::trm bind "bn as" in t |
be28f7b4b97b
added an item about alpha-equivalence (the existential should be closer to the abstraction)
Christian Urban <urbanc@in.tum.de>
parents:
1678
diff
changeset
|
41 |
|
be28f7b4b97b
added an item about alpha-equivalence (the existential should be closer to the abstraction)
Christian Urban <urbanc@in.tum.de>
parents:
1678
diff
changeset
|
42 |
creates as premise |
be28f7b4b97b
added an item about alpha-equivalence (the existential should be closer to the abstraction)
Christian Urban <urbanc@in.tum.de>
parents:
1678
diff
changeset
|
43 |
|
be28f7b4b97b
added an item about alpha-equivalence (the existential should be closer to the abstraction)
Christian Urban <urbanc@in.tum.de>
parents:
1678
diff
changeset
|
44 |
EX pi. as ~~bn as' /\ (bn as, t) ~~lst (bn as', t') |
be28f7b4b97b
added an item about alpha-equivalence (the existential should be closer to the abstraction)
Christian Urban <urbanc@in.tum.de>
parents:
1678
diff
changeset
|
45 |
|
be28f7b4b97b
added an item about alpha-equivalence (the existential should be closer to the abstraction)
Christian Urban <urbanc@in.tum.de>
parents:
1678
diff
changeset
|
46 |
but I think it should be |
be28f7b4b97b
added an item about alpha-equivalence (the existential should be closer to the abstraction)
Christian Urban <urbanc@in.tum.de>
parents:
1678
diff
changeset
|
47 |
|
be28f7b4b97b
added an item about alpha-equivalence (the existential should be closer to the abstraction)
Christian Urban <urbanc@in.tum.de>
parents:
1678
diff
changeset
|
48 |
as ~~bn as' /\ EX pi. (bn as, t) ~~lst (bn as', t') |
be28f7b4b97b
added an item about alpha-equivalence (the existential should be closer to the abstraction)
Christian Urban <urbanc@in.tum.de>
parents:
1678
diff
changeset
|
49 |
|
be28f7b4b97b
added an item about alpha-equivalence (the existential should be closer to the abstraction)
Christian Urban <urbanc@in.tum.de>
parents:
1678
diff
changeset
|
50 |
(both are equivalent, but the second seems to be closer to |
be28f7b4b97b
added an item about alpha-equivalence (the existential should be closer to the abstraction)
Christian Urban <urbanc@in.tum.de>
parents:
1678
diff
changeset
|
51 |
the fv-function) |
be28f7b4b97b
added an item about alpha-equivalence (the existential should be closer to the abstraction)
Christian Urban <urbanc@in.tum.de>
parents:
1678
diff
changeset
|
52 |
|
1792
c29a139410d2
properly separated the example from my PhD and gave the correct alpha-equivalence relation (according to the paper)
Christian Urban <urbanc@in.tum.de>
parents:
1738
diff
changeset
|
53 |
- when there are more than one shallow binder, then alpha |
c29a139410d2
properly separated the example from my PhD and gave the correct alpha-equivalence relation (according to the paper)
Christian Urban <urbanc@in.tum.de>
parents:
1738
diff
changeset
|
54 |
equivalence creates more than one permutation. According |
c29a139410d2
properly separated the example from my PhD and gave the correct alpha-equivalence relation (according to the paper)
Christian Urban <urbanc@in.tum.de>
parents:
1738
diff
changeset
|
55 |
to the paper, this is incorrect. |
c29a139410d2
properly separated the example from my PhD and gave the correct alpha-equivalence relation (according to the paper)
Christian Urban <urbanc@in.tum.de>
parents:
1738
diff
changeset
|
56 |
|
1794
d51aab59bfbf
updated (comment about weirdo example)
Christian Urban <urbanc@in.tum.de>
parents:
1792
diff
changeset
|
57 |
Example in Classical.thy. |
1792
c29a139410d2
properly separated the example from my PhD and gave the correct alpha-equivalence relation (according to the paper)
Christian Urban <urbanc@in.tum.de>
parents:
1738
diff
changeset
|
58 |
|
1794
d51aab59bfbf
updated (comment about weirdo example)
Christian Urban <urbanc@in.tum.de>
parents:
1792
diff
changeset
|
59 |
- check whether weirdo example in TestMorePerm works |
d51aab59bfbf
updated (comment about weirdo example)
Christian Urban <urbanc@in.tum.de>
parents:
1792
diff
changeset
|
60 |
with shallow binders |
1792
c29a139410d2
properly separated the example from my PhD and gave the correct alpha-equivalence relation (according to the paper)
Christian Urban <urbanc@in.tum.de>
parents:
1738
diff
changeset
|
61 |
|
1501 | 62 |
- nested recursion, like types "trm list" in a constructor |
63 |
||
1649 | 64 |
- define permute_bn automatically and prove properties of it |
65 |
||
66 |
- prove renaming-of-binders lemmas |
|
67 |
||
1501 | 68 |
- strong induction rules |
69 |
||
1561
c3dca6e600c8
Use 'alpha_bn_refl' to get rid of one of the sorrys.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
1555
diff
changeset
|
70 |
- check support equations for more bindings per constructor |
1501 | 71 |
|
1649 | 72 |
- For binding functions that call other binding functions |
1654
b4e330083383
Update cheats in TODO.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
1649
diff
changeset
|
73 |
the following are proved with cheat_tac: constr_rsp |
1503 | 74 |
|
75 |
- store information about defined nominal datatypes, so that |
|
76 |
it can be used to define new types that depend on these |
|
77 |
||
78 |
- make parser aware of recursive and of different versions of abs |
|
1573
b39108f42638
fv_rsp proved automatically.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
1561
diff
changeset
|
79 |
|
b39108f42638
fv_rsp proved automatically.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
1561
diff
changeset
|
80 |
Less important: |
b39108f42638
fv_rsp proved automatically.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
1561
diff
changeset
|
81 |
|
b39108f42638
fv_rsp proved automatically.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
1561
diff
changeset
|
82 |
- fv_rsp uses 'blast' to show goals of the type: |
b39108f42638
fv_rsp proved automatically.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
1561
diff
changeset
|
83 |
a u b = c u d ==> a u x u b = c u x u d |
1678
23f81992da8f
Parsing of list-bn functions into components.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
1654
diff
changeset
|
84 |
|
23f81992da8f
Parsing of list-bn functions into components.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
1654
diff
changeset
|
85 |
When cleaning: |
23f81992da8f
Parsing of list-bn functions into components.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
1654
diff
changeset
|
86 |
|
1987
72bed4519c86
Some of the exceptions that the parser should check in TODO.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
1808
diff
changeset
|
87 |
- remove all 'PolyML.makestring'. |