Differential Cost Analysis with Simultaneous Potentials and Anti-potentials
{\DJ}or{\dj}e \v{Z}ikeli\'c, Bor-Yuh Evan Chang, Pauline Bolignano,, Franco Raimondi

TL;DR
This paper introduces a new automated method for differential cost analysis that uses simultaneous potentials and anti-potentials to bound resource differences between program versions without requiring program alignment.
Contribution
It proposes a novel approach that bounds the difference in costs by analyzing potential functions, avoiding the limitations of previous relational methods requiring program alignment.
Findings
Computes tight threshold values for relative costs in most tested examples.
Applicable to programs that are not syntactically similar and support non-determinism.
Fully automated approach with effective results on literature-collected program pairs.
Abstract
We present a novel approach to differential cost analysis that, given a program revision, attempts to statically bound the difference in resource usage, or cost, between the two program versions. Differential cost analysis is particularly interesting because of the many compelling applications for it, such as detecting resource-use regressions at code-review time or proving the absence of certain side-channel vulnerabilities. One prior approach to differential cost analysis is to apply relational reasoning that conceptually constructs a product program on which one can over-approximate the difference in costs between the two program versions. However, a significant challenge in any relational approach is effectively aligning the program versions to get precise results. In this paper, our key insight is that we can avoid the need for and the limitations of program alignment if, instead,…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Reliability and Analysis Research · Software Engineering Research · Formal Methods in Verification
