Average Error: 7.9 → 4.7
Time: 3.2s
Precision: 64
\[x0 = 1.855 \land x1 = 2.09000000000000012 \cdot 10^{-4} \lor x0 = 2.98499999999999988 \land x1 = 0.018599999999999998\]
\[\frac{x0}{1 - x1} - x0\]
\[\frac{\log \left(e^{\frac{\sqrt{x0}}{\frac{1 - x1}{\sqrt{x0}}} \cdot \frac{x0}{1 - x1} - x0 \cdot x0}\right)}{\frac{\frac{x0}{\sqrt{1} + \sqrt{x1}}}{\sqrt{1} - \sqrt{x1}} + x0}\]
\frac{x0}{1 - x1} - x0
\frac{\log \left(e^{\frac{\sqrt{x0}}{\frac{1 - x1}{\sqrt{x0}}} \cdot \frac{x0}{1 - x1} - x0 \cdot x0}\right)}{\frac{\frac{x0}{\sqrt{1} + \sqrt{x1}}}{\sqrt{1} - \sqrt{x1}} + x0}
double f(double x0, double x1) {
        double r133496 = x0;
        double r133497 = 1.0;
        double r133498 = x1;
        double r133499 = r133497 - r133498;
        double r133500 = r133496 / r133499;
        double r133501 = r133500 - r133496;
        return r133501;
}

double f(double x0, double x1) {
        double r133502 = x0;
        double r133503 = sqrt(r133502);
        double r133504 = 1.0;
        double r133505 = x1;
        double r133506 = r133504 - r133505;
        double r133507 = r133506 / r133503;
        double r133508 = r133503 / r133507;
        double r133509 = r133502 / r133506;
        double r133510 = r133508 * r133509;
        double r133511 = r133502 * r133502;
        double r133512 = r133510 - r133511;
        double r133513 = exp(r133512);
        double r133514 = log(r133513);
        double r133515 = sqrt(r133504);
        double r133516 = sqrt(r133505);
        double r133517 = r133515 + r133516;
        double r133518 = r133502 / r133517;
        double r133519 = r133515 - r133516;
        double r133520 = r133518 / r133519;
        double r133521 = r133520 + r133502;
        double r133522 = r133514 / r133521;
        return r133522;
}

Error

Bits error versus x0

Bits error versus x1

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Target

Original7.9
Target0.3
Herbie4.7
\[\frac{x0 \cdot x1}{1 - x1}\]

Derivation

  1. Initial program 7.9

    \[\frac{x0}{1 - x1} - x0\]
  2. Using strategy rm
  3. Applied flip--7.3

    \[\leadsto \color{blue}{\frac{\frac{x0}{1 - x1} \cdot \frac{x0}{1 - x1} - x0 \cdot x0}{\frac{x0}{1 - x1} + x0}}\]
  4. Using strategy rm
  5. Applied add-sqr-sqrt7.3

    \[\leadsto \frac{\frac{\color{blue}{\sqrt{x0} \cdot \sqrt{x0}}}{1 - x1} \cdot \frac{x0}{1 - x1} - x0 \cdot x0}{\frac{x0}{1 - x1} + x0}\]
  6. Applied associate-/l*5.6

    \[\leadsto \frac{\color{blue}{\frac{\sqrt{x0}}{\frac{1 - x1}{\sqrt{x0}}}} \cdot \frac{x0}{1 - x1} - x0 \cdot x0}{\frac{x0}{1 - x1} + x0}\]
  7. Using strategy rm
  8. Applied add-log-exp5.6

    \[\leadsto \frac{\frac{\sqrt{x0}}{\frac{1 - x1}{\sqrt{x0}}} \cdot \frac{x0}{1 - x1} - \color{blue}{\log \left(e^{x0 \cdot x0}\right)}}{\frac{x0}{1 - x1} + x0}\]
  9. Applied add-log-exp5.6

    \[\leadsto \frac{\color{blue}{\log \left(e^{\frac{\sqrt{x0}}{\frac{1 - x1}{\sqrt{x0}}} \cdot \frac{x0}{1 - x1}}\right)} - \log \left(e^{x0 \cdot x0}\right)}{\frac{x0}{1 - x1} + x0}\]
  10. Applied diff-log5.5

    \[\leadsto \frac{\color{blue}{\log \left(\frac{e^{\frac{\sqrt{x0}}{\frac{1 - x1}{\sqrt{x0}}} \cdot \frac{x0}{1 - x1}}}{e^{x0 \cdot x0}}\right)}}{\frac{x0}{1 - x1} + x0}\]
  11. Simplified4.7

    \[\leadsto \frac{\log \color{blue}{\left(e^{\frac{\sqrt{x0}}{\frac{1 - x1}{\sqrt{x0}}} \cdot \frac{x0}{1 - x1} - x0 \cdot x0}\right)}}{\frac{x0}{1 - x1} + x0}\]
  12. Using strategy rm
  13. Applied add-sqr-sqrt4.7

    \[\leadsto \frac{\log \left(e^{\frac{\sqrt{x0}}{\frac{1 - x1}{\sqrt{x0}}} \cdot \frac{x0}{1 - x1} - x0 \cdot x0}\right)}{\frac{x0}{1 - \color{blue}{\sqrt{x1} \cdot \sqrt{x1}}} + x0}\]
  14. Applied add-sqr-sqrt4.7

    \[\leadsto \frac{\log \left(e^{\frac{\sqrt{x0}}{\frac{1 - x1}{\sqrt{x0}}} \cdot \frac{x0}{1 - x1} - x0 \cdot x0}\right)}{\frac{x0}{\color{blue}{\sqrt{1} \cdot \sqrt{1}} - \sqrt{x1} \cdot \sqrt{x1}} + x0}\]
  15. Applied difference-of-squares4.7

    \[\leadsto \frac{\log \left(e^{\frac{\sqrt{x0}}{\frac{1 - x1}{\sqrt{x0}}} \cdot \frac{x0}{1 - x1} - x0 \cdot x0}\right)}{\frac{x0}{\color{blue}{\left(\sqrt{1} + \sqrt{x1}\right) \cdot \left(\sqrt{1} - \sqrt{x1}\right)}} + x0}\]
  16. Applied associate-/r*4.7

    \[\leadsto \frac{\log \left(e^{\frac{\sqrt{x0}}{\frac{1 - x1}{\sqrt{x0}}} \cdot \frac{x0}{1 - x1} - x0 \cdot x0}\right)}{\color{blue}{\frac{\frac{x0}{\sqrt{1} + \sqrt{x1}}}{\sqrt{1} - \sqrt{x1}}} + x0}\]
  17. Final simplification4.7

    \[\leadsto \frac{\log \left(e^{\frac{\sqrt{x0}}{\frac{1 - x1}{\sqrt{x0}}} \cdot \frac{x0}{1 - x1} - x0 \cdot x0}\right)}{\frac{\frac{x0}{\sqrt{1} + \sqrt{x1}}}{\sqrt{1} - \sqrt{x1}} + x0}\]

Reproduce

herbie shell --seed 2020047 
(FPCore (x0 x1)
  :name "(- (/ x0 (- 1 x1)) x0)"
  :precision binary64
  :pre (or (and (== x0 1.855) (== x1 0.000209)) (and (== x0 2.985) (== x1 0.0186)))

  :herbie-target
  (/ (* x0 x1) (- 1 x1))

  (- (/ x0 (- 1 x1)) x0))