On Monday, 17 April 2023 at 14:58:49 UTC-7 aw wrote:

fixing a typo: it should be "exact irrationals like sqrt(2)"


Ah, NOW I see what the problem likely is: I think you're misled by the 
field being called "RealField". So ... yeah ... it's not. It should 
probably be called RealFloats or something like that. This has come up 
before, but would be a painful change to make : 
https://groups.google.com/g/sage-devel/c/ba9u_As3T4s/m/oXNgGozmAQAJ

With modern developments like RealLazyField, eventually sage *may* actually 
have something that actually models computations in the real numbers. If 
you're interested in algebraic numbers you can already have them with 
AlgebraicField() and AlgebraicRealField() -- those actually work pretty 
well. Do be aware that testing equality in such fields may be unexpectedly 
expensive (but since in floats testing for equality is generally 
nonsensical, that's probably still a win).

These things are still rather experimental, though, so probably not quite 
ready to be defaults in SageMath.

Note that "real literals" like "1.1" are not suitable vehicles to enter any 
interesting exact real number anyway: you can';t specify sqrt(2) exactly in 
that way. So you end up writing things like AA(2).sqrt(). Or AA(sqrt(2)) 
(the latter making intermediate use of SR). So I'm not so sure that decimal 
literals would coerce to exact decimal fractions even in a system where a 
"true" real field is available: quick and dirty floating point is 
historically just something that a lot of people expect to be available and 
people might start complaining if arithmetic with 1.1 starts blowing up in 
memory use.

-- 
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/f6ff35d5-f87a-4991-894b-78c3b4f76d17n%40googlegroups.com.

Reply via email to