Thanks for the explanation, it's interesting, and almost the same as "exact floating point" types which are represented as a/b x 2^n and have exact (arbitrary precision) operations for everything except division (which is unsupported).
John.
I didn’t see exact floating points in Boost. Are they already implemented? The idea is pretty similar, I even considered the option of removing Qn and using just 3 integer types for the representation, but using same strategy of only change Qd when needed by an operation. If there is someone already working on that datatype I will like to join the effort.
No they're not implemented - it's on the TODO list ;-) I actually don't *think* it would be that hard to implement, I just wondered what the pro's and cons of the different approaches were? Regards, John.