Average Error: 5.9 → 6.0
Time: 7.8s
Precision: 64
\[\left(\left(\left(x - 0.5\right) \cdot \log x - x\right) + 0.91893853320467001\right) + \frac{\left(\left(y + 7.93650079365100015 \cdot 10^{-4}\right) \cdot z - 0.0027777777777778\right) \cdot z + 0.0833333333333329956}{x}\]
\[\left(\left(x - 0.5\right) \cdot \log \left(\sqrt{\sqrt{x}}\right) + \left(\log \left(\sqrt{\sqrt{x}}\right) \cdot \left(x - 0.5\right) + \left(\left(\log \left(\sqrt{x}\right) \cdot \left(x - 0.5\right) - x\right) + 0.91893853320467001\right)\right)\right) + \frac{\left(\left(y + 7.93650079365100015 \cdot 10^{-4}\right) \cdot z - 0.0027777777777778\right) \cdot z + 0.0833333333333329956}{x}\]
\left(\left(\left(x - 0.5\right) \cdot \log x - x\right) + 0.91893853320467001\right) + \frac{\left(\left(y + 7.93650079365100015 \cdot 10^{-4}\right) \cdot z - 0.0027777777777778\right) \cdot z + 0.0833333333333329956}{x}
\left(\left(x - 0.5\right) \cdot \log \left(\sqrt{\sqrt{x}}\right) + \left(\log \left(\sqrt{\sqrt{x}}\right) \cdot \left(x - 0.5\right) + \left(\left(\log \left(\sqrt{x}\right) \cdot \left(x - 0.5\right) - x\right) + 0.91893853320467001\right)\right)\right) + \frac{\left(\left(y + 7.93650079365100015 \cdot 10^{-4}\right) \cdot z - 0.0027777777777778\right) \cdot z + 0.0833333333333329956}{x}
double f(double x, double y, double z) {
        double r568109 = x;
        double r568110 = 0.5;
        double r568111 = r568109 - r568110;
        double r568112 = log(r568109);
        double r568113 = r568111 * r568112;
        double r568114 = r568113 - r568109;
        double r568115 = 0.91893853320467;
        double r568116 = r568114 + r568115;
        double r568117 = y;
        double r568118 = 0.0007936500793651;
        double r568119 = r568117 + r568118;
        double r568120 = z;
        double r568121 = r568119 * r568120;
        double r568122 = 0.0027777777777778;
        double r568123 = r568121 - r568122;
        double r568124 = r568123 * r568120;
        double r568125 = 0.083333333333333;
        double r568126 = r568124 + r568125;
        double r568127 = r568126 / r568109;
        double r568128 = r568116 + r568127;
        return r568128;
}

double f(double x, double y, double z) {
        double r568129 = x;
        double r568130 = 0.5;
        double r568131 = r568129 - r568130;
        double r568132 = sqrt(r568129);
        double r568133 = sqrt(r568132);
        double r568134 = log(r568133);
        double r568135 = r568131 * r568134;
        double r568136 = r568134 * r568131;
        double r568137 = log(r568132);
        double r568138 = r568137 * r568131;
        double r568139 = r568138 - r568129;
        double r568140 = 0.91893853320467;
        double r568141 = r568139 + r568140;
        double r568142 = r568136 + r568141;
        double r568143 = r568135 + r568142;
        double r568144 = y;
        double r568145 = 0.0007936500793651;
        double r568146 = r568144 + r568145;
        double r568147 = z;
        double r568148 = r568146 * r568147;
        double r568149 = 0.0027777777777778;
        double r568150 = r568148 - r568149;
        double r568151 = r568150 * r568147;
        double r568152 = 0.083333333333333;
        double r568153 = r568151 + r568152;
        double r568154 = r568153 / r568129;
        double r568155 = r568143 + r568154;
        return r568155;
}

Error

Bits error versus x

Bits error versus y

Bits error versus z

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Target

Original5.9
Target1.2
Herbie6.0
\[\left(\left(\left(x - 0.5\right) \cdot \log x + \left(0.91893853320467001 - x\right)\right) + \frac{0.0833333333333329956}{x}\right) + \frac{z}{x} \cdot \left(z \cdot \left(y + 7.93650079365100015 \cdot 10^{-4}\right) - 0.0027777777777778\right)\]

Derivation

  1. Initial program 5.9

    \[\left(\left(\left(x - 0.5\right) \cdot \log x - x\right) + 0.91893853320467001\right) + \frac{\left(\left(y + 7.93650079365100015 \cdot 10^{-4}\right) \cdot z - 0.0027777777777778\right) \cdot z + 0.0833333333333329956}{x}\]
  2. Using strategy rm
  3. Applied add-sqr-sqrt5.9

    \[\leadsto \left(\left(\left(x - 0.5\right) \cdot \log \color{blue}{\left(\sqrt{x} \cdot \sqrt{x}\right)} - x\right) + 0.91893853320467001\right) + \frac{\left(\left(y + 7.93650079365100015 \cdot 10^{-4}\right) \cdot z - 0.0027777777777778\right) \cdot z + 0.0833333333333329956}{x}\]
  4. Applied log-prod5.9

    \[\leadsto \left(\left(\left(x - 0.5\right) \cdot \color{blue}{\left(\log \left(\sqrt{x}\right) + \log \left(\sqrt{x}\right)\right)} - x\right) + 0.91893853320467001\right) + \frac{\left(\left(y + 7.93650079365100015 \cdot 10^{-4}\right) \cdot z - 0.0027777777777778\right) \cdot z + 0.0833333333333329956}{x}\]
  5. Applied distribute-lft-in5.9

    \[\leadsto \left(\left(\color{blue}{\left(\left(x - 0.5\right) \cdot \log \left(\sqrt{x}\right) + \left(x - 0.5\right) \cdot \log \left(\sqrt{x}\right)\right)} - x\right) + 0.91893853320467001\right) + \frac{\left(\left(y + 7.93650079365100015 \cdot 10^{-4}\right) \cdot z - 0.0027777777777778\right) \cdot z + 0.0833333333333329956}{x}\]
  6. Applied associate--l+5.9

    \[\leadsto \left(\color{blue}{\left(\left(x - 0.5\right) \cdot \log \left(\sqrt{x}\right) + \left(\left(x - 0.5\right) \cdot \log \left(\sqrt{x}\right) - x\right)\right)} + 0.91893853320467001\right) + \frac{\left(\left(y + 7.93650079365100015 \cdot 10^{-4}\right) \cdot z - 0.0027777777777778\right) \cdot z + 0.0833333333333329956}{x}\]
  7. Applied associate-+l+5.9

    \[\leadsto \color{blue}{\left(\left(x - 0.5\right) \cdot \log \left(\sqrt{x}\right) + \left(\left(\left(x - 0.5\right) \cdot \log \left(\sqrt{x}\right) - x\right) + 0.91893853320467001\right)\right)} + \frac{\left(\left(y + 7.93650079365100015 \cdot 10^{-4}\right) \cdot z - 0.0027777777777778\right) \cdot z + 0.0833333333333329956}{x}\]
  8. Simplified5.9

    \[\leadsto \left(\left(x - 0.5\right) \cdot \log \left(\sqrt{x}\right) + \color{blue}{\left(\left(\log \left(\sqrt{x}\right) \cdot \left(x - 0.5\right) - x\right) + 0.91893853320467001\right)}\right) + \frac{\left(\left(y + 7.93650079365100015 \cdot 10^{-4}\right) \cdot z - 0.0027777777777778\right) \cdot z + 0.0833333333333329956}{x}\]
  9. Using strategy rm
  10. Applied add-sqr-sqrt5.9

    \[\leadsto \left(\left(x - 0.5\right) \cdot \log \left(\sqrt{\color{blue}{\sqrt{x} \cdot \sqrt{x}}}\right) + \left(\left(\log \left(\sqrt{x}\right) \cdot \left(x - 0.5\right) - x\right) + 0.91893853320467001\right)\right) + \frac{\left(\left(y + 7.93650079365100015 \cdot 10^{-4}\right) \cdot z - 0.0027777777777778\right) \cdot z + 0.0833333333333329956}{x}\]
  11. Applied sqrt-prod5.9

    \[\leadsto \left(\left(x - 0.5\right) \cdot \log \color{blue}{\left(\sqrt{\sqrt{x}} \cdot \sqrt{\sqrt{x}}\right)} + \left(\left(\log \left(\sqrt{x}\right) \cdot \left(x - 0.5\right) - x\right) + 0.91893853320467001\right)\right) + \frac{\left(\left(y + 7.93650079365100015 \cdot 10^{-4}\right) \cdot z - 0.0027777777777778\right) \cdot z + 0.0833333333333329956}{x}\]
  12. Applied log-prod5.9

    \[\leadsto \left(\left(x - 0.5\right) \cdot \color{blue}{\left(\log \left(\sqrt{\sqrt{x}}\right) + \log \left(\sqrt{\sqrt{x}}\right)\right)} + \left(\left(\log \left(\sqrt{x}\right) \cdot \left(x - 0.5\right) - x\right) + 0.91893853320467001\right)\right) + \frac{\left(\left(y + 7.93650079365100015 \cdot 10^{-4}\right) \cdot z - 0.0027777777777778\right) \cdot z + 0.0833333333333329956}{x}\]
  13. Applied distribute-lft-in5.9

    \[\leadsto \left(\color{blue}{\left(\left(x - 0.5\right) \cdot \log \left(\sqrt{\sqrt{x}}\right) + \left(x - 0.5\right) \cdot \log \left(\sqrt{\sqrt{x}}\right)\right)} + \left(\left(\log \left(\sqrt{x}\right) \cdot \left(x - 0.5\right) - x\right) + 0.91893853320467001\right)\right) + \frac{\left(\left(y + 7.93650079365100015 \cdot 10^{-4}\right) \cdot z - 0.0027777777777778\right) \cdot z + 0.0833333333333329956}{x}\]
  14. Applied associate-+l+6.0

    \[\leadsto \color{blue}{\left(\left(x - 0.5\right) \cdot \log \left(\sqrt{\sqrt{x}}\right) + \left(\left(x - 0.5\right) \cdot \log \left(\sqrt{\sqrt{x}}\right) + \left(\left(\log \left(\sqrt{x}\right) \cdot \left(x - 0.5\right) - x\right) + 0.91893853320467001\right)\right)\right)} + \frac{\left(\left(y + 7.93650079365100015 \cdot 10^{-4}\right) \cdot z - 0.0027777777777778\right) \cdot z + 0.0833333333333329956}{x}\]
  15. Simplified6.0

    \[\leadsto \left(\left(x - 0.5\right) \cdot \log \left(\sqrt{\sqrt{x}}\right) + \color{blue}{\left(\log \left(\sqrt{\sqrt{x}}\right) \cdot \left(x - 0.5\right) + \left(\left(\log \left(\sqrt{x}\right) \cdot \left(x - 0.5\right) - x\right) + 0.91893853320467001\right)\right)}\right) + \frac{\left(\left(y + 7.93650079365100015 \cdot 10^{-4}\right) \cdot z - 0.0027777777777778\right) \cdot z + 0.0833333333333329956}{x}\]
  16. Final simplification6.0

    \[\leadsto \left(\left(x - 0.5\right) \cdot \log \left(\sqrt{\sqrt{x}}\right) + \left(\log \left(\sqrt{\sqrt{x}}\right) \cdot \left(x - 0.5\right) + \left(\left(\log \left(\sqrt{x}\right) \cdot \left(x - 0.5\right) - x\right) + 0.91893853320467001\right)\right)\right) + \frac{\left(\left(y + 7.93650079365100015 \cdot 10^{-4}\right) \cdot z - 0.0027777777777778\right) \cdot z + 0.0833333333333329956}{x}\]

Reproduce

herbie shell --seed 2020027 
(FPCore (x y z)
  :name "Numeric.SpecFunctions:$slogFactorial from math-functions-0.1.5.2, B"
  :precision binary64

  :herbie-target
  (+ (+ (+ (* (- x 0.5) (log x)) (- 0.91893853320467 x)) (/ 0.083333333333333 x)) (* (/ z x) (- (* z (+ y 0.0007936500793651)) 0.0027777777777778)))

  (+ (+ (- (* (- x 0.5) (log x)) x) 0.91893853320467) (/ (+ (* (- (* (+ y 0.0007936500793651) z) 0.0027777777777778) z) 0.083333333333333) x)))