Skip to main content

3 posts tagged with "Aleph-Zero"

View All Tags

Β· 4 min read

We continue our work on the coq-of-rust tool to formally verify Rust programs with the Coq proof assistant. We have upgraded the Rust version that we support, simplified the translation of the traits, and are adding better support for the standard library of Rust.

Overall, we are now able to translate about 80% of the Rust examples from the Rust by Example book into valid Coq files. This means we support a large subset of the Rust language.

Β· 7 min read

Our tool coq-of-rust enables formal verification of πŸ¦€Β Rust code to make sure that a program has no bugs. This technique checks all possible execution paths using mathematical techniques. This is important for example to ensure the security of smart contracts written in Rust language.

Our tool coq-of-rust works by translating Rust programs to the general proof system πŸ“Β Coq. Here we explain how we translateΒ match patterns from Rust to Coq. The specificity of Rust patterns is to be able to match values either by value or reference.

Β· 21 min read

Our tool coq-of-rust enables formal verification of πŸ¦€Β Rust code to make sure that a program has no bugs given a precise specification. We work by translating Rust programs to the general proof system πŸ“Β Coq.

Here, we show how we formally verify an ERC-20 smart contract written in Rust for the Aleph Zero blockchain. ERC-20 smart contracts are used to create new kinds of tokens in an existing blockchain. Examples are stable coins such as the πŸ’²USDT.