equal
deleted
inserted
replaced
798 |> curry betapply sel |
798 |> curry betapply sel |
799 |> rpair (abstract (List.rev fun_args) rhs_term) |
799 |> rpair (abstract (List.rev fun_args) rhs_term) |
800 |> HOLogic.mk_Trueprop o HOLogic.mk_eq |
800 |> HOLogic.mk_Trueprop o HOLogic.mk_eq |
801 |> curry Logic.list_implies (map HOLogic.mk_Trueprop prems) |
801 |> curry Logic.list_implies (map HOLogic.mk_Trueprop prems) |
802 |> curry Logic.list_all (map dest_Free fun_args); |
802 |> curry Logic.list_all (map dest_Free fun_args); |
803 val (distincts, _, _, sel_splits, sel_split_asms) = case_thms_of_term lthy [] rhs_term; |
803 val (distincts, _, sel_splits, sel_split_asms) = case_thms_of_term lthy [] rhs_term; |
804 in |
804 in |
805 mk_primcorec_sel_tac lthy def_thms distincts sel_splits sel_split_asms nested_maps |
805 mk_primcorec_sel_tac lthy def_thms distincts sel_splits sel_split_asms nested_maps |
806 nested_map_idents nested_map_comps sel_corec k m exclsss |
806 nested_map_idents nested_map_comps sel_corec k m exclsss |
807 |> K |> Goal.prove lthy [] [] t |
807 |> K |> Goal.prove lthy [] [] t |
808 |> pair sel |
808 |> pair sel |