src/HOL/Tools/BNF/bnf_fp_def_sugar.ML
changeset 60728 26ffdb966759
parent 60152 7b051a6c9e28
child 60737 685b169d0611
equal deleted inserted replaced
60727:53697011b03a 60728:26ffdb966759
   894         let val goals = map2 (mk_parametricity_goal names_lthy Rs) discAs discBs in
   894         let val goals = map2 (mk_parametricity_goal names_lthy Rs) discAs discBs in
   895           if null goals then
   895           if null goals then
   896             []
   896             []
   897           else
   897           else
   898             Goal.prove_sorry lthy [] [] (Logic.mk_conjunction_balanced goals)
   898             Goal.prove_sorry lthy [] [] (Logic.mk_conjunction_balanced goals)
   899               (K (mk_disc_transfer_tac (the_single rel_sel_thms) (the_single exhaust_discs)
   899               (fn {context = ctxt, prems = _} => mk_disc_transfer_tac ctxt (the_single rel_sel_thms)
   900                  (flat (flat distinct_discsss))))
   900                  (the_single exhaust_discs) (flat (flat distinct_discsss)))
   901             |> Conjunction.elim_balanced (length goals)
   901             |> Conjunction.elim_balanced (length goals)
   902             |> Proof_Context.export names_lthy lthy
   902             |> Proof_Context.export names_lthy lthy
   903             |> map Thm.close_derivation
   903             |> map Thm.close_derivation
   904         end;
   904         end;
   905 
   905