Skip to content
This repository was archived by the owner on May 29, 2025. It is now read-only.
rust-lang-nurseryPublic archive

About

Verification working group

Resources

Security policy

Stars

102 stars

Watchers

2 watching

Forks

Latest commit

 

History

18 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

The Rust Verification working group

This working group is intended to provide a forum for all things formal methods and verification for Rust. We anticipate significant overlap in requirements for tools and want to provide a central repository to exchange ideas and share progress.

For an overview of our current status, visit our (WIP) page.

Why Rust?

Most of the benefits of performing verification on Rust programs are directly derived from the guarantees of safe Rust. Unsafe code is significantly more complex, but it may be possible to define contracts that must be upheld at the unsafe boundary. For more information on the differences between safe and unsafe Rust, see the Rustonomicon.

  • No need to reason extensively about the memory model
  • Data races are eliminated
  • A substantial subset can be transformed into pure functions

Goals

  • Develop formal foundations for the Rust language (RustBelt).
  • Extract required information from the compiler
  • Design methods to formally verify programs written in Rust
  • Investigate ways to combine program verification with broader testing frameworks

Get Involved

Join our mailing list, get in touch with us or open a pull request to let us know about your Rust verification project.

We follow the Rust Code of Contact. Any concerns should be brought to rust-mods@rust-lang.org

License

The output of the verification working group is distributed under the following licenses:

About

Verification working group

Resources

Security policy

Stars

102 stars

Watchers

2 watching

Forks

Releases

Packages

Used by

Contributors