Testing-Based Formal Verification with Program Slicing on Functional Soundness and Completeness
摘要
Soundness and completeness are two sides of the same coin, used in program analysis to balance between catching all errors and avoiding false positives. Testing-based formal verification has been proposed to reduce test costs and improve software reliability by automatically ensuring the correctness of a program execution path with regard to the functional scenario form of a specification. In this paper, we propose the notions of functional soundness and functional completeness with regard to a functional scenario and develop the corresponding analysis techniques by integrating testing-based formal verification with program slicing. Moreover, we implement tool support for the Java language and conduct an experiment.