-
Notifications
You must be signed in to change notification settings - Fork 92
Rocq proofs are not omitted when there are numbered selectors #821
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
For reproducing, this is |
Thanks for the report. I never use goal selectors, I simply forgot about them. |
Besides |
The toggle is macro generated for the menu, not to be discovered. The documentation recommends to configure proof-omit-proofs-option or select Proof-General -> Quick Options -> Processing -> Omit Proofs. |
Note also @upamanyus that an easy way to omit proofs consist in prepending the Try: It looks to me it'd be worth it to also document this in https://proofgeneral.github.io/doc/master/userman/Coq-Proof-General/#Omitting-proofs-for-speed WDYT, @hendriktews ? |
I see there "For both, proof-goto-point and proof-process-buffer, a prefix argument toggles the omit-proofs feature for one invocation." and a longer paragraph in the generic "Script processing commands" section. |
Ah indeed, good point @hendriktews. But maybe this is not clear enough for novice Emacs users? as in none of the two sections you mention, the exact string |
Problem
The second lemma in the following does not get skipped when proof omission is enabled:
Specifically, the numbered selector
1:
seems to be unsupported for proof omission. This Rocq feature is described in the "curl-braces" section here https://rocq-prover.org/doc/V9.0.0/refman/proofs/writing-proofs/proof-mode.html#curly-braces, though curly braces are not actually required.Possible fixes
Handling
1:{
seems doable by modifyingcoq-braces-regexp
(note that there could be whitespace in between).The other possibility is the
cmd
being1: tactic
like in the example above. It seems safe to omit any command starting withnatural:
, since one can only run tactics under a numbered selectors, not general Coq commands (likeHint
,Time
, etc.). So it could be as easy as adding another regexp to accept[0-9]+[:space:]*:
for omission incoq-cmd-prevents-proof-omission
.For now, I've managed to live with disabling
coq-cmd-prevents-proof-omission
by adding this to my local emacs configThe text was updated successfully, but these errors were encountered: