RegularChains[FastArithmeticTools]
RegularizeDim0
test the regularity of a polynomial w.r.t. a 0-dim regular chain
Calling Sequence
Parameters
Description
Examples
RegularizeDim0(f, rc, R)
RegularizeDim0(f, rc, R, isSquareFree)
R
-
a polynomial ring
f
a polynomial of R
rc
a regular chain of R
isSquareFree
boolean value (optional)
Returns a list of pairs where is a polynomial and is a regular chain such that the regular chains form a triangular decomposition of rc in the sense of Kalkbrener, each polynomial is equal to f modulo the saturated ideal of , for all , and each polynomial is either zero or invertible modulo the saturated ideal of , for all .
The above specification is similar to that of the command Regularize. However the algorithm of the command RegularizeDim0 makes use of modular techniques and asymptotically fast polynomial arithmetic. Consequently, when both commands apply, the latter one often outperforms the former.
The function call RegularizeDim0(p, rc, R) makes two other assumptions. First rc must be a zero-dimensional regular chain. See the RegularChains package and its subpackage ChainTools for these notions.
Secondly, R must have a prime characteristic such that FFT-based polynomial arithmetic can be used for this computation. The higher the degrees of f and rc are, the larger must be, such that divides . If the degree of f or rc is too large, then an error is raised.
If isSquareFree is true then assume that rc is a square-free regular chain, that is, its saturated ideal is radical.
p is a large prime number
Define a random dense regular chain and a polynomial.
We can see that Regularize is slower than RegularizeDim0.
These additional calculations show that the two returned regular chains are equivalent (i.e. they have the same saturated ideals).
See Also
ChainTools
Inverse
IsRegular
RegularChains
Regularize
Download Help Document