## VERSION

Version 0.58## SYNOPSIS

Math::BigFloat versions`of the Riemann Zeta and Riemann R functions. These are kept in a separate module because they use a lot of big tables that we'd prefer to only load if needed.## DESCRIPTION

Pure Perl implementations of Riemann Zeta and Riemann R using Math::BigFloat. These functions are used if:- The input is a BigInt, a BigFloat, or the bignum module has been loaded.
- The Math::MPFR module is not available.

If you use these functions a lot, I **highly** recommend you install
Math::MPFR, which the main Math::Prime::Util functions will find.
These give **much** better performance, and better accuracy. You can also
use Math::Pari for the Riemann Zeta function.

## FUNCTIONS

## RiemannZeta

my $z = RiemannZeta($s);

Given a floating point input `"s"` where `"s >= 0.5"`, returns the floating
point value of ζ(s)-1, where ζ(s) is the Riemann zeta function. One is
subtracted to ensure maximum precision for large values of `"s"`. The zeta
function is the sum from k=1 to infinity of `"1 / k^s"`

Results are calculated using either Borwein (1991) algorithm 2, or the basic series. Full input accuracy is attempted, but there are defects in Math::BigFloat with high accuracy computations that make this difficult.

## RiemannR

my $r = RiemannR($x);

Given a positive non-zero floating point input, returns the floating point value of Riemann's R function. Riemann's R function gives a very close approximation to the prime counting function.

Accuracy should be about 35 digits.

## LIMITATIONS

Bugs in Math::BigFloat (RT 43692, RT 77105) cause many problems with this code. I've attempted to work around them, but it is possible there are cases they miss.The accuracy goals (35 digits) are sometimes missed by a digit or two.

## PERFORMANCE

Performance is quite bad.## AUTHORS

Dana Jacobsen <[email protected]>## COPYRIGHT

Copyright 2012 by Dana Jacobsen <[email protected]>This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.