src/Pure/tactic.ML
changeset 15021 6012f983a79f
parent 15011 35be762f58f9
child 15442 3b75e1b22ff1
equal deleted inserted replaced
15020:fcbc73812e6c 15021:6012f983a79f
   488 
   488 
   489 
   489 
   490 (*** Meta-Rewriting Tactics ***)
   490 (*** Meta-Rewriting Tactics ***)
   491 
   491 
   492 val simple_prover =
   492 val simple_prover =
   493   SINGLE o (fn mss => ALLGOALS (resolve_tac (MetaSimplifier.prems_of_mss mss)));
   493   SINGLE o (fn ss => ALLGOALS (resolve_tac (MetaSimplifier.prems_of_ss ss)));
   494 
   494 
   495 val rewrite = MetaSimplifier.rewrite_aux simple_prover;
   495 val rewrite = MetaSimplifier.rewrite_aux simple_prover;
   496 val simplify = MetaSimplifier.simplify_aux simple_prover;
   496 val simplify = MetaSimplifier.simplify_aux simple_prover;
   497 val rewrite_rule = simplify true;
   497 val rewrite_rule = simplify true;
   498 val rewrite_goals_rule = MetaSimplifier.rewrite_goals_rule_aux simple_prover;
   498 val rewrite_goals_rule = MetaSimplifier.rewrite_goals_rule_aux simple_prover;
   499 
   499 
   500 fun rewrite_goal_tac rews =
   500 fun rewrite_goal_tac rews =
   501   MetaSimplifier.asm_rewrite_goal_tac (true, false, false) (K no_tac) (MetaSimplifier.ss_of rews);
   501   MetaSimplifier.asm_rewrite_goal_tac (true, false, false) (K no_tac)
       
   502     (MetaSimplifier.empty_ss addsimps rews);
   502 
   503 
   503 (*Rewrite throughout proof state. *)
   504 (*Rewrite throughout proof state. *)
   504 fun rewrite_tac defs = PRIMITIVE(rewrite_rule defs);
   505 fun rewrite_tac defs = PRIMITIVE(rewrite_rule defs);
   505 
   506 
   506 (*Rewrite subgoals only, not main goal. *)
   507 (*Rewrite subgoals only, not main goal. *)