Average Error: 12.7 → 0.4
Time: 26.3s
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(\left(3 + \frac{2}{r \cdot r}\right) - \sqrt{\frac{0.125 \cdot \left(3 - 2 \cdot v\right)}{\frac{1 - v}{{\left(\left|w \cdot r\right|\right)}^{2}}}} \cdot \sqrt{\frac{0.125 \cdot \left(3 - 2 \cdot v\right)}{\frac{1 - v}{{\left(\left|w \cdot r\right|\right)}^{2}}}}\right) - 4.5\]
\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(\left(3 + \frac{2}{r \cdot r}\right) - \sqrt{\frac{0.125 \cdot \left(3 - 2 \cdot v\right)}{\frac{1 - v}{{\left(\left|w \cdot r\right|\right)}^{2}}}} \cdot \sqrt{\frac{0.125 \cdot \left(3 - 2 \cdot v\right)}{\frac{1 - v}{{\left(\left|w \cdot r\right|\right)}^{2}}}}\right) - 4.5
double f(double v, double w, double r) {
        double r45141 = 3.0;
        double r45142 = 2.0;
        double r45143 = r;
        double r45144 = r45143 * r45143;
        double r45145 = r45142 / r45144;
        double r45146 = r45141 + r45145;
        double r45147 = 0.125;
        double r45148 = v;
        double r45149 = r45142 * r45148;
        double r45150 = r45141 - r45149;
        double r45151 = r45147 * r45150;
        double r45152 = w;
        double r45153 = r45152 * r45152;
        double r45154 = r45153 * r45143;
        double r45155 = r45154 * r45143;
        double r45156 = r45151 * r45155;
        double r45157 = 1.0;
        double r45158 = r45157 - r45148;
        double r45159 = r45156 / r45158;
        double r45160 = r45146 - r45159;
        double r45161 = 4.5;
        double r45162 = r45160 - r45161;
        return r45162;
}

double f(double v, double w, double r) {
        double r45163 = 3.0;
        double r45164 = 2.0;
        double r45165 = r;
        double r45166 = r45165 * r45165;
        double r45167 = r45164 / r45166;
        double r45168 = r45163 + r45167;
        double r45169 = 0.125;
        double r45170 = v;
        double r45171 = r45164 * r45170;
        double r45172 = r45163 - r45171;
        double r45173 = r45169 * r45172;
        double r45174 = 1.0;
        double r45175 = r45174 - r45170;
        double r45176 = w;
        double r45177 = r45176 * r45165;
        double r45178 = fabs(r45177);
        double r45179 = 2.0;
        double r45180 = pow(r45178, r45179);
        double r45181 = r45175 / r45180;
        double r45182 = r45173 / r45181;
        double r45183 = sqrt(r45182);
        double r45184 = r45183 * r45183;
        double r45185 = r45168 - r45184;
        double r45186 = 4.5;
        double r45187 = r45185 - r45186;
        return r45187;
}

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 12.7

    \[\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. Using strategy rm
  3. Applied add-sqr-sqrt12.8

    \[\leadsto \left(\left(3 + \frac{2}{r \cdot r}\right) - \frac{\left(0.125 \cdot \left(3 - 2 \cdot v\right)\right) \cdot \color{blue}{\left(\sqrt{\left(\left(w \cdot w\right) \cdot r\right) \cdot r} \cdot \sqrt{\left(\left(w \cdot w\right) \cdot r\right) \cdot r}\right)}}{1 - v}\right) - 4.5\]
  4. Simplified12.7

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

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

    \[\leadsto \left(\left(3 + \frac{2}{r \cdot r}\right) - \color{blue}{\sqrt{\frac{\left(0.125 \cdot \left(3 - 2 \cdot v\right)\right) \cdot \left(\left|w \cdot r\right| \cdot \left|w \cdot r\right|\right)}{1 - v}} \cdot \sqrt{\frac{\left(0.125 \cdot \left(3 - 2 \cdot v\right)\right) \cdot \left(\left|w \cdot r\right| \cdot \left|w \cdot r\right|\right)}{1 - v}}}\right) - 4.5\]
  8. Simplified6.6

    \[\leadsto \left(\left(3 + \frac{2}{r \cdot r}\right) - \color{blue}{\sqrt{\frac{0.125 \cdot \left(3 - 2 \cdot v\right)}{\frac{1 - v}{{\left(\left|w \cdot r\right|\right)}^{2}}}}} \cdot \sqrt{\frac{\left(0.125 \cdot \left(3 - 2 \cdot v\right)\right) \cdot \left(\left|w \cdot r\right| \cdot \left|w \cdot r\right|\right)}{1 - v}}\right) - 4.5\]
  9. Simplified0.4

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

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

Reproduce

herbie shell --seed 2019303 
(FPCore (v w r)
  :name "Rosa's TurbineBenchmark"
  :precision binary64
  (- (- (+ 3 (/ 2 (* r r))) (/ (* (* 0.125 (- 3 (* 2 v))) (* (* (* w w) r) r)) (- 1 v))) 4.5))