可概率求解循环的基于矩的不变量自动生成
1. 编程模型:可概率求解程序
可概率求解程序是在概率 P - 可解程序基础上发展而来。P - 可解程序是一类非确定性循环,其行为可以通过程序变量上的 C - 有限递归系统来表示。而可概率求解程序则在此基础上,允许对随机变量和分布进行概率赋值。
1.1 可概率求解循环的定义
设 $m \in N$,$x_1, \ldots, x_m$ 为实值程序变量。可概率求解循环的形式为:
I; while(true){U}
其中:
- $I$ 是对 $x_1, \ldots, x_m$ 的初始赋值序列,即 $x_1 := c_1; x_2 := c_2; \ldots; x_m := c_m$,其中 $c_i \in R$ 是从已知分布中抽取的数,特别地,$c_i$ 可以是实常数。
- $U$ 是循环体,由 $m$ 个随机更新组成,每个更新形式为:
- 概率更新:$x_i := a_ix_i + P_i(x_1, \ldots, x_{i - 1}) [p_i] b_ix_i + Q_i(x_1, \ldots, x_{i - 1})$
- 确定性赋值:$x_i := a_ix_i + P_i(x_1, \ldots, x_{i - 1})$
这里,$a_i, b_i \in R$ 是常数,$P_i, Q_i \in R[x_1, \ldots, x_{i - 1}]$ 是关于程序变量 $x_1, \ldots, x_{i - 1}$ 的多项式。$p_i \in [
超级会员免费看
订阅专栏 解锁全文
13

被折叠的 条评论
为什么被折叠?



