What can you confidently guarantee about your software?
- Programming
- Developer Tools
- Security
- Infrastructure
The article asks what software teams can confidently guarantee and makes the case that formal verification is becoming more practical, with AI potentially reducing the cost of producing proofs. It uses the familiar framing that tests sample behavior while proofs can establish that certain properties always hold. The catch, which quickly became the center of gravity here, is that those guarantees stop at the verification boundary. Pure logic can be proven. UI behavior, network calls, databases, and third-party systems usually cannot, at least not without assumptions.
If you run an app team, treat formal methods as a selective tool for high-value logic, protocols, parsers, and safety-critical components, not a blanket path to bug-free software. The gating issue is not just proof tooling but whether you can state stable, useful properties precisely enough to justify the effort.
-
queue.acm.org
- Discuss on HN