src/HOL/thy_syntax.ML
changeset 4536 74f7c556fd90
parent 4226 38c91213f26b
child 4873 b5999638979e
equal deleted inserted replaced
4535:f24cebc299e4 4536:74f7c556fd90
   167       ^ quote tname ^ ")) \""^tname^"0\" 1,\n\
   167       ^ quote tname ^ ")) \""^tname^"0\" 1,\n\
   168     \            ALLGOALS Asm_simp_tac]);\n\
   168     \            ALLGOALS Asm_simp_tac]);\n\
   169     \val split_"^tname^"_case_asm = prove_goal thy (#2(split_"^tname^"_eqns))\n\
   169     \val split_"^tname^"_case_asm = prove_goal thy (#2(split_"^tname^"_eqns))\n\
   170     \  (fn _ => [#exhaust_tac (datatype_info thy (Sign.intern_tycon (sign_of thy) "
   170     \  (fn _ => [#exhaust_tac (datatype_info thy (Sign.intern_tycon (sign_of thy) "
   171       ^ quote tname ^ ")) \""^tname^"0\" 1,\n\
   171       ^ quote tname ^ ")) \""^tname^"0\" 1,\n\
   172     \            ALLGOALS Asm_simp_tac]);\n\
   172     \            ALLGOALS (asm_simp_tac (simpset() delsimps [split_paired_Ex]))]);\n\
   173     \val thy = thy\n";
   173     \val thy = thy\n";
   174 
   174 
   175 (*
   175 (*
   176 The #exhaust_tac(snd(hd(!datatypes))) in the proof of split_"^tname^"_case
   176 The #exhaust_tac(snd(hd(!datatypes))) in the proof of split_"^tname^"_case
   177 is a hack. Ideally I would just write exhaust_tac, but the latter extracts the
   177 is a hack. Ideally I would just write exhaust_tac, but the latter extracts the