Изменения

Перейти к: навигация, поиск

Неравенство Макмиллана

167 байт убрано, 15:46, 23 декабря 2017
Нет описания правки
<tex> \sum\limits_{i = 1}^{|A|} 2^{-l_i} \leqslant 1</tex> (где <tex>l_i</tex> {{---}} длины кодовых слов) выполняется для любого [[Кодирование информации | однозначно декодируемого кода.]]
|proof=
Докажем теорему способом, приведенным в книге А. Шеня "Программирование: теоремы и задачи".
 
Пусть имеется [[Кодирование информации | однозначный код]] с <tex>k</tex> кодовыми словами <tex>P_1,\dots, P_k</tex>. Необходимо доказать, что их длины <tex>n_i=|P_i|</tex> удовлетворяют неравенству Макмиллана.
Подставим <tex>a=b= </tex> <tex dpi = 150> \frac{1}{2}</tex> в неравенство. Для кодового слова <tex>P_i</tex> длины <tex>{n_i}</tex> получим <tex>2^{-n_i}</tex>. В левой части получится выражение из неравенства Макмиллана: <tex>(2^{-n_1}+2^{-n_2}+\dots+2^{-n_k})^N</tex>. Всего имеется не более <tex>2^l</tex> слагаемых длины <tex>l</tex> равных <tex>2^{-l}</tex>, следовательно слагаемые данной длины в сумме не превосходят единицы, а правая часть не превосходит максимальной длины слагаемых: <tex>N\times{\max(n_i)}</tex>. Получаем, что <tex>(2^{-n_1}+2^{-n_2}+\dots+2^{-n_k})^N \leqslant N\times{\max(n_i)}</tex> верно для любого <tex>N</tex>. Так как показательная функция растет быстрее линейной, то при основании (сумма <tex>2^{-n_i}</tex>) большем единицы неравенство нарушается. Поэтому, для [[Кодирование информации | однозначного кода]] выполняется неравенство Макмиллана.
}}
 
== См.также ==
*[[Неравенство Крафта]]
== Источники информации ==
*[http://ru.wikipedia.org/wiki/Неравенство_Крафта_—_Макмиллана Википедия — Неравенство Макмиллана]
*''Шень А. Х.'' Программирование: теоремы и задачи. {{---}} М.: МЦНМО, 2011. С. 206 - 210. ISBN 978-5-94057-696-9
 
== См.также ==
*[[Неравенство Крафта]]
[[Категория: Дискретная математика и алгоритмы]]
[[Категория: Алгоритмы сжатия]]
Анонимный участник

Навигация