Affine Algebraic Sets

An affine algebraic set over an algebraically closed field $\overline{k}$ is the common vanishing locus $V$ of finitely many polynomials $f_1,\dots f_r \in \overline{k}[x_1,\dots x_n]$, or equivalently of the ideal $I \subseteq \overline{k}[x_1,\dots x_n]$ they generate. Structural questions about varieties can be answered by considering the corresponding ideal of vanishing. For instance Hilbert's Nullstellensatz states that $V$ is empty if and only if $I=(1)$.

In Oscar we work with algebraic sets over non-closed fields, by viewing them as reduced schemes. By abuse of terminology we say that a scheme is an affine algebraic set if it is isomorphic to one. For example a hypersurface complement is an affine algebraic set. In particular, affine algebraic sets are not necessarily Zariski closed in their ambient affine space.

More formally they are defined as follows:

AbsAffineAlgebraicSetType
AbsAffineAlgebraicSet <: AbsSpec

An affine, geometrically reduced subscheme of an affine space over a field.

source

Constructors

The recommended way to create an algebraic set is as a vanishing locus of an ideal or a polynomial.

vanishing_locusMethod
vanishing_locus(I::MPolyIdeal; check::Bool=true)

Return the vanishing locus of $I$ as an algebraic set.

This computes the radical of $I$ if check=true. Otherwise, Oscar takes on faith that $I$ is radical.

julia> R, (x,y) = GF(2)[:x,:y];

julia> X = Oscar.vanishing_locus(ideal([y^2+y+x^3+1,x]))
Vanishing locus
  in Affine 2-space over GF(2)
  of ideal(x, y^2 + y + 1)
source
vanishing_locusMethod
vanishing_locus(p::MPolyRingElem, check::Bool=true)

Return the vanishing locus of the multivariate polynomial p.

This computes the radical of $I$ if check=true. Otherwise Oscar takes on faith that $I$ is radical.

julia> R, (x,y) = QQ[:x,:y];

julia> X = Oscar.vanishing_locus((y^2+y+x^3+1)*x^2)
Vanishing locus
  in Affine 2-space over QQ
  of ideal(x^4 + x*y^2 + x*y + x)

julia> R, (x,y) = GF(2)[:x,:y];

julia> X = Oscar.vanishing_locus((y^2+y+x^3+1)*x^2)
Vanishing locus
  in Affine 2-space over GF(2)
  of ideal(x^4 + x*y^2 + x*y + x)
source

But we can also convert an affine scheme.

affine_algebraic_setMethod
affine_algebraic_set(X::Spec; check::Bool=true) -> AffineAlgebraicSet

Convert X to an AffineAlgebraicSet by taking the underlying reduced scheme.

If check=false, assumes that X is already reduced.

source
set_theoretic_intersectionMethod
set_theoretic_intersection(X::AbsAffineAlgebraicSet, Y::AbsAffineAlgebraicSet) -> AbsAffineAlgebraicSet

Return the set theoretic intersection of X and Y as an AlgebraicSet.

This is the reduced subscheme of the scheme theoretic intersection.

source
closureMethod
closure(X::AbsAffineAlgebraicSet)

Return the closure of $X$ in its ambient affine space.

source

Attributes

In addition to the attributes inherited from Affine schemes the following are available.

geometric_irreducible_componentsMethod
geometric_irreducible_components(X::AbsAffineAlgebraicSet)

Return the geometrically irreducible components of $X$.

They are the irreducible components $V_{ij}$ of $X$ seen over an algebraically closed field and given as a vector of tuples $(A_i, V_{ij}, d_{ij})$, say, where $A_i$ is an algebraic set which is irreducible over the base field of $X$ and $V_{ij}$ represents a corresponding class of galois conjugated geometrically irreducible components of $A_i$ defined over a number field of degree $d_{ij}$ whose generator prints as _a.

This is expensive and involves taking field extensions.

source
vanishing_idealMethod
vanishing_ideal(X::AbsAffineAlgebraicSet) -> Ideal

Return the ideal of all polynomials vanishing in $X$.

source
idealMethod
ideal(X::AbsAffineAlgebraicSet) -> Ideal

Return the ideal of all polynomials vanishing in $X$.

source

Methods

Inherited from Affine schemes

Properties

Inherited from Affine schemes