title: pyinterval with trvial floating point example doesn't seem to be working
body: <p>There are probably hundreds of questions on here about floating point rounding errors, and the solution is supposed to be interval arithmetic which helps keep track of them. As I'd like to experiment with this, I tried installing <a href="https://pyinterval.googlecode.com/svn/trunk/html/" rel="nofollow">pyinterval</a>.</p>
  
  <p>Unfortunately, it doesn't seem to be working. For this trivial case of floating point error, I'd expect an interval with 2 numbers, one higher and one lower than the actual answer (0.001):</p>
  
  <pre><code>&gt;&gt;&gt; from interval import interval
  &gt;&gt;&gt; interval(1.001)-1
  interval([0.0009999999999998899])
  </code></pre>
  
  <p>After some head scratching, my best guess was that the number 1.001 is being converted to a single floating point value before being passed to the interval module, so I tried using the floating point fpu.up and fpu.down functions to force the conversion:</p>
  
  <pre><code>&gt;&gt;&gt; from interval import fpu
  &gt;&gt;&gt; fpu.down(lambda : float("1.001")-1)
  0.0009999999999998899
  &gt;&gt;&gt; fpu.up(lambda : float("1.001")-1)
  0.0009999999999998899
  </code></pre>
  
  <p>Any idea what is wrong? Or have I got the wrong end of the stick on how this is supposed to work?</p>
  
  <p>I'm using an x86 mac with "Python 2.7.1 (r271:86832, Jan  1 2011, 22:28:41)  [GCC 4.2.1 (Apple Inc. build 5664)] on darwin"</p>