You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Contracts & Harnesses for non_null::sub and non_null::sub_ptr and non_null::offset_from (model-checking#93)
Towards model-checking#53
Changes
added contract and harness for non_null::sub
added contract and harness for non_null::sub_ptr
Revalidation
To revalidate the verification results, run kani verify-std -Z
unstable-options "path/to/library" -Z function-contracts -Z
mem-predicates --harness ptr::non_null::verify This will run both
harnesses. All default checks should pass:
```
SUMMARY:
** 0 of 1622 failed
VERIFICATION:- SUCCESSFUL
Verification Time: 0.3814842s
SUMMARY:
** 0 of 1780 failed (1 unreachable)
VERIFICATION:- SUCCESSFUL
Verification Time: 0.44192737s
Complete - 2 successfully verified harnesses, 0 failures, 2 total.
```
The proof now only handles the array with a fixed size and uses a random
element in the arr for subtraction. The element is i32 type. Is this ok
for the current stage? Or maybe we need to consider other types such as
i64, etc and maybe change the arr to a bigger size?
---------
Co-authored-by: OwO <[email protected]>
Co-authored-by: Qinyuan Wu <[email protected]>
Co-authored-by: Carolyn Zech <[email protected]>
Co-authored-by: Zyad Hassan <[email protected]>
Fix invariant return
Add to_bytes and to_bytes_with_nul harnesses
0 commit comments