An implementation of flow calculus for complexity analysis (tool paper)

06/24/2021
by   Clément Aubert, et al.
0

Abstract. We present a tool to automatically perform the data-size analysis of imperative programs written in C. This tool, called pymwp, is inspired by a classical work on complexity analysis [10], and allows to certify that the size of the values computed by a program will be bounded by a polynomial in the program's inputs. Strategies to provide meaningful feedback on non-polynomial programs and to “tame” the non-determinism of the original analysis were implemented following recent progresses [3], but required particular care to accommodate the growing complexity of the analysis. The Python source code is intensively documented, and our numerous example files encompass the original examples as well as multiple test cases. A pip package should make it easy to install pymwp on any plat-form, but an on-line demo is also available for convenience.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
03/08/2022

mwp-Analysis Improvement and Implementation: Realizing Implicit Computational Complexity

Implicit Computational Complexity (ICC) drives better understanding of c...
research
06/24/2021

An extended and more practical mwp flow analysis

We improve and refine a method for certifying that the values' sizes com...
research
07/04/2021

The Composability of Intermediate Values in Composable Inductive Programming

It is believed that mechanisms including intermediate values enable comp...
research
10/25/2016

Operational calculus on programming spaces

In this paper we develop operational calculus on programming spaces that...
research
10/06/2020

Tight Polynomial Bounds for Loop Programs in Polynomial Space

We consider the following problem: given a program, find tight asymptoti...
research
09/14/2022

Automated Synthesis of Asynchronizations

Asynchronous programming is widely adopted for building responsive and e...
research
07/21/2020

What Programs Want: Automatic Inference of Input Data Specifications

Nowadays, as machine-learned software quickly permeates our society, we ...

Please sign up or login with your details

Forgot password? Click here to reset