src/HOL/Tools/BNF/bnf_fp_def_sugar_tactics.ML
changeset 56245 84fc7dfa3cd4
parent 55966 972f0aa7091b
child 56765 644f0d4820a1
equal deleted inserted replaced
56244:3298b7a2795a 56245:84fc7dfa3cd4
    44       mem_Collect_eq prod_set_simps map_sum.simps sum_set_simps};
    44       mem_Collect_eq prod_set_simps map_sum.simps sum_set_simps};
    45 val sumprod_thms_rel = @{thms rel_prod_apply rel_sum_simps id_apply};
    45 val sumprod_thms_rel = @{thms rel_prod_apply rel_sum_simps id_apply};
    46 
    46 
    47 fun hhf_concl_conv cv ctxt ct =
    47 fun hhf_concl_conv cv ctxt ct =
    48   (case Thm.term_of ct of
    48   (case Thm.term_of ct of
    49     Const (@{const_name all}, _) $ Abs _ =>
    49     Const (@{const_name Pure.all}, _) $ Abs _ =>
    50     Conv.arg_conv (Conv.abs_conv (hhf_concl_conv cv o snd) ctxt) ct
    50     Conv.arg_conv (Conv.abs_conv (hhf_concl_conv cv o snd) ctxt) ct
    51   | _ => Conv.concl_conv ~1 cv ct);
    51   | _ => Conv.concl_conv ~1 cv ct);
    52 
    52 
    53 fun co_induct_inst_as_projs ctxt k thm =
    53 fun co_induct_inst_as_projs ctxt k thm =
    54   let
    54   let