On Tuesday, 18 April 2023 at 14:59:30 UTC-7 aw wrote: On Tuesday, April 18, 2023 at 3:29:03 PM UTC-6 Dima Pasechnik wrote:
It is a problem, as e^1.1 cannot be represented exactly, and it is evaluated eagerly. To what precision should it be evaluated? To 200 bits? Then you will complain that you can't get what you want at 400 bits. Etc etc. "1.1" doesn't need to be evaluated, it needs to be replaced by "11/10", in pre-processing. That's not going to change by default. There is already a way to spell 11/10: as "11/10". The present default is to use "1.1" as a designation of a floating point literal, with in implied precision derived from the number of digits used to write down the mantissa. There are definitely people who are happy with that default, so incentive to change it is rather low. In fact, I've never heard before the expectation that 1.1 would signify an exact quantity and it was always drilled into me that one should write the appropriate number of significant digits when writing a decimal fraction, to indicate the number of digits that are claimed to be correct. It's unfortunate that you're not among the people who are happy with the convention used in sagemath (and maple, and maxima, and magma). It may not be the default, but you can still have it! As referenced before, just execute upon startup: old_RealNumber=RealNumber def RealNumber(*args, **kwargs): return QQ(old_RealNumber(*args, **kwargs)) You can place it in a startup file so that it is in force for all your subsequent sessions. See: https://doc.sagemath.org/html/en/reference/repl/startup.html -- 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/9b8e390d-baec-46a0-91da-660f90b4c81en%40googlegroups.com.