- •Содержание
- •1 Элементы теории множеств. Комбинаторика. 5
- •Математическая логика: Булева аллгебра 88
- •Теория алгоритмов 129
- •Теория графов 162
- •Математическая логика: Исчисления высказываний и предикатов 207
- •Элементы теории множеств. Комбинаторика.
- •Введение
- •Примеры задач.
- •Задача о расположении конвертов
- •Задача о Ханойской башне
- •Базовые обозначения
- •Правило суммы и правило произведения
- •Основы теории множеств
- •Понятие множества
- •Парадокс Рассела
- •Подмножества
- •Операции над множествами
- •Диаграммы Эйлера-Венна
- •Прямое произведение множеств
- •Бинарные отношения и функции
- •Бинарные отношения
- •Функции
- •Специальные бинарные отношения: Отношение эквивалентности
- •Специальные бинарные отношения: Отношение порядка
- •Лексикографический порядок
- •Выборки с повторениями и без повторений
- •Размещения и сочетания
- •Треугольник Паскаля
- •Связь сочетаний и (0,1)-векторов
- •Перебор сочетаний
- •Бином Ньютона
- •Мультимножества
- •Связь мультимножеств и (0,1)-векторов
- •Полином Ньютона
- •Разбиения множеств.
- •Приложение: программа перебора сочетаний
- •Перестановки
- •Понятие перестановки
- •Группа перестановок
- •Циклы перестановки
- •Тип перестановки
- •Разложения и разбиения натуральных чисел
- •Разложения натуральных чисел
- •Разбиения натуральных чисел
- •Принцип включения-исключения
- •Принцип включения-исключения
- •Задача о беспорядках
- •Мощность объединения множеств
- •Число целочисленных решений системы неравенств
- •Математическая логика: Булева аллгебра
- •Булева алгебра. Функции алгебры логики.
- •Булевы функции
- •Формулы
- •Основные тождества
- •Разложение функции по переменным
- •Дизъюнктивная и конъюнктивная нормальные формы
- •Полином Жегалкина
- •1 ⊕ X1 ⊕ x2x3 - полином Жегалкина.
- •Полнота системы функций
- •Функции, сохраняющие ноль
- •Функции, сохраняющие единицу
- •Двойственность
- •Монотонность
- •Линейность
- •Критерий полноты системы функций
- •Теория алгоритмов
- •Машины Тьюринга
- •Понятие алгоритма
- •Машина Тьюринга
- •Способы записи машины Тьюринга
- •Стандартные конфигурации
- •Вычислимые функции
- •Алгоритмически неразрешимые задачи
- •Сложность алгоритма
- •Полиномиальная сводимость
- •Классы задач в форме распознавания свойств
- •4 Теория графов
- •4.1 Определения графа
- •Общее определение
- •Виды графов
- •Обыкновенный граф
- •Примеры графов
- •Графы Бержа
- •4.2 Изоморфизм графов
- •4.2.1 Инварианты графа
- •Операции
- •Основные операции над графами
- •Подграфы
- •Дополнение графа
- •Маршруты и связность
- •Деревья
- •Матрицы, связанные с графом
- •Матрица смежности
- •Матрица инцидентности
- •Список ребер
- •Обходы графов
- •Эйлеров цикл
- •Гамильтонов цикл
- •Задачи и алгоритмы
- •Остов минимального веса
- •Алгоритм 4.8.1 (Алгоритм Краскала).
- •Задача коммивояжера
- •Задача о клике
- •Задача о вершинном покрытии
- •Задача о гамильтоновом цикле
- •Снова задача коммивояжера
- •Алгоритм дерева
- •Математическая логика: Исчисления высказываний и предикатов
- •Исчисление высказываний
- •Пример задачи логики высказываний
- •Формальные теории
- •Формальная теория исчисление высказываний
- •Теоремы исчисления высказываний
- •Теорема о полноте исчисления высказываний
- •Независимость аксиом исчисления высказываний
- •Исчисление предикатов
- •Пример задачи логики предикатов
- •Формальная теория исчисление предикатов
- •Алфавит.
- •Формулы.
- •Аксиомы.
- •Правила вывода.
- •Интерпретация
- •Литература
Монотонность
αn
Определение 2.1.25 . Пусть
n
αi, βi ∈ {0, 1}, i = 1, n.= (α1, ..., αn),
βn = (β1, ..., βn),
Говорят, что набор αn
предшествует набору
β (набор
β следует
n
после набора αn
) и пишут αn
-< β , если
n
α1 ≤ β1, α2 ≤ β2, ..., αn ≤ βn.
αn
Будем говорить, что
строго предшествует
βn и обозначать
αn αn αn
≺ βn, если
-< βn и
/= βn.
αn
Будем говорить, что
непосредственно предшествует
βn и
αn t αn γn
обозначать
≺ βn, если если
≺ βn и не существует набора
≺
n
такого, что αn γn
≺ β .
Замечание 2.1.19 . -<, ≺ - отношения частичного порядка.
Определение 2.1.26 . Пусть f (x1, ..., xn) ∈ P2. Функция f
называется монотонной, если
n
αn -< β
= f (αn
⇒
) ≤ f (βn).
Класс всех монотонных функций будем обозначать M .
Пример 2.1.25 . Функция x является монотонной. Функция x - не монотонна.
Утверждение 2.1.21 . Класс функций M замкнут.
Доказательство. Рассмотрим суперпозицию ранга 1 от функций из M .
Пусть f (x1, ..., xn) ∈ M и
g(x1, ..., xj−1, xj+1, ..., xn, y) = f (x1, ..., xj−1, y, xj+1, ..., xn).
Тогда монотонность g непосредственно следует из монотонности функции
f .
Пусть f (x1, ..., xn) ∈ M и h(y1, ..., ym) ∈ M и
g(x1, ..., xj−1, xj+1, ..., xn, y1, ..., ym) =
n
= f (x1, ..., xj−1, h(y1, ..., ym), xj+1, ..., xn).
Пусть αn+m−1
-< β
+m−1
. Тогда, в частности,
(αn, ..., αn+m−1) -< (βn, ..., βn+m−1).
Поскольку h монотонна, то
h(αn, ..., αn+m−1) ≤ h(βn, ..., βn+m−1)
и, следовательно,
(α1, ..., αj−1, h(αn, ..., αn+m−1), αj , ..., αn−1) -<
-< (β1, ..., βj−1, h(βn, ..., βn+m−1), βj , ..., βn−1).
Таким образом, из монотонности f следует, что
αn+m−1
g(
) = f (α1, ..., αj−1, h(αn, ..., αn+m−1), αj , ..., αn−1) ≤
n+m−1
≤ f (β1, ..., βj−1, h(βn, ..., βn+m−1), βj , ..., βn−1) = g(β ).
Получаем, что g(x1, ..., xj−1, xj+1, ..., xn, y1, ..., ym) ∈ M .
Таким образом, [M ] = M .
D
Замечание 2.1.20 . Тождественная функция f (x) = x лежит в классе M . Функция отрицания f (x) = x не лежит в M . Таким образом,
M /= ∅ и M /= P2.
Лемма 2.1.22 (О немонотонной функции). Пусть
f (x1, ..., xn) ∈/ M . Тогда, подставляя в f вместо аргументов 0, 1,
x можно получить x.
Доказательство. Так как f
∈
/ M , существуют два набора αn
n
и β , такиеαn αn αn
что
-< βn и f (
αn
) > f (βn). Очевидно, что f (
) = 1 и f (βn) = 0.
Пусть
отличен от βn в t позициях.
n
Пусть t = 1. Тогда αn
αn
≺t β для некоторого i верно, что
= (α1, ..., αi−1, 0, αi+1, ..., αn)
и
β
n
= (α1, ..., αi−1, 1, αi+1, ..., αn).Определим функцию ϕ(x) следующим образом:
ϕ(x) = f (α1, ..., αi−1, x, αi+1, ..., αn).
Тогда:
ϕ(0) = f (α1, ..., αi−1, 0, αi+1, ..., αn) = 1
ϕ(1) = f (α1, ..., αi−1, 1, αi+1, ..., αn) = 0.
То есть ϕ(x) = x, что и требовалось доказать.
αn = γn
≺
γn
≺ ... ≺ γn
(t − 1) ≺ γn
(t) = βn,
где каждая пара наборов γn
(i 1) и γn
−
отличаются только в одной
позиции, i = 1, t. Это не трудно сделать, последовательно заменяя
n
каждую позицию, в которой наборы αn
и β различаются с нуля на
n
единицу. Поскольку f (αn
) = 1 и f (β ) = 0, найдется такое k, что
−
γn(k 1) = 1 и γn
(i) = 0. Такая ситуация возвращает нас к пункту
доказательства.
D
Пример 2.1.26 (Построение x с помощью немонотонной функ- ции). Пусть f (x, y, z) = x ⊃ (y ⊕ z). Эта функция немонотонна, так
как
f (0, 0, 0) = 0 ⊃ (0 ⊕ 0) = 1 > 0 = 1 ⊃ (1 ⊕ 1) = f (1, 1, 1).
Рассмотрим последовательность наборов
(0, 0, 0) ≺ (0, 0, 1) ≺ (0, 1, 1) ≺ (1, 1, 1)
и значения функции f на этих наборах
1 = f (0, 0, 0) = f (0, 0, 1) = f (0, 1, 1) > f (1, 1, 1) = 0.
Тогда ϕ(x) = f (x, 1, 1) = x. Действительно,
ϕ(x) = x ⊃ (1 ⊕ 1) = x ⊃ 0 = x.