_gr_poly_compose, gr_poly_compose, _gr_poly_compose_horner, gr_poly_compose_horner, _gr_poly_compose_divconquer, gr_poly_compose_divconquer
#include <flint/gr_poly.h>int _gr_poly_compose(gr_ptr res, gr_srcptr poly1, slong len1, gr_srcptr poly2, slong len2, gr_ctx_t ctx)sourceint gr_poly_compose(gr_poly_t res, const gr_poly_t poly1, const gr_poly_t poly2, gr_ctx_t ctx)sourceint _gr_poly_compose_horner(gr_ptr res, gr_srcptr poly1, slong len1, gr_srcptr poly2, slong len2, gr_ctx_t ctx)sourceint gr_poly_compose_horner(gr_poly_t res, const gr_poly_t poly1, const gr_poly_t poly2, gr_ctx_t ctx)sourceint _gr_poly_compose_divconquer(gr_ptr res, gr_srcptr poly1, slong len1, gr_srcptr poly2, slong len2, gr_ctx_t ctx)sourceint gr_poly_compose_divconquer(gr_poly_t res, const gr_poly_t poly1, const gr_poly_t poly2, gr_ctx_t ctx)sourceSet res to the composition f(g(x)), where f is poly1 and g is poly2, by Horner's rule or by divide and conquer (splitting f in halves and multiplying by powers of g computed by repeated squaring). The default version handles g = a x^n + c by a Taylor shift by c followed by a scaling and an inflation, uses Horner's rule for \mathit{len1} \le 7 and divide and conquer otherwise. The underscore versions write (\mathit{len1} - 1)(\mathit{len2} - 1) + 1 coefficients and do not allow aliasing.
The FLINT team, “_gr_poly_compose, gr_poly_compose, _gr_poly_compose_horner, gr_poly_compose_horner, _gr_poly_compose_divconquer, gr_poly_compose_divconquer (gr_poly.h),” FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev, 2026. https://flintlib.org/doc/gr_poly/_gr_poly_compose.html (generated 2026-10-20).
@misc{flint-doc-gr-poly-gr-poly-compose,
author = {{The FLINT team}},
title = {{\_gr\_poly\_compose, gr\_poly\_compose, \_gr\_poly\_compose\_horner, gr\_poly\_compose\_horner, \_gr\_poly\_compose\_divconquer, gr\_poly\_compose\_divconquer (gr\_poly.h)}},
howpublished = {FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev},
year = {2026},
url = {https://flintlib.org/doc/gr_poly/_gr_poly_compose.html},
note = {Generated 2026-10-20}
}