Affiliation:
1. Max Planck Institute for Software Systems, Kaiserslautern, Germany
Abstract
We study the recursion-theoretic complexity of Positive Almost-Sure Termination (
PAST
) in an imperative programming language with rational variables, bounded nondeterministic choice, and discrete probabilistic choice. A program terminates positive almost-surely if, for every scheduler, the program terminates almost-surely and the expected runtime to termination is finite. We show that
PAST
for our language is complete for the (lightface) co-analytic sets (Π
1
1
-complete). This is in contrast to the related notions of Almost-Sure Termination (
AST
) and Bounded Termination (
BAST
), both of which are arithmetical (Π
2
0
- and Σ
2
0
-complete respectively).
Our upper bound implies an effective procedure to reduce reasoning about probabilistic termination to non-probabilistic fair termination in a model with bounded nondeterminism, and to simple program termination in models with unbounded nondeterminism. Our lower bound shows the opposite: for every program with unbounded nondeterministic choice, there is an effectively computable probabilistic program with bounded choice such that the original program is terminating if, and only if, the transformed program is
PAST
.
We show that every program has an effectively computable normal form, in which each probabilistic choice either continues or terminates execution immediately, each with probability 1/2. For normal form programs, we provide a sound and complete proof rule for
PAST
. Our proof rule uses transfinite ordinals. We show that reasoning about
PAST
requires transfinite ordinals up to ω
1
CK
; thus, existing techniques for probabilistic termination based on ranking supermartingales that map program states to reals do not suffice to reason about
PAST
.
Funder
Deutsche Forschungsgemeinschaft
Publisher
Association for Computing Machinery (ACM)
Cited by
1 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Almost-Sure Termination by Guarded Refinement;Proceedings of the ACM on Programming Languages;2024-08-15