src/HOL/Tools/datatype_package.ML
changeset 26343 0dd2eab7b296
parent 26336 a0e2b706ce73
child 26496 49ae9456eba9
equal deleted inserted replaced
26342:0f65fa163304 26343:0dd2eab7b296
   389       (EVERY [rtac eq_reflection 1, rtac iffI 1, rtac notE 1,
   389       (EVERY [rtac eq_reflection 1, rtac iffI 1, rtac notE 1,
   390         atac 2, resolve_tac thms 1, etac FalseE 1]))
   390         atac 2, resolve_tac thms 1, etac FalseE 1]))
   391   | ManyConstrs (thm, simpset) =>
   391   | ManyConstrs (thm, simpset) =>
   392       let
   392       let
   393         val [In0_inject, In1_inject, In0_not_In1, In1_not_In0] =
   393         val [In0_inject, In1_inject, In0_not_In1, In1_not_In0] =
   394           map (fn a => get_thm (ThyInfo.the_theory "Datatype" thy) (Facts.Named (a, NONE)))
   394           map (PureThy.get_thm (ThyInfo.the_theory "Datatype" thy))
   395             ["In0_inject", "In1_inject", "In0_not_In1", "In1_not_In0"];
   395             ["In0_inject", "In1_inject", "In0_not_In1", "In1_not_In0"];
   396       in
   396       in
   397         Goal.prove (Simplifier.the_context ss) [] [] eq_t (K
   397         Goal.prove (Simplifier.the_context ss) [] [] eq_t (K
   398         (EVERY [rtac eq_reflection 1, rtac iffI 1, dtac thm 1,
   398         (EVERY [rtac eq_reflection 1, rtac iffI 1, dtac thm 1,
   399           full_simp_tac (Simplifier.inherit_context ss simpset) 1,
   399           full_simp_tac (Simplifier.inherit_context ss simpset) 1,