Numerical software is increasingly playing a critical role in society, and thus numerical errors in software can have disastrous consequences. However, it is very difficult to test numerical software, and numerical errors are hard to detect because they may not necessarily result in system crashes. There is a strong need for effective and practical techniques or tools to detect and prevent such errors and improve robustness of numerical software.

This project explores novel and practical techniques for testing and analyzing numerical software to detect numerical errors in order to improve its robustness. In particular, this project carries out a set of preliminary research tasks to demonstrate the feasibility of the techniques, including developing an initial public repository of numeric constraints and exploring techniques to guide, optimize, and use parallel path exploration in symbolic execution. The research in this project enhances the infrastructure for teaching and research by providing open source tools and data sets for use by students and practitioners, and for enhancement by other researchers.

Project Start
Project End
Budget Start
2013-10-01
Budget End
2016-03-31
Support Year
Fiscal Year
2013
Total Cost
$100,000
Indirect Cost
Name
University of Illinois Urbana-Champaign
Department
Type
DUNS #
City
Champaign
State
IL
Country
United States
Zip Code
61820