src/Pure/meta_simplifier.ML
changeset 33037 b22e44496dc2
parent 32797 2e8fae2d998c
child 33038 8f9594c31de4
equal deleted inserted replaced
33015:575bd6548df9 33037:b22e44496dc2
   862 (*Behaves like unconditional rule if rhs does not contain vars not in the lhs.
   862 (*Behaves like unconditional rule if rhs does not contain vars not in the lhs.
   863   Otherwise those vars may become instantiated with unnormalized terms
   863   Otherwise those vars may become instantiated with unnormalized terms
   864   while the premises are solved.*)
   864   while the premises are solved.*)
   865 
   865 
   866 fun cond_skel (args as (_, (lhs, rhs))) =
   866 fun cond_skel (args as (_, (lhs, rhs))) =
   867   if Term.add_vars rhs [] subset Term.add_vars lhs [] then uncond_skel args
   867   if gen_subset (op =) (Term.add_vars rhs [], Term.add_vars lhs []) then uncond_skel args
   868   else skel0;
   868   else skel0;
   869 
   869 
   870 (*
   870 (*
   871   Rewriting -- we try in order:
   871   Rewriting -- we try in order:
   872     (1) beta reduction
   872     (1) beta reduction