Average Error: 13.0 → 0.5
Time: 23.5s
Precision: 64
\[\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(\frac{2}{r \cdot r} + \left(3 - 4.5\right)\right) - \left(\left(\sqrt{\sqrt{\left(3 - 2 \cdot v\right) \cdot \frac{0.125}{1 - v}}} \cdot \left(\sqrt{\left(3 - 2 \cdot v\right) \cdot \frac{0.125}{1 - v}} \cdot \sqrt{\sqrt{\left(3 - 2 \cdot v\right) \cdot \frac{0.125}{1 - v}}}\right)\right) \cdot \left(w \cdot r\right)\right) \cdot \left(w \cdot r\right)\]
\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(\frac{2}{r \cdot r} + \left(3 - 4.5\right)\right) - \left(\left(\sqrt{\sqrt{\left(3 - 2 \cdot v\right) \cdot \frac{0.125}{1 - v}}} \cdot \left(\sqrt{\left(3 - 2 \cdot v\right) \cdot \frac{0.125}{1 - v}} \cdot \sqrt{\sqrt{\left(3 - 2 \cdot v\right) \cdot \frac{0.125}{1 - v}}}\right)\right) \cdot \left(w \cdot r\right)\right) \cdot \left(w \cdot r\right)
double f(double v, double w, double r) {
        double r1577417 = 3.0;
        double r1577418 = 2.0;
        double r1577419 = r;
        double r1577420 = r1577419 * r1577419;
        double r1577421 = r1577418 / r1577420;
        double r1577422 = r1577417 + r1577421;
        double r1577423 = 0.125;
        double r1577424 = v;
        double r1577425 = r1577418 * r1577424;
        double r1577426 = r1577417 - r1577425;
        double r1577427 = r1577423 * r1577426;
        double r1577428 = w;
        double r1577429 = r1577428 * r1577428;
        double r1577430 = r1577429 * r1577419;
        double r1577431 = r1577430 * r1577419;
        double r1577432 = r1577427 * r1577431;
        double r1577433 = 1.0;
        double r1577434 = r1577433 - r1577424;
        double r1577435 = r1577432 / r1577434;
        double r1577436 = r1577422 - r1577435;
        double r1577437 = 4.5;
        double r1577438 = r1577436 - r1577437;
        return r1577438;
}

double f(double v, double w, double r) {
        double r1577439 = 2.0;
        double r1577440 = r;
        double r1577441 = r1577440 * r1577440;
        double r1577442 = r1577439 / r1577441;
        double r1577443 = 3.0;
        double r1577444 = 4.5;
        double r1577445 = r1577443 - r1577444;
        double r1577446 = r1577442 + r1577445;
        double r1577447 = v;
        double r1577448 = r1577439 * r1577447;
        double r1577449 = r1577443 - r1577448;
        double r1577450 = 0.125;
        double r1577451 = 1.0;
        double r1577452 = r1577451 - r1577447;
        double r1577453 = r1577450 / r1577452;
        double r1577454 = r1577449 * r1577453;
        double r1577455 = sqrt(r1577454);
        double r1577456 = sqrt(r1577455);
        double r1577457 = r1577455 * r1577456;
        double r1577458 = r1577456 * r1577457;
        double r1577459 = w;
        double r1577460 = r1577459 * r1577440;
        double r1577461 = r1577458 * r1577460;
        double r1577462 = r1577461 * r1577460;
        double r1577463 = r1577446 - r1577462;
        return r1577463;
}

Error

Bits error versus v

Bits error versus w

Bits error versus r

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 13.0

    \[\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. Simplified6.8

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

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

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

    \[\leadsto \left(\frac{2}{r \cdot r} + \left(3 - 4.5\right)\right) - \left(w \cdot r\right) \cdot \left(\left(w \cdot r\right) \cdot \color{blue}{\left(\sqrt{\left(3 - 2 \cdot v\right) \cdot \frac{0.125}{1 - v}} \cdot \sqrt{\left(3 - 2 \cdot v\right) \cdot \frac{0.125}{1 - v}}\right)}\right)\]
  9. Using strategy rm
  10. Applied add-sqr-sqrt0.5

    \[\leadsto \left(\frac{2}{r \cdot r} + \left(3 - 4.5\right)\right) - \left(w \cdot r\right) \cdot \left(\left(w \cdot r\right) \cdot \left(\color{blue}{\left(\sqrt{\sqrt{\left(3 - 2 \cdot v\right) \cdot \frac{0.125}{1 - v}}} \cdot \sqrt{\sqrt{\left(3 - 2 \cdot v\right) \cdot \frac{0.125}{1 - v}}}\right)} \cdot \sqrt{\left(3 - 2 \cdot v\right) \cdot \frac{0.125}{1 - v}}\right)\right)\]
  11. Applied associate-*l*0.5

    \[\leadsto \left(\frac{2}{r \cdot r} + \left(3 - 4.5\right)\right) - \left(w \cdot r\right) \cdot \left(\left(w \cdot r\right) \cdot \color{blue}{\left(\sqrt{\sqrt{\left(3 - 2 \cdot v\right) \cdot \frac{0.125}{1 - v}}} \cdot \left(\sqrt{\sqrt{\left(3 - 2 \cdot v\right) \cdot \frac{0.125}{1 - v}}} \cdot \sqrt{\left(3 - 2 \cdot v\right) \cdot \frac{0.125}{1 - v}}\right)\right)}\right)\]
  12. Final simplification0.5

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

Reproduce

herbie shell --seed 2019179 
(FPCore (v w r)
  :name "Rosa's TurbineBenchmark"
  (- (- (+ 3.0 (/ 2.0 (* r r))) (/ (* (* 0.125 (- 3.0 (* 2.0 v))) (* (* (* w w) r) r)) (- 1.0 v))) 4.5))