author | Christian Urban <urbanc@in.tum.de> |
Thu, 08 Apr 2010 11:40:13 +0200 | |
changeset 1792 | c29a139410d2 |
parent 1738 | be28f7b4b97b |
child 1794 | d51aab59bfbf |
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 |
|
1501 | 13 |
Smaller things: |
14 |
||
1510
be911e869fde
Added fv,bn,distinct,perm to the simplifier.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
1504
diff
changeset
|
15 |
- maybe <type>_perm whould be called permute_<type>.simps; |
1501 | 16 |
that would conform with the terminology in Nominal2 |
17 |
||
1527
e1c74b864b1b
added item about size functions
Christian Urban <urbanc@in.tum.de>
parents:
1516
diff
changeset
|
18 |
- 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
|
19 |
datatypes |
1501 | 20 |
|
21 |
Bigger things: |
|
22 |
||
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
|
23 |
- 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
|
24 |
|
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
|
25 |
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
|
26 |
|
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
|
27 |
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
|
28 |
|
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
|
29 |
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
|
30 |
|
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
|
31 |
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
|
32 |
|
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
|
33 |
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
|
34 |
|
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
|
35 |
(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
|
36 |
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
|
37 |
|
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
|
38 |
- 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
|
39 |
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
|
40 |
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
|
41 |
|
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
|
42 |
Example in TestMorePerm. |
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
|
43 |
|
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
|
44 |
|
1501 | 45 |
- nested recursion, like types "trm list" in a constructor |
46 |
||
1649 | 47 |
- define permute_bn automatically and prove properties of it |
48 |
||
49 |
- prove renaming-of-binders lemmas |
|
50 |
||
1501 | 51 |
- strong induction rules |
52 |
||
1561
c3dca6e600c8
Use 'alpha_bn_refl' to get rid of one of the sorrys.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
1555
diff
changeset
|
53 |
- check support equations for more bindings per constructor |
1501 | 54 |
|
1649 | 55 |
- For binding functions that call other binding functions |
1654
b4e330083383
Update cheats in TODO.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
1649
diff
changeset
|
56 |
the following are proved with cheat_tac: constr_rsp |
1503 | 57 |
|
58 |
- store information about defined nominal datatypes, so that |
|
59 |
it can be used to define new types that depend on these |
|
60 |
||
61 |
- 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
|
62 |
|
b39108f42638
fv_rsp proved automatically.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
1561
diff
changeset
|
63 |
Less important: |
b39108f42638
fv_rsp proved automatically.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
1561
diff
changeset
|
64 |
|
b39108f42638
fv_rsp proved automatically.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
1561
diff
changeset
|
65 |
- 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
|
66 |
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
|
67 |
|
23f81992da8f
Parsing of list-bn functions into components.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
1654
diff
changeset
|
68 |
When cleaning: |
23f81992da8f
Parsing of list-bn functions into components.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
1654
diff
changeset
|
69 |
|
23f81992da8f
Parsing of list-bn functions into components.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
1654
diff
changeset
|
70 |
- remove all 'PolyML.makestring'. |