ore_algebra_t
Synopsis
#include <flint/gr_ore_poly.h>ore_algebra_tThe predefined Ore algebra structures, an enumeration with the values below. Except for the commutative and Frobenius algebras, they act on a distinguished generator x of the base ring, which must currently be a univariate polynomial ring (created with gr_ctx_init_gr_poly); otherwise \sigma and \delta return GR_UNABLE.
ORE_ALGEBRA_CUSTOM: \sigma and \delta given by a user function (gr_ore_poly_ctx_init_custom).ORE_ALGEBRA_COMMUTATIVE: \sigma = \mathrm{id}, \delta = 0; ordinary polynomials in D.ORE_ALGEBRA_DERIVATIVE: \sigma = \mathrm{id}, \delta = d/dx; linear differential operators.ORE_ALGEBRA_EULER_DERIVATIVE: \sigma = \mathrm{id}, \delta = x \, d/dx (the Euler operator \theta).ORE_ALGEBRA_FORWARD_SHIFT: \sigma(a)(x) = a(x + 1), \delta = 0; linear recurrence operators.ORE_ALGEBRA_FORWARD_DIFFERENCE: \sigma(a)(x) = a(x + 1), \delta(a) = a(x + 1) - a(x) (the operator \Delta).ORE_ALGEBRA_BACKWARD_SHIFT: \sigma(a)(x) = a(x - 1), \delta = 0.ORE_ALGEBRA_BACKWARD_DIFFERENCE: \sigma(a)(x) = a(x - 1), \delta(a) = a(x) - a(x - 1) (the operator \nabla).ORE_ALGEBRA_Q_SHIFT: \sigma(a)(x) = a(qx), \delta = 0; linear q-difference operators (gr_ore_poly_ctx_init_q_shift).ORE_ALGEBRA_MAHLER: \sigma(a)(x) = a(x^b), \delta = 0; linear Mahler operators with base b (gr_ore_poly_ctx_init_mahler).ORE_ALGEBRA_FROBENIUS: \sigma the Frobenius automorphism a \mapsto a^p of a finite field (\delta = 0), computed withgr_fq_frobenius.
The value ORE_POLY_NUM_ALGEBRAS is the number of algebra types.
Cite this page
The FLINT team, “ore_algebra_t (gr_ore_poly.h),” FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev, 2026. https://flintlib.org/doc/gr_ore_poly/ore_algebra_t.html (generated 2026-10-20).
@misc{flint-doc-gr-ore-poly-ore-algebra-t,
author = {{The FLINT team}},
title = {{ore\_algebra\_t (gr\_ore\_poly.h)}},
howpublished = {FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev},
year = {2026},
url = {https://flintlib.org/doc/gr_ore_poly/ore_algebra_t.html},
note = {Generated 2026-10-20}
}