Home > Research > Publications & Outputs > Quantitative Bounds on Resource Usage of Probab...

Links

Text available via DOI:

View graph of relations

Quantitative Bounds on Resource Usage of Probabilistic Programs

Research output: Contribution to Journal/MagazineJournal articlepeer-review

Published

Standard

Quantitative Bounds on Resource Usage of Probabilistic Programs. / Chatterjee, Krishnendu; Goharshady, Amir Kafshdar; Meggendorfer, Tobias et al.
In: Proceedings of the ACM on Programming Languages, Vol. 8, No. OOPSLA1, 29.04.2024, p. 362-391.

Research output: Contribution to Journal/MagazineJournal articlepeer-review

Harvard

Chatterjee, K, Goharshady, AK, Meggendorfer, T & Žikelić, Đ 2024, 'Quantitative Bounds on Resource Usage of Probabilistic Programs', Proceedings of the ACM on Programming Languages, vol. 8, no. OOPSLA1, pp. 362-391. https://doi.org/10.1145/3649824

APA

Chatterjee, K., Goharshady, A. K., Meggendorfer, T., & Žikelić, Đ. (2024). Quantitative Bounds on Resource Usage of Probabilistic Programs. Proceedings of the ACM on Programming Languages, 8(OOPSLA1), 362-391. https://doi.org/10.1145/3649824

Vancouver

Chatterjee K, Goharshady AK, Meggendorfer T, Žikelić Đ. Quantitative Bounds on Resource Usage of Probabilistic Programs. Proceedings of the ACM on Programming Languages. 2024 Apr 29;8(OOPSLA1):362-391. doi: 10.1145/3649824

Author

Chatterjee, Krishnendu ; Goharshady, Amir Kafshdar ; Meggendorfer, Tobias et al. / Quantitative Bounds on Resource Usage of Probabilistic Programs. In: Proceedings of the ACM on Programming Languages. 2024 ; Vol. 8, No. OOPSLA1. pp. 362-391.

Bibtex

@article{0b3d57058e5142d9ba7d32c7632ab01c,
title = "Quantitative Bounds on Resource Usage of Probabilistic Programs",
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.",
author = "Krishnendu Chatterjee and Goharshady, {Amir Kafshdar} and Tobias Meggendorfer and {\D}or{\d}e {\v Z}ikeli{\'c}",
year = "2024",
month = apr,
day = "29",
doi = "10.1145/3649824",
language = "English",
volume = "8",
pages = "362--391",
journal = "Proceedings of the ACM on Programming Languages",
issn = "2475-1421",
publisher = "ACM",
number = "OOPSLA1",

}

RIS

TY - JOUR

T1 - Quantitative Bounds on Resource Usage of Probabilistic Programs

AU - Chatterjee, Krishnendu

AU - Goharshady, Amir Kafshdar

AU - Meggendorfer, Tobias

AU - Žikelić, Đorđe

PY - 2024/4/29

Y1 - 2024/4/29

N2 - 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.

AB - 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.

U2 - 10.1145/3649824

DO - 10.1145/3649824

M3 - Journal article

VL - 8

SP - 362

EP - 391

JO - Proceedings of the ACM on Programming Languages

JF - Proceedings of the ACM on Programming Languages

SN - 2475-1421

IS - OOPSLA1

ER -