FLINT3.7.0-dev

_padic_log, _padic_log_rectangular, _padic_log_satoh, _padic_log_balanced

Synopsis#include <flint/padic.h>
void _padic_log(fmpz_t z, const fmpz_t y, slong v, const fmpz_t p, slong N)source
void _padic_log_rectangular(fmpz_t z, const fmpz_t y, slong v, const fmpz_t p, slong N)source
void _padic_log_satoh(fmpz_t z, const fmpz_t y, slong v, const fmpz_t p, slong N)source
void _padic_log_balanced(fmpz_t z, const fmpz_t y, slong v, const fmpz_t p, slong N)source

Set zz to

log⁡(1−y)=−∑i=1∞yii mod pN\log(1 - y) = -\sum_{i = 1}^{\infty} \frac{y^i}{i} \bmod p^N

for an integer y≠0y \ne 0 with v=ord⁡p(y)v = \operatorname{ord}_p(y) and 1≤v<N1 \le v < N; the logarithm of xx is obtained with y=1−xy = 1 - x. Do not allow aliasing between yy and zz. _padic_log uses the rectangular version for N<512/bN < 512 / b, where bb is the bit length of pp, and the balanced version otherwise. The balanced version does not use vv.

Cite this page

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