On Monday, March 20, 2017 at 9:06:26 PM UTC, William wrote: > > On Mon, Mar 20, 2017 at 1:52 PM, Dima Pasechnik <dim...@gmail.com > <javascript:>> wrote: > >> The original poster is asking only about basic arithmetic and equality > >> testing in AA. Since AA embeds as a subfield of QQbar, a solution to > >> these problems in QQbar automatically implies one in AA. > >> > > Does taking square roots qualify as basic arithmetic? > > Taking roots is the most basic operation of any algorithm for > "Computing with algebraically closed fields" since "roots of > polynomials" is the only meaningful way in general to define elements > of an algebraic closure. >
Sure, but you do not "take" square roots, i.e. you do not specify an embedding, if you compute in an algebraically closed field. Trouble starts when you have to pick up a root, as happens here (unlike in the algebraically closed case). > > Noting Nils' remark: > > >> If an embedding in CC or RR is required, it could be tracked with just > >> numerical information. > > one sees that one can track all numbers involved to some floating > point precision. With that, you can tell with a real number is > positive or negative, after which taking square roots is possible. > surely you can do this, but it seems to be harder to certify if a number is zero or not. It's a classical story that it's harder in general to figure out whether a system of polynomial equations has a real root, as opposed to it having a root. Effectively here you are checking that the following system has real solutions: a^4=5, s^2=13, c=a+r, r^2=(s-a)^2+3, 2ac=c^2-r^2+a^2. It is easy in this case by eliminating variables in a good order, but hard if one does something dumb, and has to do real root isolation and substitution, etc etc. (perhaps number theorists know better, though...) > > > -- William > -- 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.