Quantitative Bounds on Resource Usage of Probabilistic Programs

Krishnendu Chatterjee, Amir Kafshdar Goharshady, Tobias Meggendorfer, Dorke Žikelic

Research output: Contribution to journalArticlepeer-review

1 Scopus citations

Abstract

Cost analysis, also known as resource usage analysis, is the task of finding bounds on the total cost of a program and is a well-studied problem in static analysis. In this work, we consider two classical quantitative problems in cost analysis for probabilistic programs. The first problem is to find a bound on the expected total cost of the program. This is a natural measure for the resource usage of the program and can also be directly applied to average-case runtime analysis. The second problem asks for a tail bound, i.e. given a threshold t the goal is to find a probability bound p such that ℙ [total cost ≥ t] ≤ p. Intuitively, given a threshold t on the resource, the problem is to find the likelihood that the total cost exceeds this threshold. First, for expectation bounds, a major obstacle in previous works on cost analysis is that they can handle only non-negative costs or bounded variable updates. In contrast, we provide a new variant of the standard notion of cost martingales, that allows us to find expectation bounds for a class of programs with general positive or negative costs and no restriction on the variable updates. More specifically, our approach is applicable as long as there is a lower bound on the total cost incurred along every path. Second, for tail bounds, all previous methods are limited to programs in which the expected total cost is finite. In contrast, we present a novel approach, based on a combination of our martingale-based method for expectation bounds with a quantitative safety analysis, to obtain a solution to the tail bound problem that is applicable even to programs with infinite expected cost. Specifically, this allows us to obtain runtime tail bounds for programs that do not terminate almost-surely. In summary, we provide a novel combination of martingale-based cost analysis and quantitative safety analysis that is able to find expectation and tail cost bounds for probabilistic programs, without the restrictions of non-negative costs, bounded updates, or finiteness of the expected total cost. Finally, we provide experimental results showcasing that our approach can solve instances that were beyond the reach of previous methods.

Original languageEnglish
Article number107
JournalProceedings of the ACM on Programming Languages
Volume8
Issue numberOOPSLA1
DOIs
StatePublished - 29 Apr 2024
Externally publishedYes

Keywords

  • Cost Analysis
  • Martingales
  • Probabilistic Programming
  • Quantitative Bounds
  • Static Analysis

Fingerprint

Dive into the research topics of 'Quantitative Bounds on Resource Usage of Probabilistic Programs'. Together they form a unique fingerprint.

Cite this