
- •Лекция 1. Составные высказывания. Основные понятия
- •Составные высказывания
- •Лекция 2. Основные логические операции. Формулы логики. Дизъюнктивная конъюнктивная нормальные формы. Логические операции.
- •Стрелка Пирса - ↓.
- •Формулы логики высказываний
- •Лекция 3. Изучение законов логики. Равносильные преобразования. Законы логики (свойства логических операций)
- •Логическое следствие
- •Лекция 4. Булевы функции.
- •Лекция 5. Совершенная дизъюнктивная и конъюнктивная нормальные формы (сднф и скнф)
- •Лекция 6. Понятие полноты множества функций. Замкнутые классы.
- •Лекция 7. Множества и подмножества.
- •Сравнение множеств.
- •Лекция 8. Операции над множествами
- •Свойства операций над множествами.
- •Лекция 9. Понятие предикат.
- •Лекция 10. Логические операции над предикатами. Операции над предикатами.
- •Кванторы.
- •Операции с кванторами.
- •Лекция 11. Понятие бинарного отношения и его свойства. Отношения.
- •Отношения на множестве.
- •Виды отношений:
- •Инъекция.
- •Сюръекция.
- •Биекция.
- •Лекция 12. Отношение эквивалентности.
- •Лекция 13. Композиция отображений Равенство соответствий
- •Произведение соответствий (композиция)
- •Композиция отображений. Ее свойства
- •Лекция 14. Операции над подстановками.
- •1: Коммутативность.
- •2: Ассоциативност ь.
- •3: Единица.
- •4: Обратный элемент.
- •Лекция 15. Понятие вычета по модулю n. Операции над вычетами. Шифрование.
- •Лекция 16. Метод математической индукции
- •Лекция 17. Генерирование к-элементных подмножеств данного множества
- •Размещения.
- •Формула числа размещений без повторений.
- •Другой вид формулы числа размещений.
- •Перестановки.
- •Свойства сочетаний.
- •Размещения с повторениями.
- •Задача о числе подмножеств данного множества.
- •Перестановки с повторениями.
- •Сочетания с повторениями.
- •Лекция 18. Понятие графа. Способы задания графа. Методика выделения компонента связности в графе
- •Смежность и инцидентность
- •Лекция 19. Изоморфные графы. Эйлеровы графы. Изоморфизм графов
- •Требования к представлению графов
- •Эйлеровы графы Вернемся к историческому примеру о Кенигсбергских мостах. В каком случае в графе можно найти цикл, в котором каждое ребро участвует ровно один раз?
- •Лекция 20. Плоские графы. Деревья и их свойства
- •Лекция 21. Понятие ориентированного графа
- •Орграфы и матрицы
- •Лекция 22. Сильносвязный орграф. Эйлеровы орграфы Ориентированные эйлеровы графы
- •Лекция 23. Базовые множества и принцип работы автоматов
- •Минимизация автоматов
- •Алгоритм минимизации автомата Мили
Лекция 14. Операции над подстановками.
Подстановка на множестве M – это биекция [7]:
M
Nn,
n
= |M|
N.
В случае конечного множества M (как выше) количество подстановок определяется как количество перестановок из n элементов:
Можно считать, n ящиков заполняются объектами x1, …, xn, xi M.
Поскольку M биективно Nn, можно определить подстановку как Nn Nn, т.е. иметь дело только с натуральными числами:
{i1, i2, … , in} = Nn.
Обычно подстановка задается в форме стандартной таблицы, имеющей две строки. Верхняя строка всегда содержит последовательные натуральные числа, начиная с 1. В нижней строке, конечно, не должно быть повторений.
Например:
Подстановка, как и любое бинарное отношение, может быть составной
.
Видно, что в
«контрпримере»
,
т.е. «произведение» подстановок
некоммутативно.
В составе любой подстановки можно выделить циклы. Их длина может составлять 1, 2,…, n. Цикл длины 1 – это фактически вырожденный цикл, стационарный элемент.
Пример.
Здесь единственный цикл – типа RoL («Вращение влево»).
Пример.
Теорема.
Любая подстановка на конечном множестве A (т.е. биективному подмножеству Nn) может быть представлена как произведение непересекающихся циклов.
Действительно, начав слева, от 1 в верхней строке, формируем первый цикл по принципу «сверху вниз, снова вверх и т.д. до замыкания на начальное значение». На основе оставшихся элементов верхней строки формируем второй цикл и т.д. Поскольку множество А (или Nn) конечное, процесс рано или поздно останавливается.
Теперь нужно показать еще непересекаемость циклов. Это следует, например, из условия неповторяемости элементов (в нижней, например, строке рис. 1).
Рис. 1. К непересекаемости циклов
Доказательство от противного: пусть, наоборот, цикл 2 (H2, K2) вложен в цикл 1 (H1, K1). Тогда из-за обязательности равенств элементов на двойной стрелке (рис. 17) и K2 = H2 (замыкание) получаем в нижней строке запрещенное повторение элементов K2 .
На множестве М в отображении N M можно определить последовательность. Например,
Функционал – это функция, определенная на множестве не простых объектов (чисел), а на множестве тоже, например, функций:
Здесь после стрелки указано множество, например, всех функций из M2 в M3 .
Пример.
тогда:
Можно считать функционал функцией с нетривиальной областью значений.
Еще один специальный случай связан с отображением, сохраняющим эквивалентность.
Пусть М – множество с -отношением эквивалентности. Тогда М разбивается этим отношением на -эквивалентные классы:
.
Итак, есть отношения
эквивалентности X
и Y
определенные соответственно на множествах
X
и Y,
и есть отображение
.
Есть еще межклассовые
отношения:
Отображение f сохраняет эквивалентность, если f1 – функция, т.е.
.
Если же f1 – не функция, т.е. выходит за пределы класса эквивалентности (например, [х1]), то f – не сохраняет эквивалентность.
В благоприятном
же случае можно говорить: отображение
f:
X
Y
индуцирует
отображение
(рис. 2).
Рис. 2. Графическая интерпретация отображения f, сохраняющего эквивалентность
Видно, что существуют 2 пути от х1 к y1:
1: y1 = f(x1);
2: x1X x2 y2 = f(x2) y2Y y1.
Пример.
X = {1, 2, 3}, Y = {1, 4, 9},
X : X / X = {{1}, {2, 3}},
Y : Y / Y ={{1},{4, 9}},
f: X Y: x x2.
Здесь получаем:
f1 ([1]) = [f(1)] = [1] = {1};
f1 ([2]) = [f(2)] = [4] = {4, 9};
f1 ([3]) = [f(3)] = [9] = {4, 9}.
Проверим f1 на функциональность. Должно быть f1 ([2]) = f1 ([3]), но так и есть.
Пример.
Теперь
f1 ([2]) = [f(2)] = [4] = {1,4};
f1 ([3]) = [f(3)] = [9] = {9} {1,4}.
Здесь f1 – не функция, и замыкания двух путей нет (рис. 3).
Рис. 3. Отображение f, не сохраняющее эквивалентность
Операции
Операция над (на) множеством M это функция [7]:
Из определения операции видно, что она замкнута на множестве М, т.е. результат операции не выходит за пределы этого множества.
Еще одно свойство операции – однозначность результата, т.е.
упорядоченный набор n элементов (операндов) дает в результате операции только один элемент.
Порядок операции – это количество ее операндов: n = 1 соответствует унарной (монадической) операции, n = 2 – бинарной (диаедической) операции и т.д.
Далее рассматриваются только бинарные операции. Они могут быть заданы в одной из трех форм:
infix ( например, x + y);
prefix ( +xy );
postfix ( xy+ ).
Последние две формы дают бесскобочную запись (скобки вводятся, в инфиксной форме, для явного указания порядка выполнения операций).
Пример.
Инфиксная (обычная) форма:
a + b * c – (d – e / f).
Префиксная форма (проход и запись выражения справа налево):
+ a – * bc – d / e f.
Постфиксная форма (проход и запись слева направо), по-другому – это обратная (инверсная) польская запись (по имени польского математика Я. Лукасевича):
a b c * + d e f / – – .
Последняя форма (ОПЗ) широко используется в вычислительной технике, в частности при построении так называемых прямых трансляторов с языков программирования (используется стек с приоритетами).
Бинарная операция удобно задается таблицей (табл. 1).
Таблица 1
Операция на множестве M={a, b, c}
|
a |
b |
c |
a |
a |
a |
b |
b |
b |
a |
c |
c |
a |
b |
b |
В дальнейшем будем говорить о некоторых замечательных свойствах операций, связывая эти свойства с фиксированными номерами (1, 2, …).