“则Kraft–McMillan 不等式给出 converse(下界):”
形式陈述 ​
设码字母表大小为
-
Kraft 必要性:任意
元前缀码都满足 -
Kraft 充分性:若一组正整数满足
,则存在一个恰以这些整数为码长的 元前缀码。 -
McMillan 必要性:任意
元唯一可译码的码长也满足同一个不等式。
因此,在只问“这组整数长度能否由某个唯一可译码实现”时,允许一般唯一可译码并不会扩大可行长度集合:满足不等式时总能选择更便于译码的前缀码。
直觉
在无限
这个不等式只看到长度多重集,看不到具体码符号,也看不到哪个源符号获得哪一长度。可行性与概率加权的最优分配是两个不同问题。
前缀码部分的证明机制 ​
令
两边除以
McMillan 部分的证明机制 ​
令
取
例子与边界
可复算例:可行与不可行长度 ​
二元长度
可由 0,10,110,111 实现。长度
所以不存在具有这些长度的二元前缀码,甚至不存在唯一可译码。
边界与失败情形 ​
允许长度零时,空码字占用
推论与应用
把 Kraft 约束与概率
Huffman 编码在整数可行长度中求精确的逐符号最优解;无噪声编码定理则对长块应用同一约束,把每符号整数舍入损失压到零。
参考资料
- Leon G. Kraft, “A Device for Quantizing, Grouping, and Coding Amplitude-Modulated Pulses,” M.S. thesis, MIT, 1949.
- Brockway McMillan, “Two Inequalities Implied by Unique Decipherability,” IRE Transactions on Information Theory 2(4), 1956, pp. 115–116.
- Thomas M. Cover and Joy A. Thomas, Elements of Information Theory, 2nd ed., Wiley, 2006, §§5.2–5.4.