\left(\left(\left(\left(\left(x \cdot y - z \cdot t\right) \cdot \left(a \cdot b - c \cdot i\right) - \left(x \cdot j - z \cdot k\right) \cdot \left(y0 \cdot b - y1 \cdot i\right)\right) + \left(x \cdot y2 - z \cdot y3\right) \cdot \left(y0 \cdot c - y1 \cdot a\right)\right) + \left(t \cdot j - y \cdot k\right) \cdot \left(y4 \cdot b - y5 \cdot i\right)\right) - \left(t \cdot y2 - y \cdot y3\right) \cdot \left(y4 \cdot c - y5 \cdot a\right)\right) + \left(k \cdot y2 - j \cdot y3\right) \cdot \left(y4 \cdot y1 - y5 \cdot y0\right)
\begin{array}{l}
\mathbf{if}\;y0 \le -2.26377742458686896 \cdot 10^{-42}:\\
\;\;\;\;\left(\left(\left(\left(\left(x \cdot y - z \cdot t\right) \cdot \left(a \cdot b - c \cdot i\right) - \left(k \cdot \left(i \cdot \left(z \cdot y1\right)\right) - \left(i \cdot \left(j \cdot \left(y1 \cdot x\right)\right) + y0 \cdot \left(z \cdot \left(k \cdot b\right)\right)\right)\right)\right) + \left(x \cdot y2 - z \cdot y3\right) \cdot \left(y0 \cdot c - y1 \cdot a\right)\right) + \left(t \cdot j - y \cdot k\right) \cdot \left(y4 \cdot b - y5 \cdot i\right)\right) - \left(\sqrt[3]{t \cdot y2 - y \cdot y3} \cdot \sqrt[3]{t \cdot y2 - y \cdot y3}\right) \cdot \left(\sqrt[3]{t \cdot y2 - y \cdot y3} \cdot \left(y4 \cdot c - y5 \cdot a\right)\right)\right) + \left(k \cdot y2 - j \cdot y3\right) \cdot \left(y4 \cdot y1 - y5 \cdot y0\right)\\
\mathbf{elif}\;y0 \le -2.24790019441945138 \cdot 10^{-120}:\\
\;\;\;\;\left(\left(\left(\left(\left(x \cdot y - z \cdot t\right) \cdot \left(a \cdot b - c \cdot i\right) - \left(x \cdot j - z \cdot k\right) \cdot \left(y0 \cdot b - y1 \cdot i\right)\right) + \left(x \cdot y2 - z \cdot y3\right) \cdot \left(y0 \cdot c - y1 \cdot a\right)\right) + \left(t \cdot j - y \cdot k\right) \cdot \left(y4 \cdot b - y5 \cdot i\right)\right) - \left(a \cdot \left(y3 \cdot \left(y \cdot y5\right)\right) - \left(y \cdot \left(y3 \cdot \left(y4 \cdot c\right)\right) + y5 \cdot \left(a \cdot \left(y2 \cdot t\right)\right)\right)\right)\right) + \left(k \cdot y2 - j \cdot y3\right) \cdot \left(y4 \cdot y1 - y5 \cdot y0\right)\\
\mathbf{elif}\;y0 \le -2.2913568130925792 \cdot 10^{-135}:\\
\;\;\;\;\left(\left(\left(\left(\left(x \cdot y - z \cdot t\right) \cdot \left(a \cdot b - c \cdot i\right) - \left(k \cdot \left(i \cdot \left(z \cdot y1\right)\right) - \left(i \cdot \left(j \cdot \left(y1 \cdot x\right)\right) + y0 \cdot \left(z \cdot \left(k \cdot b\right)\right)\right)\right)\right) + \left(x \cdot y2 - z \cdot y3\right) \cdot \left(y0 \cdot c - y1 \cdot a\right)\right) + \left(t \cdot j - y \cdot k\right) \cdot \left(y4 \cdot b - y5 \cdot i\right)\right) - \left(\sqrt[3]{t \cdot y2 - y \cdot y3} \cdot \sqrt[3]{t \cdot y2 - y \cdot y3}\right) \cdot \left(\sqrt[3]{t \cdot y2 - y \cdot y3} \cdot \left(y4 \cdot c - y5 \cdot a\right)\right)\right) + \left(k \cdot y2 - j \cdot y3\right) \cdot \left(y4 \cdot y1 - y5 \cdot y0\right)\\
\mathbf{elif}\;y0 \le 1.7234977404476049 \cdot 10^{-301}:\\
\;\;\;\;\left(\left(\left(\left(x \cdot y - z \cdot t\right) \cdot \left(a \cdot b - c \cdot i\right) - \left(x \cdot j - z \cdot k\right) \cdot \left(y0 \cdot b - y1 \cdot i\right)\right) + \left(x \cdot y2 - z \cdot y3\right) \cdot \left(y0 \cdot c - y1 \cdot a\right)\right) + \left(t \cdot j - y \cdot k\right) \cdot \left(y4 \cdot b - y5 \cdot i\right)\right) - \left(t \cdot y2 - y \cdot y3\right) \cdot \left(y4 \cdot c - y5 \cdot a\right)\\
\mathbf{elif}\;y0 \le 1.64430238790659205 \cdot 10^{-240}:\\
\;\;\;\;\left(\left(\left(\left(x \cdot y - z \cdot t\right) \cdot \left(a \cdot b - c \cdot i\right) - \left(x \cdot j - z \cdot k\right) \cdot \left(y0 \cdot b - y1 \cdot i\right)\right) + \left(x \cdot y2 - z \cdot y3\right) \cdot \left(y0 \cdot c - y1 \cdot a\right)\right) + \left(k \cdot \left(i \cdot \left(y \cdot y5\right)\right) - \left(t \cdot \left(i \cdot \left(j \cdot y5\right)\right) + k \cdot \left(y4 \cdot \left(y \cdot b\right)\right)\right)\right)\right) + \left(k \cdot y2 - j \cdot y3\right) \cdot \left(y4 \cdot y1 - y5 \cdot y0\right)\\
\mathbf{elif}\;y0 \le 1.397620611129866 \cdot 10^{-229}:\\
\;\;\;\;\left(k \cdot y2 - j \cdot y3\right) \cdot \left(y4 \cdot y1 - y5 \cdot y0\right) + \left(\left(\left(k \cdot \left(i \cdot \left(y \cdot y5\right)\right) - \left(t \cdot \left(i \cdot \left(j \cdot y5\right)\right) + k \cdot \left(y4 \cdot \left(y \cdot b\right)\right)\right)\right) + \left(\left(-\left(x \cdot j - z \cdot k\right) \cdot \left(y0 \cdot b - y1 \cdot i\right)\right) + \left(x \cdot y2 - z \cdot y3\right) \cdot \left(y0 \cdot c - y1 \cdot a\right)\right)\right) - \left(t \cdot y2 - y \cdot y3\right) \cdot \left(y4 \cdot c - y5 \cdot a\right)\right)\\
\mathbf{elif}\;y0 \le 3.538677818990396 \cdot 10^{-87}:\\
\;\;\;\;\left(\left(\left(\left(\left(x \cdot y - z \cdot t\right) \cdot \left(a \cdot b - c \cdot i\right) - \left(x \cdot j - z \cdot k\right) \cdot \left(y0 \cdot b - y1 \cdot i\right)\right) + \left(x \cdot y2 - z \cdot y3\right) \cdot \left(y0 \cdot c - y1 \cdot a\right)\right) + \left(t \cdot j - y \cdot k\right) \cdot \left(y4 \cdot b - y5 \cdot i\right)\right) - \left(t \cdot y2 - y \cdot y3\right) \cdot \left(y4 \cdot c - y5 \cdot a\right)\right) + \left(y0 \cdot \left(y3 \cdot \left(j \cdot y5\right) - y2 \cdot \left(k \cdot y5\right)\right) - y1 \cdot \left(y3 \cdot \left(j \cdot y4\right)\right)\right)\\
\mathbf{elif}\;y0 \le 7.86451644427712822 \cdot 10^{-41}:\\
\;\;\;\;\left(k \cdot y2 - j \cdot y3\right) \cdot \left(y4 \cdot y1 - y5 \cdot y0\right) + \left(\left(\left(x \cdot y2 - z \cdot y3\right) \cdot \left(y0 \cdot c - y1 \cdot a\right) + \left(\left(x \cdot y - z \cdot t\right) \cdot \left(a \cdot b - c \cdot i\right) - \left(x \cdot j - z \cdot k\right) \cdot \left(y0 \cdot b - y1 \cdot i\right)\right)\right) - \left(t \cdot y2 - y \cdot y3\right) \cdot \left(y4 \cdot c - y5 \cdot a\right)\right)\\
\mathbf{elif}\;y0 \le 7.5112716847524006 \cdot 10^{-24}:\\
\;\;\;\;\left(\left(\left(\left(x \cdot y - z \cdot t\right) \cdot \left(a \cdot b - c \cdot i\right) - \left(x \cdot j - z \cdot k\right) \cdot \left(y0 \cdot b - y1 \cdot i\right)\right) + \left(x \cdot y2 - z \cdot y3\right) \cdot \left(y0 \cdot c - y1 \cdot a\right)\right) + \left(t \cdot j - y \cdot k\right) \cdot \left(y4 \cdot b - y5 \cdot i\right)\right) - \left(t \cdot y2 - y \cdot y3\right) \cdot \left(y4 \cdot c - y5 \cdot a\right)\\
\mathbf{else}:\\
\;\;\;\;\left(\left(\left(\left(\left(x \cdot y - z \cdot t\right) \cdot \left(a \cdot b - c \cdot i\right) - \left(x \cdot j - z \cdot k\right) \cdot \left(y0 \cdot b - y1 \cdot i\right)\right) + \left(x \cdot y2 - z \cdot y3\right) \cdot \left(y0 \cdot c - y1 \cdot a\right)\right) + \left(t \cdot j - y \cdot k\right) \cdot \left(y4 \cdot b - y5 \cdot i\right)\right) - \left(t \cdot y2 - y \cdot y3\right) \cdot \left(y4 \cdot c - y5 \cdot a\right)\right) + \left(y0 \cdot \left(y3 \cdot \left(j \cdot y5\right) - y2 \cdot \left(k \cdot y5\right)\right) - y1 \cdot \left(y3 \cdot \left(j \cdot y4\right)\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 y0, double y1, double y2, double y3, double y4, double y5) {
double r443052 = x;
double r443053 = y;
double r443054 = r443052 * r443053;
double r443055 = z;
double r443056 = t;
double r443057 = r443055 * r443056;
double r443058 = r443054 - r443057;
double r443059 = a;
double r443060 = b;
double r443061 = r443059 * r443060;
double r443062 = c;
double r443063 = i;
double r443064 = r443062 * r443063;
double r443065 = r443061 - r443064;
double r443066 = r443058 * r443065;
double r443067 = j;
double r443068 = r443052 * r443067;
double r443069 = k;
double r443070 = r443055 * r443069;
double r443071 = r443068 - r443070;
double r443072 = y0;
double r443073 = r443072 * r443060;
double r443074 = y1;
double r443075 = r443074 * r443063;
double r443076 = r443073 - r443075;
double r443077 = r443071 * r443076;
double r443078 = r443066 - r443077;
double r443079 = y2;
double r443080 = r443052 * r443079;
double r443081 = y3;
double r443082 = r443055 * r443081;
double r443083 = r443080 - r443082;
double r443084 = r443072 * r443062;
double r443085 = r443074 * r443059;
double r443086 = r443084 - r443085;
double r443087 = r443083 * r443086;
double r443088 = r443078 + r443087;
double r443089 = r443056 * r443067;
double r443090 = r443053 * r443069;
double r443091 = r443089 - r443090;
double r443092 = y4;
double r443093 = r443092 * r443060;
double r443094 = y5;
double r443095 = r443094 * r443063;
double r443096 = r443093 - r443095;
double r443097 = r443091 * r443096;
double r443098 = r443088 + r443097;
double r443099 = r443056 * r443079;
double r443100 = r443053 * r443081;
double r443101 = r443099 - r443100;
double r443102 = r443092 * r443062;
double r443103 = r443094 * r443059;
double r443104 = r443102 - r443103;
double r443105 = r443101 * r443104;
double r443106 = r443098 - r443105;
double r443107 = r443069 * r443079;
double r443108 = r443067 * r443081;
double r443109 = r443107 - r443108;
double r443110 = r443092 * r443074;
double r443111 = r443094 * r443072;
double r443112 = r443110 - r443111;
double r443113 = r443109 * r443112;
double r443114 = r443106 + r443113;
return r443114;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i, double j, double k, double y0, double y1, double y2, double y3, double y4, double y5) {
double r443115 = y0;
double r443116 = -2.263777424586869e-42;
bool r443117 = r443115 <= r443116;
double r443118 = x;
double r443119 = y;
double r443120 = r443118 * r443119;
double r443121 = z;
double r443122 = t;
double r443123 = r443121 * r443122;
double r443124 = r443120 - r443123;
double r443125 = a;
double r443126 = b;
double r443127 = r443125 * r443126;
double r443128 = c;
double r443129 = i;
double r443130 = r443128 * r443129;
double r443131 = r443127 - r443130;
double r443132 = r443124 * r443131;
double r443133 = k;
double r443134 = y1;
double r443135 = r443121 * r443134;
double r443136 = r443129 * r443135;
double r443137 = r443133 * r443136;
double r443138 = j;
double r443139 = r443134 * r443118;
double r443140 = r443138 * r443139;
double r443141 = r443129 * r443140;
double r443142 = r443133 * r443126;
double r443143 = r443121 * r443142;
double r443144 = r443115 * r443143;
double r443145 = r443141 + r443144;
double r443146 = r443137 - r443145;
double r443147 = r443132 - r443146;
double r443148 = y2;
double r443149 = r443118 * r443148;
double r443150 = y3;
double r443151 = r443121 * r443150;
double r443152 = r443149 - r443151;
double r443153 = r443115 * r443128;
double r443154 = r443134 * r443125;
double r443155 = r443153 - r443154;
double r443156 = r443152 * r443155;
double r443157 = r443147 + r443156;
double r443158 = r443122 * r443138;
double r443159 = r443119 * r443133;
double r443160 = r443158 - r443159;
double r443161 = y4;
double r443162 = r443161 * r443126;
double r443163 = y5;
double r443164 = r443163 * r443129;
double r443165 = r443162 - r443164;
double r443166 = r443160 * r443165;
double r443167 = r443157 + r443166;
double r443168 = r443122 * r443148;
double r443169 = r443119 * r443150;
double r443170 = r443168 - r443169;
double r443171 = cbrt(r443170);
double r443172 = r443171 * r443171;
double r443173 = r443161 * r443128;
double r443174 = r443163 * r443125;
double r443175 = r443173 - r443174;
double r443176 = r443171 * r443175;
double r443177 = r443172 * r443176;
double r443178 = r443167 - r443177;
double r443179 = r443133 * r443148;
double r443180 = r443138 * r443150;
double r443181 = r443179 - r443180;
double r443182 = r443161 * r443134;
double r443183 = r443163 * r443115;
double r443184 = r443182 - r443183;
double r443185 = r443181 * r443184;
double r443186 = r443178 + r443185;
double r443187 = -2.2479001944194514e-120;
bool r443188 = r443115 <= r443187;
double r443189 = r443118 * r443138;
double r443190 = r443121 * r443133;
double r443191 = r443189 - r443190;
double r443192 = r443115 * r443126;
double r443193 = r443134 * r443129;
double r443194 = r443192 - r443193;
double r443195 = r443191 * r443194;
double r443196 = r443132 - r443195;
double r443197 = r443196 + r443156;
double r443198 = r443197 + r443166;
double r443199 = r443119 * r443163;
double r443200 = r443150 * r443199;
double r443201 = r443125 * r443200;
double r443202 = r443150 * r443173;
double r443203 = r443119 * r443202;
double r443204 = r443148 * r443122;
double r443205 = r443125 * r443204;
double r443206 = r443163 * r443205;
double r443207 = r443203 + r443206;
double r443208 = r443201 - r443207;
double r443209 = r443198 - r443208;
double r443210 = r443209 + r443185;
double r443211 = -2.2913568130925792e-135;
bool r443212 = r443115 <= r443211;
double r443213 = 1.723497740447605e-301;
bool r443214 = r443115 <= r443213;
double r443215 = r443170 * r443175;
double r443216 = r443198 - r443215;
double r443217 = 1.644302387906592e-240;
bool r443218 = r443115 <= r443217;
double r443219 = r443129 * r443199;
double r443220 = r443133 * r443219;
double r443221 = r443138 * r443163;
double r443222 = r443129 * r443221;
double r443223 = r443122 * r443222;
double r443224 = r443119 * r443126;
double r443225 = r443161 * r443224;
double r443226 = r443133 * r443225;
double r443227 = r443223 + r443226;
double r443228 = r443220 - r443227;
double r443229 = r443197 + r443228;
double r443230 = r443229 + r443185;
double r443231 = 1.397620611129866e-229;
bool r443232 = r443115 <= r443231;
double r443233 = -r443195;
double r443234 = r443233 + r443156;
double r443235 = r443228 + r443234;
double r443236 = r443235 - r443215;
double r443237 = r443185 + r443236;
double r443238 = 3.5386778189903964e-87;
bool r443239 = r443115 <= r443238;
double r443240 = r443150 * r443221;
double r443241 = r443133 * r443163;
double r443242 = r443148 * r443241;
double r443243 = r443240 - r443242;
double r443244 = r443115 * r443243;
double r443245 = r443138 * r443161;
double r443246 = r443150 * r443245;
double r443247 = r443134 * r443246;
double r443248 = r443244 - r443247;
double r443249 = r443216 + r443248;
double r443250 = 7.864516444277128e-41;
bool r443251 = r443115 <= r443250;
double r443252 = r443156 + r443196;
double r443253 = r443252 - r443215;
double r443254 = r443185 + r443253;
double r443255 = 7.5112716847524e-24;
bool r443256 = r443115 <= r443255;
double r443257 = r443256 ? r443216 : r443249;
double r443258 = r443251 ? r443254 : r443257;
double r443259 = r443239 ? r443249 : r443258;
double r443260 = r443232 ? r443237 : r443259;
double r443261 = r443218 ? r443230 : r443260;
double r443262 = r443214 ? r443216 : r443261;
double r443263 = r443212 ? r443186 : r443262;
double r443264 = r443188 ? r443210 : r443263;
double r443265 = r443117 ? r443186 : r443264;
return r443265;
}




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




Bits error versus y0




Bits error versus y1




Bits error versus y2




Bits error versus y3




Bits error versus y4




Bits error versus y5
Results
| Original | 26.6 |
|---|---|
| Target | 30.4 |
| Herbie | 30.2 |
if y0 < -2.263777424586869e-42 or -2.2479001944194514e-120 < y0 < -2.2913568130925792e-135Initial program 27.9
rmApplied add-cube-cbrt27.9
Applied associate-*l*27.9
Taylor expanded around inf 31.4
if -2.263777424586869e-42 < y0 < -2.2479001944194514e-120Initial program 24.4
Taylor expanded around inf 26.5
if -2.2913568130925792e-135 < y0 < 1.723497740447605e-301 or 7.864516444277128e-41 < y0 < 7.5112716847524e-24Initial program 26.3
Taylor expanded around 0 29.4
if 1.723497740447605e-301 < y0 < 1.644302387906592e-240Initial program 26.6
Taylor expanded around inf 29.8
Taylor expanded around 0 36.4
if 1.644302387906592e-240 < y0 < 1.397620611129866e-229Initial program 27.0
Taylor expanded around inf 31.3
Taylor expanded around 0 34.6
if 1.397620611129866e-229 < y0 < 3.5386778189903964e-87 or 7.5112716847524e-24 < y0 Initial program 26.8
Taylor expanded around inf 29.6
Simplified29.6
if 3.5386778189903964e-87 < y0 < 7.864516444277128e-41Initial program 24.1
Taylor expanded around 0 28.3
Final simplification30.2
herbie shell --seed 2019199
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5)
:name "Linear.Matrix:det44 from linear-1.19.1.3"
:herbie-target
(if (< y4 -7.206256231996481e+60) (- (- (* (- (* b a) (* i c)) (- (* y x) (* t z))) (- (* (- (* j x) (* k z)) (- (* y0 b) (* i y1))) (* (- (* j t) (* k y)) (- (* y4 b) (* y5 i))))) (- (/ (- (* y2 t) (* y3 y)) (/ 1.0 (- (* y4 c) (* y5 a)))) (* (- (* y2 k) (* y3 j)) (- (* y4 y1) (* y5 y0))))) (if (< y4 -3.364603505246317e-66) (+ (- (- (- (* (* t c) (* i z)) (* (* a t) (* b z))) (* (* y c) (* i x))) (* (- (* b y0) (* i y1)) (- (* j x) (* k z)))) (- (* (- (* y0 c) (* a y1)) (- (* x y2) (* z y3))) (- (* (- (* t y2) (* y y3)) (- (* y4 c) (* a y5))) (* (- (* y1 y4) (* y5 y0)) (- (* k y2) (* j y3)))))) (if (< y4 -1.2000065055686116e-105) (+ (+ (- (* (- (* j t) (* k y)) (- (* y4 b) (* y5 i))) (* (* y3 y) (- (* y5 a) (* y4 c)))) (+ (* (* y5 a) (* t y2)) (* (- (* k y2) (* j y3)) (- (* y4 y1) (* y5 y0))))) (- (* (- (* x y2) (* z y3)) (- (* c y0) (* a y1))) (- (* (- (* b y0) (* i y1)) (- (* j x) (* k z))) (* (- (* y x) (* z t)) (- (* b a) (* i c)))))) (if (< y4 6.718963124057495e-279) (+ (- (- (- (* (* k y) (* y5 i)) (* (* y b) (* y4 k))) (* (* y5 t) (* i j))) (- (* (- (* y2 t) (* y3 y)) (- (* y4 c) (* y5 a))) (* (- (* y2 k) (* y3 j)) (- (* y4 y1) (* y5 y0))))) (- (* (- (* b a) (* i c)) (- (* y x) (* t z))) (- (* (- (* j x) (* k z)) (- (* y0 b) (* i y1))) (* (- (* y2 x) (* y3 z)) (- (* c y0) (* y1 a)))))) (if (< y4 4.77962681403792e-222) (+ (+ (- (* (- (* j t) (* k y)) (- (* y4 b) (* y5 i))) (* (* y3 y) (- (* y5 a) (* y4 c)))) (+ (* (* y5 a) (* t y2)) (* (- (* k y2) (* j y3)) (- (* y4 y1) (* y5 y0))))) (- (* (- (* x y2) (* z y3)) (- (* c y0) (* a y1))) (- (* (- (* b y0) (* i y1)) (- (* j x) (* k z))) (* (- (* y x) (* z t)) (- (* b a) (* i c)))))) (if (< y4 2.2852241541266835e-175) (+ (- (- (- (* (* k y) (* y5 i)) (* (* y b) (* y4 k))) (* (* y5 t) (* i j))) (- (* (- (* y2 t) (* y3 y)) (- (* y4 c) (* y5 a))) (* (- (* y2 k) (* y3 j)) (- (* y4 y1) (* y5 y0))))) (- (* (- (* b a) (* i c)) (- (* y x) (* t z))) (- (* (- (* j x) (* k z)) (- (* y0 b) (* i y1))) (* (- (* y2 x) (* y3 z)) (- (* c y0) (* y1 a)))))) (+ (- (+ (+ (- (* (- (* x y) (* z t)) (- (* a b) (* c i))) (- (* k (* i (* z y1))) (+ (* j (* i (* x y1))) (* y0 (* k (* z b)))))) (- (* z (* y3 (* a y1))) (+ (* y2 (* x (* a y1))) (* y0 (* z (* c y3)))))) (* (- (* t j) (* y k)) (- (* y4 b) (* y5 i)))) (* (- (* t y2) (* y y3)) (- (* y4 c) (* y5 a)))) (* (- (* k y2) (* j y3)) (- (* y4 y1) (* y5 y0))))))))))
(+ (- (+ (+ (- (* (- (* x y) (* z t)) (- (* a b) (* c i))) (* (- (* x j) (* z k)) (- (* y0 b) (* y1 i)))) (* (- (* x y2) (* z y3)) (- (* y0 c) (* y1 a)))) (* (- (* t j) (* y k)) (- (* y4 b) (* y5 i)))) (* (- (* t y2) (* y y3)) (- (* y4 c) (* y5 a)))) (* (- (* k y2) (* j y3)) (- (* y4 y1) (* y5 y0)))))