Cover image for Tests and Proofs First International Conference, TAP 2007, Zurich, Switzerland, February 12-13, 2007. Revised Papers
Title:
Tests and Proofs First International Conference, TAP 2007, Zurich, Switzerland, February 12-13, 2007. Revised Papers
Publication Information:
Berlin, Heidelberg :bSpringer-Verlag Berlin Heidelberg, 2007
Physical Description:
viii, 216, [1] p. : ill., digital ; 24 cm.
ISBN:
9783540737704
General Note:
Available in online version
Added Corporate Author:
Genre:
DSP_RESTRICTION_NOTE:
Remote access restricted to users with a valid UTM ID via VPN

Available:*

Library
Item Barcode
Call Number
Material Type
Item Category 1
Status
Searching...
EB001295 EB 001295 Electronic Book 1:EBOOK
Searching...

On Order

Summary

Summary

To prove the correctness of a program is to demonstrate, through impeccable mathematical techniques, that it has no bugs. To test a program is to run it with the expectation of discovering bugs. These two paths to software reliability seem to diverge from the very start: if you have proved your program correct, it is fruitless to comb it for bugs; and if you are testing it, that surely must be a sign that you have given up on any hope to prove its correctness. Accordingly, proofs and tests have, since the onset of software engineering research, been pursued by distinct communities using different kinds of techniques and tools. Dijkstra's famous pronouncement that tests can only show the presence of errors -- in retrospect, perhaps one of the best advertisements one can imagine for testing, as if "only" finding bugs were not already a momentous achievement! -- didn't help make testing popular with provers, or proofs attractive to testers. And yet the development of both approaches leads to the discovery of common issues and to the realization that each may need the other. The emergence of model checking was one of the first signs that apparent contradiction may yield to complementarity; in the past few years an increasing number of research efforts have encountered the need for combining proofs and tests, dropping earlier dogmatic views of incompatibility and taking instead the best of what each of these software engineering domains has to offer.