On Thursday, February 16, 2017 at 6:59:04 AM UTC, William wrote: > > **Disclaimer: I consider myself very naive about computational > commutative algebra, especially with floating point numbers. Dima, > thanks for answering the question, but I think you are maybe jumping > to wronc conclusions. See below. ** > > > The backend that actually does this computation is Singular, adn it does > not do floating point numbers (in this context for sure). > > It's possible you are completely wrong.
well, not 100% :-) I maintain that it's well-known how to get examples of Groebner bases of ideas which will not be representable with original precision---if you work in RR(n), for some n, say. I don't know what Singular does, but it cannot always work in limited precision, full stop. They also "do" Groebner bases for monomial orders for which termination is not guaranteed... > Half the intro examples in > the "make a ring" section of the Singular manual are floating point: > https://www.singular.uni-kl.de/Manual/4-0-3/sing_29.htm > > ~$ singular > SINGULAR / > A Computer Algebra System for Polynomial Computations / version > 4.1.0 > 0< > by: W. Decker, G.-M. Greuel, G. Pfister, H. Schoenemann \ Nov 2016 > FB Mathematik der Universitaet, D-67653 Kaiserslautern \ > > ring r = (real,50),(x,y,z),dp; > > poly f=x3+yx2+3y+4; > > qring q=std(maxideal(2)); > > basering; > // characteristic : 0 (real:50 digits, additional 50 digits) > // number of vars : 3 > // block 1 : ordering dp > // : names x y z > // block 2 : ordering C > // quotient ring from ideal > _[1]=z2 > _[2]=yz > _[3]=xz > _[4]=y2 > _[5]=xy > _[6]=x2 > > poly g=fetch(r, f); > > g; > x3+x2y+3*y+4 > > 4.5*g; > 4.5*x3+4.5*x2y+13.5*y+18 > > reduce(g,std(0)); > 3*y+4 > > > > > I have opened https://trac.sagemath.org/ticket/22387 to deal with this. > > Please fix this, e.g., the ticket should point out that Sage appeared > to work and provide results before. > > Just because you think it's nuts to use floating point numbers in the > context of commutative algebra doesn't mean it is... It's a whole > research area, e.g., > > http://link.springer.com/chapter/10.1007/978-3-540-87827-8_23 > a paper from 2008 with one citation and one self-citation is not a "whole research area", come on... > > It's even possible the Singular developers aren't naive. > well, they are not - although they allow the users to shoot themselves in all the feet around them. > > **Disclaimer: I consider myself very naive about computational > commutative algebra, especially with floating point numbers.** > > William > > > > > On Thursday, February 16, 2017 at 5:32:42 AM UTC, Matthew Macauley > wrote: > >> > >> Typing the following: > >> > >> > >> P.<x,y,z> = PolynomialRing(RR, 3, order='lex'); P > >> I = ideal(x^2+y^2+z^2-1, x^2-y+z^2, x-z); I > >> B = I.groebner_basis(); B > >> > >> > >> gives a brutal error (type it into SageMathCell and you'll see). > >> > >> > >> Seth Sullivant suggested that it's due to a roundoff error, because it > >> works with fields such as "QQ" or "GF(3)", etc. That said, I am 99% > sure > >> that it's a relatively new error, because I have typed in those exact > lines > >> in previous semesters (it's from a HW problem that I assigned) and I > haven't > >> had any prior issues. > > > > -- > > 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 [email protected] <javascript:>. > > To post to this group, send email to [email protected] > <javascript:>. > > Visit this group at https://groups.google.com/group/sage-devel. > > For more options, visit https://groups.google.com/d/optout. > > > > -- > William (http://wstein.org) > -- 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 [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/d/optout.
