x \cdot \frac{\frac{y}{z} \cdot t}{t}\begin{array}{l}
\mathbf{if}\;\frac{y}{z} = -\infty:\\
\;\;\;\;\frac{x \cdot y}{z}\\
\mathbf{elif}\;\frac{y}{z} \le -3.5482495456651053 \cdot 10^{-302}:\\
\;\;\;\;\frac{y}{z} \cdot x\\
\mathbf{else}:\\
\;\;\;\;\frac{\sqrt[3]{x} \cdot \sqrt[3]{x}}{\sqrt[3]{z} \cdot \sqrt[3]{z}} \cdot \left(y \cdot \frac{\sqrt[3]{x}}{\sqrt[3]{z}}\right)\\
\end{array}double f(double x, double y, double z, double t) {
double r2749248 = x;
double r2749249 = y;
double r2749250 = z;
double r2749251 = r2749249 / r2749250;
double r2749252 = t;
double r2749253 = r2749251 * r2749252;
double r2749254 = r2749253 / r2749252;
double r2749255 = r2749248 * r2749254;
return r2749255;
}
double f(double x, double y, double z, double __attribute__((unused)) t) {
double r2749256 = y;
double r2749257 = z;
double r2749258 = r2749256 / r2749257;
double r2749259 = -inf.0;
bool r2749260 = r2749258 <= r2749259;
double r2749261 = x;
double r2749262 = r2749261 * r2749256;
double r2749263 = r2749262 / r2749257;
double r2749264 = -3.5482495456651053e-302;
bool r2749265 = r2749258 <= r2749264;
double r2749266 = r2749258 * r2749261;
double r2749267 = cbrt(r2749261);
double r2749268 = r2749267 * r2749267;
double r2749269 = cbrt(r2749257);
double r2749270 = r2749269 * r2749269;
double r2749271 = r2749268 / r2749270;
double r2749272 = r2749267 / r2749269;
double r2749273 = r2749256 * r2749272;
double r2749274 = r2749271 * r2749273;
double r2749275 = r2749265 ? r2749266 : r2749274;
double r2749276 = r2749260 ? r2749263 : r2749275;
return r2749276;
}



Bits error versus x



Bits error versus y



Bits error versus z



Bits error versus t
Results
if (/ y z) < -inf.0Initial program 60.1
Simplified0.2
Taylor expanded around 0 0.3
if -inf.0 < (/ y z) < -3.5482495456651053e-302Initial program 10.9
Simplified7.8
rmApplied div-inv7.9
Applied associate-*l*0.3
Simplified0.2
if -3.5482495456651053e-302 < (/ y z) Initial program 15.1
Simplified5.4
rmApplied add-cube-cbrt6.2
Applied add-cube-cbrt6.3
Applied times-frac6.3
Applied associate-*l*1.8
Final simplification1.1
herbie shell --seed 2019144 +o rules:numerics
(FPCore (x y z t)
:name "Graphics.Rendering.Chart.Backend.Diagrams:calcFontMetrics from Chart-diagrams-1.5.1"
(* x (/ (* (/ y z) t) t)))