We continue our work on formal verification of Rust programs with our tool coq-of-rust, to translate Rust code to the formal proof system Coq. One of the limitation we had was the handling of primitive constructs from the standard library of Rust, like Option::unwrap_or_default or all other primitive functions. For each of these functions, we had to make a Coq definition to represent its behavior.
![Translation of the Rust's core and alloc crates | Formal Land](https://cdn-ak-scissors.b.st-hatena.com/image/square/18cfbe771618940224aa554223f08d8f807daf8f/height=288;version=1;width=512/https%3A%2F%2Fformal.land%2Fimg%2Fland-512.png)