equal
deleted
inserted
replaced
14 sig |
14 sig |
15 val print_data: Proof.context -> unit |
15 val print_data: Proof.context -> unit |
16 val eqvt_add: attribute |
16 val eqvt_add: attribute |
17 val eqvt_del: attribute |
17 val eqvt_del: attribute |
18 val setup: theory -> theory |
18 val setup: theory -> theory |
|
19 val get_eqvt_thms: theory -> thm list |
|
20 val get_fresh_thms: theory -> thm list |
|
21 val get_bij_thms: theory -> thm list |
|
22 |
19 |
23 |
20 val NOMINAL_EQVT_DEBUG : bool ref |
24 val NOMINAL_EQVT_DEBUG : bool ref |
21 end; |
25 end; |
22 |
26 |
23 structure NominalThmDecls: NOMINAL_THMDECLS = |
27 structure NominalThmDecls: NOMINAL_THMDECLS = |
55 (* together, i.e. are of the right "pt_class", so that a stronger version of the *) |
59 (* together, i.e. are of the right "pt_class", so that a stronger version of the *) |
56 (* eqality-lemma can be derived. *) |
60 (* eqality-lemma can be derived. *) |
57 exception EQVT_FORM; |
61 exception EQVT_FORM; |
58 |
62 |
59 val print_data = Data.print o Context.Proof; |
63 val print_data = Data.print o Context.Proof; |
|
64 val get_eqvt_thms = Context.Theory #> Data.get #> #eqvt; |
|
65 val get_fresh_thms = Context.Theory #> Data.get #> #fresh; |
|
66 val get_bij_thms = Context.Theory #> Data.get #> #bij; |
60 |
67 |
61 (* FIXME: should be a function in a library *) |
68 (* FIXME: should be a function in a library *) |
62 fun mk_permT T = HOLogic.listT (HOLogic.mk_prodT (T, T)); |
69 fun mk_permT T = HOLogic.listT (HOLogic.mk_prodT (T, T)); |
63 |
70 |
64 val perm_bool = thm "perm_bool"; |
71 val perm_bool = thm "perm_bool"; |