Salut Thierry, I did not see your post before posting mine ! I mostly agreed but I would love to have something better. There are two kinds of approximation that one can have when dealing with computations : - approximate operations +, -, x, / (that allows for example to deal with a finite subset) - approximate equality The term exact in Sage (as in "RR.is_exact()") currently refers to the first kind. Now if you deal with computable numbers, or large enough subset of the reals, then you can not guarantee equality (and this is the case for example with SR that can answer False to A == B even if it is True). I know that there are other issue with SR, but it was just to claim that the set of reals that it handle is somewhat too large to ensure exact equality.
A first step in having sane reals would be to refined this notion of exactness. This implies to declare convention about the answer of A == B. I think that this should be the mathematical answer (True, False) or an exception that can be either of the kind "raise NotAbleToSolveTheProblem" or "return Unkown" (from sage.misc.unknown). Now, concerning implementation, I see at least there levels of fields - subrings with exact computations and identity problem solvable, ie algebraic numbers, algebraic reals with exponentials, ... - subrings with approximate computations (and identity problem solvable), ie floating points - subrings with exact computations and identity problem unsolvable, like the RSF and CSF that you propose. And it defintely makes sense to have a parent RR with no dedicated class of element. Best Vincent -- 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 post to this group, send email to sage-devel@googlegroups.com. Visit this group at http://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/d/optout.