412 |
412 |
413 val calc_args = |
413 val calc_args = |
414 Scan.option (P.$$$ "(" |-- P.!!! ((P.xthms1 --| P.$$$ ")") -- P.interest)); |
414 Scan.option (P.$$$ "(" |-- P.!!! ((P.xthms1 --| P.$$$ ")") -- P.interest)); |
415 |
415 |
416 val alsoP = |
416 val alsoP = |
417 OuterSyntax.command "also" "intermediate calculational proof step" K.prf_decl |
417 OuterSyntax.command "also" "combine calculation and current facts" K.prf_decl |
418 (calc_args -- P.marg_comment >> IsarThy.also); |
418 (calc_args -- P.marg_comment >> IsarThy.also); |
419 |
419 |
420 val finallyP = |
420 val finallyP = |
421 OuterSyntax.command "finally" "terminal calculational proof step" K.prf_chain |
421 OuterSyntax.command "finally" "combine calculation and current facts, exhibit result" K.prf_chain |
422 (calc_args -- P.marg_comment >> IsarThy.finally); |
422 (calc_args -- P.marg_comment >> IsarThy.finally); |
|
423 |
|
424 val moreoverP = |
|
425 OuterSyntax.command "moreover" "augment calculation by current facts" K.prf_decl |
|
426 (P.marg_comment >> IsarThy.moreover); |
423 |
427 |
424 |
428 |
425 (* proof navigation *) |
429 (* proof navigation *) |
426 |
430 |
427 val backP = |
431 val backP = |
636 (*proof commands*) |
640 (*proof commands*) |
637 theoremP, lemmaP, showP, haveP, thusP, henceP, assumeP, presumeP, |
641 theoremP, lemmaP, showP, haveP, thusP, henceP, assumeP, presumeP, |
638 defP, fixP, letP, caseP, thenP, fromP, withP, noteP, beginP, endP, |
642 defP, fixP, letP, caseP, thenP, fromP, withP, noteP, beginP, endP, |
639 nextP, qedP, terminal_proofP, immediate_proofP, default_proofP, |
643 nextP, qedP, terminal_proofP, immediate_proofP, default_proofP, |
640 skip_proofP, forget_proofP, deferP, preferP, applyP, apply_endP, |
644 skip_proofP, forget_proofP, deferP, preferP, applyP, apply_endP, |
641 proofP, alsoP, finallyP, backP, cannot_undoP, clear_undosP, redoP, |
645 proofP, alsoP, finallyP, moreoverP, backP, cannot_undoP, |
642 undos_proofP, undoP, killP, |
646 clear_undosP, redoP, undos_proofP, undoP, killP, |
643 (*diagnostic commands*) |
647 (*diagnostic commands*) |
644 pretty_setmarginP, print_commandsP, print_contextP, print_theoryP, |
648 pretty_setmarginP, print_commandsP, print_contextP, print_theoryP, |
645 print_syntaxP, print_theoremsP, print_attributesP, print_methodsP, |
649 print_syntaxP, print_theoremsP, print_attributesP, print_methodsP, |
646 thms_containingP, print_bindsP, print_lthmsP, print_casesP, |
650 thms_containingP, print_bindsP, print_lthmsP, print_casesP, |
647 print_thmsP, print_propP, print_termP, print_typeP, |
651 print_thmsP, print_propP, print_termP, print_typeP, |