More about HKUST
Scalable Symbolic Execution
PhD Qualifying Examination
Title: "Scalable Symbolic Execution"
by
Mr. Peisen YAO
Abstract:
Software errors such as program crashes and security vulnerabilities are
still a widespread plague. A single software flaw is enough to cause
irreparable damage, and even software that has been in use for decades and
deployed to millions of users may still contain flaws. Therefore,
considerable effort has been undertaken to develop tools and methodologies
to obtain fault-free software, including simulation, software testing,
program analysis, formal verification and so on.
Static program analysis analyzes program behaviors without running it and
can be used for detecting common software errors automatically. Symbolic
execution is a program analysis technique that systematically enumerates
feasible program executions with efficient constraint solvers, and can
prioritize executions of interest. However, path explosion-the fact that
the number of program executions is typically at least exponential in the
size of the program-hinders the applicability of symbolic execution in the
real world, where software commonly reaches millions of lines of code.
In this survey, we summarize the development symbolic execution with an
emphasis on the scalability challenges. We first introduce the basic
background and terminologies of symbolic execution. We then summarize the
trade-offs in designing symbolic executors and present several main
scalability challenges. After that, we survey related work in addressing
these challenges in details. At the end, we conclude with some future
directions for making symbolic execution scalable.
Date: Monday, 29 January 2018
Time: 10:30am - 12:30pm
Venue: Room 3494
Lifts 25/26
Committee Members: Dr. Charles Zhang (Supervisor)
Prof. Shing-Chi Cheung (Chairperson)
Prof. Fangzhen Lin
Dr. Wei Wang
**** ALL are Welcome ****