equal
deleted
inserted
replaced
766 |
766 |
767 fun standard_tac ctxt facts = |
767 fun standard_tac ctxt facts = |
768 HEADGOAL (Method.some_rule_tac ctxt [] facts) ORELSE |
768 HEADGOAL (Method.some_rule_tac ctxt [] facts) ORELSE |
769 standard_intro_classes_tac ctxt facts; |
769 standard_intro_classes_tac ctxt facts; |
770 |
770 |
771 fun default_tac ctxt facts st = |
|
772 (if Method.detect_closure_state st then |
|
773 legacy_feature |
|
774 ("Old method \"default\"; use \"standard\" instead" ^ Position.here (Position.thread_data ())) |
|
775 else (); |
|
776 standard_tac ctxt facts st); |
|
777 |
|
778 val _ = Theory.setup |
771 val _ = Theory.setup |
779 (Method.setup @{binding intro_classes} (Scan.succeed (METHOD o intro_classes_tac)) |
772 (Method.setup @{binding intro_classes} (Scan.succeed (METHOD o intro_classes_tac)) |
780 "back-chain introduction rules of classes" #> |
773 "back-chain introduction rules of classes" #> |
781 Method.setup @{binding standard} (Scan.succeed (METHOD o standard_tac)) |
774 Method.setup @{binding standard} (Scan.succeed (METHOD o standard_tac)) |
782 "standard proof step: Pure intro/elim rule or class introduction" #> |
775 "standard proof step: Pure intro/elim rule or class introduction"); |
783 Method.setup @{binding default} (Scan.succeed (METHOD o default_tac)) |
|
784 "standard proof step: Pure intro/elim rule or class introduction (legacy)"); |
|
785 |
776 |
786 |
777 |
787 |
778 |
788 (** diagnostics **) |
779 (** diagnostics **) |
789 |
780 |