در ریاضی، **روش FEE روشی سریع برای حمع بندی** سری‌های است که به یک فرم خاص هستند. در سال ۱۹۹۰ این روش توسط Ekaterina A. Karatsuba **و FEE** نامیده شد - **ارزیابی فوری E-function** - زیرا محاسبات سریع Siegel را انجام می‌دهد. E توابع ممکن است، مخصوصاً از **{\displaystyle e^{x}.}**.

سیگل گروهی از توابع را که «مانند تابع‌های نمایی» هستند، «تابع E» نامید. از جمله این توابع می‌توان به توابع خاص مثل تابع فوق هندسی، استوانه، توابع کروی و … اشاره کرد.

قضیه مقابل را با استفاده از FEE می‌توان اثبات نمود:

**قضیه**: فرض می‌کنیم که اگر {\displaystyle y=f(x)} یک **تابع استعلایی مقدماتی** باشد، یعنی تابع نمایی باشد یا یک تابع مثلثاتی، یا یک تابع جبری ابتدایی، یا برهم نهی آنها، یا معکوس آنها، یا برهم نهی معکوس‌ها. و بعد داریم:

{\displaystyle s\_{f}(n)=O(M(n)\log ^{2}n).\,}
در فرمول فوق: پیچیدگی محاسبه (bit) تابع {\displaystyle s\_{f}(n)} است f(x) باn رقم دقت، پیچیدگی ضرب دو {\displaystyle M(n)} است اعداد صحیح n رقمی

الگوریتم‌های که اساس آنها مبتنی بر روش FEE هستند روشی برای محاسبه فوری هر تابع ابتدایی ماورایی برای هر مقدار آرگومان، ثوابت کلاسیک e. {\displaystyle \pi ,} اویلرر {\displaystyle \gamma ,} کاتالان و آپری، توابع ماورایی بالاتر مثل تابع گامای اویلر و مشتقات آن، توابع ابر هندسی، توابع کروی، توابع استوانه ای و برخی از تابع‌های دیگر برای مقادیر جبری آرگومان و پارامترها، تابع زتای ریمان برای مقدارهای صحیح آرگومان و تابع زتای هورویتز برای آرگومان عدد صحیح و مقدارهای جبری پارامتر، و به شکل مشابهی انتگرال‌های ویژه ای نظیر انتگرال احتمال، انتگرال فرنل، تابع نمای انتگرال، و برخی از انتگرال‌های دیگر برای مقدارهای جبری استدلال با حد بالای پیچیدگی که به حد بهینه نزدیک است شامل می‌شوند، پس داریم:

{\displaystyle s\_{f}(n)=O(M(n)\log ^{2}n).\,}
الان، تنها هزینه ایجاد می‌کند به محاسبه فوری مقدارهای توابع از گروهی از توابع برتر بالاتر، برخی انتگرال خاص از فیزیک و ریاضی از جمله ثابت کلاسیک به عنوان ثابت اویلرو ثابت کاتالان است و ثابت Apery کوتاه است. امکان موازی سازی الگوریتم‌ها بر اساس FEE است مزیت اضافی روش FEE.

FEE-محاسبه ثابت‌های کلاسیک
--------------------------

می‌توان از فرمول اویلر به صورت زیر برای سنجش فوری و سریع ثابت {\displaystyle \pi ,} استفاده نمود {\displaystyle {\frac {\pi }{4}}=\arctan {\frac {1}{2}}+\arctan {\frac {1}{3}},} و مطابق بخش پایین می‌توان از FEE برای محاسبه محموع جملات تیلور استفاده کرد.

{\displaystyle \arctan {\frac {1}{2}}={\frac {1}{1\cdot 2}}-{\frac {1}{3\cdot 2^{3}}}+\cdots +{\frac {(-1)^{r-1}}{(2r-1)2^{2r-1}}}+R\_{1},}
{\displaystyle \arctan {\frac {1}{3}}={\frac {1}{1\cdot 3}}-{\frac {1}{3\cdot 3^{3}}}+\cdots +{\frac {(-1)^{r-1}}{(2r-1)3^{2r-1}}}+R\_{2},}
{\displaystyle |R\_{1}|\leq {\frac {4}{5}}{\frac {1}{2r+1}}{\frac {1}{2^{2r+1}}};}
{\displaystyle |R\_{2}|\leq {\frac {9}{10}}{\frac {1}{2r+1}}{\frac {1}{3^{2r+1}}};}
و برای

{\displaystyle r=n,\,}
{\displaystyle 4(|R\_{1}|+|R\_{2}|)\ <\ 2^{-n}.}
می‌توان از سایر تقریب‌ها برای حساب کردن \pi  توسط FEE نیز استفاده کرد با این حال درتمام حالات برای پیچیدگی داریم:

{\displaystyle s\_{\pi }=O(M(n)\log ^{2}n).\,}
برای حساب کردن گامای ثابت اویلر با n رقم دقت، باید با دو سری FEE جمع شوند. پس داریم:

{\displaystyle m=6n,\quad k=n,\quad k\geq 1,\,}
{\displaystyle \gamma =-\log n\sum \_{r=0}^{12n}{\frac {(-1)^{r}n^{r+1}}{(r+1)!}}+\sum \_{r=0}^{12n}{\frac {(-1)^{r}n^{r+1}}{(r+1)!(r+1)}}+O(2^{-n}).}
{\displaystyle s\_{\gamma }=O(M(n)\log ^{2}n).\,}
برای بررسی فوری و سریع ثابت \gamma  برای سایر تقریب‌ها امکان اعمال FEE وجود دارد.

FEE-محاسبه سری‌های توان خاص
---------------------------

می‌توان دو سری زیر را با استفاده از FEE سریع حساب کرد پس داریم:

{\displaystyle f\_{1}=f\_{1}(z)=\sum \_{j=0}^{\infty }{\frac {a(j)}{b(j)}}z^{j},}
{\displaystyle f\_{2}=f\_{2}(z)=\sum \_{j=0}^{\infty }{\frac {a(j)}{b(j)}}{\frac {z^{j}}{j!}},}
فرض می‌کنیم که {\displaystyle a(j),\quad b(j)} اعدادی صحیح هستند

{\displaystyle |a(j)|+|b(j)|\leq (Cj)^{K};\quad |z|\ <\ 1;\quad K}
و C ثابت هستند و z عددی جبری است و برای پیچیدگی ارزیابی آن داریم:

{\displaystyle s\_{f\_{1}}(n)=O\left(M(n)\log ^{2}n\right),\,}
{\displaystyle s\_{f\_{2}}(n)=O\left(M(n)\log n\right).}

جزئیات FEE در مثال محاسبه سریع ثابت کلاسیک e
--------------------------------------------

برای ارزیابی ثابت e گرفتن {\displaystyle m=2^{k},\quad k\geq 1} ، شرایط سری تیلور برای {\displaystyle e,}

{\displaystyle e=1+{\frac {1}{1!}}+{\frac {1}{2!}}+\cdots +{\frac {1}{(m-1)!}}+R\_{m}.}
ما در اینجا m را طوری انتخاب می‌کنیم که نیاز آن به باقی مانده {\displaystyle R\_{m}} به طوریکه نابرابری مقابل را داشته باشیم {\displaystyle R\_{m}\leq 2^{-n-1}} برطرف می‌شود. برای مثال زمانی که {\displaystyle m\geq {\frac {4n}{\log n}}.} ، ما {\displaystyle m=2^{k}} را به طوری در نظر می‌گیریم که عدد طبیعی k توسط نامساوی‌ها مشخص می‌گردد و داریم:

{\displaystyle 2^{k}\geq {\frac {4n}{\log n}}>2^{k-1}.}
جمع را محاسبه می‌کنیم

{\displaystyle S=1+{\frac {1}{1!}}+{\frac {1}{2!}}+\cdots +{\frac {1}{(m-1)!}}=\sum \_{j=0}^{m-1}{\frac {1}{(m-1-j)!}},}
و در k مرحله فرایند زیر داریم:

مرحله ۱. ترکیب در S مجموع‌ها را به صورت دوتایی از داخل پرانتز عامل مشترک «بدیهی» را انجام می‌دهیم و حساب می‌کنیم پس داریم:

{\displaystyle {\begin{aligned}S&=\left({\frac {1}{(m-1)!}}+{\frac {1}{(m-2)!}}\right)+\left({\frac {1}{(m-3)!}}+{\frac {1}{(m-4)!}}\right)+\cdots \\&={\frac {1}{(m-1)!}}(1+m-1)+{\frac {1}{(m-3)!}}(1+m-3)+\cdots .\end{aligned}}}
ما مقداری‌های صحیح عبارت‌های داخل پرانتز را حساب می‌کنیم، یعنی داریم:

{\displaystyle m,m-2,m-4,\dots .\,}
پس، در مرحله اول مجموع S در است

{\displaystyle S=S(1)=\sum \_{j=0}^{m\_{1}-1}{\frac {1}{(m-1-2j)!}}\alpha \_{m\_{1}-j}(1),}
{\displaystyle m\_{1}={\frac {m}{2}},m=2^{k},k\geq 1.}
در اولین قدم {\displaystyle {\frac {m}{2}}} اعداد صحیح فرم

{\displaystyle \alpha \_{m\_{1}-j}(1)=m-2j,\quad j=0,1,\dots ,m\_{1}-1,}
حساب می‌گردند. بعد از آن به روشی مانند آن عمل می‌نماییم: در هر مرحله مجموع جمع را به صورت جفت و متوالی ترکیب می‌کنیم S، فاکتور مشترک «بدیهی» را از براکت‌ها خارج می‌نماییم و فقط مقدارهای صحیح عبارات داخل پرانتز را محاسبه می‌کنیم. فرض کنید که اولی i مراحل این فرایند تکمیل شده‌است.

{\displaystyle S=S(i+1)=\sum \_{j=0}^{m\_{i+1}-1}{\frac {1}{(m-1-2^{i+1}j)!}}\alpha \_{m\_{i+1}-j}(i+1),}
{\displaystyle m\_{i+1}={\frac {m\_{i}}{2}}={\frac {m}{2^{i+1}}},}
{\displaystyle \alpha \_{m\_{i+1}-j}(i+1)=\alpha \_{m\_{i}-2j}(i)+\alpha \_{m\_{i}-(2j+1)}(i){\frac {(m-1-2^{i+1}j)!}{(m-1-2^{i}-2^{i+1}j)!}},}
{\displaystyle j=0,1,\dots ,\quad m\_{i+1}-1,\quad m=2^{k},\quad k\geq i+1.}
{\displaystyle {\frac {(m-1-2^{i+1}j)!}{(m-1-2^{i}-2^{i+1}j)!}}}
و غیره.

قسمت آخر. عددی صحیح را حساب می‌نماییم {\displaystyle \alpha \_{1}(k),} ما با استفاده از الگوریتم فوری که پیش تر بررسی شد، حساب می‌نماییم {\displaystyle (m-1)!,} و تقسیمی از عدد صحیح انجام دهید {\displaystyle \alpha \_{1}(k)} توسط عدد صحیح {\displaystyle (m-1)!,} با دقت تا n ارقام نتیجه به دست آمده حاصل جمع است پیچیدگی همه محاسبات تا n رقم برابر {\displaystyle S,} است یا ثابت e.

{\displaystyle O\left(M(m)\log ^{2}m\right)=O\left(M(n)\log n\right).\,}

جستارهای وابسته
---------------

* الگوریتم‌های سریع
* روش AGM
* پیچیدگی محاسباتی

منابع
-----

1. ↑  E. A. Karatsuba, Fast evaluations of transcendental functions. Probl. Peredachi Informat. , Vol. 27, No. 4, (1991)
2. ↑  D. W. Lozier and F. W. J. Olver, Numerical Evaluation of Special Functions. Mathematics of Computation 1943–1993: A Half-Century of Computational Mathematics, W. Gautschi, eds. , Proc. Sympos. Applied Mathematics, AMS, Vol. 48 (1994).
3. ↑  C. L. Siegel,
*Transcendental numbers*. Princeton University Press, Princeton (1949).
4. ↑  Karatsuba E. A. , Fast evaluation of {\displaystyle \zeta (3)}, Probl. Peredachi Informat. , Vol. 29, No. 1 (1993)
5. ↑  Ekatharine A. Karatsuba, Fast evaluation of hypergeometric function by FEE. Computational Methods and Function Theory (CMFT'97), N. Papamichael, St. Ruscheweyh and E. B. Saff, eds. , World Sc. Pub. (1999)
6. ↑  E. A. Karatsuba, Fast Evaluation of Riemann zeta-function \zeta (s) for integer values of argument s. Probl. Peredachi Informat. , Vol. 31, No. 4 (1995).
7. ↑  J. M. Borwein, D. M. Bradley and R. E. Crandall,
Computational strategies for the Riemann zeta function. J. of Comput. Appl. Math. , Vol. 121, No. 1–2 (2000).
8. ↑  E. A. Karatsuba, Fast evaluation of Hurwitz zeta function and Dirichlet L-series, Problem. Peredachi Informat. , Vol. 34, No. 4, pp. 342–353, (1998).
9. ↑  E. A. Karatsuba, Fast computation of some special integrals of mathematical physics. Scientific Computing, Validated Numerics, Interval Methods, W. Kramer, J. W. von Gudenberg, eds.(2001).
10. ↑  E. Bach, The complexity of number-theoretic constants. Info. Proc. Letters, No. 62 (1997).
11. ↑  E. A. Karatsuba, Fast computation of $\zeta(3)$ and of some special integrals ,using the polylogarithms, the Ramanujan formula and its generalization.
J. of Numerical Mathematics BIT, Vol. 41, No. 4 (2001).
12. ↑  D. H. Bailey, P. B. Borwein and S. Plouffe,
On the rapid computation of various polylogarithmic constants. Math.
Comp. , Vol. 66 (1997).
13. ↑  R. P. Brent and E. M. McMillan,
Some new algorithms for high-precision computation of Euler's
constant. Math. Comp. , Vol. 34 (1980).

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

* 
*