PAGAI: A Path Sensitive Static Analyser. We describe the design and the implementation of PAGAI, a new static analyzer working over the LLVM compiler infrastructure, which computes inductive invariants on the numerical variables of the analyzed program. PAGAI implements various state-of-the-art algorithms combining abstract interpretation and decision procedures (SMT-solving), focusing on distinction of paths inside the control flow graph while avoiding systematic exponential enumerations. It is parametric in the abstract domain in use, the iteration algorithm, and the decision procedure. We compared the time and precision of various combinations of analysis algorithms and abstract domains, with extensive experiments both on personal benchmarks and widely available GNU programs.
Keywords for this software
References in zbMATH (referenced in 8 articles )
Showing results 1 to 8 of 8.
- Becchi, Anna; Zaffanella, Enea: PPLite: zero-overhead encoding of NNC polyhedra (2020)
- Zaffanella, Enea: On the efficiency of convex polyhedra (2018)
- Jiang, Jiahong; Chen, Liqian; Wu, Xueguang; Wang, Ji: Block-wise abstract interpretation by combining abstract domains with SMT (2017)
- Maréchal, Alexandre; Monniaux, David; Périn, Michaël: Scalable minimizing-operators on polyhedra via parametric linear programming (2017)
- Karpenkov, Egor George; Monniaux, David; Wendler, Philipp: Program analysis with local policy iteration (2016)
- Monniaux, David: A survey of satisfiability modulo theory (2016)
- Maisonneuve, Vivien; Hermant, Olivier; Irigoin, François: Computing invariants with transformers: experimental scalability and accuracy (2014)
- Sharma, Rahul; Nori, Aditya V.; Aiken, Alex: Bias-variance tradeoffs in program analysis (2014)