Dear sage-devel, sage-nt, and random other victims,

The current behaviour of X.dimension() for a scheme X is often either
counterintuitive or mathematically wrong.  Several people pointed out
such problems at Sage Days 14.  I would like to give you some examples
of this, make a proposal, and point you toward a patch that implements
this proposal.

1. Counterintuitive:  if X is a scheme, I would expect X.dimension()
to give me the absolute dimension of X; however, the current
implementation returns "the relative dimension of X over its base
scheme"

{{{
sage: A1Z = AffineSpace(1, ZZ)
sage: A1Z.dimension()
1
}}}


2. Wrong/Inconsistent with the docstring:

{{{
sage: R.<x> = ZZ[]
sage: X = Spec(R)
sage: X.dimension()
2
}}}

However, according to the docstring this should be the relative
dimension of X over ZZ, which is 1.


Comparing the two examples, we also see that Sage currently gives
different answers for the dimension of the same algebraic-geometric
object, the affine line over ZZ.

My proposal is twofold:
a) introduce methods dimension_absolute() and dimension_relative()
b) make dimension() an alias to dimension_absolute() to match what a
Sage newbie would expect from the command

Note that this is much less disruptive than it sounds.  In fact, if
you haven't noticed any of these issues so far, chances are you've
been dealing with schemes over fields, for which the absolute and
relative dimensions are the same.  The problems start when you want to
work over more general base rings/schemes.

Finally, there is a patch implementing these changes up at

http://trac.sagemath.org/sage_trac/ticket/5629



Best,
Alex


-- 
Alex Ghitza -- Lecturer in Mathematics -- The University of Melbourne
-- Australia -- http://www.ms.unimelb.edu.au/~aghitza/

--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-devel@googlegroups.com
To unsubscribe from this group, send email to 
sage-devel-unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to