2018
DOI: 10.1017/s1471068418000042
|View full text |Cite
|
Sign up to set email alerts
|

Interval-based resource usage verification by translation into Horn clauses and an application to energy consumption

Abstract: In many applications it is important to ensure conformance with respect to specifications that constrain the use of resources such as execution time, energy, bandwidth, etc. We present a configurable framework for static resource usage verification where specifications can include data size-dependent resource usage functions, expressing both lower and upper bounds. Ensuring conformance with respect to such specifications is an undecidable problem. Therefore, our framework infers resource usage functions (of th… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
4
1

Citation Types

0
16
0

Year Published

2019
2019
2023
2023

Publication Types

Select...
5
1

Relationship

1
5

Authors

Journals

citations
Cited by 21 publications
(16 citation statements)
references
References 38 publications
0
16
0
Order By: Relevance
“…For the remaining cases, where a max(e 1 , e 2 ) appears, we try to eliminate the max operator by proving either e 1 ≤ e 2 or e 2 ≤ e 1 , for any input. In order to do that, we use the function comparison capabilities of CiaoPP, presented in [19,20]. In cases where e 1 and/or e 2 contains non-closed recurrence functions, we use the Z3 SMT solver [7] to find, if possible, a proof either for e 1 ≤ e 2 or e 2 ≤ e 1 , treating the non-closed functions as uninterpreted functions, assuming that they are positive and non-decreasing.…”
Section: Solving Cost Recurrence Relations Involving Max Operationmentioning
confidence: 99%
“…For the remaining cases, where a max(e 1 , e 2 ) appears, we try to eliminate the max operator by proving either e 1 ≤ e 2 or e 2 ≤ e 1 , for any input. In order to do that, we use the function comparison capabilities of CiaoPP, presented in [19,20]. In cases where e 1 and/or e 2 contains non-closed recurrence functions, we use the Z3 SMT solver [7] to find, if possible, a proof either for e 1 ≤ e 2 or e 2 ≤ e 1 , treating the non-closed functions as uninterpreted functions, assuming that they are positive and non-decreasing.…”
Section: Solving Cost Recurrence Relations Involving Max Operationmentioning
confidence: 99%
“…To the best of our knowledge, existing approaches are generally limited to a single resource. The few approaches that do trade energy requirements with performance constraints [3,51], with one notable exception [33], treat both properties as a constraint within the compilation/optimisation stage, and do not allow the programmer to reason about them. Conversely, and since the approach presented here builds upon, and uses, existing tools, it is both possible and simple to express assertions about multiple non-functional properties at the program level.…”
Section: Related Workmentioning
confidence: 99%
“…The aforementioned notable exception, the Ciao Preprocessor system (CiaoPP) [20,33,41], enables the programmer to infer resource usage, and reason about the correctness of programs with respect to resource usage information. CiaoPP achieves this by translating annotated programs in high-level languages, e.g.…”
Section: Related Workmentioning
confidence: 99%
See 2 more Smart Citations