I am currently using rational numbers to express currency and math operations with currency, while dealing with rational numbers has provided a great convenience in over coming the limitations of scaling integers into unit64 I have a few concerns around decimal fractions vs rational numbers and the quotient they express:
Given the following rational number:
$5764607523034235/576460752303423488$
this supposedly represents 0.01 'exactly', according to the 'quotToFloat' method found here: http://golang.org/src/pkg/math/big/rat.go
but given the following decimal fraction:
$1/100$
this supposedly does not represent 0.01 'exactly'.
My concern lies in holding 2 different rational numbers that represent the same qoutient but not being able to find equality between them without converting them and comparing.
Why is it that $1/100$ does not express 0.01 exactly? Am I butting up against base2 limitations?