FLINT3.7.0-dev

_fq_nmod_poly_sqr_classical, fq_nmod_poly_sqr_classical, _fq_nmod_poly_sqr_KS, fq_nmod_poly_sqr_KS

Synopsis#include <flint/fq_nmod_poly.h>
void _fq_nmod_poly_sqr_classical(fq_nmod_struct * rop, const fq_nmod_struct * op, slong len, const fq_nmod_ctx_t ctx)
void fq_nmod_poly_sqr_classical(fq_nmod_poly_t rop, const fq_nmod_poly_t op, const fq_nmod_ctx_t ctx)
void _fq_nmod_poly_sqr_KS(fq_nmod_struct * rop, const fq_nmod_struct * op, slong len, const fq_nmod_ctx_t ctx)
void fq_nmod_poly_sqr_KS(fq_nmod_poly_t rop, const fq_nmod_poly_t op, const fq_nmod_ctx_t ctx)

Squaring with a fixed algorithm: classical or Kronecker substitution. The underscore versions write 2 * len - 1 coefficients; the classical version does not allow aliasing.

Cite this page

The FLINT team, “_fq_nmod_poly_sqr_classical, fq_nmod_poly_sqr_classical, _fq_nmod_poly_sqr_KS, fq_nmod_poly_sqr_KS (fq_nmod_poly.h),” FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev, 2026. https://flintlib.org/doc/fq_nmod_poly/_fq_nmod_poly_sqr_classical.html (generated 2026-10-20).