primaryDecomposition IThis routine returns an irredundant primary decomposition for the ideal I. The specific algorithm used varies depending on the characteristics of the ideal, and can also be specified using the Strategy option. In all cases, the radical of each entry of the output is equal to the corresponding entry of the output of associatedPrimes.
Primary decomposition algorithms are very sensitive to the input. Some algorithms work very well on certain classes of ideals, but poorly on other classes. If this function seems to be taking too long, try another algorithm using primaryDecomposition(...,Strategy=>...).
|
|
|
|
|
This function has one optional input Strategy, which accepts three possible values used to determine the algorithm for finding embedded components.
The available values are Res, which is closest to the original Eisenbud-Huneke-Vasconcelos method, together with Hom and Sat.
If you want to specify the Strategy to be used by localize as well, this can be specified by passing a Hybrid Strategy in the form: Hybrid{primaryDecomposition.Strategy, localize.Strategy}.
|
|
|
|
While the default (and typically fastest) strategy is Sat, it is recommended to try different Strategy values if the computation of a particular embedded component is taking too long. One can start the computation with one strategy, and interrupt and resume with a different strategy (even multiple times) if desired.
Recall that List / Function applies a function to each element of a list, returning the results as a list. This is often useful with lists of ideals, such as the list C of primary components.
|
|
|
The corresponding list of associated prime ideals is cached and can be obtained by using associatedPrimes(Ideal).
|
Some strategies require the ground ring to be a prime field but results can be obtained in some cases even for more general ground rings.
|
|
|
|
The object primaryDecomposition is a method function with options.
The source of this document is in PrimaryDecomposition/doc.m2:771:0.