Обсуждение:Метод производящих функций — различия между версиями
Zevgeniy (обсуждение | вклад) м (UI) |
Zevgeniy (обсуждение | вклад) (progress...) |
||
| Строка 96: | Строка 96: | ||
<tex dpi="350">k=n+1</tex>: <tex dpi="350">Seq_{n+1}(A)(t)=A(t)^{n+1}</tex>. Рассмотрим <tex dpi="350">Seq_{n+1}(A)</tex> как <tex dpi="350">Pair(Seq_n(A), A)</tex>. Тогда <tex dpi="350">Seq_{n+1}(A)(t)=A(t)^n \cdot A(t)=A(t)^{n+1}</tex>. | <tex dpi="350">k=n+1</tex>: <tex dpi="350">Seq_{n+1}(A)(t)=A(t)^{n+1}</tex>. Рассмотрим <tex dpi="350">Seq_{n+1}(A)</tex> как <tex dpi="350">Pair(Seq_n(A), A)</tex>. Тогда <tex dpi="350">Seq_{n+1}(A)(t)=A(t)^n \cdot A(t)=A(t)^{n+1}</tex>. | ||
}} | }} | ||
| + | |||
| + | |||
| + | |||
| + | {{Определение | ||
| + | |definition= | ||
| + | Последовательностью ''(всех возможных длин)'' объектов из <tex dpi="350">A</tex> называется <tex dpi="350">B=Seq(A)=\sum_{i=0}^{\infty}Seq_i(A)</tex>. | ||
| + | }} | ||
| + | |||
| + | |||
| + | {{Утверждение | ||
| + | |statement=<tex dpi="350">Seq(A)(t)=\frac{1}{1 - A(t)}</tex> | ||
| + | |proof=<tex dpi="350">Seq(A)(t)==\sum_{i=0}^{\infty}Seq_i(A)(t)==\sum_{i=0}^{\infty}A(t)^i=\frac{1}{1 - A(t)}</tex> (Геометрическая прогрессия) | ||
| + | }} | ||
| + | |||
| + | |||
| + | '''Ограничение:''' <tex dpi="350">a_0=0</tex>. Этому есть как техническое, так и комбинаторное объяснение. Технически, если <tex dpi="350">a_0>1</tex>, то мы будем делить на отрицательное число; если <tex dpi="350">a_0=1</tex>, то на функцию, у которой свободный член <tex dpi="350">0</tex>, {{---}} что формализм производящих функций сделать не позволяет. Комбинаторное объяснение заключается в том, что если объектов веса ноль более 0, то мы можем создать бесконечное количество последовательностей веса 0 (комбинируя такие объекты), а это не то, с чем мы хотим работать с конечными количествами последовательностей. | ||
---- | ---- | ||
Версия 22:55, 23 июня 2020
Содержание
Непомеченные комбинаторные объекты
Каждый комбинаторный объект состоит из атомов.
У атомов определен вес .
| Определение: |
| Считающей последовательностью называется последовательность , где — количество объектов веса . |
Производящую функцию класса обозначим .
| Определение: |
| Комбинаторным объектом называется комбинаторный объект, состоящий из одного атома веса . |
Считающая последовательность: .
Производящая функция последовательности: .
| Определение: |
| Комбинаторным объектом называется комбинаторный объект, состоящий из одного атома веса . . |
Считающая последовательность: .
Производящая функция последовательности: .
| Определение: |
| Комбинаторным классом называется множество комбинаторных объектов, обладающих каким-то свойством. |
Объединение комбинаторных классов
| Определение: |
| Объединением комбинаторных классов и называется комбинаторный класс . |
При объединении комбинаторных классов одинаковые объекты разных классов считаются разными. Это делается так, чтобы не рассматривать внутреннюю структуру классов, а работать только со считающими последовательностями и производящими функциями.
Пары комбинаторных классов (декартово произведение комбинаторных классов)
| Определение: |
| Парой комбинаторных классов и называется комбинаторный класс . |
| Утверждение: |
| Верно, потому что коэффициенты производящей функции описываются описываются равенством выше) |
Последовательности комбинаторных классов
| Определение: |
| Последовательностью объектов из называется . |
| Утверждение: |
|
Докажем по индукции: База .
Переход.
|
| Определение: |
| Последовательностью (всех возможных длин) объектов из называется . |
| Утверждение: |
| (Геометрическая прогрессия) |
Ограничение: . Этому есть как техническое, так и комбинаторное объяснение. Технически, если , то мы будем делить на отрицательное число; если , то на функцию, у которой свободный член , — что формализм производящих функций сделать не позволяет. Комбинаторное объяснение заключается в том, что если объектов веса ноль более 0, то мы можем создать бесконечное количество последовательностей веса 0 (комбинируя такие объекты), а это не то, с чем мы хотим работать с конечными количествами последовательностей.
Такие большие группы часто анализируют с помощью производящих функций. Один из популярных методов — метод символов [1]. Он использует внутреннюю структуру объектов для получения производящих функций. В случае непомеченных объектов, как и в анализе в нашей статье, считается, что нет объектов нулевого веса. Иногда для удобства их добавляют, чтобы показать наличие одного пустого множества.
| Утверждение: |
. |
|
, так как есть единственный способ составить пустую последовательность. Докажем по индукции. База .
Переход.
|
При непомеченных объектах рассмотренные классы имеют следующие производящие функции:
| , где — функция Эйлера. |
|---|
Однако порой некоторые комбинаторные классы удобнее обозначать как помеченные. Например, — помеченные графы. С помеченными объектами используется экспоненциальная производящая функция [2]. В данном случае для некоторых рассмотренных классов используются следующие производящие функции:
| . |
|---|
Ограниченные конструкции
Иногда в анализе необходимо ввести ограничение на количество компонентов. Такой случай обозначается нижним коэффициентом (например, — компонентов).
Непосредственной формулой для производящих функций является диагональ декартова произведения [3] , определяемая как . Тогда имеет место соотношение .
Диагональная конструкция позволяет получить доступ к классу всех неупорядоченных пар из различных элементов из , то есть к . Прямое выражение выполняется следующим способом: неупорядоченная пара связана с двумя упорядоченными парами и , кроме тех случаев, когда , то есть когда пара лежит на диагонали декартова произведения. Другими словами, .
Это, в свою очередь, означает что . Таким образом можно выразить . Аналогично для , и :
Аналогичные рассуждения можно провести и для больших , однако расчеты быстро становятся сложными. Классический способ исправления таких вопросов — теорема Пойа.
Однако в методе символов предлагается более глобальный подход, основанный на многомерных производящих функциях и использующий ряд Бюрмана-Лагранжа [4]. В общем случае, используя метод символов, производящие функции ограниченных конструкций можно подсчитать следующим способом:
| , где — функция Эйлера. |
|---|