FLINT3.7.0-dev

arb_pow

Synopsis#include <flint/arb.h>
void arb_pow(arb_t z, const arb_t x, const arb_t y, slong prec)source

Sets z to xyx^y: by binary exponentiation if y is a small exact integer, as (x1/2)2y(x^{1/2})^{2y} if y is a small exact half-integer, and as exp⁡(ylog⁡x)\exp(y \log x) otherwise, with xy=±(−x)yx^y = \pm(-x)^y for negative xx and exact integer yy.

x0=1x^0 = 1 for every xx, and 0y0^y is 0 for positive yy and indeterminate otherwise. For a ball x=[a±a]x = [a \pm a] with a>0a > 0, which contains 0, and nonnegative yy, the result is the finite ball [u/2±u/2][u/2 \pm u/2] with u≥(2a)yu \ge (2a)^y rather than an indeterminate value. Otherwise a base containing nonpositive numbers gives an indeterminate result unless yy is an exact integer.

Guides#

Cite this page

The FLINT team, “arb_pow (arb.h),” FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev, 2026. https://flintlib.org/doc/arb/arb_pow.html (generated 2026-11-02).