# How to define coefficient in grobner bases

Hello,

I want to determine grobner bases from ideal where it's coefficent isn't determined.

Here is my code

G.<x1,x2,x3,x4> = PolynomialRing(QQ,4,order='lex')
H = Ideal([a03*x1+b03*x2+c03*x3+d30*x4+e03,a13*x1+b13*x2+c13*x3+d31*x4+e13,a23*x1+b23*x2+c23*x3+d32*x4+e23])
H.groebner_basis


where a03, b03, c03, ... are coeffisient.

Thanks :)

edit retag close merge delete

Note: Buchberger's algorithm (to find a Gröbner basis) for linear forms is just Gaussian elimination.

( 2018-09-12 04:35:40 -0500 )edit

Sort by » oldest newest most voted

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)

more