“随机程序还需区分几乎必然终止与有限期望时间。排序上鞅把逐步下降改成统一条件期望下降,在非负性和可积性等条件下给出终止及时间界;任意非负上鞅本身并不是终止证书。”
形式陈述
设
则
结论是
因而程序几乎必然终止。[1,2] 时间按这里的循环步数计算;若一步可执行无界成本工作,还不能直接把此界当作完整运行时间。
直觉
单条路径可以偶尔向上走,甚至连续很多次上涨;证明不要求每次严格下降。要求的是在知道当前全部历史后,下一步的平均变化仍有统一负余量,且资本不能逃到负无穷。
这个余量给每一个未结束步骤标了至少
例子与边界
有偏随机游走的三倍界
令
因此
不靠不当交换极限的证明
对条件不等式取期望并累加
非负性允许丢掉第一项,尾和等于
普通非负上鞅还不够
永不退出的循环可取
若改为对称游走,从
推论与应用
自动验证常从线性或多项式候选
更一般的 AST 规则允许下降幅度或下降概率依赖当前势值,从而覆盖没有有限期望时间的程序。[1] 本页只陈述最容易核算的统一加性版本,不能把它的充分条件当成 AST 的必要条件。
参考资料
- [1] Annabelle McIver et al., A New Proof Rule for Almost-Sure Termination, 2018,统一下降规则的边界与更一般 AST 规则。
- [2] Benjamin Lucien Kaminski et al., Weakest Precondition Reasoning for Expected Run-Times of Probabilistic Programs, 2016,期望时间上界和概率循环分析。