Proof is the silicon substrate for software. Proof should dictate software design and not be post-facto.