equal
deleted
inserted
replaced
69 val introN = "intro"; |
69 val introN = "intro"; |
70 val elimN = "elim"; |
70 val elimN = "elim"; |
71 val destN = "dest"; |
71 val destN = "dest"; |
72 |
72 |
73 fun modifier name kind kind' att = |
73 fun modifier name kind kind' att = |
74 Args.$$$ name |-- (kind >> K NONE || kind' |-- OuterParse.nat --| Args.colon >> SOME) |
74 Args.$$$ name |-- (kind >> K NONE || kind' |-- Parse.nat --| Args.colon >> SOME) |
75 >> (pair (I: Proof.context -> Proof.context) o att); |
75 >> (pair (I: Proof.context -> Proof.context) o att); |
76 |
76 |
77 val modifiers = |
77 val modifiers = |
78 [modifier destN Args.bang_colon Args.bang Context_Rules.dest_bang, |
78 [modifier destN Args.bang_colon Args.bang Context_Rules.dest_bang, |
79 modifier destN Args.colon (Scan.succeed ()) Context_Rules.dest, |
79 modifier destN Args.colon (Scan.succeed ()) Context_Rules.dest, |
85 |
85 |
86 in |
86 in |
87 |
87 |
88 fun method_setup name = |
88 fun method_setup name = |
89 Method.setup name |
89 Method.setup name |
90 (Scan.lift (Scan.option OuterParse.nat) --| Method.sections modifiers >> |
90 (Scan.lift (Scan.option Parse.nat) --| Method.sections modifiers >> |
91 (fn opt_lim => fn ctxt => |
91 (fn opt_lim => fn ctxt => |
92 SIMPLE_METHOD' (Object_Logic.atomize_prems_tac THEN' prover_tac ctxt opt_lim))) |
92 SIMPLE_METHOD' (Object_Logic.atomize_prems_tac THEN' prover_tac ctxt opt_lim))) |
93 "intuitionistic proof search"; |
93 "intuitionistic proof search"; |
94 |
94 |
95 end; |
95 end; |