Advanced Search

Browse by Discipline

Scientific Societies

E-print Alerts

Add E-prints

E-print Network

  Advanced Search  

Saturn: A SAT-based Tool for Bug Detection Yichen Xie and Alex Aiken

Summary: Saturn: A SAT-based Tool for Bug Detection
Yichen Xie and Alex Aiken
Computer Science Department
Stanford University
1 Introduction
Saturn is a boolean satisfiability (SAT) based framework for static bug detec-
tion. It targets software written in C and is designed to support a wide range of
property checkers.
The goal of the Saturn project is to realize SAT's potential for precise check-
ing on very large software systems. Intraprocedurally, Saturn uses a bit-level
representation to faithfully model common program constructs. Interprocedu-
rally, it employs a summary-based modular analysis to infer and simulate func-
tion behavior. In practice, this design provides great precision where needed,
while maintaining observed linear scaling behavior to arbitrarily large software
code bases. We have demonstrated the effectiveness of our approach by building
a lock analyzer for Linux, which found hundreds of previously unknown errors
with a lower false positive rate than previous efforts [16].
The rest of the paper is organized as follows. Section 2 gives an overview of
the Saturn analysis framework. Section 3 describes the modeling of common


Source: Aiken, Alex - Department of Computer Science, Stanford University


Collections: Computer Technologies and Information Sciences