-
Notifications
You must be signed in to change notification settings - Fork 45
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
Add documentation to run Kani on single harnesses #85
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Thank you for your contribution!
Is this still true despite the "Step 4" that you added? |
@tautschnig Yes I get the same error message with this command. |
Co-authored-by: Jaisurya Nanduri <91620234+jaisnan@users.noreply.github.com>
This might be because --harness and --harness --exact are for individual harnesses and exact harnesses. --harnesses can be used with prefixes, buts it does not verify all harness in a module if you specify it. This is very much an active design choice. If you'd like to change that to recognize all harness in a file or module, you can file a feature request on the kani page :) Can you specify which exact harness you want to verify as opposed to stopping at the module, and see if that fixes the error? We can clarify that in the documentation. |
@jaisnan I could not get Kani to locate any proofs in |
I did not put these proofs in a new file no, I think the documentation should make it clear that you should try it out by putting the proofs inside an existing file like @QinyuanWu I've issued a PR that makes changes that should clarify the introduction and the --harness command. Once that's merged, you can still add your "step 4" section on top of my changes. Does that work for you? |
Minor changes to documentation to clarify some confusion and make it more accessible. Related to :- #85 By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 and MIT licenses. --------- Co-authored-by: Carolyn Zech <cmzech@amazon.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ty! Lgtm now.
) Minor changes to documentation to clarify some confusion and make it more accessible. Related to :- model-checking#85 By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 and MIT licenses. --------- Co-authored-by: Carolyn Zech <cmzech@amazon.com>
This PR adds to the documentation in the Verification Tools->Kani section of the [challenge book](https://model-checking.github.io/verify-rust-std/tools/kani.html). ### Changes - New step to help Kani user run specific proofs and identify harness full names. ### Issue I tried to follow step 1 & 2 but Kani could not find the harnesses in the example code. At this point there are many proofs in the library so I couldn't find the full name of the harness in the example code by just running all proofs. I tried to move `example.rs` into `library/core/src/ptr/` and use `--harness ptr::verify::example` or `--harness dummy_proof` but both got `error: no harnesses matched the harness filter`. --------- Co-authored-by: Jaisurya Nanduri <91620234+jaisnan@users.noreply.github.com> Co-authored-by: Felipe R. Monteiro <rms.felipe@gmail.com>
This PR adds to the documentation in the Verification Tools->Kani section of the challenge book.
Changes
-Z mem-predicate
to avoid unstable feature errors.❗ Issue
I tried to follow step 1 & 2 but kani could not find the harnesses in the example code. At this point there are many proofs in the library so I couldn't find the fullname of the harness in the example code by just running all proofs. I tried to move
example.rs
intolibrary/core/src/ptr/
and use--harness ptr::verify::example
or--harness dummy_proof
but both goterror: no harnesses matched the harness filter
. Please let me know if you are successful or running into the same issue.