An overview of the saturn project

Authors:

Abstract
We present an overview of the Saturn program analysis system, including a rationale for three major design decisions: the use of function-at-a-time, or summary-based, analysis, the use of con- straints, and the use of a logic programming language to express program analysis algorithms. We argue that the combination of summaries and constraints allows Saturn to achieve both great scal- ability and great precision, while the use of a logic programming language with constraints allows for succinct, high-level expression of program analyses.