-
Notifications
You must be signed in to change notification settings - Fork 41
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
Challenge 8: Contracts for SmallSort
#56
Comments
SmallSort
Hi, I have a few questions about this challenge. Missing safety requirementI believe EDIT: I've opened the following issue: rust-lang#135984. Can the absence of "invalid values" be verified with a separate tool?"Invalid values" refer to the following scenario: If the input array is I believe this requires a separate tool because verifying with How arbitrary does
|
Thank you. The safety comments should be updated in the upstream if the proof shows that the current comments is actually not enough.
Yes, other tools are welcome.
The ultimate goal is to prove the correctness for arbitrary types and arbitrary ordering. However, we understand that model arbitrary ordering itself is very challenging. So proofs for primitive types with default ordering will be considered as a solid solutions. |
We expect to run all proof on CI. So ideally the running time of a single proof should be less than ~2 minutes on a GitHub standard runner. However, if the proof is running into the limitation of Kani/CBMC, we suggest you to open a PR with the proof so that we could merge it once we have made performance improvements that get the CI time down to a reasonable amount. |
Link to PR: #57
Link to challenge: https://github.com/model-checking/verify-rust-std/blob/main/doc/src/challenges/0008-smallsort.md
The text was updated successfully, but these errors were encountered: