Tests and Proofs
1 This volume contains the research papers and invited papers presented at the Third International Conference on Tests and Proofs (TAP 2009) held at ETH Zurich, Switzerland, during July 2–3, 2009. TheTAPconferenceisdevotedtotheconvergenceofproofsandtests. Itc- bines ideasfromboth sidesforthe advancementofsoftwarequality. Toprovethe 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 exp- tation of discovering bugs. The two techniques seem contradictory: if you have proved your program, it is fruitless to comb it for bugs; and if you are testing it, that is surely a sign that you have given up on any hope of proving its corre- ness. Accordingly, proofs and tests have, since the onset of software engineering research,been pursuedby distinct communities using ratherdi?erent techniques and tools. 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 has been one of the ?rst signs that contradiction may yield to complementarity, but in the past few years an increasing number of research e?orts 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 o?er.