oscar-system / Oscar.jl

A comprehensive open source computer algebra system for computations in algebra, geometry, and number theory.
https://www.oscar-system.org
Other
345 stars 126 forks source link

Absolute primary decomposition fails for the zero ideal #2212

Closed simonbrandhorst closed 1 year ago

simonbrandhorst commented 1 year ago

@wdecker

julia> R,(x1,x2) = polynomial_ring(QQ,2);

julia> I = ideal(R,0*x1)
ideal(0)

julia> absolute_primary_decomposition(I)
ERROR: Polynomial must be irreducible
fieker commented 1 year ago

On Tue, Apr 04, 2023 at 11:56:29PM -0700, simonbrandhorst wrote:

@wdecker

julia> R,(x1,x2) = polynomial_ring(QQ,2);

julia> I = ideal(R,0*x1)
ideal(0)

julia> absolute_primary_decomposition(I)
ERROR: Polynomial must be irreducible

Singular returns the polynomial 1 which will not define a field. -- Reply to this email directly or view it on GitHub: https://github.com/oscar-system/Oscar.jl/issues/2212 You are receiving this because you are subscribed to this thread.

Message ID: @.***>

wdecker commented 1 year ago

I will change this so that a vector with one entry will be returned: (ideal(0), ideal(0), ideal(0), 1) Any objections?

thofma commented 1 year ago

Why not return the empty list? Would that also work?

simonbrandhorst commented 1 year ago

The zero ideal should be primary because it is prime. Then (ideal(0), ideal(0), ideal(0), 1) looks consistent to me?

wdecker commented 1 year ago

Yes, a polynomial ring over QQ has no zero-divisors.

simonbrandhorst commented 1 year ago

If we want to make it type stable, we could also create a number field QQ[x]/(x-1) with rationals_as_number_field. That would also make it easier to use in further code.

wdecker commented 1 year ago

resolved in PR #2229