18 Preface to Special Issue on Software Veri cation C.A.R. HOARE Microsoft Research Labs, Cambridge and JAYADEV MISRA University of Texas at Austin The origins of software veri cation go back to the pioneers of Computing Science, von Neumann and Turing. The idea has been rediscovered several times since then, for example by McCarthy, Naur and Floyd. The ideals of veri cation have inspired half a century of productive computing research at the foundations of the subject. There are now ourishing research schools in computational logic, computer-aided proof, programming theory, formal semantics, speci cation and programming languages, programming methodology and software engineering. By the end of the last century, enormous progress had been made in veri cation theory and in tools to assist in its application. The technology of proof was extended to include constraint solving and model checking, which were routinely exploited in the electronics industry to increase con dence in the absence of errors in circuit designs before commitment to silicon. Programming theory and semantics provided logics for proof of correctness of well-structured sequential programs. The foundations of concurrent programming were explored by employing temporal logic, and communication over channels was explored in a number of
/lp/association-for-computing-machinery/preface-to-special-issue-on-software-verification-21XZq2FcXZ