Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Something like this?!

R.< a03, b03, c03, d03, e03, \
    a13, b13, c13, d13, e13, \
    a23, b23, c23, d23, e23  \
    > = PolynomialRing(QQ, 3*5, order='lex')

F = R.fraction_field()
S.<x1, x2, x3, x4> = PolynomialRing(F, 4, order='lex')

H = Ideal( [ a03*x1 + b03*x2 + c03*x3 + d03*x4 + e03,
             a13*x1 + b13*x2 + c13*x3 + d13*x4 + e13,
             a23*x1 + b23*x2 + c23*x3 + d23*x4 + e23] )

GB = H.groebner_basis()
for gb in GB:
    print gb, '\n'

which delivers a "mess" like...

x1 + ((b03*c13*d23 - b03*d13*c23 - c03*b13*d23 + c03*d13*b23 + d03*b13*c23 - d03*c13*b23)/(a03*b13*c23 - a03*c13*b23 - b03*a13*c23 + b03*c13*a23 + c03*a13*b23 - c03*b13*a23))*x4 + (b03*c13*e23 - b03*e13*c23 - c03*b13*e23 + c03*e13*b23 + e03*b13*c23 - e03*c13*b23)/(a03*b13*c23 - a03*c13*b23 - b03*a13*c23 + b03*c13*a23 + c03*a13*b23 - c03*b13*a23) 

x2 + ((-a03*c13*d23 + a03*d13*c23 + c03*a13*d23 - c03*d13*a23 - d03*a13*c23 + d03*c13*a23)/(a03*b13*c23 - a03*c13*b23 - b03*a13*c23 + b03*c13*a23 + c03*a13*b23 - c03*b13*a23))*x4 + (-a03*c13*e23 + a03*e13*c23 + c03*a13*e23 - c03*e13*a23 - e03*a13*c23 + e03*c13*a23)/(a03*b13*c23 - a03*c13*b23 - b03*a13*c23 + b03*c13*a23 + c03*a13*b23 - c03*b13*a23) 

x3 + ((a03*b13*d23 - a03*d13*b23 - b03*a13*d23 + b03*d13*a23 + d03*a13*b23 - d03*b13*a23)/(a03*b13*c23 - a03*c13*b23 - b03*a13*c23 + b03*c13*a23 + c03*a13*b23 - c03*b13*a23))*x4 + (a03*b13*e23 - a03*e13*b23 - b03*a13*e23 + b03*e13*a23 + e03*a13*b23 - e03*b13*a23)/(a03*b13*c23 - a03*c13*b23 - b03*a13*c23 + b03*c13*a23 + c03*a13*b23 - c03*b13*a23)