323 val kill_proofP = |
323 val kill_proofP = |
324 OuterSyntax.improper_command "kill_proof" "abort current proof" K.control |
324 OuterSyntax.improper_command "kill_proof" "abort current proof" K.control |
325 (Scan.succeed (Toplevel.print o Toplevel.proof_to_theory IsarThy.kill_proof)); |
325 (Scan.succeed (Toplevel.print o Toplevel.proof_to_theory IsarThy.kill_proof)); |
326 |
326 |
327 val qed_withP = |
327 val qed_withP = |
328 OuterSyntax.improper_command "qed_with" "conclude proof, may patch name and attributes" K.qed |
328 OuterSyntax.improper_command "qed_with" "conclude proof, may patch name and attributes" |
|
329 K.qed_block |
329 (Scan.option P.name -- Scan.option P.attribs -- Scan.option (P.method -- P.interest) |
330 (Scan.option P.name -- Scan.option P.attribs -- Scan.option (P.method -- P.interest) |
330 >> (uncurry IsarThy.global_qed_with)); |
331 >> (uncurry IsarThy.global_qed_with)); |
331 |
332 |
332 val qedP = |
333 val qedP = |
333 OuterSyntax.command "qed" "conclude (sub-)proof" K.qed |
334 OuterSyntax.command "qed" "conclude (sub-)proof" K.qed_block |
334 (Scan.option (P.method -- P.interest) >> IsarThy.qed); |
335 (Scan.option (P.method -- P.interest) >> IsarThy.qed); |
335 |
336 |
336 val terminal_proofP = |
337 val terminal_proofP = |
337 OuterSyntax.command "by" "terminal backward proof" K.qed |
338 OuterSyntax.command "by" "terminal backward proof" K.qed |
338 (P.method -- P.interest >> IsarThy.terminal_proof); |
339 (P.method -- P.interest >> IsarThy.terminal_proof); |
523 print_ast_translationP, token_translationP, oracleP, |
528 print_ast_translationP, token_translationP, oracleP, |
524 (*proof commands*) |
529 (*proof commands*) |
525 theoremP, lemmaP, showP, haveP, thusP, henceP, assumeP, fixP, letP, |
530 theoremP, lemmaP, showP, haveP, thusP, henceP, assumeP, fixP, letP, |
526 thenP, fromP, factsP, beginP, endP, nextP, kill_proofP, qed_withP, |
531 thenP, fromP, factsP, beginP, endP, nextP, kill_proofP, qed_withP, |
527 qedP, terminal_proofP, immediate_proofP, default_proofP, refineP, |
532 qedP, terminal_proofP, immediate_proofP, default_proofP, refineP, |
528 then_refineP, proofP, clear_undoP, undoP, redoP, undosP, backP, |
533 then_refineP, proofP, cannot_undoP, clear_undoP, undoP, redoP, |
529 prevP, upP, topP, |
534 undosP, backP, prevP, upP, topP, |
530 (*diagnostic commands*) |
535 (*diagnostic commands*) |
531 print_commandsP, print_theoryP, print_syntaxP, print_attributesP, |
536 print_commandsP, print_theoryP, print_syntaxP, print_attributesP, |
532 print_methodsP, print_theoremsP, print_bindsP, print_lthmsP, |
537 print_methodsP, print_theoremsP, print_bindsP, print_lthmsP, |
533 print_thmsP, print_propP, print_termP, print_typeP, |
538 print_thmsP, print_propP, print_termP, print_typeP, |
534 (*system commands*) |
539 (*system commands*) |