
- •Оглавление
- •Глава 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.
Примеры решения задач
Является ли конструкция вида <Z, +> группой, абелевой группой?
Решение. Z - множество целых чисел с операцией + (сложение). Известно, что данная операция, т.е. сумма двух целых чисел однозначно определяет целое число, следовательно, это алгебра. Проверим условия группы:
1). Операция «+» ассоциативна, т.к. для любых a,b: (a+b)+с=а+(b+с).
2). Найдем нейтральный элемент такой, что а: а+е = e+a = a. Таким свойством обладает целое число 0Z, т.е. единичным элементом является 0.
3). Выясним, есть ли у любого элемента симметричный такой, что a + a -1 = a -1 + a = e.
a + a -1 = e a -1 =0-а=-а. -аZ.
Все условия выполнились, следовательно, <Z, +> группа.
a+b = b+а – равенство верно, следовательно, группа является абелевой.
Будет ли структура G=<(-,1), >, где ху=х+у-ху группой?
Решение. 1. Убедимся, что - бинарная операция, т.е. проверим, что хуG. Пусть хG и уG, т.е. x<1 и y<1, что равносильно 1-x>0 и 1-y>0. Проверим, что 1- (ху) >0.
1-(х+у-ху)=1-х-у+ху=1-х-у(1-х)=(1-х)(1-у)>0. Следовательно, G – алгебра.
2. Проверим, является ли она группой, для этого проверим выполнение 3-х условий:
а). x,y,zG проверим, является ли операция - ассоциативной:
(xy) z=(x+y-xy) z= x+y-xy+z-(x+y-xy)z= x+y+z-xy-xz-yz+xyz;
x(yz)=x(y+z-yz)= x+(y+z-yz)-(y+z-yz)x= x+y+z-xy-xz-yz+xyz;
Т.е. (xy) z= x(yz) – операция ассоциативна.
б). Найдем нейтральный элемент е такой, что xG хе=х и ех=х.
х+е-хе=х
е(1-х)=0
1-х0 (см. п.1), значит, е=0. Аналогично, рассмотрев равенство ех=х, получаем е=0. Левый и правый нейтральные элементы совпали, это и будет единица в этой пока еще алгебре.
в). Проверим, существует ли симметричный элемент для любого элемента заданного множества, т.е. х/G: хх/=е и х/х=е. Элемент е=0.
хх/=0
х+х/-хх/=0
х/(1-х)=-х
х/=
.
Аналогично, рассмотрев равенство х/х=е,
получаем х/=
.
Левый и правый симметричные элементы
совпали.
Итак, алгебра G=<(-,1), >, где ху=х+у-ху является группой.
Задачи для самостоятельного решения
Являются ли следующие структуры алгеброй, группой, абелевой группой?
а). <Q+, >;
б). <{(x,y,z)| x,y,zZ}, >, где (a1,a2,a3)(b1,b2,b3)=(a1+b1, a2+b2,a3+b3);
в). <Q, >;
г).
<(-1,1),
>, где
ab=
;
ж). <(1; +), >, где ху=х-у+ху;
з). <R\{0}, >;
и).
<R,
* >,
где
;
к).
<R,
* >,
где
;
л)
<R+,
* >,
где
;
м) <R+\{1}, * >, где ;
н). <R, >, где ху=х+у+ху;
о). <R\{1}, >, где ху=х+у+ху;
п). Множество всех двоичных слов длины m с операцией покоординатного сложения по модулю 2.
7.1.3.Кольцо
Кольцом К называется множество К с двумя бинарными операциями, обозначаемыми + или (операции + и не обязательно являются обычным сложением и умножением)такими, что:
К – абелева группа относительно операции + (т.е. выполняется коммутативный закон сложения a+b=b+a)
Выполняются законы дистрибутивности: a, b, c К справедливо a (b + c) = ab + ac; (b + c) a = ba + ca.
Виды колец:
Кольцо называется коммутативным, если операция коммутативна a b = b a.
Кольцо называется ассоциативным, если операция ассоциативна (a b) с = a (b с).
Кольцо называется кольцом с единицей, если существует нейтральный элемент по операции умножения (единица), т.е. существует такой элемент e К, что a e = e a = a для всех a К
Подмножество К1 кольца К называется подкольцом этого кольца, если оно замкнуто относительно операций + и и образует кольцо относительно этих операций. (Замкнутость - это условие когда результат операций a+b и ab над a,bК1 также принадлежит К1).
Теорема (критерий подкольца). Для того, чтобы К10, которое является подмножеством множества К было подкольцом относительно операций кольца, необходимо и достаточно чтобы выполнялись следующие условия: 1. a,bK1: a-bK1; 2. a,bK1: abK1.