Average Error: 12.3 → 0.4
Time: 35.4s
Precision: 64
Internal Precision: 128
\[\left(\left(3 + \frac{2}{r \cdot r}\right) - \frac{\left(0.125 \cdot \left(3 - 2 \cdot v\right)\right) \cdot \left(\left(\left(w \cdot w\right) \cdot r\right) \cdot r\right)}{1 - v}\right) - 4.5\]
\[\left(3 + \frac{\frac{2}{r}}{r}\right) - (\left(e^{\log \left(\sqrt{\frac{(-2 \cdot v + 3)_*}{\frac{1 - v}{0.125}}} \cdot \sqrt{\frac{(-2 \cdot v + 3)_*}{\frac{1 - v}{0.125}}}\right)}\right) \cdot \left(\left(r \cdot w\right) \cdot \left(r \cdot w\right)\right) + 4.5)_*\]

Error

Bits error versus v

Bits error versus w

Bits error versus r

Derivation

  1. Initial program 12.3

    \[\left(\left(3 + \frac{2}{r \cdot r}\right) - \frac{\left(0.125 \cdot \left(3 - 2 \cdot v\right)\right) \cdot \left(\left(\left(w \cdot w\right) \cdot r\right) \cdot r\right)}{1 - v}\right) - 4.5\]
  2. Simplified0.4

    \[\leadsto \color{blue}{\left(3 + \frac{2}{r \cdot r}\right) - (\left(\frac{(-2 \cdot v + 3)_*}{\frac{1 - v}{0.125}}\right) \cdot \left(\left(w \cdot r\right) \cdot \left(w \cdot r\right)\right) + 4.5)_*}\]
  3. Using strategy rm
  4. Applied add-exp-log0.4

    \[\leadsto \left(3 + \frac{2}{r \cdot r}\right) - (\color{blue}{\left(e^{\log \left(\frac{(-2 \cdot v + 3)_*}{\frac{1 - v}{0.125}}\right)}\right)} \cdot \left(\left(w \cdot r\right) \cdot \left(w \cdot r\right)\right) + 4.5)_*\]
  5. Using strategy rm
  6. Applied associate-/r*0.4

    \[\leadsto \left(3 + \color{blue}{\frac{\frac{2}{r}}{r}}\right) - (\left(e^{\log \left(\frac{(-2 \cdot v + 3)_*}{\frac{1 - v}{0.125}}\right)}\right) \cdot \left(\left(w \cdot r\right) \cdot \left(w \cdot r\right)\right) + 4.5)_*\]
  7. Using strategy rm
  8. Applied add-sqr-sqrt0.4

    \[\leadsto \left(3 + \frac{\frac{2}{r}}{r}\right) - (\left(e^{\log \color{blue}{\left(\sqrt{\frac{(-2 \cdot v + 3)_*}{\frac{1 - v}{0.125}}} \cdot \sqrt{\frac{(-2 \cdot v + 3)_*}{\frac{1 - v}{0.125}}}\right)}}\right) \cdot \left(\left(w \cdot r\right) \cdot \left(w \cdot r\right)\right) + 4.5)_*\]
  9. Final simplification0.4

    \[\leadsto \left(3 + \frac{\frac{2}{r}}{r}\right) - (\left(e^{\log \left(\sqrt{\frac{(-2 \cdot v + 3)_*}{\frac{1 - v}{0.125}}} \cdot \sqrt{\frac{(-2 \cdot v + 3)_*}{\frac{1 - v}{0.125}}}\right)}\right) \cdot \left(\left(r \cdot w\right) \cdot \left(r \cdot w\right)\right) + 4.5)_*\]

Reproduce

herbie shell --seed 2019030 +o rules:numerics
(FPCore (v w r)
  :name "Rosa's TurbineBenchmark"
  (- (- (+ 3 (/ 2 (* r r))) (/ (* (* 0.125 (- 3 (* 2 v))) (* (* (* w w) r) r)) (- 1 v))) 4.5))