A Factor Graph Model for Software Bug Finding
Proceedings of the Twentieth International Joint Conference on Artificial Intelligence. Pages 2510-2515.
Abstract
Automatic tools for finding software errors require knowledge of the rules a program must obey, or specifications, before they can identify bugs. We present a method that combines factor graphs and static program analysis to automatically infer specifications directly from programs. We illustrate the approach on inferring functions in C programs that allocate and release resources, and evaluate the approach on three codebases: SDL, OpenSSH, and the OS kernel for Mac OS X (XNU). The inferred specifications are highly accurate and with them we have discovered numerous bugs.
@inproceedings{ijcai2007p404,
title = {A Factor Graph Model for Software Bug Finding},
author = {Kremenek, Ted and Ng, Andrew Y. and Engler, Dawson R.},
booktitle = {Proceedings of the Twentieth International Joint Conference on
Artificial Intelligence, {IJCAI-07}},
publisher = {International Joint Conferences on Artificial Intelligence},
editor = {Ramon López de Mántaras},
pages = {2510--2515},
year = {2007},
url = {https://ijcai.org/proceedings/2007/404},
}
TY - CPAPER TI - A Factor Graph Model for Software Bug Finding AU - Kremenek, Ted AU - Ng, Andrew Y. AU - Engler, Dawson R. T2 - Proceedings of the Twentieth International Joint Conference on Artificial Intelligence, IJCAI-07 PB - International Joint Conferences on Artificial Intelligence PY - 2007 SP - 2510 EP - 2515 UR - https://ijcai.org/proceedings/2007/404 ER -Copied
Machine-readable versions of this paper, for tools and AI agents: