On Fri, Sep 8, 2017 at 11:54 AM, Ben Hutz <bn4...@gmail.com> wrote:

> Adding coercion for scheme points is now #23805.  This just address adding
> coercion through _coerce_map_from_ and does *not* allow P(0) == 0.  This
> ticket does not address P(0) itself.
>

Cool; I've added some comments there.

Since the consensus is that P(0) etc. is too ambiguous a choice, that is
> now #23806.
>

I don't think anyone was saying that we should change P(0), just that there
should not be a coercion from QQ.  A conversion is fine.  See
http://doc.sagemath.org/html/en/tutorial/tour_coercion.html#conversion-versus-coercion


> The bug about different affine patches being the same in memory is #23807
>
>
> On Friday, September 8, 2017 at 8:21:15 AM UTC-5, Ben Hutz wrote:
>>
>> Thanks for the additional responses.
>>
>> The non-equality of the hash functions is enough to convince me that P(0)
>> == 0 is not worth the "convenience" of this type of coercion.
>>
>> However, just to point out another inconsistency. It seems that coercion
>> is currently violating this hash equality in other circumstances.
>>
>> {{{
>> sage: CC(3/2) == QQ(3/2)
>> True
>> sage: hash(CC(3/2)), hash(QQ(3/2))
>> (1610645504, 7461864723258187528)
>> }}}ge
>>
>
Yes, that's a  problem that occurs throughout Sage when you try to hash
elements of different parents.  Sometimes we decide that we have to put up
with it....
David


>>
>> --
>>
>> For the other discussion: P(0) = (0:1). I don't have a strong preference
>> either way. I have never personally run into any inconsistency issues
>> making the assumption of which affine patch is 'default' in dimension 1. I
>> find the convenience convenient ;), but do see the potential difficulty in
>> tracking down issues this could cause. Actually, I don't find P1(0) = (0:1)
>> to be particularly concerning, but P2(0,0) = (0:0:1) (and so one in higher
>> dimensions) seems more concerning.
>>
>> If we were find all the places in Sage where this is used and change
>> them, the only place I think a deprecation fits is where this is handled in
>> point initialization. My rough feeling of the prevalence of this shorthand
>> seems like we would be breaking enough existing code to be concerned about
>> just making the behavior change without some kind of user warning through
>> deprecation.
>>
>> Any further thoughts?
>>
> --
> You received this message because you are subscribed to the Google Groups
> "sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to sage-devel+unsubscr...@googlegroups.com.
> To post to this group, send email to sage-devel@googlegroups.com.
> Visit this group at https://groups.google.com/group/sage-devel.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to