src/Pure/term.ML
changeset 16035 31bd65f7b22a
parent 15986 db3cd4fa9b19
child 16108 cf468b93a02e
equal deleted inserted replaced
16034:6ccd552ee366 16035:31bd65f7b22a
   191   val no_dummyT: typ -> typ
   191   val no_dummyT: typ -> typ
   192   val dummy_patternN: string
   192   val dummy_patternN: string
   193   val no_dummy_patterns: term -> term
   193   val no_dummy_patterns: term -> term
   194   val replace_dummy_patterns: int * term -> int * term
   194   val replace_dummy_patterns: int * term -> int * term
   195   val is_replaced_dummy_pattern: indexname -> bool
   195   val is_replaced_dummy_pattern: indexname -> bool
       
   196   val show_dummy_patterns: term -> term
   196   val adhoc_freeze_vars: term -> term * string list
   197   val adhoc_freeze_vars: term -> term * string list
   197   val string_of_vname: indexname -> string
   198   val string_of_vname: indexname -> string
   198   val string_of_vname': indexname -> string
   199   val string_of_vname': indexname -> string
   199   val string_of_term: term -> string
   200   val string_of_term: term -> string
   200 end;
   201 end;
  1101 val replace_dummy_patterns = replace_dummy [];
  1102 val replace_dummy_patterns = replace_dummy [];
  1102 
  1103 
  1103 fun is_replaced_dummy_pattern ("_dummy_", _) = true
  1104 fun is_replaced_dummy_pattern ("_dummy_", _) = true
  1104   | is_replaced_dummy_pattern _ = false;
  1105   | is_replaced_dummy_pattern _ = false;
  1105 
  1106 
       
  1107 fun show_dummy_patterns (Var (("_dummy_", _), T)) = Const ("dummy_pattern", T)
       
  1108   | show_dummy_patterns (t $ u) = show_dummy_patterns t $ show_dummy_patterns u
       
  1109   | show_dummy_patterns (Abs (x, T, t)) = Abs (x, T, show_dummy_patterns t)
       
  1110   | show_dummy_patterns a = a;
       
  1111 
  1106 
  1112 
  1107 (* adhoc freezing *)
  1113 (* adhoc freezing *)
  1108 
  1114 
  1109 fun adhoc_freeze_vars tm =
  1115 fun adhoc_freeze_vars tm =
  1110   let
  1116   let