Average Error: 2.0 → 0.5
Time: 16.9s
Precision: 64
\[x \cdot e^{y \cdot \left(\log z - t\right) + a \cdot \left(\log \left(1 - z\right) - b\right)}\]
\[\left(x \cdot \sqrt{e^{y \cdot \left(\log z - t\right) + a \cdot \left(\left(\log 1 - \left(\frac{1}{2} \cdot \frac{{z}^{2}}{{1}^{2}} + 1 \cdot z\right)\right) - b\right)}}\right) \cdot \sqrt{e^{y \cdot \left(\log z - t\right) + a \cdot \left(\left(\log 1 - \left(\frac{1}{2} \cdot \frac{{z}^{2}}{{1}^{2}} + 1 \cdot z\right)\right) - b\right)}}\]
x \cdot e^{y \cdot \left(\log z - t\right) + a \cdot \left(\log \left(1 - z\right) - b\right)}
\left(x \cdot \sqrt{e^{y \cdot \left(\log z - t\right) + a \cdot \left(\left(\log 1 - \left(\frac{1}{2} \cdot \frac{{z}^{2}}{{1}^{2}} + 1 \cdot z\right)\right) - b\right)}}\right) \cdot \sqrt{e^{y \cdot \left(\log z - t\right) + a \cdot \left(\left(\log 1 - \left(\frac{1}{2} \cdot \frac{{z}^{2}}{{1}^{2}} + 1 \cdot z\right)\right) - b\right)}}
double f(double x, double y, double z, double t, double a, double b) {
        double r120103 = x;
        double r120104 = y;
        double r120105 = z;
        double r120106 = log(r120105);
        double r120107 = t;
        double r120108 = r120106 - r120107;
        double r120109 = r120104 * r120108;
        double r120110 = a;
        double r120111 = 1.0;
        double r120112 = r120111 - r120105;
        double r120113 = log(r120112);
        double r120114 = b;
        double r120115 = r120113 - r120114;
        double r120116 = r120110 * r120115;
        double r120117 = r120109 + r120116;
        double r120118 = exp(r120117);
        double r120119 = r120103 * r120118;
        return r120119;
}

double f(double x, double y, double z, double t, double a, double b) {
        double r120120 = x;
        double r120121 = y;
        double r120122 = z;
        double r120123 = log(r120122);
        double r120124 = t;
        double r120125 = r120123 - r120124;
        double r120126 = r120121 * r120125;
        double r120127 = a;
        double r120128 = 1.0;
        double r120129 = log(r120128);
        double r120130 = 0.5;
        double r120131 = 2.0;
        double r120132 = pow(r120122, r120131);
        double r120133 = pow(r120128, r120131);
        double r120134 = r120132 / r120133;
        double r120135 = r120130 * r120134;
        double r120136 = r120128 * r120122;
        double r120137 = r120135 + r120136;
        double r120138 = r120129 - r120137;
        double r120139 = b;
        double r120140 = r120138 - r120139;
        double r120141 = r120127 * r120140;
        double r120142 = r120126 + r120141;
        double r120143 = exp(r120142);
        double r120144 = sqrt(r120143);
        double r120145 = r120120 * r120144;
        double r120146 = r120145 * r120144;
        return r120146;
}

Error

Bits error versus x

Bits error versus y

Bits error versus z

Bits error versus t

Bits error versus a

Bits error versus b

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 2.0

    \[x \cdot e^{y \cdot \left(\log z - t\right) + a \cdot \left(\log \left(1 - z\right) - b\right)}\]
  2. Taylor expanded around 0 0.5

    \[\leadsto x \cdot e^{y \cdot \left(\log z - t\right) + a \cdot \left(\color{blue}{\left(\log 1 - \left(\frac{1}{2} \cdot \frac{{z}^{2}}{{1}^{2}} + 1 \cdot z\right)\right)} - b\right)}\]
  3. Using strategy rm
  4. Applied add-sqr-sqrt0.5

    \[\leadsto x \cdot \color{blue}{\left(\sqrt{e^{y \cdot \left(\log z - t\right) + a \cdot \left(\left(\log 1 - \left(\frac{1}{2} \cdot \frac{{z}^{2}}{{1}^{2}} + 1 \cdot z\right)\right) - b\right)}} \cdot \sqrt{e^{y \cdot \left(\log z - t\right) + a \cdot \left(\left(\log 1 - \left(\frac{1}{2} \cdot \frac{{z}^{2}}{{1}^{2}} + 1 \cdot z\right)\right) - b\right)}}\right)}\]
  5. Applied associate-*r*0.5

    \[\leadsto \color{blue}{\left(x \cdot \sqrt{e^{y \cdot \left(\log z - t\right) + a \cdot \left(\left(\log 1 - \left(\frac{1}{2} \cdot \frac{{z}^{2}}{{1}^{2}} + 1 \cdot z\right)\right) - b\right)}}\right) \cdot \sqrt{e^{y \cdot \left(\log z - t\right) + a \cdot \left(\left(\log 1 - \left(\frac{1}{2} \cdot \frac{{z}^{2}}{{1}^{2}} + 1 \cdot z\right)\right) - b\right)}}}\]
  6. Final simplification0.5

    \[\leadsto \left(x \cdot \sqrt{e^{y \cdot \left(\log z - t\right) + a \cdot \left(\left(\log 1 - \left(\frac{1}{2} \cdot \frac{{z}^{2}}{{1}^{2}} + 1 \cdot z\right)\right) - b\right)}}\right) \cdot \sqrt{e^{y \cdot \left(\log z - t\right) + a \cdot \left(\left(\log 1 - \left(\frac{1}{2} \cdot \frac{{z}^{2}}{{1}^{2}} + 1 \cdot z\right)\right) - b\right)}}\]

Reproduce

herbie shell --seed 2020042 
(FPCore (x y z t a b)
  :name "Numeric.SpecFunctions:incompleteBetaApprox from math-functions-0.1.5.2, B"
  :precision binary64
  (* x (exp (+ (* y (- (log z) t)) (* a (- (log (- 1 z)) b))))))