--- a/src/Pure/conv.ML Thu Oct 01 22:40:29 2009 +0200
+++ b/src/Pure/conv.ML Thu Oct 01 23:27:05 2009 +0200
@@ -1,5 +1,6 @@
(* Title: Pure/conv.ML
- Author: Amine Chaieb and Makarius
+ Author: Amine Chaieb, TU Muenchen
+ Author: Makarius
Conversions: primitive equality reasoning.
*)
@@ -22,6 +23,7 @@
val every_conv: conv list -> conv
val try_conv: conv -> conv
val repeat_conv: conv -> conv
+ val cache_conv: conv -> conv
val abs_conv: (cterm * Proof.context -> conv) -> Proof.context -> conv
val combination_conv: conv -> conv -> conv
val comb_conv: conv -> conv
@@ -44,7 +46,7 @@
structure Conv: CONV =
struct
-(* conversionals *)
+(* basic conversionals *)
fun no_conv _ = raise CTERM ("no conversion", []);
val all_conv = Thm.reflexive;
@@ -72,6 +74,8 @@
fun try_conv cv = cv else_conv all_conv;
fun repeat_conv cv ct = try_conv (cv then_conv repeat_conv cv) ct;
+fun cache_conv (cv: conv) = Thm.cterm_cache cv;
+
(** Pure conversions **)
@@ -177,5 +181,5 @@
end;
-structure BasicConv: BASIC_CONV = Conv;
-open BasicConv;
+structure Basic_Conv: BASIC_CONV = Conv;
+open Basic_Conv;