150 likes | 164 Views
This software verification approach, brought to you by empirical verification, challenges the notion that verification can ever be conclusive. Learn how counterexamples can be convincing, irrefutable, and shed light on incidents like the Ariane 5 disaster. Discover techniques like Predicate Abstraction, Widening/Acceleration, Model Checking, and more. Explore our papers on these topics for further insights.
E N D
Software Verification- a postpositivistic approach Georg Weissenbacher brought to you by
empirical verification can never be conclusive! (Sir Karl Popper) Verification? to assure that software fully satisfies all the expected requirements.
‘All swans are white.’(in particular, there are no black ones)
Counterexamples • convincing • conclusive • irrefutable
Ariane 5 Disaster June 04, 1996 • explosion after 42 sec • altitude 3700 meters • MC 68020 CPU, 18MHz • approx. 2.8 MIPS • 42 s x 2.8 MI/s = 117,6 MI • 3.17 x 104 instructions/m • geostationary orbit: 35 786 km
i := i + 1 N i = 1 i := 0
i := i * 5; i := 5N; j := i + j; j := N * 5N; N
iN = 5N jN = N * 5N N
Predicate Abstraction Widening/ Acceleration Model Checking Invariant Generation Abstraction/ Refinement
Questions? Thank you for your attention. Please also have a look at some of our papers: * Counterexamples with Loops for Predicate Abstraction (CAV 2006).* A Complete Bounded Model Checking Algorithm for Pushdown Systems (SPIN 2007)* A Survey of Automated Techniques for Formal Software Verification (TCAD 2008)* more on http://www.georg.weissenbacher.name