Formal Verification

Formal verification is a rigorous mathematical and logical process which proves the correctness of software and ensures they adhere to their specified requirements and do not contain critical errors. 

This technology has been vital in high-stakes fields like nuclear energy, aviation, railways, and space exploration where bugs in code cannot be tolerated. Dowsers develops state-of-the-art technologies for the security and safety of smart contracts and blockchains at scale and solutions to prevent fatal vulnerabilities in code.

Nuclear, Space, Railway, Aeronautics…

Formal verification has become an indispensable tool in high-stakes industries such as space exploration, nuclear power, railway operations, and aeronautics. Developed in the 1960s and gaining traction since the late 1970s, this rigorous process uses mathematical and logical methods to ensure that complex software systems operate precisely according to their specifications. Its critical role in confirming the absence of defects makes it fundamental to safety and reliability, especially in sectors where the consequences of failure can be catastrophic.


The RATP group, a world leader in urban transport, is a major player in the formal verification of the security and safety of complex software, having been a pioneer in their invention, software development, industrial use, and academic promotion.

This cutting-edge expertise has enabled the RATP group to launch and operate the first automatic metro trains in the world, with no significant safety incidents since their launch in 1998 (line 14), thanks to the reliability of the software analyses carried out by formal verifications.

Formal verification in nuclear power involves rigorous mathematical and logical processes to validate software and control systems against precise specifications. This is critical in ensuring the systems function correctly without failures, as even minor errors could lead to significant safety hazards. The use of formal verification helps maintain the highest safety standards and compliance with regulatory requirements, crucial for preventing catastrophic outcomes in nuclear facilities.

Sources:
Nuclear Regulatory Commission 
International Atomic Energy Agency 

Formal verification in the space industry ensures that software controlling spacecraft and satellite systems functions precisely as intended, critical for mission success and safety. This rigorous validation process proves the correctness of systems before launch, safeguarding against potential software failures that could jeopardize entire missions and lead to significant financial and data losses.

Sources:
NASA Systems Engineering Handbook
European Space Agency – System Engineering and Project Management

Formal verification in aeronautics is crucial for ensuring that software systems in aircraft meet rigorous safety and functionality standards. This process involves detailed testing and mathematical analysis to confirm that the systems operate reliably under all expected conditions, thereby preventing software errors that could lead to failures or accidents. By verifying every aspect of system performance, formal verification contributes significantly to the overall safety of air travel.

Sources:
Federal Aviation Administration – Software and Airborne Electronic Hardware
European Union Aviation Safety Agency

… and now Blockchain

Formal verification is the most recommended technique for improving smart contract security as it gives stronger guarantees that a smart contract is functionally correct compared to other methods.

Recently, major web3 voices such as Vitalik Buterin and a16z posted enthusiastic articles about formal verifications

“One application of AI that I am excited about is AI-assisted formal verification of code and bug finding.

 Right now ethereum's biggest technical risk probably is bugs in code, and anything that could significantly change the game on that would be amazing.”
February 19, 2024
Vitalik Buterin
co-founder of Ethereum

Dowsers unique expertise

Formal verification is a super rare know-how mastered by less than 1.000 engineers around the globe.

With almost a century of accumulated practice of formal verification, Dowsers brings to the blockchain its invaluable industrial and academic expertise in this field.

Our team

Dowsers technology

Dowsers platform architecture ensures end-to-end control of smart contract code without human intervention.

It combines formal modelling, automated verification, error detection, complementary testing, and validation, and can be leveraged along the full software lifecycle.

Information processing steps include :

In addition, DOWSERS employs both static and dynamic analysis to assess smart contracts’ security and performance. 

  • Static analysis reviews source and compiled code without execution, identifying errors and vulnerabilities, and verifying compliance with best practices. 
  • Dynamic analysis examines smart contract behaviour and performance through code execution, simulating attacks, monitoring unusual behaviours, and assessing response times and gas costs.

 Hacks in DeFi cost digital asset investor a staggering $2 billion per year and erode trust in builders and their protocols.

Avoid hacks