Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
2Diskretnaya_matematika_-_2_semestr.doc
Скачиваний:
46
Добавлен:
26.09.2019
Размер:
5.82 Mб
Скачать

17(34) Неравенство Макмиллана.

Пусть задано алфавитное кодирование со схемой Σ:

a1→b~1

a2→b~2

…………..

an→b~n

Пусть l(b~i)=li-длина слова b~I, i=1…r. Обозначим за q число букв в алфавите b.

Теорема (Неравенство Макмиллана): Если алфавитное кодирование со схемой Σ обладает свойством взаимной однозначности, то Σni=11/qli<=1(*)

Теорема: Если числа l1,l2,…,ln удовлетворяет *, то ∃ алфавитное кодирование со схемой Σ: a1→b~1, a2→b~2, an→b~n, обладающее свойством префикса и удовлетворяющее равенствам: l(b~1)=l1

l(b~2)=l2

……………

l(b~r)=lr

Следствие: неравенство Макмиллана является необходимым и достаточным условием алфавитного кодирования, у которого схема обладает свойством префикса и длины элементарных кодов равны соответственно l1,…,ln.

Следствие: Если существует взаимно однозначное алфавитное кодирование с заданными длинами элементарных кодов, то существует также алфавитное кодирование со схемой, обладающей свойством префикса и с теми же длинами элементарных кодов.

Для доказательства сперва применим первое следствие, затем второе.

Задача: с помощью неравенства Макмиллана выяснить, может ли множество L быть набором длин кодовых слов однозначно декодируемого кода в q-значном алфавите.

1)L={1,2,2,3}, q=2

l1 =1, l2=2, l3=2, l4=3

Σni=11/qli<=1

Σni=11/qli=1/21+1/22+1/22+1/23=1/2+1/4+1/4+1/8=9/8>1⇒множество L не может быть таким набором.

18(35) Коды с минимальной избыточностью. Примеры.

Пусть задан алфавит А={a1,a2,…,ar} , и набор положительных вероятностей p1,p2,…,pr : . Появление символов a1,a2,…,ar в сообщениях (предполагается, что символы a1,a2,…,ar появляются в сообщениях независимо). Далее пусть задан алфавит В={b1,b2,…,bq}, , тогда можно построить целый ряд схем алфавитного кодирования: : a1 -

а2 -

ar -

обладающих свойством взаимной однозначности. В частности всегда можно взять в качестве элементарных кодов ,…, различные слова в алфавите В, одинаковой длины – l, где l=]logqr[, т.к мы имеем , при i=1..r, пусть li=l, тогда , возьмем =1. =>

ql=r => l=logqr, т.к , то l=]logqr[.

Для каждой схемы можно ввести среднюю длину lcр, определяющую для математического ожидания длину элементарного кода, т.е , li=l( ). Величина показывает во сколько раз увеличивается средняя длина слова при кодировании со схемой .

Пример:

r=4, q=2, p1=0,40, p2=0,25, p3=0,20, p4=0,15.

Рассмотрим 2 схемы алфавитного кодирования:

: а1 – 00, а2 – 01, а3 – 10, а4 – 11.

: а1 – 1, а2 – 01, а3 – 000, а4 – 001.

= 0,40*2+0,25*2+0,20*2+0,15*2=2

=0,40*1+0,25*2+0,20*3+0,15*3=1,95

Таким образом средняя длина может изменяться при переходе от одной схемы алфавитного кодирования к другой. Для этого для данного источника сообщений можно ввести величину l*.

(35)Пусть l*= , где нижняя грань берется по всем схемам , обеспечивающих свойства взаимной однозначности. Заметим, что ]logqr[. При построении кодов, у которых величина близка к l* можно не рассматривать коды с большим, чем ]logqr[. Значит для таких схем ]logqr[. Обозначим за р*=min pi т.к все pi>0, при , то p*>0 и для всех i. Значит имеется конечное число возможных значений , для которых ]logqr[. => Величина l* достигается на некоторой схеме и может быть определена, как l*= .