src/Pure/meta_simplifier.ML
changeset 12979 4c76bce4ce39
parent 12783 36ca5ea8092c
child 13196 08c42252346f
equal deleted inserted replaced
12978:16cc829b9c65 12979:4c76bce4ce39
   284       val perm = var_perm (term_of elhs, erhs) andalso not (term_of elhs aconv erhs)
   284       val perm = var_perm (term_of elhs, erhs) andalso not (term_of elhs aconv erhs)
   285                  andalso not (is_Var (term_of elhs))
   285                  andalso not (is_Var (term_of elhs))
   286   in (sign, prems, term_of lhs, elhs, term_of rhs, perm) end;
   286   in (sign, prems, term_of lhs, elhs, term_of rhs, perm) end;
   287 
   287 
   288 fun decomp_simp' thm =
   288 fun decomp_simp' thm =
   289   let val (_, _, _, elhs, rhs, _) = decomp_simp thm in
   289   let val (_, _, lhs, _, rhs, _) = decomp_simp thm in
   290     if Thm.nprems_of thm > 0 then raise SIMPLIFIER ("Bad conditional rewrite rule", thm)
   290     if Thm.nprems_of thm > 0 then raise SIMPLIFIER ("Bad conditional rewrite rule", thm)
   291     else (term_of elhs, rhs)
   291     else (lhs, rhs)
   292   end;
   292   end;
   293 
   293 
   294 fun mk_eq_True (Mss{mk_rews={mk_eq_True,...},...}) thm =
   294 fun mk_eq_True (Mss{mk_rews={mk_eq_True,...},...}) thm =
   295   case mk_eq_True thm of
   295   case mk_eq_True thm of
   296     None => []
   296     None => []