\left(\left(\left(\left(\left(\left(x \cdot 18\right) \cdot y\right) \cdot z\right) \cdot t - \left(a \cdot 4\right) \cdot t\right) + b \cdot c\right) - \left(x \cdot 4\right) \cdot i\right) - \left(j \cdot 27\right) \cdot k
\begin{array}{l}
\mathbf{if}\;i \le -3.670913261354025603289537322978303432162 \cdot 10^{86}:\\
\;\;\;\;\left(t \cdot \left(\left(x \cdot \left(y \cdot 18\right)\right) \cdot z - a \cdot 4\right) + b \cdot c\right) - \left(\left(x \cdot 4\right) \cdot i + j \cdot \left(27 \cdot k\right)\right)\\
\mathbf{else}:\\
\;\;\;\;\left(t \cdot \left(\left(x \cdot 18\right) \cdot \left(z \cdot y\right) - a \cdot 4\right) + b \cdot c\right) - \left(\left(x \cdot 4\right) \cdot i + 27 \cdot \left(k \cdot j\right)\right)\\
\end{array}double f(double x, double y, double z, double t, double a, double b, double c, double i, double j, double k) {
double r71604 = x;
double r71605 = 18.0;
double r71606 = r71604 * r71605;
double r71607 = y;
double r71608 = r71606 * r71607;
double r71609 = z;
double r71610 = r71608 * r71609;
double r71611 = t;
double r71612 = r71610 * r71611;
double r71613 = a;
double r71614 = 4.0;
double r71615 = r71613 * r71614;
double r71616 = r71615 * r71611;
double r71617 = r71612 - r71616;
double r71618 = b;
double r71619 = c;
double r71620 = r71618 * r71619;
double r71621 = r71617 + r71620;
double r71622 = r71604 * r71614;
double r71623 = i;
double r71624 = r71622 * r71623;
double r71625 = r71621 - r71624;
double r71626 = j;
double r71627 = 27.0;
double r71628 = r71626 * r71627;
double r71629 = k;
double r71630 = r71628 * r71629;
double r71631 = r71625 - r71630;
return r71631;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i, double j, double k) {
double r71632 = i;
double r71633 = -3.6709132613540256e+86;
bool r71634 = r71632 <= r71633;
double r71635 = t;
double r71636 = x;
double r71637 = y;
double r71638 = 18.0;
double r71639 = r71637 * r71638;
double r71640 = r71636 * r71639;
double r71641 = z;
double r71642 = r71640 * r71641;
double r71643 = a;
double r71644 = 4.0;
double r71645 = r71643 * r71644;
double r71646 = r71642 - r71645;
double r71647 = r71635 * r71646;
double r71648 = b;
double r71649 = c;
double r71650 = r71648 * r71649;
double r71651 = r71647 + r71650;
double r71652 = r71636 * r71644;
double r71653 = r71652 * r71632;
double r71654 = j;
double r71655 = 27.0;
double r71656 = k;
double r71657 = r71655 * r71656;
double r71658 = r71654 * r71657;
double r71659 = r71653 + r71658;
double r71660 = r71651 - r71659;
double r71661 = r71636 * r71638;
double r71662 = r71641 * r71637;
double r71663 = r71661 * r71662;
double r71664 = r71663 - r71645;
double r71665 = r71635 * r71664;
double r71666 = r71665 + r71650;
double r71667 = r71656 * r71654;
double r71668 = r71655 * r71667;
double r71669 = r71653 + r71668;
double r71670 = r71666 - r71669;
double r71671 = r71634 ? r71660 : r71670;
return r71671;
}



Bits error versus x



Bits error versus y



Bits error versus z



Bits error versus t



Bits error versus a



Bits error versus b



Bits error versus c



Bits error versus i



Bits error versus j



Bits error versus k
Results
if i < -3.6709132613540256e+86Initial program 3.1
Simplified3.1
rmApplied associate-*l*3.3
rmApplied associate-*l*3.3
Simplified3.3
if -3.6709132613540256e+86 < i Initial program 6.1
Simplified6.1
rmApplied associate-*l*6.1
rmApplied associate-*l*6.3
Simplified6.3
rmApplied *-un-lft-identity6.3
Applied associate-*l*6.3
Simplified6.2
Final simplification5.7
herbie shell --seed 2019326
(FPCore (x y z t a b c i j k)
:name "Diagrams.Solve.Polynomial:cubForm from diagrams-solve-0.1"
:precision binary64
(- (- (+ (- (* (* (* (* x 18) y) z) t) (* (* a 4) t)) (* b c)) (* (* x 4) i)) (* (* j 27) k)))