src/HOL/intr_elim.ML
changeset 4089 96fba19bcbe2
parent 3978 7e1cfed19d94
equal deleted inserted replaced
4088:9be9e39fd862 4089:96fba19bcbe2
   122  *)
   122  *)
   123 fun con_elim_tac simps =
   123 fun con_elim_tac simps =
   124   let val elim_tac = REPEAT o (eresolve_tac (Ind_Syntax.elim_rls @ 
   124   let val elim_tac = REPEAT o (eresolve_tac (Ind_Syntax.elim_rls @ 
   125                                              Ind_Syntax.sumprod_free_SEs))
   125                                              Ind_Syntax.sumprod_free_SEs))
   126   in ALLGOALS(EVERY'[elim_tac,
   126   in ALLGOALS(EVERY'[elim_tac,
   127                      asm_full_simp_tac (simpset_of "Nat" addsimps simps),
   127                      asm_full_simp_tac (simpset_of Nat.thy addsimps simps),
   128                      elim_tac,
   128                      elim_tac,
   129                      REPEAT o bound_hyp_subst_tac])
   129                      REPEAT o bound_hyp_subst_tac])
   130      THEN prune_params_tac
   130      THEN prune_params_tac
   131   end;
   131   end;
   132 
   132 
   149 
   149 
   150   val raw_induct = standard ([big_rec_def, mono] MRS Fp.induct)
   150   val raw_induct = standard ([big_rec_def, mono] MRS Fp.induct)
   151   and rec_names = rec_names
   151   and rec_names = rec_names
   152   end
   152   end
   153 end;
   153 end;
   154