Separation Logic with Time Credits is a well established method to formally verify the correctness and run-time of algorithms, which has been applied to various medium-sized use-cases. Refinement is a technique in program verification that makes software projects of larger scale manageable. Combining these two techniques for the first time, we present a methodology for verifying the functional correctness and the run-time analysis of algorithms in a modular way. We use it to verify Kruskal\u27s minimum spanning tree algorithm and the Edmonds - Karp algorithm for network flow. An adaptation of the Isabelle Refinement Framework [Lammich and Tuerk, 2012] enables us to specify the functional result and the run-time behaviour of abstract algori...
Abstract. We study µHML (a branching-time logic with least and greatest fixpoints) from a runtime ve...
We study μHML (a branching-time logic with least and greatest fixpoints) from a runtime verificatio...
The refinement calculus provides a methodology for transforming an abstract specification into a con...
This document presents a formal method to verify execution time bounds of programs at the source lev...
We present an LTL model checker whose code has been completely verified using the Isabelle theorem p...
We present a framework to generate verified LLVM programs from Isabelle/HOL. It is based on a code g...
16 pagesInternational audienceThis article proposes a method for proving the correctness of graph al...
Stepwise program refinement techniques can be used to simplify program verification. Programs are be...
This thesis puts forward a flexible and principled approach to the development of construction and ...
Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2018Interna...
Abstract. Executable formal contracts help verify a program at run-time when static verification fai...
According to a study in 2002 commissioned by a US Department, software bugs annually costs the US ec...
The notion of refinement plays an important role in software engineering. It is the basis of a stepw...
The paper surveys how software tools such as refactoring systems can be validated, and introduces a ...
This paper presents a proof system for reasoning about execution time bounds for a core imperative p...
Abstract. We study µHML (a branching-time logic with least and greatest fixpoints) from a runtime ve...
We study μHML (a branching-time logic with least and greatest fixpoints) from a runtime verificatio...
The refinement calculus provides a methodology for transforming an abstract specification into a con...
This document presents a formal method to verify execution time bounds of programs at the source lev...
We present an LTL model checker whose code has been completely verified using the Isabelle theorem p...
We present a framework to generate verified LLVM programs from Isabelle/HOL. It is based on a code g...
16 pagesInternational audienceThis article proposes a method for proving the correctness of graph al...
Stepwise program refinement techniques can be used to simplify program verification. Programs are be...
This thesis puts forward a flexible and principled approach to the development of construction and ...
Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2018Interna...
Abstract. Executable formal contracts help verify a program at run-time when static verification fai...
According to a study in 2002 commissioned by a US Department, software bugs annually costs the US ec...
The notion of refinement plays an important role in software engineering. It is the basis of a stepw...
The paper surveys how software tools such as refactoring systems can be validated, and introduces a ...
This paper presents a proof system for reasoning about execution time bounds for a core imperative p...
Abstract. We study µHML (a branching-time logic with least and greatest fixpoints) from a runtime ve...
We study μHML (a branching-time logic with least and greatest fixpoints) from a runtime verificatio...
The refinement calculus provides a methodology for transforming an abstract specification into a con...