Error-Free Software: Know-How and Know-Why of Program Correctness (Wiley Series in Software Engineering Practice)

Demonstrates how formal mathematical methods of proving correctness can help decrease the incidence of design errors (``bugs") in software development. While all the techniques described here have a rigorous mathematical foundation, it is omitted in favor of emphasizing practical applications.