1 | initial version |
An alternate possibility is this atrocity :
sage: discriminant_poly.parent().ideal([x, y,]+[discriminant_poly]).dimension()
0
sage: discriminant_poly.parent().ideal([x, y,]+[discriminant_poly]).variety()
[]
sage: discriminant_poly.parent().ideal([x, y,]+[discriminant_poly]).variety(ring=QQbar)
[{t: 0.4023199380628143?, y: 0, x: 0},
{t: -0.2011599690314072? - 0.887728937282557?*I, y: 0, x: 0},
{t: -0.2011599690314072? + 0.887728937282557?*I, y: 0, x: 0},
{t: -0.8818537645672754? - 0.9177002576216003?*I, y: 0, x: 0},
{t: -0.8818537645672754? + 0.9177002576216003?*I, y: 0, x: 0},
{t: 0.006853764567275390? - 0.3927967328421505?*I, y: 0, x: 0},
{t: 0.006853764567275390? + 0.3927967328421505?*I, y: 0, x: 0}]
HTH,
2 | No.2 Revision |
An alternate possibility is this atrocity :
sage: discriminant_poly.parent().ideal([x, y,]+[discriminant_poly]).dimension()
0
sage: discriminant_poly.parent().ideal([x, y,]+[discriminant_poly]).variety()
[]
sage: discriminant_poly.parent().ideal([x, y,]+[discriminant_poly]).variety(ring=QQbar)
[{t: 0.4023199380628143?, y: 0, x: 0},
{t: -0.2011599690314072? - 0.887728937282557?*I, y: 0, x: 0},
{t: -0.2011599690314072? + 0.887728937282557?*I, y: 0, x: 0},
{t: -0.8818537645672754? - 0.9177002576216003?*I, y: 0, x: 0},
{t: -0.8818537645672754? + 0.9177002576216003?*I, y: 0, x: 0},
{t: 0.006853764567275390? - 0.3927967328421505?*I, y: 0, x: 0},
{t: 0.006853764567275390? + 0.3927967328421505?*I, y: 0, x: 0}]
EDIT : Note that :
sage: R.ideal(gb).dimension()
0
sage: set(discriminant_poly.univariate_polynomial().roots(multiplicities=False))==set([d[t] for d in R.ideal(gb).variety()])
True
sage: set(discriminant_poly.univariate_polynomial().roots(ring=QQbar, multiplicities=False))==set([d[t] for d in R.ideal(gb).variety(ring=QQbar)])
True
HTH,