SaaSHub helps you find the best software and product alternatives Learn more →
Top 7 Rust Verification Projects
-
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
-
> The overall goal would be to figure out classical error conditions like nill pointers deference.
> If I can figure out if a pointer will be nil in some execution branch, there is no reason why a computer cannot do the same.
Note, this is called flow-sensitive typing (also called type narrowing) and I think that typescript does it.
https://en.wikipedia.org/wiki/Flow-sensitive_typing
> I personally would see this as an human race level upgrades. Imagine feeding your code to a CI that spit back something like: "you will have a panic at line 156 when your input is > 4"
A model checker can do that!
See this
https://model-checking.github.io/kani/tutorial-kinds-of-fail...
Other techniques are also possible
https://github.com/viperproject/prusti-dev#quick-example
(Here I could link a lot of things, I just selected two Rust projects to illustrate)
This works better if you are able to provide contracts in your API that says which guarantees you provide. Alternatively, asserts are useful too.
-
-
-
-
-
Rust Verification discussion
Rust Verification related posts
-
Rust is rolling off the Volvo assembly line
-
Re-fixing Servo's event-loop
-
Kani: A bit-precise model checker for Rust
-
Release Creusot 0.1 · creusot-rs/creusot
-
Verified Rust for low-level systems code
-
Creusot, a deductive verifier for Rust code
-
Creusot, a deductive verifier for Rust code
-
A note from our sponsor - SaaSHub
www.saashub.com | 11 Oct 2024
Index
What are some of the best open-source Verification projects in Rust? This list will help you:
Project | Stars | |
---|---|---|
1 | kani | 2,184 |
2 | prusti-dev | 1,554 |
3 | creusot | 1,123 |
4 | ed25519-dalek | 682 |
5 | CreuSAT | 609 |
6 | pyrustify | 17 |
7 | lincheck | 8 |