FLINT3.7.0-dev

_fmpz_poly_CRT_ui_precomp, _fmpz_poly_CRT_ui

Synopsis#include <flint/fmpz_poly.h>
void _fmpz_poly_CRT_ui_precomp(fmpz * res, const fmpz * poly1, slong len1, const fmpz_t m1, nn_srcptr poly2, slong len2, ulong m2, ulong m2inv, fmpz_t m1m2, ulong c, int sign)source
void _fmpz_poly_CRT_ui(fmpz * res, const fmpz * poly1, slong len1, const fmpz_t m1, nn_srcptr poly2, slong len2, ulong m2, ulong m2inv, int sign)source

Set res to the polynomial congruent to (poly1, len1) modulo m1m_1 and to (poly2, len2) modulo the word-size m2m_2, with coefficients in [0,m1m2)[0, m_1 m_2) if sign = 0 and in [−m1m2/2,m1m2/2)[-m_1 m_2/2, m_1 m_2/2) if sign = 1, writing max⁡(len1,len2)\max(\mathit{len1}, \mathit{len2}) coefficients. The moduli must be coprime. m2inv is n_preinvert_limb(m2); the precomp version also takes m1m2m_1 m_2 and c=m1−1 mod m2c = m_1^{-1} \bmod m_2, which the other version computes, raising an exception if m1m_1 is not invertible modulo m2m_2. res may be equal to poly1.

Cite this page

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