Питер Шор из MIT объясняет теорему Кэли и магию производящих функций

MIT OpenCourseWare 7,1 тыс. 1 ч 11 мин 4 мин 17.12.2025
Главное

В рамках курса Массачусетского технологического института (MIT) по комбинаторике профессор Питер Шор разбирает фундаментальные методы подсчета сложных структур. Лекция охватывает путь от классической теоремы Кэли о количестве остовных деревьев до мощного инструмента производящих функций, позволяющего решать комбинаторные задачи с помощью алгебраических манипуляций.

🌲 Теорема Кэли: сколько способов соединить точки? 0:12

Одной из центральных тем лекции является теорема Кэли, которая отвечает на вопрос: сколько различных помеченных деревьев можно построить на $n$ вершинах? Питер Шор начинает с простых примеров, чтобы аудитория могла самостоятельно угадать закономерность:

На основе этой последовательности (1, 3, 16, 125...) выводится общая формула теоремы Кэли: число помеченных деревьев на $n$ вершинах равно $n^{n-2}$.

🛠️ Элегантное доказательство через двойной подсчет 6:03

Питер Шор отмечает, что существует множество способов доказать теорему Кэли. По его мнению, доказательство через поиск биекции (взаимно однозначного соответствия) между деревьями и последовательностями чисел от 1 до $n$ является «невероятно сложным и совершенно неинтуитивным». Вместо этого он предлагает метод двойного подсчета одного и того же объекта разными способами.

В качестве такого объекта выбираются помеченные корневые деревья с упорядоченными ребрами.

Процесс подсчета строится следующим образом:

  1. Первый способ: Мы берем количество обычных помеченных деревьев ($T_n$), умножаем на $n$ (выбор корня) и на $(n-1)!$ (количество способов упорядочить ребра).
  2. Второй способ: Мы строим дерево из «леса» (набора изолированных вершин), добавляя по одному ребру за раз.

Шор демонстрирует, что на каждом шаге $k$ при добавлении ребра у нас есть $n$ вариантов выбора узла, в который «втыкается» новое ребро, и $n-k-1$ вариантов выбора дерева, которое станет новой ветвью. Перемножение этих вариантов дает искомую формулу, подтверждающую, что $T_n = n^{n-2}$.

📈 Производящие функции: «механический» метод решения 29:03

Профессор переходит к производящим функциям, называя их чрезвычайно полезным концептом. По словам Шора, преимущество этого метода заключается в его «механичности»: если для обычного комбинаторного доказательства требуется творческое озарение, то производящие функции позволяют прийти к результату через стандартную алгебру.

Производящая функция для последовательности $a_0, a_1, a_2 \dots$ определяется как: $$F(x) = \sum_{i=0}^{\infty} a_i x^i$$

Здесь переменная $x$ не имеет физического смысла; Шор называет её инструментом для «отслеживания» индексов элементов последовательности.

Ключевые примеры использования:

🎲 Алгебра событий: сложение и умножение 39:58

Шор объясняет, как операции над множествами объектов отражаются на их производящих функциях:

Профессор приводит пример с 6-гранным и 8-гранным кубиками. Чтобы узнать количество способов получить сумму $n$, нужно перемножить многочлены, представляющие каждый кубик. Например, расчет показывает, что существует ровно 5 способов выбросить сумму 10 (пары 6+4, 5+5, 4+6, 3+7, 2+8).

💰 Задача о размене монет 56:04

Еще один классический пример — подсчет способов составить сумму в $n$ центов, имея ограниченный или неограниченный набор номиналов.

Если у нас есть 6 пенни, 1 никель (5 центов) и 2 дайма (10 центов), производящая функция будет выглядеть как произведение трех скобок: $$(1 + x + \dots + x^6) \cdot (1 + x^5) \cdot (1 + x^{10} + x^{20})$$

Развернув это выражение, коэффициент при $x^{21}$ покажет, что существует всего 2 способа набрать 21 цент таким набором монет. Для бесконечного количества монет формула упрощается до вида $1/(1-x^k)$, что позволяет использовать методы анализа бесконечных рядов.

🧪 Доказательство тождеств через производные 1:02:13

В финале лекции Питер Шор демонстрирует «трюк», который делает производящие функции по-настоящему мощными: использование дифференцирования для нахождения сложных сумм.

Рассматривается задача: найти значение суммы $\sum_{k=0}^{n} k \binom{n}{k}$. Вместо прямого подсчета Шор предлагает:

  1. Взять производящую функцию для биномиальных коэффициентов: $(1+x)^n = \sum \binom{n}{k} x^k$.
  2. Продифференцировать обе части по $x$. Это превращает $x^k$ в $k x^{k-1}$, «вынося» индекс $k$ в качестве коэффициента.
  3. Подставить $x = 1$.

Результат получается мгновенно: $n \cdot 2^{n-1}$. Для сравнения, профессор приводит альтернативный метод доказательства через «выбор лидера в комитете», который дает тот же результат, но требует иного логического подхода.

Шор завершает лекцию утверждением, что хотя эти примеры можно решить и другими способами, производящие функции станут незаменимыми при анализе более сложных структур, таких как числа Фибоначчи.

💬 Цитаты

«Биекция между помеченными деревьями и последовательностями невероятно сложна и совершенно неинтуитивна.»

Питер Шор 05:36

«Преимущество производящих функций в том, что они механичны. Вам не нужно проявлять творческий подход, чтобы найти решение.»

Питер Шор 30:04

«x на самом деле ничего не значит. Это просто инструмент для отслеживания индекса i в последовательности.»

Питер Шор 32:36
👥 Спикер
🔗 Упомянутые сайты и проекты
📖 Термины
Помеченное дерево
Граф без циклов, где каждая вершина имеет уникальный номер от 1 до n.
Корневое дерево
Дерево, в котором одна из вершин выделена и называется корнем.
Производящая функция
Формальный степенной ряд, коэффициенты которого образуют заданную числовую последовательность.
Биекция
Взаимно однозначное соответствие между элементами двух множеств.
Лес
Граф, не содержащий циклов, представляющий собой объединение нескольких деревьев.
📊 Цифры
⚖️ Другая сторона
Теорема Кэли Питер Шор Производящие функции Комбинаторика MIT