SATURN: A scalable framework for error detection using Boolean satisfiability

被引:57
|
作者
Xie, Yichen [1 ]
Aiken, Alex [1 ]
机构
[1] Stanford Univ, Stanford, CA 94305 USA
关键词
program analysis; error detection; Boolean satisfiability;
D O I
10.1145/1232420.1232423
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
This article presents SATURN, a general framework for building precise and scalable static error detection systems. SATURN exploits recent advances in Boolean satisfiability (SAT) solvers and is path sensitive, precise down to the bit level, and models pointers and heap data. Our approach is also highly scalable, which we achieve using two techniques. First, for each program function, several optimizations compress the size of the Boolean formulas that model the control flow and data flow and the heap locations accessed by a function. Second, summaries in the spirit of type signatures are computed for each function, allowing interprocedural analysis without a dramatic increase in the size of the Boolean constraints to be solved. We have experimentally validated our approach by conducting two case studies involving a Linux lock checker and a memory leak checker. Results from the experiments show that our system scales well, parallelizes well, and finds more errors with fewer false positives than previous static error detection systems.
引用
下载
收藏
页数:43
相关论文
共 50 条
  • [1] Scalable error detection using boolean satisfiability
    Xie, YC
    Aiken, A
    ACM SIGPLAN NOTICES, 2005, 40 (01) : 351 - 363
  • [2] Scalable program analysis using Boolean satisfiability
    Aiken, Alex
    Fourth ACM & IEEE International Conference on Formal Methods and Models for Co-Design, Proceedings, 2006, : 89 - 89
  • [3] Multiple design error diagnosis using boolean satisfiability
    State Key Laboratory of ASIC and System, Microelectronics Department, Fudan University, Shanghai 201203, China
    Jisuanji Fuzhu Sheji Yu Tuxingxue Xuebao, 2006, 9 (1383-1390):
  • [4] Multipath Detection Using Boolean Satisfiability Techniques
    Aloul, Fadi A.
    El-Tarhuni, Andmohamed
    JOURNAL OF COMPUTER NETWORKS AND COMMUNICATIONS, 2011, 2011
  • [5] An efficient, scalable hardware engine for Boolean SATisfiability
    PROCEEDINGS 2006 INTERNATIONAL CONFERENCE ON COMPUTER DESIGN, 2007, : 326 - 331
  • [6] Scalable Parallel Solver of Boolean Satisfiability Problems
    Bogdanova, V. G.
    Gorsky, S. A.
    2018 41ST INTERNATIONAL CONVENTION ON INFORMATION AND COMMUNICATION TECHNOLOGY, ELECTRONICS AND MICROELECTRONICS (MIPRO), 2018, : 222 - 227
  • [7] An efficient sequential equivalence checking framework using Boolean Satisfiability
    Zheng, Feijun
    Weng, Yanling
    Yan, Xiaolang
    ASICON 2007: 2007 7TH INTERNATIONAL CONFERENCE ON ASIC, VOLS 1 AND 2, PROCEEDINGS, 2007, : 1174 - 1177
  • [8] An efficient diagnostic test pattern generation framework using Boolean satisfiability
    Zheng, Feijun
    Cheng, Kwang-Ting
    Yan, Xiaolang
    Moondanos, John
    Hanna, Ziyad
    PROCEEDINGS OF THE 16TH ASIAN TEST SYMPOSIUM, 2007, : 288 - +
  • [9] Using Boolean satisfiability for computing soft error rates in early design stages
    Shazli, S. Z.
    Tahoori, M. B.
    MICROELECTRONICS RELIABILITY, 2010, 50 (01) : 149 - 159
  • [10] Soft Error Rate Computation in Early Design Stages Using Boolean Satisfiability
    Shazli, Syed Z.
    Tahoori, Mehdi B.
    GLSVLSI 2009: PROCEEDINGS OF THE 2009 GREAT LAKES SYMPOSIUM ON VLSI, 2009, : 101 - 104