This strategy implements Algorithm 3.8 in Primary ideals and their differential equations.
The following example deals with a rather non-trivial primary ideal to show the capabilities of this strategy.
i1 : R = QQ[x_1,x_2,x_3,x_4] o1 = R o1 : PolynomialRing |
i2 : k = 3 o2 = 3 |
i3 : J = ideal((x_1^2-x_2*x_3)^k,(x_1*x_2-x_3*x_4)^k,(x_2^2-x_1*x_4)^k) 6 4 2 2 2 3 3 3 3 2 2 2 2 3 3 6 4 2 2 2 3 3 o3 = ideal (x - 3x x x + 3x x x - x x , x x - 3x x x x + 3x x x x - x x , x - 3x x x + 3x x x - x x ) 1 1 2 3 1 2 3 2 3 1 2 1 2 3 4 1 2 3 4 3 4 2 1 2 4 1 2 4 1 4 o3 : Ideal of R |
i4 : Q = saturate(J,ideal(x_1*x_2*x_3*x_4)) 5 3 2 3 4 2 2 2 2 2 2 2 3 4 4 2 2 3 2 3 2 o4 = ideal (x x + x x x - 4x x x x - x x + 3x x x x + x x x - x x x , x x x + x x x - 3x x x x - x x x - x x x + 2 3 1 2 4 1 2 3 4 1 4 1 2 3 4 2 3 4 1 3 4 1 2 3 1 2 4 1 2 3 4 2 3 4 1 3 4 ---------------------------------------------------------------------------------------------------------------------------- 2 2 3 3 2 3 4 2 5 3 2 2 2 2 2 3 2 6 4 2 2 2 3 3 3 3 4x x x x - x x , x x x - x x + x x - 4x x x x + 3x x x x + x x x - x x x , x - 3x x x + 3x x x - x x , x x - 1 2 3 4 3 4 1 2 3 2 3 1 4 1 2 3 4 1 2 3 4 1 3 4 2 3 4 2 1 2 4 1 2 4 1 4 1 2 ---------------------------------------------------------------------------------------------------------------------------- 2 2 2 2 3 3 6 4 2 2 2 3 3 3x x x x + 3x x x x - x x , x - 3x x x + 3x x x - x x ) 1 2 3 4 1 2 3 4 3 4 1 1 2 3 1 2 3 2 3 o4 : Ideal of R |
i5 : isPrimary Q o5 = true |
i6 : elapsedTime noetherianOperators(Q, Strategy => "PunctualHilbert") -- 0.931464 seconds elapsed 2 2 3 2 2 3 o6 = {1, dx_2, dx_1, dx_2 , dx_1*dx_2, dx_1 , - 96x x dx_1 - 144x x dx_1 dx_2 + 144x x dx_1*dx_2 + 96x x dx_2 } 2 3 3 4 1 4 2 4 o6 : List |