src/Pure/raw_simplifier.ML
changeset 70528 9b3610fe74d6
parent 70472 cf66d2db97fe
child 70586 57df8a85317a
equal deleted inserted replaced
70527:095e6459d3da 70528:9b3610fe74d6
   903 
   903 
   904 
   904 
   905 (* mk_procrule *)
   905 (* mk_procrule *)
   906 
   906 
   907 fun mk_procrule ctxt thm =
   907 fun mk_procrule ctxt thm =
   908   let val (prems, lhs, elhs, rhs, _) = decomp_simp thm in
   908   let
       
   909     val (prems, lhs, elhs, rhs, _) = decomp_simp thm
       
   910     val thm' = Thm.close_derivation \<^here> thm;
       
   911   in
   909     if rewrite_rule_extra_vars prems lhs rhs
   912     if rewrite_rule_extra_vars prems lhs rhs
   910     then (cond_warning ctxt (fn () => print_thm ctxt "Extra vars on rhs:" ("", thm)); [])
   913     then (cond_warning ctxt (fn () => print_thm ctxt "Extra vars on rhs:" ("", thm)); [])
   911     else [mk_rrule2 {thm = thm, name = "", lhs = lhs, elhs = elhs, perm = false}]
   914     else [mk_rrule2 {thm = thm', name = "", lhs = lhs, elhs = elhs, perm = false}]
   912   end;
   915   end;
   913 
   916 
   914 
   917 
   915 (* rewritec: conversion to apply the meta simpset to a term *)
   918 (* rewritec: conversion to apply the meta simpset to a term *)
   916 
   919