People take hardware and software reliability for granted.
We assume that the computer systems in workstations, planes, hospital equipment, and missile navigation systems were carefully designed and tested before reaching the market. In reality, instances of each kind of system have exhibited serious errors, even after extensive testing and simulation. The consequences have been severe, both financially and life-critically. Computer-aided verification, a collection of techniques for formally analyzing system behavior, yields increased reliability and robustness. Industry is increasingly interested in these techniques, but few designers have been exposed to them, much less trained in their use.