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
|