2021
DOI: 10.1007/978-3-030-85315-0_20
|View full text |Cite
|
Sign up to set email alerts
|

ComplexityParser: An Automatic Tool for Certifying Poly-Time Complexity of Java Programs

Abstract: ComplexityParser is a static complexity analyzer for Java programs providing the first implementation of a tier-based typing discipline. The input is a file containing Java classes. If the main method can be typed and, provided the program terminates, then the program is guaranteed to do so in polynomial time and hence also to have heap and stack sizes polynomially bounded. The application uses antlr to generate a parse tree on which it performs an efficient type inference: linear in the input size, provided t… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1

Citation Types

0
3
0

Year Published

2022
2022
2024
2024

Publication Types

Select...
3
1

Relationship

0
4

Authors

Journals

citations
Cited by 4 publications
(3 citation statements)
references
References 33 publications
0
3
0
Order By: Relevance
“…Several tools that evaluate resource bounds already exist [1,2,8,12,13,14,15,17]; including LOOPUS [25] and C4B [9], that specialize in C language inputs. Comprehensive evaluations of these tools have also been performed recently [9,11,25].…”
Section: Originalities Of Mwp-flow Analysismentioning
confidence: 99%
See 1 more Smart Citation
“…Several tools that evaluate resource bounds already exist [1,2,8,12,13,14,15,17]; including LOOPUS [25] and C4B [9], that specialize in C language inputs. Comprehensive evaluations of these tools have also been performed recently [9,11,25].…”
Section: Originalities Of Mwp-flow Analysismentioning
confidence: 99%
“…Certification of any program is incomplete if it ignores resource considerations, as runtime failure will occur if usage exceeds available capacity. To address this deficiency, automatic complexity analysis produced many different implementations [9,13,14,15] with varying features. This paper presents the development and specificities of our automatic static complexity analyzer, pymwp.…”
Section: Introduction -Making Use Of Implicit Complexitymentioning
confidence: 99%
“…Other communities share a similar goal of inferring resource-usage. Complexity analyzers such as SPEED [14] for C++, COSTA [1] for Java bytecode, ComplexityParser [16] for Java, Resource Aware ML for OCaml [24] or Cerco [2] and Verasco [20] for C generate (certified) cost or runtime analysis on (subsets of) imperative programming languages. Embracing such a large diversity is difficult, but our technique is different from existing implementations and tools: most of them focus on worst-case resource-usage complexity or termination, while we are interested in upper-bounds on the final values of program variables, i.e.…”
Section: :15mentioning
confidence: 99%