Added functions for fol_type; also put some functions to the signature, used by ResHolClause.
authormengj
Tue, 20 Dec 2005 04:27:46 +0100
changeset 18439 4b517881ac7e
parent 18438 b8d867177916
child 18440 72ee07f4b56b
Added functions for fol_type; also put some functions to the signature, used by ResHolClause.
src/HOL/Tools/res_clause.ML
--- a/src/HOL/Tools/res_clause.ML	Mon Dec 19 16:07:19 2005 +0100
+++ b/src/HOL/Tools/res_clause.ML	Tue Dec 20 04:27:46 2005 +0100
@@ -73,6 +73,14 @@
   val clause_eq : clause * clause -> bool
   val hash1_clause : clause -> word
 
+  val list_ord : ('a * 'b -> order) -> 'a list * 'b list -> order
+  type fol_type
+  val types_ord : fol_type list * fol_type list -> order
+  val string_of_fol_type : fol_type -> string
+  val mk_fol_type: string * string * fol_type list -> fol_type
+  val types_eq :fol_type list * fol_type list ->
+   (string * string) list * (string * string) list -> bool * ((string * string) list * (string * string) list)
+  val check_var_pairs: ''a * ''b -> (''a * ''b) list -> int
   end;
 
 structure ResClause : RES_CLAUSE =
@@ -233,6 +241,11 @@
 	tcon ^ (paren_pack tstrs)
     end;
 
+fun mk_fol_type ("Var",x,_) = AtomV(x)
+  | mk_fol_type ("Fixed",x,_) = AtomF(x)
+  | mk_fol_type ("Comp",con,args) = Comp(con,args)
+
+
 
 datatype type_literal = LTVar of string | LTFree of string;
 
@@ -342,6 +355,7 @@
       end;
 
 
+
 fun const_types_of (c,T) = types_of (!const_typargs (c,T));
 
 (* Any variables created via the METAHYPS tactical should be treated as