#7946: Spec(...) does not specify its category
--------------------------------------+--------------------------
       Reporter:  nthiery             |        Owner:  AlexGhitza
           Type:  defect              |       Status:  new
       Priority:  major               |    Milestone:  sage-6.2
      Component:  algebraic geometry  |   Resolution:
       Keywords:                      |    Merged in:
        Authors:                      |    Reviewers:
Report Upstream:  N/A                 |  Work issues:
         Branch:                      |       Commit:
   Dependencies:                      |     Stopgaps:
--------------------------------------+--------------------------

Comment (by pbruin):

 What is `Spec` intended to mean in the first place?  The definition
 currently starts with
 {{{
 class Spec(AffineScheme):
     ....
 }}}
 This suggests that `Spec` is a special kind of affine scheme.  But aren't
 "the spectrum of a ring" and "an affine scheme" exactly the same thing?

 This code probably predates the category framework.  A more modern design
 would perhaps be something like the following:
 - define the category `AffineSchemes` (or `Schemes().Affine()`) of affine
 schemes;
 - designate `AffineScheme` as the "canonical" type for objects in this
 category, and move functionality from `Spec` to `AffineScheme` as
 appropriate;
 - convert `Spec` into a functor from `CommutativeRings` to
 `AffineSchemes`.
 (Mathematically speaking, Spec [as a functor from commutative rings to
 schemes, or even locally ringed spaces] can be defined as the adjoint
 functor of the global sections functor ''X'' -> ''O,,X,,''(''X'') from
 schemes to commutative rings, and this gives an anti-equivalence of
 categories from commutative rings to affine schemes; I wonder if this
 could somehow be formalised in Sage's category framework, but that's
 another story...)

--
Ticket URL: <http://trac.sagemath.org/ticket/7946#comment:6>
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 unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.

Reply via email to