Title: FaSAS: A Feedback-Augmented Stepwise Algorithm Selection for Software Verification
Primary area: unsupervised, self-supervised, semi-supervised, and supervised representation learning
Keywords: Algorithm Selection, Software Verification, Graph Neural Networks, Machine Learning, Data Labeling, Feedback Adjustment

Abstract: Appropriate algorithm selection is a critical challenge in software verification, which typically demands domain expertise and non-trivial manpower. However, existing selectors, either dependent on machine-learned strategies or manually crafted heuristics, encounter issues such as reliance on high-quality samples with ground truth algorithm labels and limited scalability. In this paper, we propose an automated algorithm selection approach, FaSAS, for software verification. FaSAS embeds the code property graph of a semantic-preserving transformed program to enhance the robustness of the prediction model. Furthermore, our approach decomposes the selection task into the sub-tasks of predicting potentially applicable algorithms and matching the most appropriate verifiers. It further incorporates a feedback mechanism to refine predictions iteratively. Experimental results demonstrate the effectiveness of FaSAS, achieving a prediction accuracy of 91.47\% without ground truth algorithm labels provided during the training phase. Moreover, FaSAS exhibits the least resource overhead compared to other approaches while solving the most verification tasks.

TL;DR: This paper introduces FaSAS, an innovative algorithm selection approach for software verification, utilizing code property graphs and a feedback mechanism to achieve high prediction accuracy and scalability without relying on high-quality samples.