return isomorphic images of Ore polynomials under the Hilbert twist reduction
return pre-images of Ore polynomials under the HilbertTwistReduction
check for the existence of a primitive element, and perform accurate integration
HilbertTwistReduction(P, A, 'B')
Note: An Ore polynomial ring B is of Hilbert's twist type if its (pseudo) derivation maps everything to zero. For an Ore polynomial ring A with nontrivial automorphism, there is a ring isomorphism from A onto the ring B of Hilbert's twist type whose automorphism is the same as the A's. The isomorphism is called the Hilbert twist reduction.
Ore polynomial or a list of Ore polynomials; to define an Ore polynomial, use the OrePoly structure.
Ore ring with nontrivial automorphism; to define an Ore algebra, use the SetOreRing function.
(optional) unevaluated name.
The HilbertTwistReduction(P, A, B) calling sequence returns the image of P under the Hilbert twist reduction. If the (optional) third argument B is present, it is assigned to the Ore ring whose automorphism is the same as the A's and whose (pseudo) derivation sends everything to zero.
The InverseOfHilbertTwistReduction(P, A) calling sequence returns the pre-image of P under the Hilbert twist reduction. Note that A is the source ring of the Hilbert twist reduction.
Let A be the shift, q-shift, or differential algebra. The AccurateIntegration(L, A) calling sequence performs accurate integration, which solves the following problem: Let y satisfy L(y)=0 and g satisfy lambda(g)=y, where lambda means the usual derivative in the differential case, the difference operator in the shift case, and the q-difference operator in the q-shift case. The function builds an annihilator S (represented as an OrePoly structure) for g of the same degree as that of L, and an operator K such that g=K(y) if both exist. Otherwise, it returns L⁢λ.
Define an Ore ring.
A := SetOreRing(n, 'difference',
'sigma' = proc(p, x) eval(p, x=x+1) end,
'sigma_inverse' = proc(p, x) eval(p, x=x-1) end,
'delta' = proc(p, x) eval(p, x=x+1) - p end,
'theta1' = 0);
P1 ≔ OrePoly⁡n,n−1
Q1 ≔ HilbertTwistReduction⁡P1,A,'B'
v ≔ GetVariable⁡B
R1 ≔ InverseOfHilbertTwistReduction⁡Q1,A
Examples of AccurateIntegration:
A ≔ SetOreRing⁡x,'differential'
L ≔ OrePoly⁡2⁢3⁢x+1x2⁢4+27⁢x,−2x⁢4+27⁢x,1
A ≔ SetOreRing⁡n,'shift'
L ≔ OrePoly⁡1,−2,−2,1
Abramov, S.A., and van Hoeij, M. "Integration of Solutions of Linear Functional Equations." Integral Transformations and Special Functions. Vol. 8 No. 1-2. (1999): 3-12.
Download Help Document
What kind of issue would you like to report? (Optional)