equal
deleted
inserted
replaced
72 val global_claset_of : theory -> claset |
72 val global_claset_of : theory -> claset |
73 val claset_of : Proof.context -> claset |
73 val claset_of : Proof.context -> claset |
74 |
74 |
75 val fast_tac : claset -> int -> tactic |
75 val fast_tac : claset -> int -> tactic |
76 val slow_tac : claset -> int -> tactic |
76 val slow_tac : claset -> int -> tactic |
77 val weight_ASTAR : int ref |
77 val weight_ASTAR : int Unsynchronized.ref |
78 val astar_tac : claset -> int -> tactic |
78 val astar_tac : claset -> int -> tactic |
79 val slow_astar_tac : claset -> int -> tactic |
79 val slow_astar_tac : claset -> int -> tactic |
80 val best_tac : claset -> int -> tactic |
80 val best_tac : claset -> int -> tactic |
81 val first_best_tac : claset -> int -> tactic |
81 val first_best_tac : claset -> int -> tactic |
82 val slow_best_tac : claset -> int -> tactic |
82 val slow_best_tac : claset -> int -> tactic |
744 ObjectLogic.atomize_prems_tac THEN' |
744 ObjectLogic.atomize_prems_tac THEN' |
745 SELECT_GOAL (BEST_FIRST (has_fewer_prems 1, sizef) (slow_step_tac cs 1)); |
745 SELECT_GOAL (BEST_FIRST (has_fewer_prems 1, sizef) (slow_step_tac cs 1)); |
746 |
746 |
747 |
747 |
748 (***ASTAR with weight weight_ASTAR, by Norbert Voelker*) |
748 (***ASTAR with weight weight_ASTAR, by Norbert Voelker*) |
749 val weight_ASTAR = ref 5; |
749 val weight_ASTAR = Unsynchronized.ref 5; |
750 |
750 |
751 fun astar_tac cs = |
751 fun astar_tac cs = |
752 ObjectLogic.atomize_prems_tac THEN' |
752 ObjectLogic.atomize_prems_tac THEN' |
753 SELECT_GOAL |
753 SELECT_GOAL |
754 (ASTAR (has_fewer_prems 1, fn lev => fn thm => size_of_thm thm + !weight_ASTAR * lev) |
754 (ASTAR (has_fewer_prems 1, fn lev => fn thm => size_of_thm thm + !weight_ASTAR * lev) |