Skip to content
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

Unique names for goals #324

Closed
jldodds opened this issue Dec 3, 2018 · 2 comments
Closed

Unique names for goals #324

jldodds opened this issue Dec 3, 2018 · 2 comments
Assignees
Milestone

Comments

@jldodds
Copy link
Contributor

jldodds commented Dec 3, 2018

A common idiom for debugging failing proofs is to print the goal in a tactic prior to proving it. Currently, a goal will be made up of multiple goals, some of which might share a name, e.g.
Goal s2n_hmac_init (safety assertion: literal equality postcondition). Looking at the proof term, it then takes additional effort to discover which goal has failed.

Possible solutions that would make this workflow easier include

  • Number all goals
  • Provide SAW line numbers the goals were created on in the name
  • Provide a tactic that prints or returns the goal that failed
@atomb atomb added this to the 1.0 milestone Jun 4, 2019
@atomb atomb modified the milestones: 0.5, 0.6 Apr 27, 2020
@atomb atomb modified the milestones: 0.6, 0.7 Aug 20, 2020
@brianhuffman
Copy link
Contributor

We already number saw-core proof goals. We should just make sure to always print out the goal number along with the name.

@brianhuffman brianhuffman self-assigned this Oct 16, 2020
@atomb atomb modified the milestones: 0.7, 0.8 Dec 14, 2020
@atomb atomb modified the milestones: 0.8, 0.9 Apr 19, 2021
@RyanGlScott
Copy link
Contributor

print_goal now prints out the goal number as of 2e494e4. I'll going and close this, but feel free to reopen if there is something else remaining to be done.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants