
- •Оглавление
- •Глава 5. Основы математической теории информации 58
- •Глава 6. Элементы теории чисел 74
- •6.2.1. Основные определения 83
- •Глава 7. Алгебраические структуры 87
- •Введение
- •Глава 1.Введение
- •1.1.Основные понятия криптографии
- •1.1.1.История развития криптографии
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •1.1.2.Сложность алгоритмов
- •1.1.3.Стойкость криптографических систем
- •Глава 2.Элементы теории множеств
- •2.1.Основные понятия теории множеств
- •2.1.1.Обозначения и способы задания множеств
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •2.1.2.Операции над множествами
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •2.1.3.Прямое произведение множеств
- •П римеры решения задач
- •Задачи для самостоятельного решения
- •2.2.Отношения между множествами
- •2.2.1.Определение бинарных отношений
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •2.2.2.Представление бинарных отношений в виде графа, матрицы
- •Примеры решения задач
- •Построенная таблица есть таблица бинарного отношения. Задачи для самостоятельного решения
- •2.2.3.Свойства бинарных отношений, отношение эквивалентности
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •Вопросы для повторения
- •Глава 3.Булева алгебра
- •3.1.Булевы функции
- •3.1.1.Понятие булевой функции
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •3.1.2.Суперпозиция функций
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •3.1.3.Двойственные функции
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •3.1.4.Логические схемы
- •Примеры решения задач
- •3.2.Нормальные формы
- •3.2.1.Разложение функций по переменным
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •3.2.2.Минимизация нормальных форм, карты Карно
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •Полиномы Жегалкина, алгоритм их построения для произвольных функций
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •3.3.Полные системы функций
- •3.3.1.Полнота множества функций
- •Примеры решения задач
- •Глава 4.Элементы теории графов
- •4.1.Основные понятия теории графов
- •4.1.1.Способы задания графов, основные определения
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •4.1.2.Числовые характеристики графов
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •4.1.3.Операции с графами
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •4.1.4.Изоморфизм графов
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •4.1.6.Расстояния в графе, центры графа
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •4.1.7.Эйлеровы циклы
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •4.1.8.Алгоритм построения Эйлерова цикла
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •4.1.9.Гамильтоновы циклы
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •4.1.10.Алгоритм построения гамильтонова цикла в графе
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •4.2.2.Алгоритм Краскала для построения минимального остовного дерева
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •4.2.3.Обходы дерева
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •Задачи для повторения
- •Вопросы для повторения
- •Глава 5.Основы математической теории информации
- •5.1.Меры информации
- •5.1.1.Мера Хартли
- •Примеры решения задач
- •5.1.2.Мера Шеннона
- •Примеры решения задач
- •5.1.3.Единицы измерения количества информации
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •5.2.2.Код Хаффмана
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •5.3. Помехоустойчивое кодирование
- •5.3.1. Код с проверкой на четность
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •5.3.2.Коды с повторением
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •5.3.3.Групповой код Хемминга
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •5.3.4.Помехозащищенность кода
- •Примеры решения задач
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •6.1.2.Теорема о делении с остатком. Алгоритм Евклида
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •6.1.3.Отношение сравнимости
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •6.1.4.Алгебра вычетов
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •6.1.5.Решение сравнений вида ахb(mod m)
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •6.1.6.Применение алгебры вычетов к простейшим шифрам
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •6.1.7.Построение и использование хеш-функций
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •Задачи для повторения
- •6.2.Алгебра многочленов
- •6.2.1.Основные определения
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •6.2.2.Нод многочленов
- •Примеры решения задач
- •Задачи для самостоятельного решения.
- •6.2.3.Разложение многочлена на множители
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •Вопросы для повторения
- •Глава 7.Алгебраические структуры
- •7.1.Основные понятия и свойства алгебраических структур
- •7.1.1.Алгебра
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •7.1.2.Группа
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •7.1.3.Кольцо
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •7.1.4.Поле
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •7.1.5.Конечные поля
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •7.2.Многочлены над конечными полями
- •7.2.1.Каноническое разложение многочлена
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •7.2.2.Порядок многочлена над конечным полем
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •7.2.3.Сравнение многочленов по данному модулю
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •7.2.4.Поиск неприводимых многочленов поля gf(g(X)) над полем gf(р)
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •7.3.Генераторы псевдослучайных последовательностей
- •7.3.1.Понятие псевдослучайной последовательности чисел
- •7.3.2.Практические методы получения псевдослучайных чисел
- •Задачи для самостоятельного решения
- •7.3.3.Понятие линейной последовательности
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •7.3.4. Периодичность линейных рекуррентных последовательностей
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •7.3.5.Связь линейных рекуррентных последовательностей над конечными полями с многочленами
- •Примеры решения задач
- •Задачи для самостоятельного решения
- •Вопросы для повторения
- •214018, Г. Смоленск, проспект Гагарина, 56, т.: (0812) 55 – 41 – 04.
Примеры решения задач
Найдите количество элементов в полной и приведенной системе вычетов
по модулю 6;
по модулю 9.
Решение.
Z6={0,1,2,3,4,5};
т.е. (6)=2.
Z9=0,1,2,3,4,5,6,7,8,
.(9)=6.
Конечно, можно воспользоваться и
формулой для вычисления (m):
Найдите остаток от деления:
числа 123∙176 на 15;
числа 46-289 на 15;
числа 1423 на 19;
числа 2123 на 11.
Решение. а) В данном случае можно, конечно, перемножить два числа, потом разделить на 15 и найти остаток. Но проще воспользоваться определением операции умножения по заданному модулю:
(123∙176) (mod15)=123(mod15)∙176(mod 15) =(3∙11) (mod 15)=33 (mod 15)=3.
b) Воспользуемся определением операции степени:
46-289 (mod 15)=(46 mod 15)-289=1-289=1.
c) Известно, что 14 -5 (mod 19), кроме того, (-5)23(mod 19)= =(-5)20+2+1(mod 19)=((-5)4)5 (mod 19)(-5)2 (mod 19)(-5) (mod 19)= =(625 (mod 19))5(25 (mod 19))(-5 (mod 19)) (17 (mod 19))56(mod 19)(-5 (mod 19)) (-2)5(mod 19)6 (mod 19) (-5 (mod 19))=(-32(mod 19))(-30 mod 19)) (13(mod 19))(11(mod 19))=143 (mod 19) 10(mod 19).
d) m=11 – простое число, 2 и 11 взаимно просты. Тогда по теореме Ферма 211-1 (mod 11) 1, т.е. 210 (mod 11) 1. Следовательно, ((210)12∙23) (mod 11)=(210(mod 11))12∙23 (mod 11)=112∙8(mod 11)=8(mod 11).
Задачи для самостоятельного решения
Найдите остатки от деления чисел:
7500 на 5;
1785 на 5;
7308 на 9;
8146 на 13.
Найдите остатки от деления чисел:
7347 на 23;
4237 на 7;
2197 на 13;
13257 на 6;
Найдите количество элементов в полной и приведенной системе вычетов
по модулю 60;
по модулю 81;
по модулю 5;
по модулю 5040;
по модулю 1294700
по модулю 100.
Запишите приведенную систему вычетов по модулю 42.
Показать, что числа 25, -20, 16, 46, -21, 18, 37, -1 составляют полную систему вычетов по модулю 8.
По какому модулю числа 20, -4, 22, 18, -1 составляют полную систему вычетов?
6.1.5.Решение сравнений вида ахb(mod m)
Если НОД(a,m)=1, то сравнение ахb(mod m) имеет решение и притом единственное. Единственность решения следует понимать в смысле единственности класса чисел, которые получаются по формуле хba(m)-1 (mod m).
Если НОД(a,m)=d и b не делится на d, то сравнение ахb(mod m) решений не имеет.
Если НОД(a,m)=d и b делится на d, то сравнение ахb(mod m) нужно свести к виду: а/х=b/(mod m/), где а/=a/d, b/=b/d, m/=m/d. Теперь НОД(a/,m/)=1 и существует единственное (частное) решение х/ по модулю m/= m/d. Но m/<m и два разных числа, попавших в один класс по модулю m/ могут быть в разных классах по модулю m. Все решения запишутся в виде: хх/+ m/t, t=0,1,2,…,d-1.
Примеры решения задач
Решите следующие сравнения:
5х3 (mod 6);
3x6 (mod 9).
Решение. а). 5х3 (mod 6); НОД(5,6)=1, следовательно, имеется одно решение: х ba(m)-1=35(6)-1352-1153(mod 6). Класс чисел, удовлетворяющих этому сравнению можно записать так: х=3+6t.
б). 3x6 (mod 9); НОД(3,9)=3 и 6 3, следовательно, имеется 3 различных класса решений. Согласно свойству 6 п. 6.1.3 можно разделить это сравнение на 3: x2 (mod 3) – получили частное решение. Общее же решение будет выглядеть так: х12(mod 9), x22+31(mod 9), x32+32(mod 9).
Ответ: а). х=3+6t; б). х1=2+9t, х1=5+9t, х1=8+9t.