Find us On Facebook Twitter
Events
news and events Events Energy Lectures Sustainability 2011 Sustainability 2010 Sustainability 2009 White Symposium Whiting Turner Lectures Current News News Archives Search News Press Coverage Press Releases Research Newsroom RSS feed Events Calendar events events

Event Information

Computer Science Colloquium: Jeffrey Foster, "Program Analysis"
Monday, September 30, 2013
4:00 p.m.
1115 Computer Science Instructional Center
For More Information:

Program Analysis to Improve Software Reliability and Security

Jeffrey Foster
Associate Professor

Abstract
Today, software controls and even defines much of the technology we rely on, but our ability to construct large, complex software systems far outstrips our ability to ensure they are reliable and secure. The result is a plethora of faulty software with defects that range from minor glitches to critical security vulnerabilities.

The goal of my research is to discover fundamental new ways to improve software reliability and security, by developing program analysis tools and techniques that reason about the behavior of software. In this talk, I will give an overview of this research area, focusing on

three recent projects: (1) Types for Scripting Languages. In this project, we have been exploring ways to bring the benefits of static typing to Ruby, a popular, object-oriented dynamic language. I will describe a sequence of efforts with this aim, beginning with a purely static approach and ending with a hybrid static-dynamic system that is well-aligned with typical uses of Ruby. (2) Program Synthesis. In this project, we have been studying the problem of constructing a program semi-automatically from a specification. I will discuss two key new advances we have made: proof-theoretic synthesis, which produces a program along with its proof of correctness; and path-based inductive synthesis, which is able to compute inverses of programs. (3) Symbolic Execution. In this project, we are exploring ways to extend the power of symbolic execution by mixing it with static type systems and, separately, using it to understand software configuration spaces. Finally, although all three of these projects are quite diverse, they share some common ideas and insights that I will discuss throughout the talk.

I will conclude by discussing the future of research in this area and describing some new projects I am currently pursuing.

Browse Events By Calendar
Tell Us About Your Event!

Submit Event

Most new events will appear on the calendar within one business day.

Browse Events By...

Audience

Alumni
Campus-Wide
Clark School
Corporate Partners
Current Students-All
Donors and Friends
Employers
Faculty
Graduate
K-12
Open to the Public
Press
Prospective Students
Post-Docs
Staff
Undergraduate

Browse Events By...

Category

Career Activities
Conference
Deadline
Information Session
Lecture
Panel
Recruitment
Seminar
Special Events
Social
Student Societies
Symposium
Workshop

Directions and Map

Directions to Campus
Campus Map*