Write a Blog >>
ICSE 2023
Sun 14 - Sat 20 May 2023 Melbourne, Australia
Fri 19 May 2023 14:00 - 14:15 at Meeting Room 104 - Software development tools Chair(s): Xing Hu

SMT solvers are often used in the back end of different software engineering tools—e.g., program verifiers, test generators, or program synthesizers. There are a plethora of algorithmic techniques for solving SMT queries. Among the available SMT solvers, each employs its own combination of algorithmic techniques that are optimized for different fragments of logics and problem types. The most efficient solver can change with small changes in the SMT query, which makes it nontrivial to decide which solver to use. Consequently, designers of software engineering tools often select a single solver, based on familiarity or convenience, and tailor their tool towards it. Choosing an SMT solver at design time misses the opportunity to optimize query solve times and, for tools where SMT solving is a bottleneck, the performance loss can be significant.

In this work, we present Sibyl, an automated SMT selector based on graph neural networks (GNNs). Sibyl creates a graph representation of a given SMT query and uses GNNs to predict how each solver in a suite of SMT solvers would perform on said query. Sibyl learns to predict based on features of SMT queries that are specific to the population on which it is trained – avoiding the need for manual feature engineering. Once trained, Sibyl makes fast and accurate predictions which can substantially reduce the time needed to solve a set of SMT queries.

We evaluate Sibyl in four scenarios in which SMT solvers are used: in competition, in a symbolic execution engine, in a bounded model checker, and in a program synthesis tool. We find that Sibyl improves upon the state of the art in nearly every case and provide evidence that it generalizes better than existing techniques. Further, we evaluate Sibyl’s overhead and demonstrate that it has the potential to speedup a variety of different software engineering tools.

Fri 19 May

Displayed time zone: Hobart change

13:45 - 15:15
13:45
15m
Talk
Safe low-level code without overhead is practical
Technical Track
Pre-print
14:00
15m
Talk
Sibyl: Improving Software Engineering Tools with SMT SelectionDistinguished Paper Award
Technical Track
Will Leeson University of Virgina, Matthew B Dwyer University of Virginia, Antonio Filieri AWS and Imperial College London
Pre-print
14:15
15m
Talk
Make Your Tools Sparkle with Trust: The PICSE Framework for Trust in Software Tools
SEIP - Software Engineering in Practice
Brittany Johnson George Mason University, Christian Bird Microsoft Research, Denae Ford Microsoft Research, Nicole Forsgren Microsoft Research, Thomas Zimmermann Microsoft Research
Pre-print
14:30
15m
Talk
CoCoSoDa: Effective Contrastive Learning for Code Search
Technical Track
Ensheng Shi Xi'an Jiaotong University, Wenchao Gu The Chinese University of Hong Kong, Yanlin Wang School of Software Engineering, Sun Yat-sen University, Lun Du Microsoft Research Asia, Hongyu Zhang The University of Newcastle, Shi Han Microsoft Research, Dongmei Zhang Microsoft Research, Hongbin Sun Xi'an Jiaotong University
Pre-print
14:45
7m
Talk
Task Context: A Tool for Predicting Code Context Models for Software Development Tasks
DEMO - Demonstrations
Yifeng Wang Zhejiang University, Yuhang Lin Zhejiang University, Zhiyuan Wan Zhejiang University, Xiaohu Yang Zhejiang University
Pre-print Media Attached
14:52
7m
Talk
Continuously Accelerating Research
NIER - New Ideas and Emerging Results
Sergey Mechtaev University College London, Jonathan Bell Northeastern University, Christopher Steven Timperley Carnegie Mellon University, Earl T. Barr University College London, Michael Hilton Carnegie Mellon University
Pre-print
15:00
7m
Talk
An Alternative to Cells for Selective Execution of Data Science Pipelines
NIER - New Ideas and Emerging Results
Lars Reimann University of Bonn, Günter Kniesel-Wünsche University of Bonn
Pre-print
15:07
7m
Talk
pytest-inline: An Inline Testing Tool for Python
DEMO - Demonstrations
Yu Liu University of Texas at Austin, Zachary Thurston Cornell University, Alan Han Cornell University, Pengyu Nie University of Texas at Austin, Milos Gligoric University of Texas at Austin, Owolabi Legunsen Cornell University