Computer Science

Provably correct software

Can we ever write software proven, mathematically, to be free of bugs and exploits?

What makes this fascinating

Frequently asked questions

What is provably correct software?
Software mathematically proven to meet its specification — guaranteed free of whole classes of bugs — using formal methods like theorem proving and model checking, rather than relying on testing alone.
Why isn't all software formally verified?
Proofs are labor-intensive and scale poorly, specifications can themselves be wrong or incomplete, and verifying large, evolving real-world systems remains impractical despite notable successes like the seL4 kernel and CompCert compiler.
Can software be proven bug-free?
Only relative to a specification: a proof shows the code matches what you formally asked for, but it can't catch flaws in the spec itself or in the hardware and assumptions underneath.

More summits in Computer Science

Ready to climb?

Learn it the whole way up — from the fundamentals to the frontier.