形式陈述
本页采用离散半测度约定。对可数、有效编码的输出集合 ,函数 满足
时称为半测度。它放宽概率分布公理库概率分布Probability distribution · Law可测空间上总质量为一的测度;随机变量的律是由样本概率推出的一类分布。的总质量等于一,允许某些概率质量没有产生输出。
若存在由同一全可计算函数公理库可计算函数Computable function · Recursive function有图灵机对每个合法输入都停机并输出其值的全函数。在输入 上给出的有理数 ,满足 且 ,则 下半可计算。我们可以逐步确认质量已经至少有多少,却未必能计算剩余误差。[1, coding theorem 部分]
若 是前缀自由定义域的部分可计算函数公理库部分可计算函数Partial computable function允许机器在函数未定义的输入上不停机的部分函数。,定义
交错模拟程序,每发现一个新停机输入便加入其权重,给出单调下逼近;前缀自由性经Kraft 不等式公理库Kraft–McMillan 不等式Kraft–McMillan inequality刻画给定码长集合存在前缀码或唯一可译码的必要充分不等式。保证总质量至多一。
直觉
质量表示随机输入落在某个会停机输出 的程序上的概率。模拟只能发现已经停机的程序,不能把尚未停机的程序可靠地宣布为永不停止。因此每个输出的质量往往只有向上的近似。
丢失质量有两种可兼容解释:随机比特没有形成被接受的程序,或形成的计算没有终止。只观察输出分布时,两者都表现为总质量不足一;若应用需要区分原因,模型必须另加状态。
例子与边界
多个程序会把质量汇到同一输出
设一台机器仅在程序 0、10、110 上停机,分别输出 、、。这三个程序前缀自由,因此
剩余 没有输出。若模拟先发现 110,再发现 0,最后发现 10, 会从 跳到 再到 ;不需要按程序长度发现,也不能在尚未发现 10 时断言 的质量已算完。
下半可计算通常不等于可计算
取一个不可计算的左 c.e. 实数 ,令 、其余输出质量为零,就得到下半可计算半测度,却不是可计算分布。相反,若一个离散下半可计算半测度已知总质量恰为一,则每个 都可计算:其他输出的质量和从下逼近,给 从上逼近;上下界最终夹到任意精度。
这一论证说明归一化不是无害修饰。若总质量本身不可计算,除以它可能破坏有效性;不能先强行归一化,再声称得到可计算概率分布。
同一个名称还有树版本
有些文献把 满足
称为连续或树半测度。这里 是输出延续某前缀的质量,不是输出恰好等于 的质量。两种约定不可把同一个公式直接互换;后续编码定理公理库算法编码定理Algorithmic coding theorem · Levin coding theorem证明通用离散算法概率的负对数等于前缀复杂度加常数,并用阈值编码展示如何把可枚举质量变成短描述。使用本页的离散版本。
推论与应用
存在一个通用下半可计算离散半测度 ,对任意同类半测度 都有常数 ,使 。构造先有效枚举经过预算约束的候选半测度,再作混合 。逐个分量的系数保证总质量不超过一,并给出对第 个分量的支配常数。
这不是逐点取最大值,后者可能超出总预算。算法编码定理公理库算法编码定理Algorithmic coding theorem · Levin coding theorem证明通用离散算法概率的负对数等于前缀复杂度加常数,并用阈值编码展示如何把可枚举质量变成短描述。进一步证明通用质量的负对数与最短前缀描述长度只差一个常数。
参考资料