What Is the Main Challenge in Formally Verifying a Contract with External Calls?

The main challenge is handling the uncertainty and potential reentrancy introduced by external calls to other, unverified contracts. The formal model must account for every possible behavior of the external contract, which is often impossible to know.

This means the verifier cannot guarantee the safety of the entire system, only the local contract under the assumption that the external calls behave as expected. To mitigate this, auditors often use "stubs" or "axioms" to model the external contract's behavior, but this introduces assumptions.

Why Is IV a Key Input for the Black-Scholes Model?
What Is “Slashing” in a Proof-of-Stake System and How Does It Deter Malicious Behavior?
How Does a “Rate-Limiting” Feature Protect a Hot Wallet from Large-Scale Attacks?
What Role Do Governance Minimality and Immutable Smart Contracts Play in Limiting the Impact of Centralized Token Holdings?
What Is the Main Risk Assumed by Selling a Covered Call in This Strategy?
What Is the Primary Difference between a ‘Known’ Event and an ‘Unknown’ Event in Terms of IV Impact?
How Does the Verifier Prevent Replay Attacks on the Cryptographic Proof?
What Is the Verifier’s Role in a Zero-Knowledge Proof Protocol?

Glossar