equal
deleted
inserted
replaced
298 (map (fn (s, rs) => mk_realizes_eqn (not (s mem rsets)) vs nparms rs) rss); |
298 (map (fn (s, rs) => mk_realizes_eqn (not (s mem rsets)) vs nparms rs) rss); |
299 |
299 |
300 val thy1' = thy1 |> |
300 val thy1' = thy1 |> |
301 Theory.copy |> |
301 Theory.copy |> |
302 Sign.add_types (map (fn s => (Sign.base_name s, ar, NoSyn)) tnames) |> |
302 Sign.add_types (map (fn s => (Sign.base_name s, ar, NoSyn)) tnames) |> |
303 fold (fn s => AxClass.axiomatize_arity_i |
303 fold (fn s => AxClass.axiomatize_arity |
304 (s, replicate ar HOLogic.typeS, HOLogic.typeS)) tnames |> |
304 (s, replicate ar HOLogic.typeS, HOLogic.typeS)) tnames |> |
305 Extraction.add_typeof_eqns_i ty_eqs; |
305 Extraction.add_typeof_eqns_i ty_eqs; |
306 val dts = List.mapPartial (fn (s, rs) => if s mem rsets then |
306 val dts = List.mapPartial (fn (s, rs) => if s mem rsets then |
307 SOME (dt_of_intrs thy1' vs nparms rs) else NONE) rss; |
307 SOME (dt_of_intrs thy1' vs nparms rs) else NONE) rss; |
308 |
308 |