equal
deleted
inserted
replaced
16 val eqvt_force_add: attribute |
16 val eqvt_force_add: attribute |
17 val eqvt_force_del: attribute |
17 val eqvt_force_del: attribute |
18 val setup: theory -> theory |
18 val setup: theory -> theory |
19 val get_eqvt_thms: Proof.context -> thm list |
19 val get_eqvt_thms: Proof.context -> thm list |
20 |
20 |
21 val NOMINAL_EQVT_DEBUG : bool ref |
21 val NOMINAL_EQVT_DEBUG : bool Unsynchronized.ref |
22 end; |
22 end; |
23 |
23 |
24 structure NominalThmDecls: NOMINAL_THMDECLS = |
24 structure NominalThmDecls: NOMINAL_THMDECLS = |
25 struct |
25 struct |
26 |
26 |
41 (* the implicational case it is also checked that the variables and permutation fit *) |
41 (* the implicational case it is also checked that the variables and permutation fit *) |
42 (* together, i.e. are of the right "pt_class", so that a stronger version of the *) |
42 (* together, i.e. are of the right "pt_class", so that a stronger version of the *) |
43 (* equality-lemma can be derived. *) |
43 (* equality-lemma can be derived. *) |
44 exception EQVT_FORM of string |
44 exception EQVT_FORM of string |
45 |
45 |
46 val NOMINAL_EQVT_DEBUG = ref false |
46 val NOMINAL_EQVT_DEBUG = Unsynchronized.ref false |
47 |
47 |
48 fun tactic (msg, tac) = |
48 fun tactic (msg, tac) = |
49 if !NOMINAL_EQVT_DEBUG |
49 if !NOMINAL_EQVT_DEBUG |
50 then tac THEN' (K (print_tac ("after " ^ msg))) |
50 then tac THEN' (K (print_tac ("after " ^ msg))) |
51 else tac |
51 else tac |