#10529: dimension() and is_smooth() for algebraic subschemes of toric varieties
----------------------------------+-----------------------------------------
Reporter: vbraun | Owner: AlexGhitza
Type: enhancement | Status: needs_review
Priority: major | Milestone: sage-4.7
Component: algebraic geometry | Keywords:
Work_issues: | Upstream: N/A
Reviewer: Andrey Novoseltsev | Author: Volker Braun
Merged: | Dependencies:
----------------------------------+-----------------------------------------
Old description:
> The purpose of this ticket is to implement `dimension()` and a
> `is_smooth()` method for algebraic subschemes of toric varieties, that
> is, not necessarily complete intersection subschemes.
>
> This patch does not yet deal properly with singular ambient toric
> varieties. This will be implemented in a different ticket since this part
> has further dependencies.
>
> This ticket is broken down into the following individual patches:
>
> 1. `trac_10529_toric_variety_library_names.patch`
>
> This adds optional `names="..."` parameters to `ToricVarietyFactory` (the
> class of the `toric_varieties` object) and to `ToricVariety` and
> `CPRFanoToricVariety` in order to allow you to declare the names of the
> homogeneous variables as
> {{{
> sage: P2.<x,y,z> =
> CPRFanoToricVariety(Delta_polar=ReflexivePolytope(3,0))
> sage: dP6.<x0,x1,x2,x3,x4,x5> = toric_varieties.dP6()
> }}}
>
> 2. `trac_10529_MPolynomialIdeal_subs.patch`
>
> This fixes `subs()` for ideals in multivariate polynomial rings. This is
> currently a noop:
> {{{
> sage: R.<x,y> = PolynomialRing(QQ)
> sage: I = R.ideal(x)
> sage: I
> Ideal (x) of Multivariate Polynomial Ring in x, y over Rational Field
> sage: I.subs(x=y)
> Ideal (x) of Multivariate Polynomial Ring in x, y over Rational Field
> }}}
> With this patch, the output is
> {{{
> sage: I.subs(x=y)
> Ideal (y) of Multivariate Polynomial Ring in x, y over Rational Field
> }}}
>
> 3. `trac_10529_SubschemeMorphisms_without_QuotientRing.patch`
>
> Without this patch, morphisms to algebraic subschemes involve the
> `coordinate_ring()` of the subscheme, a quotient ring:
> {{{
> sage: A2.<x,y> = AffineSpace(QQ,2)
> sage: X=A2.subscheme(x)
> sage: Y=A2.subscheme(y)
> sage: X.hom([y,x],Y)
> Scheme morphism:
> From: Closed subscheme of Affine Space of dimension 2 over Rational
> Field defined by:
> x
> To: Closed subscheme of Affine Space of dimension 2 over Rational
> Field defined by:
> y
> Defn: Defined on coordinates by sending (x, y) to
> (ybar, 0)
> }}}
> This patch uses the polynomial ring of the ambient space instead. This is
> mathematically equivalent, but much more convenient for polynomial
> computations.
> {{{
> sage: sage: X.hom([y,x],Y)
> Scheme morphism:
> From: Closed subscheme of Affine Space of dimension 2 over Rational
> Field defined by:
> x
> To: Closed subscheme of Affine Space of dimension 2 over Rational
> Field defined by:
> y
> Defn: Defined on coordinates by sending (x, y) to
> (y, 0)
> }}}
>
> 4. `trac_10529_smoothness_of_algebraic_subschemes.patch`
>
> Finally implements `dimension()` for subschemes of toric varieties and
> `is_smooth()` for all algebraic subschemes.
>
> Depends on #10525
>
> '''Apply'''
> 1. [attachment:trac_10529_toric_variety_library_names.patch]
> 1. [attachment:trac_10529_MPolynomialIdeal_subs.patch]
> 1. [attachment:trac_10529_SubschemeMorphisms_without_QuotientRing.patch]
> 1. [attachment:trac_10529_smoothness_of_algebraic_subschemes.patch]
>
> '''This ticket must be merged together with #10540'''
New description:
The purpose of this ticket is to implement `dimension()` and a
`is_smooth()` method for algebraic subschemes of toric varieties, that is,
not necessarily complete intersection subschemes.
This patch does not yet deal properly with singular ambient toric
varieties. This will be implemented in a different ticket since this part
has further dependencies.
This ticket is broken down into the following individual patches:
1. `trac_10529_toric_variety_library_names.patch`
This adds optional `names="..."` parameters to `ToricVarietyFactory` (the
class of the `toric_varieties` object) and to `ToricVariety` and
`CPRFanoToricVariety` in order to allow you to declare the names of the
homogeneous variables as
{{{
sage: P2.<x,y,z> = CPRFanoToricVariety(Delta_polar=ReflexivePolytope(3,0))
sage: dP6.<x0,x1,x2,x3,x4,x5> = toric_varieties.dP6()
}}}
2. `trac_10529_MPolynomialIdeal_subs.patch`
This fixes `subs()` for ideals in multivariate polynomial rings. This is
currently a noop:
{{{
sage: R.<x,y> = PolynomialRing(QQ)
sage: I = R.ideal(x)
sage: I
Ideal (x) of Multivariate Polynomial Ring in x, y over Rational Field
sage: I.subs(x=y)
Ideal (x) of Multivariate Polynomial Ring in x, y over Rational Field
}}}
With this patch, the output is
{{{
sage: I.subs(x=y)
Ideal (y) of Multivariate Polynomial Ring in x, y over Rational Field
}}}
3. `trac_10529_SubschemeMorphisms_without_QuotientRing.patch`
Without this patch, morphisms to algebraic subschemes involve the
`coordinate_ring()` of the subscheme, a quotient ring:
{{{
sage: A2.<x,y> = AffineSpace(QQ,2)
sage: X=A2.subscheme(x)
sage: Y=A2.subscheme(y)
sage: X.hom([y,x],Y)
Scheme morphism:
From: Closed subscheme of Affine Space of dimension 2 over Rational
Field defined by:
x
To: Closed subscheme of Affine Space of dimension 2 over Rational
Field defined by:
y
Defn: Defined on coordinates by sending (x, y) to
(ybar, 0)
}}}
This patch uses the polynomial ring of the ambient space instead. This is
mathematically equivalent, but much more convenient for polynomial
computations.
{{{
sage: sage: X.hom([y,x],Y)
Scheme morphism:
From: Closed subscheme of Affine Space of dimension 2 over Rational
Field defined by:
x
To: Closed subscheme of Affine Space of dimension 2 over Rational
Field defined by:
y
Defn: Defined on coordinates by sending (x, y) to
(y, 0)
}}}
4. `trac_10529_smoothness_of_algebraic_subschemes.patch`
Finally implements `dimension()` for subschemes of toric varieties and
`is_smooth()` for all algebraic subschemes.
Depends on #10525
'''Apply'''
1. [attachment:trac_10529_toric_variety_library_names.patch]
1. [attachment:trac_10529_MPolynomialIdeal_subs.patch]
1. [attachment:trac_10529_SubschemeMorphisms_without_QuotientRing.patch]
1. [attachment:trac_10529_smoothness_of_algebraic_subschemes.patch]
1. [attachment:trac_10529_reviewer.patch]
'''This ticket must be merged together with #10540'''
--
Comment(by novoselt):
For my record: everything is addressed in the current patches except for
6,8,9 which should be taken care off in #10540.
There was also the second instance of a little adjustment missed in the
beginning, I have attached a patch fixing it.
Once we are done with #10540, I will switch this one to positive review.
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/10529#comment:30>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/sage-trac?hl=en.