Skip to main content

Incremental false path elimination for static software analysis


Ansgar Fehnker, Ralf Huuck and Sean Seefried



In this work we introduce a novel approach for removing false positives in static program analysis. We present an incremental algorithm that investigates paths to failure locations with respect to feasibility. The feasibility test it done by interval constraint solving over a semantic abstraction of program paths. Sets of infeasible paths can be ruled out by enriching the analysis incrementally with observers. Much like counterexample guided abstraction refinement for software verification our approach enables to start static program analysis with a coarse syntactic abstraction and use richer semantic information to rule out false positives when necessary and possible. Moreover, we present our implementation in the Goanna static analyzer and compare it to other tools for C/C++ program analysis.

BibTeX Entry

    author           = {Fehnker, Ansgar and Huuck, Ralf and Seefried, Sean},
    editor           = {{Antonio Cerone}},
    month            = aug,
    year             = {2009},
    keywords         = {static analysis, counterexample guided abstraction refinement, interval solving, software
                        verification, goanna},
    address          = {Macao},
    title            = {Incremental False Path Elimination for Static Software Analysis},
    booktitle        = {7th International Symposium on Automated Technology for Verification and Analysis (ATVA)},
    publisher        = {Lecture Notes in Computer Science}


Served by Apache on Linux on seL4.