# HG changeset patch # User wenzelm # Date 1154550397 -7200 # Node ID 4cf8e86a2d293b71b62d1047922d4a888a12f923 # Parent 23f5cd23c1e1541b72e673d8c6c20427c424bd0c removed obsolete Drule.frees/vars_of etc.; diff -r 23f5cd23c1e1 -r 4cf8e86a2d29 src/HOL/Import/proof_kernel.ML --- a/src/HOL/Import/proof_kernel.ML Wed Aug 02 18:33:46 2006 +0200 +++ b/src/HOL/Import/proof_kernel.ML Wed Aug 02 22:26:37 2006 +0200 @@ -2199,8 +2199,10 @@ [NONE, NONE, NONE, SOME (cterm_of thy' (Free ("a", aty))), SOME (cterm_of thy' (Free ("r", tT)))] typedef_hol2hollight val th4 = (#type_definition typedef_info) RS typedef_hol2hollight' - val _ = if Drule.tvars_of th4 = [] then () else raise ERR "type_introduction" "no type variables expected any more" - val _ = if Drule.vars_of th4 = [] then () else raise ERR "type_introduction" "no term variables expected any more" + val _ = null (Drule.fold_terms Term.add_tvars th4 []) orelse + raise ERR "type_introduction" "no type variables expected any more" + val _ = null (Drule.fold_terms Term.add_vars th4 []) orelse + raise ERR "type_introduction" "no term variables expected any more" val _ = message ("step 3: thyname="^thyname^", tycname="^tycname^", fulltyname="^fulltyname) val thy'' = add_hol4_type_mapping thyname tycname true fulltyname thy' val _ = ImportRecorder.add_hol_type_mapping thyname tycname fulltyname diff -r 23f5cd23c1e1 -r 4cf8e86a2d29 src/HOL/Tools/datatype_realizer.ML --- a/src/HOL/Tools/datatype_realizer.ML Wed Aug 02 18:33:46 2006 +0200 +++ b/src/HOL/Tools/datatype_realizer.ML Wed Aug 02 22:26:37 2006 +0200 @@ -136,9 +136,8 @@ ((space_implode "_" (ind_name :: vs @ ["correctness"]), thm), []) ||> Theory.restore_naming thy; - val ivs = Drule.vars_of_terms - [Logic.varify (DatatypeProp.make_ind [descr] sorts)]; - val rvs = Drule.vars_of_terms [prop_of thm']; + val ivs = rev (Term.add_vars (Logic.varify (DatatypeProp.make_ind [descr] sorts)) []); + val rvs = rev (Drule.fold_terms Term.add_vars thm' []); val ivs1 = map Var (filter_out (fn (_, T) => tname_of (body_type T) mem ["set", "bool"]) ivs); val ivs2 = map (fn (ixn, _) => Var (ixn, valOf (AList.lookup (op =) rvs ixn))) ivs; diff -r 23f5cd23c1e1 -r 4cf8e86a2d29 src/Pure/codegen.ML --- a/src/Pure/codegen.ML Wed Aug 02 18:33:46 2006 +0200 +++ b/src/Pure/codegen.ML Wed Aug 02 22:26:37 2006 +0200 @@ -534,7 +534,7 @@ fun rename_terms ts = let val names = foldr add_term_names - (map (fst o fst) (Drule.vars_of_terms ts)) ts; + (map (fst o fst) (rev (fold Term.add_vars ts []))) ts; val reserved = names inter ThmDatabase.ml_reserved; val (illegal, alt_names) = split_list (map_filter (fn s => let val s' = mk_id s in if s = s' then NONE else SOME (s, s') end) names)