Производящая функция — различия между версиями

Материал из Викиконспекты
Перейти к: навигация, поиск
(Примеры простых производящих функций)
Строка 1: Строка 1:
 
{{Определение  
 
{{Определение  
 
|definition=
 
|definition=
'''Производя́щая фу́нкция (generating function)''' — это формальный степенной ряд:
+
'''Производящая функция''' (англ. ''generating function'') — это формальный степенной ряд:
 
<tex>G(z)=\sum_{n=0}^\infty a_n z^n</tex>,
 
<tex>G(z)=\sum_{n=0}^\infty a_n z^n</tex>,
 
порождающий (производящий) последовательность <tex>(a_0, a_1, a_2, ...)</tex>.  
 
порождающий (производящий) последовательность <tex>(a_0, a_1, a_2, ...)</tex>.  
Строка 17: Строка 17:
 
* Исследования асимптотического поведения последовательности;
 
* Исследования асимптотического поведения последовательности;
 
* Доказательства тождеств с последовательностями;
 
* Доказательства тождеств с последовательностями;
* Решения задачи подсчета объектов в комбинаторике. Например, в доказательстве [[Нахождение количества разбиений числа на слагаемые|пентагональной теоремы]] или в задаче нахождения количества расстановок m ладей на доске n&nbsp;×&nbsp;n;
+
* Решения задачи подсчета объектов в комбинаторике. Например, в доказательстве [[Нахождение количества разбиений числа на слагаемые|пентагональной теоремы]] или в задаче нахождения количества расстановок <tex>m</tex> ладей на доске <tex>n</tex>&nbsp;×&nbsp;<tex>n</tex>;
 
* Вычисления бесконечных сумм.  
 
* Вычисления бесконечных сумм.  
 
== Примеры производящих функций ==
 
== Примеры производящих функций ==
 
Рассмотрим производящие функции для различных комбинаторных последовательностей:
 
Рассмотрим производящие функции для различных комбинаторных последовательностей:
  
* <tex dpi = "180">\prod_{n=1}^\infty (1-x^n)</tex> {{---}} производящая функция для разности количества разбиений числа n в четное и нечетное число различных слагаемых. Например коэффициент при <tex>x^5</tex> {{---}} +1, потому-что существует два разбиение на четное число различных слагаемых (4+1; 3+2) и одно на нечетное (5). Правильность этого легко осознать, если понять, что каждая скобка представляет какое-то слагаемое и мы можем его взять (второе слагаемое {{---}} <tex>-x^k</tex>) или не взять (первое {{---}} 1). Эта производящая функция используется в комбинаторном доказательстве пентагональной теоремы.
+
* <tex dpi = "180">\prod_{n=1}^\infty (1-x^n)</tex> {{---}} производящая функция для разности количества разбиений числа <tex>n</tex> в четное и нечетное число различных слагаемых. Например коэффициент при <tex>x^5</tex> {{---}} <tex>+1</tex>, потому-что существует два разбиение на четное число различных слагаемых (<tex>4+1</tex>; <tex>3+2</tex>) и одно на нечетное (<tex>5</tex>). Правильность этого легко осознать, если понять, что каждая скобка представляет какое-то слагаемое и мы можем его взять (второе слагаемое {{---}} <tex>-x^k</tex>) или не взять (первое {{---}} <tex>1</tex>). Эта производящая функция используется в комбинаторном доказательстве пентагональной теоремы.
  
* <tex dpi = "180"> \prod_{n=1}^\infty \frac{1}{1-x^n}</tex> {{---}} производящая функция для последовательности <tex>p_n</tex>, где <tex>p_i</tex> {{---}} количество разбиений числа i на слагаемые.
+
* <tex dpi = "180"> \prod_{n=1}^\infty \frac{1}{1-x^n}</tex> {{---}} производящая функция для последовательности <tex>p_n</tex>, где <tex>p_i</tex> {{---}} количество разбиений числа <tex>i</tex> на слагаемые.
  
 
* <tex dpi = "180">\prod_{n=1}^\infty (1+x^n)</tex> {{---}} производящая функция для последовательности <tex>d_n</tex>, где <tex>d_i</tex> {{---}} количество разбиений на различные слагаемые.
 
* <tex dpi = "180">\prod_{n=1}^\infty (1+x^n)</tex> {{---}} производящая функция для последовательности <tex>d_n</tex>, где <tex>d_i</tex> {{---}} количество разбиений на различные слагаемые.
Строка 37: Строка 37:
 
== Примеры решений задач методом производящих функций ==
 
== Примеры решений задач методом производящих функций ==
 
=== Решение рекуррентных соотношений ===
 
=== Решение рекуррентных соотношений ===
Существует целый класс последовательностей, задаваемых рекуррентным соотношением, например, <tex>f_n</tex> {{---}} числа Фибоначчи или <tex>C_n</tex> {{---}} числа Каталана. Метод производящих функций позволяет получить выражение для <tex>a_n</tex> через номер элемента в последовательности в замкнутом виде, то есть в таком виде, что выражение можно вычислить, предполагая, что z достаточно мало.
+
Существует целый класс последовательностей, задаваемых рекуррентным соотношением, например, <tex>f_n</tex> {{---}} числа Фибоначчи или <tex>C_n</tex> {{---}} числа Каталана. Метод производящих функций позволяет получить выражение для <tex>a_n</tex> через номер элемента в последовательности в замкнутом виде, то есть в таком виде, что выражение можно вычислить, предполагая, что <tex>z</tex> достаточно мало.
  
Пусть последовательность <tex>(a_0, a_1, a_2, ...)</tex> удовлетворяет некоторому рекуррентному соотношению. Мы хотим получить выражение для <tex>a_n</tex> (при <tex>n \ge 0</tex>) в замкнутом виде. Алгоритм получения замкнутого выражения для чисел <tex>a_n</tex>, удовлетворяющих рекуррентному соотношению, с помощью производящих функций состоит из 4 шагов:
+
Пусть последовательность <tex>(a_0, a_1, a_2, ...)</tex> удовлетворяет некоторому рекуррентному соотношению. Мы хотим получить выражение для <tex>a_n</tex> (при <tex>n \geqslant 0</tex>) в замкнутом виде. Алгоритм получения замкнутого выражения для чисел <tex>a_n</tex>, удовлетворяющих рекуррентному соотношению, с помощью производящих функций состоит из 4 шагов:
  
# Записать рекуррентное соотношение и начальные данные для него в следующем виде (если порядок соотношения равен k, то есть      количество предшествующих элементов, требуемых для вычисления элемента с номером n, равно k):
+
# Записать рекуррентное соотношение и начальные данные для него в следующем виде (если порядок соотношения равен <tex>k</tex>, то есть      количество предшествующих элементов, требуемых для вычисления элемента с номером <tex>n</tex>, равно <tex>k</tex>):
 
#: <tex>a_0=...,</tex>
 
#: <tex>a_0=...,</tex>
 
#: <tex>a_1=...,</tex>
 
#: <tex>a_1=...,</tex>
 
#: <tex>...</tex>
 
#: <tex>...</tex>
 
#: <tex>a_{k-1}=...,</tex>
 
#: <tex>a_{k-1}=...,</tex>
#: <tex>a_{n}=..., n \ge k.</tex>
+
#: <tex>a_{n}=..., n \geqslant k.</tex>
# Домножить каждую строчку на z в соответствующей степени и просуммировать строчки для всех n <tex> \ge 0 </tex>.
+
# Домножить каждую строчку на <tex>z</tex> в соответствующей степени и просуммировать строчки для всех <tex>n \geqslant 0 </tex>.
 
# В полученном уравнении привести все суммы <tex>\sum</tex> к замкнутому виду. Получить уравнение для производящей функции.
 
# В полученном уравнении привести все суммы <tex>\sum</tex> к замкнутому виду. Получить уравнение для производящей функции.
 
# Выразить <tex>G(z)</tex> в явном виде (решить уравнение, полученное на предыдущем шаге) и разложить производящую функцию в ряд по степеням <tex>z</tex>.
 
# Выразить <tex>G(z)</tex> в явном виде (решить уравнение, полученное на предыдущем шаге) и разложить производящую функцию в ряд по степеням <tex>z</tex>.
Строка 57: Строка 57:
 
<tex>a_1=2,</tex>
 
<tex>a_1=2,</tex>
  
<tex>a_n=6a_{n-1}-8a_{n-2}+n, n \ge 2</tex>
+
<tex>a_n=6a_{n-1}-8a_{n-2}+n, n \geqslant 2</tex>
  
 
Запишем производящую функцию для этой последовательности и преобразуем правую часть:
 
Запишем производящую функцию для этой последовательности и преобразуем правую часть:
Строка 77: Строка 77:
  
  
Для того, чтобы замкнуть последнюю сумму воспользуемся очень важным приемом, который используется при преобразовании производящих функций. Фактически мы имеем дело с последовательностью <tex>nb_n</tex> (в нашем случае последовательность <tex>b_n=(1, 1, 1, ...)</tex>). Такая последовательность получается путём дифференцирования функции <tex>B(z)</tex>, производящей для <tex>b_n</tex>, с последующим умножением результата на z:
+
Для того, чтобы замкнуть последнюю сумму воспользуемся очень важным приемом, который используется при преобразовании производящих функций. Фактически мы имеем дело с последовательностью <tex>nb_n</tex> (в нашем случае последовательность <tex>b_n=(1, 1, 1, ...)</tex>). Такая последовательность получается путём дифференцирования функции <tex>B(z)</tex>, производящей для <tex>b_n</tex>, с последующим умножением результата на <tex>z</tex>:
  
  
Строка 107: Строка 107:
  
  
Разложим знаменатель на множители и [http://www.genfunc.ru/theory/pril04/ разобьём дробь на сумму простых дробей]:
+
Разложим знаменатель на множители и разобьём дробь на сумму простых дробей<ref>[http://www.genfunc.ru/theory/pril04/ О разложении рациональной функции в ряд]</ref>:
  
  
 
<tex dpi = "180">G(z)=\frac{1-6z+11z^2-5z^3}{(1-6z+8z^2)(1-z)^2}=\frac{1-6z+11z^2-5z^3}{(1-2z)(1-4z)(1-z)^2}=\frac{1/3}{(1-z)^2}+\frac{7/9}{1-z}-\frac{1/2}{1-2z}+\frac{7/18}{1-4z}</tex>
 
<tex dpi = "180">G(z)=\frac{1-6z+11z^2-5z^3}{(1-6z+8z^2)(1-z)^2}=\frac{1-6z+11z^2-5z^3}{(1-2z)(1-4z)(1-z)^2}=\frac{1/3}{(1-z)^2}+\frac{7/9}{1-z}-\frac{1/2}{1-2z}+\frac{7/18}{1-4z}</tex>
  
Разложим первое слагаемое в ряд, используя [http://www.genfunc.ru/theory/pril02/ расширенные биномиальные коэффициенты]:
+
Разложим первое слагаемое в ряд, используя расширенные биномиальные коэффициенты<ref>[http://www.genfunc.ru/theory/pril02/ Расширенные биномиальные коэффициенты]</ref>:
  
  
Строка 130: Строка 130:
  
 
=== Расчет дисперсии геометрического распределения ===
 
=== Расчет дисперсии геометрического распределения ===
Метод производящих функций также используется для нахождения математического ожидания и дисперсии различных распределений в теории вероятностей. Например, в [http://ru.wikipedia.org/wiki/%D0%93%D0%B5%D0%BE%D0%BC%D0%B5%D1%82%D1%80%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%BE%D0%B5_%D1%80%D0%B0%D1%81%D0%BF%D1%80%D0%B5%D0%B4%D0%B5%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5 геометрическом распределении] для нахождения дисперсии <tex>\operatorname{D}(\xi)=\operatorname{E}(\xi^2)-(\operatorname{E}(\xi))^2</tex> нужно найти два мат. ожидания:
+
Метод производящих функций также используется для нахождения математического ожидания и дисперсии различных распределений в теории вероятностей. Например, в геометрическом распределении<ref>[http://ru.wikipedia.org/wiki/%D0%93%D0%B5%D0%BE%D0%BC%D0%B5%D1%82%D1%80%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%BE%D0%B5_%D1%80%D0%B0%D1%81%D0%BF%D1%80%D0%B5%D0%B4%D0%B5%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5 Геометрическое распределение]</ref> для нахождения дисперсии <tex>\operatorname{D}(\xi)=\operatorname{E}(\xi^2)-(\operatorname{E}(\xi))^2</tex> нужно найти два мат. ожидания:
  
  
Строка 172: Строка 172:
 
== Приложения ==
 
== Приложения ==
 
=== Примеры простых производящих функций ===
 
=== Примеры простых производящих функций ===
На последнем шаге приведения производящей функции к замкнутому виду требуется разложить полученные слагаемые в ряд. Для этого можно воспользоваться [http://www.genfunc.ru/theory/pril03/ таблицей основных производящих функций].
+
На последнем шаге приведения производящей функции к замкнутому виду требуется разложить полученные слагаемые в ряд. Для этого можно воспользоваться таблицей основных производящих функций<ref>[http://www.genfunc.ru/theory/pril03/ Таблица производящих функций]</ref>.
  
Все суммы <tex dpi="110">\sum</tex> выполняются по переменной <tex>n</tex> от <tex>0</tex> до <tex>\infty</tex>. Элементы последовательности нумеруются от 0.  
+
Все суммы <tex dpi="110">\sum</tex> выполняются по переменной <tex>n</tex> от <tex>0</tex> до <tex>\infty</tex>. Элементы последовательности нумеруются от <tex>0</tex>.  
 
{| class="wikitable" style="width:30cm" border=1
 
{| class="wikitable" style="width:30cm" border=1
 
|+
 
|+
Строка 180: Строка 180:
 
| Последовательность || Производящая функция в виде ряда || Производящая функция в замкнутом виде
 
| Последовательность || Производящая функция в виде ряда || Производящая функция в замкнутом виде
 
|-align="left" bgcolor=#FFFFFF
 
|-align="left" bgcolor=#FFFFFF
| <tex>(1, 0, 0,...)</tex> || 1 || 1
+
| <tex>(1, 0, 0,...)</tex> || <tex>1</tex> || <tex>1</tex>
 
|-align="left" bgcolor=#FFFFFF
 
|-align="left" bgcolor=#FFFFFF
| <tex>(0, 0, ..., 0, 1, 0, 0...)</tex> (m нулей в начале) || <tex>z^m</tex> || <tex>z^m</tex>
+
| <tex>(0, 0, ..., 0, 1, 0, 0...)</tex> (<tex>m</tex> нулей в начале) || <tex>z^m</tex> || <tex>z^m</tex>
 
|-align="left" bgcolor=#FFFFFF
 
|-align="left" bgcolor=#FFFFFF
 
| <tex>(1, 1, 1,...)</tex> || <tex>\sum z^n</tex> || <tex dpi="160">\frac{1}{1-z}</tex>
 
| <tex>(1, 1, 1,...)</tex> || <tex>\sum z^n</tex> || <tex dpi="160">\frac{1}{1-z}</tex>
Строка 207: Строка 207:
 
|}
 
|}
  
== Ссылки ==  
+
== Примечания ==
 +
<references/>
 +
 
 +
== Источники информации ==  
 
* [http://kvant.mirror1.mccme.ru/1988/11/razbienie_chisel.htm Вайнштейн Ф., Разбиение чисел. Журнал "Квант" № 11, 1988 год]
 
* [http://kvant.mirror1.mccme.ru/1988/11/razbienie_chisel.htm Вайнштейн Ф., Разбиение чисел. Журнал "Квант" № 11, 1988 год]
 
* [http://www.genfunc.ru/ genfunc.ru]
 
* [http://www.genfunc.ru/ genfunc.ru]
 
* [http://en.wikipedia.org/wiki/Generating_function Wikipedia - Generating function]
 
* [http://en.wikipedia.org/wiki/Generating_function Wikipedia - Generating function]
 
* [[Нахождение количества разбиений числа на слагаемые|Нахождение количества разбиений числа на слагаемые. Пентагональная теорема Эйлера]]
 
* [[Нахождение количества разбиений числа на слагаемые|Нахождение количества разбиений числа на слагаемые. Пентагональная теорема Эйлера]]
== Литература ==
 
 
* Graham, Knuth, and Patashnik: Concrete Mathematics
 
* Graham, Knuth, and Patashnik: Concrete Mathematics
  
 
[[Категория: Дискретная математика и алгоритмы]]
 
[[Категория: Дискретная математика и алгоритмы]]
 
[[Категория: Комбинаторика]]
 
[[Категория: Комбинаторика]]

Версия 01:48, 11 декабря 2016

Определение:
Производящая функция (англ. generating function) — это формальный степенной ряд:

[math]G(z)=\sum_{n=0}^\infty a_n z^n[/math],

порождающий (производящий) последовательность [math](a_0, a_1, a_2, ...)[/math].

Метод производящих функций был разработан Эйлером в 1750-х годах.

Применение

Производящая функция используется для:

  • Компактной записи информации о последовательности;
  • Нахождения зависимости [math]a_n(n)[/math] для последовательности [math]a_n[/math], заданной рекуррентным соотношением. Например, для чисел Фибоначчи;
  • Нахождения рекуррентного соотношения для последовательности — вид производящей функции может помочь найти формулу;
  • Исследования асимптотического поведения последовательности;
  • Доказательства тождеств с последовательностями;
  • Решения задачи подсчета объектов в комбинаторике. Например, в доказательстве пентагональной теоремы или в задаче нахождения количества расстановок [math]m[/math] ладей на доске [math]n[/math] × [math]n[/math];
  • Вычисления бесконечных сумм.

Примеры производящих функций

Рассмотрим производящие функции для различных комбинаторных последовательностей:

  • [math]\prod_{n=1}^\infty (1-x^n)[/math] — производящая функция для разности количества разбиений числа [math]n[/math] в четное и нечетное число различных слагаемых. Например коэффициент при [math]x^5[/math][math]+1[/math], потому-что существует два разбиение на четное число различных слагаемых ([math]4+1[/math]; [math]3+2[/math]) и одно на нечетное ([math]5[/math]). Правильность этого легко осознать, если понять, что каждая скобка представляет какое-то слагаемое и мы можем его взять (второе слагаемое — [math]-x^k[/math]) или не взять (первое — [math]1[/math]). Эта производящая функция используется в комбинаторном доказательстве пентагональной теоремы.
  • [math] \prod_{n=1}^\infty \frac{1}{1-x^n}[/math] — производящая функция для последовательности [math]p_n[/math], где [math]p_i[/math] — количество разбиений числа [math]i[/math] на слагаемые.
  • [math]\prod_{n=1}^\infty (1+x^n)[/math] — производящая функция для последовательности [math]d_n[/math], где [math]d_i[/math] — количество разбиений на различные слагаемые.
  • [math]\prod_{n=1}^\infty (1+x^{2n-1})[/math] — производящая функция для последовательности [math]l_n[/math], где [math]l_i[/math] — количество разбиений на нечётные слагаемые. С помощью метода производящих функций можно доказать, что производящие функции последовательностей равны, соответственно [math]d_n=l_n[/math]:

[math] \prod_{n=1}^\infty (1+x^{n})=\prod_{n=1}^\infty \frac{1-x^{2n}}{1-x^n}=\frac{1-x^2}{1-x}\frac{1-x^4}{1-x^2}\frac{1-x^6}{1-x^3}...=[/math]


[math]=\frac{1}{1-x}\frac{1}{1-x^3}\frac{1}{1-x^5}...=\prod_{n=1}^\infty (1+x^{2n-1})[/math]


Примеры решений задач методом производящих функций

Решение рекуррентных соотношений

Существует целый класс последовательностей, задаваемых рекуррентным соотношением, например, [math]f_n[/math] — числа Фибоначчи или [math]C_n[/math] — числа Каталана. Метод производящих функций позволяет получить выражение для [math]a_n[/math] через номер элемента в последовательности в замкнутом виде, то есть в таком виде, что выражение можно вычислить, предполагая, что [math]z[/math] достаточно мало.

Пусть последовательность [math](a_0, a_1, a_2, ...)[/math] удовлетворяет некоторому рекуррентному соотношению. Мы хотим получить выражение для [math]a_n[/math] (при [math]n \geqslant 0[/math]) в замкнутом виде. Алгоритм получения замкнутого выражения для чисел [math]a_n[/math], удовлетворяющих рекуррентному соотношению, с помощью производящих функций состоит из 4 шагов:

  1. Записать рекуррентное соотношение и начальные данные для него в следующем виде (если порядок соотношения равен [math]k[/math], то есть количество предшествующих элементов, требуемых для вычисления элемента с номером [math]n[/math], равно [math]k[/math]):
    [math]a_0=...,[/math]
    [math]a_1=...,[/math]
    [math]...[/math]
    [math]a_{k-1}=...,[/math]
    [math]a_{n}=..., n \geqslant k.[/math]
  2. Домножить каждую строчку на [math]z[/math] в соответствующей степени и просуммировать строчки для всех [math]n \geqslant 0 [/math].
  3. В полученном уравнении привести все суммы [math]\sum[/math] к замкнутому виду. Получить уравнение для производящей функции.
  4. Выразить [math]G(z)[/math] в явном виде (решить уравнение, полученное на предыдущем шаге) и разложить производящую функцию в ряд по степеням [math]z[/math].

Для демонстрации универсальности метода рассмотрим довольно произвольное рекуррентное соотношение:

[math]a_0=1,[/math]

[math]a_1=2,[/math]

[math]a_n=6a_{n-1}-8a_{n-2}+n, n \geqslant 2[/math]

Запишем производящую функцию для этой последовательности и преобразуем правую часть:


[math]G(z)=a_0+a_1z+\sum_{n=2}^\infty (6a_{n-1}-8a_{n-2}+n) z^n[/math]


[math]G(z)=a_0+a_1z+6\sum_{n=2}^\infty a_{n-1}z^n - 8\sum_{n=2}^\infty a_{n-2}z^n+\sum_{n=2}^\infty n z^n[/math]


[math]G(z)=a_0+a_1z+6z\sum_{n=1}^\infty a_{n}z^n - 8z^2\sum_{n=0}^\infty a_{n}z^n+\sum_{n=2}^\infty n z^n[/math]


[math]G(z)=a_0+a_1z+6z(G(z)-a_0) - 8z^2G(z)+\sum_{n=2}^\infty n z^n[/math]


[math]G(z)=1-4z+6zG(z) - 8z^2G(z)+\sum_{n=2}^\infty n z^n[/math]


Для того, чтобы замкнуть последнюю сумму воспользуемся очень важным приемом, который используется при преобразовании производящих функций. Фактически мы имеем дело с последовательностью [math]nb_n[/math] (в нашем случае последовательность [math]b_n=(1, 1, 1, ...)[/math]). Такая последовательность получается путём дифференцирования функции [math]B(z)[/math], производящей для [math]b_n[/math], с последующим умножением результата на [math]z[/math]:


[math]zB'(z)=z(\sum_{n=0}^\infty b_n z^n)'=z\sum_{n=1}^\infty nb_n z^{n-1}=\sum_{n=0}^\infty nb_n z^n[/math]


Тогда замкнем последнее слагаемое следующим образом:


[math]\sum_{n=2}^\infty n z^n=z \sum_{n=2}^\infty n z^{n-1}= z (\sum_{n=2}^\infty z^n)'[/math]


[math]\sum_{n=2}^\infty z^n=\sum_{n=0}^\infty z^n-1-z=\frac{1}{1-z}-1-z=\frac{z^2}{1-z}[/math]


[math]z (\frac{z^2}{1-z})'=\frac{z^2(2-z)}{(1-z)^2}[/math]


Таким образом наше последнее слагаемое примет вид:


[math]G(z)=1-4z+6zG(z) - 8z^2G(z)+\frac{z^2(2-z)}{(1-z)^2}[/math]


Это уравнение для производящей функции. Из него выражаем [math]G(z)[/math]:


[math]G(z)=\frac{1-6z+11z^2-5z^3}{(1-6z+8z^2)(1-z)^2}[/math]


Разложим знаменатель на множители и разобьём дробь на сумму простых дробей[1]:


[math]G(z)=\frac{1-6z+11z^2-5z^3}{(1-6z+8z^2)(1-z)^2}=\frac{1-6z+11z^2-5z^3}{(1-2z)(1-4z)(1-z)^2}=\frac{1/3}{(1-z)^2}+\frac{7/9}{1-z}-\frac{1/2}{1-2z}+\frac{7/18}{1-4z}[/math]

Разложим первое слагаемое в ряд, используя расширенные биномиальные коэффициенты[2]:


[math]\frac{1}{(1-z)^2}=(1-z)^{-2}=\sum_{n=0}^{\infty} {-2\choose n}(-z)^n=[/math]


[math]=\sum_{n=0}^{\infty} (-1)^n{n+1\choose 1}(-z)^n=\sum_{n=0}^{\infty}(n+1)z^n[/math]


[math]G(z)=\frac{1/3}{(1-z)^2}+\frac{7/9}{1-z}-\frac{1/2}{1-2z}+\frac{7/18}{1-4z}=[/math]


[math]=\frac{1}{3}\sum_{n=0}^{\infty} (n+1)z^n +\frac{7}{9}\sum_{n=0}^{\infty} z^n - \frac{1}{2}\sum_{n=0}^{\infty} 2^n z^n + \frac{7}{18}\sum_{n=0}^{\infty} 4^n z^n[/math]


[math]a_n=\frac{n+1}{3}+\frac{7}{9}-\frac{2^n}{2}+\frac{7 \cdot 4^n}{18}=\frac{7 \cdot 4^n+6n+20}{18}-2^{n-1}[/math]

Расчет дисперсии геометрического распределения

Метод производящих функций также используется для нахождения математического ожидания и дисперсии различных распределений в теории вероятностей. Например, в геометрическом распределении[3] для нахождения дисперсии [math]\operatorname{D}(\xi)=\operatorname{E}(\xi^2)-(\operatorname{E}(\xi))^2[/math] нужно найти два мат. ожидания:


  • [math]\operatorname{E}(\xi)=\sum_{n=1}^{\infty}n p (1-p)^{n-1} [/math]


  • [math] \operatorname{E}(\xi^2) = \sum_{n=1}^{\infty}n^{2}p(1-p)^{n-1}[/math]


которые фактически являются производящими функциями последовательностей [math]1, 2, 3...[/math] и [math]1, 4, 9...[/math]:


  • [math]\operatorname{E}(\xi)=\sum_{n=1}^{\infty}n p (1-p)^{n-1} = [/math]

[math]= \sum_{n=0}^{\infty}(n+1) p (1-p)^{n} = [/math]

[math]= \sum_{n=0}^{\infty}n p (1-p)^{n} + \sum_{n=1}^{\infty} p (1-p)^{n-1} = [/math]

[math]= (1-p) \operatorname{E}(\xi) +1 \Rightarrow \operatorname{E}(\xi) = \frac{1}{p}[/math]


  • [math] \operatorname{E}(\xi^2) = p\sum_{n=1}^{\infty}n^{2}(1-p)^{n-1} =[/math]

[math] =p\sum_{n=1}^{\infty}n(n+1)(1-p)^{n-1} - p\sum_{n=1}^{\infty}n(1-p)^{n-1} =[/math]

[math] = p\frac{\operatorname{d}^{2}}{\operatorname{d}p^{2}}\sum_{n=1}^{\infty}(1-p)^{n+1} + p\frac{\operatorname{d}}{\operatorname{d}p}\sum_{n=1}^{\infty}(1-p)^{n} =[/math]

[math] = p\frac{\operatorname{d}^{2}}{\operatorname{d}p^{2}}\left(\sum_{n=0}^{\infty}(1-p)^{n} \cdot (1-p)^2\right) +p\frac{\operatorname{d}}{\operatorname{d}p}\left(\sum_{n=0}^{\infty}(1-p)^{n}\cdot(1-p)\right) =[/math]

[math] = p\frac{\operatorname{d}^{2}}{\operatorname{d}p^{2}}\left(\frac{1}{1-(1-p)} \cdot (1-p)^2\right) +p\frac{\operatorname{d}}{\operatorname{d}p}\left(\frac{1}{1-(1-p)}\cdot(1-p)\right) =[/math]

[math] = p\frac{\operatorname{d}^{2}}{\operatorname{d}p^{2}}\left(\frac{(1-p)^2}{p}\right) +p\frac{\operatorname{d}}{\operatorname{d}p}\left(\frac{1-p}{p}\right) =[/math]

[math] = p\cdot\frac{2}{p^3} - p\cdot\frac{1}{p^2} = \frac{2}{p^{2}} - \frac{1}{p} = \frac{2-p}{p^{2}}[/math].


Тогда:


[math]\operatorname{D}(\xi)=\operatorname{E}(\xi^2)-(\operatorname{E}(\xi))^2= \frac{2-p}{p^{2}}-\frac{1}{p^2}=\frac{1-p}{p^2}[/math]

Приложения

Примеры простых производящих функций

На последнем шаге приведения производящей функции к замкнутому виду требуется разложить полученные слагаемые в ряд. Для этого можно воспользоваться таблицей основных производящих функций[4].

Все суммы [math]\sum[/math] выполняются по переменной [math]n[/math] от [math]0[/math] до [math]\infty[/math]. Элементы последовательности нумеруются от [math]0[/math].

Последовательность Производящая функция в виде ряда Производящая функция в замкнутом виде
[math](1, 0, 0,...)[/math] [math]1[/math] [math]1[/math]
[math](0, 0, ..., 0, 1, 0, 0...)[/math] ([math]m[/math] нулей в начале) [math]z^m[/math] [math]z^m[/math]
[math](1, 1, 1,...)[/math] [math]\sum z^n[/math] [math]\frac{1}{1-z}[/math]
[math](1, 0, 0, ..., 0, 1, 0, 0, ... 0, 1, 0, 0...)[/math] (повторяется через [math]m[/math]) [math]\sum z^{nm}[/math] [math]\frac{1}{1-z^m}[/math]
[math](1, -1, 1, -1,...)[/math] [math]\sum (-1)^nz^n[/math] [math]\frac{1}{1+z}[/math]
[math](1, 2, 3, 4,...)[/math] [math]\sum (n+1)z^n[/math] [math]\frac{1}{(1-z)^2}[/math]
[math](1, 2, 4, 8, 16,...)[/math] [math]\sum 2^nz^n[/math] [math]\frac{1}{(1-2z)^2}[/math]
[math](1, r, r^2, r^3,...)[/math] [math]\sum r^nz^n[/math] [math]\frac{1}{(1-rz)^2}[/math]
[math]([/math][math]{m\choose 0}, {m\choose 1}, {m\choose 2}, {m\choose 3},...[/math][math])[/math] [math]\sum {m\choose n}[/math] [math]z^n[/math] [math](1+z)^m[/math]
[math]([/math][math]1, {{m}\choose m}, {{m+1}\choose m}, {{m+2}\choose m},...[/math][math])[/math] [math]\sum {{m+n-1}\choose n}[/math] [math]z^n[/math] [math]\frac{1}{(1-z)^m}[/math]
[math]([/math][math]1, {{m+1}\choose m}, {{m+2}\choose m}, {{m+3}\choose m},...[/math][math])[/math] [math]\sum {{m+n}\choose n}[/math] [math]z^n[/math] [math]\frac{1}{(1-z)^{m+1}}[/math]
[math](0, 1, -\frac{1}{2}, \frac{1}{3}, -\frac{1}{4},...)[/math] [math]\sum \frac{(-1)^{n+1}}{n}[/math] [math]z^n[/math] [math]\ln(1+z)[/math]
[math](1, 1, \frac{1}{2}, \frac{1}{6}, \frac{1}{24},...)[/math] [math]\sum \frac{1}{n!}[/math] [math]z^n[/math] [math]e^z[/math]

Примечания

Источники информации