可计算分布在概率编程语义中的应用
1. 伯努利分布相关函数
函数 tm halts within k 接收一个自然数 n 来指定第 n 个图灵机,以及一个自然数 k 来描述运行该图灵机的步数。它会返回第 n 个图灵机停止时的步数,如果无法判断则返回 k 。函数 dk 利用 tm halts within k 来选择 u 或 v 的二进制展开式的不同位,或者选择位 c ,从而生成一个可计算实数的二进制展开式(作为二进有理数),所以它是可计算的。然而,无法计算条件分布 P(N | X) ,因为这将涉及计算停机集,其中随机变量 N 对应程序变量 n , X 对应 x 。
2. λCD 中的分布示例
- 几何分布 :考虑偏置为 1/2 的几何分布的编码,它返回直到成功的伯努利试验次数。
geometric :: SampT Nat
geometric = do
b <- bernoulli (1/2)
if b
then retur
超级会员免费看
订阅专栏 解锁全文

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



