Если Вы найдете статью полезной и интересной - не сочтите за труд,
переведите материал или хотя бы часть его и отправьте на адрес
algolist@manual.ru.
Задать вопросы или просто написать письмо можно
также на странице контактов.
for s = 3.
The values of the Zeta function for s = 2n are known to be fractions of
p2n, for example Euler proved
z(2) =
p26
, z(4) =
p490
, z(6) =
p6945
, ј
Such formulas does not exist for z(2n+1), and few things are
known about these numbers.
A breakthrough was made in 1978, when Apery proved that z(3) is
irrational (see [1], [2] and [3]).
Unhappily, his proof does not extends to other value of z(2n+1).
It is not known if z(3) is transcendental or not.
The expression (1) is very slow to converge.
Acceleration on this series
based on asymptotic expansion with Bernoulli numbers, as what can be
done for the Euler's constant
(see The Euler's constant gamma)
can be done. The use of Euler's transformation is also
efficient.
In 1755, Euler gave the first version of what is now called
Euler's transformation.
This transformation is an efficient way to accelerate the
convergence of an alternating series
(see Acceleration of
the convergence of series for a more precise description of this
method, together with other acceleration techniques).
Before applying it to z(3), we recall Euler's result
Theorem 1
Let S = u0-u1+u2-... be a convergent alternating series, then
S =
lim
n® Ґ
Sn =
lim
n® Ґ
ж з
и
12
n е
k = 0
(-1)k2k
Dku0
ц ч
ш
,
and D is the forward difference operator defined by
Dku0 = (-1)k
k е
j = 0
(-1)j
ж з
и
k
j
ц ч
ш
uj.
The first values of Dku0 are
D0u0
=
u0,
D1u0
=
u0-u1,
D2u0
=
u0-2u1+u2,
D3u0
=
u0-3u1+3u2-u3,
...,
Dku0
=
u0-ku1+
k(k-1)2!
u2-
k(k-1)(k-2)3!
u3+...+(-1)kuk.
If we apply the theorem to the series
z(3) =
43
Ґ е
k = 0
(-1)k(k+1)3
,
so uj = 1/(j+1)3, the first iterates are given
S10
=
1.20(1763441817045221115...),
S20
=
1.202056(688008082065896...),
S30
=
1.20205690(2987009688364...),
S60
=
1.202056903159594285(289...).
The rate of converge is correct and geometric.
Other acceleration techniques can also be applied to compute
efficiently z(3)
(see Acceleration of
the convergence of series), like the one described in [9]
for example.
These series can be used either with a classical approach, giving a
complexity of O(n2) to compute n digits of z(3), or with a
binary splitting approach, leading
to a quasi-linear time O(nlog3(n)).
In [4], E. Karatsuba used a generic approach to compute
n digits of z(3) in time O(nlog3(n)).
The method is based on the series expansion for the Gamma function :
log(G(s+1)) = -gs +
е
k = 2
(-1)kk
z(k)sk.
By successive differentiation at s = 0, we obtain
2 z(3) = - Gўўў(1) + 3 Gў(1)Gўў(1) -2Gў(1)3.
(4)
The derivatives of the Gamma function at x = 1 are defined by
G(k)(1) =
у х
Ґ
0
e-t logk(t) dt.
These integrals can be computed in several ways,
for example by a series expansion of e-t, giving
G(k)(1) =
Ґ е
n = 1
(-1)nn!
у х
N
0
tn logk(t) dt + O(e-Nlogk(N)).
Another approach consists in using integration by parts, leading to the
final result [8]
Using a binary splitting approach, these family of methods leads to a
complexity of O(nlog3(n)) to compute n digits of z(3).
However, the constant in front of the O is big compared to the one
obtained with series like (2), making this approach
significantly less interesting.
Stieljes also computed z(k) for 2 Ј k Ј 70 to 32 decimal places. The computation permitted him to obtain
32 decimal places of the Euler constant g with the formula
g = 1-log(3/2)-(z(3)-1)/3/43-(z(5)-1)/5/45 ј
520,000
1996
Greg Fee and Simon Plouffe
The computation was done
with a 64 bit experimental version of Maple with
formula (2).
1,000,000
1997
Bruno Haible and Thomas Papanikolaou
The computation took 8 hours on a HP 9000/712 machine.
10,536,006
1997, May
Patrick Demichel
The computation took 360 hours on a HP 9000/871 (160 Mhz) and used
a classical approach.
14,000,074
1998, Feb
Sebastian Wedeniwski
The computation took
53 h 22 min on 2 x UltraSPARC 200 MHz, 6 x Pentium II 233 MHz, 4
x Pentium 133 MHz
32,000,213
1998, Mar
Sebastian Wedeniwski
The computation took 35 h 21 min on 9 x MIPS R10000 180 MHz
64,000,091
1998, Jul
Sebastian Wedeniwski
The computation took 33 h on Power2 SC 135 MHz and PowerPC
604e 233 MHz
128,000,026
1998, Dec
Sebastian Wedeniwski
The computation took 39 hours 22 minutes on a 10 processor machine
(IBM S/390 G5 CMOS (9672-RX6), ca 420 Mhz, 2 GB central storage,
14 GB expanded storage) from formula (3) with a
binary splitting approach. Verification was made with the same
formulae and a different
slitting process and different FFT, in two weeks on two machines
(IBM Power2 SC 135 MHz, 2 GB RAM and IBM PowerPC 604e 233 MHz, 1 GB
RAM).
E. A. Karatsuba,
Fast Calculation of the Riemann Zeta function z(s) for Integer
Values of the Argument s,
Problems of Information Transmission 31 (1995) 353-362.