#18072: Base extension for Dirichlet groups and characters via maps
-------------------------------------+-------------------------------------
Reporter: pbruin | Owner:
Type: enhancement | Status: positive_review
Priority: minor | Milestone: sage-6.6
Component: modular forms | Resolution:
Keywords: Dirichlet group | Merged in:
base extension | Reviewers: Jean-Pierre Flori
Authors: Peter Bruin | Work issues:
Report Upstream: N/A | Commit:
Branch: | dd63f0960a21a8ce239391c51a35b59034b085af
u/pbruin/18072-DirichletGroup_change_ring| Stopgaps:
Dependencies: |
-------------------------------------+-------------------------------------
Comment (by pbruin):
Replying to [comment:2 jpflori]:
> Just one question: Couldn't we extend such a contruction to be more
general in the sense it could work for the change_ring method of all (or
most) objects?
> We can still do that in another ticket.
Yes, I hope this can be done more generally at some point. Ideally, if
`A` is a parent with base ring `R` and `f` is a ring homomorphism from `R`
to `S`, we should be able to do something like
{{{
g = A.base_extend(f, map=True)
}}}
which should return the canonical map from `A` to the base extension `A_S`
of `A` to `S` via `f`. We could then do `g(a)` for elements `a` of `A` to
get the image of `a` in `A_S`.
Furthermore, we could allow
{{{
g = A.base_extend(S, map=True)
}}}
which should do the same as above, taking for `f` a coercion map from `R`
to `S`, if it exists.
With this approach, `base_extend()` only has to be implemented for
parents; there could be a default method for `Element` looking like
{{{
#!python
class Element(...):
...
def base_extend(self, S):
# S can be a parent or a map
g = self.parent().base_extend(S, map=True)
return g(self)
}}}
(All of the above would be valid both for `base_extend()` and
`change_ring()`; the only difference is whether conversion maps are
allowed instead of coercion maps if `S` is given as a parent.)
> Note I don't have access to anything to check it passes tests, but the
patchbot should take care of it.
Thanks for the review!
--
Ticket URL: <http://trac.sagemath.org/ticket/18072#comment:3>
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.