On Wed, Mar 5, 2025 at 12:51 PM Seth Chaiken <schai...@albany.edu> wrote: > > In Sage 10.4, we tried to inject a RR number into a RR polynomial ring > quotient. It > works fine when the ideal had one (monomial) generator but precision is lost > when > it had two generators.
It's not a bug - it's half-expected that any nontrivial algebraic computations in PolynomialRing(RR) will fail due to rounding errors/loss of precision. You can increase the precision of the ring, and try again, but I'd recommend avoiding this if at all possible. Use exact rings instead. E.g. approximate your data by rationals and use PolynomialRing(QQ). HTH Dima > > One generator example (works): > > eps = var("eps") > edBaseRing=PolynomialRing(RR,[eps]) > edIdeal=ideal(edBaseRing, [eps]) > edRing=edBaseRing.quotient_ring(edIdeal) > print(RR(pi)) > print(edBaseRing(pi)) > print(edRing(pi)) > > yields: > 3.14159265358979 > 3.14159265358979 > 3.14159265358979 > > But with 2 generators, injecting RR(pi) into the quotient loses precision. > The analogous output is: > 3.14159265358979 > 3.14159265358979 > 3.14200000000000 > > Here's the full code: > > eps, dlt = var("eps,dlt") > edBaseRing=PolynomialRing(RR,[eps, dlt]) > edIdeal=ideal(edBaseRing, [eps, dlt]) > edRing=edBaseRing.quotient_ring(edIdeal) > > print(RR(pi)) > print(edBaseRing(pi)) > print(edRing(pi)) > > Looks like a bug! I isolated it from more complex code where the ideal was > simply all multiples of the two variables, and a RealField with non-default > bit precision was used. > > > > > > -- > You received this message because you are subscribed to the Google Groups > "sage-support" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to sage-support+unsubscr...@googlegroups.com. > To view this discussion visit > https://groups.google.com/d/msgid/sage-support/cf40d022-a05e-4269-8612-ed705590c699n%40googlegroups.com. -- You received this message because you are subscribed to the Google Groups "sage-support" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-support+unsubscr...@googlegroups.com. To view this discussion visit https://groups.google.com/d/msgid/sage-support/CAAWYfq1VREBtd9Ai76%2BM0CtE3vtDaqBMq1kzy5HnmCyftY%3D%2BsA%40mail.gmail.com.