#17585: Implement coordinate_ring() for free module elements
-------------------------------------+-------------------------------------
Reporter: jdemeyer | Owner:
Type: defect | Status: needs_review
Priority: major | Milestone: sage-6.5
Component: linear algebra | Resolution:
Keywords: | Merged in:
Authors: Jeroen Demeyer | Reviewers:
Report Upstream: N/A | Work issues:
Branch: | Commit:
u/jdemeyer/ticket/17585 | dbca6bb7915f3084b04af6943689ab0d244d7032
Dependencies: #17584, #17694, | Stopgaps:
#13081, #12600 |
-------------------------------------+-------------------------------------
Changes (by jdemeyer):
* status: needs_info => needs_review
Comment:
Replying to [comment:22 vdelecroix]:
> 1. Do we really want to allow `non exact` coordinate rings with `exact`
base ring? You replaced a test about exactness of the base ring with
exactness of the coordinate ring.
No, mixing exact and non-exact doesn't really work anyway. I replaced the
test because it does a computation with the coordinates. If we ever want
to support non-exact coordinate rings with exact base rings, the
modification is the right thing to do.
> 2. What is the point of the `ring` argument of `basis_matrix`? Moreover
the implementation looks wrong since it returns the matrix `A` (defined
over the `coordinate_ring`) as soon as `ring` is the `base_ring`.
At one point during development of this ticket, I needed an explicit ring
to work-around #16399. Instead, #16399 got fixed, so this work-around was
no longer needed. I did keep the change to `basis_matrix()`. Does this
extra argument really hurt? I could remove it if you want. The
implementation is correct though: I think you are confusing the
`base_ring` of the matrix with the `coordinate_ring` of the module.
> 3. Do we really need the method `coordinate_ring`/`base_ring` defined on
vectors? These are methods of the parent (and are implemented as such). I
do not see the point of that much duplication.
Well, we already have `base_ring()` on both the module and the vectors. If
you want to change that, please do it on a new ticket. Given that we have
`base_ring()` for modules and vectors, it makes a lot of sense to do the
same for `coordinate_ring()`. Besides, the `coordinate_ring()` method
could really be seen as a method on the vectors: it gives the parent of
the entries of the vector.
--
Ticket URL: <http://trac.sagemath.org/ticket/17585#comment:23>
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.