Rescales a differential operator so that the leading term of the leading coefficient is 1.
i1 : R = QQ[x,y,t]; |
i2 : D = diffOp{x^2*t => 3*x^3 + 2*y, t^2 => x+y} 3 2 2 o2 = (3x + 2y)dx dt + (x + y)dt o2 : DiffOp |
i3 : normalize D 3 2 2 1 1 2 o3 = (x + -y)dx dt + (-x + -y)dt 3 3 3 o3 : DiffOp |
This can be useful when computing "canonical" sets of Noetherian operators, as a valid set of Noetherian operators stays valid even after rescaling.
i4 : I = ideal(x^2,y^2 - x*t); o4 : Ideal of R |
i5 : nops = noetherianOperators(I, Strategy => "MacaulayMatrix"); |
i6 : nops // sort / normalize == {diffOp{1_R => 1}, diffOp{y => 1}, diffOp{y^2 => t, x => 2}, diffOp{y^3 => t, x*y => 6}} o6 = true |
The object normalize is a method function.