- •Министерство образования и науки российской федерации федеральное агентство по образованию
- •Захарова ю.Ф. Дискретная математика и ее приложения
- •Введение
- •Глава 1. Введение в теорию множеств.
- •1.1. Основные определения.
- •1.2. Задание множеств
- •1.3. Операции над множествами
- •1.4. Разбиения и покрытия
- •1.5. Представление множеств в эвм.
- •1.5.1. Включение множеств.
- •1.5.2. Объединение множеств.
- •1.5.3. Пересечение множеств.
- •Глава 2. Булева алгебра.
- •2.1. Основные элементарные функции.
- •2.2. Основные элементарные тождества.
- •2.3. Формы представления булевых функций.
- •2.4. Минимизация булевых функций.
- •2.4.1. Метод Куайна.
- •2.4.2. Метод Карно.
- •Глава 3. Исчисление высказываний и исчисление предикатов.
- •3.1. Исчисление высказываний.
- •3.2. Исчисление предикатов.
- •Глава 4. Теория сжатия текстовой информации.
- •4.1. Метод Хаффмена
- •4.1.1. Общие положения
- •4.1.2. Краткое описание метода Хаффмена.
- •4.1.3. Пример использования метода Хаффмена.
- •4.2. Метод Зива Лемпеля (lz-метод)
- •4.2.1. Основные определения
- •4.2.2. Краткое описание lz-метода
- •4.2.3. Пример lz-метода
- •4.3. Метод Зива-Лемпеля-Велча (lzw-метод)
- •4.3.1. Общие положения
- •4.3.2. Краткое описание lzw-метода
- •4.3.3. Пример lzw-метода.
- •4.4. Метод Барроуза-Уиллера.
- •4.4.1. Общие положения.
- •4.4.2. 1 Этап. Преобразование Барроуза-Уилера.
- •4.4.3. 2 Этап. Mtf–метод.
- •4.4.4. 3 Этап. Статистический кодер.
- •4.4.5. Модификации различных этапов.
- •4.4.6. Сравнение алгоритмов сжатия на базе bwt с другими методами.
- •Глава 5. Теория сжатия графической информации. Введение.
- •5.2. Волновой метод (wavelet-метод)
- •5.2.1. Описание метода
- •5.2.2. Пример волнового метода
- •5.3. Дискретное косинус-преобразование (дкп-метод).
- •5.3.1. Описание метода.
- •5.3.2. Пример дкп-метода.
- •5.4. Классический алгоритм jpg.
- •5.5. Фрактальный алгоритм.
- •Глава 6. Введение в криптографию. Введение.
- •6.1. Методы перестановки
- •6.1.1. Матрицы
- •6.1.2. Маршруты Гамильтона
- •6.1.3. Электрический монтаж
- •6.1.4. Особенности перестановки
- •6.2. Методы подстановки
- •6.2.1. Вектор замен
- •6.2.2. Таблицы Вижинера
- •6.3. Метод замены. Использование алгебры матриц.
- •6.4. Аддитивные методы
- •6.5. Стеганология
- •6.6. Ключ. Основные понятия, связанные с ключом и алгоритмом.
- •6.6.1. Основные понятия.
- •6.6.2. Ключ.
- •6.6.3. Случайные и псевдослучайные числа.
- •6.6.4. Действия по шифрованию информации.
- •6.7. Блочные и поточные шифры.
- •6.8. Алгоритмы des, Triple des и их заменяющие.
- •6.8.2. Алгоритм Triple des
- •6.8.3. Коммерческие алгоритмы, заменившие des
- •6.9. Системы с открытым ключом.
- •6.10. Электронная подпись.
- •6.11. Взлом защищенных файлов.
- •6.11.1. Атака на ключ
- •6.11.2. Атака на алгоритм.
- •6.11.3. Скомпрометированный пароль.
- •6.11.4. Подделка открытых ключей.
- •6.11.5. Не до конца удаленные файлы.
- •6.11.6. Вирусы и закладки.
- •6.11.7. Виртуальная память.
- •6.11.8. Нарушение режима физической безопасности. Радиоатака. Фальшивые даты подписи.
- •6.11.10. Утечка информации в многопользовательской среде.
- •Содержание
- •Глава 6. Введение в криптографию. 1
1.2. Задание множеств
Существует три наиболее распространенных способа задания множеств:
перечисление элементов:
;характеристический предикат:
(это некоторое условие, выраженное в
форме логического утверждения или
процедуры, возвращающей логическое
значение. Если для данного элемента
условие выполнено, то он принадлежит
определяемому множеству, в противном
случае — не принадлежит)порождающая процедура:
(это
процедура, которая, будучи запущенной,
порождает некоторые объекты, являющиеся
элементами определяемого множества)
Пример: Требуется задать множество натуральных чисел от 10 до 17.
1. М: ={10,11,12,13,14,15,16,17};
2. M:={
};
3. M: = {
}.
Перечислением можно задавать только конечные множества. Бесконечные множества задаются характеристическим предикатом или порождающей процедурой.
Пример:
N: = {n | n: = 0; while true do begin n: = n + 1; writeln n; endwhile}.
Парадокс Рассела:
Пусть Y
- множество
всех множеств, не содержащих себя в
качестве элемента, т.е.
.
Тогда невозможно ответить на вопрос о
принадлежности
.
Доказательство: Пусть Y Y, но это означает, что Y содержит само себя, а по условию Y - множество всех множеств, не содержащих себя в качестве элемента, т.е. Y Y. Пусть Y Y, тогда Y Y по условию, т.к. не содержит себя. Получается неустранимое логическое противоречие, которое известно как парадокс Рассела.
Данный парадокс известен также как парадокс брадобрея (или цирюльника) и будет рассмотрен в разделе парадоксов исчисления высказываний.
1.3. Операции над множествами
Множество А содержится в множестве В (множество В включает множество А), если каждый элемент А есть элемент В:
.
В этом случае А называется подмножеством В, В — надмножеством А.
Множество
А называется
собственным
подмножеством множества В,
если
и
.
Если множество
не является собственным подмножеством
множества
,
имеет место следующее обозначение:
(
является подмножеством
и может быть совпадающим с ним).
Каково бы ни было
множество
выполняются следующие два свойства:
;ø
Два множества равны, если они являются подмножествами друг друга:
.
Мощность
множества М
обозначается как |М|. Для конечных
множеств мощность — это число
элементов. Например, |
ø
| = 0, но |{
ø }| == 1.
Если
,
то множества
и
называются равномощными.
Каковы бы ни были два множества и между ними возможны следующие операции:
1. Пересечение.
2. Объединение.
3. Разность.
4. Дополнение
(отрицание).
Операция дополнения
подразумевает некоторый универсум
(универсальное множество)
:
.
5. Симметрическая разность
Здесь помимо самих операций приведены диаграммы Эйлера (в некоторой литературе1 принято название Эйлера-Вена), иллюстрирующие операции над множествами. Сами исходные множества изображаются фигурами (в данном случае овалами), а результат графически выделяется (в данном случае для выделения использована штриховка).
