- •Содержание
- •1 Элементы теории множеств. Комбинаторика. 5
- •Математическая логика: Булева аллгебра 88
- •Теория алгоритмов 129
- •Теория графов 162
- •Математическая логика: Исчисления высказываний и предикатов 207
- •Элементы теории множеств. Комбинаторика.
- •Введение
- •Примеры задач.
- •Задача о расположении конвертов
- •Задача о Ханойской башне
- •Базовые обозначения
- •Правило суммы и правило произведения
- •Основы теории множеств
- •Понятие множества
- •Парадокс Рассела
- •Подмножества
- •Операции над множествами
- •Диаграммы Эйлера-Венна
- •Прямое произведение множеств
- •Бинарные отношения и функции
- •Бинарные отношения
- •Функции
- •Специальные бинарные отношения: Отношение эквивалентности
- •Специальные бинарные отношения: Отношение порядка
- •Лексикографический порядок
- •Выборки с повторениями и без повторений
- •Размещения и сочетания
- •Треугольник Паскаля
- •Связь сочетаний и (0,1)-векторов
- •Перебор сочетаний
- •Бином Ньютона
- •Мультимножества
- •Связь мультимножеств и (0,1)-векторов
- •Полином Ньютона
- •Разбиения множеств.
- •Приложение: программа перебора сочетаний
- •Перестановки
- •Понятие перестановки
- •Группа перестановок
- •Циклы перестановки
- •Тип перестановки
- •Разложения и разбиения натуральных чисел
- •Разложения натуральных чисел
- •Разбиения натуральных чисел
- •Принцип включения-исключения
- •Принцип включения-исключения
- •Задача о беспорядках
- •Мощность объединения множеств
- •Число целочисленных решений системы неравенств
- •Математическая логика: Булева аллгебра
- •Булева алгебра. Функции алгебры логики.
- •Булевы функции
- •Формулы
- •Основные тождества
- •Разложение функции по переменным
- •Дизъюнктивная и конъюнктивная нормальные формы
- •Полином Жегалкина
- •1 ⊕ X1 ⊕ x2x3 - полином Жегалкина.
- •Полнота системы функций
- •Функции, сохраняющие ноль
- •Функции, сохраняющие единицу
- •Двойственность
- •Монотонность
- •Линейность
- •Критерий полноты системы функций
- •Теория алгоритмов
- •Машины Тьюринга
- •Понятие алгоритма
- •Машина Тьюринга
- •Способы записи машины Тьюринга
- •Стандартные конфигурации
- •Вычислимые функции
- •Алгоритмически неразрешимые задачи
- •Сложность алгоритма
- •Полиномиальная сводимость
- •Классы задач в форме распознавания свойств
- •4 Теория графов
- •4.1 Определения графа
- •Общее определение
- •Виды графов
- •Обыкновенный граф
- •Примеры графов
- •Графы Бержа
- •4.2 Изоморфизм графов
- •4.2.1 Инварианты графа
- •Операции
- •Основные операции над графами
- •Подграфы
- •Дополнение графа
- •Маршруты и связность
- •Деревья
- •Матрицы, связанные с графом
- •Матрица смежности
- •Матрица инцидентности
- •Список ребер
- •Обходы графов
- •Эйлеров цикл
- •Гамильтонов цикл
- •Задачи и алгоритмы
- •Остов минимального веса
- •Алгоритм 4.8.1 (Алгоритм Краскала).
- •Задача коммивояжера
- •Задача о клике
- •Задача о вершинном покрытии
- •Задача о гамильтоновом цикле
- •Снова задача коммивояжера
- •Алгоритм дерева
- •Математическая логика: Исчисления высказываний и предикатов
- •Исчисление высказываний
- •Пример задачи логики высказываний
- •Формальные теории
- •Формальная теория исчисление высказываний
- •Теоремы исчисления высказываний
- •Теорема о полноте исчисления высказываний
- •Независимость аксиом исчисления высказываний
- •Исчисление предикатов
- •Пример задачи логики предикатов
- •Формальная теория исчисление предикатов
- •Алфавит.
- •Формулы.
- •Аксиомы.
- •Правила вывода.
- •Интерпретация
- •Литература
Разложения и разбиения натуральных чисел
Разложения натуральных чисел
Определение 1.7.1 . Разложением числа n ∈ N называется представление n в виде упорядоченной суммы натуральных чисел
(a1, a2, ..., ak) : n = a1 + a2 + ... + ak, ai ∈ N, k ∈ N. Пример 1.7.1 . Существует всего 8 различных разложений числа n = 4:
1 + 1 + 1 + 1
1 + 1 + 2
1 + 2 + 1
2 + 1 + 1
1 + 3
3 + 1
2 + 2
4
Обозначим dk(n) - число разложений n на k частей.
Утверждение 1.7.1 . Число разложений n на k частей равно
n − 1
dk(n) =
k − 1
. (15)
Доказательство. Пусть (a1, a2, ..., ak) - произвольное разложение n на
k частей: n = a1 + a2 + ... + ak . Тогда
1 ≤ a1 < a1 + a2 < a1 + a2 + a3 < ... < a1 + a2 + ... + ak−1 ≤ n − 1.
Обозначим bi = a1 + a2 + ... + ai, 1 ≤ i ≤ k − 1. Тогда {b1, ..., bk−1} ⊂
{1, ..., n−1}, причем никакие два bi и bj не совпадают. Значит {b1, ..., bk−1}
некоторая выборка k − 1 элемента из n − 1. При этом, различным
разложениям n на k частей будут соответствовать разные выборки из
k−1
n − 1 по k − 1. Следовательно, dk(n) ≤ (n−1).
Пусть теперь, {b1, ..., bk−1} произвольная выборка мощности k − 1 из
n − 1. Пусть, для определенности, b1 < b2 < ... < bk−1. Тогда,
b1 + (b2 − b1) + (b3 − b2) + · · · + (bk−1 − bk−2) + (n − bk−1) = n.
Обозначим a1 = b1, ak = n − bk−1 и ai = bi − bi−1, i = 2, k − 1. Тогда, n = a1 + a2 + · · · + ak - разложение n на k частей. Причем разным выборкам будут соответствовать различные разложения и, следовательно, dk(n) ≥ (n−1).
k−1
k
Таким образом, d (n) = (n−1).k−1
D
Следствие 1.7.2 . Рассмотрим уравнение
x1 + x2 + · · · + xk = n, (∗)
где n - заданное число из N0. Пусть, N=(n, k) - число решений этого уравнения на неотрицательных целых числах (xi ∈ N0). Тогда
n + k − 1
N=(n, k) =
k − 1
. (16)
Доказательство. Пусть n = c1 + c2 + · · · + ck, ci ∈ N0. Тогда n + k = (c1 + 1) + (c2 + 1) + · · · + (ck + 1), ci ∈ N. Таким образом, любому решению
уравнения (*) соответствует разложение n + k на k частей. И наоборот, для любого разложения
n + k = a1 + a2 + ... + ak, ai ∈ N
набор {(a1 − 1), (a2 − 1), ..., (ak − 1)} является решением уравнения (*).
То есть мы построили взаимнооднозначное соответствие между
множеством решений уравнеия и множеством разложений n + k на k
слогаемых. Следовательно, по утверждению 1.7.1
n + k − 1
N=(n, k) = dk(n + k) =
.
k − 1
D
Следствие 1.7.3 . Рассмотрим неравенство
x1 + x2 + · · · + xk ≤ n, (∗∗) где n - заданное число из N0. Пусть, N≤(n, k) - число решений этого неравенства на неотрицательных целых числах. Тогда
n + k
N≤(n, k) =
. (17)
k
Доказательство. Пусть c1 + c2 + · · · + ck ≤ n, ci ∈ N0. Тогда, обозначим
ck+1 = n − c1 + c2 + · · · + ck. {c1, c2, ..., ck, ck+1} - решение уравнения
x1 + x2 + · · · + xk + xk+1 = n.
Обратно, для любого решения c1, c2, ..., ck, ck+1 уравнения x1 +x2 +· · ·+
xk + xk+1 = n, очевидно, верно, что c1 + c2 + · · · + ck ≤ n.
Таким образом, множеству решений неравенства (**)
взаимооднозначно соответствует множество решений уравнения
x1 + x2 + · · · + xk + xk+1 = n. Тогда по следствию 1.7.2
n + k
N≤(n, k) = N=(n, k + 1) = k .
D