“对程序 $C$ 的终止次概率核 $K C$ 和非负可测后期望 $f:S\to[0,\infty]$,定义最弱前期望”
形式陈述
固定可测状态空间
它与概率核一样要求对事件是测度、对输入是可测函数,只把总质量一放宽成不超过一。
若状态离散,可写
直觉
普通输出分布会默认程序总能给出结果。概率程序可能有一部分执行永远不返回,此时把剩余结果强行归一化,会悄悄改成“已知终止”的条件分布,抹掉程序失败返回的风险。
次概率语义保留这个缺口,而且缺口会穿过顺序组合:第一段未返回的质量,根本没有机会进入第二段。
例子与边界
返回一半,另一半永远循环
程序先掷公平币:正面令
输出不是概率一的
顺序组合把丢失质量继续传下去
设 ok,其余不终止;从 ok。则
一般公式为
总质量
循环由有限展开逼近
重复独立掷币,首次正面时返回;每次正面概率
这些有限展开的次分布单调增加,极限质量为一。若
推论与应用
最弱前期望是该核对输出奖励的积分;取奖励恒为一,就读出终止概率。对任意可测事件
可以添加一个显式状态
条件化与评分引入后,质量还可能因拒绝证据而减少,或因评分而超过一。那时单靠“缺失质量等于不终止”已不够,必须扩展语义解释。
参考资料
- [1] Benjamin Lucien Kaminski et al., Weakest Precondition Reasoning for Expected Run-Times of Probabilistic Programs, 2016,概率程序、期望变换器及操作对应。
- [2] Nils Jansen et al., Conditioning in Probabilistic Programming, 2015,次概率执行语义与条件化边界。