Re: [sage-devel] Re: issues with pushout construction?

2014-08-30 Thread Jonas Jermann
Hi Robert On 30.08.2014 07:48, Robert Bradshaw wrote: I'm not sure (as mentioned the pushout construction is complex and there are many cases). But yes, that might work: Do a/several coercion check(s) _during_ pushout (during the while loop starting at line 3210) if needed instead of only at

Re: [sage-devel] Re: issues with pushout construction?

2014-08-30 Thread Robert Bradshaw
On Sat, Aug 30, 2014 at 4:42 AM, Jonas Jermann jjerma...@gmail.com wrote: Hi Robert On 30.08.2014 07:48, Robert Bradshaw wrote: I'm not sure (as mentioned the pushout construction is complex and there are many cases). But yes, that might work: Do a/several coercion check(s) _during_

Re: [sage-devel] Re: issues with pushout construction?

2014-08-29 Thread Robert Bradshaw
On Wed, Aug 27, 2014 at 8:36 AM, Peter Bruin p.br...@warwick.ac.uk wrote: Hi Jonas, I just realized that my example was maybe a bad one. But imagine the same example for a space where the base ring _does_ coerce into the space. A base-changed base ring would then not coerce, so the pushout

[sage-devel] Re: issues with pushout construction?

2014-08-27 Thread Peter Bruin
Hi Jonas, When I implemented Modular forms rings/spaces for Hecke triangle groups I ran into some issues with pushout / functors / constructions (correct me if I missunderstood something): Apparently the pushout construction implicitely assumes that there exists a coercion from the

[sage-devel] Re: issues with pushout construction?

2014-08-27 Thread Simon King
Hi Jonas, On 2014-08-27, Jonas Jermann jjerma...@gmail.com wrote: There is supposed to be a coercion from A and B to C=pushout(A,B). But if e.g. B is constructed from A without having a coercion from A then the pushout will fail this (also see line 3217 of pushout.py). So either one severely

[sage-devel] Re: issues with pushout construction?

2014-08-27 Thread Peter Bruin
Hi Simon, - A = some graded ring, B = some homogeneous component of A Adding elements of A and B should give an element of A Here you have a coercion from B to A, and thus no construction functor or pushout construction is involved. At least in the general setting of submodules and

Re: [sage-devel] Re: issues with pushout construction?

2014-08-27 Thread Jonas Jermann
Hi On 27.08.2014 13:21, Simon King wrote: Hi Jonas, On 2014-08-27, Jonas Jermann jjerma...@gmail.com wrote: There is supposed to be a coercion from A and B to C=pushout(A,B). But if e.g. B is constructed from A without having a coercion from A then the pushout will fail this (also see line

Re: [sage-devel] Re: issues with pushout construction?

2014-08-27 Thread Jonas Jermann
Hi Peter On 27.08.2014 13:03, Peter Bruin wrote: Hi Jonas, When I implemented Modular forms rings/spaces for Hecke triangle groups I ran into some issues with pushout / functors / constructions (correct me if I missunderstood something): Apparently the pushout construction implicitely

[sage-devel] Re: issues with pushout construction?

2014-08-27 Thread Peter Bruin
Hi Jonas, What if there is no coercion in either direction? E.g. (base_ring, cusp forms ring) Maybe #16507 would make this work too if the CuspForms construction were implemented as a composition: ModularForms followed by CuspidalSubspace, where CuspidalSubspace would be a special case of

Re: [sage-devel] Re: issues with pushout construction?

2014-08-27 Thread Jonas Jermann
Hi Peter, On 27.08.2014 14:01, Peter Bruin wrote: Hi Jonas, What if there is no coercion in either direction? E.g. (base_ring, cusp forms ring) Maybe #16507 would make this work too if the CuspForms construction were implemented as a composition: ModularForms followed by CuspidalSubspace,

Re: [sage-devel] Re: issues with pushout construction?

2014-08-27 Thread Jonas Jermann
Hi again I just realized that my example was maybe a bad one. But imagine the same example for a space where the base ring _does_ coerce into the space. A base-changed base ring would then not coerce, so the pushout construction would be used and it would return the wrong space, resp. my

[sage-devel] Re: issues with pushout construction?

2014-08-27 Thread Simon King
Hi Jonas, On 2014-08-27, Jonas Jermann jjerma...@gmail.com wrote: I was talking/thinking about the implicit call of pushout when e.g. adding two elements from different parents... ... which is exactly what coercion is about. Hence, if your functorial construction does not yield a coercion

[sage-devel] Re: issues with pushout construction?

2014-08-27 Thread Simon King
Hi Peter, On 2014-08-27, Peter Bruin p.br...@warwick.ac.uk wrote: Here you have a coercion from B to A, and thus no construction functor or pushout construction is involved. At least in the general setting of submodules and linear subspaces, there is such a functorial construction, namely

[sage-devel] Re: issues with pushout construction?

2014-08-27 Thread Simon King
Hi Jonas, On 2014-08-27, Jonas Jermann jjerma...@gmail.com wrote: All in all the pushout construction is rather complicated (there are many cases/situations) and when implementing new spaces one probably (unfortunately) has to look at the source / specific implementation of pushout in detail

[sage-devel] Re: issues with pushout construction?

2014-08-27 Thread Peter Bruin
Hi Jonas, I just realized that my example was maybe a bad one. But imagine the same example for a space where the base ring _does_ coerce into the space. A base-changed base ring would then not coerce, so the pushout construction would be used and it would return the wrong space, resp. my

Re: [sage-devel] Re: issues with pushout construction?

2014-08-27 Thread Jonas Jermann
Hi Simon On 27.08.2014 14:46, Simon King wrote: On 2014-08-27, Jonas Jermann jjerma...@gmail.com wrote: I was talking/thinking about the implicit call of pushout when e.g. adding two elements from different parents... ... which is exactly what coercion is about. Hence, if your functorial

Re: [sage-devel] Re: issues with pushout construction?

2014-08-27 Thread Jonas Jermann
On 27.08.2014 15:06, Peter Bruin wrote: Hi Jonas, I just realized that my example was maybe a bad one. But imagine the same example for a space where the base ring _does_ coerce into the space. A base-changed base ring would then not coerce, so the pushout construction would be used and it

[sage-devel] Re: issues with pushout construction?

2014-08-27 Thread Peter Bruin
Hi Jonas, I just realized that my example was maybe a bad one. But imagine the same example for a space where the base ring _does_ coerce into the space. A base-changed base ring would then not coerce, so the pushout construction would be used and it would return the wrong space, resp. my