FLOC 2018: FEDERATED LOGIC CONFERENCE 2018
Understanding Parameters of Deductive Verification: An Empirical Investigation of KeY

Authors: Alexander Knüppel, Thomas Thüm, Carsten Pardylla and Ina Schaefer

Paper Information

Title:Understanding Parameters of Deductive Verification: An Empirical Investigation of KeY
Authors:Alexander Knüppel, Thomas Thüm, Carsten Pardylla and Ina Schaefer
Proceedings:ITP Papers
Editors: Jeremy Avigad and Assia Mahboubi
Keywords:Deductive verification, Design by contract, Formal methods, Theorem proving, KeY, Control parameters, Automated reasoning
Abstract:

ABSTRACT. As formal verification of software systems is a complex task comprising many algorithms and heuristics, modern theorem provers offer numerous parameters that are to be selected by a user to control how a piece of software is verified. Evidently, the number of parameters even increases with each new release. One challenge is that default parameters are often insufficient to close proofs automatically and are not optimal in terms of verification effort. The verification phase becomes hardly accessible for non-experts, who typically must follow a time-consuming trial-and-error strategy to choose the right parameters for even trivial pieces of software. To aid users of deductive verification, we apply machine learning techniques to empirically investigate which parameters and combinations thereof impair or improve provability and verification effort. We exemplify our procedure on the deductive verification system KeY 2.6.1 and formulate 38 hypotheses of which only two have been invalidated. We identified parameters that portrait a trade-off between high provability and low verification effort, enabling the possibility to prioritize the selection of a parameter for either direction. Our insights give tool builders a better understanding of their control parameters and constitute a stepping stone towards automated deductive verification and better applicability of verification tools for non-experts.

Pages:19
Talk:Jul 09 16:00 (Session 51C)
Paper: