equal
deleted
inserted
replaced
387 FIRST' [resolve_tac (trivialities @ Raw_Simplifier.prems_of ctxt), assume_tac]; |
387 FIRST' [resolve_tac (trivialities @ Raw_Simplifier.prems_of ctxt), assume_tac]; |
388 val unsafe_solver = mk_solver "easy unsafe" unsafe_solver_tac; |
388 val unsafe_solver = mk_solver "easy unsafe" unsafe_solver_tac; |
389 |
389 |
390 (*no premature instantiation of variables during simplification*) |
390 (*no premature instantiation of variables during simplification*) |
391 fun safe_solver_tac ctxt = |
391 fun safe_solver_tac ctxt = |
392 FIRST' [match_tac (trivialities @ Raw_Simplifier.prems_of ctxt), eq_assume_tac]; |
392 FIRST' [match_tac ctxt (trivialities @ Raw_Simplifier.prems_of ctxt), eq_assume_tac]; |
393 val safe_solver = mk_solver "easy safe" safe_solver_tac; |
393 val safe_solver = mk_solver "easy safe" safe_solver_tac; |
394 |
394 |
395 fun mk_eq thm = |
395 fun mk_eq thm = |
396 if can Logic.dest_equals (Thm.concl_of thm) then [thm] |
396 if can Logic.dest_equals (Thm.concl_of thm) then [thm] |
397 else [thm RS reflect] handle THM _ => []; |
397 else [thm RS reflect] handle THM _ => []; |