Exact comparisons for hyperbolic functions #
Inverse hyperbolic tangent reduces to a logarithm of an exact rational ratio. Hyperbolic tangent uses the same comparison in reverse. Neither operation constructs an exponential at the input, so large rational arguments do not produce exponentially large integers.
Hyperbolic sine and cosine first compare the exponential with a rational bound using a logarithm. Only unresolved cases construct exponential enclosures; in those cases the exponential lies in a rational interval of width one around twice the comparison boundary.
Compare hyperbolic tangent with a rational boundary, using its inverse on (-1, 1).
Instances For
Compare positive-argument hyperbolic sine using the bounds 0 < exp (-x) < 1.
Only 2 * boundary < exp x < 2 * boundary + 1 requires exponential enclosures.
Instances For
Exact hyperbolic sine comparison, using odd symmetry for negative inputs.
Instances For
Compare positive-argument hyperbolic cosine using the bounds 0 < exp (-x) < 1.
Only 2 * boundary - 1 < exp x < 2 * boundary requires exponential enclosures.
Instances For
Exact hyperbolic cosine comparison, using even symmetry and handling zero exactly.
Instances For
Compare inverse hyperbolic sine by the globally increasing hyperbolic sine.
Instances For
Compare inverse hyperbolic cosine on its nonnegative branch; callers require argument ≥ 1.
Instances For
Prepare inverse hyperbolic sine at a positive argument.
The two logarithmic bounds depend only on the argument. Their enclosure caches are allocated
before the boundary closure, so rounding queries share the first levels Taylor enclosures.
Instances For
Prepare inverse hyperbolic sine, sharing logarithmic bounds and using odd symmetry.
Instances For
Prepare inverse hyperbolic cosine with shared logarithms of 2 * argument and
2 * argument - 1. The real-domain contract remains argument ≥ 1.
Instances For
Prepare inverse hyperbolic tangent, sharing the logarithm of its exact rational ratio.