Automated Synthesis of Decision Lists for Polynomial Specifications over Integers
Résumé
In this work, we consider two sets I and O of bounded integer variables, modeling
the inputs and outputs of a program. Given a specification Post, which is a Boolean
combination of linear or polynomial inequalities with real coefficients over I ∪ O, our goal
is to synthesize the weakest possible pre-condition Pre and a program P satisfying the
Hoare triple {Pre}P{Post}. We provide a novel, practical, sound and complete algorithm,
inspired by Farkas’ Lemma and Handelman’s Theorem, that synthesizes both the program
P and the pre-condition Pre over a bounded integral region. Our approach is exact and
guaranteed to find the weakest pre-condition. Moreover, it always synthesizes both P
and Pre as linear decision lists. Thus, our output consists of simple programs and pre-
conditions that facilitate further static analysis. We also provide experimental results
over benchmarks showcasing the real-world applicability of our approach and considerable
performance gains over the state-of-the-art.
Origine | Fichiers produits par l'(les) auteur(s) |
---|