On 21 December 2017 at 12:29, Vincent Delecroix <[email protected]>
wrote:

> I definitely get your point but completely disagree with the compromise. I
> think that functions that behave differently depending on the arithmetic
> nature of the object should simply not exist. The worst being
>
>     sage: 4.sqrt().parent()
>     Integer Ring
>     sage: 2.sqrt().parent()
>     Symbolic Ring
>
> In other words my motto is: the parent of the ouptut should be determined
> by the parent of the input.
>
> If I am not mistaken, one can take a degree 2 extension in the example by
> considering the ring of Puiseux series in u = (2t)^(1/2). Not very
> convenient to work with because of denominators but well defined
>
>  (2t + t^3)^(1/2) = u + 1/16*u^5 - 1/512*u^9 + ...
>
> Would it be acceptable?


That is exactly  the "compromise" which I was suggesting!  I called it s
instead of u.  Sorry for not being clearer.

John


>
>
> Vincent
>
>
> On 21/12/2017 11:59, John Cremona wrote:
>
>> I agree that the behaviour you would like is desirable in some
>> circumstances, but possibly not all.  Note that to get the square root of
>> your power series, as well as adjoining t^{1/2} when the valuation is odd,
>> you also need to adjoin the square root of the leading coefficient (if it
>> is not a square).  In your example the square roots are power series in
>> t^{1/2} with coefficients in QQ(\sqrt{2}).  So you could argue that you
>> would be making a degree 4 extension to get a square root, which is
>> overkill.  (In an analogous way perhaps some people might extend Q to get
>> (-2).sqrt() by adjoinging I=sqrt(-1) and sqrt(2), and say that the answer
>> is sqrt(2)*I.  I know that I would not give that as the answer, but I bet
>> many people who are not number theorists would "simplify" sqrt(-2) like
>> that).
>>
>> Perhaps the simplest quadratic extension for your example would be QQ[[s]]
>> with s^2=2*t.  How about that as a compromise?  i.e. if the lowest order
>> term is not an n'th power then adjoin its n'th root?
>>
>> John
>>
>> On 21 December 2017 at 11:17, Vincent Delecroix <
>> [email protected]>
>> wrote:
>>
>> Dear all,
>>>
>>> I might introduce a non backward incompatible change for square root (and
>>> more generally n-th roots) of power series.
>>>
>>> While working on [1] I stumbled on a weird implementation of square root
>>> for power series [2]. Namely, when extend=True it might just return a
>>> formal element p so that p^2 is the initial series (example at [3])
>>>
>>>      sage: K.<t> = PowerSeriesRing(QQ, 5)
>>>      sage: f = 2*t + t^3 + O(t^4)
>>>      sage: s = f.sqrt(extend=True, name='sqrtf'); s
>>>      sqrtf
>>>      sage: s^2
>>>      2*t + t^3 + O(t^4)
>>>
>>> A much more meaningful answer is to return a Puiseux series in t^(1/2)
>>> which is the natural algebraic closure of power series (at least in
>>> characteristic zero). Of course, I am aware that Puiseux series are not
>>> yet
>>> there... and this is one of our oldest open ticket [4].
>>>
>>> Anybody disagree?
>>>
>>>   [1] https://trac.sagemath.org/ticket/10720
>>>
>>>   [2] https://github.com/sagemath/sagetrac-mirror/blob/master/src/
>>> sage/rings/power_series_ring_element.pyx#L1186
>>>
>>>   [3] https://github.com/sagemath/sagetrac-mirror/blob/master/src/
>>> sage/rings/power_series_ring_element.pyx#L1253
>>>
>>>   [4] https://trac.sagemath.org/ticket/4618
>>>
>>> Vincent
>>>
>>> --
>>> You received this message because you are subscribed to the Google Groups
>>> "sage-nt" group.
>>> To unsubscribe from this group and stop receiving emails from it, send an
>>> email to [email protected].
>>> To post to this group, send an email to [email protected].
>>> Visit this group at https://groups.google.com/group/sage-nt.
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>>
>>
> --
> You received this message because you are subscribed to the Google Groups
> "sage-nt" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send an email to [email protected].
> Visit this group at https://groups.google.com/group/sage-nt.
> For more options, visit https://groups.google.com/d/optout.
>

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

Reply via email to