src/HOL/Tools/legacy_transfer.ML
changeset 60784 4f590c08fd5d
parent 59621 291934bac95e
child 61476 1884c40f1539
equal deleted inserted replaced
60783:495bede1c4d9 60784:4f590c08fd5d
   128       |> Assumption.add_assumes (map transform c_vars');
   128       |> Assumption.add_assumes (map transform c_vars');
   129     val simpset =
   129     val simpset =
   130       put_simpset HOL_ss ctxt5 addsimps (inj @ embed @ return)
   130       put_simpset HOL_ss ctxt5 addsimps (inj @ embed @ return)
   131       |> fold Simplifier.add_cong cong;
   131       |> fold Simplifier.add_cong cong;
   132     val thm' = thm
   132     val thm' = thm
   133       |> Drule.cterm_instantiate (c_vars ~~ c_exprs')
   133       |> infer_instantiate ctxt5 (map (#1 o dest_Var o Thm.term_of) c_vars ~~ c_exprs')
   134       |> fold_rev Thm.implies_intr (map Thm.cprop_of hyps)
   134       |> fold_rev Thm.implies_intr (map Thm.cprop_of hyps)
   135       |> Simplifier.asm_full_simplify simpset
   135       |> Simplifier.asm_full_simplify simpset
   136   in singleton (Variable.export ctxt5 ctxt1) thm' end;
   136   in singleton (Variable.export ctxt5 ctxt1) thm' end;
   137 
   137 
   138 fun transfer_thm_multiple insts leave ctxt thm =
   138 fun transfer_thm_multiple insts leave ctxt thm =