src/HOL/Tools/inductive_realizer.ML
changeset 56254 a2dd9200854d
parent 56245 84fc7dfa3cd4
child 58111 82db9ad610b9
equal deleted inserted replaced
56253:83b3c110f22d 56254:a2dd9200854d
    51      (case strip_type T of
    51      (case strip_type T of
    52         (_, Type (s, _)) => if s = @{type_name bool} then (a, T) :: vs else vs
    52         (_, Type (s, _)) => if s = @{type_name bool} then (a, T) :: vs else vs
    53       | _ => vs)) (Term.add_vars prop []) [];
    53       | _ => vs)) (Term.add_vars prop []) [];
    54 
    54 
    55 val attach_typeS = map_types (map_atyps
    55 val attach_typeS = map_types (map_atyps
    56   (fn TFree (s, []) => TFree (s, HOLogic.typeS)
    56   (fn TFree (s, []) => TFree (s, @{sort type})
    57     | TVar (ixn, []) => TVar (ixn, HOLogic.typeS)
    57     | TVar (ixn, []) => TVar (ixn, @{sort type})
    58     | T => T));
    58     | T => T));
    59 
    59 
    60 fun dt_of_intrs thy vs nparms intrs =
    60 fun dt_of_intrs thy vs nparms intrs =
    61   let
    61   let
    62     val iTs = rev (Term.add_tvars (prop_of (hd intrs)) []);
    62     val iTs = rev (Term.add_tvars (prop_of (hd intrs)) []);