Abstract

AbstractThis paper gives an overview of the KIV system, which in its long history has evolved from a prover for sequential programs using Dynamic Logic to a general purpose theorem prover. Today, KIV’s main focus is the refinement-based development of sequential and concurrent software systems. In this paper we describe KIV’s logic, highlighting recent developments such as support for polymorphism and for exceptions in programs. We show its proof engineering support that uses a graphical user interface and explicit proof trees, as well as KIV’s support for the development of large-scale software systems using modular components and for the verification of concurrent algorithms using a rely-guarantee calculus. Finally, we give a short survey over the case studies that have been conducted with KIV.KeywordsFormal MethodsInteractive Theorem ProvingPolymorphic Higher-Order Logicwp CalculusRely Guarantee Calculus

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