home · mobile · calendar · colloquia · 2008-2009 · 

Colloquium - Sankaranarayanan

Mathematical Techniques for Program Analysis
NEC Laboratories America

Systematic reasoning about a program's behavior requires specific knowledge of the numbers and numerical operations within. The necessary information includes invariants, ranking functions, and pre-/post-conditions. We demonstrate novel techniques for program analysis based on algorithms using convex polyhedra, optimization, and algebraic geometry to infer facts about a given program automatically, and in a sound manner. The application of these techniques, in practice, to detect run-time errors in C/C++ programs such as buffer overflows, null-pointer dereferences, C string usage, memory leaks, floating point errors, race conditions, and other user-defined properties will be presented.

These techniques are especially significant for the analysis of cyber-physical control systems, wherein a software-based discrete controller interacts with a continuously evolving physical environment. These systems are common in domains such as automobiles, health care, avionics, and space systems. We demonstrate techniques to analyze continuous dynamical systems defined by means of ordinary differential equations, and also hybrid systems that combine discrete and continuous state transformations. We conclude by presenting our recent experiences on applying these techniques to the analysis of Simulink/Stateflow(tm) diagrams.

Sriram Sankaranarayanan is currently a researcher in computer science at NEC Laboratories America in Princeton, NJ. His research focuses on the analysis of programs using mathematical techniques from algebra, geometry and optimization, and statistical techniques including sampling, estimation, and machine learning. Dr. Sankaranarayanan received his PhD from Stanford University in 2005. He is the recipient of awards including the NEC technology commercialization award (NEC Labs, 2007), Siebel Scholarship (Stanford University, 2005), and the President's Gold Medal (Indian Institute of Technology, Kharagpur, 2000).

Hosted by John Black.

Department of Computer Science
University of Colorado Boulder
Boulder, CO 80309-0430 USA
May 5, 2012 (14:13)