تابع مولد

در ریاضیات **تابع مولد** یک سری توانی است که ضرایب آن اطلاعاتی در مورد دنبالهٔ فرضی *a**n* (با اندیس‌های طبیعی) را در خود رمز می‌کنند. توابع مولد برای اولین بار توسط ابراهام دو مواور استفاده شدند. در واقع توابع مولد بسیار قدرتمند هستند و می‌توان از آن‌ها برای رمزگذاری اطلاعات در مورد آرایه‌ای از اعداد فهرست شده توسط اعداد طبیعی استفاده کرد.

توابع مولد دارای انواع مختلفی مانند **توابع مولد معمولی**، **توابع مولد نمایی**، **سری‌های لمبرت**، **سری‌های بل** و **سری دیریکله** می‌باشند که در ادامه برای هر یک تعریف و مثال‌هایی ارائه داده می‌شود. هر دنباله در اصل یک تابع مولد از هر نوع دارد (به جز سری‌های لمبرت و دیریکله که از اندیس یکم شروع می‌شوند، بقیه انواع از اندیس صفرم شروع می‌شوند) و بسته به نوع تابع می‌توان از تابع مولد مناسب استفاده کرد.
توابع مولد اغلب به صورت یک فرم بسته (به جای یک سری) ارائه می‌شوند. گاهی یک تابع مولد با یک مقدار خاص x مقداردهی می‌شود. به هر حال، باید توجه داشت که توابع مولد سری‌هایی توانی هستند و لازم نیست که برای همهٔ مقادیر x رفتار مشابهی داشته باشند.

توابع مولد به‌طور کلی در فرم توابع معمولی که به صورت نگاشتی از دامنه به برد است، نیستند و این نام نیز صرفاً به صورت سنتی بر روی آن‌ها بوده و بهتر است به جای توابع مولد از واژه **سری‌های مولد** استفاده کنیم.

## تعاریف
### تابع مولد معمولی
تابع مولد معمولی دنبالهٔ *a**n* عبارتست از
:G(a_n;x)=\sum_{n=0}^{\infty}a_nx^n

وقتی از واژهٔ تابع مولد استفاده می‌شود عموماً منظور همان تابع مولد معمولی است.
اگر *a**n* تابع احتمالی وزن دار از یک متغیر تصادفی گسسته باشد آنگاه تابع مولد معمولی اش، تابع مولد احتمال نامیده می‌شود.

تابع مولد معمولی می‌تواند به دنباله‌هایی با اندیس‌های چند گانه تعمیم بیابند برای مثال تابع مولد دنباله یa_{m,n}(که mوn اعداد طبیعی اند) عبارتست از

:G(a_{m,n};x,y)=\sum_{m,n=0}^{\infty}a_{m,n}x^my^n

### تابع مولد نمایی
تابع مولد نمایی دنبالهٔ *a**n* عبارتست از

:EG(a_n;x)=\sum _{n=0}^{\infty} a_n \frac{x^n}{n!}.

برای مسائل شمارشی ترکیبی راحت‌تر است که به جای استفاده از توابع مولد معمولی از توابع مولد نمایی استفاده کنیم.

### تابع مولد پوآسن
تابع مولد پوآسن دنبالهٔ *a**n* به صورت زیر است:

:\operatorname{PG}(a_n;x)=\sum _{n=0}^{\infty} a_n e^{-x} \frac{x^n}{n!} = e^{-x}\, \operatorname{EG}(a_n;x).

### سریهای لمبرت
سریهای لمبرت دنبالهٔ *a**n* عبارتست از

:\operatorname{LG}(a_n;x)=\sum _{n=1}^{\infty} a_n \frac{x^n}{1-x^n}.

توجه کنید اندیس *a**n*در سری‌های لمبرت بایک شروع می‌شود (نه باصفر)

### سری‌های بل
سری بل یک متغیر x و یک عدد اولP عبارتست از
:\operatorname{BG}_p(a_n;x)=\sum_{n=0}^\infty a_{p^n}x^n.

### توابع مولد سری‌های دیریکله
سری دیریکله هرچند کاملاً یک سری توانی نیست اما اغلب به عنوان تابع مولد طبقه‌بندی می‌شود. سری دریکله دنبالهٔ *a**n* عبارتست از

:\operatorname{DG}(a_n;s)=\sum _{n=1}^{\infty} \frac{a_n}{n^s}.

تابع مولد سری دیریکله زمانی که a*<sub>*n*</sub> یک [[تابع حاصل ضربی]] باشد بسیار مفید است. زمانی که a**n* بسط حاصلضرب اولر باشد داریم:
:\operatorname{DG}(a_n;s)=\prod_{p} \operatorname{BG}_p(a_n;p^{-s})\,.

اگر a*<sub>*n*</sub> یک [[کاراکتر دیریکله]] باشد آنگاه تابع مولد سری دیریکله آن یک [[سری L دیریکله]] می‌شود.

=== توابع مولد دنباله‌های چندجمله‌ای ===
ایده توابع مولد قابل بسط دادن به سایر دنباله‌ها می‌باشد. به عنوان مثال دنباله چندجمله‌ای‌های شامل دوجمله (دنباله دوجمله ای) توسط تابع مولد زیر تولید شده است:

:<math>e^{xf(t)}=\sum_{n=0}^\infty \frac{p_n(x)}{n!} t^n</math>

که در آن (*p*<sub>*n*</sub>(*x* یک دنباله از چندجمله‌ای‌ها بوده و یک تابع خاص می‌باشد.
[[دنباله]] نیز به همین ترتیب ساخته شده است. برای اطلاعات بیشتر از [[چندجمله‌ای‌های تعمیم یافته Appell]] استفاده کنید.

== توابع مولد معمولی ==
چندجمله‌ای هایک حالت خاص از توابع مولد معمولی می‌باشند که مربوط به دنباله‌های محدود یا دنباله‌های نامحدود می‌باشند.
این نکته مهم است که دنباله‌های محدود می‌توانند به عنوان توابع مولد تفسیر شوند مانند Poincaré polynomial و غیره.
دنباله ثابت ۱, ۱, ۱, ۱, ۱, ۱, ۱, ۱, ۱, … یکی از کلیدی‌ترین دنباله‌ها در بحث توابع مولد می‌باشد. تابع مولد معمولی این دنباله عبارت است از:

:<math>\sum_{n=0}^{\infty}x^n = \frac{1}{1-x}.</math>

عبارت سمت چپ بسط [[سری مکلورن]] عبارت سمت راست می‌باشد. عبارت سمت راست می‌تواند با ضرب سری توانی ۱ − *x* از سمت چپ و بررسی اینکه نتیجه با سری توانی تابع ثابت ۱ برابر باشد به دست آید. به عبارت دیگر تمامی ضرایب به غیر از ضریب *x*<sup>0</sup> برابر صفر می‌شوند. علاوه بر این سری توانی دیگری با این خاصیت وجود ندارد؛ بنابراین سمت چپ می‌تواند توسط [[ضرب معکوس]] ۱ − *x* در حلقه سری توانی تعیین شود.
عبارت تابع مولد معمولی برای بقیه دنباله‌ها به راحتی می‌تواند از این مورد به‌دست بیاید. به عنوان مثال جایگزین کردن *x* → *ax* تابع مولد [[تصاعد هندسی]] 1, *a*, *a*<sup>2</sup>, *a*<sup>3</sup>, … برای یک ثابت a به‌دست می‌آید:

:<math>\sum_{n=0}^{\infty}(ax)^n= \frac{1}{1-ax}.</math>

این تساوی هم چنین به‌طور مستقیم از این واقعیت که سمت چپ بسط سری مکلورن سمت راست است نتیجه می‌شود. داریم:

:<math>\sum_{n=0}^{\infty}(-1)^nx^n= \frac{1}{1+x}.</math>

همچنین می‌توان *x* را با توان‌های بالاتری از *x* تعویض کرد. برای مثال برای دنباله۱, ۰, ۱, ۰, ۱, ۰, ۱, ۰, .... می‌توان تابع مولد زیر را در نظر گرفت:

:<math>\sum_{n=0}^{\infty}x^{2n}=\frac{1}{1-x^2}.</math>
با مربع کردن مقادیر در تابع اولیه یا با به‌دست آوردن مشتق نسبت به*x* از دو طرف عبارت و تغییر دادن متغیر*n* → *n-1* می‌توان ضرایب دنباله ۱, ۲, ۳, ۴, ۵, … , را ساخت:
:<math>\sum_{n=0}^{\infty}(n+1)x^n= \frac{1}{(1-x)^2},</math>

و توان سوم آن به فرم [[اعداد مثلثی]] ۱, ۳, ۶, ۱۰, ۱۵, ۲۱, … می‌باشد که در آن *n* [[ضرایب دو جمله ای]]<math>\tbinom{n+2}2</math> است. پس داریم:
:<math>\sum_{n=0}^{\infty}\binom{n+2}2 x^n= \frac{1}{(1-x)^3}.</math>

به‌طور کلی می‌توان این قضیه را برای هر *k* مثبتی تعمیم داد:

:<math>\sum_{n=0}^{\infty}\binom{n+k}k x^n= \frac{1}{(1-x)^{k+1}}.</math>

توجه کنید که:

:<math>2\binom{n+2}2 - 3\binom{n+1}1 + \binom{n}0= 2\frac{(n+1)(n+2)}2 -3(n+1) + 1 = n^2,</math>

می‌توان تابع مولد دنباله ۰, ۱, ۴, ۹, ۱۶, … از [[اعداد مربعی]] را با استفاده از ترکیب خطی از [[ضریب دوجمله‌ای|ضرایب دوجمله‌ای]] زیر به‌دست‌آورد:
:<math>G(n^2;x)=\sum_{n=0}^{\infty}n^2x^n=\frac{2}{(1-x)^3}-\frac{3}{(1-x)^2}+\frac{1}{1-x}=\frac{x(x+1)}{(1-x)^3}.</math>

=== توابع گویا ===


تابع مولد معمولی یک دنباله می‌تواند به عنوان یک [[تابع منطقی]] (نسبت دو چندجمله ای) بیان شود اگرو فقط اگر دنباله یک [[رابطه بازگشتی]] باضرایب ثابت باشد. این نکته مثال‌های بالا را فراگیرتر می‌کند. حال عکس این موضوع را بررسی می‌کنیم، هر دنباله که با کسری از چندجمله ای‌ها ساخته شده باشد بیانگر یک تابع خطی با ضرایب ثابت می‌باشد. این ضرایب با ضرایب مخرج کسر چندجمله‌ای یکسان می‌باشند. (بنابراین آن‌ها می‌توانند مستقیماً به‌دست آیند)

=== ضرب منجر به کانولوشن ===

ضرب چند تابع مولد باعث ایجاد یک [[پیچیدگی گسسته]] در ([[ضرب کوشی]]) دنباله‌ها می‌گردد. به عنوان مثال دنباله مجموع تجمعی:

:<math>(a_0, a_0 + a_1, a_0 + a_1 + a_2, \cdots)</math>

از یک دنباله با تابع مولد معمولی (*G*(*an*; *xدارای تابع مولد زیر می‌باشد:

:G(a_n; x) = \frac{1}{1-x}

زیرا 1/(1-*x*) تابع مولد معمولی دنباله (۱, ۱, ...) می‌باشد.

### ارتباط با با گسستگی زمانی تبدیل فوریه

سری مطلقاً همگرا ی زیر را در نظر بگیرید:

:G \left ( a_n; e^{-i \omega} \right) = \sum_{n=0}^\infty a_n e^{-i \omega n}

این سری گسستگی زمانی تبدیل فوریه *a*0, *a*1, .... را به ما می‌دهد.

### رشد مجانبی از دنباله
در حساب دیفرانسیل و انتگرال، اغلب از نرخ رشد ضریب یک سری توانی برای محاسبه شعاع همگرایی استفاده می‌شود. عکس این مطلب نیز صادق است؛ اغلب شعاع همگرایی برای یک تابع مولد را می‌توان برای استنباط آنالیز مجانبی یک دنباله اساسی مورد استفاده قرار داد.
به عنوان مثال، تابع مولد معمولی *G*(*a**n*; *x*) که دارای شعاع محدودی از همگرایی (r) می‌باشد به صورت زیر نوشته می‌شود:

:G(a_n; x) = \frac{A(x) + B(x) \left (1- \frac{x}{r} \right )^{-\beta}}{x^{\alpha}}
که در آن(*A*(*x*و (*B*(*x* توابع تحلیلی با شعاع همگرایی بزرگ‌تر (یا مساوی) r بوده و B (r) ≠ ۰. با استفاده از تابع گاما یا ضرایب دو جمله ای داریم:

:a_n \sim \frac{B(r)}{r^{\alpha} \Gamma(\beta)} \, n^{\beta-1}(1/r)^{n} \sim \frac{B(r)}{r^{\alpha}} \binom{n+\beta-1}{n}(1/r)^{n},

#### رشد مجانبی از دنباله مربعات
با توجه به مطالب بیان شده فوق، تابع مولد معمولی دنباله مربعات به صورت زیر است:

:\frac{x(x+1)}{(1-x)^3}.

که در آن *r* = ۱, α = ۰, β = 3, *A*(*x*) = ۰, و *B*(*x*) = *x*(*x*+1), همچنین ما می‌توانیم بررسی کنیم که آیا دنباله مربعات همان‌طور که انتظار داشتیم رشد می‌کند، بدین منظور داریم:

:a_n \sim \frac{B(r)}{r^{\alpha} \Gamma(\beta)} \, n^{\beta-1} \left (\frac{1}{r} \right )^{n} = \frac{1(1+1)}{1^0\,\Gamma(3)}\,n^{3-1} (1/1)^n = n^2.

#### رشد مجانبی [[اعداد کاتالان]]

تابع مولد معمولی برای اعدا کاتالان به صورت زیر است:
:\frac{1-\sqrt{1-4x}}{2x}.

که در آن *r* = ۱/۴, α = ۱, β = −1/2, *A*(*x*) = 1/2, and *B*(*x*) = −۱/۲, همچنین می‌توان برای اعداد کاتالان نتیجه‌گیری زیر را انجام داد:

:a_n \sim \frac{B(r)}{r^{\alpha} \Gamma(\beta)} \, n^{\beta-1} \left(\frac{1}{r} \right )^{n} = \frac{-\frac{1}{2}}{(\frac{1}{4})^1 \Gamma(-\frac{1}{2})} \, n^{-\frac{1}{2}-1} \left(\frac{1}{\frac{1}{4}}\right)^n = \frac{n^{-\frac{3}{2}} \, 4^n}{\sqrt{\pi}}.

### توابع مولد دو متغیره و چند متغیره
در واقع می‌توان تابع مولد با چند متغیر را مانند آرایه‌ای شامل تعدادی اندیس تعریف کرد، که به آن **توابع مولد چند متغیره** یا **توابع مولد فوق‌العاده** و برای دو متغیر **توابع مولد دومتغیره**گویند.

به عنوان مثال (1+x)^n تابع مولد معمولی برای ضرایب دو جمله ای با یک *n* ثابت است.
حال فرض کنید بخواهیم تابع مولد دومتغیره‌ای که ضرایب دو جمله‌ای \binom{n}{k} را برای تمام*k* و *n*‌ها تولید می‌کند را به‌دست آوریم، برای این منظور (1+x)^n را به عنوان یک سری در *n* در نظر گرفته و تمامی توابع مولد در *y* را پیدا می‌کنیم که این عبارت را به عنوان ضریب دارند. تابع مولد  a^n به صورت زیر است:

:\frac{1}{1-ay},
تابع مولد ضرایب دوجمله‌ای عبارت است از:

:\sum_{n,k} \binom{n}{k} x^k y^n = \frac{1}{1-(1+x)y}=\frac{1}{1-y-xy}.

## مثال
تابع مولد برای دنباله اعداد مربع کامل *a**n* = *n*2:

### تابع مولد معمولی
:G(n^2;x)=\sum_{n=0}^{\infty}n^2x^n=\frac{x(x+1)}{(1-x)^3}.

### تابع مولد نمایی
:EG(n^2;x)=\sum _{n=0}^{\infty} \frac{n^2x^n}{n!}=x(x+1)e^x

### سری Bell
:f_p(x)=\sum_{n=0}^\infty p^{2n}x^n=\frac{1}{1-p^2x}

### سری دیریکله
:\operatorname{DG}(n^2;s)=\sum_{n=1}^{\infty} \frac{n^2}{n^s}=\zeta(s-2),

با استفاده از تابع زتای ریمان.

دنبالهٔ *a<sub>n</sub>* که توسط تابع مولد سری دیریکله تولید شده متناظر است با:
:\operatorname{DG}(a_n;s)=\zeta(s)^m

که در آن \zeta(s)  تابع زتای ریمان بوده که دارای تابع مولد معمولی می‌باشد:

:\sum_{n=1}^{\infty} a_n x^n = x + {m \choose 1} \sum_{a=2}^{\infty} x^{a} + {m \choose 2}\sum_{a=2}^{\infty} \sum_{b=2}^{\infty} x^{ab} + {m \choose 3} \sum_{a=2}^{\infty} \sum_{b=2}^{\infty} \sum_{c=2}^{\infty} x^{abc} + {m \choose 4}\sum_{a=2}^{\infty} \sum_{b=2}^{\infty} \sum_{c=2}^{\infty} \sum_{d=2}^{\infty} x^{abcd} + \cdots

### تابع چند متغیره
توابع مولد چند متغیره در عمل در هنگام محاسبه جدول احتمال متشکل از اعداد طبیعی نامنفی با شماره سطر و ستون مشخص به کار برده می‌شوند.
فرض کنید جدول مورد نظر دارای *r* سطر و *c* ستون باشد؛ مجموع سطرها برابر  t_1,\ldots t_r و مجموع ستون‌ها برابر s_1,\ldots s_c می‌باشد.
بر اساس I. J. Good عدد این جدول برابر است باضرایب:x_1^{t_1}\ldots x_r^{t_r}y_1^{s_1}\ldots y_c^{s_c} در:

:\prod_{i=1}^{r}\prod_{j=1}^c\frac{1}{1-x_iy_j}.

## کاربردهای توابع مولد
توابع مولد در موارد زیر استفاده می‌شوند:
* پیدا کردن یک فرمول بسته برای توابع بازگشتی. به عنوان مثال دنباله فیبوناچی
* پیدا کردن رابطه بازگشتی برای یک دنباله که معمولاً به فرم بازگشتی است.
* پیدا کردن ارتباط میان دنباله‌ها، اگر تابع مولد دو دنباله با هم برابر باشند، خود دنباله‌ها نیز با هم در ارتباط می‌باشند.
* کشف کردن رفتار مجانبی یک دنباله.
* به‌دست آوردن مجموع دنباله‌های نا متناهی

## توابع مولد دیگر
نمونه‌هایی از دنباله‌های چندجمله ای که توسط توابع مولد تولید شده‌اند:
* چندجمله‌ای‌های Appell
* چندجمله‌ای چبیشف
* چندجمله‌ای‌های Difference
* چندجمله‌ای‌های عمومیAppell
* چندجمله‌ای‌های Q-difference

## منابع

*  Reprinted in 
* 
* 
* 
* 

## پیوند به بیرون

* 
* Generating Functions, Power Indices and Coin Change at cut-the-knot
* Generatingfunctionology PDF download page
*  1031 Generating Functions
* Ignacio Larrosa Cañestro, León-Sotelo, Marko Riedel, Georges Zeller, *[http://groups.google.com/group/es.ciencia.matematicas/browse_thread/thread/26328abc49e15dd9/88b7b522437223ce#88b7b522437223ce  Suma de números equilibrados], newsgroup es.ciencia.matematicas*
* Frederick Lecue; Riedel, Marko, *et al.*,  ''Permutation'', *Les-Mathematiques.net*, in French, title somewhat misleading.
* "Generating Functions" by Ed Pegg, Jr., Wolfram Demonstrations Project, 2007.


رده:توابع ریاضی