Authors
Michael D Ernst, Jake Cockrell, William G Griswold, David Notkin
Publication date
1999/5/16
Book
Proceedings of the 21st international conference on Software engineering
Pages
213-224
Description
Explicitly stated program invariants can help programmers by identifying program properties that must be preserved when modifying code. In practice, however, these invariants are usually implicit. An alternative to expecting programmers to fully annotate code with invariants is to automatically infer invariants from the program itself. This research focuses on dynamic techniques for discovering invariants from execution traces.
This paper reports two results. First, it describes techniques for dynamically discovering invariants, along with an instrumenter and an inference engine that embody these techniques. Second, it reports on the application of the engine to two sets of target programs. In programs from Gries’s work on program derivation, we rediscovered predefined invariants. In a C program lacking explicit invariants, we discovered invariants that assisted a software evolution task.
Total citations
199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202557182146839110211210897908110284103105847572664752503844262
Scholar articles
MD Ernst, J Cockrell, WG Griswold, D Notkin - Proceedings of the 21st international conference on …, 1999