Hi, thanks for sharing your implementation.  Am I totally misusing (py)unum?<p>Using pyunum, repeatedly rotate the point (1,0) by 45 degrees.  Print out the X coordinate every 8 rotations.  Mathematically, the value  printed each time should be exactly 1.  Unfortunately, after just 79 iterations, the unum covers the range (-27352064, 27352064)!  This includes the correct result but is useless.<p>A similar program using Python floats (i.e., platform doubles) prints 0.9999999999999937 at step 79 and runs in 1&#x2F;540 of the time on my oldish core2 notebook. (or 0.9999999999371962 at step 799999 in less than 1&#x2F;10 of the time of the 79 unum steps)<p><pre><code>    from unum import *

    a = divideu(x2u(1), sqrtu(x2u(2)))

    x, y = x2u(1), x2u(0)
    for i in range(80):
        x, y = timesu(minusu(x, y), a), timesu(plusu(x, y), a)
        if i % 8 == 7: print i, view(x)</code></pre>