Ask Your Question

Revision history [back]

click to hide/show revision 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,

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,