Ask Your Question

Concerning "bits of precision"

asked 2016-12-27 08:46:22 -0500

Karl gravatar image

I am a newcomer to Sage. I learn Sage to compute Gröbner bases.

Concerning polynomial ring, if I type:

R = PolynomialRing(QQ, 't')

I get:

Univariate Polynomial Ring in t over Rational Field

But if I type:

R = PolynomialRing(RR, 't')

I get:

Univariate Polynomial Ring in t over Real Field with 53 bits of precision

What does "with 53 bits of precision" mean? If I don't know its meaning, will it matter when I compute Gröbner bases? I would appreciate any help with this situation.

edit retag flag offensive close merge delete

1 answer

Sort by » oldest newest most voted

answered 2016-12-28 11:34:30 -0500

nbruin gravatar image

When sage works with "real numbers", it works with floating point approximations to them. They suffer from precision loss:

sage: RR(1)+RR(10^40)-RR(10^40) == 0

That means that if you wanted to do groebner basis computations for polynomial rings over RR, you'd have to be very careful about numerical stability, precision loss, and the fact that "cancellation" is almost never exact due to rounding. It's quite different from groebner basis computations over rings with exact element representations. I am not aware of support for groebner bases over RR in sage.

Finite fields, QQ, and algebraic coefficients should be OK, though, Perhaps you can get by with those?

edit flag offensive delete link more

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools


Asked: 2016-12-27 08:46:22 -0500

Seen: 63 times

Last updated: Dec 28 '16