src/HOL/Tools/Datatype/datatype_abs_proofs.ML
changeset 33459 a4a38ed813f7
parent 33338 de76079f973a
child 33643 b275f26a638b
equal deleted inserted replaced
33458:ae1f5d89b082 33459:a4a38ed813f7
   336     val case_thms = map (map (fn t => Skip_Proof.prove_global thy2 [] [] t
   336     val case_thms = map (map (fn t => Skip_Proof.prove_global thy2 [] [] t
   337       (fn _ => EVERY [rewrite_goals_tac (case_defs @ map mk_meta_eq primrec_thms), rtac refl 1])))
   337       (fn _ => EVERY [rewrite_goals_tac (case_defs @ map mk_meta_eq primrec_thms), rtac refl 1])))
   338           (DatatypeProp.make_cases new_type_names descr sorts thy2)
   338           (DatatypeProp.make_cases new_type_names descr sorts thy2)
   339   in
   339   in
   340     thy2
   340     thy2
   341     |> Context.the_theory o fold (fold Nitpick_Simps.add_thm) case_thms
   341     |> Context.theory_map ((fold o fold) Nitpick_Simps.add_thm case_thms)
   342        o Context.Theory
       
   343     |> Sign.parent_path
   342     |> Sign.parent_path
   344     |> store_thmss "cases" new_type_names case_thms
   343     |> store_thmss "cases" new_type_names case_thms
   345     |-> (fn thmss => pair (thmss, case_names))
   344     |-> (fn thmss => pair (thmss, case_names))
   346   end;
   345   end;
   347 
   346