I think Robert's said it fairly well.  Which is good, since I'll have
spotty internet for the next couple weeks, and my battery is about to
run out.

On 5/15/10, Robert Bradshaw <rober...@math.washington.edu> wrote:
> On May 14, 2010, at 11:13 AM, Simon King wrote:
>
>> Hi Robert!
>>
>> On 14 Mai, 18:34, Robert Bradshaw <rober...@math.washington.edu>
>> wrote:
>>>> 1. Do you agree this is a bug?
>>>
>>> The p-adic fields are of capped precision, not set precision, but
>>> each
>>> element remembers its own actual precision, so this is why the
>>> coercion goes in that direction, and I don't think its a bug.
>>
>> What does capped or set precision mean?
>>
>> Is  it like this?
>> - The precision of the elements of RR is determined by RR, and so the
>> precision must be non-increasing along a coercion.
>
> Yep, otherwise elements have spuriously high precision.
>
>> - The precision of the elements of one p-adic ring can be different,
>> but there is an upper bound for the precision. This upper bound must
>> be non-decreasing under coercion.
>
> Yep, otherwise we loose information.
>
>>> If we're going to change this, it should be on its own ticket as it's
>>> quite a big change.
>>
>> I thought it is just changing one byte: '>' to '<'.
>
> :). There are many places I could just change '>' to '<' that would
> wreck havoc all over, the above would be a big semantic change.
>
>> Anyway, if you say we should keep it then I need to do a change in a
>> different place: The Completion construction functor allows merging,
>> and the rule is that two Completion functors with respect to the same
>> prime (resp. +Infinity, for the completion functor yielding RR) are
>> merged so that the *smaller* precision results.
>>
>> By consequence, if you have two parent structures based on p-adic
>> rings of different precision, then it could be that there is no
>> coercion into their pushout.
>>
>> Solution: In the merge method, I can distinguish the case "completion
>> at +Infinity" and "completion at some prime", so that the smaller
>> precision is chosen in the first case and the bigger precision in the
>> second case.
>
> Yes, we'd have to special case this.
>
>
> On May 14, 2010, at 11:39 AM, Simon King wrote:
>
>> Would the following be what you want?
>>
>> sage: R1.<a> = Zp(5,prec=20)[]
>> sage: R2 = Qp(5,prec=40)
>> sage: R2(1)+a
>> (1 + O(5^20))*a + (1 + O(5^40))
>>
>> This results when one changes the merge method (and makes fraction
>> field functor and completion functor commute).
>
> Yep, that looks right to me. (Sometimes, though, I wonder if the
> generator of a inexact ring should be considered to have infinite
> precision, but that's totally separate.)
>
> - Robert
>
> --
> To post to this group, send an email to sage-devel@googlegroups.com
> To unsubscribe from this group, send an email to
> sage-devel+unsubscr...@googlegroups.com
> For more options, visit this group at
> http://groups.google.com/group/sage-devel
> URL: http://www.sagemath.org
>

-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org

Reply via email to