1.2 Kraft-McMillan-Ungleichung
Wir hatten eine binäre Codierung einer Menge
Theorem 1.2.1
(Kraft-McMillan-Ungleichung).
Sei
Umgekehrt gilt: wenn
dann gibt es einen präfixfreien Code
Beweis.
Für den ersten Teil setzen wir
In Worten:
-
. Das gilt, weil es noch Stellen "aufzufüllen" gibt, um die Länge zu erreichen. -
Die Mengen
sind paarweise disjunkt: wenn sein sollte, dann sind und beides Präfixe von . Wenn nun ohne Beschränkung der Allgemeinheit gilt, so muss auch gelten: muss also ein Präfix von sein. Da präfixfrei ist, geht das nur, wenn ist. Die Mengen sind also paarweise disjunkt.
Da
Wenn wir beide Seiten durch
Alternativer Beweis. Falls Ihnen das zu schnell ging,
können wir uns einen Binärbaum
der Tiefe
entspricht der Menge der rot markierten Knoten:
Wir löschen nun alle Knoten, die einen roten Knoten als echten Vorfahren haben. Da keine zwei roten Knoten Vorfahren voneinander sind, wird dabei kein roter Knoten selbst gelöscht:
Dies ist ein vollständiger Binärbaum
Es bleibt zu zeigen, dass letztere Summe gleich 1 ist:
Behauptung 1.2.2 Sei
Beweis.
Wir könnten uns einfach klar machen, dass ein Zufallslauf, der bei der Wurzel beginnt
und
immer zufällig eines der beiden Kinder nimmt, bis er ein Blatt erreicht, natürlich nach
Definition
immer ein Blatt erreicht, und zwar das Blatt
Wenn Ihnen das zu schnell ging, so können wir gerne einen Beweis per Induktion über die
Struktur von
Für den Induktionsschritt bezeichne
Für ein Blatt
Nach Induktionshypothese ist jede der beiden Summen in der letzten Zeile
gleich
Beweis des zweiten Teils. Wir nehmen an, dass die vorgegebenen Längen
aufsteigend sortiert sind:
Das einzige, was wir prüfen müssen ist, dass wir
in jedem Schritt einen weißen Knoten
da nach Annahme