logoalt Hacker News

demibabsyesterday at 10:40 PM1 replyview on HN

I’m a bit confused as to what makes formal verification different from extensive testing.


Replies

gr_normyesterday at 10:52 PM

To a first approximation, formal verification can guarantee some property holds for every possible run of the program, rather than just the tested ones. It's a lot more powerful than it sounds, because this unlocks the ability to talk about qualities of programs that cannot be tested (effectively or at all). Hyperproperties like confidentiality, integrity, and availability tend to be quite difficult to test, for instance.