Основные концепции
Опираясь на основы логики и множеств, мы теперь изучим отношения, функции и комбинаторику — три столпа, связывающие абстрактные дискретные структуры с практическими вычислениями.
Отношения
Бинарное отношение из множества в множество — это подмножество .
Свойства отношений
| Свойство | Определение | Пример |
|---|---|---|
| Рефлексивность | на целых числах | |
| Симметричность | «является братом/сестрой» | |
| Антисимметричность | на целых числах | |
| Транзитивность | на целых числах |
Функции
Функция — это отношение, в котором каждый элемент отображается ровно в один элемент .
- Инъекция: разные входы дают разные выходы
- Сюръекция: каждый элемент кообласти достигается
- Биекция: и инъекция, и сюръекция одновременно
Комбинаторика
Перестановки
Число способов упорядочить элементов из различных:
Сочетания
Число способов выбрать элементов из (порядок не важен):
from math import comb, perm
n, r = 10, 3
print(f"P({n},{r}) = {perm(n, r)}") # 720
print(f"C({n},{r}) = {comb(n, r)}") # 120
Биномиальная теорема
Принцип Дирихле
Если объектов разместить в ящиков, то хотя бы один ящик содержит два или более объектов.