On 2017-11-09 15:55, Nicolas Cellier wrote:
2017-11-09 15:48 GMT+01:00 Tudor Girba <[email protected]
<mailto:[email protected]>>:
Hi,
Thanks for the answer. The example I provided was for convenience.
I still do not understand why it is wrong to expect 0.1 = (1/10) to
be true.
Doru
Because there are infinitely many different Fraction that would be
"equal" to 0.1 then.
The first effect is that you have
a = b
a = c
b < c
You are breaking the fact that you can sort these Numbers (are they
Magnitude anymore?)
You are breaking the fact that you can mix these Numbers as Dictionary
keys (sometimes the dictionary would have 2 elements, sometimes 3,
unpredictably).
Fractions are not reliable keys anyway:
(Fraction numerator: 1 denominator: 3) = (Fraction numerator: 2
denominator: 6)
evaluates to true while
(Fraction numerator: 1 denominator: 3) hash = (Fraction numerator: 2
denominator: 6) hash
evaluates to false