Debugging Program Verification Proof Scripts (Tool Paper)

04/12/2018
by   Bernhard Beckert, et al.
0

Interactive program verification is characterized by iterations of unfinished proof attempts. To support the process of constructing a complete proof, many interactive program verification systems offer a proof scripting language as a text-based way to describe the non-automatic steps in a proof. Such scripting languages are beneficial, but users spent a lot of effort on inspecting proof scripts and the proofs they construct to detect the cause when a proof attempt is unsuccessful and leads to unintended proof states. We present an offline and replay debugger to support the user in analyzing proof attempts performed with proof scripts. This debugger adapts successful concepts from software debugging to the area of proof script debugging. The tool is built on top of KeY, a system for deductive verification of Java programs. The debugger and its graphical user interface are designed to support program verification in particular, the underlying concepts and the implementation, however, are adaptable to other provers and proof tasks.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
07/09/2019

Understanding Counterexamples for Relational Properties with DIbugger

Software verification is a tedious process that involves the analysis of...
research
11/27/2018

Lightweight Interactive Proving inside an Automatic Program Verifier

Among formal methods, the deductive verification approach allows establi...
research
05/03/2023

Proof in the time of machines

We compare the values associated with (traditional) community based proo...
research
08/06/2021

How the Analyzer can Help the User Help the Analyzer

The automation offered by modern program proof tools goes hand in hand w...
research
08/21/2022

A Failed Proof Can Yield a Useful Test

A successful automated program proof is, in software verification, the u...
research
10/21/2022

A drag-and-drop proof tactic

We explore the features of a user interface where formal proofs can be b...
research
08/21/2022

Improving Counterexample Quality from Failed Program Verification

In software verification, a successful automated program proof is the ul...

Please sign up or login with your details

Forgot password? Click here to reset