equal
deleted
inserted
replaced
812 (th2, List.filter (not o restricted) (!tc_list)) |
812 (th2, List.filter (not o restricted) (!tc_list)) |
813 end; |
813 end; |
814 |
814 |
815 |
815 |
816 fun prove strict (ptm, tac) = |
816 fun prove strict (ptm, tac) = |
817 let val result = |
817 let |
818 if strict then OldGoals.prove_goalw_cterm [] ptm (fn _ => [tac]) |
818 val {thy, t, ...} = Thm.rep_cterm ptm; |
819 else |
819 val result = |
820 transform_error (fn () => |
820 if strict then Goal.prove thy [] [] t (K tac) |
821 OldGoals.prove_goalw_cterm [] ptm (fn _ => [tac])) () |
821 else Goal.prove thy [] [] t (K tac) |
822 handle ERROR_MESSAGE msg => (warning msg; raise RULES_ERR "prove" msg); |
822 handle ERROR_MESSAGE msg => (warning msg; raise RULES_ERR "prove" msg); |
823 in #1 (freeze_thaw result) end; |
823 in #1 (freeze_thaw (standard result)) end; |
824 |
|
825 |
824 |
826 end; |
825 end; |