
- •Основы Теории Информации Гордеев э.Н.
- •Содержание
- •1Введение
- •1.1Предмет курса
- •1.2Основная цель курса
- •1.3Теория информации и смежные дисциплины
- •1.4Подходы к определению понятия информация.
- •2Алфавит. Слово. Язык. Информация.
- •3Информация и алгоритм.
- •3.1Задачи, алгоритмы
- •3.1.1Задача
- •3.2Алгоритм
- •3.2.1Нормальные алгорифмы Маркова (нам).
- •3.2.2Машины Тьюринга
- •4Кодирование информации. Количество информации. Сжатие информации.
- •4.1Кодирование информации.
- •4.1.1Примеры кодировок
- •4.1.2Свойства кодировок
- •4.2Наиболее распространенные способы кодирования и их свойства. Алгоритмы кодирования.
- •4.2.1Кодирование слов и поиск минимального кода
- •4.2.2Признаковое кодирование.
- •4.2.3Признаковое кодирование и проблема распознавания.
- •4.2.4Сериальное кодирование
- •4.2.5Алфавитное кодирование.
- •4.2.5.1Неравенство Крафта.
- •4.2.5.2Префиксные коды.
- •4.2.6Кодирование натурального ряда.
- •4.2.6.1Код Элайеса.
- •4.2.6.2Код Левенштейна
- •5Количество информации. Энтропия.
- •5.1.1Энтропия по Хартли.
- •5.1.2Энтропия по Шеннону.
- •5.1.2.1Математическая модель: алфавитное кодирование случайного источника.
- •5.1.2.2Энтропия по Шеннону
- •5.1.2.3Энтропия по Шеннону и энтропия по Хартли.
- •6Теорема Шеннона
- •7Свойства энтропии.
- •8Алгоритмы кодирования
- •8.1Алгоритм Шеннона (Фано)
- •8.2Алгоритм Хаффмана
- •8.3Блочное кодирование
- •8.4Алгоритм арифметического кодирования
- •8.5Код Элайеса
- •8.6Код Левенштейна
- •9Блочное кодирование и теорема Шеннона.
- •10Канал с шумом.
- •10.1Модели каналов.
- •10.2Передача информации по двоичному симметричному каналу с шумом
- •10.2.1Схема и принципы кодирования.
- •10.3Корректирующие способности кодов. Границы мощности.
- •10.4Теорема Шеннона для канала с шумом.
- •10.4.1Факты из теории вероятности.
- •10.4.2Схема кодирования и декодирования. Вспомогательные утверждения.
- •10.4.3Вероятностное доказательство теоремы.
- •10.4.4Комбинаторное доказательство теоремы.
- •10.5Линейные коды
- •10.5.1Пример. Код Хемминга.
- •10.5.2Замечание. Совершенные коды и теорема Шеннона.
- •10.5.3Бчх – коды
- •10.6Спектр кода. Эквидистантные коды
- •11Рекомендованная литература
4.2.6Кодирование натурального ряда.
Здесь А =(0,1,…,9) и B= (0,1).
Задача кодирования натуральных чисел битовыми последовательностями актуальна, так как часто необходимо хранить и передавать информацию в бинарном виде. Особенно остро она встала в 50-е годы прошлого века в связи с распространением компьютеров.
В данной модели предполагается, что нужно работать (хранить, передавать) с битовой информацией, изначально представимой, например, в десятичных числах. При этом набор чисел представляется битовой последовательностью без разделителей.
Простой переход к двоичной записи не обеспечивает префиксности, а, следовательно, и декодируемости этой битовой последовательности.
Приведем примеры кодов, которые это обеспечивают.
Пусть n > 1, двоичную запись числа n обозначим BIN(n) = α1…αn, αi {0, 1}. (Например, BIN(30) = 11110, BIN(75) = 1001011). Заметим, что k = |BIN(n)| = [log n] + 1. Пусть B(n) – двоичная запись n без первого символа. (Например, B(30) = 1110, B(75) = 001011). Тогда |B(n)| = [log n].
4.2.6.1Код Элайеса.
Код Элайеса неотрицательного целого числа n обозначим через El (n). Положим El (0) = 10, El (1) = 11.
Пусть n > 1. Тогда El (n)= 00…0 BIN([log n]+1) B(n), где 00…0 – маркер, необходимый для того, чтобы знать, сколько последующих за 0 символов может задавать длину записи числа. Поэтому в данном коде количество нулей перед BIN([log n]+1) равно [log (BIN([log n]+1)].
Примеры:
El(5) = 0 10101
E
l(75)
= 00
110001011
log n
log (log n)+1
log (log n)
Утверждение. Длина |El(n)| не превосходит log n + 2 log (log n) + 3.
Утверждение. Код Элайеса – префиксный.
Доказательство: Рассмотрим El (n) и El (m). Если хотя бы одно из этих слов начинается с 1, то это либо 0, либо 1. Утверждение доказано. Пусть n, m больше 1, вспомним теорему о дешифруемости кода: El(n) = α1…αk, El(m) = β1…βS (для определенности k ≥ s). Пусть количество 0, с которых начинается α, совпадает с количеством 0, с которых начинается β. (В противном случае сразу следует свойство префиксности кода.) Далее рассмотрим вторые подслова слов El (n) и El (m). Если они не совпадают, то префиксность кода доказана. Если совпадают, то переходим к окончаниям слов. Если они совпадают, то m=n. В противном случае n не равно m. Таким образом, при m≠n выполняется соотношение B(n) ≠B(m).
Утверждение доказано.
4.2.6.2Код Левенштейна
Пусть λ0(n) = [log n]. λk0(n) = λ0 (λk-10(n)) = [log…[log n]].
Для любого n существует S такое, что: λS0(n) = 0, λS-10(n) = 1.
Положим Lev(0)=0, Lev(1) =10. Пусть n > 1. Тогда
Lev(n) = 11…10 B(λS-20(n))…B(λ0(n))B(n), где 11…10 – слово из S единиц и одного нуля.
Утверждение: Длина кода Левенштейна задается соотношением
|Lev(n)| = log n + log log n + o(log log n).
Утверждение: Код Левенштейна префиксный
Пример:
Lev(75) = 11110 0 10 001011
маркер B( λ0 (λ0(n)) B(λ0(n)) B(n)
S = 4
5Количество информации. Энтропия.
Известно несколько подходов к определению количества информации.
5.1.1Энтропия по Хартли.
Определение.
Энтропия по Хартли множества
,
есть число
.
Если мы хотим закодировать элементы множества битовыми последовательностями, то энтропия по Хартли определяет максимальную длину последовательности, необходимой для такого кодирования.
Понятие «информационного бита» связано с энтропией по Хартли. «Информационный бит» - это количество информации, необходимое для различения двух элементов. И энтропия по Хартли M(2)=1.
Энтропия по Хартли применяется тогда, когда все элементы множества одинаково часто используются, имеют одинаковую «информативность» для пользователя. В более сложном случае используется следующий подход.