RegularChains[FastArithmeticTools]
IteratedResultantDim1
iterated resultant of a polynomial w.r.t a one-dim regular chain
Calling Sequence
Parameters
Description
Examples
IteratedResultantDim1(f, rc, R, v)
IteratedResultantDim1(f, rc, R, v, bound)
R
-
a polynomial ring
rc
a regular chain
f
a polynomial
v
variable of R
bound
an upper bound of the degree of the iterated resultant to be computed (optional)
The function call IteratedResultantDim1(f, rc, R) returns the numerator of the iterated resultant of f w.r.t. rc, computed over the field of univariate rational functions in v and with coefficients in R. See the command IteratedResultant for a definition of the notion of an iterated resultant.
rc is assumed to be a one-dimensional normalized regular chain with v as free variable and f has positive degree w.r.t. v.
Moreover R must have a prime characteristic p such that FFT-based polynomial arithmetic can be used for this actual computation. The higher the degrees of f and rc are, the larger must be e such that 2e divides p−1. If the degree of f or rc is too large, then an error is raised.
The default value of bound is the product of the total degrees of the polynomials in rc and f.
The iterated resultant computed by the command IteratedResultant produces the same answer provided that all initials in the regular chain rc are equal to 1.
The interest of the function call IteratedResultantDim1(f, rc, R) resides in the fact that, if the polynomial f is regular modulo the saturated ideal of the regular chain rc, then the roots of the returned polynomial form the projection on the v-axis of the intersection of the hypersurface defined by f and the quasi-component defined by rc.
with⁡RegularChains:
with⁡FastArithmeticTools:
with⁡ChainTools:
Define a ring of polynomials.
p≔469762049;vars≔x1,x2,x3,x4;R≔PolynomialRing⁡vars,p
p≔469762049
vars≔x1,x2,x3,x4
R≔polynomial_ring
Define random dense polynomial and regular chain of R.
N≔nops⁡vars:dg≔3:degs≔seq⁡2,i=1..N:pol≔randpoly⁡vars,dense,degree=dg+rand⁡modpmodp;tc≔RandomRegularChainDim1⁡vars,degs,p;Equations⁡tc,R
pol≔469762042⁢x13+22⁢x12⁢x2+469761994⁢x12⁢x3+469761955⁢x12⁢x4+469761993⁢x1⁢x22+469761987⁢x1⁢x2⁢x4+469761976⁢x1⁢x32+469762045⁢x1⁢x3⁢x4+469762039⁢x1⁢x42+80⁢x23+469762005⁢x22⁢x3+71⁢x22⁢x4+469761974⁢x2⁢x32+469762039⁢x2⁢x3⁢x4+469762009⁢x2⁢x42+23⁢x33+75⁢x32⁢x4+6⁢x3⁢x42+37⁢x43+87⁢x12+97⁢x1⁢x2+469761966⁢x1⁢x3+62⁢x1⁢x4+469762032⁢x22+469762042⁢x2⁢x3+42⁢x2⁢x4+469761957⁢x32+74⁢x3⁢x4+469762026⁢x42+469761967⁢x1+469761999⁢x2+72⁢x3+87⁢x4+23102807
tc≔regular_chain
x12+469761998⁢x1+77⁢x2+95⁢x3+x4+377175716,x22+40⁢x2+469761968⁢x3+91⁢x4+2502552,x32+469762020⁢x3+95⁢x4+63792240
Compute the (numerator) of the iterated resultant
r1≔IteratedResultantDim1⁡pol,tc,R,x4
r1≔68613548⁢x424+347134095⁢x423+360682950⁢x422+449975966⁢x421+452755530⁢x420+347383754⁢x419+223883343⁢x418+428024257⁢x417+190189697⁢x416+166005727⁢x415+88755441⁢x414+16726876⁢x413+30728041⁢x412+191794⁢x411+55677935⁢x410+232265645⁢x49+131365622⁢x48+100732316⁢x47+465359200⁢x46+463678220⁢x45+280061786⁢x44+453663429⁢x43+383524352⁢x42+254364287⁢x4+418973534
Compare with the generic algorithm (non-fast and non-modular algorithm) of the command IteratedResultant.
r2≔IteratedResultant⁡pol,tc,R
r2≔68613548⁢x424+347134095⁢x423+360682950⁢x422+449975966⁢x421+452755530⁢x420+347383754⁢x419+223883343⁢x418+428024257⁢x417+190189697⁢x416+166005727⁢x415+88755441⁢x414+16726876⁢x413+30728041⁢x412+191794⁢x411+55677935⁢x410+232265645⁢x49+131365622⁢x48+100732316⁢x47+465359200⁢x46+463678220⁢x45+280061786⁢x44+453663429⁢x43+383524352⁢x42+254364287⁢x4+418973534
Check that the two results are equal, since here all initials are equal to 1.
Expand⁡r1−r2modp
0
See Also
IteratedResultant
IteratedResultantDim0
RandomRegularChainDim1
RegularChains
ResultantBySpecializationCube
SubresultantChainSpecializationCube
Download Help Document