Abstract

Software undergoes a myriad of small changes along its life-cycle. It may be extremely resource and time consuming to verify each new version from scratch. To remedy this problem, this chapter describes how to use function summaries to enable incremental verification of evolving systems. The approach maintains function summaries derived using Craig interpolation. For each new version, these summaries are used to perform a local incremental check. The cost of the check depends on the change impact between the two versions and can be performed cheaply for incremental changes without a need to re-verify the entire system. This chapter discusses the theory and implementation of the approach in the scope of the bounded model checker for C, eVolCheck. Our experimentation with eVolCheck confirms that incremental changes can be verified efficiently for different classes of industrial programs. The chapter is based on the research previously published in [SFS12b] and [FSS13].

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call