fq_nmod_mpoly_sqrt, fq_nmod_mpoly_sqrt_heap, fq_nmod_mpoly_is_square
Synopsis
#include <flint/fq_nmod_mpoly.h>int fq_nmod_mpoly_sqrt(fq_nmod_mpoly_t Q, const fq_nmod_mpoly_t A, const fq_nmod_mpoly_ctx_t ctx)sourceint fq_nmod_mpoly_sqrt_heap(fq_nmod_mpoly_t Q, const fq_nmod_mpoly_t A, const fq_nmod_mpoly_ctx_t ctx)sourceint fq_nmod_mpoly_is_square(const fq_nmod_mpoly_t A, const fq_nmod_mpoly_ctx_t ctx)sourceIf A is a square, set Q to a square root and return 1; otherwise return 0. In characteristic 2 the square root exists exactly when all exponents are even, and it is obtained by halving the exponents and taking the square roots c^{2^{d-1}} of the coefficients.
Guides#
Cite this page
The FLINT team, “fq_nmod_mpoly_sqrt, fq_nmod_mpoly_sqrt_heap, fq_nmod_mpoly_is_square (fq_nmod_mpoly.h),” FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev, 2026. https://flintlib.org/doc/fq_nmod_mpoly/fq_nmod_mpoly_sqrt.html (generated 2026-10-20).
@misc{flint-doc-fq-nmod-mpoly-fq-nmod-mpoly-sqrt,
author = {{The FLINT team}},
title = {{fq\_nmod\_mpoly\_sqrt, fq\_nmod\_mpoly\_sqrt\_heap, fq\_nmod\_mpoly\_is\_square (fq\_nmod\_mpoly.h)}},
howpublished = {FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev},
year = {2026},
url = {https://flintlib.org/doc/fq_nmod_mpoly/fq_nmod_mpoly_sqrt.html},
note = {Generated 2026-10-20}
}