sage: R.=QQ[] sage: RT.=R[] sage: (1+x*T)*(1+y*T)*(1+z*T)*(1+b1*T+b2*T^2) x*y*z*b2*T^5 + (x*y*z*b1 + x*y*b2 + x*z*b2 + y*z*b2)*T^4 + (x*y*z + x*y*b1 + x*z*b1 + y*z*b1 + x*b2 + y*b2 + z*b2)*T^3 + (x*y + x*z + y*z + x*b1 + y*b1 + z*b1 + b2)*T^2 + (x + y + z + b1)*T + 1 sage: equations=((1+x*T)*(1+y*T)*(1+z*T)*(1+b1*T+b2*T^2)).coefficients() sage: V5=(1-T*(2*x))*(1-T*(2*y))*(1-T*(2*z))*(1-T*(x+y))*(1-T*(x+z))*(1-T*(y+z)) sage: V5 (8*x^3*y^2*z + 8*x^2*y^3*z + 8*x^3*y*z^2 + 16*x^2*y^2*z^2 + 8*x*y^3*z^2 + 8*x^2*y*z^3 + 8*x*y^2*z^3)*T^6 + (-4*x^3*y^2 - 4*x^2*y^3 - 16*x^3*y*z - 40*x^2*y^2*z - 16*x*y^3*z - 4*x^3*z^2 - 40*x^2*y*z^2 - 40*x*y^2*z^2 - 4*y^3*z^2 - 4*x^2*z^3 - 16*x*y*z^3 - 4*y^2*z^3)*T^5 + (6*x^3*y + 16*x^2*y^2 + 6*x*y^3 + 6*x^3*z + 52*x^2*y*z + 52*x*y^2*z + 6*y^3*z + 16*x^2*z^2 + 52*x*y*z^2 + 16*y^2*z^2 + 6*x*z^3 + 6*y*z^3)*T^4 + (-2*x^3 - 17*x^2*y - 17*x*y^2 - 2*y^3 - 17*x^2*z - 52*x*y*z - 17*y^2*z - 17*x*z^2 - 17*y*z^2 - 2*z^3)*T^3 + (5*x^2 + 15*x*y + 5*y^2 + 15*x*z + 15*y*z + 5*z^2)*T^2 + (-4*x - 4*y - 4*z)*T + 1 sage: V5(-1/u) (8*x^3*y^2*z + 8*x^2*y^3*z + 8*x^3*y*z^2 + 16*x^2*y^2*z^2 + 8*x*y^3*z^2 + 8*x^2*y*z^3 + 8*x*y^2*z^3 + 4*x^3*y^2*u + 4*x^2*y^3*u + 16*x^3*y*z*u + 40*x^2*y^2*z*u + 16*x*y^3*z*u + 4*x^3*z^2*u + 40*x^2*y*z^2*u + 40*x*y^2*z^2*u + 4*y^3*z^2*u + 4*x^2*z^3*u + 16*x*y*z^3*u + 4*y^2*z^3*u + 6*x^3*y*u^2 + 16*x^2*y^2*u^2 + 6*x*y^3*u^2 + 6*x^3*z*u^2 + 52*x^2*y*z*u^2 + 52*x*y^2*z*u^2 + 6*y^3*z*u^2 + 16*x^2*z^2*u^2 + 52*x*y*z^2*u^2 + 16*y^2*z^2*u^2 + 6*x*z^3*u^2 + 6*y*z^3*u^2 + 2*x^3*u^3 + 17*x^2*y*u^3 + 17*x*y^2*u^3 + 2*y^3*u^3 + 17*x^2*z*u^3 + 52*x*y*z*u^3 + 17*y^2*z*u^3 + 17*x*z^2*u^3 + 17*y*z^2*u^3 + 2*z^3*u^3 + 5*x^2*u^4 + 15*x*y*u^4 + 5*y^2*u^4 + 15*x*z*u^4 + 15*y*z*u^4 + 5*z^2*u^4 + 4*x*u^5 + 4*y*u^5 + 4*z*u^5 + u^6)/u^6 sage: V5(-1/u).denominator() u^6 sage: V5(-1/u).numerator() 8*x^3*y^2*z + 8*x^2*y^3*z + 8*x^3*y*z^2 + 16*x^2*y^2*z^2 + 8*x*y^3*z^2 + 8*x^2*y*z^3 + 8*x*y^2*z^3 + 4*x^3*y^2*u + 4*x^2*y^3*u + 16*x^3*y*z*u + 40*x^2*y^2*z*u + 16*x*y^3*z*u + 4*x^3*z^2*u + 40*x^2*y*z^2*u + 40*x*y^2*z^2*u + 4*y^3*z^2*u + 4*x^2*z^3*u + 16*x*y*z^3*u + 4*y^2*z^3*u + 6*x^3*y*u^2 + 16*x^2*y^2*u^2 + 6*x*y^3*u^2 + 6*x^3*z*u^2 + 52*x^2*y*z*u^2 + 52*x*y^2*z*u^2 + 6*y^3*z*u^2 + 16*x^2*z^2*u^2 + 52*x*y*z^2*u^2 + 16*y^2*z^2*u^2 + 6*x*z^3*u^2 + 6*y*z^3*u^2 + 2*x^3*u^3 + 17*x^2*y*u^3 + 17*x*y^2*u^3 + 2*y^3*u^3 + 17*x^2*z*u^3 + 52*x*y*z*u^3 + 17*y^2*z*u^3 + 17*x*z^2*u^3 + 17*y*z^2*u^3 + 2*z^3*u^3 + 5*x^2*u^4 + 15*x*y*u^4 + 5*y^2*u^4 + 15*x*z*u^4 + 15*y*z*u^4 + 5*z^2*u^4 + 4*x*u^5 + 4*y*u^5 + 4*z*u^5 + u^6 sage: equation_u=V5(-1/u).numerator() [1]+ Stopped sage anton@purismus:~$ %1 sage sage: list(IntegerVectors(3,3)) [[3, 0, 0], [2, 1, 0], [2, 0, 1], [1, 2, 0], [1, 1, 1], [1, 0, 2], [0, 3, 0], [0, 2, 1], [0, 1, 2], [0, 0, 3]] sage: V9=prod(1-T*(v[0]*x+v[1]*y+v[2]*z) for v in IntegerVectors(3,3)) sage: V9.degree() 10 sage: equation_v=V9(-1/v).numerator() sage: J=R.ideal(equations+[equation_u, equation_v]) sage: J.dimension() -1 sage: equations=((1+x*T)*(1+y*T)*(1+z*T)*(1+b1*T+b2*T^2)).coefficients() sage: equations [1, x + y + z + b1, x*y + x*z + y*z + x*b1 + y*b1 + z*b1 + b2, x*y*z + x*y*b1 + x*z*b1 + y*z*b1 + x*b2 + y*b2 + z*b2, x*y*z*b1 + x*y*b2 + x*z*b2 + y*z*b2, x*y*z*b2] sage: equations=((1+x*T)*(1+y*T)*(1+z*T)*(1+b1*T+b2*T^2)).coefficients()[1:] sage: J=R.ideal(equations+[equation_u, equation_v]) sage: J.dimension() 0 sage: J.vector_space_dimension() 3600 sage: V20=prod(1-T*(v[0]*x+v[1]*y+v[2]*z) for v in IntegerVectors(5,3)) sage: V20.degree() 21 sage: (V20-V20[21]).degree() 21 sage: (V20-V20[21]*T^21).degree() 20 sage: S=(V20-V20[21]*T^21)(-1/(u+v)).numerator() sage: S.degree() 20 sage: J.reduce(S) 609250*u^5*v^9*b2^3 sage: