author | Christian Urban <urbanc@in.tum.de> |
Thu, 14 Jan 2010 17:13:11 +0100 | |
changeset 878 | c3662f845129 |
parent 866 | f537d570fff8 |
child 912 | aa960d16570f |
permissions | -rw-r--r-- |
778
54f186bb5e3e
added "Highest Priority" category; and tuned slightly code
Christian Urban <urbanc@in.tum.de>
parents:
768
diff
changeset
|
1 |
Highest Priority |
54f186bb5e3e
added "Highest Priority" category; and tuned slightly code
Christian Urban <urbanc@in.tum.de>
parents:
768
diff
changeset
|
2 |
================ |
54f186bb5e3e
added "Highest Priority" category; and tuned slightly code
Christian Urban <urbanc@in.tum.de>
parents:
768
diff
changeset
|
3 |
|
54f186bb5e3e
added "Highest Priority" category; and tuned slightly code
Christian Urban <urbanc@in.tum.de>
parents:
768
diff
changeset
|
4 |
- better lookup mechanism for quotient definition |
54f186bb5e3e
added "Highest Priority" category; and tuned slightly code
Christian Urban <urbanc@in.tum.de>
parents:
768
diff
changeset
|
5 |
(see fixme in quotient_term.ML) |
54f186bb5e3e
added "Highest Priority" category; and tuned slightly code
Christian Urban <urbanc@in.tum.de>
parents:
768
diff
changeset
|
6 |
|
503
d2c9a72e52e0
first version of internalised quotient theorems; added FIXME-TODO
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
7 |
Higher Priority |
d2c9a72e52e0
first version of internalised quotient theorems; added FIXME-TODO
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
8 |
=============== |
d2c9a72e52e0
first version of internalised quotient theorems; added FIXME-TODO
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
9 |
|
794
f0a78fda343f
added an item about when the same quotient constant is defined twice (throws a bind exception in quoteint_def.ML)
Christian Urban <urbanc@in.tum.de>
parents:
778
diff
changeset
|
10 |
- If the user defines twice the same quotient constant, |
f0a78fda343f
added an item about when the same quotient constant is defined twice (throws a bind exception in quoteint_def.ML)
Christian Urban <urbanc@in.tum.de>
parents:
778
diff
changeset
|
11 |
for example funion, then the line |
f0a78fda343f
added an item about when the same quotient constant is defined twice (throws a bind exception in quoteint_def.ML)
Christian Urban <urbanc@in.tum.de>
parents:
778
diff
changeset
|
12 |
|
f0a78fda343f
added an item about when the same quotient constant is defined twice (throws a bind exception in quoteint_def.ML)
Christian Urban <urbanc@in.tum.de>
parents:
778
diff
changeset
|
13 |
val Free (lhs_str, lhs_ty) = lhs |
f0a78fda343f
added an item about when the same quotient constant is defined twice (throws a bind exception in quoteint_def.ML)
Christian Urban <urbanc@in.tum.de>
parents:
778
diff
changeset
|
14 |
|
f0a78fda343f
added an item about when the same quotient constant is defined twice (throws a bind exception in quoteint_def.ML)
Christian Urban <urbanc@in.tum.de>
parents:
778
diff
changeset
|
15 |
in quotient_def raises a bind exception. |
f0a78fda343f
added an item about when the same quotient constant is defined twice (throws a bind exception in quoteint_def.ML)
Christian Urban <urbanc@in.tum.de>
parents:
778
diff
changeset
|
16 |
|
f0a78fda343f
added an item about when the same quotient constant is defined twice (throws a bind exception in quoteint_def.ML)
Christian Urban <urbanc@in.tum.de>
parents:
778
diff
changeset
|
17 |
- If the constant definition gives the wrong definition |
778
54f186bb5e3e
added "Highest Priority" category; and tuned slightly code
Christian Urban <urbanc@in.tum.de>
parents:
768
diff
changeset
|
18 |
term, one gets a cryptic message about absrep_fun |
503
d2c9a72e52e0
first version of internalised quotient theorems; added FIXME-TODO
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
19 |
|
794
f0a78fda343f
added an item about when the same quotient constant is defined twice (throws a bind exception in quoteint_def.ML)
Christian Urban <urbanc@in.tum.de>
parents:
778
diff
changeset
|
20 |
- Handle theorems that include Ball/Bex. For this, would |
f0a78fda343f
added an item about when the same quotient constant is defined twice (throws a bind exception in quoteint_def.ML)
Christian Urban <urbanc@in.tum.de>
parents:
778
diff
changeset
|
21 |
it help if we introduced separate Bex and Ball constants |
f0a78fda343f
added an item about when the same quotient constant is defined twice (throws a bind exception in quoteint_def.ML)
Christian Urban <urbanc@in.tum.de>
parents:
778
diff
changeset
|
22 |
for quotienting? |
512
8c7597b19f0e
First version of the deterministic rep-abs-inj-tac.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
503
diff
changeset
|
23 |
|
794
f0a78fda343f
added an item about when the same quotient constant is defined twice (throws a bind exception in quoteint_def.ML)
Christian Urban <urbanc@in.tum.de>
parents:
778
diff
changeset
|
24 |
- The user should be able to give quotient_respects and |
760
c1989de100b4
various tunings; map_lookup now raises an exception; addition to FIXME-TODO
Christian Urban <urbanc@in.tum.de>
parents:
753
diff
changeset
|
25 |
preserves theorems in a more natural form. |
503
d2c9a72e52e0
first version of internalised quotient theorems; added FIXME-TODO
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
26 |
|
778
54f186bb5e3e
added "Highest Priority" category; and tuned slightly code
Christian Urban <urbanc@in.tum.de>
parents:
768
diff
changeset
|
27 |
|
503
d2c9a72e52e0
first version of internalised quotient theorems; added FIXME-TODO
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
28 |
Lower Priority |
d2c9a72e52e0
first version of internalised quotient theorems; added FIXME-TODO
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
29 |
============== |
d2c9a72e52e0
first version of internalised quotient theorems; added FIXME-TODO
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
30 |
|
778
54f186bb5e3e
added "Highest Priority" category; and tuned slightly code
Christian Urban <urbanc@in.tum.de>
parents:
768
diff
changeset
|
31 |
- accept partial equivalence relations |
716
1e08743b6997
FSet3 minor fixes + cases
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
713
diff
changeset
|
32 |
|
768
e9e205b904e2
get_fun needed change to cope with "('a fset) fset" types...this needs composition (op o); now id_simps contains also id_o and o_id, and map_id is also added in QuotList.thy; regularize and cleaning needed to be hacked (indicated by "HACK")...THIS NEEDS ATTENTION!!!; except two lemmas in IntEx, all examples go through; added considerable material to FSet3; tuned FIXME-TODO
Christian Urban <urbanc@in.tum.de>
parents:
760
diff
changeset
|
33 |
- think about what happens if things go wrong (like |
e9e205b904e2
get_fun needed change to cope with "('a fset) fset" types...this needs composition (op o); now id_simps contains also id_o and o_id, and map_id is also added in QuotList.thy; regularize and cleaning needed to be hacked (indicated by "HACK")...THIS NEEDS ATTENTION!!!; except two lemmas in IntEx, all examples go through; added considerable material to FSet3; tuned FIXME-TODO
Christian Urban <urbanc@in.tum.de>
parents:
760
diff
changeset
|
34 |
theorem cannot be lifted) / proper diagnostic |
e9e205b904e2
get_fun needed change to cope with "('a fset) fset" types...this needs composition (op o); now id_simps contains also id_o and o_id, and map_id is also added in QuotList.thy; regularize and cleaning needed to be hacked (indicated by "HACK")...THIS NEEDS ATTENTION!!!; except two lemmas in IntEx, all examples go through; added considerable material to FSet3; tuned FIXME-TODO
Christian Urban <urbanc@in.tum.de>
parents:
760
diff
changeset
|
35 |
messages for the user |
760
c1989de100b4
various tunings; map_lookup now raises an exception; addition to FIXME-TODO
Christian Urban <urbanc@in.tum.de>
parents:
753
diff
changeset
|
36 |
|
713
54cb69112477
Updated TODO list together.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
700
diff
changeset
|
37 |
- inductions from the datatype package have a strange |
54cb69112477
Updated TODO list together.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
700
diff
changeset
|
38 |
order of quantifiers in assumptions. |
54cb69112477
Updated TODO list together.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
700
diff
changeset
|
39 |
|
794
f0a78fda343f
added an item about when the same quotient constant is defined twice (throws a bind exception in quoteint_def.ML)
Christian Urban <urbanc@in.tum.de>
parents:
778
diff
changeset
|
40 |
- wrapper for lifting ... to be used as an attribute |
713
54cb69112477
Updated TODO list together.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
700
diff
changeset
|
41 |
|
503
d2c9a72e52e0
first version of internalised quotient theorems; added FIXME-TODO
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
42 |
- find clean ways how to write down the "mathematical" |
d2c9a72e52e0
first version of internalised quotient theorems; added FIXME-TODO
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
43 |
procedure for a possible submission (Peter submitted |
d2c9a72e52e0
first version of internalised quotient theorems; added FIXME-TODO
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
44 |
his work only to TPHOLs 2005...we would have to go |
506
91c374abde06
removed quot argument...not all examples work anymore
Christian Urban <urbanc@in.tum.de>
parents:
503
diff
changeset
|
45 |
maybe for the Journal of Formalised Mathematics) |
91c374abde06
removed quot argument...not all examples work anymore
Christian Urban <urbanc@in.tum.de>
parents:
503
diff
changeset
|
46 |
|
515
b00a9b58264d
Fixes after big merge.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
514
diff
changeset
|
47 |
- add tests for adding theorems to the various thm lists |
b00a9b58264d
Fixes after big merge.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
514
diff
changeset
|
48 |
|
746 | 49 |
- Maybe quotient and equiv theorems like the ones for |
50 |
[QuotList, QuotOption, QuotPair...] could be automatically |
|
51 |
proven? |
|
753
544b05e03ec0
Removed lambdas on the right hand side. This fixes all 'PROBLEM' comments.
Cezary Kaliszyk <kaliszyk@in.tum.de>
parents:
746
diff
changeset
|
52 |
|
768
e9e205b904e2
get_fun needed change to cope with "('a fset) fset" types...this needs composition (op o); now id_simps contains also id_o and o_id, and map_id is also added in QuotList.thy; regularize and cleaning needed to be hacked (indicated by "HACK")...THIS NEEDS ATTENTION!!!; except two lemmas in IntEx, all examples go through; added considerable material to FSet3; tuned FIXME-TODO
Christian Urban <urbanc@in.tum.de>
parents:
760
diff
changeset
|
53 |
- Examples: Finite multiset. |
e9e205b904e2
get_fun needed change to cope with "('a fset) fset" types...this needs composition (op o); now id_simps contains also id_o and o_id, and map_id is also added in QuotList.thy; regularize and cleaning needed to be hacked (indicated by "HACK")...THIS NEEDS ATTENTION!!!; except two lemmas in IntEx, all examples go through; added considerable material to FSet3; tuned FIXME-TODO
Christian Urban <urbanc@in.tum.de>
parents:
760
diff
changeset
|
54 |
|
e9e205b904e2
get_fun needed change to cope with "('a fset) fset" types...this needs composition (op o); now id_simps contains also id_o and o_id, and map_id is also added in QuotList.thy; regularize and cleaning needed to be hacked (indicated by "HACK")...THIS NEEDS ATTENTION!!!; except two lemmas in IntEx, all examples go through; added considerable material to FSet3; tuned FIXME-TODO
Christian Urban <urbanc@in.tum.de>
parents:
760
diff
changeset
|
55 |
- The current syntax of the quotient_definition is |
e9e205b904e2
get_fun needed change to cope with "('a fset) fset" types...this needs composition (op o); now id_simps contains also id_o and o_id, and map_id is also added in QuotList.thy; regularize and cleaning needed to be hacked (indicated by "HACK")...THIS NEEDS ATTENTION!!!; except two lemmas in IntEx, all examples go through; added considerable material to FSet3; tuned FIXME-TODO
Christian Urban <urbanc@in.tum.de>
parents:
760
diff
changeset
|
56 |
|
e9e205b904e2
get_fun needed change to cope with "('a fset) fset" types...this needs composition (op o); now id_simps contains also id_o and o_id, and map_id is also added in QuotList.thy; regularize and cleaning needed to be hacked (indicated by "HACK")...THIS NEEDS ATTENTION!!!; except two lemmas in IntEx, all examples go through; added considerable material to FSet3; tuned FIXME-TODO
Christian Urban <urbanc@in.tum.de>
parents:
760
diff
changeset
|
57 |
"qconst :: qty" |
e9e205b904e2
get_fun needed change to cope with "('a fset) fset" types...this needs composition (op o); now id_simps contains also id_o and o_id, and map_id is also added in QuotList.thy; regularize and cleaning needed to be hacked (indicated by "HACK")...THIS NEEDS ATTENTION!!!; except two lemmas in IntEx, all examples go through; added considerable material to FSet3; tuned FIXME-TODO
Christian Urban <urbanc@in.tum.de>
parents:
760
diff
changeset
|
58 |
as "rconst" |
e9e205b904e2
get_fun needed change to cope with "('a fset) fset" types...this needs composition (op o); now id_simps contains also id_o and o_id, and map_id is also added in QuotList.thy; regularize and cleaning needed to be hacked (indicated by "HACK")...THIS NEEDS ATTENTION!!!; except two lemmas in IntEx, all examples go through; added considerable material to FSet3; tuned FIXME-TODO
Christian Urban <urbanc@in.tum.de>
parents:
760
diff
changeset
|
59 |
|
e9e205b904e2
get_fun needed change to cope with "('a fset) fset" types...this needs composition (op o); now id_simps contains also id_o and o_id, and map_id is also added in QuotList.thy; regularize and cleaning needed to be hacked (indicated by "HACK")...THIS NEEDS ATTENTION!!!; except two lemmas in IntEx, all examples go through; added considerable material to FSet3; tuned FIXME-TODO
Christian Urban <urbanc@in.tum.de>
parents:
760
diff
changeset
|
60 |
Is it possible to have the more Isabelle-like |
e9e205b904e2
get_fun needed change to cope with "('a fset) fset" types...this needs composition (op o); now id_simps contains also id_o and o_id, and map_id is also added in QuotList.thy; regularize and cleaning needed to be hacked (indicated by "HACK")...THIS NEEDS ATTENTION!!!; except two lemmas in IntEx, all examples go through; added considerable material to FSet3; tuned FIXME-TODO
Christian Urban <urbanc@in.tum.de>
parents:
760
diff
changeset
|
61 |
syntax |
e9e205b904e2
get_fun needed change to cope with "('a fset) fset" types...this needs composition (op o); now id_simps contains also id_o and o_id, and map_id is also added in QuotList.thy; regularize and cleaning needed to be hacked (indicated by "HACK")...THIS NEEDS ATTENTION!!!; except two lemmas in IntEx, all examples go through; added considerable material to FSet3; tuned FIXME-TODO
Christian Urban <urbanc@in.tum.de>
parents:
760
diff
changeset
|
62 |
|
e9e205b904e2
get_fun needed change to cope with "('a fset) fset" types...this needs composition (op o); now id_simps contains also id_o and o_id, and map_id is also added in QuotList.thy; regularize and cleaning needed to be hacked (indicated by "HACK")...THIS NEEDS ATTENTION!!!; except two lemmas in IntEx, all examples go through; added considerable material to FSet3; tuned FIXME-TODO
Christian Urban <urbanc@in.tum.de>
parents:
760
diff
changeset
|
63 |
qconst :: "qty" |
e9e205b904e2
get_fun needed change to cope with "('a fset) fset" types...this needs composition (op o); now id_simps contains also id_o and o_id, and map_id is also added in QuotList.thy; regularize and cleaning needed to be hacked (indicated by "HACK")...THIS NEEDS ATTENTION!!!; except two lemmas in IntEx, all examples go through; added considerable material to FSet3; tuned FIXME-TODO
Christian Urban <urbanc@in.tum.de>
parents:
760
diff
changeset
|
64 |
as "rconst" |
e9e205b904e2
get_fun needed change to cope with "('a fset) fset" types...this needs composition (op o); now id_simps contains also id_o and o_id, and map_id is also added in QuotList.thy; regularize and cleaning needed to be hacked (indicated by "HACK")...THIS NEEDS ATTENTION!!!; except two lemmas in IntEx, all examples go through; added considerable material to FSet3; tuned FIXME-TODO
Christian Urban <urbanc@in.tum.de>
parents:
760
diff
changeset
|
65 |
|
e9e205b904e2
get_fun needed change to cope with "('a fset) fset" types...this needs composition (op o); now id_simps contains also id_o and o_id, and map_id is also added in QuotList.thy; regularize and cleaning needed to be hacked (indicated by "HACK")...THIS NEEDS ATTENTION!!!; except two lemmas in IntEx, all examples go through; added considerable material to FSet3; tuned FIXME-TODO
Christian Urban <urbanc@in.tum.de>
parents:
760
diff
changeset
|
66 |
That means "qconst :: qty" is not read as a term, but |
e9e205b904e2
get_fun needed change to cope with "('a fset) fset" types...this needs composition (op o); now id_simps contains also id_o and o_id, and map_id is also added in QuotList.thy; regularize and cleaning needed to be hacked (indicated by "HACK")...THIS NEEDS ATTENTION!!!; except two lemmas in IntEx, all examples go through; added considerable material to FSet3; tuned FIXME-TODO
Christian Urban <urbanc@in.tum.de>
parents:
760
diff
changeset
|
67 |
as two entities. |