\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y}\frac{x}{\frac{\sqrt[3]{\sqrt[3]{y} \cdot \sqrt[3]{y}} \cdot \sqrt[3]{\sqrt[3]{y}}}{\sqrt[3]{{e}^{\left(\mathsf{fma}\left(\log a, t - 1, \log z \cdot y - b\right)\right)}}}} \cdot \frac{1}{\frac{\sqrt[3]{y} \cdot \sqrt[3]{y}}{\sqrt[3]{e^{\mathsf{fma}\left(\log a, t - 1, \log z \cdot y - b\right)}} \cdot \sqrt[3]{e^{\mathsf{fma}\left(\log a, t - 1, \log z \cdot y - b\right)}}}}double f(double x, double y, double z, double t, double a, double b) {
double r3257471 = x;
double r3257472 = y;
double r3257473 = z;
double r3257474 = log(r3257473);
double r3257475 = r3257472 * r3257474;
double r3257476 = t;
double r3257477 = 1.0;
double r3257478 = r3257476 - r3257477;
double r3257479 = a;
double r3257480 = log(r3257479);
double r3257481 = r3257478 * r3257480;
double r3257482 = r3257475 + r3257481;
double r3257483 = b;
double r3257484 = r3257482 - r3257483;
double r3257485 = exp(r3257484);
double r3257486 = r3257471 * r3257485;
double r3257487 = r3257486 / r3257472;
return r3257487;
}
double f(double x, double y, double z, double t, double a, double b) {
double r3257488 = x;
double r3257489 = y;
double r3257490 = cbrt(r3257489);
double r3257491 = r3257490 * r3257490;
double r3257492 = cbrt(r3257491);
double r3257493 = cbrt(r3257490);
double r3257494 = r3257492 * r3257493;
double r3257495 = exp(1.0);
double r3257496 = a;
double r3257497 = log(r3257496);
double r3257498 = t;
double r3257499 = 1.0;
double r3257500 = r3257498 - r3257499;
double r3257501 = z;
double r3257502 = log(r3257501);
double r3257503 = r3257502 * r3257489;
double r3257504 = b;
double r3257505 = r3257503 - r3257504;
double r3257506 = fma(r3257497, r3257500, r3257505);
double r3257507 = pow(r3257495, r3257506);
double r3257508 = cbrt(r3257507);
double r3257509 = r3257494 / r3257508;
double r3257510 = r3257488 / r3257509;
double r3257511 = 1.0;
double r3257512 = exp(r3257506);
double r3257513 = cbrt(r3257512);
double r3257514 = r3257513 * r3257513;
double r3257515 = r3257491 / r3257514;
double r3257516 = r3257511 / r3257515;
double r3257517 = r3257510 * r3257516;
return r3257517;
}



Bits error versus x



Bits error versus y



Bits error versus z



Bits error versus t



Bits error versus a



Bits error versus b
Initial program 2.0
rmApplied associate-/l*1.9
Simplified1.9
rmApplied add-cube-cbrt1.9
Applied add-cube-cbrt1.9
Applied times-frac1.9
Applied *-un-lft-identity1.9
Applied times-frac1.1
rmApplied *-un-lft-identity1.1
Applied exp-prod1.1
Simplified1.1
rmApplied add-cube-cbrt1.1
Applied cbrt-prod1.1
Final simplification1.1
herbie shell --seed 2019171 +o rules:numerics
(FPCore (x y z t a b)
:name "Numeric.SpecFunctions:incompleteBetaWorker from math-functions-0.1.5.2"
(/ (* x (exp (- (+ (* y (log z)) (* (- t 1.0) (log a))) b))) y))