# isReduction -- Determine whether an ideal is a reduction

## Synopsis

• Usage:
t=isReduction(I,J)
t=isReduction(I,J,f)
• Inputs:
• I, an ideal
• J, an ideal
• f, , an optional element, which is a non-zerodivisor modulo M and the ring of M
• Outputs:
• t, , true if J is a reduction of I, false otherwise

## Description

For an ideal I, a subideal J of I is said to be a reduction of I if there exists a nonnegative integer n such that JIn=In+1.

This function returns true if J is a reduction of I and returns false if J is not a subideal of I or J is a subideal but not a reduction of I.

 ```i1 : S = ZZ/5[x,y] o1 = S o1 : PolynomialRing``` ```i2 : I = ideal(x^3,x*y,y^4) 3 4 o2 = ideal (x , x*y, y ) o2 : Ideal of S``` ```i3 : J = ideal(x*y, x^3+y^4) 4 3 o3 = ideal (x*y, y + x ) o3 : Ideal of S``` ```i4 : isReduction(I,J) o4 = true``` ```i5 : isReduction(J,I) o5 = false``` ```i6 : isReduction(I,I) o6 = true``` ```i7 : g = I_0 3 o7 = x o7 : S``` ```i8 : isReduction(I,J,g) o8 = true``` ```i9 : isReduction(J,I,g) o9 = false``` ```i10 : isReduction(I,I,g) o10 = true```