— We present techniques for analyzing the source code of distributed Java applications, and building finite models of their behaviour. The models are labelled transition systems...
We study the problem of monitoring concurrent program runs for atomicity violations. Unearthing fundamental results behind scheduling algorithms in database control, we build space...
—Practical software verification is dominated by two major classes of techniques. The first is model checking, which provides total precision, but suffers from the state space ...
Daniel Kroening, Natasha Sharygina, Stefano Tonett...
Polyhedra are widely used in model checking and abstract interpretation. Polyhedral analysis is effective when the relationships between variables are linear, but suffers from im...
Model checking based on validating temporal logic formulas has proven practical and effective for numerous software engineering applications. As systems based on this approach ha...