Verifying Asymptotic Time Complexity of Imperative Programs in Isabelle

02/05/2018
by   Bohua Zhan, et al.
0

We present a framework in Isabelle for verifying asymptotic time complexity of imperative programs. We build upon an extension of Imperative HOL and its separation logic to include running time. In addition to the basic arguments, our framework is able to handle advanced techniques for time complexity analysis, such as the use of the Akra-Bazzi theorem and amortized analysis. Various automation is built and incorporated into the auto2 prover to reason about separation logic with time credits, and to derive asymptotic behavior of functions. As case studies, we verify the asymptotic time complexity (in addition to functional correctness) of imperative algorithms and data structures such as median of medians selection, Karatsuba's algorithm, and splay trees.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
08/06/2021

Verifying Time Complexity of Binary Search using Dafny

Formal software verification techniques are widely used to specify and p...
research
05/04/2020

Span programs and quantum time complexity

Span programs are an important model of quantum computation due to their...
research
01/16/2023

A separation logic for sequences in pointer programs and its decidability

Separation logic and its variants can describe various properties on poi...
research
12/03/2020

Constructing Segmented Differentiable Quadratics to Determine Algorithmic Run Times and Model Non-Polynomial Functions

We propose an approach to determine the continual progression of algorit...
research
10/26/2021

Time Complexity Analysis of an Evolutionary Algorithm for approximating Nash Equilibriums

The framework outlined in [arXiv:2010.13024] provides an approximation a...
research
10/26/2017

Automated Lemma Synthesis in Symbolic-Heap Separation Logic

The symbolic-heap fragment of separation logic has been actively develop...
research
06/10/2020

Empirical Time Complexity of Generic Dijkstra Algorithm

Generic Dijkstra is a novel algorithm for finding the optimal shortest p...

Please sign up or login with your details

Forgot password? Click here to reset