search for:

primary decomposition

• introduction
• example
• strategies
• warning
• ## introduction

It is now possible to find the primary decomposition of an ideal in Macaulay 2. The function primaryDecompostion applied to an ideal I returns a list of ideals. These ideals have two key features, first, their intersection is equal to the ideal I and second the ideals are primary. Therefore these ideals form a primary decomposition of the ideal. Since the ideals are primary their corresponding varieties are irreducible. The decomposition returned is irredundant, which means that the radicals of the ideals returned are distinct prime ideals which are the associated prime ideals for I (see associated primes of an ideal).

## example

 `i1 : R = ZZ/101[a..d];` ```i2 : I = ideal(a*b-c*d, (a*c-b*d)^2); o2 : Ideal of R``` ```i3 : primaryDecomposition I      -- used 0.01 seconds      -- used 0.02 seconds      -- used 0.13 seconds                                 2           2              2           2           2        2                                        2           2              2           2           2                   2 o3 = {ideal (a*c + b*d - 2c*d, b  - 2b*c + c , a*b - c*d, a  - 2a*d + d ), ideal (c , b*c, b , a*b - c*d), ideal (a*c + b*d + 2c*d, b  + 2b*c + c , a*b - c*d, a  + 2a*d + d ), ideal (d , a*d, a*b - c*d, a )} o3 : List```

To obtain the associated prime ideals corresponding to the primary components returned by primaryDecomposition use the function ass. The first entry in the list given by ass is the radical of the first entry in the list given by primary decomposition.

## strategies

The algorithms available for computing primary decompositions are Shimoyama-Yokoyama, SY, Eisenbud-Huneke-Vasconcelos, EHV, a hybrid of these two algorithms (SY and EHV), Hybrid, and Gianni-Trager-Zacharias, GTZ. The default algorithm in Macaulay 2 is Shimoyama-Yokoyama. Two other arguments for the strategy option are available. These arguments are Monomial which computes the unique irreducible decomposition of a monomial ideal and Binomial which computes a cellular decomposion of a binomial ideal. For more information on the strategy options see primaryDecomposition(..., Strategy => ...).

 ```i4 : primaryDecomposition(I, Strategy => EHV)                                 2           2              2           2           2        2                                        2           2              2           2           2                   2 o4 = {ideal (a*c + b*d - 2c*d, b  - 2b*c + c , a*b - c*d, a  - 2a*d + d ), ideal (c , b*c, b , a*b - c*d), ideal (a*c + b*d + 2c*d, b  + 2b*c + c , a*b - c*d, a  + 2a*d + d ), ideal (d , a*d, a*b - c*d, a )} o4 : List```

## warning

Warning (15 May 2001): This function is under construction. For example, the strategies, Monomial, GTZ and Hybrid are not written, or do not function as stated. Further, both the Monomial and Binomial strategies may be moved to separate functions.
search for: