#16838: make affine and projective dehomogenize and homogenize work together
----------------------------------+----------------------------
Reporter: bhutz | Owner: bhutz
Type: enhancement | Status: new
Priority: minor | Milestone: sage-6.4
Component: algebraic geometry | Keywords:
Merged in: | Authors:
Reviewers: | Report Upstream: N/A
Work issues: | Branch:
Commit: | Dependencies:
Stopgaps: |
----------------------------------+----------------------------
There are a number of issues currently with the `homogenization` and
`dehomogenization` functionality. Essentially, what I'd like to see is
that dehomogenizing and then homogenizing returns basically the same
object. Currently dehomogenization is using `AffinePatch`, but
homogenization is creating a new projective space every time. This causes
a number of funny behaviors so should instead be using projective
embedding. I'd like to see tests of the following form return `True`:
{{{
P.<x,y,z>=ProjectiveSpace(QQ,2)
H=End(P)
f=H([x*y,y^2,z^2])
n=1
f.dehomogenize(n).homogenize(n)==f
}}}
{{{
A.<x,y>=AffineSpace(QQ,2)
H=End(A)
f=H([x*y,y^2])
n=0
f.homogenize(n).dehomogenize(n)==f
}}}
This also requires having the `affine_patch` and `projective_embedding`
play nicely together. Fixing this would also allow objects homogenized or
dehomogenized from the same space to then live in the same new space. The
same for points and currently there is no homogenization function at all
for affine points.
I've started working on this and just need to fix a couple more things.
--
Ticket URL: <http://trac.sagemath.org/ticket/16838>
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.