We present a novel technique for producing bounded exhaustive test suites from hybrid invariants, i.e., invariants that are expressed imperatively, declaratively, or as a combination of declarative and imperative predicates. Hybrid specifications are processed using known mechanisms for the imperative and declarative parts, but combined in a way that enables us to exploit information from the declarative side, such as \emph{tight bounds} computed from the declarative specification, to improve the search both on the imperative and declarative sides. Moreover, our technique automatically evaluates all different possible ways of processing the imperative side, and the alternative setting (imperative or declarative) for each part of the invariant available both declaratively and imperatively, in order to decide the most convenient invariant configuration with respect to efficiency in test generation. This is achieved by transcoping, i.e., by assessing the efficiency of the different alternatives on small scopes (where generation times are negligible) and then extrapolating the results to larger scopes.
We also show experiments involving collection classes that support the effectiveness of our technique, by demonstrating that \emph{(i)} bounded exhaustive suites can be computed from hybrid invariants significantly more efficiently than doing so using state-of-the-art purely imperative and purely declarative approaches, and \emph{(ii)} our technique is able to automatically determine efficient hybrid invariants, in the sense that they lead to an efficient computation of bounded exhaustive suites, using transcoping.
Fri 24 OctDisplayed time zone: Tijuana, Baja California change
| 10:30 - 12:00 | Specification and VerificationOOPSLA at Salon E Chair(s): Gary T. Leavens University of Central Florida | ||
| 10:3022m Talk | Bounded Exhaustive Test Input Generation from Hybrid Invariants OOPSLA Nico Rosner Dept. of Computer Science FCEyN, University of Buenos Aires, Valeria Bengolea Dept. of Computer Science FCEFQyN, University of Rio Cuarto, Pablo Ponzio Dept. of Computer Science FCEFQyN, University of Rio Cuarto, Shadi Abdul Khalek Google, Nazareno Aguirre Dept. of Computer Science FCEFQyN, University of Rio Cuarto, Marcelo F. Frias Dept. of Software Engineering Instituto Tecnológico de Buenos Aires, Sarfraz Khurshid University of Texas at AustinLink to publication | ||
| 10:5222m Talk | Compiler Verification Meets Cross-Language Linking via Data Abstraction OOPSLALink to publication | ||
| 11:1522m Talk | GPS: Navigating Weak Memory with Ghosts, Protocols, and Separation OOPSLALink to publication | ||
| 11:3722m Talk | Natural Proofs for Asynchronous Programs using Almost-Synchronous Invariants OOPSLA Ankush Desai University of California, Berkeley, Pranav Garg University of Illinois at Urbana-Champaign, P. Madhusudan University of Illinois at Urbana-ChampaignLink to publication | ||



