Communication Dans Un Congrès Année : 2024

Trace Partitioning as an Optimization Problem

Résumé

Imprecision is a very common phenomenon in static analyses that results in false alarms when used for program verification. Designing automatic techniques to improve static analysis precision is an old dream, but it is highly non-trivial. In the last two decades, static analysis gave rise to refinement techniques to improve precision through various forms of sensitivity. Yet, prior attempts are either specialized to particular domains or based on syntactic rules and heuristics that are tedious to design and prone to path explosion. In this paper, we cast the problem of improving static analysis precision as an optimization problem and propose a generic search-based method to solve it. We identify the challenges that one faces when solving this problem (like the large search space, path explosion, redundant computations, or non-monotonic operations in abstract domains) and provide adequate solutions to each. Finally, we provide a first implementation of the method, demonstrating both its feasibility and potential over standard benchmark (our early prototype is able to prove some goals that state-of-the-art software model checkers cannot), and providing valuable feedback when implementing this method in a static analyzer.

Mots clés

Fichier principal
Vignette du fichier
149950026 copy.pdf (5.64 Mo) Télécharger le fichier
Origine Fichiers produits par l'(les) auteur(s)
licence

Dates et versions

hal-04917504 , version 1 (28-01-2025)

Licence

Identifiants

  • HAL Id : hal-04917504 , version 1

Citer

Charles Babu, Sébastien Bardin, Matthieu Lemerre, Jean-Yves Marion. Trace Partitioning as an Optimization Problem. Static Analysis Symposia, Roberto Giacobazzi; Alessandra Gorla; Marco Campion, Oct 2024, Pasedena, California, United States. ⟨hal-04917504⟩
0 Consultations
0 Téléchargements

Partager

More