On Sat, Feb 21, 2015 at 08:47:40PM +, Simon King wrote:
How should I fix this?
By providing a starting point for the summation:
sage: sum([myElement]).parent()
ModularFormsRing(n=3) over Integer Ring
sage: myElement.parent()
ModularForms(n=3, k=4, ep=1) over Integer Ring
On 4 March 2015 at 08:11, Nicolas M. Thiery nicolas.thi...@u-psud.fr wrote:
On Sat, Feb 21, 2015 at 08:47:40PM +, Simon King wrote:
How should I fix this?
By providing a starting point for the summation:
sage: sum([myElement]).parent()
ModularFormsRing(n=3) over Integer Ring
Hi
In my case there is a cm.coercion_map(parent(myElement), parent(0))
(line 907) namely the coercions into the modular forms ring.
These maps are then used to map both myElement and 0 to the modular
forms ring (in contrast to the (vector) space myElement.parent()).
Unfortunately the check
Hi,
Le dimanche 22 février 2015 21:25:02 UTC+1, Jeroen Demeyer a écrit :
On the other, this special case is consistent with the idea of the
univeral 0 object proposed by John Cremona.
Indeed. In this respect, it is probably safe to use the literal 0 provided
one makes sure that it is
Hi Simon,
Le dimanche 22 février 2015 00:28:42 UTC+1, Simon King a écrit :
Hi Eric,
On 2015-02-21, Eric Gourgoulhon egourg...@gmail.com javascript:
wrote:
It seems that a possible way to have 0 + MyElement work even if ZZ does=
=20
not coerce to MyElement.parent() is to have=20
Hi Eric,
On 2015-02-22, Eric Gourgoulhon egourgoul...@gmail.com wrote:
Yes that's conversion, but both 0+x and x+0 works because, I think, of=20
lines 979-990 of=20
sage.structure.coerce.pyx:
# Allow coercion of 0 even if no coercion from Z
if is_Integer(x) and not x and
On 22 February 2015 at 10:00, Eric Gourgoulhon egourgoul...@gmail.com wrote:
Hi Simon,
Le dimanche 22 février 2015 00:28:42 UTC+1, Simon King a écrit :
Hi Eric,
On 2015-02-21, Eric Gourgoulhon egourg...@gmail.com wrote:
It seems that a possible way to have 0 + MyElement work even if ZZ
Le dimanche 22 février 2015 15:24:53 UTC+1, Simon King a écrit :
Seriously? I didn't know that Sage's coercion model has such special
cases. OK, it makes it possible to get a typical usecase with least
effort.
But my impression is that ultimately such special cases cause a lot more
Hi Eric,
On 2015-02-22, Eric Gourgoulhon egourgoul...@gmail.com wrote:
Note that the function is_Integer used in sage.structure.coerce.pyx is=20
*not* the above one: it is defined in lines 134-139 and it returns True for=
is_Integer(int(0)).=20
Seriously? But when the integer zero is treated
On 2015-02-22 15:24, Simon King wrote:
Seriously? I didn't know that Sage's coercion model has such special
cases. OK, it makes it possible to get a typical usecase with least effort.
But my impression is that ultimately such special cases cause a lot more
confusion than a clear model in the
Hi
It's a good idea but it won't work (in fact the _element_constructor_
does accept zero correctly in my case). The coercion framework _first_
tries to find a common parent and _then_ the rest happens.
Best
Jonas
On 21.02.2015 22:59, Eric Gourgoulhon wrote:
Hi,
Le samedi 21 février
Le samedi 21 février 2015 23:09:24 UTC+1, Jonas Jermann a écrit :
Hi
It's a good idea but it won't work (in fact the _element_constructor_
does accept zero correctly in my case). The coercion framework _first_
tries to find a common parent and _then_ the rest happens.
At least in the
Hi Eric,
On 2015-02-21, Eric Gourgoulhon egourgoul...@gmail.com wrote:
It seems that a possible way to have 0 + MyElement work even if ZZ does=
=20
not coerce to MyElement.parent() is to have=20
MyElement.parent()._element_constructor_ accept 0 (i.e. Integer(0)) as an=
=20
argument and return
Hi
In my case 0 + MyElement does find a common parent,
namely the modular forms _ring_.
So basically in my case 0 + some_element is the same
as some_element.as_ring_element(), unless the weight of
some_element (resp. its parent) is 0 with multiplier 1
in which case ZZ coerces into the space.
Hi,
Le samedi 21 février 2015 21:59:05 UTC+1, Jonas Jermann a écrit :
The parent is a vector space / module not a ring. Every vector space
contains zero, so in my opinion from a conceptual point of view
adding zero should not change the parent space.
However since it views 0 as an
Hi Jonas,
On 2015-02-21, Jonas Jermann jjerma...@gmail.com wrote:
ZZ does not coerce into myElement.parent() so I end up in a much
larger space than myElement.parent(). However I would prefer if adding
zero didn't change the parent space.
If ZZ does not coerce into the parent of your element,
On 2015-02-21, Simon King simon.k...@uni-jena.de wrote:
If ZZ does not coerce into the parent of your element, then the parent
is not a (unitary) ring.
PS:
And if it is not a ring, then many things don't work as smoothly as they
should.
For example, if P is a commutative additive group with an
Hi Simon
On 21.02.2015 21:47, Simon King wrote:
Hi Jonas,
On 2015-02-21, Jonas Jermann jjerma...@gmail.com wrote:
ZZ does not coerce into myElement.parent() so I end up in a much
larger space than myElement.parent(). However I would prefer if adding
zero didn't change the parent space.
If
Hi
On 21.02.2015 21:57, Simon King wrote:
On 2015-02-21, Simon King simon.k...@uni-jena.de wrote:
If ZZ does not coerce into the parent of your element, then the parent
is not a (unitary) ring.
PS:
And if it is not a ring, then many things don't work as smoothly as they
should.
For example,
On Saturday, February 21, 2015 at 12:57:44 PM UTC-8, Simon King wrote:
I.e., if P is a commutative additive group, then P.coerce_map_from(ZZ)
should return a morphism in the category of commutative additive groups.
Then, x+0 should work (because the coercion map is a morphism in the
Hi Jonas,
On 2015-02-21, Jonas Jermann jjerma...@gmail.com wrote:
I'm confused. Why does the additive group of ZZ coerce into P?
Oops, you are right. You can map ZZ onto an additive subgroup
of P, but that would be not canonical and hence not a coercion.
Anyway, Sage's coercion model works on
Hi
On 21.02.2015 22:13, Nils Bruin wrote:
On Saturday, February 21, 2015 at 12:57:44 PM UTC-8, Simon King wrote:
I.e., if P is a commutative additive group, then P.coerce_map_from(ZZ)
should return a morphism in the category of commutative additive
groups.
Then, x+0 should
Hi Nils,
On 2015-02-21, Nils Bruin nbr...@sfu.ca wrote:
I'm not so sure. How does x+3 make unambiguous sense?
If there is a coercion then (by definition of coercion in contrast to
conversion) it is unique.
We can map ZZ onto
any cyclic subgroup.
Yes, but at most one map is a coercion.
On
23 matches
Mail list logo