The Formal Verification Company

contact@formalverificationcompany.com

When starting the Formal Verification Company, we chose to keep our name simple. We do what our name says - formal verification.

Getting a system formally verified means:

- finding bugs that other testing methods cannot find
- guaranteeing that your system will perform in the way that you expect
- giving your engineering teams a new way of reasoning about their systems

All of this enables a whole new level of trust in the reliability and safety of your software.

What is formal verification?

"We are very good at building complex software systems that work 95% of the time. But we do not know how to build complex software systems that are ultra-reliably safe." - NASA

Formal verification methods guarantee the correctness of algorithms and the proper functioning of systems.

Traditional testing can miss bugs and edge cases. Instead, we create a mathematical model of the system and use it to reason about its functioning. This ensures that the system behaves correctly under all possible conditions, no matter how obscure or esoteric.

Where is formal verification used?

Formal methods have historically been used in critical systems where a fault could lead to human death. NASA runs an entire lab dedicated to formal methods research.

Intel uses it to ensure the correctness of its CPU architectures.

More recently, these methods have been applied in highly distributed software systems.

Amazon Web Services used formal methods to verify the DynamoDB architecture and found several bugs.

While working on the Xbox 360, Microsoft found a bug that would brick chips after 4 hours of use, which would not have been found without formal verification.


© 2024 The Formal Verification Company