We use math to ensure your code has no vulnerabilities
For Rust, Solidity, zk circuits. We use Rocq.
https://formal.land/
Their new blog post presents how to pretty-print the constraints from a Plonky3 circuit, ensuring their modeling is correct.
formal.land/blog/2025/08...
Their new blog post presents how to pretty-print the constraints from a Plonky3 circuit, ensuring their modeling is correct.
formal.land/blog/2025/08...
Here is a code extract in Rust:
Here is a code extract in Rust:
We present the reasoning rules, as well as how to apply them to verify that an example has no under-constraints. ✅
The link 👇
We present the reasoning rules, as well as how to apply them to verify that an example has no under-constraints. ✅
The link 👇
LLZK is a zero-knowledge circuit language based on MLIR by Veridise. This work is funded by the Ethereum Foundation.
Link: 👇
LLZK is a zero-knowledge circuit language based on MLIR by Veridise. This work is funded by the Ethereum Foundation.
Link: 👇
The main security property we are looking for is the absence of underconstraints. The link: 👇
The main security property we are looking for is the absence of underconstraints. The link: 👇
This specification is in idiomatic Rocq but follows the structure of the Rust code. It includes the gas and versioning! 👇
This specification is in idiomatic Rocq but follows the structure of the Rust code. It includes the gas and versioning! 👇
We finally achieved that for the ADD instruction! Here is what it looks like: 👇
We finally achieved that for the ADD instruction! Here is what it looks like: 👇
We are now starting to work on the second phase, to handle the memory aliases. 👇
We are now starting to work on the second phase, to handle the memory aliases. 👇
I will go to NoirCon and ZK Hack. For now, at the WeWork to feel like home 😂
I will go to NoirCon and ZK Hack. For now, at the WeWork to feel like home 😂
formal.land/blog/2025/06...
formal.land/blog/2025/06...
Dive into how the team is establishing an extraction from Plonky3 to Rocq, and demonstrating its use by verifying relevant components of Plonky3-based zkVMs.
x.com/FormalLand/s...
Dive into how the team is establishing an extraction from Plonky3 to Rocq, and demonstrating its use by verifying relevant components of Plonky3-based zkVMs.
x.com/FormalLand/s...
This is what we are working on with Garden, our formal verification framework for circuits in Rocq.
The link: 👇
This is what we are working on with Garden, our formal verification framework for circuits in Rocq.
The link: 👇
What does it mean, and why is it important? 🧵
What does it mean, and why is it important? 🧵
Speaker highlight: Guillaume Claret is a security researcher and the founder of @formalland.bsky.social, a company specializing in the application of formal methods to critical code. #rustlang
Speaker highlight: Guillaume Claret is a security researcher and the founder of @formalland.bsky.social, a company specializing in the application of formal methods to critical code. #rustlang
With our "coq-of-solidity" and "coq-of-rust" projects, it is possible to verify Solidity and Rust projects in an integrated manner in Rocq to prevent most vulnerabilities.
With our "coq-of-solidity" and "coq-of-rust" projects, it is possible to verify Solidity and Rust projects in an integrated manner in Rocq to prevent most vulnerabilities.
Reach out to us if you are interested in auditing your circuits!
We are happy to contribute to the security of the advanced operations written in zero-knowledge technology.
Reach out to us if you are interested in auditing your circuits!
We are happy to contribute to the security of the advanced operations written in zero-knowledge technology.
- A strong pressure to get things right,
- All the code is available as open-source,
- The market is rather open to new players.
- A strong pressure to get things right,
- All the code is available as open-source,
- The market is rather open to new players.
This was a great conference with many interesting side-events located along the river or the Louvres in Paris, for the best view.
See you next year! 👋
This was a great conference with many interesting side-events located along the river or the Louvres in Paris, for the best view.
See you next year! 👋
Hoping to see you at the Paris Blockchain Week event! 🥐
Hoping to see you at the Paris Blockchain Week event! 🥐
Here is the list of EVM instructions from the Rust Revm implementation that we have successfully translated to a typed version in Rocq: github.com/formal-land/...
Here is the list of EVM instructions from the Rust Revm implementation that we have successfully translated to a typed version in Rocq: github.com/formal-land/...
Another improvement: handling the native binary operators as normal functions to uniformize a lot of code on the proving side.
Now, we reach a new difficulty: handling implicit coercions from &[T; N] to &[T] 🤔
A new task to do! 💪
Another improvement: handling the native binary operators as normal functions to uniformize a lot of code on the proving side.
Now, we reach a new difficulty: handling implicit coercions from &[T; N] to &[T] 🤔
A new task to do! 💪
Impredicative Set allows to quantify over types of values while still being at the same level. This leads to paradox for most mathematicians but not in Rocq!
Here is what follows: 👇
Impredicative Set allows to quantify over types of values while still being at the same level. This leads to paradox for most mathematicians but not in Rocq!
Here is what follows: 👇
This allows for handling special cases like constants in parametrized "impl" which were out of reach before.
This allows for handling special cases like constants in parametrized "impl" which were out of reach before.