
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5)
:precision binary64
(+
(-
(+
(+
(-
(* (- (* 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)))))
double code(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) {
return (((((((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)));
}
real(8) function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8), intent (in) :: t
real(8), intent (in) :: a
real(8), intent (in) :: b
real(8), intent (in) :: c
real(8), intent (in) :: i
real(8), intent (in) :: j
real(8), intent (in) :: k
real(8), intent (in) :: y0
real(8), intent (in) :: y1
real(8), intent (in) :: y2
real(8), intent (in) :: y3
real(8), intent (in) :: y4
real(8), intent (in) :: y5
code = (((((((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)))
end function
public static double code(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) {
return (((((((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)));
}
def code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5): return (((((((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)))
function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) return Float64(Float64(Float64(Float64(Float64(Float64(Float64(Float64(x * y) - Float64(z * t)) * Float64(Float64(a * b) - Float64(c * i))) - Float64(Float64(Float64(x * j) - Float64(z * k)) * Float64(Float64(y0 * b) - Float64(y1 * i)))) + Float64(Float64(Float64(x * y2) - Float64(z * y3)) * Float64(Float64(y0 * c) - Float64(y1 * a)))) + Float64(Float64(Float64(t * j) - Float64(y * k)) * Float64(Float64(y4 * b) - Float64(y5 * i)))) - Float64(Float64(Float64(t * y2) - Float64(y * y3)) * Float64(Float64(y4 * c) - Float64(y5 * a)))) + Float64(Float64(Float64(k * y2) - Float64(j * y3)) * Float64(Float64(y4 * y1) - Float64(y5 * y0)))) end
function tmp = code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) tmp = (((((((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))); end
code[x_, y_, z_, t_, a_, b_, c_, i_, j_, k_, y0_, y1_, y2_, y3_, y4_, y5_] := N[(N[(N[(N[(N[(N[(N[(N[(x * y), $MachinePrecision] - N[(z * t), $MachinePrecision]), $MachinePrecision] * N[(N[(a * b), $MachinePrecision] - N[(c * i), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - N[(N[(N[(x * j), $MachinePrecision] - N[(z * k), $MachinePrecision]), $MachinePrecision] * N[(N[(y0 * b), $MachinePrecision] - N[(y1 * i), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(N[(N[(x * y2), $MachinePrecision] - N[(z * y3), $MachinePrecision]), $MachinePrecision] * N[(N[(y0 * c), $MachinePrecision] - N[(y1 * a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(N[(N[(t * j), $MachinePrecision] - N[(y * k), $MachinePrecision]), $MachinePrecision] * N[(N[(y4 * b), $MachinePrecision] - N[(y5 * i), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - N[(N[(N[(t * y2), $MachinePrecision] - N[(y * y3), $MachinePrecision]), $MachinePrecision] * N[(N[(y4 * c), $MachinePrecision] - N[(y5 * a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(N[(N[(k * y2), $MachinePrecision] - N[(j * y3), $MachinePrecision]), $MachinePrecision] * N[(N[(y4 * y1), $MachinePrecision] - N[(y5 * y0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
\begin{array}{l}
\\
\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)
\end{array}
Sampling outcomes in binary64 precision:
Herbie found 36 alternatives:
| Alternative | Accuracy | Speedup |
|---|
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5)
:precision binary64
(+
(-
(+
(+
(-
(* (- (* 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)))))
double code(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) {
return (((((((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)));
}
real(8) function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8), intent (in) :: t
real(8), intent (in) :: a
real(8), intent (in) :: b
real(8), intent (in) :: c
real(8), intent (in) :: i
real(8), intent (in) :: j
real(8), intent (in) :: k
real(8), intent (in) :: y0
real(8), intent (in) :: y1
real(8), intent (in) :: y2
real(8), intent (in) :: y3
real(8), intent (in) :: y4
real(8), intent (in) :: y5
code = (((((((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)))
end function
public static double code(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) {
return (((((((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)));
}
def code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5): return (((((((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)))
function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) return Float64(Float64(Float64(Float64(Float64(Float64(Float64(Float64(x * y) - Float64(z * t)) * Float64(Float64(a * b) - Float64(c * i))) - Float64(Float64(Float64(x * j) - Float64(z * k)) * Float64(Float64(y0 * b) - Float64(y1 * i)))) + Float64(Float64(Float64(x * y2) - Float64(z * y3)) * Float64(Float64(y0 * c) - Float64(y1 * a)))) + Float64(Float64(Float64(t * j) - Float64(y * k)) * Float64(Float64(y4 * b) - Float64(y5 * i)))) - Float64(Float64(Float64(t * y2) - Float64(y * y3)) * Float64(Float64(y4 * c) - Float64(y5 * a)))) + Float64(Float64(Float64(k * y2) - Float64(j * y3)) * Float64(Float64(y4 * y1) - Float64(y5 * y0)))) end
function tmp = code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) tmp = (((((((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))); end
code[x_, y_, z_, t_, a_, b_, c_, i_, j_, k_, y0_, y1_, y2_, y3_, y4_, y5_] := N[(N[(N[(N[(N[(N[(N[(N[(x * y), $MachinePrecision] - N[(z * t), $MachinePrecision]), $MachinePrecision] * N[(N[(a * b), $MachinePrecision] - N[(c * i), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - N[(N[(N[(x * j), $MachinePrecision] - N[(z * k), $MachinePrecision]), $MachinePrecision] * N[(N[(y0 * b), $MachinePrecision] - N[(y1 * i), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(N[(N[(x * y2), $MachinePrecision] - N[(z * y3), $MachinePrecision]), $MachinePrecision] * N[(N[(y0 * c), $MachinePrecision] - N[(y1 * a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(N[(N[(t * j), $MachinePrecision] - N[(y * k), $MachinePrecision]), $MachinePrecision] * N[(N[(y4 * b), $MachinePrecision] - N[(y5 * i), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - N[(N[(N[(t * y2), $MachinePrecision] - N[(y * y3), $MachinePrecision]), $MachinePrecision] * N[(N[(y4 * c), $MachinePrecision] - N[(y5 * a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(N[(N[(k * y2), $MachinePrecision] - N[(j * y3), $MachinePrecision]), $MachinePrecision] * N[(N[(y4 * y1), $MachinePrecision] - N[(y5 * y0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
\begin{array}{l}
\\
\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)
\end{array}
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5)
:precision binary64
(let* ((t_1 (- (* z y3) (* x y2)))
(t_2 (- (* t y2) (* y y3)))
(t_3
(*
y5
(+
(* i (- (* y k) (* t j)))
(+ (* a t_2) (* y0 (- (* j y3) (* k y2)))))))
(t_4 (- (* x y) (* z t)))
(t_5 (* b t_4))
(t_6 (- (* t j) (* y k)))
(t_7 (- (* c y0) (* a y1)))
(t_8 (- (* y y3) (* t y2)))
(t_9
(*
y2
(+
(+ (* x t_7) (* k (- (* y1 y4) (* y0 y5))))
(* t (- (* a y5) (* c y4))))))
(t_10 (* y5 t_2))
(t_11 (* a (+ (* y1 t_1) (+ t_10 t_5)))))
(if (<= y5 -1.2e+109)
t_3
(if (<= y5 -3e-52)
(*
j
(-
(+ (* y3 (- (* y0 y5) (* y1 y4))) (* t (- (* b y4) (* i y5))))
(* x (- (* b y0) (* i y1)))))
(if (<= y5 -4.5e-113)
t_9
(if (<= y5 -6.6e-243)
(*
x
(- (+ (* i (- (* j y1) (* y c))) (* a (* y b))) (* y0 (* b j))))
(if (<= y5 4.3e-280)
(* y4 (+ (+ (* b t_6) (* y1 (- (* k y2) (* j y3)))) (* c t_8)))
(if (<= y5 1.95e-236)
(*
x
(+
(+ (* y2 t_7) (* y (- (* a b) (* c i))))
(* j (- (* i y1) (* b y0)))))
(if (<= y5 2.7e-196)
t_11
(if (<= y5 5.6e-123)
(* c (- (* y4 t_8) (+ (* i t_4) (* y0 t_1))))
(if (<= y5 4.9e-98)
(* a t_5)
(if (<= y5 5.8e-46)
t_9
(if (<= y5 5.2e+18)
t_11
(if (<= y5 1.3e+98)
(*
b
(+
(+ (* a t_4) (* y4 t_6))
(* y0 (- (* z k) (* x j)))))
(if (<= y5 8.2e+195) (* a t_10) t_3)))))))))))))))
double code(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 t_1 = (z * y3) - (x * y2);
double t_2 = (t * y2) - (y * y3);
double t_3 = y5 * ((i * ((y * k) - (t * j))) + ((a * t_2) + (y0 * ((j * y3) - (k * y2)))));
double t_4 = (x * y) - (z * t);
double t_5 = b * t_4;
double t_6 = (t * j) - (y * k);
double t_7 = (c * y0) - (a * y1);
double t_8 = (y * y3) - (t * y2);
double t_9 = y2 * (((x * t_7) + (k * ((y1 * y4) - (y0 * y5)))) + (t * ((a * y5) - (c * y4))));
double t_10 = y5 * t_2;
double t_11 = a * ((y1 * t_1) + (t_10 + t_5));
double tmp;
if (y5 <= -1.2e+109) {
tmp = t_3;
} else if (y5 <= -3e-52) {
tmp = j * (((y3 * ((y0 * y5) - (y1 * y4))) + (t * ((b * y4) - (i * y5)))) - (x * ((b * y0) - (i * y1))));
} else if (y5 <= -4.5e-113) {
tmp = t_9;
} else if (y5 <= -6.6e-243) {
tmp = x * (((i * ((j * y1) - (y * c))) + (a * (y * b))) - (y0 * (b * j)));
} else if (y5 <= 4.3e-280) {
tmp = y4 * (((b * t_6) + (y1 * ((k * y2) - (j * y3)))) + (c * t_8));
} else if (y5 <= 1.95e-236) {
tmp = x * (((y2 * t_7) + (y * ((a * b) - (c * i)))) + (j * ((i * y1) - (b * y0))));
} else if (y5 <= 2.7e-196) {
tmp = t_11;
} else if (y5 <= 5.6e-123) {
tmp = c * ((y4 * t_8) - ((i * t_4) + (y0 * t_1)));
} else if (y5 <= 4.9e-98) {
tmp = a * t_5;
} else if (y5 <= 5.8e-46) {
tmp = t_9;
} else if (y5 <= 5.2e+18) {
tmp = t_11;
} else if (y5 <= 1.3e+98) {
tmp = b * (((a * t_4) + (y4 * t_6)) + (y0 * ((z * k) - (x * j))));
} else if (y5 <= 8.2e+195) {
tmp = a * t_10;
} else {
tmp = t_3;
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8), intent (in) :: t
real(8), intent (in) :: a
real(8), intent (in) :: b
real(8), intent (in) :: c
real(8), intent (in) :: i
real(8), intent (in) :: j
real(8), intent (in) :: k
real(8), intent (in) :: y0
real(8), intent (in) :: y1
real(8), intent (in) :: y2
real(8), intent (in) :: y3
real(8), intent (in) :: y4
real(8), intent (in) :: y5
real(8) :: t_1
real(8) :: t_10
real(8) :: t_11
real(8) :: t_2
real(8) :: t_3
real(8) :: t_4
real(8) :: t_5
real(8) :: t_6
real(8) :: t_7
real(8) :: t_8
real(8) :: t_9
real(8) :: tmp
t_1 = (z * y3) - (x * y2)
t_2 = (t * y2) - (y * y3)
t_3 = y5 * ((i * ((y * k) - (t * j))) + ((a * t_2) + (y0 * ((j * y3) - (k * y2)))))
t_4 = (x * y) - (z * t)
t_5 = b * t_4
t_6 = (t * j) - (y * k)
t_7 = (c * y0) - (a * y1)
t_8 = (y * y3) - (t * y2)
t_9 = y2 * (((x * t_7) + (k * ((y1 * y4) - (y0 * y5)))) + (t * ((a * y5) - (c * y4))))
t_10 = y5 * t_2
t_11 = a * ((y1 * t_1) + (t_10 + t_5))
if (y5 <= (-1.2d+109)) then
tmp = t_3
else if (y5 <= (-3d-52)) then
tmp = j * (((y3 * ((y0 * y5) - (y1 * y4))) + (t * ((b * y4) - (i * y5)))) - (x * ((b * y0) - (i * y1))))
else if (y5 <= (-4.5d-113)) then
tmp = t_9
else if (y5 <= (-6.6d-243)) then
tmp = x * (((i * ((j * y1) - (y * c))) + (a * (y * b))) - (y0 * (b * j)))
else if (y5 <= 4.3d-280) then
tmp = y4 * (((b * t_6) + (y1 * ((k * y2) - (j * y3)))) + (c * t_8))
else if (y5 <= 1.95d-236) then
tmp = x * (((y2 * t_7) + (y * ((a * b) - (c * i)))) + (j * ((i * y1) - (b * y0))))
else if (y5 <= 2.7d-196) then
tmp = t_11
else if (y5 <= 5.6d-123) then
tmp = c * ((y4 * t_8) - ((i * t_4) + (y0 * t_1)))
else if (y5 <= 4.9d-98) then
tmp = a * t_5
else if (y5 <= 5.8d-46) then
tmp = t_9
else if (y5 <= 5.2d+18) then
tmp = t_11
else if (y5 <= 1.3d+98) then
tmp = b * (((a * t_4) + (y4 * t_6)) + (y0 * ((z * k) - (x * j))))
else if (y5 <= 8.2d+195) then
tmp = a * t_10
else
tmp = t_3
end if
code = tmp
end function
public static double code(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 t_1 = (z * y3) - (x * y2);
double t_2 = (t * y2) - (y * y3);
double t_3 = y5 * ((i * ((y * k) - (t * j))) + ((a * t_2) + (y0 * ((j * y3) - (k * y2)))));
double t_4 = (x * y) - (z * t);
double t_5 = b * t_4;
double t_6 = (t * j) - (y * k);
double t_7 = (c * y0) - (a * y1);
double t_8 = (y * y3) - (t * y2);
double t_9 = y2 * (((x * t_7) + (k * ((y1 * y4) - (y0 * y5)))) + (t * ((a * y5) - (c * y4))));
double t_10 = y5 * t_2;
double t_11 = a * ((y1 * t_1) + (t_10 + t_5));
double tmp;
if (y5 <= -1.2e+109) {
tmp = t_3;
} else if (y5 <= -3e-52) {
tmp = j * (((y3 * ((y0 * y5) - (y1 * y4))) + (t * ((b * y4) - (i * y5)))) - (x * ((b * y0) - (i * y1))));
} else if (y5 <= -4.5e-113) {
tmp = t_9;
} else if (y5 <= -6.6e-243) {
tmp = x * (((i * ((j * y1) - (y * c))) + (a * (y * b))) - (y0 * (b * j)));
} else if (y5 <= 4.3e-280) {
tmp = y4 * (((b * t_6) + (y1 * ((k * y2) - (j * y3)))) + (c * t_8));
} else if (y5 <= 1.95e-236) {
tmp = x * (((y2 * t_7) + (y * ((a * b) - (c * i)))) + (j * ((i * y1) - (b * y0))));
} else if (y5 <= 2.7e-196) {
tmp = t_11;
} else if (y5 <= 5.6e-123) {
tmp = c * ((y4 * t_8) - ((i * t_4) + (y0 * t_1)));
} else if (y5 <= 4.9e-98) {
tmp = a * t_5;
} else if (y5 <= 5.8e-46) {
tmp = t_9;
} else if (y5 <= 5.2e+18) {
tmp = t_11;
} else if (y5 <= 1.3e+98) {
tmp = b * (((a * t_4) + (y4 * t_6)) + (y0 * ((z * k) - (x * j))));
} else if (y5 <= 8.2e+195) {
tmp = a * t_10;
} else {
tmp = t_3;
}
return tmp;
}
def code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5): t_1 = (z * y3) - (x * y2) t_2 = (t * y2) - (y * y3) t_3 = y5 * ((i * ((y * k) - (t * j))) + ((a * t_2) + (y0 * ((j * y3) - (k * y2))))) t_4 = (x * y) - (z * t) t_5 = b * t_4 t_6 = (t * j) - (y * k) t_7 = (c * y0) - (a * y1) t_8 = (y * y3) - (t * y2) t_9 = y2 * (((x * t_7) + (k * ((y1 * y4) - (y0 * y5)))) + (t * ((a * y5) - (c * y4)))) t_10 = y5 * t_2 t_11 = a * ((y1 * t_1) + (t_10 + t_5)) tmp = 0 if y5 <= -1.2e+109: tmp = t_3 elif y5 <= -3e-52: tmp = j * (((y3 * ((y0 * y5) - (y1 * y4))) + (t * ((b * y4) - (i * y5)))) - (x * ((b * y0) - (i * y1)))) elif y5 <= -4.5e-113: tmp = t_9 elif y5 <= -6.6e-243: tmp = x * (((i * ((j * y1) - (y * c))) + (a * (y * b))) - (y0 * (b * j))) elif y5 <= 4.3e-280: tmp = y4 * (((b * t_6) + (y1 * ((k * y2) - (j * y3)))) + (c * t_8)) elif y5 <= 1.95e-236: tmp = x * (((y2 * t_7) + (y * ((a * b) - (c * i)))) + (j * ((i * y1) - (b * y0)))) elif y5 <= 2.7e-196: tmp = t_11 elif y5 <= 5.6e-123: tmp = c * ((y4 * t_8) - ((i * t_4) + (y0 * t_1))) elif y5 <= 4.9e-98: tmp = a * t_5 elif y5 <= 5.8e-46: tmp = t_9 elif y5 <= 5.2e+18: tmp = t_11 elif y5 <= 1.3e+98: tmp = b * (((a * t_4) + (y4 * t_6)) + (y0 * ((z * k) - (x * j)))) elif y5 <= 8.2e+195: tmp = a * t_10 else: tmp = t_3 return tmp
function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = Float64(Float64(z * y3) - Float64(x * y2)) t_2 = Float64(Float64(t * y2) - Float64(y * y3)) t_3 = Float64(y5 * Float64(Float64(i * Float64(Float64(y * k) - Float64(t * j))) + Float64(Float64(a * t_2) + Float64(y0 * Float64(Float64(j * y3) - Float64(k * y2)))))) t_4 = Float64(Float64(x * y) - Float64(z * t)) t_5 = Float64(b * t_4) t_6 = Float64(Float64(t * j) - Float64(y * k)) t_7 = Float64(Float64(c * y0) - Float64(a * y1)) t_8 = Float64(Float64(y * y3) - Float64(t * y2)) t_9 = Float64(y2 * Float64(Float64(Float64(x * t_7) + Float64(k * Float64(Float64(y1 * y4) - Float64(y0 * y5)))) + Float64(t * Float64(Float64(a * y5) - Float64(c * y4))))) t_10 = Float64(y5 * t_2) t_11 = Float64(a * Float64(Float64(y1 * t_1) + Float64(t_10 + t_5))) tmp = 0.0 if (y5 <= -1.2e+109) tmp = t_3; elseif (y5 <= -3e-52) tmp = Float64(j * Float64(Float64(Float64(y3 * Float64(Float64(y0 * y5) - Float64(y1 * y4))) + Float64(t * Float64(Float64(b * y4) - Float64(i * y5)))) - Float64(x * Float64(Float64(b * y0) - Float64(i * y1))))); elseif (y5 <= -4.5e-113) tmp = t_9; elseif (y5 <= -6.6e-243) tmp = Float64(x * Float64(Float64(Float64(i * Float64(Float64(j * y1) - Float64(y * c))) + Float64(a * Float64(y * b))) - Float64(y0 * Float64(b * j)))); elseif (y5 <= 4.3e-280) tmp = Float64(y4 * Float64(Float64(Float64(b * t_6) + Float64(y1 * Float64(Float64(k * y2) - Float64(j * y3)))) + Float64(c * t_8))); elseif (y5 <= 1.95e-236) tmp = Float64(x * Float64(Float64(Float64(y2 * t_7) + Float64(y * Float64(Float64(a * b) - Float64(c * i)))) + Float64(j * Float64(Float64(i * y1) - Float64(b * y0))))); elseif (y5 <= 2.7e-196) tmp = t_11; elseif (y5 <= 5.6e-123) tmp = Float64(c * Float64(Float64(y4 * t_8) - Float64(Float64(i * t_4) + Float64(y0 * t_1)))); elseif (y5 <= 4.9e-98) tmp = Float64(a * t_5); elseif (y5 <= 5.8e-46) tmp = t_9; elseif (y5 <= 5.2e+18) tmp = t_11; elseif (y5 <= 1.3e+98) tmp = Float64(b * Float64(Float64(Float64(a * t_4) + Float64(y4 * t_6)) + Float64(y0 * Float64(Float64(z * k) - Float64(x * j))))); elseif (y5 <= 8.2e+195) tmp = Float64(a * t_10); else tmp = t_3; end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = (z * y3) - (x * y2); t_2 = (t * y2) - (y * y3); t_3 = y5 * ((i * ((y * k) - (t * j))) + ((a * t_2) + (y0 * ((j * y3) - (k * y2))))); t_4 = (x * y) - (z * t); t_5 = b * t_4; t_6 = (t * j) - (y * k); t_7 = (c * y0) - (a * y1); t_8 = (y * y3) - (t * y2); t_9 = y2 * (((x * t_7) + (k * ((y1 * y4) - (y0 * y5)))) + (t * ((a * y5) - (c * y4)))); t_10 = y5 * t_2; t_11 = a * ((y1 * t_1) + (t_10 + t_5)); tmp = 0.0; if (y5 <= -1.2e+109) tmp = t_3; elseif (y5 <= -3e-52) tmp = j * (((y3 * ((y0 * y5) - (y1 * y4))) + (t * ((b * y4) - (i * y5)))) - (x * ((b * y0) - (i * y1)))); elseif (y5 <= -4.5e-113) tmp = t_9; elseif (y5 <= -6.6e-243) tmp = x * (((i * ((j * y1) - (y * c))) + (a * (y * b))) - (y0 * (b * j))); elseif (y5 <= 4.3e-280) tmp = y4 * (((b * t_6) + (y1 * ((k * y2) - (j * y3)))) + (c * t_8)); elseif (y5 <= 1.95e-236) tmp = x * (((y2 * t_7) + (y * ((a * b) - (c * i)))) + (j * ((i * y1) - (b * y0)))); elseif (y5 <= 2.7e-196) tmp = t_11; elseif (y5 <= 5.6e-123) tmp = c * ((y4 * t_8) - ((i * t_4) + (y0 * t_1))); elseif (y5 <= 4.9e-98) tmp = a * t_5; elseif (y5 <= 5.8e-46) tmp = t_9; elseif (y5 <= 5.2e+18) tmp = t_11; elseif (y5 <= 1.3e+98) tmp = b * (((a * t_4) + (y4 * t_6)) + (y0 * ((z * k) - (x * j)))); elseif (y5 <= 8.2e+195) tmp = a * t_10; else tmp = t_3; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_, j_, k_, y0_, y1_, y2_, y3_, y4_, y5_] := Block[{t$95$1 = N[(N[(z * y3), $MachinePrecision] - N[(x * y2), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(N[(t * y2), $MachinePrecision] - N[(y * y3), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$3 = N[(y5 * N[(N[(i * N[(N[(y * k), $MachinePrecision] - N[(t * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(N[(a * t$95$2), $MachinePrecision] + N[(y0 * N[(N[(j * y3), $MachinePrecision] - N[(k * y2), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$4 = N[(N[(x * y), $MachinePrecision] - N[(z * t), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$5 = N[(b * t$95$4), $MachinePrecision]}, Block[{t$95$6 = N[(N[(t * j), $MachinePrecision] - N[(y * k), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$7 = N[(N[(c * y0), $MachinePrecision] - N[(a * y1), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$8 = N[(N[(y * y3), $MachinePrecision] - N[(t * y2), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$9 = N[(y2 * N[(N[(N[(x * t$95$7), $MachinePrecision] + N[(k * N[(N[(y1 * y4), $MachinePrecision] - N[(y0 * y5), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(t * N[(N[(a * y5), $MachinePrecision] - N[(c * y4), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$10 = N[(y5 * t$95$2), $MachinePrecision]}, Block[{t$95$11 = N[(a * N[(N[(y1 * t$95$1), $MachinePrecision] + N[(t$95$10 + t$95$5), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[y5, -1.2e+109], t$95$3, If[LessEqual[y5, -3e-52], N[(j * N[(N[(N[(y3 * N[(N[(y0 * y5), $MachinePrecision] - N[(y1 * y4), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(t * N[(N[(b * y4), $MachinePrecision] - N[(i * y5), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - N[(x * N[(N[(b * y0), $MachinePrecision] - N[(i * y1), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y5, -4.5e-113], t$95$9, If[LessEqual[y5, -6.6e-243], N[(x * N[(N[(N[(i * N[(N[(j * y1), $MachinePrecision] - N[(y * c), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(a * N[(y * b), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - N[(y0 * N[(b * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y5, 4.3e-280], N[(y4 * N[(N[(N[(b * t$95$6), $MachinePrecision] + N[(y1 * N[(N[(k * y2), $MachinePrecision] - N[(j * y3), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(c * t$95$8), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y5, 1.95e-236], N[(x * N[(N[(N[(y2 * t$95$7), $MachinePrecision] + N[(y * N[(N[(a * b), $MachinePrecision] - N[(c * i), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(j * N[(N[(i * y1), $MachinePrecision] - N[(b * y0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y5, 2.7e-196], t$95$11, If[LessEqual[y5, 5.6e-123], N[(c * N[(N[(y4 * t$95$8), $MachinePrecision] - N[(N[(i * t$95$4), $MachinePrecision] + N[(y0 * t$95$1), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y5, 4.9e-98], N[(a * t$95$5), $MachinePrecision], If[LessEqual[y5, 5.8e-46], t$95$9, If[LessEqual[y5, 5.2e+18], t$95$11, If[LessEqual[y5, 1.3e+98], N[(b * N[(N[(N[(a * t$95$4), $MachinePrecision] + N[(y4 * t$95$6), $MachinePrecision]), $MachinePrecision] + N[(y0 * N[(N[(z * k), $MachinePrecision] - N[(x * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y5, 8.2e+195], N[(a * t$95$10), $MachinePrecision], t$95$3]]]]]]]]]]]]]]]]]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := z \cdot y3 - x \cdot y2\\
t_2 := t \cdot y2 - y \cdot y3\\
t_3 := y5 \cdot \left(i \cdot \left(y \cdot k - t \cdot j\right) + \left(a \cdot t_2 + y0 \cdot \left(j \cdot y3 - k \cdot y2\right)\right)\right)\\
t_4 := x \cdot y - z \cdot t\\
t_5 := b \cdot t_4\\
t_6 := t \cdot j - y \cdot k\\
t_7 := c \cdot y0 - a \cdot y1\\
t_8 := y \cdot y3 - t \cdot y2\\
t_9 := y2 \cdot \left(\left(x \cdot t_7 + k \cdot \left(y1 \cdot y4 - y0 \cdot y5\right)\right) + t \cdot \left(a \cdot y5 - c \cdot y4\right)\right)\\
t_10 := y5 \cdot t_2\\
t_11 := a \cdot \left(y1 \cdot t_1 + \left(t_10 + t_5\right)\right)\\
\mathbf{if}\;y5 \leq -1.2 \cdot 10^{+109}:\\
\;\;\;\;t_3\\
\mathbf{elif}\;y5 \leq -3 \cdot 10^{-52}:\\
\;\;\;\;j \cdot \left(\left(y3 \cdot \left(y0 \cdot y5 - y1 \cdot y4\right) + t \cdot \left(b \cdot y4 - i \cdot y5\right)\right) - x \cdot \left(b \cdot y0 - i \cdot y1\right)\right)\\
\mathbf{elif}\;y5 \leq -4.5 \cdot 10^{-113}:\\
\;\;\;\;t_9\\
\mathbf{elif}\;y5 \leq -6.6 \cdot 10^{-243}:\\
\;\;\;\;x \cdot \left(\left(i \cdot \left(j \cdot y1 - y \cdot c\right) + a \cdot \left(y \cdot b\right)\right) - y0 \cdot \left(b \cdot j\right)\right)\\
\mathbf{elif}\;y5 \leq 4.3 \cdot 10^{-280}:\\
\;\;\;\;y4 \cdot \left(\left(b \cdot t_6 + y1 \cdot \left(k \cdot y2 - j \cdot y3\right)\right) + c \cdot t_8\right)\\
\mathbf{elif}\;y5 \leq 1.95 \cdot 10^{-236}:\\
\;\;\;\;x \cdot \left(\left(y2 \cdot t_7 + y \cdot \left(a \cdot b - c \cdot i\right)\right) + j \cdot \left(i \cdot y1 - b \cdot y0\right)\right)\\
\mathbf{elif}\;y5 \leq 2.7 \cdot 10^{-196}:\\
\;\;\;\;t_11\\
\mathbf{elif}\;y5 \leq 5.6 \cdot 10^{-123}:\\
\;\;\;\;c \cdot \left(y4 \cdot t_8 - \left(i \cdot t_4 + y0 \cdot t_1\right)\right)\\
\mathbf{elif}\;y5 \leq 4.9 \cdot 10^{-98}:\\
\;\;\;\;a \cdot t_5\\
\mathbf{elif}\;y5 \leq 5.8 \cdot 10^{-46}:\\
\;\;\;\;t_9\\
\mathbf{elif}\;y5 \leq 5.2 \cdot 10^{+18}:\\
\;\;\;\;t_11\\
\mathbf{elif}\;y5 \leq 1.3 \cdot 10^{+98}:\\
\;\;\;\;b \cdot \left(\left(a \cdot t_4 + y4 \cdot t_6\right) + y0 \cdot \left(z \cdot k - x \cdot j\right)\right)\\
\mathbf{elif}\;y5 \leq 8.2 \cdot 10^{+195}:\\
\;\;\;\;a \cdot t_10\\
\mathbf{else}:\\
\;\;\;\;t_3\\
\end{array}
\end{array}
if y5 < -1.19999999999999994e109 or 8.2000000000000001e195 < y5 Initial program 16.5%
Simplified20.1%
Taylor expanded in y5 around -inf 65.7%
if -1.19999999999999994e109 < y5 < -3e-52Initial program 31.5%
Simplified45.2%
Taylor expanded in j around inf 65.7%
if -3e-52 < y5 < -4.5000000000000001e-113 or 4.90000000000000014e-98 < y5 < 5.80000000000000009e-46Initial program 42.8%
Simplified42.8%
Taylor expanded in y2 around inf 68.3%
if -4.5000000000000001e-113 < y5 < -6.60000000000000026e-243Initial program 49.9%
Simplified49.9%
Taylor expanded in x around inf 64.3%
Taylor expanded in i around -inf 68.9%
Taylor expanded in y2 around 0 68.9%
if -6.60000000000000026e-243 < y5 < 4.2999999999999999e-280Initial program 22.2%
Simplified22.2%
Taylor expanded in y4 around inf 67.1%
if 4.2999999999999999e-280 < y5 < 1.95e-236Initial program 22.2%
Simplified22.2%
Taylor expanded in x around inf 88.9%
if 1.95e-236 < y5 < 2.69999999999999982e-196 or 5.80000000000000009e-46 < y5 < 5.2e18Initial program 32.5%
Simplified37.0%
Taylor expanded in a around inf 69.2%
mul-1-neg69.2%
mul-1-neg69.2%
Simplified69.2%
if 2.69999999999999982e-196 < y5 < 5.5999999999999998e-123Initial program 41.9%
Simplified41.9%
Taylor expanded in c around inf 68.7%
if 5.5999999999999998e-123 < y5 < 4.90000000000000014e-98Initial program 0.9%
Simplified17.6%
Taylor expanded in a around inf 51.1%
mul-1-neg51.1%
mul-1-neg51.1%
Simplified51.1%
Taylor expanded in b around inf 68.5%
if 5.2e18 < y5 < 1.3e98Initial program 31.6%
Simplified31.6%
Taylor expanded in b around inf 58.2%
if 1.3e98 < y5 < 8.2000000000000001e195Initial program 14.1%
Simplified21.0%
Taylor expanded in a around inf 45.0%
mul-1-neg45.0%
mul-1-neg45.0%
Simplified45.0%
Taylor expanded in y5 around inf 45.6%
Final simplification64.9%
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5)
:precision binary64
(let* ((t_1 (- (* a y1) (* c y0)))
(t_2
(+
(+
(+
(+
(+
(* (- (* a b) (* c i)) (- (* x y) (* z t)))
(* (- (* b y0) (* i y1)) (- (* z k) (* x j))))
(* (- (* z y3) (* x y2)) t_1))
(* (- (* t j) (* y k)) (- (* b y4) (* i y5))))
(* (- (* t y2) (* y y3)) (- (* a y5) (* c y4))))
(* (- (* k y2) (* j y3)) (- (* y1 y4) (* y0 y5))))))
(if (<= t_2 INFINITY)
t_2
(*
x
(-
(+ (* i (- (* j y1) (* y c))) (- (* y (* a b)) (* y2 t_1)))
(* y0 (* b j)))))))
double code(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 t_1 = (a * y1) - (c * y0);
double t_2 = (((((((a * b) - (c * i)) * ((x * y) - (z * t))) + (((b * y0) - (i * y1)) * ((z * k) - (x * j)))) + (((z * y3) - (x * y2)) * t_1)) + (((t * j) - (y * k)) * ((b * y4) - (i * y5)))) + (((t * y2) - (y * y3)) * ((a * y5) - (c * y4)))) + (((k * y2) - (j * y3)) * ((y1 * y4) - (y0 * y5)));
double tmp;
if (t_2 <= ((double) INFINITY)) {
tmp = t_2;
} else {
tmp = x * (((i * ((j * y1) - (y * c))) + ((y * (a * b)) - (y2 * t_1))) - (y0 * (b * j)));
}
return tmp;
}
public static double code(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 t_1 = (a * y1) - (c * y0);
double t_2 = (((((((a * b) - (c * i)) * ((x * y) - (z * t))) + (((b * y0) - (i * y1)) * ((z * k) - (x * j)))) + (((z * y3) - (x * y2)) * t_1)) + (((t * j) - (y * k)) * ((b * y4) - (i * y5)))) + (((t * y2) - (y * y3)) * ((a * y5) - (c * y4)))) + (((k * y2) - (j * y3)) * ((y1 * y4) - (y0 * y5)));
double tmp;
if (t_2 <= Double.POSITIVE_INFINITY) {
tmp = t_2;
} else {
tmp = x * (((i * ((j * y1) - (y * c))) + ((y * (a * b)) - (y2 * t_1))) - (y0 * (b * j)));
}
return tmp;
}
def code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5): t_1 = (a * y1) - (c * y0) t_2 = (((((((a * b) - (c * i)) * ((x * y) - (z * t))) + (((b * y0) - (i * y1)) * ((z * k) - (x * j)))) + (((z * y3) - (x * y2)) * t_1)) + (((t * j) - (y * k)) * ((b * y4) - (i * y5)))) + (((t * y2) - (y * y3)) * ((a * y5) - (c * y4)))) + (((k * y2) - (j * y3)) * ((y1 * y4) - (y0 * y5))) tmp = 0 if t_2 <= math.inf: tmp = t_2 else: tmp = x * (((i * ((j * y1) - (y * c))) + ((y * (a * b)) - (y2 * t_1))) - (y0 * (b * j))) return tmp
function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = Float64(Float64(a * y1) - Float64(c * y0)) t_2 = Float64(Float64(Float64(Float64(Float64(Float64(Float64(Float64(a * b) - Float64(c * i)) * Float64(Float64(x * y) - Float64(z * t))) + Float64(Float64(Float64(b * y0) - Float64(i * y1)) * Float64(Float64(z * k) - Float64(x * j)))) + Float64(Float64(Float64(z * y3) - Float64(x * y2)) * t_1)) + Float64(Float64(Float64(t * j) - Float64(y * k)) * Float64(Float64(b * y4) - Float64(i * y5)))) + Float64(Float64(Float64(t * y2) - Float64(y * y3)) * Float64(Float64(a * y5) - Float64(c * y4)))) + Float64(Float64(Float64(k * y2) - Float64(j * y3)) * Float64(Float64(y1 * y4) - Float64(y0 * y5)))) tmp = 0.0 if (t_2 <= Inf) tmp = t_2; else tmp = Float64(x * Float64(Float64(Float64(i * Float64(Float64(j * y1) - Float64(y * c))) + Float64(Float64(y * Float64(a * b)) - Float64(y2 * t_1))) - Float64(y0 * Float64(b * j)))); end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = (a * y1) - (c * y0); t_2 = (((((((a * b) - (c * i)) * ((x * y) - (z * t))) + (((b * y0) - (i * y1)) * ((z * k) - (x * j)))) + (((z * y3) - (x * y2)) * t_1)) + (((t * j) - (y * k)) * ((b * y4) - (i * y5)))) + (((t * y2) - (y * y3)) * ((a * y5) - (c * y4)))) + (((k * y2) - (j * y3)) * ((y1 * y4) - (y0 * y5))); tmp = 0.0; if (t_2 <= Inf) tmp = t_2; else tmp = x * (((i * ((j * y1) - (y * c))) + ((y * (a * b)) - (y2 * t_1))) - (y0 * (b * j))); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_, j_, k_, y0_, y1_, y2_, y3_, y4_, y5_] := Block[{t$95$1 = N[(N[(a * y1), $MachinePrecision] - N[(c * y0), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(N[(N[(N[(N[(N[(N[(N[(a * b), $MachinePrecision] - N[(c * i), $MachinePrecision]), $MachinePrecision] * N[(N[(x * y), $MachinePrecision] - N[(z * t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(N[(N[(b * y0), $MachinePrecision] - N[(i * y1), $MachinePrecision]), $MachinePrecision] * N[(N[(z * k), $MachinePrecision] - N[(x * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(N[(N[(z * y3), $MachinePrecision] - N[(x * y2), $MachinePrecision]), $MachinePrecision] * t$95$1), $MachinePrecision]), $MachinePrecision] + N[(N[(N[(t * j), $MachinePrecision] - N[(y * k), $MachinePrecision]), $MachinePrecision] * N[(N[(b * y4), $MachinePrecision] - N[(i * y5), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(N[(N[(t * y2), $MachinePrecision] - N[(y * y3), $MachinePrecision]), $MachinePrecision] * N[(N[(a * y5), $MachinePrecision] - N[(c * y4), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(N[(N[(k * y2), $MachinePrecision] - N[(j * y3), $MachinePrecision]), $MachinePrecision] * N[(N[(y1 * y4), $MachinePrecision] - N[(y0 * y5), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t$95$2, Infinity], t$95$2, N[(x * N[(N[(N[(i * N[(N[(j * y1), $MachinePrecision] - N[(y * c), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(N[(y * N[(a * b), $MachinePrecision]), $MachinePrecision] - N[(y2 * t$95$1), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - N[(y0 * N[(b * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := a \cdot y1 - c \cdot y0\\
t_2 := \left(\left(\left(\left(\left(a \cdot b - c \cdot i\right) \cdot \left(x \cdot y - z \cdot t\right) + \left(b \cdot y0 - i \cdot y1\right) \cdot \left(z \cdot k - x \cdot j\right)\right) + \left(z \cdot y3 - x \cdot y2\right) \cdot t_1\right) + \left(t \cdot j - y \cdot k\right) \cdot \left(b \cdot y4 - i \cdot y5\right)\right) + \left(t \cdot y2 - y \cdot y3\right) \cdot \left(a \cdot y5 - c \cdot y4\right)\right) + \left(k \cdot y2 - j \cdot y3\right) \cdot \left(y1 \cdot y4 - y0 \cdot y5\right)\\
\mathbf{if}\;t_2 \leq \infty:\\
\;\;\;\;t_2\\
\mathbf{else}:\\
\;\;\;\;x \cdot \left(\left(i \cdot \left(j \cdot y1 - y \cdot c\right) + \left(y \cdot \left(a \cdot b\right) - y2 \cdot t_1\right)\right) - y0 \cdot \left(b \cdot j\right)\right)\\
\end{array}
\end{array}
if (+.f64 (-.f64 (+.f64 (+.f64 (-.f64 (*.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 a b) (*.f64 c i))) (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (-.f64 (*.f64 y0 b) (*.f64 y1 i)))) (*.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 y0 c) (*.f64 y1 a)))) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 y4 b) (*.f64 y5 i)))) (*.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 y4 c) (*.f64 y5 a)))) (*.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y4 y1) (*.f64 y5 y0)))) < +inf.0Initial program 90.5%
if +inf.0 < (+.f64 (-.f64 (+.f64 (+.f64 (-.f64 (*.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 a b) (*.f64 c i))) (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (-.f64 (*.f64 y0 b) (*.f64 y1 i)))) (*.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 y0 c) (*.f64 y1 a)))) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 y4 b) (*.f64 y5 i)))) (*.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 y4 c) (*.f64 y5 a)))) (*.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y4 y1) (*.f64 y5 y0)))) Initial program 0.0%
Simplified0.0%
Taylor expanded in x around inf 37.3%
Taylor expanded in i around -inf 39.5%
Final simplification55.5%
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5)
:precision binary64
(let* ((t_1 (- (* c i) (* a b)))
(t_2 (- (* t j) (* y k)))
(t_3
(*
y4
(+
(+ (* b t_2) (* y1 (- (* k y2) (* j y3))))
(* c (- (* y y3) (* t y2))))))
(t_4 (- (* x y) (* z t)))
(t_5
(*
y5
(+
(* i (- (* y k) (* t j)))
(+ (* a (- (* t y2) (* y y3))) (* y0 (- (* j y3) (* k y2)))))))
(t_6 (- (* c y0) (* a y1)))
(t_7
(*
x
(+
(+ (* y2 t_6) (* y (- (* a b) (* c i))))
(* j (- (* i y1) (* b y0)))))))
(if (<= y5 -2.1e+175)
t_5
(if (<= y5 -4.2e-238)
t_7
(if (<= y5 2.3e-279)
t_3
(if (<= y5 4.2e-235)
t_7
(if (<= y5 5.6e-153)
t_3
(if (<= y5 6.2e-113)
(*
z
(+
(* y3 (- (* a y1) (* c y0)))
(+ (* k (- (* b y0) (* i y1))) (* t t_1))))
(if (<= y5 7.2e-32)
(*
y2
(+
(+ (* x t_6) (* k (- (* y1 y4) (* y0 y5))))
(* t (- (* a y5) (* c y4)))))
(if (<= y5 7e+17)
(* t (* z t_1))
(if (<= y5 1.9e+99)
(*
b
(+ (+ (* a t_4) (* y4 t_2)) (* y0 (- (* z k) (* x j)))))
(if (or (<= y5 2.75e+141) (not (<= y5 5.8e+211)))
t_5
(* a (* b t_4))))))))))))))
double code(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 t_1 = (c * i) - (a * b);
double t_2 = (t * j) - (y * k);
double t_3 = y4 * (((b * t_2) + (y1 * ((k * y2) - (j * y3)))) + (c * ((y * y3) - (t * y2))));
double t_4 = (x * y) - (z * t);
double t_5 = y5 * ((i * ((y * k) - (t * j))) + ((a * ((t * y2) - (y * y3))) + (y0 * ((j * y3) - (k * y2)))));
double t_6 = (c * y0) - (a * y1);
double t_7 = x * (((y2 * t_6) + (y * ((a * b) - (c * i)))) + (j * ((i * y1) - (b * y0))));
double tmp;
if (y5 <= -2.1e+175) {
tmp = t_5;
} else if (y5 <= -4.2e-238) {
tmp = t_7;
} else if (y5 <= 2.3e-279) {
tmp = t_3;
} else if (y5 <= 4.2e-235) {
tmp = t_7;
} else if (y5 <= 5.6e-153) {
tmp = t_3;
} else if (y5 <= 6.2e-113) {
tmp = z * ((y3 * ((a * y1) - (c * y0))) + ((k * ((b * y0) - (i * y1))) + (t * t_1)));
} else if (y5 <= 7.2e-32) {
tmp = y2 * (((x * t_6) + (k * ((y1 * y4) - (y0 * y5)))) + (t * ((a * y5) - (c * y4))));
} else if (y5 <= 7e+17) {
tmp = t * (z * t_1);
} else if (y5 <= 1.9e+99) {
tmp = b * (((a * t_4) + (y4 * t_2)) + (y0 * ((z * k) - (x * j))));
} else if ((y5 <= 2.75e+141) || !(y5 <= 5.8e+211)) {
tmp = t_5;
} else {
tmp = a * (b * t_4);
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8), intent (in) :: t
real(8), intent (in) :: a
real(8), intent (in) :: b
real(8), intent (in) :: c
real(8), intent (in) :: i
real(8), intent (in) :: j
real(8), intent (in) :: k
real(8), intent (in) :: y0
real(8), intent (in) :: y1
real(8), intent (in) :: y2
real(8), intent (in) :: y3
real(8), intent (in) :: y4
real(8), intent (in) :: y5
real(8) :: t_1
real(8) :: t_2
real(8) :: t_3
real(8) :: t_4
real(8) :: t_5
real(8) :: t_6
real(8) :: t_7
real(8) :: tmp
t_1 = (c * i) - (a * b)
t_2 = (t * j) - (y * k)
t_3 = y4 * (((b * t_2) + (y1 * ((k * y2) - (j * y3)))) + (c * ((y * y3) - (t * y2))))
t_4 = (x * y) - (z * t)
t_5 = y5 * ((i * ((y * k) - (t * j))) + ((a * ((t * y2) - (y * y3))) + (y0 * ((j * y3) - (k * y2)))))
t_6 = (c * y0) - (a * y1)
t_7 = x * (((y2 * t_6) + (y * ((a * b) - (c * i)))) + (j * ((i * y1) - (b * y0))))
if (y5 <= (-2.1d+175)) then
tmp = t_5
else if (y5 <= (-4.2d-238)) then
tmp = t_7
else if (y5 <= 2.3d-279) then
tmp = t_3
else if (y5 <= 4.2d-235) then
tmp = t_7
else if (y5 <= 5.6d-153) then
tmp = t_3
else if (y5 <= 6.2d-113) then
tmp = z * ((y3 * ((a * y1) - (c * y0))) + ((k * ((b * y0) - (i * y1))) + (t * t_1)))
else if (y5 <= 7.2d-32) then
tmp = y2 * (((x * t_6) + (k * ((y1 * y4) - (y0 * y5)))) + (t * ((a * y5) - (c * y4))))
else if (y5 <= 7d+17) then
tmp = t * (z * t_1)
else if (y5 <= 1.9d+99) then
tmp = b * (((a * t_4) + (y4 * t_2)) + (y0 * ((z * k) - (x * j))))
else if ((y5 <= 2.75d+141) .or. (.not. (y5 <= 5.8d+211))) then
tmp = t_5
else
tmp = a * (b * t_4)
end if
code = tmp
end function
public static double code(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 t_1 = (c * i) - (a * b);
double t_2 = (t * j) - (y * k);
double t_3 = y4 * (((b * t_2) + (y1 * ((k * y2) - (j * y3)))) + (c * ((y * y3) - (t * y2))));
double t_4 = (x * y) - (z * t);
double t_5 = y5 * ((i * ((y * k) - (t * j))) + ((a * ((t * y2) - (y * y3))) + (y0 * ((j * y3) - (k * y2)))));
double t_6 = (c * y0) - (a * y1);
double t_7 = x * (((y2 * t_6) + (y * ((a * b) - (c * i)))) + (j * ((i * y1) - (b * y0))));
double tmp;
if (y5 <= -2.1e+175) {
tmp = t_5;
} else if (y5 <= -4.2e-238) {
tmp = t_7;
} else if (y5 <= 2.3e-279) {
tmp = t_3;
} else if (y5 <= 4.2e-235) {
tmp = t_7;
} else if (y5 <= 5.6e-153) {
tmp = t_3;
} else if (y5 <= 6.2e-113) {
tmp = z * ((y3 * ((a * y1) - (c * y0))) + ((k * ((b * y0) - (i * y1))) + (t * t_1)));
} else if (y5 <= 7.2e-32) {
tmp = y2 * (((x * t_6) + (k * ((y1 * y4) - (y0 * y5)))) + (t * ((a * y5) - (c * y4))));
} else if (y5 <= 7e+17) {
tmp = t * (z * t_1);
} else if (y5 <= 1.9e+99) {
tmp = b * (((a * t_4) + (y4 * t_2)) + (y0 * ((z * k) - (x * j))));
} else if ((y5 <= 2.75e+141) || !(y5 <= 5.8e+211)) {
tmp = t_5;
} else {
tmp = a * (b * t_4);
}
return tmp;
}
def code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5): t_1 = (c * i) - (a * b) t_2 = (t * j) - (y * k) t_3 = y4 * (((b * t_2) + (y1 * ((k * y2) - (j * y3)))) + (c * ((y * y3) - (t * y2)))) t_4 = (x * y) - (z * t) t_5 = y5 * ((i * ((y * k) - (t * j))) + ((a * ((t * y2) - (y * y3))) + (y0 * ((j * y3) - (k * y2))))) t_6 = (c * y0) - (a * y1) t_7 = x * (((y2 * t_6) + (y * ((a * b) - (c * i)))) + (j * ((i * y1) - (b * y0)))) tmp = 0 if y5 <= -2.1e+175: tmp = t_5 elif y5 <= -4.2e-238: tmp = t_7 elif y5 <= 2.3e-279: tmp = t_3 elif y5 <= 4.2e-235: tmp = t_7 elif y5 <= 5.6e-153: tmp = t_3 elif y5 <= 6.2e-113: tmp = z * ((y3 * ((a * y1) - (c * y0))) + ((k * ((b * y0) - (i * y1))) + (t * t_1))) elif y5 <= 7.2e-32: tmp = y2 * (((x * t_6) + (k * ((y1 * y4) - (y0 * y5)))) + (t * ((a * y5) - (c * y4)))) elif y5 <= 7e+17: tmp = t * (z * t_1) elif y5 <= 1.9e+99: tmp = b * (((a * t_4) + (y4 * t_2)) + (y0 * ((z * k) - (x * j)))) elif (y5 <= 2.75e+141) or not (y5 <= 5.8e+211): tmp = t_5 else: tmp = a * (b * t_4) return tmp
function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = Float64(Float64(c * i) - Float64(a * b)) t_2 = Float64(Float64(t * j) - Float64(y * k)) t_3 = Float64(y4 * Float64(Float64(Float64(b * t_2) + Float64(y1 * Float64(Float64(k * y2) - Float64(j * y3)))) + Float64(c * Float64(Float64(y * y3) - Float64(t * y2))))) t_4 = Float64(Float64(x * y) - Float64(z * t)) t_5 = Float64(y5 * Float64(Float64(i * Float64(Float64(y * k) - Float64(t * j))) + Float64(Float64(a * Float64(Float64(t * y2) - Float64(y * y3))) + Float64(y0 * Float64(Float64(j * y3) - Float64(k * y2)))))) t_6 = Float64(Float64(c * y0) - Float64(a * y1)) t_7 = Float64(x * Float64(Float64(Float64(y2 * t_6) + Float64(y * Float64(Float64(a * b) - Float64(c * i)))) + Float64(j * Float64(Float64(i * y1) - Float64(b * y0))))) tmp = 0.0 if (y5 <= -2.1e+175) tmp = t_5; elseif (y5 <= -4.2e-238) tmp = t_7; elseif (y5 <= 2.3e-279) tmp = t_3; elseif (y5 <= 4.2e-235) tmp = t_7; elseif (y5 <= 5.6e-153) tmp = t_3; elseif (y5 <= 6.2e-113) tmp = Float64(z * Float64(Float64(y3 * Float64(Float64(a * y1) - Float64(c * y0))) + Float64(Float64(k * Float64(Float64(b * y0) - Float64(i * y1))) + Float64(t * t_1)))); elseif (y5 <= 7.2e-32) tmp = Float64(y2 * Float64(Float64(Float64(x * t_6) + Float64(k * Float64(Float64(y1 * y4) - Float64(y0 * y5)))) + Float64(t * Float64(Float64(a * y5) - Float64(c * y4))))); elseif (y5 <= 7e+17) tmp = Float64(t * Float64(z * t_1)); elseif (y5 <= 1.9e+99) tmp = Float64(b * Float64(Float64(Float64(a * t_4) + Float64(y4 * t_2)) + Float64(y0 * Float64(Float64(z * k) - Float64(x * j))))); elseif ((y5 <= 2.75e+141) || !(y5 <= 5.8e+211)) tmp = t_5; else tmp = Float64(a * Float64(b * t_4)); end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = (c * i) - (a * b); t_2 = (t * j) - (y * k); t_3 = y4 * (((b * t_2) + (y1 * ((k * y2) - (j * y3)))) + (c * ((y * y3) - (t * y2)))); t_4 = (x * y) - (z * t); t_5 = y5 * ((i * ((y * k) - (t * j))) + ((a * ((t * y2) - (y * y3))) + (y0 * ((j * y3) - (k * y2))))); t_6 = (c * y0) - (a * y1); t_7 = x * (((y2 * t_6) + (y * ((a * b) - (c * i)))) + (j * ((i * y1) - (b * y0)))); tmp = 0.0; if (y5 <= -2.1e+175) tmp = t_5; elseif (y5 <= -4.2e-238) tmp = t_7; elseif (y5 <= 2.3e-279) tmp = t_3; elseif (y5 <= 4.2e-235) tmp = t_7; elseif (y5 <= 5.6e-153) tmp = t_3; elseif (y5 <= 6.2e-113) tmp = z * ((y3 * ((a * y1) - (c * y0))) + ((k * ((b * y0) - (i * y1))) + (t * t_1))); elseif (y5 <= 7.2e-32) tmp = y2 * (((x * t_6) + (k * ((y1 * y4) - (y0 * y5)))) + (t * ((a * y5) - (c * y4)))); elseif (y5 <= 7e+17) tmp = t * (z * t_1); elseif (y5 <= 1.9e+99) tmp = b * (((a * t_4) + (y4 * t_2)) + (y0 * ((z * k) - (x * j)))); elseif ((y5 <= 2.75e+141) || ~((y5 <= 5.8e+211))) tmp = t_5; else tmp = a * (b * t_4); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_, j_, k_, y0_, y1_, y2_, y3_, y4_, y5_] := Block[{t$95$1 = N[(N[(c * i), $MachinePrecision] - N[(a * b), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(N[(t * j), $MachinePrecision] - N[(y * k), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$3 = N[(y4 * N[(N[(N[(b * t$95$2), $MachinePrecision] + N[(y1 * N[(N[(k * y2), $MachinePrecision] - N[(j * y3), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(c * N[(N[(y * y3), $MachinePrecision] - N[(t * y2), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$4 = N[(N[(x * y), $MachinePrecision] - N[(z * t), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$5 = N[(y5 * N[(N[(i * N[(N[(y * k), $MachinePrecision] - N[(t * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(N[(a * N[(N[(t * y2), $MachinePrecision] - N[(y * y3), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(y0 * N[(N[(j * y3), $MachinePrecision] - N[(k * y2), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$6 = N[(N[(c * y0), $MachinePrecision] - N[(a * y1), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$7 = N[(x * N[(N[(N[(y2 * t$95$6), $MachinePrecision] + N[(y * N[(N[(a * b), $MachinePrecision] - N[(c * i), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(j * N[(N[(i * y1), $MachinePrecision] - N[(b * y0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[y5, -2.1e+175], t$95$5, If[LessEqual[y5, -4.2e-238], t$95$7, If[LessEqual[y5, 2.3e-279], t$95$3, If[LessEqual[y5, 4.2e-235], t$95$7, If[LessEqual[y5, 5.6e-153], t$95$3, If[LessEqual[y5, 6.2e-113], N[(z * N[(N[(y3 * N[(N[(a * y1), $MachinePrecision] - N[(c * y0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(N[(k * N[(N[(b * y0), $MachinePrecision] - N[(i * y1), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(t * t$95$1), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y5, 7.2e-32], N[(y2 * N[(N[(N[(x * t$95$6), $MachinePrecision] + N[(k * N[(N[(y1 * y4), $MachinePrecision] - N[(y0 * y5), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(t * N[(N[(a * y5), $MachinePrecision] - N[(c * y4), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y5, 7e+17], N[(t * N[(z * t$95$1), $MachinePrecision]), $MachinePrecision], If[LessEqual[y5, 1.9e+99], N[(b * N[(N[(N[(a * t$95$4), $MachinePrecision] + N[(y4 * t$95$2), $MachinePrecision]), $MachinePrecision] + N[(y0 * N[(N[(z * k), $MachinePrecision] - N[(x * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[Or[LessEqual[y5, 2.75e+141], N[Not[LessEqual[y5, 5.8e+211]], $MachinePrecision]], t$95$5, N[(a * N[(b * t$95$4), $MachinePrecision]), $MachinePrecision]]]]]]]]]]]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := c \cdot i - a \cdot b\\
t_2 := t \cdot j - y \cdot k\\
t_3 := y4 \cdot \left(\left(b \cdot t_2 + y1 \cdot \left(k \cdot y2 - j \cdot y3\right)\right) + c \cdot \left(y \cdot y3 - t \cdot y2\right)\right)\\
t_4 := x \cdot y - z \cdot t\\
t_5 := y5 \cdot \left(i \cdot \left(y \cdot k - t \cdot j\right) + \left(a \cdot \left(t \cdot y2 - y \cdot y3\right) + y0 \cdot \left(j \cdot y3 - k \cdot y2\right)\right)\right)\\
t_6 := c \cdot y0 - a \cdot y1\\
t_7 := x \cdot \left(\left(y2 \cdot t_6 + y \cdot \left(a \cdot b - c \cdot i\right)\right) + j \cdot \left(i \cdot y1 - b \cdot y0\right)\right)\\
\mathbf{if}\;y5 \leq -2.1 \cdot 10^{+175}:\\
\;\;\;\;t_5\\
\mathbf{elif}\;y5 \leq -4.2 \cdot 10^{-238}:\\
\;\;\;\;t_7\\
\mathbf{elif}\;y5 \leq 2.3 \cdot 10^{-279}:\\
\;\;\;\;t_3\\
\mathbf{elif}\;y5 \leq 4.2 \cdot 10^{-235}:\\
\;\;\;\;t_7\\
\mathbf{elif}\;y5 \leq 5.6 \cdot 10^{-153}:\\
\;\;\;\;t_3\\
\mathbf{elif}\;y5 \leq 6.2 \cdot 10^{-113}:\\
\;\;\;\;z \cdot \left(y3 \cdot \left(a \cdot y1 - c \cdot y0\right) + \left(k \cdot \left(b \cdot y0 - i \cdot y1\right) + t \cdot t_1\right)\right)\\
\mathbf{elif}\;y5 \leq 7.2 \cdot 10^{-32}:\\
\;\;\;\;y2 \cdot \left(\left(x \cdot t_6 + k \cdot \left(y1 \cdot y4 - y0 \cdot y5\right)\right) + t \cdot \left(a \cdot y5 - c \cdot y4\right)\right)\\
\mathbf{elif}\;y5 \leq 7 \cdot 10^{+17}:\\
\;\;\;\;t \cdot \left(z \cdot t_1\right)\\
\mathbf{elif}\;y5 \leq 1.9 \cdot 10^{+99}:\\
\;\;\;\;b \cdot \left(\left(a \cdot t_4 + y4 \cdot t_2\right) + y0 \cdot \left(z \cdot k - x \cdot j\right)\right)\\
\mathbf{elif}\;y5 \leq 2.75 \cdot 10^{+141} \lor \neg \left(y5 \leq 5.8 \cdot 10^{+211}\right):\\
\;\;\;\;t_5\\
\mathbf{else}:\\
\;\;\;\;a \cdot \left(b \cdot t_4\right)\\
\end{array}
\end{array}
if y5 < -2.0999999999999999e175 or 1.9e99 < y5 < 2.74999999999999984e141 or 5.8000000000000001e211 < y5 Initial program 17.3%
Simplified21.1%
Taylor expanded in y5 around -inf 71.8%
if -2.0999999999999999e175 < y5 < -4.2000000000000002e-238 or 2.29999999999999995e-279 < y5 < 4.2000000000000001e-235Initial program 38.7%
Simplified38.7%
Taylor expanded in x around inf 59.3%
if -4.2000000000000002e-238 < y5 < 2.29999999999999995e-279 or 4.2000000000000001e-235 < y5 < 5.6000000000000001e-153Initial program 26.4%
Simplified26.4%
Taylor expanded in y4 around inf 61.0%
if 5.6000000000000001e-153 < y5 < 6.20000000000000024e-113Initial program 29.8%
Simplified29.8%
Taylor expanded in z around -inf 80.0%
mul-1-neg80.0%
associate--l+80.0%
Simplified80.0%
if 6.20000000000000024e-113 < y5 < 7.19999999999999986e-32Initial program 27.0%
Simplified27.0%
Taylor expanded in y2 around inf 60.7%
if 7.19999999999999986e-32 < y5 < 7e17Initial program 28.1%
Simplified28.1%
Taylor expanded in t around inf 37.7%
associate--l+37.7%
mul-1-neg37.7%
Simplified37.7%
Taylor expanded in z around inf 55.5%
if 7e17 < y5 < 1.9e99Initial program 31.6%
Simplified31.6%
Taylor expanded in b around inf 58.2%
if 2.74999999999999984e141 < y5 < 5.8000000000000001e211Initial program 13.6%
Simplified18.2%
Taylor expanded in a around inf 32.4%
mul-1-neg32.4%
mul-1-neg32.4%
Simplified32.4%
Taylor expanded in b around inf 46.6%
Final simplification61.7%
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5)
:precision binary64
(let* ((t_1 (- (* t y2) (* y y3)))
(t_2 (- (* t j) (* y k)))
(t_3
(*
y4
(+
(+ (* b t_2) (* y1 (- (* k y2) (* j y3))))
(* c (- (* y y3) (* t y2))))))
(t_4 (* y5 t_1))
(t_5 (- (* x y) (* z t)))
(t_6
(*
y5
(+
(* i (- (* y k) (* t j)))
(+ (* a t_1) (* y0 (- (* j y3) (* k y2)))))))
(t_7 (- (* c y0) (* a y1)))
(t_8
(*
x
(+
(+ (* y2 t_7) (* y (- (* a b) (* c i))))
(* j (- (* i y1) (* b y0)))))))
(if (<= y5 -2.3e+178)
t_6
(if (<= y5 -2.35e-240)
t_8
(if (<= y5 1e-281)
t_3
(if (<= y5 1.1e-235)
t_8
(if (<= y5 1.45e-154)
t_3
(if (<= y5 1.52e-114)
(*
z
(+
(* y3 (- (* a y1) (* c y0)))
(+ (* k (- (* b y0) (* i y1))) (* t (- (* c i) (* a b))))))
(if (<= y5 6e-44)
(*
y2
(+
(+ (* x t_7) (* k (- (* y1 y4) (* y0 y5))))
(* t (- (* a y5) (* c y4)))))
(if (<= y5 7e+15)
(* a (+ (* y1 (- (* z y3) (* x y2))) (+ t_4 (* b t_5))))
(if (<= y5 6.8e+97)
(*
b
(+ (+ (* a t_5) (* y4 t_2)) (* y0 (- (* z k) (* x j)))))
(if (<= y5 8.6e+195) (* a t_4) t_6))))))))))))
double code(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 t_1 = (t * y2) - (y * y3);
double t_2 = (t * j) - (y * k);
double t_3 = y4 * (((b * t_2) + (y1 * ((k * y2) - (j * y3)))) + (c * ((y * y3) - (t * y2))));
double t_4 = y5 * t_1;
double t_5 = (x * y) - (z * t);
double t_6 = y5 * ((i * ((y * k) - (t * j))) + ((a * t_1) + (y0 * ((j * y3) - (k * y2)))));
double t_7 = (c * y0) - (a * y1);
double t_8 = x * (((y2 * t_7) + (y * ((a * b) - (c * i)))) + (j * ((i * y1) - (b * y0))));
double tmp;
if (y5 <= -2.3e+178) {
tmp = t_6;
} else if (y5 <= -2.35e-240) {
tmp = t_8;
} else if (y5 <= 1e-281) {
tmp = t_3;
} else if (y5 <= 1.1e-235) {
tmp = t_8;
} else if (y5 <= 1.45e-154) {
tmp = t_3;
} else if (y5 <= 1.52e-114) {
tmp = z * ((y3 * ((a * y1) - (c * y0))) + ((k * ((b * y0) - (i * y1))) + (t * ((c * i) - (a * b)))));
} else if (y5 <= 6e-44) {
tmp = y2 * (((x * t_7) + (k * ((y1 * y4) - (y0 * y5)))) + (t * ((a * y5) - (c * y4))));
} else if (y5 <= 7e+15) {
tmp = a * ((y1 * ((z * y3) - (x * y2))) + (t_4 + (b * t_5)));
} else if (y5 <= 6.8e+97) {
tmp = b * (((a * t_5) + (y4 * t_2)) + (y0 * ((z * k) - (x * j))));
} else if (y5 <= 8.6e+195) {
tmp = a * t_4;
} else {
tmp = t_6;
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8), intent (in) :: t
real(8), intent (in) :: a
real(8), intent (in) :: b
real(8), intent (in) :: c
real(8), intent (in) :: i
real(8), intent (in) :: j
real(8), intent (in) :: k
real(8), intent (in) :: y0
real(8), intent (in) :: y1
real(8), intent (in) :: y2
real(8), intent (in) :: y3
real(8), intent (in) :: y4
real(8), intent (in) :: y5
real(8) :: t_1
real(8) :: t_2
real(8) :: t_3
real(8) :: t_4
real(8) :: t_5
real(8) :: t_6
real(8) :: t_7
real(8) :: t_8
real(8) :: tmp
t_1 = (t * y2) - (y * y3)
t_2 = (t * j) - (y * k)
t_3 = y4 * (((b * t_2) + (y1 * ((k * y2) - (j * y3)))) + (c * ((y * y3) - (t * y2))))
t_4 = y5 * t_1
t_5 = (x * y) - (z * t)
t_6 = y5 * ((i * ((y * k) - (t * j))) + ((a * t_1) + (y0 * ((j * y3) - (k * y2)))))
t_7 = (c * y0) - (a * y1)
t_8 = x * (((y2 * t_7) + (y * ((a * b) - (c * i)))) + (j * ((i * y1) - (b * y0))))
if (y5 <= (-2.3d+178)) then
tmp = t_6
else if (y5 <= (-2.35d-240)) then
tmp = t_8
else if (y5 <= 1d-281) then
tmp = t_3
else if (y5 <= 1.1d-235) then
tmp = t_8
else if (y5 <= 1.45d-154) then
tmp = t_3
else if (y5 <= 1.52d-114) then
tmp = z * ((y3 * ((a * y1) - (c * y0))) + ((k * ((b * y0) - (i * y1))) + (t * ((c * i) - (a * b)))))
else if (y5 <= 6d-44) then
tmp = y2 * (((x * t_7) + (k * ((y1 * y4) - (y0 * y5)))) + (t * ((a * y5) - (c * y4))))
else if (y5 <= 7d+15) then
tmp = a * ((y1 * ((z * y3) - (x * y2))) + (t_4 + (b * t_5)))
else if (y5 <= 6.8d+97) then
tmp = b * (((a * t_5) + (y4 * t_2)) + (y0 * ((z * k) - (x * j))))
else if (y5 <= 8.6d+195) then
tmp = a * t_4
else
tmp = t_6
end if
code = tmp
end function
public static double code(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 t_1 = (t * y2) - (y * y3);
double t_2 = (t * j) - (y * k);
double t_3 = y4 * (((b * t_2) + (y1 * ((k * y2) - (j * y3)))) + (c * ((y * y3) - (t * y2))));
double t_4 = y5 * t_1;
double t_5 = (x * y) - (z * t);
double t_6 = y5 * ((i * ((y * k) - (t * j))) + ((a * t_1) + (y0 * ((j * y3) - (k * y2)))));
double t_7 = (c * y0) - (a * y1);
double t_8 = x * (((y2 * t_7) + (y * ((a * b) - (c * i)))) + (j * ((i * y1) - (b * y0))));
double tmp;
if (y5 <= -2.3e+178) {
tmp = t_6;
} else if (y5 <= -2.35e-240) {
tmp = t_8;
} else if (y5 <= 1e-281) {
tmp = t_3;
} else if (y5 <= 1.1e-235) {
tmp = t_8;
} else if (y5 <= 1.45e-154) {
tmp = t_3;
} else if (y5 <= 1.52e-114) {
tmp = z * ((y3 * ((a * y1) - (c * y0))) + ((k * ((b * y0) - (i * y1))) + (t * ((c * i) - (a * b)))));
} else if (y5 <= 6e-44) {
tmp = y2 * (((x * t_7) + (k * ((y1 * y4) - (y0 * y5)))) + (t * ((a * y5) - (c * y4))));
} else if (y5 <= 7e+15) {
tmp = a * ((y1 * ((z * y3) - (x * y2))) + (t_4 + (b * t_5)));
} else if (y5 <= 6.8e+97) {
tmp = b * (((a * t_5) + (y4 * t_2)) + (y0 * ((z * k) - (x * j))));
} else if (y5 <= 8.6e+195) {
tmp = a * t_4;
} else {
tmp = t_6;
}
return tmp;
}
def code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5): t_1 = (t * y2) - (y * y3) t_2 = (t * j) - (y * k) t_3 = y4 * (((b * t_2) + (y1 * ((k * y2) - (j * y3)))) + (c * ((y * y3) - (t * y2)))) t_4 = y5 * t_1 t_5 = (x * y) - (z * t) t_6 = y5 * ((i * ((y * k) - (t * j))) + ((a * t_1) + (y0 * ((j * y3) - (k * y2))))) t_7 = (c * y0) - (a * y1) t_8 = x * (((y2 * t_7) + (y * ((a * b) - (c * i)))) + (j * ((i * y1) - (b * y0)))) tmp = 0 if y5 <= -2.3e+178: tmp = t_6 elif y5 <= -2.35e-240: tmp = t_8 elif y5 <= 1e-281: tmp = t_3 elif y5 <= 1.1e-235: tmp = t_8 elif y5 <= 1.45e-154: tmp = t_3 elif y5 <= 1.52e-114: tmp = z * ((y3 * ((a * y1) - (c * y0))) + ((k * ((b * y0) - (i * y1))) + (t * ((c * i) - (a * b))))) elif y5 <= 6e-44: tmp = y2 * (((x * t_7) + (k * ((y1 * y4) - (y0 * y5)))) + (t * ((a * y5) - (c * y4)))) elif y5 <= 7e+15: tmp = a * ((y1 * ((z * y3) - (x * y2))) + (t_4 + (b * t_5))) elif y5 <= 6.8e+97: tmp = b * (((a * t_5) + (y4 * t_2)) + (y0 * ((z * k) - (x * j)))) elif y5 <= 8.6e+195: tmp = a * t_4 else: tmp = t_6 return tmp
function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = Float64(Float64(t * y2) - Float64(y * y3)) t_2 = Float64(Float64(t * j) - Float64(y * k)) t_3 = Float64(y4 * Float64(Float64(Float64(b * t_2) + Float64(y1 * Float64(Float64(k * y2) - Float64(j * y3)))) + Float64(c * Float64(Float64(y * y3) - Float64(t * y2))))) t_4 = Float64(y5 * t_1) t_5 = Float64(Float64(x * y) - Float64(z * t)) t_6 = Float64(y5 * Float64(Float64(i * Float64(Float64(y * k) - Float64(t * j))) + Float64(Float64(a * t_1) + Float64(y0 * Float64(Float64(j * y3) - Float64(k * y2)))))) t_7 = Float64(Float64(c * y0) - Float64(a * y1)) t_8 = Float64(x * Float64(Float64(Float64(y2 * t_7) + Float64(y * Float64(Float64(a * b) - Float64(c * i)))) + Float64(j * Float64(Float64(i * y1) - Float64(b * y0))))) tmp = 0.0 if (y5 <= -2.3e+178) tmp = t_6; elseif (y5 <= -2.35e-240) tmp = t_8; elseif (y5 <= 1e-281) tmp = t_3; elseif (y5 <= 1.1e-235) tmp = t_8; elseif (y5 <= 1.45e-154) tmp = t_3; elseif (y5 <= 1.52e-114) tmp = Float64(z * Float64(Float64(y3 * Float64(Float64(a * y1) - Float64(c * y0))) + Float64(Float64(k * Float64(Float64(b * y0) - Float64(i * y1))) + Float64(t * Float64(Float64(c * i) - Float64(a * b)))))); elseif (y5 <= 6e-44) tmp = Float64(y2 * Float64(Float64(Float64(x * t_7) + Float64(k * Float64(Float64(y1 * y4) - Float64(y0 * y5)))) + Float64(t * Float64(Float64(a * y5) - Float64(c * y4))))); elseif (y5 <= 7e+15) tmp = Float64(a * Float64(Float64(y1 * Float64(Float64(z * y3) - Float64(x * y2))) + Float64(t_4 + Float64(b * t_5)))); elseif (y5 <= 6.8e+97) tmp = Float64(b * Float64(Float64(Float64(a * t_5) + Float64(y4 * t_2)) + Float64(y0 * Float64(Float64(z * k) - Float64(x * j))))); elseif (y5 <= 8.6e+195) tmp = Float64(a * t_4); else tmp = t_6; end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = (t * y2) - (y * y3); t_2 = (t * j) - (y * k); t_3 = y4 * (((b * t_2) + (y1 * ((k * y2) - (j * y3)))) + (c * ((y * y3) - (t * y2)))); t_4 = y5 * t_1; t_5 = (x * y) - (z * t); t_6 = y5 * ((i * ((y * k) - (t * j))) + ((a * t_1) + (y0 * ((j * y3) - (k * y2))))); t_7 = (c * y0) - (a * y1); t_8 = x * (((y2 * t_7) + (y * ((a * b) - (c * i)))) + (j * ((i * y1) - (b * y0)))); tmp = 0.0; if (y5 <= -2.3e+178) tmp = t_6; elseif (y5 <= -2.35e-240) tmp = t_8; elseif (y5 <= 1e-281) tmp = t_3; elseif (y5 <= 1.1e-235) tmp = t_8; elseif (y5 <= 1.45e-154) tmp = t_3; elseif (y5 <= 1.52e-114) tmp = z * ((y3 * ((a * y1) - (c * y0))) + ((k * ((b * y0) - (i * y1))) + (t * ((c * i) - (a * b))))); elseif (y5 <= 6e-44) tmp = y2 * (((x * t_7) + (k * ((y1 * y4) - (y0 * y5)))) + (t * ((a * y5) - (c * y4)))); elseif (y5 <= 7e+15) tmp = a * ((y1 * ((z * y3) - (x * y2))) + (t_4 + (b * t_5))); elseif (y5 <= 6.8e+97) tmp = b * (((a * t_5) + (y4 * t_2)) + (y0 * ((z * k) - (x * j)))); elseif (y5 <= 8.6e+195) tmp = a * t_4; else tmp = t_6; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_, j_, k_, y0_, y1_, y2_, y3_, y4_, y5_] := Block[{t$95$1 = N[(N[(t * y2), $MachinePrecision] - N[(y * y3), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(N[(t * j), $MachinePrecision] - N[(y * k), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$3 = N[(y4 * N[(N[(N[(b * t$95$2), $MachinePrecision] + N[(y1 * N[(N[(k * y2), $MachinePrecision] - N[(j * y3), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(c * N[(N[(y * y3), $MachinePrecision] - N[(t * y2), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$4 = N[(y5 * t$95$1), $MachinePrecision]}, Block[{t$95$5 = N[(N[(x * y), $MachinePrecision] - N[(z * t), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$6 = N[(y5 * N[(N[(i * N[(N[(y * k), $MachinePrecision] - N[(t * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(N[(a * t$95$1), $MachinePrecision] + N[(y0 * N[(N[(j * y3), $MachinePrecision] - N[(k * y2), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$7 = N[(N[(c * y0), $MachinePrecision] - N[(a * y1), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$8 = N[(x * N[(N[(N[(y2 * t$95$7), $MachinePrecision] + N[(y * N[(N[(a * b), $MachinePrecision] - N[(c * i), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(j * N[(N[(i * y1), $MachinePrecision] - N[(b * y0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[y5, -2.3e+178], t$95$6, If[LessEqual[y5, -2.35e-240], t$95$8, If[LessEqual[y5, 1e-281], t$95$3, If[LessEqual[y5, 1.1e-235], t$95$8, If[LessEqual[y5, 1.45e-154], t$95$3, If[LessEqual[y5, 1.52e-114], N[(z * N[(N[(y3 * N[(N[(a * y1), $MachinePrecision] - N[(c * y0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(N[(k * N[(N[(b * y0), $MachinePrecision] - N[(i * y1), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(t * N[(N[(c * i), $MachinePrecision] - N[(a * b), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y5, 6e-44], N[(y2 * N[(N[(N[(x * t$95$7), $MachinePrecision] + N[(k * N[(N[(y1 * y4), $MachinePrecision] - N[(y0 * y5), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(t * N[(N[(a * y5), $MachinePrecision] - N[(c * y4), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y5, 7e+15], N[(a * N[(N[(y1 * N[(N[(z * y3), $MachinePrecision] - N[(x * y2), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(t$95$4 + N[(b * t$95$5), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y5, 6.8e+97], N[(b * N[(N[(N[(a * t$95$5), $MachinePrecision] + N[(y4 * t$95$2), $MachinePrecision]), $MachinePrecision] + N[(y0 * N[(N[(z * k), $MachinePrecision] - N[(x * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y5, 8.6e+195], N[(a * t$95$4), $MachinePrecision], t$95$6]]]]]]]]]]]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := t \cdot y2 - y \cdot y3\\
t_2 := t \cdot j - y \cdot k\\
t_3 := y4 \cdot \left(\left(b \cdot t_2 + y1 \cdot \left(k \cdot y2 - j \cdot y3\right)\right) + c \cdot \left(y \cdot y3 - t \cdot y2\right)\right)\\
t_4 := y5 \cdot t_1\\
t_5 := x \cdot y - z \cdot t\\
t_6 := y5 \cdot \left(i \cdot \left(y \cdot k - t \cdot j\right) + \left(a \cdot t_1 + y0 \cdot \left(j \cdot y3 - k \cdot y2\right)\right)\right)\\
t_7 := c \cdot y0 - a \cdot y1\\
t_8 := x \cdot \left(\left(y2 \cdot t_7 + y \cdot \left(a \cdot b - c \cdot i\right)\right) + j \cdot \left(i \cdot y1 - b \cdot y0\right)\right)\\
\mathbf{if}\;y5 \leq -2.3 \cdot 10^{+178}:\\
\;\;\;\;t_6\\
\mathbf{elif}\;y5 \leq -2.35 \cdot 10^{-240}:\\
\;\;\;\;t_8\\
\mathbf{elif}\;y5 \leq 10^{-281}:\\
\;\;\;\;t_3\\
\mathbf{elif}\;y5 \leq 1.1 \cdot 10^{-235}:\\
\;\;\;\;t_8\\
\mathbf{elif}\;y5 \leq 1.45 \cdot 10^{-154}:\\
\;\;\;\;t_3\\
\mathbf{elif}\;y5 \leq 1.52 \cdot 10^{-114}:\\
\;\;\;\;z \cdot \left(y3 \cdot \left(a \cdot y1 - c \cdot y0\right) + \left(k \cdot \left(b \cdot y0 - i \cdot y1\right) + t \cdot \left(c \cdot i - a \cdot b\right)\right)\right)\\
\mathbf{elif}\;y5 \leq 6 \cdot 10^{-44}:\\
\;\;\;\;y2 \cdot \left(\left(x \cdot t_7 + k \cdot \left(y1 \cdot y4 - y0 \cdot y5\right)\right) + t \cdot \left(a \cdot y5 - c \cdot y4\right)\right)\\
\mathbf{elif}\;y5 \leq 7 \cdot 10^{+15}:\\
\;\;\;\;a \cdot \left(y1 \cdot \left(z \cdot y3 - x \cdot y2\right) + \left(t_4 + b \cdot t_5\right)\right)\\
\mathbf{elif}\;y5 \leq 6.8 \cdot 10^{+97}:\\
\;\;\;\;b \cdot \left(\left(a \cdot t_5 + y4 \cdot t_2\right) + y0 \cdot \left(z \cdot k - x \cdot j\right)\right)\\
\mathbf{elif}\;y5 \leq 8.6 \cdot 10^{+195}:\\
\;\;\;\;a \cdot t_4\\
\mathbf{else}:\\
\;\;\;\;t_6\\
\end{array}
\end{array}
if y5 < -2.3000000000000001e178 or 8.59999999999999962e195 < y5 Initial program 17.6%
Simplified21.9%
Taylor expanded in y5 around -inf 72.0%
if -2.3000000000000001e178 < y5 < -2.35000000000000006e-240 or 1e-281 < y5 < 1.09999999999999992e-235Initial program 38.7%
Simplified38.7%
Taylor expanded in x around inf 59.3%
if -2.35000000000000006e-240 < y5 < 1e-281 or 1.09999999999999992e-235 < y5 < 1.45e-154Initial program 26.4%
Simplified26.4%
Taylor expanded in y4 around inf 61.0%
if 1.45e-154 < y5 < 1.51999999999999997e-114Initial program 29.8%
Simplified29.8%
Taylor expanded in z around -inf 80.0%
mul-1-neg80.0%
associate--l+80.0%
Simplified80.0%
if 1.51999999999999997e-114 < y5 < 6.0000000000000005e-44Initial program 21.8%
Simplified21.8%
Taylor expanded in y2 around inf 64.8%
if 6.0000000000000005e-44 < y5 < 7e15Initial program 34.1%
Simplified34.1%
Taylor expanded in a around inf 68.0%
mul-1-neg68.0%
mul-1-neg68.0%
Simplified68.0%
if 7e15 < y5 < 6.8000000000000002e97Initial program 31.6%
Simplified31.6%
Taylor expanded in b around inf 58.2%
if 6.8000000000000002e97 < y5 < 8.59999999999999962e195Initial program 14.1%
Simplified21.0%
Taylor expanded in a around inf 45.0%
mul-1-neg45.0%
mul-1-neg45.0%
Simplified45.0%
Taylor expanded in y5 around inf 45.6%
Final simplification61.7%
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5)
:precision binary64
(let* ((t_1 (* t (* c (- (* z i) (* y2 y4))))) (t_2 (- (* t j) (* y k))))
(if (<= y3 -1.3e+80)
(* a (* y3 (- (* z y1) (* y y5))))
(if (<= y3 -2.5e+16)
(* y0 (* x (- (* c y2) (* b j))))
(if (<= y3 -5.5e+14)
(* a (* y5 (- (* t y2) (* y y3))))
(if (<= y3 9.8e-253)
(* x (+ (* y (- (* a b) (* c i))) (* j (- (* i y1) (* b y0)))))
(if (<= y3 3.1e-240)
t_1
(if (<= y3 1.36e-114)
(*
b
(+
(+ (* a (- (* x y) (* z t))) (* y4 t_2))
(* y0 (- (* z k) (* x j)))))
(if (<= y3 1.96e-78)
(* y2 (* x (- (* c y0) (* a y1))))
(if (<= y3 2800000000000.0)
t_1
(if (<= y3 3.6e+87)
(*
x
(-
(+ (* i (- (* j y1) (* y c))) (* a (* y b)))
(* y0 (* b j))))
(*
y4
(+
(+ (* b t_2) (* y1 (- (* k y2) (* j y3))))
(* c (- (* y y3) (* t y2))))))))))))))))
double code(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 t_1 = t * (c * ((z * i) - (y2 * y4)));
double t_2 = (t * j) - (y * k);
double tmp;
if (y3 <= -1.3e+80) {
tmp = a * (y3 * ((z * y1) - (y * y5)));
} else if (y3 <= -2.5e+16) {
tmp = y0 * (x * ((c * y2) - (b * j)));
} else if (y3 <= -5.5e+14) {
tmp = a * (y5 * ((t * y2) - (y * y3)));
} else if (y3 <= 9.8e-253) {
tmp = x * ((y * ((a * b) - (c * i))) + (j * ((i * y1) - (b * y0))));
} else if (y3 <= 3.1e-240) {
tmp = t_1;
} else if (y3 <= 1.36e-114) {
tmp = b * (((a * ((x * y) - (z * t))) + (y4 * t_2)) + (y0 * ((z * k) - (x * j))));
} else if (y3 <= 1.96e-78) {
tmp = y2 * (x * ((c * y0) - (a * y1)));
} else if (y3 <= 2800000000000.0) {
tmp = t_1;
} else if (y3 <= 3.6e+87) {
tmp = x * (((i * ((j * y1) - (y * c))) + (a * (y * b))) - (y0 * (b * j)));
} else {
tmp = y4 * (((b * t_2) + (y1 * ((k * y2) - (j * y3)))) + (c * ((y * y3) - (t * y2))));
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8), intent (in) :: t
real(8), intent (in) :: a
real(8), intent (in) :: b
real(8), intent (in) :: c
real(8), intent (in) :: i
real(8), intent (in) :: j
real(8), intent (in) :: k
real(8), intent (in) :: y0
real(8), intent (in) :: y1
real(8), intent (in) :: y2
real(8), intent (in) :: y3
real(8), intent (in) :: y4
real(8), intent (in) :: y5
real(8) :: t_1
real(8) :: t_2
real(8) :: tmp
t_1 = t * (c * ((z * i) - (y2 * y4)))
t_2 = (t * j) - (y * k)
if (y3 <= (-1.3d+80)) then
tmp = a * (y3 * ((z * y1) - (y * y5)))
else if (y3 <= (-2.5d+16)) then
tmp = y0 * (x * ((c * y2) - (b * j)))
else if (y3 <= (-5.5d+14)) then
tmp = a * (y5 * ((t * y2) - (y * y3)))
else if (y3 <= 9.8d-253) then
tmp = x * ((y * ((a * b) - (c * i))) + (j * ((i * y1) - (b * y0))))
else if (y3 <= 3.1d-240) then
tmp = t_1
else if (y3 <= 1.36d-114) then
tmp = b * (((a * ((x * y) - (z * t))) + (y4 * t_2)) + (y0 * ((z * k) - (x * j))))
else if (y3 <= 1.96d-78) then
tmp = y2 * (x * ((c * y0) - (a * y1)))
else if (y3 <= 2800000000000.0d0) then
tmp = t_1
else if (y3 <= 3.6d+87) then
tmp = x * (((i * ((j * y1) - (y * c))) + (a * (y * b))) - (y0 * (b * j)))
else
tmp = y4 * (((b * t_2) + (y1 * ((k * y2) - (j * y3)))) + (c * ((y * y3) - (t * y2))))
end if
code = tmp
end function
public static double code(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 t_1 = t * (c * ((z * i) - (y2 * y4)));
double t_2 = (t * j) - (y * k);
double tmp;
if (y3 <= -1.3e+80) {
tmp = a * (y3 * ((z * y1) - (y * y5)));
} else if (y3 <= -2.5e+16) {
tmp = y0 * (x * ((c * y2) - (b * j)));
} else if (y3 <= -5.5e+14) {
tmp = a * (y5 * ((t * y2) - (y * y3)));
} else if (y3 <= 9.8e-253) {
tmp = x * ((y * ((a * b) - (c * i))) + (j * ((i * y1) - (b * y0))));
} else if (y3 <= 3.1e-240) {
tmp = t_1;
} else if (y3 <= 1.36e-114) {
tmp = b * (((a * ((x * y) - (z * t))) + (y4 * t_2)) + (y0 * ((z * k) - (x * j))));
} else if (y3 <= 1.96e-78) {
tmp = y2 * (x * ((c * y0) - (a * y1)));
} else if (y3 <= 2800000000000.0) {
tmp = t_1;
} else if (y3 <= 3.6e+87) {
tmp = x * (((i * ((j * y1) - (y * c))) + (a * (y * b))) - (y0 * (b * j)));
} else {
tmp = y4 * (((b * t_2) + (y1 * ((k * y2) - (j * y3)))) + (c * ((y * y3) - (t * y2))));
}
return tmp;
}
def code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5): t_1 = t * (c * ((z * i) - (y2 * y4))) t_2 = (t * j) - (y * k) tmp = 0 if y3 <= -1.3e+80: tmp = a * (y3 * ((z * y1) - (y * y5))) elif y3 <= -2.5e+16: tmp = y0 * (x * ((c * y2) - (b * j))) elif y3 <= -5.5e+14: tmp = a * (y5 * ((t * y2) - (y * y3))) elif y3 <= 9.8e-253: tmp = x * ((y * ((a * b) - (c * i))) + (j * ((i * y1) - (b * y0)))) elif y3 <= 3.1e-240: tmp = t_1 elif y3 <= 1.36e-114: tmp = b * (((a * ((x * y) - (z * t))) + (y4 * t_2)) + (y0 * ((z * k) - (x * j)))) elif y3 <= 1.96e-78: tmp = y2 * (x * ((c * y0) - (a * y1))) elif y3 <= 2800000000000.0: tmp = t_1 elif y3 <= 3.6e+87: tmp = x * (((i * ((j * y1) - (y * c))) + (a * (y * b))) - (y0 * (b * j))) else: tmp = y4 * (((b * t_2) + (y1 * ((k * y2) - (j * y3)))) + (c * ((y * y3) - (t * y2)))) return tmp
function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = Float64(t * Float64(c * Float64(Float64(z * i) - Float64(y2 * y4)))) t_2 = Float64(Float64(t * j) - Float64(y * k)) tmp = 0.0 if (y3 <= -1.3e+80) tmp = Float64(a * Float64(y3 * Float64(Float64(z * y1) - Float64(y * y5)))); elseif (y3 <= -2.5e+16) tmp = Float64(y0 * Float64(x * Float64(Float64(c * y2) - Float64(b * j)))); elseif (y3 <= -5.5e+14) tmp = Float64(a * Float64(y5 * Float64(Float64(t * y2) - Float64(y * y3)))); elseif (y3 <= 9.8e-253) tmp = Float64(x * Float64(Float64(y * Float64(Float64(a * b) - Float64(c * i))) + Float64(j * Float64(Float64(i * y1) - Float64(b * y0))))); elseif (y3 <= 3.1e-240) tmp = t_1; elseif (y3 <= 1.36e-114) tmp = Float64(b * Float64(Float64(Float64(a * Float64(Float64(x * y) - Float64(z * t))) + Float64(y4 * t_2)) + Float64(y0 * Float64(Float64(z * k) - Float64(x * j))))); elseif (y3 <= 1.96e-78) tmp = Float64(y2 * Float64(x * Float64(Float64(c * y0) - Float64(a * y1)))); elseif (y3 <= 2800000000000.0) tmp = t_1; elseif (y3 <= 3.6e+87) tmp = Float64(x * Float64(Float64(Float64(i * Float64(Float64(j * y1) - Float64(y * c))) + Float64(a * Float64(y * b))) - Float64(y0 * Float64(b * j)))); else tmp = Float64(y4 * Float64(Float64(Float64(b * t_2) + Float64(y1 * Float64(Float64(k * y2) - Float64(j * y3)))) + Float64(c * Float64(Float64(y * y3) - Float64(t * y2))))); end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = t * (c * ((z * i) - (y2 * y4))); t_2 = (t * j) - (y * k); tmp = 0.0; if (y3 <= -1.3e+80) tmp = a * (y3 * ((z * y1) - (y * y5))); elseif (y3 <= -2.5e+16) tmp = y0 * (x * ((c * y2) - (b * j))); elseif (y3 <= -5.5e+14) tmp = a * (y5 * ((t * y2) - (y * y3))); elseif (y3 <= 9.8e-253) tmp = x * ((y * ((a * b) - (c * i))) + (j * ((i * y1) - (b * y0)))); elseif (y3 <= 3.1e-240) tmp = t_1; elseif (y3 <= 1.36e-114) tmp = b * (((a * ((x * y) - (z * t))) + (y4 * t_2)) + (y0 * ((z * k) - (x * j)))); elseif (y3 <= 1.96e-78) tmp = y2 * (x * ((c * y0) - (a * y1))); elseif (y3 <= 2800000000000.0) tmp = t_1; elseif (y3 <= 3.6e+87) tmp = x * (((i * ((j * y1) - (y * c))) + (a * (y * b))) - (y0 * (b * j))); else tmp = y4 * (((b * t_2) + (y1 * ((k * y2) - (j * y3)))) + (c * ((y * y3) - (t * y2)))); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_, j_, k_, y0_, y1_, y2_, y3_, y4_, y5_] := Block[{t$95$1 = N[(t * N[(c * N[(N[(z * i), $MachinePrecision] - N[(y2 * y4), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(N[(t * j), $MachinePrecision] - N[(y * k), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[y3, -1.3e+80], N[(a * N[(y3 * N[(N[(z * y1), $MachinePrecision] - N[(y * y5), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y3, -2.5e+16], N[(y0 * N[(x * N[(N[(c * y2), $MachinePrecision] - N[(b * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y3, -5.5e+14], N[(a * N[(y5 * N[(N[(t * y2), $MachinePrecision] - N[(y * y3), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y3, 9.8e-253], N[(x * N[(N[(y * N[(N[(a * b), $MachinePrecision] - N[(c * i), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(j * N[(N[(i * y1), $MachinePrecision] - N[(b * y0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y3, 3.1e-240], t$95$1, If[LessEqual[y3, 1.36e-114], N[(b * N[(N[(N[(a * N[(N[(x * y), $MachinePrecision] - N[(z * t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(y4 * t$95$2), $MachinePrecision]), $MachinePrecision] + N[(y0 * N[(N[(z * k), $MachinePrecision] - N[(x * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y3, 1.96e-78], N[(y2 * N[(x * N[(N[(c * y0), $MachinePrecision] - N[(a * y1), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y3, 2800000000000.0], t$95$1, If[LessEqual[y3, 3.6e+87], N[(x * N[(N[(N[(i * N[(N[(j * y1), $MachinePrecision] - N[(y * c), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(a * N[(y * b), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - N[(y0 * N[(b * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(y4 * N[(N[(N[(b * t$95$2), $MachinePrecision] + N[(y1 * N[(N[(k * y2), $MachinePrecision] - N[(j * y3), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(c * N[(N[(y * y3), $MachinePrecision] - N[(t * y2), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := t \cdot \left(c \cdot \left(z \cdot i - y2 \cdot y4\right)\right)\\
t_2 := t \cdot j - y \cdot k\\
\mathbf{if}\;y3 \leq -1.3 \cdot 10^{+80}:\\
\;\;\;\;a \cdot \left(y3 \cdot \left(z \cdot y1 - y \cdot y5\right)\right)\\
\mathbf{elif}\;y3 \leq -2.5 \cdot 10^{+16}:\\
\;\;\;\;y0 \cdot \left(x \cdot \left(c \cdot y2 - b \cdot j\right)\right)\\
\mathbf{elif}\;y3 \leq -5.5 \cdot 10^{+14}:\\
\;\;\;\;a \cdot \left(y5 \cdot \left(t \cdot y2 - y \cdot y3\right)\right)\\
\mathbf{elif}\;y3 \leq 9.8 \cdot 10^{-253}:\\
\;\;\;\;x \cdot \left(y \cdot \left(a \cdot b - c \cdot i\right) + j \cdot \left(i \cdot y1 - b \cdot y0\right)\right)\\
\mathbf{elif}\;y3 \leq 3.1 \cdot 10^{-240}:\\
\;\;\;\;t_1\\
\mathbf{elif}\;y3 \leq 1.36 \cdot 10^{-114}:\\
\;\;\;\;b \cdot \left(\left(a \cdot \left(x \cdot y - z \cdot t\right) + y4 \cdot t_2\right) + y0 \cdot \left(z \cdot k - x \cdot j\right)\right)\\
\mathbf{elif}\;y3 \leq 1.96 \cdot 10^{-78}:\\
\;\;\;\;y2 \cdot \left(x \cdot \left(c \cdot y0 - a \cdot y1\right)\right)\\
\mathbf{elif}\;y3 \leq 2800000000000:\\
\;\;\;\;t_1\\
\mathbf{elif}\;y3 \leq 3.6 \cdot 10^{+87}:\\
\;\;\;\;x \cdot \left(\left(i \cdot \left(j \cdot y1 - y \cdot c\right) + a \cdot \left(y \cdot b\right)\right) - y0 \cdot \left(b \cdot j\right)\right)\\
\mathbf{else}:\\
\;\;\;\;y4 \cdot \left(\left(b \cdot t_2 + y1 \cdot \left(k \cdot y2 - j \cdot y3\right)\right) + c \cdot \left(y \cdot y3 - t \cdot y2\right)\right)\\
\end{array}
\end{array}
if y3 < -1.29999999999999991e80Initial program 22.2%
Simplified33.3%
Taylor expanded in a around inf 55.8%
mul-1-neg55.8%
mul-1-neg55.8%
Simplified55.8%
Taylor expanded in y3 around -inf 67.1%
if -1.29999999999999991e80 < y3 < -2.5e16Initial program 23.2%
Simplified23.2%
Taylor expanded in x around inf 34.7%
Taylor expanded in y0 around inf 67.7%
if -2.5e16 < y3 < -5.5e14Initial program 0.0%
Simplified0.0%
Taylor expanded in a around inf 50.0%
mul-1-neg50.0%
mul-1-neg50.0%
Simplified50.0%
Taylor expanded in y5 around inf 100.0%
if -5.5e14 < y3 < 9.7999999999999999e-253Initial program 37.9%
Simplified37.9%
Taylor expanded in x around inf 55.4%
Taylor expanded in y2 around 0 52.8%
if 9.7999999999999999e-253 < y3 < 3.10000000000000017e-240 or 1.96e-78 < y3 < 2.8e12Initial program 13.3%
Simplified13.3%
Taylor expanded in t around inf 50.5%
associate--l+50.5%
mul-1-neg50.5%
Simplified50.5%
Taylor expanded in c around -inf 54.8%
mul-1-neg54.8%
unsub-neg54.8%
*-commutative54.8%
Simplified54.8%
if 3.10000000000000017e-240 < y3 < 1.3599999999999999e-114Initial program 37.2%
Simplified37.2%
Taylor expanded in b around inf 52.5%
if 1.3599999999999999e-114 < y3 < 1.96e-78Initial program 16.7%
Simplified16.7%
Taylor expanded in y2 around inf 72.1%
Taylor expanded in x around -inf 83.6%
if 2.8e12 < y3 < 3.59999999999999994e87Initial program 17.1%
Simplified17.1%
Taylor expanded in x around inf 39.6%
Taylor expanded in i around -inf 56.2%
Taylor expanded in y2 around 0 62.0%
if 3.59999999999999994e87 < y3 Initial program 25.6%
Simplified25.6%
Taylor expanded in y4 around inf 43.3%
Final simplification55.5%
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5)
:precision binary64
(let* ((t_1 (- (* t y2) (* y y3)))
(t_2 (* y5 t_1))
(t_3 (- (* y y3) (* t y2)))
(t_4
(*
y5
(+
(* i (- (* y k) (* t j)))
(+ (* a t_1) (* y0 (- (* j y3) (* k y2)))))))
(t_5 (- (* c y0) (* a y1)))
(t_6 (- (* t j) (* y k)))
(t_7 (- (* x y) (* z t)))
(t_8
(*
x
(+
(+ (* y2 t_5) (* y (- (* a b) (* c i))))
(* j (- (* i y1) (* b y0))))))
(t_9 (- (* z y3) (* x y2))))
(if (<= y5 -1.65e+174)
t_4
(if (<= y5 -1.6e-242)
t_8
(if (<= y5 1.8e-276)
(* y4 (+ (+ (* b t_6) (* y1 (- (* k y2) (* j y3)))) (* c t_3)))
(if (<= y5 1.15e-198)
t_8
(if (<= y5 6.6e-118)
(* c (- (* y4 t_3) (+ (* i t_7) (* y0 t_9))))
(if (<= y5 4.3e-48)
(*
y2
(+
(+ (* x t_5) (* k (- (* y1 y4) (* y0 y5))))
(* t (- (* a y5) (* c y4)))))
(if (<= y5 1.3e+15)
(* a (+ (* y1 t_9) (+ t_2 (* b t_7))))
(if (<= y5 7e+98)
(*
b
(+ (+ (* a t_7) (* y4 t_6)) (* y0 (- (* z k) (* x j)))))
(if (<= y5 7.2e+195) (* a t_2) t_4)))))))))))
double code(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 t_1 = (t * y2) - (y * y3);
double t_2 = y5 * t_1;
double t_3 = (y * y3) - (t * y2);
double t_4 = y5 * ((i * ((y * k) - (t * j))) + ((a * t_1) + (y0 * ((j * y3) - (k * y2)))));
double t_5 = (c * y0) - (a * y1);
double t_6 = (t * j) - (y * k);
double t_7 = (x * y) - (z * t);
double t_8 = x * (((y2 * t_5) + (y * ((a * b) - (c * i)))) + (j * ((i * y1) - (b * y0))));
double t_9 = (z * y3) - (x * y2);
double tmp;
if (y5 <= -1.65e+174) {
tmp = t_4;
} else if (y5 <= -1.6e-242) {
tmp = t_8;
} else if (y5 <= 1.8e-276) {
tmp = y4 * (((b * t_6) + (y1 * ((k * y2) - (j * y3)))) + (c * t_3));
} else if (y5 <= 1.15e-198) {
tmp = t_8;
} else if (y5 <= 6.6e-118) {
tmp = c * ((y4 * t_3) - ((i * t_7) + (y0 * t_9)));
} else if (y5 <= 4.3e-48) {
tmp = y2 * (((x * t_5) + (k * ((y1 * y4) - (y0 * y5)))) + (t * ((a * y5) - (c * y4))));
} else if (y5 <= 1.3e+15) {
tmp = a * ((y1 * t_9) + (t_2 + (b * t_7)));
} else if (y5 <= 7e+98) {
tmp = b * (((a * t_7) + (y4 * t_6)) + (y0 * ((z * k) - (x * j))));
} else if (y5 <= 7.2e+195) {
tmp = a * t_2;
} else {
tmp = t_4;
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8), intent (in) :: t
real(8), intent (in) :: a
real(8), intent (in) :: b
real(8), intent (in) :: c
real(8), intent (in) :: i
real(8), intent (in) :: j
real(8), intent (in) :: k
real(8), intent (in) :: y0
real(8), intent (in) :: y1
real(8), intent (in) :: y2
real(8), intent (in) :: y3
real(8), intent (in) :: y4
real(8), intent (in) :: y5
real(8) :: t_1
real(8) :: t_2
real(8) :: t_3
real(8) :: t_4
real(8) :: t_5
real(8) :: t_6
real(8) :: t_7
real(8) :: t_8
real(8) :: t_9
real(8) :: tmp
t_1 = (t * y2) - (y * y3)
t_2 = y5 * t_1
t_3 = (y * y3) - (t * y2)
t_4 = y5 * ((i * ((y * k) - (t * j))) + ((a * t_1) + (y0 * ((j * y3) - (k * y2)))))
t_5 = (c * y0) - (a * y1)
t_6 = (t * j) - (y * k)
t_7 = (x * y) - (z * t)
t_8 = x * (((y2 * t_5) + (y * ((a * b) - (c * i)))) + (j * ((i * y1) - (b * y0))))
t_9 = (z * y3) - (x * y2)
if (y5 <= (-1.65d+174)) then
tmp = t_4
else if (y5 <= (-1.6d-242)) then
tmp = t_8
else if (y5 <= 1.8d-276) then
tmp = y4 * (((b * t_6) + (y1 * ((k * y2) - (j * y3)))) + (c * t_3))
else if (y5 <= 1.15d-198) then
tmp = t_8
else if (y5 <= 6.6d-118) then
tmp = c * ((y4 * t_3) - ((i * t_7) + (y0 * t_9)))
else if (y5 <= 4.3d-48) then
tmp = y2 * (((x * t_5) + (k * ((y1 * y4) - (y0 * y5)))) + (t * ((a * y5) - (c * y4))))
else if (y5 <= 1.3d+15) then
tmp = a * ((y1 * t_9) + (t_2 + (b * t_7)))
else if (y5 <= 7d+98) then
tmp = b * (((a * t_7) + (y4 * t_6)) + (y0 * ((z * k) - (x * j))))
else if (y5 <= 7.2d+195) then
tmp = a * t_2
else
tmp = t_4
end if
code = tmp
end function
public static double code(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 t_1 = (t * y2) - (y * y3);
double t_2 = y5 * t_1;
double t_3 = (y * y3) - (t * y2);
double t_4 = y5 * ((i * ((y * k) - (t * j))) + ((a * t_1) + (y0 * ((j * y3) - (k * y2)))));
double t_5 = (c * y0) - (a * y1);
double t_6 = (t * j) - (y * k);
double t_7 = (x * y) - (z * t);
double t_8 = x * (((y2 * t_5) + (y * ((a * b) - (c * i)))) + (j * ((i * y1) - (b * y0))));
double t_9 = (z * y3) - (x * y2);
double tmp;
if (y5 <= -1.65e+174) {
tmp = t_4;
} else if (y5 <= -1.6e-242) {
tmp = t_8;
} else if (y5 <= 1.8e-276) {
tmp = y4 * (((b * t_6) + (y1 * ((k * y2) - (j * y3)))) + (c * t_3));
} else if (y5 <= 1.15e-198) {
tmp = t_8;
} else if (y5 <= 6.6e-118) {
tmp = c * ((y4 * t_3) - ((i * t_7) + (y0 * t_9)));
} else if (y5 <= 4.3e-48) {
tmp = y2 * (((x * t_5) + (k * ((y1 * y4) - (y0 * y5)))) + (t * ((a * y5) - (c * y4))));
} else if (y5 <= 1.3e+15) {
tmp = a * ((y1 * t_9) + (t_2 + (b * t_7)));
} else if (y5 <= 7e+98) {
tmp = b * (((a * t_7) + (y4 * t_6)) + (y0 * ((z * k) - (x * j))));
} else if (y5 <= 7.2e+195) {
tmp = a * t_2;
} else {
tmp = t_4;
}
return tmp;
}
def code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5): t_1 = (t * y2) - (y * y3) t_2 = y5 * t_1 t_3 = (y * y3) - (t * y2) t_4 = y5 * ((i * ((y * k) - (t * j))) + ((a * t_1) + (y0 * ((j * y3) - (k * y2))))) t_5 = (c * y0) - (a * y1) t_6 = (t * j) - (y * k) t_7 = (x * y) - (z * t) t_8 = x * (((y2 * t_5) + (y * ((a * b) - (c * i)))) + (j * ((i * y1) - (b * y0)))) t_9 = (z * y3) - (x * y2) tmp = 0 if y5 <= -1.65e+174: tmp = t_4 elif y5 <= -1.6e-242: tmp = t_8 elif y5 <= 1.8e-276: tmp = y4 * (((b * t_6) + (y1 * ((k * y2) - (j * y3)))) + (c * t_3)) elif y5 <= 1.15e-198: tmp = t_8 elif y5 <= 6.6e-118: tmp = c * ((y4 * t_3) - ((i * t_7) + (y0 * t_9))) elif y5 <= 4.3e-48: tmp = y2 * (((x * t_5) + (k * ((y1 * y4) - (y0 * y5)))) + (t * ((a * y5) - (c * y4)))) elif y5 <= 1.3e+15: tmp = a * ((y1 * t_9) + (t_2 + (b * t_7))) elif y5 <= 7e+98: tmp = b * (((a * t_7) + (y4 * t_6)) + (y0 * ((z * k) - (x * j)))) elif y5 <= 7.2e+195: tmp = a * t_2 else: tmp = t_4 return tmp
function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = Float64(Float64(t * y2) - Float64(y * y3)) t_2 = Float64(y5 * t_1) t_3 = Float64(Float64(y * y3) - Float64(t * y2)) t_4 = Float64(y5 * Float64(Float64(i * Float64(Float64(y * k) - Float64(t * j))) + Float64(Float64(a * t_1) + Float64(y0 * Float64(Float64(j * y3) - Float64(k * y2)))))) t_5 = Float64(Float64(c * y0) - Float64(a * y1)) t_6 = Float64(Float64(t * j) - Float64(y * k)) t_7 = Float64(Float64(x * y) - Float64(z * t)) t_8 = Float64(x * Float64(Float64(Float64(y2 * t_5) + Float64(y * Float64(Float64(a * b) - Float64(c * i)))) + Float64(j * Float64(Float64(i * y1) - Float64(b * y0))))) t_9 = Float64(Float64(z * y3) - Float64(x * y2)) tmp = 0.0 if (y5 <= -1.65e+174) tmp = t_4; elseif (y5 <= -1.6e-242) tmp = t_8; elseif (y5 <= 1.8e-276) tmp = Float64(y4 * Float64(Float64(Float64(b * t_6) + Float64(y1 * Float64(Float64(k * y2) - Float64(j * y3)))) + Float64(c * t_3))); elseif (y5 <= 1.15e-198) tmp = t_8; elseif (y5 <= 6.6e-118) tmp = Float64(c * Float64(Float64(y4 * t_3) - Float64(Float64(i * t_7) + Float64(y0 * t_9)))); elseif (y5 <= 4.3e-48) tmp = Float64(y2 * Float64(Float64(Float64(x * t_5) + Float64(k * Float64(Float64(y1 * y4) - Float64(y0 * y5)))) + Float64(t * Float64(Float64(a * y5) - Float64(c * y4))))); elseif (y5 <= 1.3e+15) tmp = Float64(a * Float64(Float64(y1 * t_9) + Float64(t_2 + Float64(b * t_7)))); elseif (y5 <= 7e+98) tmp = Float64(b * Float64(Float64(Float64(a * t_7) + Float64(y4 * t_6)) + Float64(y0 * Float64(Float64(z * k) - Float64(x * j))))); elseif (y5 <= 7.2e+195) tmp = Float64(a * t_2); else tmp = t_4; end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = (t * y2) - (y * y3); t_2 = y5 * t_1; t_3 = (y * y3) - (t * y2); t_4 = y5 * ((i * ((y * k) - (t * j))) + ((a * t_1) + (y0 * ((j * y3) - (k * y2))))); t_5 = (c * y0) - (a * y1); t_6 = (t * j) - (y * k); t_7 = (x * y) - (z * t); t_8 = x * (((y2 * t_5) + (y * ((a * b) - (c * i)))) + (j * ((i * y1) - (b * y0)))); t_9 = (z * y3) - (x * y2); tmp = 0.0; if (y5 <= -1.65e+174) tmp = t_4; elseif (y5 <= -1.6e-242) tmp = t_8; elseif (y5 <= 1.8e-276) tmp = y4 * (((b * t_6) + (y1 * ((k * y2) - (j * y3)))) + (c * t_3)); elseif (y5 <= 1.15e-198) tmp = t_8; elseif (y5 <= 6.6e-118) tmp = c * ((y4 * t_3) - ((i * t_7) + (y0 * t_9))); elseif (y5 <= 4.3e-48) tmp = y2 * (((x * t_5) + (k * ((y1 * y4) - (y0 * y5)))) + (t * ((a * y5) - (c * y4)))); elseif (y5 <= 1.3e+15) tmp = a * ((y1 * t_9) + (t_2 + (b * t_7))); elseif (y5 <= 7e+98) tmp = b * (((a * t_7) + (y4 * t_6)) + (y0 * ((z * k) - (x * j)))); elseif (y5 <= 7.2e+195) tmp = a * t_2; else tmp = t_4; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_, j_, k_, y0_, y1_, y2_, y3_, y4_, y5_] := Block[{t$95$1 = N[(N[(t * y2), $MachinePrecision] - N[(y * y3), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(y5 * t$95$1), $MachinePrecision]}, Block[{t$95$3 = N[(N[(y * y3), $MachinePrecision] - N[(t * y2), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$4 = N[(y5 * N[(N[(i * N[(N[(y * k), $MachinePrecision] - N[(t * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(N[(a * t$95$1), $MachinePrecision] + N[(y0 * N[(N[(j * y3), $MachinePrecision] - N[(k * y2), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$5 = N[(N[(c * y0), $MachinePrecision] - N[(a * y1), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$6 = N[(N[(t * j), $MachinePrecision] - N[(y * k), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$7 = N[(N[(x * y), $MachinePrecision] - N[(z * t), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$8 = N[(x * N[(N[(N[(y2 * t$95$5), $MachinePrecision] + N[(y * N[(N[(a * b), $MachinePrecision] - N[(c * i), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(j * N[(N[(i * y1), $MachinePrecision] - N[(b * y0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$9 = N[(N[(z * y3), $MachinePrecision] - N[(x * y2), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[y5, -1.65e+174], t$95$4, If[LessEqual[y5, -1.6e-242], t$95$8, If[LessEqual[y5, 1.8e-276], N[(y4 * N[(N[(N[(b * t$95$6), $MachinePrecision] + N[(y1 * N[(N[(k * y2), $MachinePrecision] - N[(j * y3), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(c * t$95$3), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y5, 1.15e-198], t$95$8, If[LessEqual[y5, 6.6e-118], N[(c * N[(N[(y4 * t$95$3), $MachinePrecision] - N[(N[(i * t$95$7), $MachinePrecision] + N[(y0 * t$95$9), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y5, 4.3e-48], N[(y2 * N[(N[(N[(x * t$95$5), $MachinePrecision] + N[(k * N[(N[(y1 * y4), $MachinePrecision] - N[(y0 * y5), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(t * N[(N[(a * y5), $MachinePrecision] - N[(c * y4), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y5, 1.3e+15], N[(a * N[(N[(y1 * t$95$9), $MachinePrecision] + N[(t$95$2 + N[(b * t$95$7), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y5, 7e+98], N[(b * N[(N[(N[(a * t$95$7), $MachinePrecision] + N[(y4 * t$95$6), $MachinePrecision]), $MachinePrecision] + N[(y0 * N[(N[(z * k), $MachinePrecision] - N[(x * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y5, 7.2e+195], N[(a * t$95$2), $MachinePrecision], t$95$4]]]]]]]]]]]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := t \cdot y2 - y \cdot y3\\
t_2 := y5 \cdot t_1\\
t_3 := y \cdot y3 - t \cdot y2\\
t_4 := y5 \cdot \left(i \cdot \left(y \cdot k - t \cdot j\right) + \left(a \cdot t_1 + y0 \cdot \left(j \cdot y3 - k \cdot y2\right)\right)\right)\\
t_5 := c \cdot y0 - a \cdot y1\\
t_6 := t \cdot j - y \cdot k\\
t_7 := x \cdot y - z \cdot t\\
t_8 := x \cdot \left(\left(y2 \cdot t_5 + y \cdot \left(a \cdot b - c \cdot i\right)\right) + j \cdot \left(i \cdot y1 - b \cdot y0\right)\right)\\
t_9 := z \cdot y3 - x \cdot y2\\
\mathbf{if}\;y5 \leq -1.65 \cdot 10^{+174}:\\
\;\;\;\;t_4\\
\mathbf{elif}\;y5 \leq -1.6 \cdot 10^{-242}:\\
\;\;\;\;t_8\\
\mathbf{elif}\;y5 \leq 1.8 \cdot 10^{-276}:\\
\;\;\;\;y4 \cdot \left(\left(b \cdot t_6 + y1 \cdot \left(k \cdot y2 - j \cdot y3\right)\right) + c \cdot t_3\right)\\
\mathbf{elif}\;y5 \leq 1.15 \cdot 10^{-198}:\\
\;\;\;\;t_8\\
\mathbf{elif}\;y5 \leq 6.6 \cdot 10^{-118}:\\
\;\;\;\;c \cdot \left(y4 \cdot t_3 - \left(i \cdot t_7 + y0 \cdot t_9\right)\right)\\
\mathbf{elif}\;y5 \leq 4.3 \cdot 10^{-48}:\\
\;\;\;\;y2 \cdot \left(\left(x \cdot t_5 + k \cdot \left(y1 \cdot y4 - y0 \cdot y5\right)\right) + t \cdot \left(a \cdot y5 - c \cdot y4\right)\right)\\
\mathbf{elif}\;y5 \leq 1.3 \cdot 10^{+15}:\\
\;\;\;\;a \cdot \left(y1 \cdot t_9 + \left(t_2 + b \cdot t_7\right)\right)\\
\mathbf{elif}\;y5 \leq 7 \cdot 10^{+98}:\\
\;\;\;\;b \cdot \left(\left(a \cdot t_7 + y4 \cdot t_6\right) + y0 \cdot \left(z \cdot k - x \cdot j\right)\right)\\
\mathbf{elif}\;y5 \leq 7.2 \cdot 10^{+195}:\\
\;\;\;\;a \cdot t_2\\
\mathbf{else}:\\
\;\;\;\;t_4\\
\end{array}
\end{array}
if y5 < -1.65e174 or 7.1999999999999997e195 < y5 Initial program 17.6%
Simplified21.9%
Taylor expanded in y5 around -inf 72.0%
if -1.65e174 < y5 < -1.59999999999999999e-242 or 1.79999999999999997e-276 < y5 < 1.15000000000000007e-198Initial program 37.4%
Simplified37.4%
Taylor expanded in x around inf 57.6%
if -1.59999999999999999e-242 < y5 < 1.79999999999999997e-276Initial program 21.1%
Simplified21.1%
Taylor expanded in y4 around inf 63.6%
if 1.15000000000000007e-198 < y5 < 6.5999999999999999e-118Initial program 34.6%
Simplified34.6%
Taylor expanded in c around inf 69.8%
if 6.5999999999999999e-118 < y5 < 4.3e-48Initial program 21.8%
Simplified21.8%
Taylor expanded in y2 around inf 64.8%
if 4.3e-48 < y5 < 1.3e15Initial program 34.1%
Simplified34.1%
Taylor expanded in a around inf 68.0%
mul-1-neg68.0%
mul-1-neg68.0%
Simplified68.0%
if 1.3e15 < y5 < 7e98Initial program 31.6%
Simplified31.6%
Taylor expanded in b around inf 58.2%
if 7e98 < y5 < 7.1999999999999997e195Initial program 14.1%
Simplified21.0%
Taylor expanded in a around inf 45.0%
mul-1-neg45.0%
mul-1-neg45.0%
Simplified45.0%
Taylor expanded in y5 around inf 45.6%
Final simplification61.3%
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5)
:precision binary64
(let* ((t_1 (- (* c y0) (* a y1)))
(t_2 (- (* t j) (* y k)))
(t_3
(*
y4
(+
(+ (* b t_2) (* y1 (- (* k y2) (* j y3))))
(* c (- (* y y3) (* t y2)))))))
(if (<= y2 -1.16e+231)
(* y1 (* y2 (- (* k y4) (* x a))))
(if (<= y2 -3.6e+178)
(*
b
(+
(+ (* a (- (* x y) (* z t))) (* y4 t_2))
(* y0 (- (* z k) (* x j)))))
(if (<= y2 -4.8e+116)
(* t (* c (- (* z i) (* y2 y4))))
(if (<= y2 -1e-52)
t_3
(if (<= y2 8e-190)
(*
x
(- (+ (* i (- (* j y1) (* y c))) (* a (* y b))) (* y0 (* b j))))
(if (<= y2 6.1e-152)
t_3
(if (<= y2 1.3e+250)
(*
x
(+
(+ (* y2 t_1) (* y (- (* a b) (* c i))))
(* j (- (* i y1) (* b y0)))))
(if (<= y2 2.2e+281)
(* (* t y5) (* a y2))
(* y2 (* x t_1))))))))))))
double code(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 t_1 = (c * y0) - (a * y1);
double t_2 = (t * j) - (y * k);
double t_3 = y4 * (((b * t_2) + (y1 * ((k * y2) - (j * y3)))) + (c * ((y * y3) - (t * y2))));
double tmp;
if (y2 <= -1.16e+231) {
tmp = y1 * (y2 * ((k * y4) - (x * a)));
} else if (y2 <= -3.6e+178) {
tmp = b * (((a * ((x * y) - (z * t))) + (y4 * t_2)) + (y0 * ((z * k) - (x * j))));
} else if (y2 <= -4.8e+116) {
tmp = t * (c * ((z * i) - (y2 * y4)));
} else if (y2 <= -1e-52) {
tmp = t_3;
} else if (y2 <= 8e-190) {
tmp = x * (((i * ((j * y1) - (y * c))) + (a * (y * b))) - (y0 * (b * j)));
} else if (y2 <= 6.1e-152) {
tmp = t_3;
} else if (y2 <= 1.3e+250) {
tmp = x * (((y2 * t_1) + (y * ((a * b) - (c * i)))) + (j * ((i * y1) - (b * y0))));
} else if (y2 <= 2.2e+281) {
tmp = (t * y5) * (a * y2);
} else {
tmp = y2 * (x * t_1);
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8), intent (in) :: t
real(8), intent (in) :: a
real(8), intent (in) :: b
real(8), intent (in) :: c
real(8), intent (in) :: i
real(8), intent (in) :: j
real(8), intent (in) :: k
real(8), intent (in) :: y0
real(8), intent (in) :: y1
real(8), intent (in) :: y2
real(8), intent (in) :: y3
real(8), intent (in) :: y4
real(8), intent (in) :: y5
real(8) :: t_1
real(8) :: t_2
real(8) :: t_3
real(8) :: tmp
t_1 = (c * y0) - (a * y1)
t_2 = (t * j) - (y * k)
t_3 = y4 * (((b * t_2) + (y1 * ((k * y2) - (j * y3)))) + (c * ((y * y3) - (t * y2))))
if (y2 <= (-1.16d+231)) then
tmp = y1 * (y2 * ((k * y4) - (x * a)))
else if (y2 <= (-3.6d+178)) then
tmp = b * (((a * ((x * y) - (z * t))) + (y4 * t_2)) + (y0 * ((z * k) - (x * j))))
else if (y2 <= (-4.8d+116)) then
tmp = t * (c * ((z * i) - (y2 * y4)))
else if (y2 <= (-1d-52)) then
tmp = t_3
else if (y2 <= 8d-190) then
tmp = x * (((i * ((j * y1) - (y * c))) + (a * (y * b))) - (y0 * (b * j)))
else if (y2 <= 6.1d-152) then
tmp = t_3
else if (y2 <= 1.3d+250) then
tmp = x * (((y2 * t_1) + (y * ((a * b) - (c * i)))) + (j * ((i * y1) - (b * y0))))
else if (y2 <= 2.2d+281) then
tmp = (t * y5) * (a * y2)
else
tmp = y2 * (x * t_1)
end if
code = tmp
end function
public static double code(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 t_1 = (c * y0) - (a * y1);
double t_2 = (t * j) - (y * k);
double t_3 = y4 * (((b * t_2) + (y1 * ((k * y2) - (j * y3)))) + (c * ((y * y3) - (t * y2))));
double tmp;
if (y2 <= -1.16e+231) {
tmp = y1 * (y2 * ((k * y4) - (x * a)));
} else if (y2 <= -3.6e+178) {
tmp = b * (((a * ((x * y) - (z * t))) + (y4 * t_2)) + (y0 * ((z * k) - (x * j))));
} else if (y2 <= -4.8e+116) {
tmp = t * (c * ((z * i) - (y2 * y4)));
} else if (y2 <= -1e-52) {
tmp = t_3;
} else if (y2 <= 8e-190) {
tmp = x * (((i * ((j * y1) - (y * c))) + (a * (y * b))) - (y0 * (b * j)));
} else if (y2 <= 6.1e-152) {
tmp = t_3;
} else if (y2 <= 1.3e+250) {
tmp = x * (((y2 * t_1) + (y * ((a * b) - (c * i)))) + (j * ((i * y1) - (b * y0))));
} else if (y2 <= 2.2e+281) {
tmp = (t * y5) * (a * y2);
} else {
tmp = y2 * (x * t_1);
}
return tmp;
}
def code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5): t_1 = (c * y0) - (a * y1) t_2 = (t * j) - (y * k) t_3 = y4 * (((b * t_2) + (y1 * ((k * y2) - (j * y3)))) + (c * ((y * y3) - (t * y2)))) tmp = 0 if y2 <= -1.16e+231: tmp = y1 * (y2 * ((k * y4) - (x * a))) elif y2 <= -3.6e+178: tmp = b * (((a * ((x * y) - (z * t))) + (y4 * t_2)) + (y0 * ((z * k) - (x * j)))) elif y2 <= -4.8e+116: tmp = t * (c * ((z * i) - (y2 * y4))) elif y2 <= -1e-52: tmp = t_3 elif y2 <= 8e-190: tmp = x * (((i * ((j * y1) - (y * c))) + (a * (y * b))) - (y0 * (b * j))) elif y2 <= 6.1e-152: tmp = t_3 elif y2 <= 1.3e+250: tmp = x * (((y2 * t_1) + (y * ((a * b) - (c * i)))) + (j * ((i * y1) - (b * y0)))) elif y2 <= 2.2e+281: tmp = (t * y5) * (a * y2) else: tmp = y2 * (x * t_1) return tmp
function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = Float64(Float64(c * y0) - Float64(a * y1)) t_2 = Float64(Float64(t * j) - Float64(y * k)) t_3 = Float64(y4 * Float64(Float64(Float64(b * t_2) + Float64(y1 * Float64(Float64(k * y2) - Float64(j * y3)))) + Float64(c * Float64(Float64(y * y3) - Float64(t * y2))))) tmp = 0.0 if (y2 <= -1.16e+231) tmp = Float64(y1 * Float64(y2 * Float64(Float64(k * y4) - Float64(x * a)))); elseif (y2 <= -3.6e+178) tmp = Float64(b * Float64(Float64(Float64(a * Float64(Float64(x * y) - Float64(z * t))) + Float64(y4 * t_2)) + Float64(y0 * Float64(Float64(z * k) - Float64(x * j))))); elseif (y2 <= -4.8e+116) tmp = Float64(t * Float64(c * Float64(Float64(z * i) - Float64(y2 * y4)))); elseif (y2 <= -1e-52) tmp = t_3; elseif (y2 <= 8e-190) tmp = Float64(x * Float64(Float64(Float64(i * Float64(Float64(j * y1) - Float64(y * c))) + Float64(a * Float64(y * b))) - Float64(y0 * Float64(b * j)))); elseif (y2 <= 6.1e-152) tmp = t_3; elseif (y2 <= 1.3e+250) tmp = Float64(x * Float64(Float64(Float64(y2 * t_1) + Float64(y * Float64(Float64(a * b) - Float64(c * i)))) + Float64(j * Float64(Float64(i * y1) - Float64(b * y0))))); elseif (y2 <= 2.2e+281) tmp = Float64(Float64(t * y5) * Float64(a * y2)); else tmp = Float64(y2 * Float64(x * t_1)); end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = (c * y0) - (a * y1); t_2 = (t * j) - (y * k); t_3 = y4 * (((b * t_2) + (y1 * ((k * y2) - (j * y3)))) + (c * ((y * y3) - (t * y2)))); tmp = 0.0; if (y2 <= -1.16e+231) tmp = y1 * (y2 * ((k * y4) - (x * a))); elseif (y2 <= -3.6e+178) tmp = b * (((a * ((x * y) - (z * t))) + (y4 * t_2)) + (y0 * ((z * k) - (x * j)))); elseif (y2 <= -4.8e+116) tmp = t * (c * ((z * i) - (y2 * y4))); elseif (y2 <= -1e-52) tmp = t_3; elseif (y2 <= 8e-190) tmp = x * (((i * ((j * y1) - (y * c))) + (a * (y * b))) - (y0 * (b * j))); elseif (y2 <= 6.1e-152) tmp = t_3; elseif (y2 <= 1.3e+250) tmp = x * (((y2 * t_1) + (y * ((a * b) - (c * i)))) + (j * ((i * y1) - (b * y0)))); elseif (y2 <= 2.2e+281) tmp = (t * y5) * (a * y2); else tmp = y2 * (x * t_1); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_, j_, k_, y0_, y1_, y2_, y3_, y4_, y5_] := Block[{t$95$1 = N[(N[(c * y0), $MachinePrecision] - N[(a * y1), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(N[(t * j), $MachinePrecision] - N[(y * k), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$3 = N[(y4 * N[(N[(N[(b * t$95$2), $MachinePrecision] + N[(y1 * N[(N[(k * y2), $MachinePrecision] - N[(j * y3), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(c * N[(N[(y * y3), $MachinePrecision] - N[(t * y2), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[y2, -1.16e+231], N[(y1 * N[(y2 * N[(N[(k * y4), $MachinePrecision] - N[(x * a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y2, -3.6e+178], N[(b * N[(N[(N[(a * N[(N[(x * y), $MachinePrecision] - N[(z * t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(y4 * t$95$2), $MachinePrecision]), $MachinePrecision] + N[(y0 * N[(N[(z * k), $MachinePrecision] - N[(x * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y2, -4.8e+116], N[(t * N[(c * N[(N[(z * i), $MachinePrecision] - N[(y2 * y4), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y2, -1e-52], t$95$3, If[LessEqual[y2, 8e-190], N[(x * N[(N[(N[(i * N[(N[(j * y1), $MachinePrecision] - N[(y * c), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(a * N[(y * b), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - N[(y0 * N[(b * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y2, 6.1e-152], t$95$3, If[LessEqual[y2, 1.3e+250], N[(x * N[(N[(N[(y2 * t$95$1), $MachinePrecision] + N[(y * N[(N[(a * b), $MachinePrecision] - N[(c * i), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(j * N[(N[(i * y1), $MachinePrecision] - N[(b * y0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y2, 2.2e+281], N[(N[(t * y5), $MachinePrecision] * N[(a * y2), $MachinePrecision]), $MachinePrecision], N[(y2 * N[(x * t$95$1), $MachinePrecision]), $MachinePrecision]]]]]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := c \cdot y0 - a \cdot y1\\
t_2 := t \cdot j - y \cdot k\\
t_3 := y4 \cdot \left(\left(b \cdot t_2 + y1 \cdot \left(k \cdot y2 - j \cdot y3\right)\right) + c \cdot \left(y \cdot y3 - t \cdot y2\right)\right)\\
\mathbf{if}\;y2 \leq -1.16 \cdot 10^{+231}:\\
\;\;\;\;y1 \cdot \left(y2 \cdot \left(k \cdot y4 - x \cdot a\right)\right)\\
\mathbf{elif}\;y2 \leq -3.6 \cdot 10^{+178}:\\
\;\;\;\;b \cdot \left(\left(a \cdot \left(x \cdot y - z \cdot t\right) + y4 \cdot t_2\right) + y0 \cdot \left(z \cdot k - x \cdot j\right)\right)\\
\mathbf{elif}\;y2 \leq -4.8 \cdot 10^{+116}:\\
\;\;\;\;t \cdot \left(c \cdot \left(z \cdot i - y2 \cdot y4\right)\right)\\
\mathbf{elif}\;y2 \leq -1 \cdot 10^{-52}:\\
\;\;\;\;t_3\\
\mathbf{elif}\;y2 \leq 8 \cdot 10^{-190}:\\
\;\;\;\;x \cdot \left(\left(i \cdot \left(j \cdot y1 - y \cdot c\right) + a \cdot \left(y \cdot b\right)\right) - y0 \cdot \left(b \cdot j\right)\right)\\
\mathbf{elif}\;y2 \leq 6.1 \cdot 10^{-152}:\\
\;\;\;\;t_3\\
\mathbf{elif}\;y2 \leq 1.3 \cdot 10^{+250}:\\
\;\;\;\;x \cdot \left(\left(y2 \cdot t_1 + y \cdot \left(a \cdot b - c \cdot i\right)\right) + j \cdot \left(i \cdot y1 - b \cdot y0\right)\right)\\
\mathbf{elif}\;y2 \leq 2.2 \cdot 10^{+281}:\\
\;\;\;\;\left(t \cdot y5\right) \cdot \left(a \cdot y2\right)\\
\mathbf{else}:\\
\;\;\;\;y2 \cdot \left(x \cdot t_1\right)\\
\end{array}
\end{array}
if y2 < -1.16e231Initial program 25.0%
Simplified25.0%
Taylor expanded in y2 around inf 75.5%
Taylor expanded in y1 around inf 67.1%
*-commutative67.1%
+-commutative67.1%
mul-1-neg67.1%
unsub-neg67.1%
*-commutative67.1%
Simplified67.1%
if -1.16e231 < y2 < -3.5999999999999998e178Initial program 20.0%
Simplified20.0%
Taylor expanded in b around inf 80.6%
if -3.5999999999999998e178 < y2 < -4.8000000000000001e116Initial program 23.7%
Simplified23.7%
Taylor expanded in t around inf 57.3%
associate--l+57.3%
mul-1-neg57.3%
Simplified57.3%
Taylor expanded in c around -inf 72.1%
mul-1-neg72.1%
unsub-neg72.1%
*-commutative72.1%
Simplified72.1%
if -4.8000000000000001e116 < y2 < -1e-52 or 8.0000000000000002e-190 < y2 < 6.09999999999999983e-152Initial program 31.4%
Simplified31.4%
Taylor expanded in y4 around inf 54.9%
if -1e-52 < y2 < 8.0000000000000002e-190Initial program 29.2%
Simplified29.2%
Taylor expanded in x around inf 41.8%
Taylor expanded in i around -inf 43.1%
Taylor expanded in y2 around 0 50.1%
if 6.09999999999999983e-152 < y2 < 1.30000000000000006e250Initial program 28.5%
Simplified28.5%
Taylor expanded in x around inf 49.9%
if 1.30000000000000006e250 < y2 < 2.2000000000000001e281Initial program 0.0%
Simplified0.0%
Taylor expanded in t around inf 60.0%
associate--l+60.0%
mul-1-neg60.0%
Simplified60.0%
Taylor expanded in y5 around -inf 80.6%
mul-1-neg80.6%
*-commutative80.6%
Simplified80.6%
Taylor expanded in i around 0 80.6%
neg-mul-180.6%
distribute-rgt-neg-in80.6%
Simplified80.6%
if 2.2000000000000001e281 < y2 Initial program 50.0%
Simplified50.0%
Taylor expanded in y2 around inf 51.1%
Taylor expanded in x around -inf 67.7%
Final simplification55.7%
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5)
:precision binary64
(let* ((t_1 (- (* a y5) (* c y4)))
(t_2
(*
y4
(+
(+ (* b (- (* t j) (* y k))) (* y1 (- (* k y2) (* j y3))))
(* c (- (* y y3) (* t y2))))))
(t_3 (- (* c y0) (* a y1))))
(if (<= y2 -1.55e+116)
(* t (* c (- (* z i) (* y2 y4))))
(if (<= y2 -1.65e-54)
t_2
(if (<= y2 4.6e-195)
(* x (- (+ (* i (- (* j y1) (* y c))) (* a (* y b))) (* y0 (* b j))))
(if (<= y2 7e-152)
t_2
(if (<= y2 1e+74)
(*
x
(+
(+ (* y2 t_3) (* y (- (* a b) (* c i))))
(* j (- (* i y1) (* b y0)))))
(if (<= y2 1.12e+173)
(*
t
(+
(* z (- (* c i) (* a b)))
(+ (* j (- (* b y4) (* i y5))) (* y2 t_1))))
(if (<= y2 1.5e+230)
(* x (* c (- (* y0 y2) (* y i))))
(*
y2
(+
(+ (* x t_3) (* k (- (* y1 y4) (* y0 y5))))
(* t t_1))))))))))))
double code(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 t_1 = (a * y5) - (c * y4);
double t_2 = y4 * (((b * ((t * j) - (y * k))) + (y1 * ((k * y2) - (j * y3)))) + (c * ((y * y3) - (t * y2))));
double t_3 = (c * y0) - (a * y1);
double tmp;
if (y2 <= -1.55e+116) {
tmp = t * (c * ((z * i) - (y2 * y4)));
} else if (y2 <= -1.65e-54) {
tmp = t_2;
} else if (y2 <= 4.6e-195) {
tmp = x * (((i * ((j * y1) - (y * c))) + (a * (y * b))) - (y0 * (b * j)));
} else if (y2 <= 7e-152) {
tmp = t_2;
} else if (y2 <= 1e+74) {
tmp = x * (((y2 * t_3) + (y * ((a * b) - (c * i)))) + (j * ((i * y1) - (b * y0))));
} else if (y2 <= 1.12e+173) {
tmp = t * ((z * ((c * i) - (a * b))) + ((j * ((b * y4) - (i * y5))) + (y2 * t_1)));
} else if (y2 <= 1.5e+230) {
tmp = x * (c * ((y0 * y2) - (y * i)));
} else {
tmp = y2 * (((x * t_3) + (k * ((y1 * y4) - (y0 * y5)))) + (t * t_1));
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8), intent (in) :: t
real(8), intent (in) :: a
real(8), intent (in) :: b
real(8), intent (in) :: c
real(8), intent (in) :: i
real(8), intent (in) :: j
real(8), intent (in) :: k
real(8), intent (in) :: y0
real(8), intent (in) :: y1
real(8), intent (in) :: y2
real(8), intent (in) :: y3
real(8), intent (in) :: y4
real(8), intent (in) :: y5
real(8) :: t_1
real(8) :: t_2
real(8) :: t_3
real(8) :: tmp
t_1 = (a * y5) - (c * y4)
t_2 = y4 * (((b * ((t * j) - (y * k))) + (y1 * ((k * y2) - (j * y3)))) + (c * ((y * y3) - (t * y2))))
t_3 = (c * y0) - (a * y1)
if (y2 <= (-1.55d+116)) then
tmp = t * (c * ((z * i) - (y2 * y4)))
else if (y2 <= (-1.65d-54)) then
tmp = t_2
else if (y2 <= 4.6d-195) then
tmp = x * (((i * ((j * y1) - (y * c))) + (a * (y * b))) - (y0 * (b * j)))
else if (y2 <= 7d-152) then
tmp = t_2
else if (y2 <= 1d+74) then
tmp = x * (((y2 * t_3) + (y * ((a * b) - (c * i)))) + (j * ((i * y1) - (b * y0))))
else if (y2 <= 1.12d+173) then
tmp = t * ((z * ((c * i) - (a * b))) + ((j * ((b * y4) - (i * y5))) + (y2 * t_1)))
else if (y2 <= 1.5d+230) then
tmp = x * (c * ((y0 * y2) - (y * i)))
else
tmp = y2 * (((x * t_3) + (k * ((y1 * y4) - (y0 * y5)))) + (t * t_1))
end if
code = tmp
end function
public static double code(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 t_1 = (a * y5) - (c * y4);
double t_2 = y4 * (((b * ((t * j) - (y * k))) + (y1 * ((k * y2) - (j * y3)))) + (c * ((y * y3) - (t * y2))));
double t_3 = (c * y0) - (a * y1);
double tmp;
if (y2 <= -1.55e+116) {
tmp = t * (c * ((z * i) - (y2 * y4)));
} else if (y2 <= -1.65e-54) {
tmp = t_2;
} else if (y2 <= 4.6e-195) {
tmp = x * (((i * ((j * y1) - (y * c))) + (a * (y * b))) - (y0 * (b * j)));
} else if (y2 <= 7e-152) {
tmp = t_2;
} else if (y2 <= 1e+74) {
tmp = x * (((y2 * t_3) + (y * ((a * b) - (c * i)))) + (j * ((i * y1) - (b * y0))));
} else if (y2 <= 1.12e+173) {
tmp = t * ((z * ((c * i) - (a * b))) + ((j * ((b * y4) - (i * y5))) + (y2 * t_1)));
} else if (y2 <= 1.5e+230) {
tmp = x * (c * ((y0 * y2) - (y * i)));
} else {
tmp = y2 * (((x * t_3) + (k * ((y1 * y4) - (y0 * y5)))) + (t * t_1));
}
return tmp;
}
def code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5): t_1 = (a * y5) - (c * y4) t_2 = y4 * (((b * ((t * j) - (y * k))) + (y1 * ((k * y2) - (j * y3)))) + (c * ((y * y3) - (t * y2)))) t_3 = (c * y0) - (a * y1) tmp = 0 if y2 <= -1.55e+116: tmp = t * (c * ((z * i) - (y2 * y4))) elif y2 <= -1.65e-54: tmp = t_2 elif y2 <= 4.6e-195: tmp = x * (((i * ((j * y1) - (y * c))) + (a * (y * b))) - (y0 * (b * j))) elif y2 <= 7e-152: tmp = t_2 elif y2 <= 1e+74: tmp = x * (((y2 * t_3) + (y * ((a * b) - (c * i)))) + (j * ((i * y1) - (b * y0)))) elif y2 <= 1.12e+173: tmp = t * ((z * ((c * i) - (a * b))) + ((j * ((b * y4) - (i * y5))) + (y2 * t_1))) elif y2 <= 1.5e+230: tmp = x * (c * ((y0 * y2) - (y * i))) else: tmp = y2 * (((x * t_3) + (k * ((y1 * y4) - (y0 * y5)))) + (t * t_1)) return tmp
function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = Float64(Float64(a * y5) - Float64(c * y4)) t_2 = Float64(y4 * Float64(Float64(Float64(b * Float64(Float64(t * j) - Float64(y * k))) + Float64(y1 * Float64(Float64(k * y2) - Float64(j * y3)))) + Float64(c * Float64(Float64(y * y3) - Float64(t * y2))))) t_3 = Float64(Float64(c * y0) - Float64(a * y1)) tmp = 0.0 if (y2 <= -1.55e+116) tmp = Float64(t * Float64(c * Float64(Float64(z * i) - Float64(y2 * y4)))); elseif (y2 <= -1.65e-54) tmp = t_2; elseif (y2 <= 4.6e-195) tmp = Float64(x * Float64(Float64(Float64(i * Float64(Float64(j * y1) - Float64(y * c))) + Float64(a * Float64(y * b))) - Float64(y0 * Float64(b * j)))); elseif (y2 <= 7e-152) tmp = t_2; elseif (y2 <= 1e+74) tmp = Float64(x * Float64(Float64(Float64(y2 * t_3) + Float64(y * Float64(Float64(a * b) - Float64(c * i)))) + Float64(j * Float64(Float64(i * y1) - Float64(b * y0))))); elseif (y2 <= 1.12e+173) tmp = Float64(t * Float64(Float64(z * Float64(Float64(c * i) - Float64(a * b))) + Float64(Float64(j * Float64(Float64(b * y4) - Float64(i * y5))) + Float64(y2 * t_1)))); elseif (y2 <= 1.5e+230) tmp = Float64(x * Float64(c * Float64(Float64(y0 * y2) - Float64(y * i)))); else tmp = Float64(y2 * Float64(Float64(Float64(x * t_3) + Float64(k * Float64(Float64(y1 * y4) - Float64(y0 * y5)))) + Float64(t * t_1))); end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = (a * y5) - (c * y4); t_2 = y4 * (((b * ((t * j) - (y * k))) + (y1 * ((k * y2) - (j * y3)))) + (c * ((y * y3) - (t * y2)))); t_3 = (c * y0) - (a * y1); tmp = 0.0; if (y2 <= -1.55e+116) tmp = t * (c * ((z * i) - (y2 * y4))); elseif (y2 <= -1.65e-54) tmp = t_2; elseif (y2 <= 4.6e-195) tmp = x * (((i * ((j * y1) - (y * c))) + (a * (y * b))) - (y0 * (b * j))); elseif (y2 <= 7e-152) tmp = t_2; elseif (y2 <= 1e+74) tmp = x * (((y2 * t_3) + (y * ((a * b) - (c * i)))) + (j * ((i * y1) - (b * y0)))); elseif (y2 <= 1.12e+173) tmp = t * ((z * ((c * i) - (a * b))) + ((j * ((b * y4) - (i * y5))) + (y2 * t_1))); elseif (y2 <= 1.5e+230) tmp = x * (c * ((y0 * y2) - (y * i))); else tmp = y2 * (((x * t_3) + (k * ((y1 * y4) - (y0 * y5)))) + (t * t_1)); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_, j_, k_, y0_, y1_, y2_, y3_, y4_, y5_] := Block[{t$95$1 = N[(N[(a * y5), $MachinePrecision] - N[(c * y4), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(y4 * N[(N[(N[(b * N[(N[(t * j), $MachinePrecision] - N[(y * k), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(y1 * N[(N[(k * y2), $MachinePrecision] - N[(j * y3), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(c * N[(N[(y * y3), $MachinePrecision] - N[(t * y2), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$3 = N[(N[(c * y0), $MachinePrecision] - N[(a * y1), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[y2, -1.55e+116], N[(t * N[(c * N[(N[(z * i), $MachinePrecision] - N[(y2 * y4), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y2, -1.65e-54], t$95$2, If[LessEqual[y2, 4.6e-195], N[(x * N[(N[(N[(i * N[(N[(j * y1), $MachinePrecision] - N[(y * c), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(a * N[(y * b), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - N[(y0 * N[(b * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y2, 7e-152], t$95$2, If[LessEqual[y2, 1e+74], N[(x * N[(N[(N[(y2 * t$95$3), $MachinePrecision] + N[(y * N[(N[(a * b), $MachinePrecision] - N[(c * i), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(j * N[(N[(i * y1), $MachinePrecision] - N[(b * y0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y2, 1.12e+173], N[(t * N[(N[(z * N[(N[(c * i), $MachinePrecision] - N[(a * b), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(N[(j * N[(N[(b * y4), $MachinePrecision] - N[(i * y5), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(y2 * t$95$1), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y2, 1.5e+230], N[(x * N[(c * N[(N[(y0 * y2), $MachinePrecision] - N[(y * i), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(y2 * N[(N[(N[(x * t$95$3), $MachinePrecision] + N[(k * N[(N[(y1 * y4), $MachinePrecision] - N[(y0 * y5), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(t * t$95$1), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := a \cdot y5 - c \cdot y4\\
t_2 := y4 \cdot \left(\left(b \cdot \left(t \cdot j - y \cdot k\right) + y1 \cdot \left(k \cdot y2 - j \cdot y3\right)\right) + c \cdot \left(y \cdot y3 - t \cdot y2\right)\right)\\
t_3 := c \cdot y0 - a \cdot y1\\
\mathbf{if}\;y2 \leq -1.55 \cdot 10^{+116}:\\
\;\;\;\;t \cdot \left(c \cdot \left(z \cdot i - y2 \cdot y4\right)\right)\\
\mathbf{elif}\;y2 \leq -1.65 \cdot 10^{-54}:\\
\;\;\;\;t_2\\
\mathbf{elif}\;y2 \leq 4.6 \cdot 10^{-195}:\\
\;\;\;\;x \cdot \left(\left(i \cdot \left(j \cdot y1 - y \cdot c\right) + a \cdot \left(y \cdot b\right)\right) - y0 \cdot \left(b \cdot j\right)\right)\\
\mathbf{elif}\;y2 \leq 7 \cdot 10^{-152}:\\
\;\;\;\;t_2\\
\mathbf{elif}\;y2 \leq 10^{+74}:\\
\;\;\;\;x \cdot \left(\left(y2 \cdot t_3 + y \cdot \left(a \cdot b - c \cdot i\right)\right) + j \cdot \left(i \cdot y1 - b \cdot y0\right)\right)\\
\mathbf{elif}\;y2 \leq 1.12 \cdot 10^{+173}:\\
\;\;\;\;t \cdot \left(z \cdot \left(c \cdot i - a \cdot b\right) + \left(j \cdot \left(b \cdot y4 - i \cdot y5\right) + y2 \cdot t_1\right)\right)\\
\mathbf{elif}\;y2 \leq 1.5 \cdot 10^{+230}:\\
\;\;\;\;x \cdot \left(c \cdot \left(y0 \cdot y2 - y \cdot i\right)\right)\\
\mathbf{else}:\\
\;\;\;\;y2 \cdot \left(\left(x \cdot t_3 + k \cdot \left(y1 \cdot y4 - y0 \cdot y5\right)\right) + t \cdot t_1\right)\\
\end{array}
\end{array}
if y2 < -1.54999999999999998e116Initial program 23.2%
Simplified23.2%
Taylor expanded in t around inf 48.9%
associate--l+48.9%
mul-1-neg48.9%
Simplified48.9%
Taylor expanded in c around -inf 61.2%
mul-1-neg61.2%
unsub-neg61.2%
*-commutative61.2%
Simplified61.2%
if -1.54999999999999998e116 < y2 < -1.64999999999999996e-54 or 4.6000000000000004e-195 < y2 < 7.0000000000000002e-152Initial program 31.4%
Simplified31.4%
Taylor expanded in y4 around inf 54.9%
if -1.64999999999999996e-54 < y2 < 4.6000000000000004e-195Initial program 29.2%
Simplified29.2%
Taylor expanded in x around inf 41.8%
Taylor expanded in i around -inf 43.1%
Taylor expanded in y2 around 0 50.1%
if 7.0000000000000002e-152 < y2 < 9.99999999999999952e73Initial program 34.9%
Simplified34.9%
Taylor expanded in x around inf 50.5%
if 9.99999999999999952e73 < y2 < 1.12e173Initial program 24.0%
Simplified24.0%
Taylor expanded in t around inf 68.5%
associate--l+68.5%
mul-1-neg68.5%
Simplified68.5%
if 1.12e173 < y2 < 1.50000000000000004e230Initial program 11.1%
Simplified11.1%
Taylor expanded in x around inf 56.2%
Taylor expanded in i around -inf 56.2%
Taylor expanded in c around inf 57.2%
associate-*r*67.3%
*-commutative67.3%
+-commutative67.3%
mul-1-neg67.3%
unsub-neg67.3%
*-commutative67.3%
Simplified67.3%
if 1.50000000000000004e230 < y2 Initial program 25.0%
Simplified25.0%
Taylor expanded in y2 around inf 67.2%
Final simplification56.1%
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5)
:precision binary64
(let* ((t_1
(*
y4
(+
(+ (* b (- (* t j) (* y k))) (* y1 (- (* k y2) (* j y3))))
(* c (- (* y y3) (* t y2))))))
(t_2 (- (* c y0) (* a y1))))
(if (<= y2 -4.7e+116)
(* t (* c (- (* z i) (* y2 y4))))
(if (<= y2 -2.4e-53)
t_1
(if (<= y2 4.9e-195)
(* x (- (+ (* i (- (* j y1) (* y c))) (* a (* y b))) (* y0 (* b j))))
(if (<= y2 1.08e-151)
t_1
(if (<= y2 1.2e+75)
(*
x
(+
(+ (* y2 t_2) (* y (- (* a b) (* c i))))
(* j (- (* i y1) (* b y0)))))
(*
y2
(+
(+ (* x t_2) (* k (- (* y1 y4) (* y0 y5))))
(* t (- (* a y5) (* c y4))))))))))))
double code(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 t_1 = y4 * (((b * ((t * j) - (y * k))) + (y1 * ((k * y2) - (j * y3)))) + (c * ((y * y3) - (t * y2))));
double t_2 = (c * y0) - (a * y1);
double tmp;
if (y2 <= -4.7e+116) {
tmp = t * (c * ((z * i) - (y2 * y4)));
} else if (y2 <= -2.4e-53) {
tmp = t_1;
} else if (y2 <= 4.9e-195) {
tmp = x * (((i * ((j * y1) - (y * c))) + (a * (y * b))) - (y0 * (b * j)));
} else if (y2 <= 1.08e-151) {
tmp = t_1;
} else if (y2 <= 1.2e+75) {
tmp = x * (((y2 * t_2) + (y * ((a * b) - (c * i)))) + (j * ((i * y1) - (b * y0))));
} else {
tmp = y2 * (((x * t_2) + (k * ((y1 * y4) - (y0 * y5)))) + (t * ((a * y5) - (c * y4))));
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8), intent (in) :: t
real(8), intent (in) :: a
real(8), intent (in) :: b
real(8), intent (in) :: c
real(8), intent (in) :: i
real(8), intent (in) :: j
real(8), intent (in) :: k
real(8), intent (in) :: y0
real(8), intent (in) :: y1
real(8), intent (in) :: y2
real(8), intent (in) :: y3
real(8), intent (in) :: y4
real(8), intent (in) :: y5
real(8) :: t_1
real(8) :: t_2
real(8) :: tmp
t_1 = y4 * (((b * ((t * j) - (y * k))) + (y1 * ((k * y2) - (j * y3)))) + (c * ((y * y3) - (t * y2))))
t_2 = (c * y0) - (a * y1)
if (y2 <= (-4.7d+116)) then
tmp = t * (c * ((z * i) - (y2 * y4)))
else if (y2 <= (-2.4d-53)) then
tmp = t_1
else if (y2 <= 4.9d-195) then
tmp = x * (((i * ((j * y1) - (y * c))) + (a * (y * b))) - (y0 * (b * j)))
else if (y2 <= 1.08d-151) then
tmp = t_1
else if (y2 <= 1.2d+75) then
tmp = x * (((y2 * t_2) + (y * ((a * b) - (c * i)))) + (j * ((i * y1) - (b * y0))))
else
tmp = y2 * (((x * t_2) + (k * ((y1 * y4) - (y0 * y5)))) + (t * ((a * y5) - (c * y4))))
end if
code = tmp
end function
public static double code(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 t_1 = y4 * (((b * ((t * j) - (y * k))) + (y1 * ((k * y2) - (j * y3)))) + (c * ((y * y3) - (t * y2))));
double t_2 = (c * y0) - (a * y1);
double tmp;
if (y2 <= -4.7e+116) {
tmp = t * (c * ((z * i) - (y2 * y4)));
} else if (y2 <= -2.4e-53) {
tmp = t_1;
} else if (y2 <= 4.9e-195) {
tmp = x * (((i * ((j * y1) - (y * c))) + (a * (y * b))) - (y0 * (b * j)));
} else if (y2 <= 1.08e-151) {
tmp = t_1;
} else if (y2 <= 1.2e+75) {
tmp = x * (((y2 * t_2) + (y * ((a * b) - (c * i)))) + (j * ((i * y1) - (b * y0))));
} else {
tmp = y2 * (((x * t_2) + (k * ((y1 * y4) - (y0 * y5)))) + (t * ((a * y5) - (c * y4))));
}
return tmp;
}
def code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5): t_1 = y4 * (((b * ((t * j) - (y * k))) + (y1 * ((k * y2) - (j * y3)))) + (c * ((y * y3) - (t * y2)))) t_2 = (c * y0) - (a * y1) tmp = 0 if y2 <= -4.7e+116: tmp = t * (c * ((z * i) - (y2 * y4))) elif y2 <= -2.4e-53: tmp = t_1 elif y2 <= 4.9e-195: tmp = x * (((i * ((j * y1) - (y * c))) + (a * (y * b))) - (y0 * (b * j))) elif y2 <= 1.08e-151: tmp = t_1 elif y2 <= 1.2e+75: tmp = x * (((y2 * t_2) + (y * ((a * b) - (c * i)))) + (j * ((i * y1) - (b * y0)))) else: tmp = y2 * (((x * t_2) + (k * ((y1 * y4) - (y0 * y5)))) + (t * ((a * y5) - (c * y4)))) return tmp
function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = Float64(y4 * Float64(Float64(Float64(b * Float64(Float64(t * j) - Float64(y * k))) + Float64(y1 * Float64(Float64(k * y2) - Float64(j * y3)))) + Float64(c * Float64(Float64(y * y3) - Float64(t * y2))))) t_2 = Float64(Float64(c * y0) - Float64(a * y1)) tmp = 0.0 if (y2 <= -4.7e+116) tmp = Float64(t * Float64(c * Float64(Float64(z * i) - Float64(y2 * y4)))); elseif (y2 <= -2.4e-53) tmp = t_1; elseif (y2 <= 4.9e-195) tmp = Float64(x * Float64(Float64(Float64(i * Float64(Float64(j * y1) - Float64(y * c))) + Float64(a * Float64(y * b))) - Float64(y0 * Float64(b * j)))); elseif (y2 <= 1.08e-151) tmp = t_1; elseif (y2 <= 1.2e+75) tmp = Float64(x * Float64(Float64(Float64(y2 * t_2) + Float64(y * Float64(Float64(a * b) - Float64(c * i)))) + Float64(j * Float64(Float64(i * y1) - Float64(b * y0))))); else tmp = Float64(y2 * Float64(Float64(Float64(x * t_2) + Float64(k * Float64(Float64(y1 * y4) - Float64(y0 * y5)))) + Float64(t * Float64(Float64(a * y5) - Float64(c * y4))))); end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = y4 * (((b * ((t * j) - (y * k))) + (y1 * ((k * y2) - (j * y3)))) + (c * ((y * y3) - (t * y2)))); t_2 = (c * y0) - (a * y1); tmp = 0.0; if (y2 <= -4.7e+116) tmp = t * (c * ((z * i) - (y2 * y4))); elseif (y2 <= -2.4e-53) tmp = t_1; elseif (y2 <= 4.9e-195) tmp = x * (((i * ((j * y1) - (y * c))) + (a * (y * b))) - (y0 * (b * j))); elseif (y2 <= 1.08e-151) tmp = t_1; elseif (y2 <= 1.2e+75) tmp = x * (((y2 * t_2) + (y * ((a * b) - (c * i)))) + (j * ((i * y1) - (b * y0)))); else tmp = y2 * (((x * t_2) + (k * ((y1 * y4) - (y0 * y5)))) + (t * ((a * y5) - (c * y4)))); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_, j_, k_, y0_, y1_, y2_, y3_, y4_, y5_] := Block[{t$95$1 = N[(y4 * N[(N[(N[(b * N[(N[(t * j), $MachinePrecision] - N[(y * k), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(y1 * N[(N[(k * y2), $MachinePrecision] - N[(j * y3), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(c * N[(N[(y * y3), $MachinePrecision] - N[(t * y2), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(N[(c * y0), $MachinePrecision] - N[(a * y1), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[y2, -4.7e+116], N[(t * N[(c * N[(N[(z * i), $MachinePrecision] - N[(y2 * y4), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y2, -2.4e-53], t$95$1, If[LessEqual[y2, 4.9e-195], N[(x * N[(N[(N[(i * N[(N[(j * y1), $MachinePrecision] - N[(y * c), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(a * N[(y * b), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - N[(y0 * N[(b * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y2, 1.08e-151], t$95$1, If[LessEqual[y2, 1.2e+75], N[(x * N[(N[(N[(y2 * t$95$2), $MachinePrecision] + N[(y * N[(N[(a * b), $MachinePrecision] - N[(c * i), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(j * N[(N[(i * y1), $MachinePrecision] - N[(b * y0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(y2 * N[(N[(N[(x * t$95$2), $MachinePrecision] + N[(k * N[(N[(y1 * y4), $MachinePrecision] - N[(y0 * y5), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(t * N[(N[(a * y5), $MachinePrecision] - N[(c * y4), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := y4 \cdot \left(\left(b \cdot \left(t \cdot j - y \cdot k\right) + y1 \cdot \left(k \cdot y2 - j \cdot y3\right)\right) + c \cdot \left(y \cdot y3 - t \cdot y2\right)\right)\\
t_2 := c \cdot y0 - a \cdot y1\\
\mathbf{if}\;y2 \leq -4.7 \cdot 10^{+116}:\\
\;\;\;\;t \cdot \left(c \cdot \left(z \cdot i - y2 \cdot y4\right)\right)\\
\mathbf{elif}\;y2 \leq -2.4 \cdot 10^{-53}:\\
\;\;\;\;t_1\\
\mathbf{elif}\;y2 \leq 4.9 \cdot 10^{-195}:\\
\;\;\;\;x \cdot \left(\left(i \cdot \left(j \cdot y1 - y \cdot c\right) + a \cdot \left(y \cdot b\right)\right) - y0 \cdot \left(b \cdot j\right)\right)\\
\mathbf{elif}\;y2 \leq 1.08 \cdot 10^{-151}:\\
\;\;\;\;t_1\\
\mathbf{elif}\;y2 \leq 1.2 \cdot 10^{+75}:\\
\;\;\;\;x \cdot \left(\left(y2 \cdot t_2 + y \cdot \left(a \cdot b - c \cdot i\right)\right) + j \cdot \left(i \cdot y1 - b \cdot y0\right)\right)\\
\mathbf{else}:\\
\;\;\;\;y2 \cdot \left(\left(x \cdot t_2 + k \cdot \left(y1 \cdot y4 - y0 \cdot y5\right)\right) + t \cdot \left(a \cdot y5 - c \cdot y4\right)\right)\\
\end{array}
\end{array}
if y2 < -4.7000000000000003e116Initial program 23.2%
Simplified23.2%
Taylor expanded in t around inf 48.9%
associate--l+48.9%
mul-1-neg48.9%
Simplified48.9%
Taylor expanded in c around -inf 61.2%
mul-1-neg61.2%
unsub-neg61.2%
*-commutative61.2%
Simplified61.2%
if -4.7000000000000003e116 < y2 < -2.40000000000000007e-53 or 4.9000000000000003e-195 < y2 < 1.07999999999999999e-151Initial program 31.4%
Simplified31.4%
Taylor expanded in y4 around inf 54.9%
if -2.40000000000000007e-53 < y2 < 4.9000000000000003e-195Initial program 29.2%
Simplified29.2%
Taylor expanded in x around inf 41.8%
Taylor expanded in i around -inf 43.1%
Taylor expanded in y2 around 0 50.1%
if 1.07999999999999999e-151 < y2 < 1.2e75Initial program 34.9%
Simplified34.9%
Taylor expanded in x around inf 50.5%
if 1.2e75 < y2 Initial program 21.7%
Simplified21.7%
Taylor expanded in y2 around inf 56.8%
Final simplification54.1%
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5)
:precision binary64
(let* ((t_1 (* a (* y3 (- (* z y1) (* y y5)))))
(t_2 (* a (* y5 (- (* t y2) (* y y3))))))
(if (<= y3 -2.15e+80)
t_1
(if (<= y3 -8e+17)
(* y0 (* x (- (* c y2) (* b j))))
(if (<= y3 -5.5e+14)
t_2
(if (<= y3 1.4e-295)
(* x (+ (* y (- (* a b) (* c i))) (* j (- (* i y1) (* b y0)))))
(if (<= y3 1.6e-96)
(* a (* b (- (* x y) (* z t))))
(if (<= y3 1.36e-39)
t_2
(if (<= y3 550000000000.0)
(* t (* c (- (* z i) (* y2 y4))))
(if (<= y3 1.45e+76)
(*
x
(-
(+ (* i (- (* j y1) (* y c))) (* a (* y b)))
(* y0 (* b j))))
(if (<= y3 6.28e+119)
(* c (* y4 (- (* y y3) (* t y2))))
(if (<= y3 9e+192)
(* t (* z (- (* c i) (* a b))))
t_1))))))))))))
double code(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 t_1 = a * (y3 * ((z * y1) - (y * y5)));
double t_2 = a * (y5 * ((t * y2) - (y * y3)));
double tmp;
if (y3 <= -2.15e+80) {
tmp = t_1;
} else if (y3 <= -8e+17) {
tmp = y0 * (x * ((c * y2) - (b * j)));
} else if (y3 <= -5.5e+14) {
tmp = t_2;
} else if (y3 <= 1.4e-295) {
tmp = x * ((y * ((a * b) - (c * i))) + (j * ((i * y1) - (b * y0))));
} else if (y3 <= 1.6e-96) {
tmp = a * (b * ((x * y) - (z * t)));
} else if (y3 <= 1.36e-39) {
tmp = t_2;
} else if (y3 <= 550000000000.0) {
tmp = t * (c * ((z * i) - (y2 * y4)));
} else if (y3 <= 1.45e+76) {
tmp = x * (((i * ((j * y1) - (y * c))) + (a * (y * b))) - (y0 * (b * j)));
} else if (y3 <= 6.28e+119) {
tmp = c * (y4 * ((y * y3) - (t * y2)));
} else if (y3 <= 9e+192) {
tmp = t * (z * ((c * i) - (a * b)));
} else {
tmp = t_1;
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8), intent (in) :: t
real(8), intent (in) :: a
real(8), intent (in) :: b
real(8), intent (in) :: c
real(8), intent (in) :: i
real(8), intent (in) :: j
real(8), intent (in) :: k
real(8), intent (in) :: y0
real(8), intent (in) :: y1
real(8), intent (in) :: y2
real(8), intent (in) :: y3
real(8), intent (in) :: y4
real(8), intent (in) :: y5
real(8) :: t_1
real(8) :: t_2
real(8) :: tmp
t_1 = a * (y3 * ((z * y1) - (y * y5)))
t_2 = a * (y5 * ((t * y2) - (y * y3)))
if (y3 <= (-2.15d+80)) then
tmp = t_1
else if (y3 <= (-8d+17)) then
tmp = y0 * (x * ((c * y2) - (b * j)))
else if (y3 <= (-5.5d+14)) then
tmp = t_2
else if (y3 <= 1.4d-295) then
tmp = x * ((y * ((a * b) - (c * i))) + (j * ((i * y1) - (b * y0))))
else if (y3 <= 1.6d-96) then
tmp = a * (b * ((x * y) - (z * t)))
else if (y3 <= 1.36d-39) then
tmp = t_2
else if (y3 <= 550000000000.0d0) then
tmp = t * (c * ((z * i) - (y2 * y4)))
else if (y3 <= 1.45d+76) then
tmp = x * (((i * ((j * y1) - (y * c))) + (a * (y * b))) - (y0 * (b * j)))
else if (y3 <= 6.28d+119) then
tmp = c * (y4 * ((y * y3) - (t * y2)))
else if (y3 <= 9d+192) then
tmp = t * (z * ((c * i) - (a * b)))
else
tmp = t_1
end if
code = tmp
end function
public static double code(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 t_1 = a * (y3 * ((z * y1) - (y * y5)));
double t_2 = a * (y5 * ((t * y2) - (y * y3)));
double tmp;
if (y3 <= -2.15e+80) {
tmp = t_1;
} else if (y3 <= -8e+17) {
tmp = y0 * (x * ((c * y2) - (b * j)));
} else if (y3 <= -5.5e+14) {
tmp = t_2;
} else if (y3 <= 1.4e-295) {
tmp = x * ((y * ((a * b) - (c * i))) + (j * ((i * y1) - (b * y0))));
} else if (y3 <= 1.6e-96) {
tmp = a * (b * ((x * y) - (z * t)));
} else if (y3 <= 1.36e-39) {
tmp = t_2;
} else if (y3 <= 550000000000.0) {
tmp = t * (c * ((z * i) - (y2 * y4)));
} else if (y3 <= 1.45e+76) {
tmp = x * (((i * ((j * y1) - (y * c))) + (a * (y * b))) - (y0 * (b * j)));
} else if (y3 <= 6.28e+119) {
tmp = c * (y4 * ((y * y3) - (t * y2)));
} else if (y3 <= 9e+192) {
tmp = t * (z * ((c * i) - (a * b)));
} else {
tmp = t_1;
}
return tmp;
}
def code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5): t_1 = a * (y3 * ((z * y1) - (y * y5))) t_2 = a * (y5 * ((t * y2) - (y * y3))) tmp = 0 if y3 <= -2.15e+80: tmp = t_1 elif y3 <= -8e+17: tmp = y0 * (x * ((c * y2) - (b * j))) elif y3 <= -5.5e+14: tmp = t_2 elif y3 <= 1.4e-295: tmp = x * ((y * ((a * b) - (c * i))) + (j * ((i * y1) - (b * y0)))) elif y3 <= 1.6e-96: tmp = a * (b * ((x * y) - (z * t))) elif y3 <= 1.36e-39: tmp = t_2 elif y3 <= 550000000000.0: tmp = t * (c * ((z * i) - (y2 * y4))) elif y3 <= 1.45e+76: tmp = x * (((i * ((j * y1) - (y * c))) + (a * (y * b))) - (y0 * (b * j))) elif y3 <= 6.28e+119: tmp = c * (y4 * ((y * y3) - (t * y2))) elif y3 <= 9e+192: tmp = t * (z * ((c * i) - (a * b))) else: tmp = t_1 return tmp
function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = Float64(a * Float64(y3 * Float64(Float64(z * y1) - Float64(y * y5)))) t_2 = Float64(a * Float64(y5 * Float64(Float64(t * y2) - Float64(y * y3)))) tmp = 0.0 if (y3 <= -2.15e+80) tmp = t_1; elseif (y3 <= -8e+17) tmp = Float64(y0 * Float64(x * Float64(Float64(c * y2) - Float64(b * j)))); elseif (y3 <= -5.5e+14) tmp = t_2; elseif (y3 <= 1.4e-295) tmp = Float64(x * Float64(Float64(y * Float64(Float64(a * b) - Float64(c * i))) + Float64(j * Float64(Float64(i * y1) - Float64(b * y0))))); elseif (y3 <= 1.6e-96) tmp = Float64(a * Float64(b * Float64(Float64(x * y) - Float64(z * t)))); elseif (y3 <= 1.36e-39) tmp = t_2; elseif (y3 <= 550000000000.0) tmp = Float64(t * Float64(c * Float64(Float64(z * i) - Float64(y2 * y4)))); elseif (y3 <= 1.45e+76) tmp = Float64(x * Float64(Float64(Float64(i * Float64(Float64(j * y1) - Float64(y * c))) + Float64(a * Float64(y * b))) - Float64(y0 * Float64(b * j)))); elseif (y3 <= 6.28e+119) tmp = Float64(c * Float64(y4 * Float64(Float64(y * y3) - Float64(t * y2)))); elseif (y3 <= 9e+192) tmp = Float64(t * Float64(z * Float64(Float64(c * i) - Float64(a * b)))); else tmp = t_1; end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = a * (y3 * ((z * y1) - (y * y5))); t_2 = a * (y5 * ((t * y2) - (y * y3))); tmp = 0.0; if (y3 <= -2.15e+80) tmp = t_1; elseif (y3 <= -8e+17) tmp = y0 * (x * ((c * y2) - (b * j))); elseif (y3 <= -5.5e+14) tmp = t_2; elseif (y3 <= 1.4e-295) tmp = x * ((y * ((a * b) - (c * i))) + (j * ((i * y1) - (b * y0)))); elseif (y3 <= 1.6e-96) tmp = a * (b * ((x * y) - (z * t))); elseif (y3 <= 1.36e-39) tmp = t_2; elseif (y3 <= 550000000000.0) tmp = t * (c * ((z * i) - (y2 * y4))); elseif (y3 <= 1.45e+76) tmp = x * (((i * ((j * y1) - (y * c))) + (a * (y * b))) - (y0 * (b * j))); elseif (y3 <= 6.28e+119) tmp = c * (y4 * ((y * y3) - (t * y2))); elseif (y3 <= 9e+192) tmp = t * (z * ((c * i) - (a * b))); else tmp = t_1; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_, j_, k_, y0_, y1_, y2_, y3_, y4_, y5_] := Block[{t$95$1 = N[(a * N[(y3 * N[(N[(z * y1), $MachinePrecision] - N[(y * y5), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(a * N[(y5 * N[(N[(t * y2), $MachinePrecision] - N[(y * y3), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[y3, -2.15e+80], t$95$1, If[LessEqual[y3, -8e+17], N[(y0 * N[(x * N[(N[(c * y2), $MachinePrecision] - N[(b * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y3, -5.5e+14], t$95$2, If[LessEqual[y3, 1.4e-295], N[(x * N[(N[(y * N[(N[(a * b), $MachinePrecision] - N[(c * i), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(j * N[(N[(i * y1), $MachinePrecision] - N[(b * y0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y3, 1.6e-96], N[(a * N[(b * N[(N[(x * y), $MachinePrecision] - N[(z * t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y3, 1.36e-39], t$95$2, If[LessEqual[y3, 550000000000.0], N[(t * N[(c * N[(N[(z * i), $MachinePrecision] - N[(y2 * y4), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y3, 1.45e+76], N[(x * N[(N[(N[(i * N[(N[(j * y1), $MachinePrecision] - N[(y * c), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(a * N[(y * b), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - N[(y0 * N[(b * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y3, 6.28e+119], N[(c * N[(y4 * N[(N[(y * y3), $MachinePrecision] - N[(t * y2), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y3, 9e+192], N[(t * N[(z * N[(N[(c * i), $MachinePrecision] - N[(a * b), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], t$95$1]]]]]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := a \cdot \left(y3 \cdot \left(z \cdot y1 - y \cdot y5\right)\right)\\
t_2 := a \cdot \left(y5 \cdot \left(t \cdot y2 - y \cdot y3\right)\right)\\
\mathbf{if}\;y3 \leq -2.15 \cdot 10^{+80}:\\
\;\;\;\;t_1\\
\mathbf{elif}\;y3 \leq -8 \cdot 10^{+17}:\\
\;\;\;\;y0 \cdot \left(x \cdot \left(c \cdot y2 - b \cdot j\right)\right)\\
\mathbf{elif}\;y3 \leq -5.5 \cdot 10^{+14}:\\
\;\;\;\;t_2\\
\mathbf{elif}\;y3 \leq 1.4 \cdot 10^{-295}:\\
\;\;\;\;x \cdot \left(y \cdot \left(a \cdot b - c \cdot i\right) + j \cdot \left(i \cdot y1 - b \cdot y0\right)\right)\\
\mathbf{elif}\;y3 \leq 1.6 \cdot 10^{-96}:\\
\;\;\;\;a \cdot \left(b \cdot \left(x \cdot y - z \cdot t\right)\right)\\
\mathbf{elif}\;y3 \leq 1.36 \cdot 10^{-39}:\\
\;\;\;\;t_2\\
\mathbf{elif}\;y3 \leq 550000000000:\\
\;\;\;\;t \cdot \left(c \cdot \left(z \cdot i - y2 \cdot y4\right)\right)\\
\mathbf{elif}\;y3 \leq 1.45 \cdot 10^{+76}:\\
\;\;\;\;x \cdot \left(\left(i \cdot \left(j \cdot y1 - y \cdot c\right) + a \cdot \left(y \cdot b\right)\right) - y0 \cdot \left(b \cdot j\right)\right)\\
\mathbf{elif}\;y3 \leq 6.28 \cdot 10^{+119}:\\
\;\;\;\;c \cdot \left(y4 \cdot \left(y \cdot y3 - t \cdot y2\right)\right)\\
\mathbf{elif}\;y3 \leq 9 \cdot 10^{+192}:\\
\;\;\;\;t \cdot \left(z \cdot \left(c \cdot i - a \cdot b\right)\right)\\
\mathbf{else}:\\
\;\;\;\;t_1\\
\end{array}
\end{array}
if y3 < -2.15000000000000002e80 or 9e192 < y3 Initial program 24.6%
Simplified34.4%
Taylor expanded in a around inf 50.9%
mul-1-neg50.9%
mul-1-neg50.9%
Simplified50.9%
Taylor expanded in y3 around -inf 62.7%
if -2.15000000000000002e80 < y3 < -8e17Initial program 23.2%
Simplified23.2%
Taylor expanded in x around inf 34.7%
Taylor expanded in y0 around inf 67.7%
if -8e17 < y3 < -5.5e14 or 1.60000000000000006e-96 < y3 < 1.35999999999999994e-39Initial program 7.6%
Simplified14.7%
Taylor expanded in a around inf 50.1%
mul-1-neg50.1%
mul-1-neg50.1%
Simplified50.1%
Taylor expanded in y5 around inf 65.2%
if -5.5e14 < y3 < 1.4e-295Initial program 34.1%
Simplified34.1%
Taylor expanded in x around inf 53.4%
Taylor expanded in y2 around 0 51.8%
if 1.4e-295 < y3 < 1.60000000000000006e-96Initial program 39.7%
Simplified42.0%
Taylor expanded in a around inf 42.2%
mul-1-neg42.2%
mul-1-neg42.2%
Simplified42.2%
Taylor expanded in b around inf 47.4%
if 1.35999999999999994e-39 < y3 < 5.5e11Initial program 21.4%
Simplified21.4%
Taylor expanded in t around inf 31.2%
associate--l+31.2%
mul-1-neg31.2%
Simplified31.2%
Taylor expanded in c around -inf 60.4%
mul-1-neg60.4%
unsub-neg60.4%
*-commutative60.4%
Simplified60.4%
if 5.5e11 < y3 < 1.4500000000000001e76Initial program 20.5%
Simplified20.5%
Taylor expanded in x around inf 47.1%
Taylor expanded in i around -inf 60.3%
Taylor expanded in y2 around 0 67.6%
if 1.4500000000000001e76 < y3 < 6.28000000000000014e119Initial program 12.5%
Simplified12.5%
Taylor expanded in y4 around inf 50.0%
Taylor expanded in c around inf 52.1%
if 6.28000000000000014e119 < y3 < 9e192Initial program 23.8%
Simplified23.8%
Taylor expanded in t around inf 42.9%
associate--l+42.9%
mul-1-neg42.9%
Simplified42.9%
Taylor expanded in z around inf 47.9%
Final simplification55.9%
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5)
:precision binary64
(let* ((t_1 (- (* k y4) (* x a))) (t_2 (* y (- (* a b) (* c i)))))
(if (<= y -1.16e+154)
(* x t_2)
(if (<= y -7.2e-11)
(* y1 (* y2 t_1))
(if (<= y 3.5e-300)
(* a (* z (- (* y1 y3) (* t b))))
(if (<= y 2.3e-23)
(* y2 (* y1 t_1))
(if (<= y 1.3e+131)
(* x (+ t_2 (* j (- (* i y1) (* b y0)))))
(if (<= y 2.8e+201)
(* t (* z (- (* c i) (* a b))))
(* c (* y4 (- (* y y3) (* t y2))))))))))))
double code(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 t_1 = (k * y4) - (x * a);
double t_2 = y * ((a * b) - (c * i));
double tmp;
if (y <= -1.16e+154) {
tmp = x * t_2;
} else if (y <= -7.2e-11) {
tmp = y1 * (y2 * t_1);
} else if (y <= 3.5e-300) {
tmp = a * (z * ((y1 * y3) - (t * b)));
} else if (y <= 2.3e-23) {
tmp = y2 * (y1 * t_1);
} else if (y <= 1.3e+131) {
tmp = x * (t_2 + (j * ((i * y1) - (b * y0))));
} else if (y <= 2.8e+201) {
tmp = t * (z * ((c * i) - (a * b)));
} else {
tmp = c * (y4 * ((y * y3) - (t * y2)));
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8), intent (in) :: t
real(8), intent (in) :: a
real(8), intent (in) :: b
real(8), intent (in) :: c
real(8), intent (in) :: i
real(8), intent (in) :: j
real(8), intent (in) :: k
real(8), intent (in) :: y0
real(8), intent (in) :: y1
real(8), intent (in) :: y2
real(8), intent (in) :: y3
real(8), intent (in) :: y4
real(8), intent (in) :: y5
real(8) :: t_1
real(8) :: t_2
real(8) :: tmp
t_1 = (k * y4) - (x * a)
t_2 = y * ((a * b) - (c * i))
if (y <= (-1.16d+154)) then
tmp = x * t_2
else if (y <= (-7.2d-11)) then
tmp = y1 * (y2 * t_1)
else if (y <= 3.5d-300) then
tmp = a * (z * ((y1 * y3) - (t * b)))
else if (y <= 2.3d-23) then
tmp = y2 * (y1 * t_1)
else if (y <= 1.3d+131) then
tmp = x * (t_2 + (j * ((i * y1) - (b * y0))))
else if (y <= 2.8d+201) then
tmp = t * (z * ((c * i) - (a * b)))
else
tmp = c * (y4 * ((y * y3) - (t * y2)))
end if
code = tmp
end function
public static double code(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 t_1 = (k * y4) - (x * a);
double t_2 = y * ((a * b) - (c * i));
double tmp;
if (y <= -1.16e+154) {
tmp = x * t_2;
} else if (y <= -7.2e-11) {
tmp = y1 * (y2 * t_1);
} else if (y <= 3.5e-300) {
tmp = a * (z * ((y1 * y3) - (t * b)));
} else if (y <= 2.3e-23) {
tmp = y2 * (y1 * t_1);
} else if (y <= 1.3e+131) {
tmp = x * (t_2 + (j * ((i * y1) - (b * y0))));
} else if (y <= 2.8e+201) {
tmp = t * (z * ((c * i) - (a * b)));
} else {
tmp = c * (y4 * ((y * y3) - (t * y2)));
}
return tmp;
}
def code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5): t_1 = (k * y4) - (x * a) t_2 = y * ((a * b) - (c * i)) tmp = 0 if y <= -1.16e+154: tmp = x * t_2 elif y <= -7.2e-11: tmp = y1 * (y2 * t_1) elif y <= 3.5e-300: tmp = a * (z * ((y1 * y3) - (t * b))) elif y <= 2.3e-23: tmp = y2 * (y1 * t_1) elif y <= 1.3e+131: tmp = x * (t_2 + (j * ((i * y1) - (b * y0)))) elif y <= 2.8e+201: tmp = t * (z * ((c * i) - (a * b))) else: tmp = c * (y4 * ((y * y3) - (t * y2))) return tmp
function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = Float64(Float64(k * y4) - Float64(x * a)) t_2 = Float64(y * Float64(Float64(a * b) - Float64(c * i))) tmp = 0.0 if (y <= -1.16e+154) tmp = Float64(x * t_2); elseif (y <= -7.2e-11) tmp = Float64(y1 * Float64(y2 * t_1)); elseif (y <= 3.5e-300) tmp = Float64(a * Float64(z * Float64(Float64(y1 * y3) - Float64(t * b)))); elseif (y <= 2.3e-23) tmp = Float64(y2 * Float64(y1 * t_1)); elseif (y <= 1.3e+131) tmp = Float64(x * Float64(t_2 + Float64(j * Float64(Float64(i * y1) - Float64(b * y0))))); elseif (y <= 2.8e+201) tmp = Float64(t * Float64(z * Float64(Float64(c * i) - Float64(a * b)))); else tmp = Float64(c * Float64(y4 * Float64(Float64(y * y3) - Float64(t * y2)))); end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = (k * y4) - (x * a); t_2 = y * ((a * b) - (c * i)); tmp = 0.0; if (y <= -1.16e+154) tmp = x * t_2; elseif (y <= -7.2e-11) tmp = y1 * (y2 * t_1); elseif (y <= 3.5e-300) tmp = a * (z * ((y1 * y3) - (t * b))); elseif (y <= 2.3e-23) tmp = y2 * (y1 * t_1); elseif (y <= 1.3e+131) tmp = x * (t_2 + (j * ((i * y1) - (b * y0)))); elseif (y <= 2.8e+201) tmp = t * (z * ((c * i) - (a * b))); else tmp = c * (y4 * ((y * y3) - (t * y2))); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_, j_, k_, y0_, y1_, y2_, y3_, y4_, y5_] := Block[{t$95$1 = N[(N[(k * y4), $MachinePrecision] - N[(x * a), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(y * N[(N[(a * b), $MachinePrecision] - N[(c * i), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[y, -1.16e+154], N[(x * t$95$2), $MachinePrecision], If[LessEqual[y, -7.2e-11], N[(y1 * N[(y2 * t$95$1), $MachinePrecision]), $MachinePrecision], If[LessEqual[y, 3.5e-300], N[(a * N[(z * N[(N[(y1 * y3), $MachinePrecision] - N[(t * b), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y, 2.3e-23], N[(y2 * N[(y1 * t$95$1), $MachinePrecision]), $MachinePrecision], If[LessEqual[y, 1.3e+131], N[(x * N[(t$95$2 + N[(j * N[(N[(i * y1), $MachinePrecision] - N[(b * y0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y, 2.8e+201], N[(t * N[(z * N[(N[(c * i), $MachinePrecision] - N[(a * b), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(c * N[(y4 * N[(N[(y * y3), $MachinePrecision] - N[(t * y2), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := k \cdot y4 - x \cdot a\\
t_2 := y \cdot \left(a \cdot b - c \cdot i\right)\\
\mathbf{if}\;y \leq -1.16 \cdot 10^{+154}:\\
\;\;\;\;x \cdot t_2\\
\mathbf{elif}\;y \leq -7.2 \cdot 10^{-11}:\\
\;\;\;\;y1 \cdot \left(y2 \cdot t_1\right)\\
\mathbf{elif}\;y \leq 3.5 \cdot 10^{-300}:\\
\;\;\;\;a \cdot \left(z \cdot \left(y1 \cdot y3 - t \cdot b\right)\right)\\
\mathbf{elif}\;y \leq 2.3 \cdot 10^{-23}:\\
\;\;\;\;y2 \cdot \left(y1 \cdot t_1\right)\\
\mathbf{elif}\;y \leq 1.3 \cdot 10^{+131}:\\
\;\;\;\;x \cdot \left(t_2 + j \cdot \left(i \cdot y1 - b \cdot y0\right)\right)\\
\mathbf{elif}\;y \leq 2.8 \cdot 10^{+201}:\\
\;\;\;\;t \cdot \left(z \cdot \left(c \cdot i - a \cdot b\right)\right)\\
\mathbf{else}:\\
\;\;\;\;c \cdot \left(y4 \cdot \left(y \cdot y3 - t \cdot y2\right)\right)\\
\end{array}
\end{array}
if y < -1.16000000000000001e154Initial program 26.5%
Simplified26.5%
Taylor expanded in x around inf 47.3%
Taylor expanded in y around inf 62.5%
if -1.16000000000000001e154 < y < -7.19999999999999969e-11Initial program 16.1%
Simplified16.1%
Taylor expanded in y2 around inf 42.5%
Taylor expanded in y1 around inf 45.9%
*-commutative45.9%
+-commutative45.9%
mul-1-neg45.9%
unsub-neg45.9%
*-commutative45.9%
Simplified45.9%
if -7.19999999999999969e-11 < y < 3.5000000000000002e-300Initial program 20.6%
Simplified23.5%
Taylor expanded in a around inf 42.5%
mul-1-neg42.5%
mul-1-neg42.5%
Simplified42.5%
Taylor expanded in z around inf 43.2%
cancel-sign-sub-inv43.2%
metadata-eval43.2%
*-lft-identity43.2%
+-commutative43.2%
mul-1-neg43.2%
unsub-neg43.2%
*-commutative43.2%
Simplified43.2%
if 3.5000000000000002e-300 < y < 2.3000000000000001e-23Initial program 45.6%
Simplified45.6%
Taylor expanded in y2 around inf 42.0%
Taylor expanded in y1 around inf 44.1%
+-commutative44.1%
mul-1-neg44.1%
unsub-neg44.1%
*-commutative44.1%
Simplified44.1%
if 2.3000000000000001e-23 < y < 1.3e131Initial program 44.4%
Simplified44.4%
Taylor expanded in x around inf 45.8%
Taylor expanded in y2 around 0 49.0%
if 1.3e131 < y < 2.80000000000000005e201Initial program 5.9%
Simplified5.9%
Taylor expanded in t around inf 53.1%
associate--l+53.1%
mul-1-neg53.1%
Simplified53.1%
Taylor expanded in z around inf 65.2%
if 2.80000000000000005e201 < y Initial program 29.6%
Simplified29.6%
Taylor expanded in y4 around inf 37.6%
Taylor expanded in c around inf 49.0%
Final simplification48.9%
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5)
:precision binary64
(let* ((t_1 (* y1 (* y2 (- (* k y4) (* x a))))) (t_2 (- (* a b) (* c i))))
(if (<= y -1.3e+154)
(* x (* y t_2))
(if (<= y -4.6e-13)
t_1
(if (<= y 8.1e-305)
(* a (* z (- (* y1 y3) (* t b))))
(if (<= y 1.6e-23)
t_1
(if (or (<= y 4.2e+143) (not (<= y 2.8e+260)))
(* y (* x t_2))
(* c (* y4 (- (* y y3) (* t y2)))))))))))
double code(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 t_1 = y1 * (y2 * ((k * y4) - (x * a)));
double t_2 = (a * b) - (c * i);
double tmp;
if (y <= -1.3e+154) {
tmp = x * (y * t_2);
} else if (y <= -4.6e-13) {
tmp = t_1;
} else if (y <= 8.1e-305) {
tmp = a * (z * ((y1 * y3) - (t * b)));
} else if (y <= 1.6e-23) {
tmp = t_1;
} else if ((y <= 4.2e+143) || !(y <= 2.8e+260)) {
tmp = y * (x * t_2);
} else {
tmp = c * (y4 * ((y * y3) - (t * y2)));
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8), intent (in) :: t
real(8), intent (in) :: a
real(8), intent (in) :: b
real(8), intent (in) :: c
real(8), intent (in) :: i
real(8), intent (in) :: j
real(8), intent (in) :: k
real(8), intent (in) :: y0
real(8), intent (in) :: y1
real(8), intent (in) :: y2
real(8), intent (in) :: y3
real(8), intent (in) :: y4
real(8), intent (in) :: y5
real(8) :: t_1
real(8) :: t_2
real(8) :: tmp
t_1 = y1 * (y2 * ((k * y4) - (x * a)))
t_2 = (a * b) - (c * i)
if (y <= (-1.3d+154)) then
tmp = x * (y * t_2)
else if (y <= (-4.6d-13)) then
tmp = t_1
else if (y <= 8.1d-305) then
tmp = a * (z * ((y1 * y3) - (t * b)))
else if (y <= 1.6d-23) then
tmp = t_1
else if ((y <= 4.2d+143) .or. (.not. (y <= 2.8d+260))) then
tmp = y * (x * t_2)
else
tmp = c * (y4 * ((y * y3) - (t * y2)))
end if
code = tmp
end function
public static double code(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 t_1 = y1 * (y2 * ((k * y4) - (x * a)));
double t_2 = (a * b) - (c * i);
double tmp;
if (y <= -1.3e+154) {
tmp = x * (y * t_2);
} else if (y <= -4.6e-13) {
tmp = t_1;
} else if (y <= 8.1e-305) {
tmp = a * (z * ((y1 * y3) - (t * b)));
} else if (y <= 1.6e-23) {
tmp = t_1;
} else if ((y <= 4.2e+143) || !(y <= 2.8e+260)) {
tmp = y * (x * t_2);
} else {
tmp = c * (y4 * ((y * y3) - (t * y2)));
}
return tmp;
}
def code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5): t_1 = y1 * (y2 * ((k * y4) - (x * a))) t_2 = (a * b) - (c * i) tmp = 0 if y <= -1.3e+154: tmp = x * (y * t_2) elif y <= -4.6e-13: tmp = t_1 elif y <= 8.1e-305: tmp = a * (z * ((y1 * y3) - (t * b))) elif y <= 1.6e-23: tmp = t_1 elif (y <= 4.2e+143) or not (y <= 2.8e+260): tmp = y * (x * t_2) else: tmp = c * (y4 * ((y * y3) - (t * y2))) return tmp
function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = Float64(y1 * Float64(y2 * Float64(Float64(k * y4) - Float64(x * a)))) t_2 = Float64(Float64(a * b) - Float64(c * i)) tmp = 0.0 if (y <= -1.3e+154) tmp = Float64(x * Float64(y * t_2)); elseif (y <= -4.6e-13) tmp = t_1; elseif (y <= 8.1e-305) tmp = Float64(a * Float64(z * Float64(Float64(y1 * y3) - Float64(t * b)))); elseif (y <= 1.6e-23) tmp = t_1; elseif ((y <= 4.2e+143) || !(y <= 2.8e+260)) tmp = Float64(y * Float64(x * t_2)); else tmp = Float64(c * Float64(y4 * Float64(Float64(y * y3) - Float64(t * y2)))); end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = y1 * (y2 * ((k * y4) - (x * a))); t_2 = (a * b) - (c * i); tmp = 0.0; if (y <= -1.3e+154) tmp = x * (y * t_2); elseif (y <= -4.6e-13) tmp = t_1; elseif (y <= 8.1e-305) tmp = a * (z * ((y1 * y3) - (t * b))); elseif (y <= 1.6e-23) tmp = t_1; elseif ((y <= 4.2e+143) || ~((y <= 2.8e+260))) tmp = y * (x * t_2); else tmp = c * (y4 * ((y * y3) - (t * y2))); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_, j_, k_, y0_, y1_, y2_, y3_, y4_, y5_] := Block[{t$95$1 = N[(y1 * N[(y2 * N[(N[(k * y4), $MachinePrecision] - N[(x * a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(N[(a * b), $MachinePrecision] - N[(c * i), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[y, -1.3e+154], N[(x * N[(y * t$95$2), $MachinePrecision]), $MachinePrecision], If[LessEqual[y, -4.6e-13], t$95$1, If[LessEqual[y, 8.1e-305], N[(a * N[(z * N[(N[(y1 * y3), $MachinePrecision] - N[(t * b), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y, 1.6e-23], t$95$1, If[Or[LessEqual[y, 4.2e+143], N[Not[LessEqual[y, 2.8e+260]], $MachinePrecision]], N[(y * N[(x * t$95$2), $MachinePrecision]), $MachinePrecision], N[(c * N[(y4 * N[(N[(y * y3), $MachinePrecision] - N[(t * y2), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := y1 \cdot \left(y2 \cdot \left(k \cdot y4 - x \cdot a\right)\right)\\
t_2 := a \cdot b - c \cdot i\\
\mathbf{if}\;y \leq -1.3 \cdot 10^{+154}:\\
\;\;\;\;x \cdot \left(y \cdot t_2\right)\\
\mathbf{elif}\;y \leq -4.6 \cdot 10^{-13}:\\
\;\;\;\;t_1\\
\mathbf{elif}\;y \leq 8.1 \cdot 10^{-305}:\\
\;\;\;\;a \cdot \left(z \cdot \left(y1 \cdot y3 - t \cdot b\right)\right)\\
\mathbf{elif}\;y \leq 1.6 \cdot 10^{-23}:\\
\;\;\;\;t_1\\
\mathbf{elif}\;y \leq 4.2 \cdot 10^{+143} \lor \neg \left(y \leq 2.8 \cdot 10^{+260}\right):\\
\;\;\;\;y \cdot \left(x \cdot t_2\right)\\
\mathbf{else}:\\
\;\;\;\;c \cdot \left(y4 \cdot \left(y \cdot y3 - t \cdot y2\right)\right)\\
\end{array}
\end{array}
if y < -1.29999999999999994e154Initial program 26.5%
Simplified26.5%
Taylor expanded in x around inf 47.3%
Taylor expanded in y around inf 62.5%
if -1.29999999999999994e154 < y < -4.59999999999999958e-13 or 8.0999999999999997e-305 < y < 1.59999999999999988e-23Initial program 34.4%
Simplified34.4%
Taylor expanded in y2 around inf 42.2%
Taylor expanded in y1 around inf 43.6%
*-commutative43.6%
+-commutative43.6%
mul-1-neg43.6%
unsub-neg43.6%
*-commutative43.6%
Simplified43.6%
if -4.59999999999999958e-13 < y < 8.0999999999999997e-305Initial program 20.6%
Simplified23.5%
Taylor expanded in a around inf 42.5%
mul-1-neg42.5%
mul-1-neg42.5%
Simplified42.5%
Taylor expanded in z around inf 43.2%
cancel-sign-sub-inv43.2%
metadata-eval43.2%
*-lft-identity43.2%
+-commutative43.2%
mul-1-neg43.2%
unsub-neg43.2%
*-commutative43.2%
Simplified43.2%
if 1.59999999999999988e-23 < y < 4.19999999999999975e143 or 2.7999999999999998e260 < y Initial program 34.1%
Simplified34.1%
Taylor expanded in x around inf 50.8%
Taylor expanded in y around inf 53.0%
if 4.19999999999999975e143 < y < 2.7999999999999998e260Initial program 22.2%
Simplified22.2%
Taylor expanded in y4 around inf 52.2%
Taylor expanded in c around inf 41.4%
Final simplification47.4%
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5)
:precision binary64
(let* ((t_1 (- (* k y4) (* x a))) (t_2 (- (* a b) (* c i))))
(if (<= y -1.16e+154)
(* x (* y t_2))
(if (<= y -1.1e-15)
(* y1 (* y2 t_1))
(if (<= y 3e-308)
(* a (* z (- (* y1 y3) (* t b))))
(if (<= y 1.7e-24)
(* y2 (* y1 t_1))
(if (or (<= y 2.2e+144) (not (<= y 1.16e+260)))
(* y (* x t_2))
(* c (* y4 (- (* y y3) (* t y2)))))))))))
double code(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 t_1 = (k * y4) - (x * a);
double t_2 = (a * b) - (c * i);
double tmp;
if (y <= -1.16e+154) {
tmp = x * (y * t_2);
} else if (y <= -1.1e-15) {
tmp = y1 * (y2 * t_1);
} else if (y <= 3e-308) {
tmp = a * (z * ((y1 * y3) - (t * b)));
} else if (y <= 1.7e-24) {
tmp = y2 * (y1 * t_1);
} else if ((y <= 2.2e+144) || !(y <= 1.16e+260)) {
tmp = y * (x * t_2);
} else {
tmp = c * (y4 * ((y * y3) - (t * y2)));
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8), intent (in) :: t
real(8), intent (in) :: a
real(8), intent (in) :: b
real(8), intent (in) :: c
real(8), intent (in) :: i
real(8), intent (in) :: j
real(8), intent (in) :: k
real(8), intent (in) :: y0
real(8), intent (in) :: y1
real(8), intent (in) :: y2
real(8), intent (in) :: y3
real(8), intent (in) :: y4
real(8), intent (in) :: y5
real(8) :: t_1
real(8) :: t_2
real(8) :: tmp
t_1 = (k * y4) - (x * a)
t_2 = (a * b) - (c * i)
if (y <= (-1.16d+154)) then
tmp = x * (y * t_2)
else if (y <= (-1.1d-15)) then
tmp = y1 * (y2 * t_1)
else if (y <= 3d-308) then
tmp = a * (z * ((y1 * y3) - (t * b)))
else if (y <= 1.7d-24) then
tmp = y2 * (y1 * t_1)
else if ((y <= 2.2d+144) .or. (.not. (y <= 1.16d+260))) then
tmp = y * (x * t_2)
else
tmp = c * (y4 * ((y * y3) - (t * y2)))
end if
code = tmp
end function
public static double code(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 t_1 = (k * y4) - (x * a);
double t_2 = (a * b) - (c * i);
double tmp;
if (y <= -1.16e+154) {
tmp = x * (y * t_2);
} else if (y <= -1.1e-15) {
tmp = y1 * (y2 * t_1);
} else if (y <= 3e-308) {
tmp = a * (z * ((y1 * y3) - (t * b)));
} else if (y <= 1.7e-24) {
tmp = y2 * (y1 * t_1);
} else if ((y <= 2.2e+144) || !(y <= 1.16e+260)) {
tmp = y * (x * t_2);
} else {
tmp = c * (y4 * ((y * y3) - (t * y2)));
}
return tmp;
}
def code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5): t_1 = (k * y4) - (x * a) t_2 = (a * b) - (c * i) tmp = 0 if y <= -1.16e+154: tmp = x * (y * t_2) elif y <= -1.1e-15: tmp = y1 * (y2 * t_1) elif y <= 3e-308: tmp = a * (z * ((y1 * y3) - (t * b))) elif y <= 1.7e-24: tmp = y2 * (y1 * t_1) elif (y <= 2.2e+144) or not (y <= 1.16e+260): tmp = y * (x * t_2) else: tmp = c * (y4 * ((y * y3) - (t * y2))) return tmp
function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = Float64(Float64(k * y4) - Float64(x * a)) t_2 = Float64(Float64(a * b) - Float64(c * i)) tmp = 0.0 if (y <= -1.16e+154) tmp = Float64(x * Float64(y * t_2)); elseif (y <= -1.1e-15) tmp = Float64(y1 * Float64(y2 * t_1)); elseif (y <= 3e-308) tmp = Float64(a * Float64(z * Float64(Float64(y1 * y3) - Float64(t * b)))); elseif (y <= 1.7e-24) tmp = Float64(y2 * Float64(y1 * t_1)); elseif ((y <= 2.2e+144) || !(y <= 1.16e+260)) tmp = Float64(y * Float64(x * t_2)); else tmp = Float64(c * Float64(y4 * Float64(Float64(y * y3) - Float64(t * y2)))); end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = (k * y4) - (x * a); t_2 = (a * b) - (c * i); tmp = 0.0; if (y <= -1.16e+154) tmp = x * (y * t_2); elseif (y <= -1.1e-15) tmp = y1 * (y2 * t_1); elseif (y <= 3e-308) tmp = a * (z * ((y1 * y3) - (t * b))); elseif (y <= 1.7e-24) tmp = y2 * (y1 * t_1); elseif ((y <= 2.2e+144) || ~((y <= 1.16e+260))) tmp = y * (x * t_2); else tmp = c * (y4 * ((y * y3) - (t * y2))); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_, j_, k_, y0_, y1_, y2_, y3_, y4_, y5_] := Block[{t$95$1 = N[(N[(k * y4), $MachinePrecision] - N[(x * a), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(N[(a * b), $MachinePrecision] - N[(c * i), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[y, -1.16e+154], N[(x * N[(y * t$95$2), $MachinePrecision]), $MachinePrecision], If[LessEqual[y, -1.1e-15], N[(y1 * N[(y2 * t$95$1), $MachinePrecision]), $MachinePrecision], If[LessEqual[y, 3e-308], N[(a * N[(z * N[(N[(y1 * y3), $MachinePrecision] - N[(t * b), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y, 1.7e-24], N[(y2 * N[(y1 * t$95$1), $MachinePrecision]), $MachinePrecision], If[Or[LessEqual[y, 2.2e+144], N[Not[LessEqual[y, 1.16e+260]], $MachinePrecision]], N[(y * N[(x * t$95$2), $MachinePrecision]), $MachinePrecision], N[(c * N[(y4 * N[(N[(y * y3), $MachinePrecision] - N[(t * y2), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := k \cdot y4 - x \cdot a\\
t_2 := a \cdot b - c \cdot i\\
\mathbf{if}\;y \leq -1.16 \cdot 10^{+154}:\\
\;\;\;\;x \cdot \left(y \cdot t_2\right)\\
\mathbf{elif}\;y \leq -1.1 \cdot 10^{-15}:\\
\;\;\;\;y1 \cdot \left(y2 \cdot t_1\right)\\
\mathbf{elif}\;y \leq 3 \cdot 10^{-308}:\\
\;\;\;\;a \cdot \left(z \cdot \left(y1 \cdot y3 - t \cdot b\right)\right)\\
\mathbf{elif}\;y \leq 1.7 \cdot 10^{-24}:\\
\;\;\;\;y2 \cdot \left(y1 \cdot t_1\right)\\
\mathbf{elif}\;y \leq 2.2 \cdot 10^{+144} \lor \neg \left(y \leq 1.16 \cdot 10^{+260}\right):\\
\;\;\;\;y \cdot \left(x \cdot t_2\right)\\
\mathbf{else}:\\
\;\;\;\;c \cdot \left(y4 \cdot \left(y \cdot y3 - t \cdot y2\right)\right)\\
\end{array}
\end{array}
if y < -1.16000000000000001e154Initial program 26.5%
Simplified26.5%
Taylor expanded in x around inf 47.3%
Taylor expanded in y around inf 62.5%
if -1.16000000000000001e154 < y < -1.09999999999999993e-15Initial program 16.1%
Simplified16.1%
Taylor expanded in y2 around inf 42.5%
Taylor expanded in y1 around inf 45.9%
*-commutative45.9%
+-commutative45.9%
mul-1-neg45.9%
unsub-neg45.9%
*-commutative45.9%
Simplified45.9%
if -1.09999999999999993e-15 < y < 3.00000000000000022e-308Initial program 20.6%
Simplified23.5%
Taylor expanded in a around inf 42.5%
mul-1-neg42.5%
mul-1-neg42.5%
Simplified42.5%
Taylor expanded in z around inf 43.2%
cancel-sign-sub-inv43.2%
metadata-eval43.2%
*-lft-identity43.2%
+-commutative43.2%
mul-1-neg43.2%
unsub-neg43.2%
*-commutative43.2%
Simplified43.2%
if 3.00000000000000022e-308 < y < 1.69999999999999996e-24Initial program 45.6%
Simplified45.6%
Taylor expanded in y2 around inf 42.0%
Taylor expanded in y1 around inf 44.1%
+-commutative44.1%
mul-1-neg44.1%
unsub-neg44.1%
*-commutative44.1%
Simplified44.1%
if 1.69999999999999996e-24 < y < 2.19999999999999988e144 or 1.16e260 < y Initial program 34.1%
Simplified34.1%
Taylor expanded in x around inf 50.8%
Taylor expanded in y around inf 53.0%
if 2.19999999999999988e144 < y < 1.16e260Initial program 22.2%
Simplified22.2%
Taylor expanded in y4 around inf 52.2%
Taylor expanded in c around inf 41.4%
Final simplification47.8%
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5)
:precision binary64
(let* ((t_1 (* c (* y4 (- (* y y3) (* t y2)))))
(t_2 (* a (* b (- (* x y) (* z t))))))
(if (<= b -6.8e+93)
(* y4 (* t (* b j)))
(if (<= b -2.2e-172)
t_2
(if (<= b 1.2e-243)
(* k (* y2 (- (* y1 y4) (* y0 y5))))
(if (<= b 7e+34)
t_1
(if (<= b 6e+57)
(* y1 (* j (* x i)))
(if (<= b 2.8e+192) t_1 t_2))))))))
double code(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 t_1 = c * (y4 * ((y * y3) - (t * y2)));
double t_2 = a * (b * ((x * y) - (z * t)));
double tmp;
if (b <= -6.8e+93) {
tmp = y4 * (t * (b * j));
} else if (b <= -2.2e-172) {
tmp = t_2;
} else if (b <= 1.2e-243) {
tmp = k * (y2 * ((y1 * y4) - (y0 * y5)));
} else if (b <= 7e+34) {
tmp = t_1;
} else if (b <= 6e+57) {
tmp = y1 * (j * (x * i));
} else if (b <= 2.8e+192) {
tmp = t_1;
} else {
tmp = t_2;
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8), intent (in) :: t
real(8), intent (in) :: a
real(8), intent (in) :: b
real(8), intent (in) :: c
real(8), intent (in) :: i
real(8), intent (in) :: j
real(8), intent (in) :: k
real(8), intent (in) :: y0
real(8), intent (in) :: y1
real(8), intent (in) :: y2
real(8), intent (in) :: y3
real(8), intent (in) :: y4
real(8), intent (in) :: y5
real(8) :: t_1
real(8) :: t_2
real(8) :: tmp
t_1 = c * (y4 * ((y * y3) - (t * y2)))
t_2 = a * (b * ((x * y) - (z * t)))
if (b <= (-6.8d+93)) then
tmp = y4 * (t * (b * j))
else if (b <= (-2.2d-172)) then
tmp = t_2
else if (b <= 1.2d-243) then
tmp = k * (y2 * ((y1 * y4) - (y0 * y5)))
else if (b <= 7d+34) then
tmp = t_1
else if (b <= 6d+57) then
tmp = y1 * (j * (x * i))
else if (b <= 2.8d+192) then
tmp = t_1
else
tmp = t_2
end if
code = tmp
end function
public static double code(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 t_1 = c * (y4 * ((y * y3) - (t * y2)));
double t_2 = a * (b * ((x * y) - (z * t)));
double tmp;
if (b <= -6.8e+93) {
tmp = y4 * (t * (b * j));
} else if (b <= -2.2e-172) {
tmp = t_2;
} else if (b <= 1.2e-243) {
tmp = k * (y2 * ((y1 * y4) - (y0 * y5)));
} else if (b <= 7e+34) {
tmp = t_1;
} else if (b <= 6e+57) {
tmp = y1 * (j * (x * i));
} else if (b <= 2.8e+192) {
tmp = t_1;
} else {
tmp = t_2;
}
return tmp;
}
def code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5): t_1 = c * (y4 * ((y * y3) - (t * y2))) t_2 = a * (b * ((x * y) - (z * t))) tmp = 0 if b <= -6.8e+93: tmp = y4 * (t * (b * j)) elif b <= -2.2e-172: tmp = t_2 elif b <= 1.2e-243: tmp = k * (y2 * ((y1 * y4) - (y0 * y5))) elif b <= 7e+34: tmp = t_1 elif b <= 6e+57: tmp = y1 * (j * (x * i)) elif b <= 2.8e+192: tmp = t_1 else: tmp = t_2 return tmp
function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = Float64(c * Float64(y4 * Float64(Float64(y * y3) - Float64(t * y2)))) t_2 = Float64(a * Float64(b * Float64(Float64(x * y) - Float64(z * t)))) tmp = 0.0 if (b <= -6.8e+93) tmp = Float64(y4 * Float64(t * Float64(b * j))); elseif (b <= -2.2e-172) tmp = t_2; elseif (b <= 1.2e-243) tmp = Float64(k * Float64(y2 * Float64(Float64(y1 * y4) - Float64(y0 * y5)))); elseif (b <= 7e+34) tmp = t_1; elseif (b <= 6e+57) tmp = Float64(y1 * Float64(j * Float64(x * i))); elseif (b <= 2.8e+192) tmp = t_1; else tmp = t_2; end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = c * (y4 * ((y * y3) - (t * y2))); t_2 = a * (b * ((x * y) - (z * t))); tmp = 0.0; if (b <= -6.8e+93) tmp = y4 * (t * (b * j)); elseif (b <= -2.2e-172) tmp = t_2; elseif (b <= 1.2e-243) tmp = k * (y2 * ((y1 * y4) - (y0 * y5))); elseif (b <= 7e+34) tmp = t_1; elseif (b <= 6e+57) tmp = y1 * (j * (x * i)); elseif (b <= 2.8e+192) tmp = t_1; else tmp = t_2; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_, j_, k_, y0_, y1_, y2_, y3_, y4_, y5_] := Block[{t$95$1 = N[(c * N[(y4 * N[(N[(y * y3), $MachinePrecision] - N[(t * y2), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(a * N[(b * N[(N[(x * y), $MachinePrecision] - N[(z * t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[b, -6.8e+93], N[(y4 * N[(t * N[(b * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[b, -2.2e-172], t$95$2, If[LessEqual[b, 1.2e-243], N[(k * N[(y2 * N[(N[(y1 * y4), $MachinePrecision] - N[(y0 * y5), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[b, 7e+34], t$95$1, If[LessEqual[b, 6e+57], N[(y1 * N[(j * N[(x * i), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[b, 2.8e+192], t$95$1, t$95$2]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := c \cdot \left(y4 \cdot \left(y \cdot y3 - t \cdot y2\right)\right)\\
t_2 := a \cdot \left(b \cdot \left(x \cdot y - z \cdot t\right)\right)\\
\mathbf{if}\;b \leq -6.8 \cdot 10^{+93}:\\
\;\;\;\;y4 \cdot \left(t \cdot \left(b \cdot j\right)\right)\\
\mathbf{elif}\;b \leq -2.2 \cdot 10^{-172}:\\
\;\;\;\;t_2\\
\mathbf{elif}\;b \leq 1.2 \cdot 10^{-243}:\\
\;\;\;\;k \cdot \left(y2 \cdot \left(y1 \cdot y4 - y0 \cdot y5\right)\right)\\
\mathbf{elif}\;b \leq 7 \cdot 10^{+34}:\\
\;\;\;\;t_1\\
\mathbf{elif}\;b \leq 6 \cdot 10^{+57}:\\
\;\;\;\;y1 \cdot \left(j \cdot \left(x \cdot i\right)\right)\\
\mathbf{elif}\;b \leq 2.8 \cdot 10^{+192}:\\
\;\;\;\;t_1\\
\mathbf{else}:\\
\;\;\;\;t_2\\
\end{array}
\end{array}
if b < -6.8000000000000001e93Initial program 14.6%
Simplified14.6%
Taylor expanded in t around inf 27.2%
associate--l+27.2%
mul-1-neg27.2%
Simplified27.2%
Taylor expanded in j around inf 42.4%
Taylor expanded in b around inf 46.9%
if -6.8000000000000001e93 < b < -2.20000000000000009e-172 or 2.79999999999999976e192 < b Initial program 23.2%
Simplified30.4%
Taylor expanded in a around inf 41.7%
mul-1-neg41.7%
mul-1-neg41.7%
Simplified41.7%
Taylor expanded in b around inf 46.7%
if -2.20000000000000009e-172 < b < 1.2e-243Initial program 33.5%
Simplified33.5%
Taylor expanded in y2 around inf 48.5%
Taylor expanded in k around inf 46.3%
if 1.2e-243 < b < 6.99999999999999996e34 or 5.9999999999999999e57 < b < 2.79999999999999976e192Initial program 38.8%
Simplified38.8%
Taylor expanded in y4 around inf 46.7%
Taylor expanded in c around inf 39.9%
if 6.99999999999999996e34 < b < 5.9999999999999999e57Initial program 16.7%
Simplified16.7%
Taylor expanded in x around inf 66.7%
Taylor expanded in j around inf 50.6%
Taylor expanded in y1 around inf 67.3%
*-commutative67.3%
associate-*r*67.3%
associate-*l*83.3%
*-commutative83.3%
Simplified83.3%
Final simplification45.6%
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5)
:precision binary64
(let* ((t_1 (* t (* c (- (* z i) (* y2 y4))))))
(if (<= b -4.2e+93)
(* y4 (* t (* b j)))
(if (<= b -2.4e-172)
t_1
(if (<= b 1e-249)
(* k (* y2 (- (* y1 y4) (* y0 y5))))
(if (<= b 9.5e+19)
t_1
(if (<= b 5.9e+57)
(* y1 (* j (* x i)))
(if (<= b 5.2e+171)
(* c (* y4 (- (* y y3) (* t y2))))
(* a (* b (- (* x y) (* z t))))))))))))
double code(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 t_1 = t * (c * ((z * i) - (y2 * y4)));
double tmp;
if (b <= -4.2e+93) {
tmp = y4 * (t * (b * j));
} else if (b <= -2.4e-172) {
tmp = t_1;
} else if (b <= 1e-249) {
tmp = k * (y2 * ((y1 * y4) - (y0 * y5)));
} else if (b <= 9.5e+19) {
tmp = t_1;
} else if (b <= 5.9e+57) {
tmp = y1 * (j * (x * i));
} else if (b <= 5.2e+171) {
tmp = c * (y4 * ((y * y3) - (t * y2)));
} else {
tmp = a * (b * ((x * y) - (z * t)));
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8), intent (in) :: t
real(8), intent (in) :: a
real(8), intent (in) :: b
real(8), intent (in) :: c
real(8), intent (in) :: i
real(8), intent (in) :: j
real(8), intent (in) :: k
real(8), intent (in) :: y0
real(8), intent (in) :: y1
real(8), intent (in) :: y2
real(8), intent (in) :: y3
real(8), intent (in) :: y4
real(8), intent (in) :: y5
real(8) :: t_1
real(8) :: tmp
t_1 = t * (c * ((z * i) - (y2 * y4)))
if (b <= (-4.2d+93)) then
tmp = y4 * (t * (b * j))
else if (b <= (-2.4d-172)) then
tmp = t_1
else if (b <= 1d-249) then
tmp = k * (y2 * ((y1 * y4) - (y0 * y5)))
else if (b <= 9.5d+19) then
tmp = t_1
else if (b <= 5.9d+57) then
tmp = y1 * (j * (x * i))
else if (b <= 5.2d+171) then
tmp = c * (y4 * ((y * y3) - (t * y2)))
else
tmp = a * (b * ((x * y) - (z * t)))
end if
code = tmp
end function
public static double code(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 t_1 = t * (c * ((z * i) - (y2 * y4)));
double tmp;
if (b <= -4.2e+93) {
tmp = y4 * (t * (b * j));
} else if (b <= -2.4e-172) {
tmp = t_1;
} else if (b <= 1e-249) {
tmp = k * (y2 * ((y1 * y4) - (y0 * y5)));
} else if (b <= 9.5e+19) {
tmp = t_1;
} else if (b <= 5.9e+57) {
tmp = y1 * (j * (x * i));
} else if (b <= 5.2e+171) {
tmp = c * (y4 * ((y * y3) - (t * y2)));
} else {
tmp = a * (b * ((x * y) - (z * t)));
}
return tmp;
}
def code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5): t_1 = t * (c * ((z * i) - (y2 * y4))) tmp = 0 if b <= -4.2e+93: tmp = y4 * (t * (b * j)) elif b <= -2.4e-172: tmp = t_1 elif b <= 1e-249: tmp = k * (y2 * ((y1 * y4) - (y0 * y5))) elif b <= 9.5e+19: tmp = t_1 elif b <= 5.9e+57: tmp = y1 * (j * (x * i)) elif b <= 5.2e+171: tmp = c * (y4 * ((y * y3) - (t * y2))) else: tmp = a * (b * ((x * y) - (z * t))) return tmp
function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = Float64(t * Float64(c * Float64(Float64(z * i) - Float64(y2 * y4)))) tmp = 0.0 if (b <= -4.2e+93) tmp = Float64(y4 * Float64(t * Float64(b * j))); elseif (b <= -2.4e-172) tmp = t_1; elseif (b <= 1e-249) tmp = Float64(k * Float64(y2 * Float64(Float64(y1 * y4) - Float64(y0 * y5)))); elseif (b <= 9.5e+19) tmp = t_1; elseif (b <= 5.9e+57) tmp = Float64(y1 * Float64(j * Float64(x * i))); elseif (b <= 5.2e+171) tmp = Float64(c * Float64(y4 * Float64(Float64(y * y3) - Float64(t * y2)))); else tmp = Float64(a * Float64(b * Float64(Float64(x * y) - Float64(z * t)))); end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = t * (c * ((z * i) - (y2 * y4))); tmp = 0.0; if (b <= -4.2e+93) tmp = y4 * (t * (b * j)); elseif (b <= -2.4e-172) tmp = t_1; elseif (b <= 1e-249) tmp = k * (y2 * ((y1 * y4) - (y0 * y5))); elseif (b <= 9.5e+19) tmp = t_1; elseif (b <= 5.9e+57) tmp = y1 * (j * (x * i)); elseif (b <= 5.2e+171) tmp = c * (y4 * ((y * y3) - (t * y2))); else tmp = a * (b * ((x * y) - (z * t))); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_, j_, k_, y0_, y1_, y2_, y3_, y4_, y5_] := Block[{t$95$1 = N[(t * N[(c * N[(N[(z * i), $MachinePrecision] - N[(y2 * y4), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[b, -4.2e+93], N[(y4 * N[(t * N[(b * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[b, -2.4e-172], t$95$1, If[LessEqual[b, 1e-249], N[(k * N[(y2 * N[(N[(y1 * y4), $MachinePrecision] - N[(y0 * y5), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[b, 9.5e+19], t$95$1, If[LessEqual[b, 5.9e+57], N[(y1 * N[(j * N[(x * i), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[b, 5.2e+171], N[(c * N[(y4 * N[(N[(y * y3), $MachinePrecision] - N[(t * y2), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(a * N[(b * N[(N[(x * y), $MachinePrecision] - N[(z * t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := t \cdot \left(c \cdot \left(z \cdot i - y2 \cdot y4\right)\right)\\
\mathbf{if}\;b \leq -4.2 \cdot 10^{+93}:\\
\;\;\;\;y4 \cdot \left(t \cdot \left(b \cdot j\right)\right)\\
\mathbf{elif}\;b \leq -2.4 \cdot 10^{-172}:\\
\;\;\;\;t_1\\
\mathbf{elif}\;b \leq 10^{-249}:\\
\;\;\;\;k \cdot \left(y2 \cdot \left(y1 \cdot y4 - y0 \cdot y5\right)\right)\\
\mathbf{elif}\;b \leq 9.5 \cdot 10^{+19}:\\
\;\;\;\;t_1\\
\mathbf{elif}\;b \leq 5.9 \cdot 10^{+57}:\\
\;\;\;\;y1 \cdot \left(j \cdot \left(x \cdot i\right)\right)\\
\mathbf{elif}\;b \leq 5.2 \cdot 10^{+171}:\\
\;\;\;\;c \cdot \left(y4 \cdot \left(y \cdot y3 - t \cdot y2\right)\right)\\
\mathbf{else}:\\
\;\;\;\;a \cdot \left(b \cdot \left(x \cdot y - z \cdot t\right)\right)\\
\end{array}
\end{array}
if b < -4.1999999999999996e93Initial program 14.6%
Simplified14.6%
Taylor expanded in t around inf 27.2%
associate--l+27.2%
mul-1-neg27.2%
Simplified27.2%
Taylor expanded in j around inf 42.4%
Taylor expanded in b around inf 46.9%
if -4.1999999999999996e93 < b < -2.4000000000000001e-172 or 1.00000000000000005e-249 < b < 9.5e19Initial program 30.8%
Simplified30.8%
Taylor expanded in t around inf 42.3%
associate--l+42.3%
mul-1-neg42.3%
Simplified42.3%
Taylor expanded in c around -inf 42.7%
mul-1-neg42.7%
unsub-neg42.7%
*-commutative42.7%
Simplified42.7%
if -2.4000000000000001e-172 < b < 1.00000000000000005e-249Initial program 34.2%
Simplified34.2%
Taylor expanded in y2 around inf 46.2%
Taylor expanded in k around inf 47.9%
if 9.5e19 < b < 5.90000000000000013e57Initial program 33.2%
Simplified33.2%
Taylor expanded in x around inf 55.6%
Taylor expanded in j around inf 45.6%
Taylor expanded in y1 around inf 45.9%
*-commutative45.9%
associate-*r*45.9%
associate-*l*56.6%
*-commutative56.6%
Simplified56.6%
if 5.90000000000000013e57 < b < 5.2e171Initial program 29.4%
Simplified29.4%
Taylor expanded in y4 around inf 42.3%
Taylor expanded in c around inf 48.8%
if 5.2e171 < b Initial program 24.9%
Simplified29.1%
Taylor expanded in a around inf 50.9%
mul-1-neg50.9%
mul-1-neg50.9%
Simplified50.9%
Taylor expanded in b around inf 54.7%
Final simplification46.3%
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5)
:precision binary64
(let* ((t_1 (* t (* c (- (* z i) (* y2 y4))))))
(if (<= c -5.4e+149)
t_1
(if (<= c -8.4e+77)
(* y (* x (- (* a b) (* c i))))
(if (<= c -9e+34)
(* y0 (* x (- (* c y2) (* b j))))
(if (<= c -1.85e-256)
(* y1 (* y2 (- (* k y4) (* x a))))
(if (<= c 3.6e-15)
(* t (* j (- (* b y4) (* i y5))))
(if (<= c 4.5e+41) (* a (* b (- (* x y) (* z t)))) t_1))))))))
double code(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 t_1 = t * (c * ((z * i) - (y2 * y4)));
double tmp;
if (c <= -5.4e+149) {
tmp = t_1;
} else if (c <= -8.4e+77) {
tmp = y * (x * ((a * b) - (c * i)));
} else if (c <= -9e+34) {
tmp = y0 * (x * ((c * y2) - (b * j)));
} else if (c <= -1.85e-256) {
tmp = y1 * (y2 * ((k * y4) - (x * a)));
} else if (c <= 3.6e-15) {
tmp = t * (j * ((b * y4) - (i * y5)));
} else if (c <= 4.5e+41) {
tmp = a * (b * ((x * y) - (z * t)));
} else {
tmp = t_1;
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8), intent (in) :: t
real(8), intent (in) :: a
real(8), intent (in) :: b
real(8), intent (in) :: c
real(8), intent (in) :: i
real(8), intent (in) :: j
real(8), intent (in) :: k
real(8), intent (in) :: y0
real(8), intent (in) :: y1
real(8), intent (in) :: y2
real(8), intent (in) :: y3
real(8), intent (in) :: y4
real(8), intent (in) :: y5
real(8) :: t_1
real(8) :: tmp
t_1 = t * (c * ((z * i) - (y2 * y4)))
if (c <= (-5.4d+149)) then
tmp = t_1
else if (c <= (-8.4d+77)) then
tmp = y * (x * ((a * b) - (c * i)))
else if (c <= (-9d+34)) then
tmp = y0 * (x * ((c * y2) - (b * j)))
else if (c <= (-1.85d-256)) then
tmp = y1 * (y2 * ((k * y4) - (x * a)))
else if (c <= 3.6d-15) then
tmp = t * (j * ((b * y4) - (i * y5)))
else if (c <= 4.5d+41) then
tmp = a * (b * ((x * y) - (z * t)))
else
tmp = t_1
end if
code = tmp
end function
public static double code(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 t_1 = t * (c * ((z * i) - (y2 * y4)));
double tmp;
if (c <= -5.4e+149) {
tmp = t_1;
} else if (c <= -8.4e+77) {
tmp = y * (x * ((a * b) - (c * i)));
} else if (c <= -9e+34) {
tmp = y0 * (x * ((c * y2) - (b * j)));
} else if (c <= -1.85e-256) {
tmp = y1 * (y2 * ((k * y4) - (x * a)));
} else if (c <= 3.6e-15) {
tmp = t * (j * ((b * y4) - (i * y5)));
} else if (c <= 4.5e+41) {
tmp = a * (b * ((x * y) - (z * t)));
} else {
tmp = t_1;
}
return tmp;
}
def code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5): t_1 = t * (c * ((z * i) - (y2 * y4))) tmp = 0 if c <= -5.4e+149: tmp = t_1 elif c <= -8.4e+77: tmp = y * (x * ((a * b) - (c * i))) elif c <= -9e+34: tmp = y0 * (x * ((c * y2) - (b * j))) elif c <= -1.85e-256: tmp = y1 * (y2 * ((k * y4) - (x * a))) elif c <= 3.6e-15: tmp = t * (j * ((b * y4) - (i * y5))) elif c <= 4.5e+41: tmp = a * (b * ((x * y) - (z * t))) else: tmp = t_1 return tmp
function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = Float64(t * Float64(c * Float64(Float64(z * i) - Float64(y2 * y4)))) tmp = 0.0 if (c <= -5.4e+149) tmp = t_1; elseif (c <= -8.4e+77) tmp = Float64(y * Float64(x * Float64(Float64(a * b) - Float64(c * i)))); elseif (c <= -9e+34) tmp = Float64(y0 * Float64(x * Float64(Float64(c * y2) - Float64(b * j)))); elseif (c <= -1.85e-256) tmp = Float64(y1 * Float64(y2 * Float64(Float64(k * y4) - Float64(x * a)))); elseif (c <= 3.6e-15) tmp = Float64(t * Float64(j * Float64(Float64(b * y4) - Float64(i * y5)))); elseif (c <= 4.5e+41) tmp = Float64(a * Float64(b * Float64(Float64(x * y) - Float64(z * t)))); else tmp = t_1; end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = t * (c * ((z * i) - (y2 * y4))); tmp = 0.0; if (c <= -5.4e+149) tmp = t_1; elseif (c <= -8.4e+77) tmp = y * (x * ((a * b) - (c * i))); elseif (c <= -9e+34) tmp = y0 * (x * ((c * y2) - (b * j))); elseif (c <= -1.85e-256) tmp = y1 * (y2 * ((k * y4) - (x * a))); elseif (c <= 3.6e-15) tmp = t * (j * ((b * y4) - (i * y5))); elseif (c <= 4.5e+41) tmp = a * (b * ((x * y) - (z * t))); else tmp = t_1; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_, j_, k_, y0_, y1_, y2_, y3_, y4_, y5_] := Block[{t$95$1 = N[(t * N[(c * N[(N[(z * i), $MachinePrecision] - N[(y2 * y4), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[c, -5.4e+149], t$95$1, If[LessEqual[c, -8.4e+77], N[(y * N[(x * N[(N[(a * b), $MachinePrecision] - N[(c * i), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[c, -9e+34], N[(y0 * N[(x * N[(N[(c * y2), $MachinePrecision] - N[(b * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[c, -1.85e-256], N[(y1 * N[(y2 * N[(N[(k * y4), $MachinePrecision] - N[(x * a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[c, 3.6e-15], N[(t * N[(j * N[(N[(b * y4), $MachinePrecision] - N[(i * y5), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[c, 4.5e+41], N[(a * N[(b * N[(N[(x * y), $MachinePrecision] - N[(z * t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], t$95$1]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := t \cdot \left(c \cdot \left(z \cdot i - y2 \cdot y4\right)\right)\\
\mathbf{if}\;c \leq -5.4 \cdot 10^{+149}:\\
\;\;\;\;t_1\\
\mathbf{elif}\;c \leq -8.4 \cdot 10^{+77}:\\
\;\;\;\;y \cdot \left(x \cdot \left(a \cdot b - c \cdot i\right)\right)\\
\mathbf{elif}\;c \leq -9 \cdot 10^{+34}:\\
\;\;\;\;y0 \cdot \left(x \cdot \left(c \cdot y2 - b \cdot j\right)\right)\\
\mathbf{elif}\;c \leq -1.85 \cdot 10^{-256}:\\
\;\;\;\;y1 \cdot \left(y2 \cdot \left(k \cdot y4 - x \cdot a\right)\right)\\
\mathbf{elif}\;c \leq 3.6 \cdot 10^{-15}:\\
\;\;\;\;t \cdot \left(j \cdot \left(b \cdot y4 - i \cdot y5\right)\right)\\
\mathbf{elif}\;c \leq 4.5 \cdot 10^{+41}:\\
\;\;\;\;a \cdot \left(b \cdot \left(x \cdot y - z \cdot t\right)\right)\\
\mathbf{else}:\\
\;\;\;\;t_1\\
\end{array}
\end{array}
if c < -5.4000000000000002e149 or 4.5000000000000001e41 < c Initial program 22.2%
Simplified22.2%
Taylor expanded in t around inf 37.7%
associate--l+37.7%
mul-1-neg37.7%
Simplified37.7%
Taylor expanded in c around -inf 48.6%
mul-1-neg48.6%
unsub-neg48.6%
*-commutative48.6%
Simplified48.6%
if -5.4000000000000002e149 < c < -8.3999999999999995e77Initial program 19.2%
Simplified19.2%
Taylor expanded in x around inf 50.3%
Taylor expanded in y around inf 57.8%
if -8.3999999999999995e77 < c < -9.0000000000000001e34Initial program 25.7%
Simplified25.7%
Taylor expanded in x around inf 66.8%
Taylor expanded in y0 around inf 59.2%
if -9.0000000000000001e34 < c < -1.85000000000000014e-256Initial program 31.8%
Simplified31.8%
Taylor expanded in y2 around inf 41.1%
Taylor expanded in y1 around inf 46.6%
*-commutative46.6%
+-commutative46.6%
mul-1-neg46.6%
unsub-neg46.6%
*-commutative46.6%
Simplified46.6%
if -1.85000000000000014e-256 < c < 3.6000000000000001e-15Initial program 36.4%
Simplified36.4%
Taylor expanded in t around inf 46.3%
associate--l+46.3%
mul-1-neg46.3%
Simplified46.3%
Taylor expanded in j around inf 36.0%
if 3.6000000000000001e-15 < c < 4.5000000000000001e41Initial program 30.0%
Simplified30.0%
Taylor expanded in a around inf 70.1%
mul-1-neg70.1%
mul-1-neg70.1%
Simplified70.1%
Taylor expanded in b around inf 80.2%
Final simplification47.2%
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5)
:precision binary64
(let* ((t_1 (- (* k y4) (* x a))) (t_2 (- (* a b) (* c i))))
(if (<= y -2.45e+154)
(* x (* y t_2))
(if (<= y -1.9e-15)
(* y1 (* y2 t_1))
(if (<= y -2e-308)
(* a (* z (- (* y1 y3) (* t b))))
(if (<= y 3.4e-23)
(* y2 (* y1 t_1))
(if (<= y 1.6e+145)
(* t_2 (* x y))
(if (<= y 1.16e+260)
(* c (* y4 (- (* y y3) (* t y2))))
(* y (* x t_2))))))))))
double code(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 t_1 = (k * y4) - (x * a);
double t_2 = (a * b) - (c * i);
double tmp;
if (y <= -2.45e+154) {
tmp = x * (y * t_2);
} else if (y <= -1.9e-15) {
tmp = y1 * (y2 * t_1);
} else if (y <= -2e-308) {
tmp = a * (z * ((y1 * y3) - (t * b)));
} else if (y <= 3.4e-23) {
tmp = y2 * (y1 * t_1);
} else if (y <= 1.6e+145) {
tmp = t_2 * (x * y);
} else if (y <= 1.16e+260) {
tmp = c * (y4 * ((y * y3) - (t * y2)));
} else {
tmp = y * (x * t_2);
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8), intent (in) :: t
real(8), intent (in) :: a
real(8), intent (in) :: b
real(8), intent (in) :: c
real(8), intent (in) :: i
real(8), intent (in) :: j
real(8), intent (in) :: k
real(8), intent (in) :: y0
real(8), intent (in) :: y1
real(8), intent (in) :: y2
real(8), intent (in) :: y3
real(8), intent (in) :: y4
real(8), intent (in) :: y5
real(8) :: t_1
real(8) :: t_2
real(8) :: tmp
t_1 = (k * y4) - (x * a)
t_2 = (a * b) - (c * i)
if (y <= (-2.45d+154)) then
tmp = x * (y * t_2)
else if (y <= (-1.9d-15)) then
tmp = y1 * (y2 * t_1)
else if (y <= (-2d-308)) then
tmp = a * (z * ((y1 * y3) - (t * b)))
else if (y <= 3.4d-23) then
tmp = y2 * (y1 * t_1)
else if (y <= 1.6d+145) then
tmp = t_2 * (x * y)
else if (y <= 1.16d+260) then
tmp = c * (y4 * ((y * y3) - (t * y2)))
else
tmp = y * (x * t_2)
end if
code = tmp
end function
public static double code(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 t_1 = (k * y4) - (x * a);
double t_2 = (a * b) - (c * i);
double tmp;
if (y <= -2.45e+154) {
tmp = x * (y * t_2);
} else if (y <= -1.9e-15) {
tmp = y1 * (y2 * t_1);
} else if (y <= -2e-308) {
tmp = a * (z * ((y1 * y3) - (t * b)));
} else if (y <= 3.4e-23) {
tmp = y2 * (y1 * t_1);
} else if (y <= 1.6e+145) {
tmp = t_2 * (x * y);
} else if (y <= 1.16e+260) {
tmp = c * (y4 * ((y * y3) - (t * y2)));
} else {
tmp = y * (x * t_2);
}
return tmp;
}
def code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5): t_1 = (k * y4) - (x * a) t_2 = (a * b) - (c * i) tmp = 0 if y <= -2.45e+154: tmp = x * (y * t_2) elif y <= -1.9e-15: tmp = y1 * (y2 * t_1) elif y <= -2e-308: tmp = a * (z * ((y1 * y3) - (t * b))) elif y <= 3.4e-23: tmp = y2 * (y1 * t_1) elif y <= 1.6e+145: tmp = t_2 * (x * y) elif y <= 1.16e+260: tmp = c * (y4 * ((y * y3) - (t * y2))) else: tmp = y * (x * t_2) return tmp
function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = Float64(Float64(k * y4) - Float64(x * a)) t_2 = Float64(Float64(a * b) - Float64(c * i)) tmp = 0.0 if (y <= -2.45e+154) tmp = Float64(x * Float64(y * t_2)); elseif (y <= -1.9e-15) tmp = Float64(y1 * Float64(y2 * t_1)); elseif (y <= -2e-308) tmp = Float64(a * Float64(z * Float64(Float64(y1 * y3) - Float64(t * b)))); elseif (y <= 3.4e-23) tmp = Float64(y2 * Float64(y1 * t_1)); elseif (y <= 1.6e+145) tmp = Float64(t_2 * Float64(x * y)); elseif (y <= 1.16e+260) tmp = Float64(c * Float64(y4 * Float64(Float64(y * y3) - Float64(t * y2)))); else tmp = Float64(y * Float64(x * t_2)); end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = (k * y4) - (x * a); t_2 = (a * b) - (c * i); tmp = 0.0; if (y <= -2.45e+154) tmp = x * (y * t_2); elseif (y <= -1.9e-15) tmp = y1 * (y2 * t_1); elseif (y <= -2e-308) tmp = a * (z * ((y1 * y3) - (t * b))); elseif (y <= 3.4e-23) tmp = y2 * (y1 * t_1); elseif (y <= 1.6e+145) tmp = t_2 * (x * y); elseif (y <= 1.16e+260) tmp = c * (y4 * ((y * y3) - (t * y2))); else tmp = y * (x * t_2); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_, j_, k_, y0_, y1_, y2_, y3_, y4_, y5_] := Block[{t$95$1 = N[(N[(k * y4), $MachinePrecision] - N[(x * a), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(N[(a * b), $MachinePrecision] - N[(c * i), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[y, -2.45e+154], N[(x * N[(y * t$95$2), $MachinePrecision]), $MachinePrecision], If[LessEqual[y, -1.9e-15], N[(y1 * N[(y2 * t$95$1), $MachinePrecision]), $MachinePrecision], If[LessEqual[y, -2e-308], N[(a * N[(z * N[(N[(y1 * y3), $MachinePrecision] - N[(t * b), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y, 3.4e-23], N[(y2 * N[(y1 * t$95$1), $MachinePrecision]), $MachinePrecision], If[LessEqual[y, 1.6e+145], N[(t$95$2 * N[(x * y), $MachinePrecision]), $MachinePrecision], If[LessEqual[y, 1.16e+260], N[(c * N[(y4 * N[(N[(y * y3), $MachinePrecision] - N[(t * y2), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(y * N[(x * t$95$2), $MachinePrecision]), $MachinePrecision]]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := k \cdot y4 - x \cdot a\\
t_2 := a \cdot b - c \cdot i\\
\mathbf{if}\;y \leq -2.45 \cdot 10^{+154}:\\
\;\;\;\;x \cdot \left(y \cdot t_2\right)\\
\mathbf{elif}\;y \leq -1.9 \cdot 10^{-15}:\\
\;\;\;\;y1 \cdot \left(y2 \cdot t_1\right)\\
\mathbf{elif}\;y \leq -2 \cdot 10^{-308}:\\
\;\;\;\;a \cdot \left(z \cdot \left(y1 \cdot y3 - t \cdot b\right)\right)\\
\mathbf{elif}\;y \leq 3.4 \cdot 10^{-23}:\\
\;\;\;\;y2 \cdot \left(y1 \cdot t_1\right)\\
\mathbf{elif}\;y \leq 1.6 \cdot 10^{+145}:\\
\;\;\;\;t_2 \cdot \left(x \cdot y\right)\\
\mathbf{elif}\;y \leq 1.16 \cdot 10^{+260}:\\
\;\;\;\;c \cdot \left(y4 \cdot \left(y \cdot y3 - t \cdot y2\right)\right)\\
\mathbf{else}:\\
\;\;\;\;y \cdot \left(x \cdot t_2\right)\\
\end{array}
\end{array}
if y < -2.4500000000000001e154Initial program 26.5%
Simplified26.5%
Taylor expanded in x around inf 47.3%
Taylor expanded in y around inf 62.5%
if -2.4500000000000001e154 < y < -1.9000000000000001e-15Initial program 16.1%
Simplified16.1%
Taylor expanded in y2 around inf 42.5%
Taylor expanded in y1 around inf 45.9%
*-commutative45.9%
+-commutative45.9%
mul-1-neg45.9%
unsub-neg45.9%
*-commutative45.9%
Simplified45.9%
if -1.9000000000000001e-15 < y < -1.9999999999999998e-308Initial program 20.6%
Simplified23.5%
Taylor expanded in a around inf 42.5%
mul-1-neg42.5%
mul-1-neg42.5%
Simplified42.5%
Taylor expanded in z around inf 43.2%
cancel-sign-sub-inv43.2%
metadata-eval43.2%
*-lft-identity43.2%
+-commutative43.2%
mul-1-neg43.2%
unsub-neg43.2%
*-commutative43.2%
Simplified43.2%
if -1.9999999999999998e-308 < y < 3.4000000000000001e-23Initial program 45.6%
Simplified45.6%
Taylor expanded in y2 around inf 42.0%
Taylor expanded in y1 around inf 44.1%
+-commutative44.1%
mul-1-neg44.1%
unsub-neg44.1%
*-commutative44.1%
Simplified44.1%
if 3.4000000000000001e-23 < y < 1.60000000000000004e145Initial program 40.0%
Simplified40.0%
Taylor expanded in x around inf 47.9%
Taylor expanded in i around -inf 47.7%
Taylor expanded in y around inf 47.5%
mul-1-neg47.5%
unsub-neg47.5%
*-commutative47.5%
*-commutative47.5%
Simplified47.5%
if 1.60000000000000004e145 < y < 1.16e260Initial program 22.2%
Simplified22.2%
Taylor expanded in y4 around inf 52.2%
Taylor expanded in c around inf 41.4%
if 1.16e260 < y Initial program 21.4%
Simplified21.4%
Taylor expanded in x around inf 57.2%
Taylor expanded in y around inf 64.8%
Final simplification47.8%
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5)
:precision binary64
(let* ((t_1 (* a (* b (- (* x y) (* z t))))))
(if (<= y3 -2000000.0)
(* a (* z (- (* y1 y3) (* t b))))
(if (<= y3 -6.8e-100)
(* i (* y1 (* x j)))
(if (<= y3 8.8e-86)
t_1
(if (<= y3 3900000.0)
(* (* b j) (* t y4))
(if (<= y3 2.02e+179) t_1 (* y4 (* j (* y3 (- y1)))))))))))
double code(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 t_1 = a * (b * ((x * y) - (z * t)));
double tmp;
if (y3 <= -2000000.0) {
tmp = a * (z * ((y1 * y3) - (t * b)));
} else if (y3 <= -6.8e-100) {
tmp = i * (y1 * (x * j));
} else if (y3 <= 8.8e-86) {
tmp = t_1;
} else if (y3 <= 3900000.0) {
tmp = (b * j) * (t * y4);
} else if (y3 <= 2.02e+179) {
tmp = t_1;
} else {
tmp = y4 * (j * (y3 * -y1));
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8), intent (in) :: t
real(8), intent (in) :: a
real(8), intent (in) :: b
real(8), intent (in) :: c
real(8), intent (in) :: i
real(8), intent (in) :: j
real(8), intent (in) :: k
real(8), intent (in) :: y0
real(8), intent (in) :: y1
real(8), intent (in) :: y2
real(8), intent (in) :: y3
real(8), intent (in) :: y4
real(8), intent (in) :: y5
real(8) :: t_1
real(8) :: tmp
t_1 = a * (b * ((x * y) - (z * t)))
if (y3 <= (-2000000.0d0)) then
tmp = a * (z * ((y1 * y3) - (t * b)))
else if (y3 <= (-6.8d-100)) then
tmp = i * (y1 * (x * j))
else if (y3 <= 8.8d-86) then
tmp = t_1
else if (y3 <= 3900000.0d0) then
tmp = (b * j) * (t * y4)
else if (y3 <= 2.02d+179) then
tmp = t_1
else
tmp = y4 * (j * (y3 * -y1))
end if
code = tmp
end function
public static double code(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 t_1 = a * (b * ((x * y) - (z * t)));
double tmp;
if (y3 <= -2000000.0) {
tmp = a * (z * ((y1 * y3) - (t * b)));
} else if (y3 <= -6.8e-100) {
tmp = i * (y1 * (x * j));
} else if (y3 <= 8.8e-86) {
tmp = t_1;
} else if (y3 <= 3900000.0) {
tmp = (b * j) * (t * y4);
} else if (y3 <= 2.02e+179) {
tmp = t_1;
} else {
tmp = y4 * (j * (y3 * -y1));
}
return tmp;
}
def code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5): t_1 = a * (b * ((x * y) - (z * t))) tmp = 0 if y3 <= -2000000.0: tmp = a * (z * ((y1 * y3) - (t * b))) elif y3 <= -6.8e-100: tmp = i * (y1 * (x * j)) elif y3 <= 8.8e-86: tmp = t_1 elif y3 <= 3900000.0: tmp = (b * j) * (t * y4) elif y3 <= 2.02e+179: tmp = t_1 else: tmp = y4 * (j * (y3 * -y1)) return tmp
function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = Float64(a * Float64(b * Float64(Float64(x * y) - Float64(z * t)))) tmp = 0.0 if (y3 <= -2000000.0) tmp = Float64(a * Float64(z * Float64(Float64(y1 * y3) - Float64(t * b)))); elseif (y3 <= -6.8e-100) tmp = Float64(i * Float64(y1 * Float64(x * j))); elseif (y3 <= 8.8e-86) tmp = t_1; elseif (y3 <= 3900000.0) tmp = Float64(Float64(b * j) * Float64(t * y4)); elseif (y3 <= 2.02e+179) tmp = t_1; else tmp = Float64(y4 * Float64(j * Float64(y3 * Float64(-y1)))); end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = a * (b * ((x * y) - (z * t))); tmp = 0.0; if (y3 <= -2000000.0) tmp = a * (z * ((y1 * y3) - (t * b))); elseif (y3 <= -6.8e-100) tmp = i * (y1 * (x * j)); elseif (y3 <= 8.8e-86) tmp = t_1; elseif (y3 <= 3900000.0) tmp = (b * j) * (t * y4); elseif (y3 <= 2.02e+179) tmp = t_1; else tmp = y4 * (j * (y3 * -y1)); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_, j_, k_, y0_, y1_, y2_, y3_, y4_, y5_] := Block[{t$95$1 = N[(a * N[(b * N[(N[(x * y), $MachinePrecision] - N[(z * t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[y3, -2000000.0], N[(a * N[(z * N[(N[(y1 * y3), $MachinePrecision] - N[(t * b), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y3, -6.8e-100], N[(i * N[(y1 * N[(x * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y3, 8.8e-86], t$95$1, If[LessEqual[y3, 3900000.0], N[(N[(b * j), $MachinePrecision] * N[(t * y4), $MachinePrecision]), $MachinePrecision], If[LessEqual[y3, 2.02e+179], t$95$1, N[(y4 * N[(j * N[(y3 * (-y1)), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := a \cdot \left(b \cdot \left(x \cdot y - z \cdot t\right)\right)\\
\mathbf{if}\;y3 \leq -2000000:\\
\;\;\;\;a \cdot \left(z \cdot \left(y1 \cdot y3 - t \cdot b\right)\right)\\
\mathbf{elif}\;y3 \leq -6.8 \cdot 10^{-100}:\\
\;\;\;\;i \cdot \left(y1 \cdot \left(x \cdot j\right)\right)\\
\mathbf{elif}\;y3 \leq 8.8 \cdot 10^{-86}:\\
\;\;\;\;t_1\\
\mathbf{elif}\;y3 \leq 3900000:\\
\;\;\;\;\left(b \cdot j\right) \cdot \left(t \cdot y4\right)\\
\mathbf{elif}\;y3 \leq 2.02 \cdot 10^{+179}:\\
\;\;\;\;t_1\\
\mathbf{else}:\\
\;\;\;\;y4 \cdot \left(j \cdot \left(y3 \cdot \left(-y1\right)\right)\right)\\
\end{array}
\end{array}
if y3 < -2e6Initial program 21.7%
Simplified29.6%
Taylor expanded in a around inf 47.5%
mul-1-neg47.5%
mul-1-neg47.5%
Simplified47.5%
Taylor expanded in z around inf 44.0%
cancel-sign-sub-inv44.0%
metadata-eval44.0%
*-lft-identity44.0%
+-commutative44.0%
mul-1-neg44.0%
unsub-neg44.0%
*-commutative44.0%
Simplified44.0%
if -2e6 < y3 < -6.79999999999999953e-100Initial program 35.7%
Simplified35.7%
Taylor expanded in x around inf 44.0%
Taylor expanded in j around inf 30.7%
Taylor expanded in y1 around inf 34.1%
if -6.79999999999999953e-100 < y3 < 8.8000000000000006e-86 or 3.9e6 < y3 < 2.0200000000000001e179Initial program 32.0%
Simplified34.3%
Taylor expanded in a around inf 38.7%
mul-1-neg38.7%
mul-1-neg38.7%
Simplified38.7%
Taylor expanded in b around inf 40.7%
if 8.8000000000000006e-86 < y3 < 3.9e6Initial program 16.5%
Simplified16.5%
Taylor expanded in t around inf 42.8%
associate--l+42.8%
mul-1-neg42.8%
Simplified42.8%
Taylor expanded in j around inf 38.2%
Taylor expanded in y4 around inf 33.2%
*-commutative33.2%
*-commutative33.2%
associate-*l*43.2%
*-commutative43.2%
Simplified43.2%
if 2.0200000000000001e179 < y3 Initial program 24.1%
Simplified24.1%
Taylor expanded in y4 around inf 41.8%
Taylor expanded in j around inf 52.4%
associate-*r*45.5%
*-commutative45.5%
mul-1-neg45.5%
sub-neg45.5%
*-commutative45.5%
Simplified45.5%
Taylor expanded in b around 0 32.3%
mul-1-neg32.3%
distribute-rgt-neg-in32.3%
associate-*r*42.1%
*-commutative42.1%
Simplified42.1%
Final simplification41.0%
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5)
:precision binary64
(let* ((t_1 (* a (* b (- (* x y) (* z t))))))
(if (<= y3 -4600000.0)
(* a (* z (- (* y1 y3) (* t b))))
(if (<= y3 -2e-109)
(* i (* y1 (* x j)))
(if (<= y3 8e-86)
t_1
(if (<= y3 3900000.0)
(* (* b j) (* t y4))
(if (<= y3 7e+194) t_1 (* a (* y5 (- (* t y2) (* y y3)))))))))))
double code(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 t_1 = a * (b * ((x * y) - (z * t)));
double tmp;
if (y3 <= -4600000.0) {
tmp = a * (z * ((y1 * y3) - (t * b)));
} else if (y3 <= -2e-109) {
tmp = i * (y1 * (x * j));
} else if (y3 <= 8e-86) {
tmp = t_1;
} else if (y3 <= 3900000.0) {
tmp = (b * j) * (t * y4);
} else if (y3 <= 7e+194) {
tmp = t_1;
} else {
tmp = a * (y5 * ((t * y2) - (y * y3)));
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8), intent (in) :: t
real(8), intent (in) :: a
real(8), intent (in) :: b
real(8), intent (in) :: c
real(8), intent (in) :: i
real(8), intent (in) :: j
real(8), intent (in) :: k
real(8), intent (in) :: y0
real(8), intent (in) :: y1
real(8), intent (in) :: y2
real(8), intent (in) :: y3
real(8), intent (in) :: y4
real(8), intent (in) :: y5
real(8) :: t_1
real(8) :: tmp
t_1 = a * (b * ((x * y) - (z * t)))
if (y3 <= (-4600000.0d0)) then
tmp = a * (z * ((y1 * y3) - (t * b)))
else if (y3 <= (-2d-109)) then
tmp = i * (y1 * (x * j))
else if (y3 <= 8d-86) then
tmp = t_1
else if (y3 <= 3900000.0d0) then
tmp = (b * j) * (t * y4)
else if (y3 <= 7d+194) then
tmp = t_1
else
tmp = a * (y5 * ((t * y2) - (y * y3)))
end if
code = tmp
end function
public static double code(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 t_1 = a * (b * ((x * y) - (z * t)));
double tmp;
if (y3 <= -4600000.0) {
tmp = a * (z * ((y1 * y3) - (t * b)));
} else if (y3 <= -2e-109) {
tmp = i * (y1 * (x * j));
} else if (y3 <= 8e-86) {
tmp = t_1;
} else if (y3 <= 3900000.0) {
tmp = (b * j) * (t * y4);
} else if (y3 <= 7e+194) {
tmp = t_1;
} else {
tmp = a * (y5 * ((t * y2) - (y * y3)));
}
return tmp;
}
def code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5): t_1 = a * (b * ((x * y) - (z * t))) tmp = 0 if y3 <= -4600000.0: tmp = a * (z * ((y1 * y3) - (t * b))) elif y3 <= -2e-109: tmp = i * (y1 * (x * j)) elif y3 <= 8e-86: tmp = t_1 elif y3 <= 3900000.0: tmp = (b * j) * (t * y4) elif y3 <= 7e+194: tmp = t_1 else: tmp = a * (y5 * ((t * y2) - (y * y3))) return tmp
function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = Float64(a * Float64(b * Float64(Float64(x * y) - Float64(z * t)))) tmp = 0.0 if (y3 <= -4600000.0) tmp = Float64(a * Float64(z * Float64(Float64(y1 * y3) - Float64(t * b)))); elseif (y3 <= -2e-109) tmp = Float64(i * Float64(y1 * Float64(x * j))); elseif (y3 <= 8e-86) tmp = t_1; elseif (y3 <= 3900000.0) tmp = Float64(Float64(b * j) * Float64(t * y4)); elseif (y3 <= 7e+194) tmp = t_1; else tmp = Float64(a * Float64(y5 * Float64(Float64(t * y2) - Float64(y * y3)))); end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = a * (b * ((x * y) - (z * t))); tmp = 0.0; if (y3 <= -4600000.0) tmp = a * (z * ((y1 * y3) - (t * b))); elseif (y3 <= -2e-109) tmp = i * (y1 * (x * j)); elseif (y3 <= 8e-86) tmp = t_1; elseif (y3 <= 3900000.0) tmp = (b * j) * (t * y4); elseif (y3 <= 7e+194) tmp = t_1; else tmp = a * (y5 * ((t * y2) - (y * y3))); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_, j_, k_, y0_, y1_, y2_, y3_, y4_, y5_] := Block[{t$95$1 = N[(a * N[(b * N[(N[(x * y), $MachinePrecision] - N[(z * t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[y3, -4600000.0], N[(a * N[(z * N[(N[(y1 * y3), $MachinePrecision] - N[(t * b), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y3, -2e-109], N[(i * N[(y1 * N[(x * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y3, 8e-86], t$95$1, If[LessEqual[y3, 3900000.0], N[(N[(b * j), $MachinePrecision] * N[(t * y4), $MachinePrecision]), $MachinePrecision], If[LessEqual[y3, 7e+194], t$95$1, N[(a * N[(y5 * N[(N[(t * y2), $MachinePrecision] - N[(y * y3), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := a \cdot \left(b \cdot \left(x \cdot y - z \cdot t\right)\right)\\
\mathbf{if}\;y3 \leq -4600000:\\
\;\;\;\;a \cdot \left(z \cdot \left(y1 \cdot y3 - t \cdot b\right)\right)\\
\mathbf{elif}\;y3 \leq -2 \cdot 10^{-109}:\\
\;\;\;\;i \cdot \left(y1 \cdot \left(x \cdot j\right)\right)\\
\mathbf{elif}\;y3 \leq 8 \cdot 10^{-86}:\\
\;\;\;\;t_1\\
\mathbf{elif}\;y3 \leq 3900000:\\
\;\;\;\;\left(b \cdot j\right) \cdot \left(t \cdot y4\right)\\
\mathbf{elif}\;y3 \leq 7 \cdot 10^{+194}:\\
\;\;\;\;t_1\\
\mathbf{else}:\\
\;\;\;\;a \cdot \left(y5 \cdot \left(t \cdot y2 - y \cdot y3\right)\right)\\
\end{array}
\end{array}
if y3 < -4.6e6Initial program 21.7%
Simplified29.6%
Taylor expanded in a around inf 47.5%
mul-1-neg47.5%
mul-1-neg47.5%
Simplified47.5%
Taylor expanded in z around inf 44.0%
cancel-sign-sub-inv44.0%
metadata-eval44.0%
*-lft-identity44.0%
+-commutative44.0%
mul-1-neg44.0%
unsub-neg44.0%
*-commutative44.0%
Simplified44.0%
if -4.6e6 < y3 < -2e-109Initial program 35.7%
Simplified35.7%
Taylor expanded in x around inf 44.0%
Taylor expanded in j around inf 30.7%
Taylor expanded in y1 around inf 34.1%
if -2e-109 < y3 < 8.00000000000000068e-86 or 3.9e6 < y3 < 6.9999999999999995e194Initial program 30.8%
Simplified33.0%
Taylor expanded in a around inf 38.1%
mul-1-neg38.1%
mul-1-neg38.1%
Simplified38.1%
Taylor expanded in b around inf 40.7%
if 8.00000000000000068e-86 < y3 < 3.9e6Initial program 16.5%
Simplified16.5%
Taylor expanded in t around inf 42.8%
associate--l+42.8%
mul-1-neg42.8%
Simplified42.8%
Taylor expanded in j around inf 38.2%
Taylor expanded in y4 around inf 33.2%
*-commutative33.2%
*-commutative33.2%
associate-*l*43.2%
*-commutative43.2%
Simplified43.2%
if 6.9999999999999995e194 < y3 Initial program 29.1%
Simplified37.4%
Taylor expanded in a around inf 41.6%
mul-1-neg41.6%
mul-1-neg41.6%
Simplified41.6%
Taylor expanded in y5 around inf 46.1%
Final simplification41.3%
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5)
:precision binary64
(let* ((t_1 (* c (* y4 (- (* y y3) (* t y2))))))
(if (<= a -3.7e+223)
(* a (* y5 (- (* t y2) (* y y3))))
(if (<= a -2.1e-166)
(* a (* b (- (* x y) (* z t))))
(if (<= a 8.5e-265)
t_1
(if (<= a 2.45e-114)
(* b (* y0 (- (* z k) (* x j))))
(if (<= a 1.8e+181) t_1 (* a (* z (- (* y1 y3) (* t b)))))))))))
double code(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 t_1 = c * (y4 * ((y * y3) - (t * y2)));
double tmp;
if (a <= -3.7e+223) {
tmp = a * (y5 * ((t * y2) - (y * y3)));
} else if (a <= -2.1e-166) {
tmp = a * (b * ((x * y) - (z * t)));
} else if (a <= 8.5e-265) {
tmp = t_1;
} else if (a <= 2.45e-114) {
tmp = b * (y0 * ((z * k) - (x * j)));
} else if (a <= 1.8e+181) {
tmp = t_1;
} else {
tmp = a * (z * ((y1 * y3) - (t * b)));
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8), intent (in) :: t
real(8), intent (in) :: a
real(8), intent (in) :: b
real(8), intent (in) :: c
real(8), intent (in) :: i
real(8), intent (in) :: j
real(8), intent (in) :: k
real(8), intent (in) :: y0
real(8), intent (in) :: y1
real(8), intent (in) :: y2
real(8), intent (in) :: y3
real(8), intent (in) :: y4
real(8), intent (in) :: y5
real(8) :: t_1
real(8) :: tmp
t_1 = c * (y4 * ((y * y3) - (t * y2)))
if (a <= (-3.7d+223)) then
tmp = a * (y5 * ((t * y2) - (y * y3)))
else if (a <= (-2.1d-166)) then
tmp = a * (b * ((x * y) - (z * t)))
else if (a <= 8.5d-265) then
tmp = t_1
else if (a <= 2.45d-114) then
tmp = b * (y0 * ((z * k) - (x * j)))
else if (a <= 1.8d+181) then
tmp = t_1
else
tmp = a * (z * ((y1 * y3) - (t * b)))
end if
code = tmp
end function
public static double code(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 t_1 = c * (y4 * ((y * y3) - (t * y2)));
double tmp;
if (a <= -3.7e+223) {
tmp = a * (y5 * ((t * y2) - (y * y3)));
} else if (a <= -2.1e-166) {
tmp = a * (b * ((x * y) - (z * t)));
} else if (a <= 8.5e-265) {
tmp = t_1;
} else if (a <= 2.45e-114) {
tmp = b * (y0 * ((z * k) - (x * j)));
} else if (a <= 1.8e+181) {
tmp = t_1;
} else {
tmp = a * (z * ((y1 * y3) - (t * b)));
}
return tmp;
}
def code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5): t_1 = c * (y4 * ((y * y3) - (t * y2))) tmp = 0 if a <= -3.7e+223: tmp = a * (y5 * ((t * y2) - (y * y3))) elif a <= -2.1e-166: tmp = a * (b * ((x * y) - (z * t))) elif a <= 8.5e-265: tmp = t_1 elif a <= 2.45e-114: tmp = b * (y0 * ((z * k) - (x * j))) elif a <= 1.8e+181: tmp = t_1 else: tmp = a * (z * ((y1 * y3) - (t * b))) return tmp
function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = Float64(c * Float64(y4 * Float64(Float64(y * y3) - Float64(t * y2)))) tmp = 0.0 if (a <= -3.7e+223) tmp = Float64(a * Float64(y5 * Float64(Float64(t * y2) - Float64(y * y3)))); elseif (a <= -2.1e-166) tmp = Float64(a * Float64(b * Float64(Float64(x * y) - Float64(z * t)))); elseif (a <= 8.5e-265) tmp = t_1; elseif (a <= 2.45e-114) tmp = Float64(b * Float64(y0 * Float64(Float64(z * k) - Float64(x * j)))); elseif (a <= 1.8e+181) tmp = t_1; else tmp = Float64(a * Float64(z * Float64(Float64(y1 * y3) - Float64(t * b)))); end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = c * (y4 * ((y * y3) - (t * y2))); tmp = 0.0; if (a <= -3.7e+223) tmp = a * (y5 * ((t * y2) - (y * y3))); elseif (a <= -2.1e-166) tmp = a * (b * ((x * y) - (z * t))); elseif (a <= 8.5e-265) tmp = t_1; elseif (a <= 2.45e-114) tmp = b * (y0 * ((z * k) - (x * j))); elseif (a <= 1.8e+181) tmp = t_1; else tmp = a * (z * ((y1 * y3) - (t * b))); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_, j_, k_, y0_, y1_, y2_, y3_, y4_, y5_] := Block[{t$95$1 = N[(c * N[(y4 * N[(N[(y * y3), $MachinePrecision] - N[(t * y2), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[a, -3.7e+223], N[(a * N[(y5 * N[(N[(t * y2), $MachinePrecision] - N[(y * y3), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[a, -2.1e-166], N[(a * N[(b * N[(N[(x * y), $MachinePrecision] - N[(z * t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[a, 8.5e-265], t$95$1, If[LessEqual[a, 2.45e-114], N[(b * N[(y0 * N[(N[(z * k), $MachinePrecision] - N[(x * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[a, 1.8e+181], t$95$1, N[(a * N[(z * N[(N[(y1 * y3), $MachinePrecision] - N[(t * b), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := c \cdot \left(y4 \cdot \left(y \cdot y3 - t \cdot y2\right)\right)\\
\mathbf{if}\;a \leq -3.7 \cdot 10^{+223}:\\
\;\;\;\;a \cdot \left(y5 \cdot \left(t \cdot y2 - y \cdot y3\right)\right)\\
\mathbf{elif}\;a \leq -2.1 \cdot 10^{-166}:\\
\;\;\;\;a \cdot \left(b \cdot \left(x \cdot y - z \cdot t\right)\right)\\
\mathbf{elif}\;a \leq 8.5 \cdot 10^{-265}:\\
\;\;\;\;t_1\\
\mathbf{elif}\;a \leq 2.45 \cdot 10^{-114}:\\
\;\;\;\;b \cdot \left(y0 \cdot \left(z \cdot k - x \cdot j\right)\right)\\
\mathbf{elif}\;a \leq 1.8 \cdot 10^{+181}:\\
\;\;\;\;t_1\\
\mathbf{else}:\\
\;\;\;\;a \cdot \left(z \cdot \left(y1 \cdot y3 - t \cdot b\right)\right)\\
\end{array}
\end{array}
if a < -3.7000000000000002e223Initial program 17.6%
Simplified26.3%
Taylor expanded in a around inf 78.3%
mul-1-neg78.3%
mul-1-neg78.3%
Simplified78.3%
Taylor expanded in y5 around inf 61.5%
if -3.7000000000000002e223 < a < -2.0999999999999999e-166Initial program 30.0%
Simplified36.2%
Taylor expanded in a around inf 39.4%
mul-1-neg39.4%
mul-1-neg39.4%
Simplified39.4%
Taylor expanded in b around inf 46.1%
if -2.0999999999999999e-166 < a < 8.4999999999999997e-265 or 2.4499999999999999e-114 < a < 1.79999999999999992e181Initial program 29.4%
Simplified29.4%
Taylor expanded in y4 around inf 40.6%
Taylor expanded in c around inf 36.5%
if 8.4999999999999997e-265 < a < 2.4499999999999999e-114Initial program 29.5%
Simplified29.5%
Taylor expanded in b around inf 37.8%
Taylor expanded in y0 around inf 45.2%
*-commutative45.2%
*-commutative45.2%
associate-*l*45.3%
Simplified45.3%
if 1.79999999999999992e181 < a Initial program 27.2%
Simplified30.5%
Taylor expanded in a around inf 53.9%
mul-1-neg53.9%
mul-1-neg53.9%
Simplified53.9%
Taylor expanded in z around inf 47.3%
cancel-sign-sub-inv47.3%
metadata-eval47.3%
*-lft-identity47.3%
+-commutative47.3%
mul-1-neg47.3%
unsub-neg47.3%
*-commutative47.3%
Simplified47.3%
Final simplification44.0%
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5)
:precision binary64
(let* ((t_1 (* t (* c (- (* z i) (* y2 y4))))))
(if (<= b -1.25e+94)
(* y4 (* t (* b j)))
(if (<= b -2.1e-173)
t_1
(if (<= b 5e-250)
(* k (* y2 (- (* y1 y4) (* y0 y5))))
(if (<= b 2.4e+18)
t_1
(if (<= b 3.6e+208)
(* x (* c (- (* y0 y2) (* y i))))
(* a (* b (- (* x y) (* z t)))))))))))
double code(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 t_1 = t * (c * ((z * i) - (y2 * y4)));
double tmp;
if (b <= -1.25e+94) {
tmp = y4 * (t * (b * j));
} else if (b <= -2.1e-173) {
tmp = t_1;
} else if (b <= 5e-250) {
tmp = k * (y2 * ((y1 * y4) - (y0 * y5)));
} else if (b <= 2.4e+18) {
tmp = t_1;
} else if (b <= 3.6e+208) {
tmp = x * (c * ((y0 * y2) - (y * i)));
} else {
tmp = a * (b * ((x * y) - (z * t)));
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8), intent (in) :: t
real(8), intent (in) :: a
real(8), intent (in) :: b
real(8), intent (in) :: c
real(8), intent (in) :: i
real(8), intent (in) :: j
real(8), intent (in) :: k
real(8), intent (in) :: y0
real(8), intent (in) :: y1
real(8), intent (in) :: y2
real(8), intent (in) :: y3
real(8), intent (in) :: y4
real(8), intent (in) :: y5
real(8) :: t_1
real(8) :: tmp
t_1 = t * (c * ((z * i) - (y2 * y4)))
if (b <= (-1.25d+94)) then
tmp = y4 * (t * (b * j))
else if (b <= (-2.1d-173)) then
tmp = t_1
else if (b <= 5d-250) then
tmp = k * (y2 * ((y1 * y4) - (y0 * y5)))
else if (b <= 2.4d+18) then
tmp = t_1
else if (b <= 3.6d+208) then
tmp = x * (c * ((y0 * y2) - (y * i)))
else
tmp = a * (b * ((x * y) - (z * t)))
end if
code = tmp
end function
public static double code(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 t_1 = t * (c * ((z * i) - (y2 * y4)));
double tmp;
if (b <= -1.25e+94) {
tmp = y4 * (t * (b * j));
} else if (b <= -2.1e-173) {
tmp = t_1;
} else if (b <= 5e-250) {
tmp = k * (y2 * ((y1 * y4) - (y0 * y5)));
} else if (b <= 2.4e+18) {
tmp = t_1;
} else if (b <= 3.6e+208) {
tmp = x * (c * ((y0 * y2) - (y * i)));
} else {
tmp = a * (b * ((x * y) - (z * t)));
}
return tmp;
}
def code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5): t_1 = t * (c * ((z * i) - (y2 * y4))) tmp = 0 if b <= -1.25e+94: tmp = y4 * (t * (b * j)) elif b <= -2.1e-173: tmp = t_1 elif b <= 5e-250: tmp = k * (y2 * ((y1 * y4) - (y0 * y5))) elif b <= 2.4e+18: tmp = t_1 elif b <= 3.6e+208: tmp = x * (c * ((y0 * y2) - (y * i))) else: tmp = a * (b * ((x * y) - (z * t))) return tmp
function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = Float64(t * Float64(c * Float64(Float64(z * i) - Float64(y2 * y4)))) tmp = 0.0 if (b <= -1.25e+94) tmp = Float64(y4 * Float64(t * Float64(b * j))); elseif (b <= -2.1e-173) tmp = t_1; elseif (b <= 5e-250) tmp = Float64(k * Float64(y2 * Float64(Float64(y1 * y4) - Float64(y0 * y5)))); elseif (b <= 2.4e+18) tmp = t_1; elseif (b <= 3.6e+208) tmp = Float64(x * Float64(c * Float64(Float64(y0 * y2) - Float64(y * i)))); else tmp = Float64(a * Float64(b * Float64(Float64(x * y) - Float64(z * t)))); end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = t * (c * ((z * i) - (y2 * y4))); tmp = 0.0; if (b <= -1.25e+94) tmp = y4 * (t * (b * j)); elseif (b <= -2.1e-173) tmp = t_1; elseif (b <= 5e-250) tmp = k * (y2 * ((y1 * y4) - (y0 * y5))); elseif (b <= 2.4e+18) tmp = t_1; elseif (b <= 3.6e+208) tmp = x * (c * ((y0 * y2) - (y * i))); else tmp = a * (b * ((x * y) - (z * t))); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_, j_, k_, y0_, y1_, y2_, y3_, y4_, y5_] := Block[{t$95$1 = N[(t * N[(c * N[(N[(z * i), $MachinePrecision] - N[(y2 * y4), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[b, -1.25e+94], N[(y4 * N[(t * N[(b * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[b, -2.1e-173], t$95$1, If[LessEqual[b, 5e-250], N[(k * N[(y2 * N[(N[(y1 * y4), $MachinePrecision] - N[(y0 * y5), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[b, 2.4e+18], t$95$1, If[LessEqual[b, 3.6e+208], N[(x * N[(c * N[(N[(y0 * y2), $MachinePrecision] - N[(y * i), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(a * N[(b * N[(N[(x * y), $MachinePrecision] - N[(z * t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := t \cdot \left(c \cdot \left(z \cdot i - y2 \cdot y4\right)\right)\\
\mathbf{if}\;b \leq -1.25 \cdot 10^{+94}:\\
\;\;\;\;y4 \cdot \left(t \cdot \left(b \cdot j\right)\right)\\
\mathbf{elif}\;b \leq -2.1 \cdot 10^{-173}:\\
\;\;\;\;t_1\\
\mathbf{elif}\;b \leq 5 \cdot 10^{-250}:\\
\;\;\;\;k \cdot \left(y2 \cdot \left(y1 \cdot y4 - y0 \cdot y5\right)\right)\\
\mathbf{elif}\;b \leq 2.4 \cdot 10^{+18}:\\
\;\;\;\;t_1\\
\mathbf{elif}\;b \leq 3.6 \cdot 10^{+208}:\\
\;\;\;\;x \cdot \left(c \cdot \left(y0 \cdot y2 - y \cdot i\right)\right)\\
\mathbf{else}:\\
\;\;\;\;a \cdot \left(b \cdot \left(x \cdot y - z \cdot t\right)\right)\\
\end{array}
\end{array}
if b < -1.25000000000000003e94Initial program 14.6%
Simplified14.6%
Taylor expanded in t around inf 27.2%
associate--l+27.2%
mul-1-neg27.2%
Simplified27.2%
Taylor expanded in j around inf 42.4%
Taylor expanded in b around inf 46.9%
if -1.25000000000000003e94 < b < -2.10000000000000001e-173 or 5.00000000000000027e-250 < b < 2.4e18Initial program 29.7%
Simplified29.7%
Taylor expanded in t around inf 42.2%
associate--l+42.2%
mul-1-neg42.2%
Simplified42.2%
Taylor expanded in c around -inf 42.5%
mul-1-neg42.5%
unsub-neg42.5%
*-commutative42.5%
Simplified42.5%
if -2.10000000000000001e-173 < b < 5.00000000000000027e-250Initial program 34.2%
Simplified34.2%
Taylor expanded in y2 around inf 46.2%
Taylor expanded in k around inf 47.9%
if 2.4e18 < b < 3.60000000000000003e208Initial program 33.2%
Simplified33.2%
Taylor expanded in x around inf 42.6%
Taylor expanded in i around -inf 39.8%
Taylor expanded in c around inf 37.7%
associate-*r*48.9%
*-commutative48.9%
+-commutative48.9%
mul-1-neg48.9%
unsub-neg48.9%
*-commutative48.9%
Simplified48.9%
if 3.60000000000000003e208 < b Initial program 26.3%
Simplified31.6%
Taylor expanded in a around inf 58.7%
mul-1-neg58.7%
mul-1-neg58.7%
Simplified58.7%
Taylor expanded in b around inf 63.6%
Final simplification46.6%
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5)
:precision binary64
(if (<= x -1.2e+107)
(* b (* j (* x (- y0))))
(if (<= x -8.4e+15)
(* x (* j (* i y1)))
(if (<= x -3.5e-237)
(* y4 (* t (* b j)))
(if (<= x 1.35e-200)
(* y4 (* j (* y3 (- y1))))
(if (<= x 3.2e-124)
(* y4 (* b (* t j)))
(if (<= x 1.5e+50)
(* (* t i) (* j (- y5)))
(* y (* b (* x a))))))))))
double code(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 tmp;
if (x <= -1.2e+107) {
tmp = b * (j * (x * -y0));
} else if (x <= -8.4e+15) {
tmp = x * (j * (i * y1));
} else if (x <= -3.5e-237) {
tmp = y4 * (t * (b * j));
} else if (x <= 1.35e-200) {
tmp = y4 * (j * (y3 * -y1));
} else if (x <= 3.2e-124) {
tmp = y4 * (b * (t * j));
} else if (x <= 1.5e+50) {
tmp = (t * i) * (j * -y5);
} else {
tmp = y * (b * (x * a));
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8), intent (in) :: t
real(8), intent (in) :: a
real(8), intent (in) :: b
real(8), intent (in) :: c
real(8), intent (in) :: i
real(8), intent (in) :: j
real(8), intent (in) :: k
real(8), intent (in) :: y0
real(8), intent (in) :: y1
real(8), intent (in) :: y2
real(8), intent (in) :: y3
real(8), intent (in) :: y4
real(8), intent (in) :: y5
real(8) :: tmp
if (x <= (-1.2d+107)) then
tmp = b * (j * (x * -y0))
else if (x <= (-8.4d+15)) then
tmp = x * (j * (i * y1))
else if (x <= (-3.5d-237)) then
tmp = y4 * (t * (b * j))
else if (x <= 1.35d-200) then
tmp = y4 * (j * (y3 * -y1))
else if (x <= 3.2d-124) then
tmp = y4 * (b * (t * j))
else if (x <= 1.5d+50) then
tmp = (t * i) * (j * -y5)
else
tmp = y * (b * (x * a))
end if
code = tmp
end function
public static double code(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 tmp;
if (x <= -1.2e+107) {
tmp = b * (j * (x * -y0));
} else if (x <= -8.4e+15) {
tmp = x * (j * (i * y1));
} else if (x <= -3.5e-237) {
tmp = y4 * (t * (b * j));
} else if (x <= 1.35e-200) {
tmp = y4 * (j * (y3 * -y1));
} else if (x <= 3.2e-124) {
tmp = y4 * (b * (t * j));
} else if (x <= 1.5e+50) {
tmp = (t * i) * (j * -y5);
} else {
tmp = y * (b * (x * a));
}
return tmp;
}
def code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5): tmp = 0 if x <= -1.2e+107: tmp = b * (j * (x * -y0)) elif x <= -8.4e+15: tmp = x * (j * (i * y1)) elif x <= -3.5e-237: tmp = y4 * (t * (b * j)) elif x <= 1.35e-200: tmp = y4 * (j * (y3 * -y1)) elif x <= 3.2e-124: tmp = y4 * (b * (t * j)) elif x <= 1.5e+50: tmp = (t * i) * (j * -y5) else: tmp = y * (b * (x * a)) return tmp
function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) tmp = 0.0 if (x <= -1.2e+107) tmp = Float64(b * Float64(j * Float64(x * Float64(-y0)))); elseif (x <= -8.4e+15) tmp = Float64(x * Float64(j * Float64(i * y1))); elseif (x <= -3.5e-237) tmp = Float64(y4 * Float64(t * Float64(b * j))); elseif (x <= 1.35e-200) tmp = Float64(y4 * Float64(j * Float64(y3 * Float64(-y1)))); elseif (x <= 3.2e-124) tmp = Float64(y4 * Float64(b * Float64(t * j))); elseif (x <= 1.5e+50) tmp = Float64(Float64(t * i) * Float64(j * Float64(-y5))); else tmp = Float64(y * Float64(b * Float64(x * a))); end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) tmp = 0.0; if (x <= -1.2e+107) tmp = b * (j * (x * -y0)); elseif (x <= -8.4e+15) tmp = x * (j * (i * y1)); elseif (x <= -3.5e-237) tmp = y4 * (t * (b * j)); elseif (x <= 1.35e-200) tmp = y4 * (j * (y3 * -y1)); elseif (x <= 3.2e-124) tmp = y4 * (b * (t * j)); elseif (x <= 1.5e+50) tmp = (t * i) * (j * -y5); else tmp = y * (b * (x * a)); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_, j_, k_, y0_, y1_, y2_, y3_, y4_, y5_] := If[LessEqual[x, -1.2e+107], N[(b * N[(j * N[(x * (-y0)), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[x, -8.4e+15], N[(x * N[(j * N[(i * y1), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[x, -3.5e-237], N[(y4 * N[(t * N[(b * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[x, 1.35e-200], N[(y4 * N[(j * N[(y3 * (-y1)), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[x, 3.2e-124], N[(y4 * N[(b * N[(t * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[x, 1.5e+50], N[(N[(t * i), $MachinePrecision] * N[(j * (-y5)), $MachinePrecision]), $MachinePrecision], N[(y * N[(b * N[(x * a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;x \leq -1.2 \cdot 10^{+107}:\\
\;\;\;\;b \cdot \left(j \cdot \left(x \cdot \left(-y0\right)\right)\right)\\
\mathbf{elif}\;x \leq -8.4 \cdot 10^{+15}:\\
\;\;\;\;x \cdot \left(j \cdot \left(i \cdot y1\right)\right)\\
\mathbf{elif}\;x \leq -3.5 \cdot 10^{-237}:\\
\;\;\;\;y4 \cdot \left(t \cdot \left(b \cdot j\right)\right)\\
\mathbf{elif}\;x \leq 1.35 \cdot 10^{-200}:\\
\;\;\;\;y4 \cdot \left(j \cdot \left(y3 \cdot \left(-y1\right)\right)\right)\\
\mathbf{elif}\;x \leq 3.2 \cdot 10^{-124}:\\
\;\;\;\;y4 \cdot \left(b \cdot \left(t \cdot j\right)\right)\\
\mathbf{elif}\;x \leq 1.5 \cdot 10^{+50}:\\
\;\;\;\;\left(t \cdot i\right) \cdot \left(j \cdot \left(-y5\right)\right)\\
\mathbf{else}:\\
\;\;\;\;y \cdot \left(b \cdot \left(x \cdot a\right)\right)\\
\end{array}
\end{array}
if x < -1.2e107Initial program 31.1%
Simplified31.1%
Taylor expanded in x around inf 64.2%
Taylor expanded in j around inf 37.2%
Taylor expanded in y1 around 0 42.0%
mul-1-neg42.0%
*-commutative42.0%
distribute-rgt-neg-in42.0%
*-commutative42.0%
distribute-rgt-neg-in42.0%
Simplified42.0%
Taylor expanded in y0 around 0 44.6%
mul-1-neg44.6%
associate-*r*44.5%
*-commutative44.5%
associate-*r*49.4%
associate-*r*44.6%
*-commutative44.6%
associate-*l*44.5%
distribute-rgt-neg-in44.5%
*-commutative44.5%
associate-*l*47.0%
*-commutative47.0%
distribute-rgt-neg-in47.0%
Simplified47.0%
if -1.2e107 < x < -8.4e15Initial program 29.7%
Simplified29.7%
Taylor expanded in x around inf 41.8%
Taylor expanded in j around inf 48.2%
Taylor expanded in y1 around inf 37.3%
*-commutative37.3%
*-commutative37.3%
associate-*l*48.3%
Simplified48.3%
if -8.4e15 < x < -3.49999999999999983e-237Initial program 32.2%
Simplified32.2%
Taylor expanded in t around inf 42.7%
associate--l+42.7%
mul-1-neg42.7%
Simplified42.7%
Taylor expanded in j around inf 34.9%
Taylor expanded in b around inf 35.3%
if -3.49999999999999983e-237 < x < 1.3500000000000001e-200Initial program 31.6%
Simplified31.6%
Taylor expanded in y4 around inf 37.8%
Taylor expanded in j around inf 41.2%
associate-*r*35.6%
*-commutative35.6%
mul-1-neg35.6%
sub-neg35.6%
*-commutative35.6%
Simplified35.6%
Taylor expanded in b around 0 27.4%
mul-1-neg27.4%
distribute-rgt-neg-in27.4%
associate-*r*30.1%
*-commutative30.1%
Simplified30.1%
if 1.3500000000000001e-200 < x < 3.20000000000000004e-124Initial program 27.3%
Simplified27.3%
Taylor expanded in t around inf 37.3%
associate--l+37.3%
mul-1-neg37.3%
Simplified37.3%
Taylor expanded in j around inf 28.0%
Taylor expanded in y4 around inf 28.2%
*-commutative28.2%
*-commutative28.2%
associate-*l*28.2%
*-commutative28.2%
Simplified28.2%
Taylor expanded in j around 0 28.2%
*-commutative28.2%
associate-*r*37.1%
Simplified37.1%
if 3.20000000000000004e-124 < x < 1.4999999999999999e50Initial program 22.6%
Simplified22.6%
Taylor expanded in t around inf 33.4%
associate--l+33.4%
mul-1-neg33.4%
Simplified33.4%
Taylor expanded in y5 around -inf 23.9%
mul-1-neg23.9%
*-commutative23.9%
Simplified23.9%
Taylor expanded in i around inf 26.9%
associate-*r*31.5%
*-commutative31.5%
Simplified31.5%
if 1.4999999999999999e50 < x Initial program 25.1%
Simplified34.5%
Taylor expanded in a around inf 42.8%
mul-1-neg42.8%
mul-1-neg42.8%
Simplified42.8%
Taylor expanded in b around inf 35.3%
Taylor expanded in y around inf 34.1%
Taylor expanded in a around 0 34.1%
*-commutative34.1%
associate-*l*37.3%
Simplified37.3%
Final simplification37.2%
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5)
:precision binary64
(if (<= x -2.6e+104)
(* y0 (* b (* x (- j))))
(if (<= x -1.6e+20)
(* x (* j (* i y1)))
(if (<= x -2.1e-237)
(* y4 (* t (* b j)))
(if (<= x 6.2e-202)
(* y4 (* j (* y3 (- y1))))
(if (<= x 6.8e-128)
(* y4 (* b (* t j)))
(if (<= x 3.6e+52)
(* (* t i) (* j (- y5)))
(* y (* b (* x a))))))))))
double code(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 tmp;
if (x <= -2.6e+104) {
tmp = y0 * (b * (x * -j));
} else if (x <= -1.6e+20) {
tmp = x * (j * (i * y1));
} else if (x <= -2.1e-237) {
tmp = y4 * (t * (b * j));
} else if (x <= 6.2e-202) {
tmp = y4 * (j * (y3 * -y1));
} else if (x <= 6.8e-128) {
tmp = y4 * (b * (t * j));
} else if (x <= 3.6e+52) {
tmp = (t * i) * (j * -y5);
} else {
tmp = y * (b * (x * a));
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8), intent (in) :: t
real(8), intent (in) :: a
real(8), intent (in) :: b
real(8), intent (in) :: c
real(8), intent (in) :: i
real(8), intent (in) :: j
real(8), intent (in) :: k
real(8), intent (in) :: y0
real(8), intent (in) :: y1
real(8), intent (in) :: y2
real(8), intent (in) :: y3
real(8), intent (in) :: y4
real(8), intent (in) :: y5
real(8) :: tmp
if (x <= (-2.6d+104)) then
tmp = y0 * (b * (x * -j))
else if (x <= (-1.6d+20)) then
tmp = x * (j * (i * y1))
else if (x <= (-2.1d-237)) then
tmp = y4 * (t * (b * j))
else if (x <= 6.2d-202) then
tmp = y4 * (j * (y3 * -y1))
else if (x <= 6.8d-128) then
tmp = y4 * (b * (t * j))
else if (x <= 3.6d+52) then
tmp = (t * i) * (j * -y5)
else
tmp = y * (b * (x * a))
end if
code = tmp
end function
public static double code(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 tmp;
if (x <= -2.6e+104) {
tmp = y0 * (b * (x * -j));
} else if (x <= -1.6e+20) {
tmp = x * (j * (i * y1));
} else if (x <= -2.1e-237) {
tmp = y4 * (t * (b * j));
} else if (x <= 6.2e-202) {
tmp = y4 * (j * (y3 * -y1));
} else if (x <= 6.8e-128) {
tmp = y4 * (b * (t * j));
} else if (x <= 3.6e+52) {
tmp = (t * i) * (j * -y5);
} else {
tmp = y * (b * (x * a));
}
return tmp;
}
def code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5): tmp = 0 if x <= -2.6e+104: tmp = y0 * (b * (x * -j)) elif x <= -1.6e+20: tmp = x * (j * (i * y1)) elif x <= -2.1e-237: tmp = y4 * (t * (b * j)) elif x <= 6.2e-202: tmp = y4 * (j * (y3 * -y1)) elif x <= 6.8e-128: tmp = y4 * (b * (t * j)) elif x <= 3.6e+52: tmp = (t * i) * (j * -y5) else: tmp = y * (b * (x * a)) return tmp
function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) tmp = 0.0 if (x <= -2.6e+104) tmp = Float64(y0 * Float64(b * Float64(x * Float64(-j)))); elseif (x <= -1.6e+20) tmp = Float64(x * Float64(j * Float64(i * y1))); elseif (x <= -2.1e-237) tmp = Float64(y4 * Float64(t * Float64(b * j))); elseif (x <= 6.2e-202) tmp = Float64(y4 * Float64(j * Float64(y3 * Float64(-y1)))); elseif (x <= 6.8e-128) tmp = Float64(y4 * Float64(b * Float64(t * j))); elseif (x <= 3.6e+52) tmp = Float64(Float64(t * i) * Float64(j * Float64(-y5))); else tmp = Float64(y * Float64(b * Float64(x * a))); end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) tmp = 0.0; if (x <= -2.6e+104) tmp = y0 * (b * (x * -j)); elseif (x <= -1.6e+20) tmp = x * (j * (i * y1)); elseif (x <= -2.1e-237) tmp = y4 * (t * (b * j)); elseif (x <= 6.2e-202) tmp = y4 * (j * (y3 * -y1)); elseif (x <= 6.8e-128) tmp = y4 * (b * (t * j)); elseif (x <= 3.6e+52) tmp = (t * i) * (j * -y5); else tmp = y * (b * (x * a)); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_, j_, k_, y0_, y1_, y2_, y3_, y4_, y5_] := If[LessEqual[x, -2.6e+104], N[(y0 * N[(b * N[(x * (-j)), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[x, -1.6e+20], N[(x * N[(j * N[(i * y1), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[x, -2.1e-237], N[(y4 * N[(t * N[(b * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[x, 6.2e-202], N[(y4 * N[(j * N[(y3 * (-y1)), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[x, 6.8e-128], N[(y4 * N[(b * N[(t * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[x, 3.6e+52], N[(N[(t * i), $MachinePrecision] * N[(j * (-y5)), $MachinePrecision]), $MachinePrecision], N[(y * N[(b * N[(x * a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;x \leq -2.6 \cdot 10^{+104}:\\
\;\;\;\;y0 \cdot \left(b \cdot \left(x \cdot \left(-j\right)\right)\right)\\
\mathbf{elif}\;x \leq -1.6 \cdot 10^{+20}:\\
\;\;\;\;x \cdot \left(j \cdot \left(i \cdot y1\right)\right)\\
\mathbf{elif}\;x \leq -2.1 \cdot 10^{-237}:\\
\;\;\;\;y4 \cdot \left(t \cdot \left(b \cdot j\right)\right)\\
\mathbf{elif}\;x \leq 6.2 \cdot 10^{-202}:\\
\;\;\;\;y4 \cdot \left(j \cdot \left(y3 \cdot \left(-y1\right)\right)\right)\\
\mathbf{elif}\;x \leq 6.8 \cdot 10^{-128}:\\
\;\;\;\;y4 \cdot \left(b \cdot \left(t \cdot j\right)\right)\\
\mathbf{elif}\;x \leq 3.6 \cdot 10^{+52}:\\
\;\;\;\;\left(t \cdot i\right) \cdot \left(j \cdot \left(-y5\right)\right)\\
\mathbf{else}:\\
\;\;\;\;y \cdot \left(b \cdot \left(x \cdot a\right)\right)\\
\end{array}
\end{array}
if x < -2.6e104Initial program 31.1%
Simplified31.1%
Taylor expanded in x around inf 64.2%
Taylor expanded in j around inf 37.2%
Taylor expanded in y0 around inf 49.4%
if -2.6e104 < x < -1.6e20Initial program 29.7%
Simplified29.7%
Taylor expanded in x around inf 41.8%
Taylor expanded in j around inf 48.2%
Taylor expanded in y1 around inf 37.3%
*-commutative37.3%
*-commutative37.3%
associate-*l*48.3%
Simplified48.3%
if -1.6e20 < x < -2.1000000000000001e-237Initial program 32.2%
Simplified32.2%
Taylor expanded in t around inf 42.7%
associate--l+42.7%
mul-1-neg42.7%
Simplified42.7%
Taylor expanded in j around inf 34.9%
Taylor expanded in b around inf 35.3%
if -2.1000000000000001e-237 < x < 6.2e-202Initial program 31.6%
Simplified31.6%
Taylor expanded in y4 around inf 37.8%
Taylor expanded in j around inf 41.2%
associate-*r*35.6%
*-commutative35.6%
mul-1-neg35.6%
sub-neg35.6%
*-commutative35.6%
Simplified35.6%
Taylor expanded in b around 0 27.4%
mul-1-neg27.4%
distribute-rgt-neg-in27.4%
associate-*r*30.1%
*-commutative30.1%
Simplified30.1%
if 6.2e-202 < x < 6.7999999999999995e-128Initial program 27.3%
Simplified27.3%
Taylor expanded in t around inf 37.3%
associate--l+37.3%
mul-1-neg37.3%
Simplified37.3%
Taylor expanded in j around inf 28.0%
Taylor expanded in y4 around inf 28.2%
*-commutative28.2%
*-commutative28.2%
associate-*l*28.2%
*-commutative28.2%
Simplified28.2%
Taylor expanded in j around 0 28.2%
*-commutative28.2%
associate-*r*37.1%
Simplified37.1%
if 6.7999999999999995e-128 < x < 3.6e52Initial program 22.6%
Simplified22.6%
Taylor expanded in t around inf 33.4%
associate--l+33.4%
mul-1-neg33.4%
Simplified33.4%
Taylor expanded in y5 around -inf 23.9%
mul-1-neg23.9%
*-commutative23.9%
Simplified23.9%
Taylor expanded in i around inf 26.9%
associate-*r*31.5%
*-commutative31.5%
Simplified31.5%
if 3.6e52 < x Initial program 25.1%
Simplified34.5%
Taylor expanded in a around inf 42.8%
mul-1-neg42.8%
mul-1-neg42.8%
Simplified42.8%
Taylor expanded in b around inf 35.3%
Taylor expanded in y around inf 34.1%
Taylor expanded in a around 0 34.1%
*-commutative34.1%
associate-*l*37.3%
Simplified37.3%
Final simplification37.6%
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5)
:precision binary64
(let* ((t_1 (* a (* b (* x y)))))
(if (<= x -2.3e+127)
t_1
(if (<= x -1.12e+24)
(* x (* j (* i y1)))
(if (<= x -6e-62)
t_1
(if (<= x 2.4e+47)
(* y4 (* t (* b j)))
(if (<= x 5.2e+121)
t_1
(if (<= x 5.5e+152)
(* i (* y1 (* x j)))
(* y (* b (* x a)))))))))))
double code(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 t_1 = a * (b * (x * y));
double tmp;
if (x <= -2.3e+127) {
tmp = t_1;
} else if (x <= -1.12e+24) {
tmp = x * (j * (i * y1));
} else if (x <= -6e-62) {
tmp = t_1;
} else if (x <= 2.4e+47) {
tmp = y4 * (t * (b * j));
} else if (x <= 5.2e+121) {
tmp = t_1;
} else if (x <= 5.5e+152) {
tmp = i * (y1 * (x * j));
} else {
tmp = y * (b * (x * a));
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8), intent (in) :: t
real(8), intent (in) :: a
real(8), intent (in) :: b
real(8), intent (in) :: c
real(8), intent (in) :: i
real(8), intent (in) :: j
real(8), intent (in) :: k
real(8), intent (in) :: y0
real(8), intent (in) :: y1
real(8), intent (in) :: y2
real(8), intent (in) :: y3
real(8), intent (in) :: y4
real(8), intent (in) :: y5
real(8) :: t_1
real(8) :: tmp
t_1 = a * (b * (x * y))
if (x <= (-2.3d+127)) then
tmp = t_1
else if (x <= (-1.12d+24)) then
tmp = x * (j * (i * y1))
else if (x <= (-6d-62)) then
tmp = t_1
else if (x <= 2.4d+47) then
tmp = y4 * (t * (b * j))
else if (x <= 5.2d+121) then
tmp = t_1
else if (x <= 5.5d+152) then
tmp = i * (y1 * (x * j))
else
tmp = y * (b * (x * a))
end if
code = tmp
end function
public static double code(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 t_1 = a * (b * (x * y));
double tmp;
if (x <= -2.3e+127) {
tmp = t_1;
} else if (x <= -1.12e+24) {
tmp = x * (j * (i * y1));
} else if (x <= -6e-62) {
tmp = t_1;
} else if (x <= 2.4e+47) {
tmp = y4 * (t * (b * j));
} else if (x <= 5.2e+121) {
tmp = t_1;
} else if (x <= 5.5e+152) {
tmp = i * (y1 * (x * j));
} else {
tmp = y * (b * (x * a));
}
return tmp;
}
def code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5): t_1 = a * (b * (x * y)) tmp = 0 if x <= -2.3e+127: tmp = t_1 elif x <= -1.12e+24: tmp = x * (j * (i * y1)) elif x <= -6e-62: tmp = t_1 elif x <= 2.4e+47: tmp = y4 * (t * (b * j)) elif x <= 5.2e+121: tmp = t_1 elif x <= 5.5e+152: tmp = i * (y1 * (x * j)) else: tmp = y * (b * (x * a)) return tmp
function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = Float64(a * Float64(b * Float64(x * y))) tmp = 0.0 if (x <= -2.3e+127) tmp = t_1; elseif (x <= -1.12e+24) tmp = Float64(x * Float64(j * Float64(i * y1))); elseif (x <= -6e-62) tmp = t_1; elseif (x <= 2.4e+47) tmp = Float64(y4 * Float64(t * Float64(b * j))); elseif (x <= 5.2e+121) tmp = t_1; elseif (x <= 5.5e+152) tmp = Float64(i * Float64(y1 * Float64(x * j))); else tmp = Float64(y * Float64(b * Float64(x * a))); end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = a * (b * (x * y)); tmp = 0.0; if (x <= -2.3e+127) tmp = t_1; elseif (x <= -1.12e+24) tmp = x * (j * (i * y1)); elseif (x <= -6e-62) tmp = t_1; elseif (x <= 2.4e+47) tmp = y4 * (t * (b * j)); elseif (x <= 5.2e+121) tmp = t_1; elseif (x <= 5.5e+152) tmp = i * (y1 * (x * j)); else tmp = y * (b * (x * a)); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_, j_, k_, y0_, y1_, y2_, y3_, y4_, y5_] := Block[{t$95$1 = N[(a * N[(b * N[(x * y), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[x, -2.3e+127], t$95$1, If[LessEqual[x, -1.12e+24], N[(x * N[(j * N[(i * y1), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[x, -6e-62], t$95$1, If[LessEqual[x, 2.4e+47], N[(y4 * N[(t * N[(b * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[x, 5.2e+121], t$95$1, If[LessEqual[x, 5.5e+152], N[(i * N[(y1 * N[(x * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(y * N[(b * N[(x * a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := a \cdot \left(b \cdot \left(x \cdot y\right)\right)\\
\mathbf{if}\;x \leq -2.3 \cdot 10^{+127}:\\
\;\;\;\;t_1\\
\mathbf{elif}\;x \leq -1.12 \cdot 10^{+24}:\\
\;\;\;\;x \cdot \left(j \cdot \left(i \cdot y1\right)\right)\\
\mathbf{elif}\;x \leq -6 \cdot 10^{-62}:\\
\;\;\;\;t_1\\
\mathbf{elif}\;x \leq 2.4 \cdot 10^{+47}:\\
\;\;\;\;y4 \cdot \left(t \cdot \left(b \cdot j\right)\right)\\
\mathbf{elif}\;x \leq 5.2 \cdot 10^{+121}:\\
\;\;\;\;t_1\\
\mathbf{elif}\;x \leq 5.5 \cdot 10^{+152}:\\
\;\;\;\;i \cdot \left(y1 \cdot \left(x \cdot j\right)\right)\\
\mathbf{else}:\\
\;\;\;\;y \cdot \left(b \cdot \left(x \cdot a\right)\right)\\
\end{array}
\end{array}
if x < -2.3000000000000002e127 or -1.12e24 < x < -6.0000000000000002e-62 or 2.40000000000000019e47 < x < 5.1999999999999998e121Initial program 30.8%
Simplified38.8%
Taylor expanded in a around inf 48.3%
mul-1-neg48.3%
mul-1-neg48.3%
Simplified48.3%
Taylor expanded in b around inf 47.5%
Taylor expanded in y around inf 38.4%
if -2.3000000000000002e127 < x < -1.12e24Initial program 27.5%
Simplified27.5%
Taylor expanded in x around inf 45.9%
Taylor expanded in j around inf 42.0%
Taylor expanded in y1 around inf 33.4%
*-commutative33.4%
*-commutative33.4%
associate-*l*41.9%
Simplified41.9%
if -6.0000000000000002e-62 < x < 2.40000000000000019e47Initial program 28.5%
Simplified28.5%
Taylor expanded in t around inf 38.2%
associate--l+38.2%
mul-1-neg38.2%
Simplified38.2%
Taylor expanded in j around inf 28.6%
Taylor expanded in b around inf 26.7%
if 5.1999999999999998e121 < x < 5.4999999999999999e152Initial program 42.9%
Simplified42.9%
Taylor expanded in x around inf 44.5%
Taylor expanded in j around inf 44.4%
Taylor expanded in y1 around inf 58.3%
if 5.4999999999999999e152 < x Initial program 20.7%
Simplified25.8%
Taylor expanded in a around inf 33.9%
mul-1-neg33.9%
mul-1-neg33.9%
Simplified33.9%
Taylor expanded in b around inf 34.2%
Taylor expanded in y around inf 37.2%
Taylor expanded in a around 0 42.1%
*-commutative42.1%
associate-*l*49.8%
Simplified49.8%
Final simplification35.8%
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5)
:precision binary64
(let* ((t_1 (* a (* b (* x y)))))
(if (<= x -2e+127)
t_1
(if (<= x -2.55e+20)
(* x (* j (* i y1)))
(if (<= x -4.5e-62)
(* (* x b) (* y a))
(if (<= x 2.2e+47)
(* y4 (* t (* b j)))
(if (<= x 7.8e+127)
t_1
(if (<= x 4.2e+153)
(* i (* y1 (* x j)))
(* y (* b (* x a)))))))))))
double code(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 t_1 = a * (b * (x * y));
double tmp;
if (x <= -2e+127) {
tmp = t_1;
} else if (x <= -2.55e+20) {
tmp = x * (j * (i * y1));
} else if (x <= -4.5e-62) {
tmp = (x * b) * (y * a);
} else if (x <= 2.2e+47) {
tmp = y4 * (t * (b * j));
} else if (x <= 7.8e+127) {
tmp = t_1;
} else if (x <= 4.2e+153) {
tmp = i * (y1 * (x * j));
} else {
tmp = y * (b * (x * a));
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8), intent (in) :: t
real(8), intent (in) :: a
real(8), intent (in) :: b
real(8), intent (in) :: c
real(8), intent (in) :: i
real(8), intent (in) :: j
real(8), intent (in) :: k
real(8), intent (in) :: y0
real(8), intent (in) :: y1
real(8), intent (in) :: y2
real(8), intent (in) :: y3
real(8), intent (in) :: y4
real(8), intent (in) :: y5
real(8) :: t_1
real(8) :: tmp
t_1 = a * (b * (x * y))
if (x <= (-2d+127)) then
tmp = t_1
else if (x <= (-2.55d+20)) then
tmp = x * (j * (i * y1))
else if (x <= (-4.5d-62)) then
tmp = (x * b) * (y * a)
else if (x <= 2.2d+47) then
tmp = y4 * (t * (b * j))
else if (x <= 7.8d+127) then
tmp = t_1
else if (x <= 4.2d+153) then
tmp = i * (y1 * (x * j))
else
tmp = y * (b * (x * a))
end if
code = tmp
end function
public static double code(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 t_1 = a * (b * (x * y));
double tmp;
if (x <= -2e+127) {
tmp = t_1;
} else if (x <= -2.55e+20) {
tmp = x * (j * (i * y1));
} else if (x <= -4.5e-62) {
tmp = (x * b) * (y * a);
} else if (x <= 2.2e+47) {
tmp = y4 * (t * (b * j));
} else if (x <= 7.8e+127) {
tmp = t_1;
} else if (x <= 4.2e+153) {
tmp = i * (y1 * (x * j));
} else {
tmp = y * (b * (x * a));
}
return tmp;
}
def code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5): t_1 = a * (b * (x * y)) tmp = 0 if x <= -2e+127: tmp = t_1 elif x <= -2.55e+20: tmp = x * (j * (i * y1)) elif x <= -4.5e-62: tmp = (x * b) * (y * a) elif x <= 2.2e+47: tmp = y4 * (t * (b * j)) elif x <= 7.8e+127: tmp = t_1 elif x <= 4.2e+153: tmp = i * (y1 * (x * j)) else: tmp = y * (b * (x * a)) return tmp
function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = Float64(a * Float64(b * Float64(x * y))) tmp = 0.0 if (x <= -2e+127) tmp = t_1; elseif (x <= -2.55e+20) tmp = Float64(x * Float64(j * Float64(i * y1))); elseif (x <= -4.5e-62) tmp = Float64(Float64(x * b) * Float64(y * a)); elseif (x <= 2.2e+47) tmp = Float64(y4 * Float64(t * Float64(b * j))); elseif (x <= 7.8e+127) tmp = t_1; elseif (x <= 4.2e+153) tmp = Float64(i * Float64(y1 * Float64(x * j))); else tmp = Float64(y * Float64(b * Float64(x * a))); end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = a * (b * (x * y)); tmp = 0.0; if (x <= -2e+127) tmp = t_1; elseif (x <= -2.55e+20) tmp = x * (j * (i * y1)); elseif (x <= -4.5e-62) tmp = (x * b) * (y * a); elseif (x <= 2.2e+47) tmp = y4 * (t * (b * j)); elseif (x <= 7.8e+127) tmp = t_1; elseif (x <= 4.2e+153) tmp = i * (y1 * (x * j)); else tmp = y * (b * (x * a)); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_, j_, k_, y0_, y1_, y2_, y3_, y4_, y5_] := Block[{t$95$1 = N[(a * N[(b * N[(x * y), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[x, -2e+127], t$95$1, If[LessEqual[x, -2.55e+20], N[(x * N[(j * N[(i * y1), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[x, -4.5e-62], N[(N[(x * b), $MachinePrecision] * N[(y * a), $MachinePrecision]), $MachinePrecision], If[LessEqual[x, 2.2e+47], N[(y4 * N[(t * N[(b * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[x, 7.8e+127], t$95$1, If[LessEqual[x, 4.2e+153], N[(i * N[(y1 * N[(x * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(y * N[(b * N[(x * a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := a \cdot \left(b \cdot \left(x \cdot y\right)\right)\\
\mathbf{if}\;x \leq -2 \cdot 10^{+127}:\\
\;\;\;\;t_1\\
\mathbf{elif}\;x \leq -2.55 \cdot 10^{+20}:\\
\;\;\;\;x \cdot \left(j \cdot \left(i \cdot y1\right)\right)\\
\mathbf{elif}\;x \leq -4.5 \cdot 10^{-62}:\\
\;\;\;\;\left(x \cdot b\right) \cdot \left(y \cdot a\right)\\
\mathbf{elif}\;x \leq 2.2 \cdot 10^{+47}:\\
\;\;\;\;y4 \cdot \left(t \cdot \left(b \cdot j\right)\right)\\
\mathbf{elif}\;x \leq 7.8 \cdot 10^{+127}:\\
\;\;\;\;t_1\\
\mathbf{elif}\;x \leq 4.2 \cdot 10^{+153}:\\
\;\;\;\;i \cdot \left(y1 \cdot \left(x \cdot j\right)\right)\\
\mathbf{else}:\\
\;\;\;\;y \cdot \left(b \cdot \left(x \cdot a\right)\right)\\
\end{array}
\end{array}
if x < -1.99999999999999991e127 or 2.1999999999999999e47 < x < 7.79999999999999962e127Initial program 30.4%
Simplified39.9%
Taylor expanded in a around inf 49.4%
mul-1-neg49.4%
mul-1-neg49.4%
Simplified49.4%
Taylor expanded in b around inf 46.2%
Taylor expanded in y around inf 37.0%
if -1.99999999999999991e127 < x < -2.55e20Initial program 27.5%
Simplified27.5%
Taylor expanded in x around inf 45.9%
Taylor expanded in j around inf 42.0%
Taylor expanded in y1 around inf 33.4%
*-commutative33.4%
*-commutative33.4%
associate-*l*41.9%
Simplified41.9%
if -2.55e20 < x < -4.50000000000000018e-62Initial program 31.8%
Simplified36.4%
Taylor expanded in a around inf 45.6%
mul-1-neg45.6%
mul-1-neg45.6%
Simplified45.6%
Taylor expanded in b around inf 50.6%
Taylor expanded in y around inf 41.7%
Taylor expanded in a around 0 37.4%
associate-*r*41.7%
Simplified41.7%
if -4.50000000000000018e-62 < x < 2.1999999999999999e47Initial program 28.5%
Simplified28.5%
Taylor expanded in t around inf 38.2%
associate--l+38.2%
mul-1-neg38.2%
Simplified38.2%
Taylor expanded in j around inf 28.6%
Taylor expanded in b around inf 26.7%
if 7.79999999999999962e127 < x < 4.20000000000000033e153Initial program 42.9%
Simplified42.9%
Taylor expanded in x around inf 44.5%
Taylor expanded in j around inf 44.4%
Taylor expanded in y1 around inf 58.3%
if 4.20000000000000033e153 < x Initial program 20.7%
Simplified25.8%
Taylor expanded in a around inf 33.9%
mul-1-neg33.9%
mul-1-neg33.9%
Simplified33.9%
Taylor expanded in b around inf 34.2%
Taylor expanded in y around inf 37.2%
Taylor expanded in a around 0 42.1%
*-commutative42.1%
associate-*l*49.8%
Simplified49.8%
Final simplification35.8%
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5)
:precision binary64
(if (<= x -2.6e+104)
(* y0 (* j (* x (- b))))
(if (<= x -3.6e+15)
(* x (* j (* i y1)))
(if (<= x 1.7e+47)
(* y4 (* t (* b j)))
(if (<= x 6.2e+125)
(* a (* b (* x y)))
(if (<= x 3.15e+155) (* i (* y1 (* x j))) (* y (* b (* x a)))))))))
double code(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 tmp;
if (x <= -2.6e+104) {
tmp = y0 * (j * (x * -b));
} else if (x <= -3.6e+15) {
tmp = x * (j * (i * y1));
} else if (x <= 1.7e+47) {
tmp = y4 * (t * (b * j));
} else if (x <= 6.2e+125) {
tmp = a * (b * (x * y));
} else if (x <= 3.15e+155) {
tmp = i * (y1 * (x * j));
} else {
tmp = y * (b * (x * a));
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8), intent (in) :: t
real(8), intent (in) :: a
real(8), intent (in) :: b
real(8), intent (in) :: c
real(8), intent (in) :: i
real(8), intent (in) :: j
real(8), intent (in) :: k
real(8), intent (in) :: y0
real(8), intent (in) :: y1
real(8), intent (in) :: y2
real(8), intent (in) :: y3
real(8), intent (in) :: y4
real(8), intent (in) :: y5
real(8) :: tmp
if (x <= (-2.6d+104)) then
tmp = y0 * (j * (x * -b))
else if (x <= (-3.6d+15)) then
tmp = x * (j * (i * y1))
else if (x <= 1.7d+47) then
tmp = y4 * (t * (b * j))
else if (x <= 6.2d+125) then
tmp = a * (b * (x * y))
else if (x <= 3.15d+155) then
tmp = i * (y1 * (x * j))
else
tmp = y * (b * (x * a))
end if
code = tmp
end function
public static double code(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 tmp;
if (x <= -2.6e+104) {
tmp = y0 * (j * (x * -b));
} else if (x <= -3.6e+15) {
tmp = x * (j * (i * y1));
} else if (x <= 1.7e+47) {
tmp = y4 * (t * (b * j));
} else if (x <= 6.2e+125) {
tmp = a * (b * (x * y));
} else if (x <= 3.15e+155) {
tmp = i * (y1 * (x * j));
} else {
tmp = y * (b * (x * a));
}
return tmp;
}
def code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5): tmp = 0 if x <= -2.6e+104: tmp = y0 * (j * (x * -b)) elif x <= -3.6e+15: tmp = x * (j * (i * y1)) elif x <= 1.7e+47: tmp = y4 * (t * (b * j)) elif x <= 6.2e+125: tmp = a * (b * (x * y)) elif x <= 3.15e+155: tmp = i * (y1 * (x * j)) else: tmp = y * (b * (x * a)) return tmp
function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) tmp = 0.0 if (x <= -2.6e+104) tmp = Float64(y0 * Float64(j * Float64(x * Float64(-b)))); elseif (x <= -3.6e+15) tmp = Float64(x * Float64(j * Float64(i * y1))); elseif (x <= 1.7e+47) tmp = Float64(y4 * Float64(t * Float64(b * j))); elseif (x <= 6.2e+125) tmp = Float64(a * Float64(b * Float64(x * y))); elseif (x <= 3.15e+155) tmp = Float64(i * Float64(y1 * Float64(x * j))); else tmp = Float64(y * Float64(b * Float64(x * a))); end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) tmp = 0.0; if (x <= -2.6e+104) tmp = y0 * (j * (x * -b)); elseif (x <= -3.6e+15) tmp = x * (j * (i * y1)); elseif (x <= 1.7e+47) tmp = y4 * (t * (b * j)); elseif (x <= 6.2e+125) tmp = a * (b * (x * y)); elseif (x <= 3.15e+155) tmp = i * (y1 * (x * j)); else tmp = y * (b * (x * a)); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_, j_, k_, y0_, y1_, y2_, y3_, y4_, y5_] := If[LessEqual[x, -2.6e+104], N[(y0 * N[(j * N[(x * (-b)), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[x, -3.6e+15], N[(x * N[(j * N[(i * y1), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[x, 1.7e+47], N[(y4 * N[(t * N[(b * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[x, 6.2e+125], N[(a * N[(b * N[(x * y), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[x, 3.15e+155], N[(i * N[(y1 * N[(x * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(y * N[(b * N[(x * a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;x \leq -2.6 \cdot 10^{+104}:\\
\;\;\;\;y0 \cdot \left(j \cdot \left(x \cdot \left(-b\right)\right)\right)\\
\mathbf{elif}\;x \leq -3.6 \cdot 10^{+15}:\\
\;\;\;\;x \cdot \left(j \cdot \left(i \cdot y1\right)\right)\\
\mathbf{elif}\;x \leq 1.7 \cdot 10^{+47}:\\
\;\;\;\;y4 \cdot \left(t \cdot \left(b \cdot j\right)\right)\\
\mathbf{elif}\;x \leq 6.2 \cdot 10^{+125}:\\
\;\;\;\;a \cdot \left(b \cdot \left(x \cdot y\right)\right)\\
\mathbf{elif}\;x \leq 3.15 \cdot 10^{+155}:\\
\;\;\;\;i \cdot \left(y1 \cdot \left(x \cdot j\right)\right)\\
\mathbf{else}:\\
\;\;\;\;y \cdot \left(b \cdot \left(x \cdot a\right)\right)\\
\end{array}
\end{array}
if x < -2.6e104Initial program 31.1%
Simplified31.1%
Taylor expanded in x around inf 64.2%
Taylor expanded in j around inf 37.2%
Taylor expanded in y1 around 0 44.6%
mul-1-neg44.6%
Simplified44.6%
if -2.6e104 < x < -3.6e15Initial program 29.7%
Simplified29.7%
Taylor expanded in x around inf 41.8%
Taylor expanded in j around inf 48.2%
Taylor expanded in y1 around inf 37.3%
*-commutative37.3%
*-commutative37.3%
associate-*l*48.3%
Simplified48.3%
if -3.6e15 < x < 1.6999999999999999e47Initial program 29.0%
Simplified29.0%
Taylor expanded in t around inf 38.7%
associate--l+38.7%
mul-1-neg38.7%
Simplified38.7%
Taylor expanded in j around inf 28.6%
Taylor expanded in b around inf 26.3%
if 1.6999999999999999e47 < x < 6.2e125Initial program 26.2%
Simplified42.0%
Taylor expanded in a around inf 63.2%
mul-1-neg63.2%
mul-1-neg63.2%
Simplified63.2%
Taylor expanded in b around inf 42.9%
Taylor expanded in y around inf 32.7%
if 6.2e125 < x < 3.15e155Initial program 42.9%
Simplified42.9%
Taylor expanded in x around inf 44.5%
Taylor expanded in j around inf 44.4%
Taylor expanded in y1 around inf 58.3%
if 3.15e155 < x Initial program 20.7%
Simplified25.8%
Taylor expanded in a around inf 33.9%
mul-1-neg33.9%
mul-1-neg33.9%
Simplified33.9%
Taylor expanded in b around inf 34.2%
Taylor expanded in y around inf 37.2%
Taylor expanded in a around 0 42.1%
*-commutative42.1%
associate-*l*49.8%
Simplified49.8%
Final simplification35.5%
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5)
:precision binary64
(if (<= y1 -8e+128)
(* y4 (* j (* y3 (- y1))))
(if (<= y1 -1.85e-22)
(* y4 (* j (* t b)))
(if (<= y1 2.6e+189)
(* a (* b (- (* x y) (* z t))))
(* x (* j (* i y1)))))))
double code(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 tmp;
if (y1 <= -8e+128) {
tmp = y4 * (j * (y3 * -y1));
} else if (y1 <= -1.85e-22) {
tmp = y4 * (j * (t * b));
} else if (y1 <= 2.6e+189) {
tmp = a * (b * ((x * y) - (z * t)));
} else {
tmp = x * (j * (i * y1));
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8), intent (in) :: t
real(8), intent (in) :: a
real(8), intent (in) :: b
real(8), intent (in) :: c
real(8), intent (in) :: i
real(8), intent (in) :: j
real(8), intent (in) :: k
real(8), intent (in) :: y0
real(8), intent (in) :: y1
real(8), intent (in) :: y2
real(8), intent (in) :: y3
real(8), intent (in) :: y4
real(8), intent (in) :: y5
real(8) :: tmp
if (y1 <= (-8d+128)) then
tmp = y4 * (j * (y3 * -y1))
else if (y1 <= (-1.85d-22)) then
tmp = y4 * (j * (t * b))
else if (y1 <= 2.6d+189) then
tmp = a * (b * ((x * y) - (z * t)))
else
tmp = x * (j * (i * y1))
end if
code = tmp
end function
public static double code(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 tmp;
if (y1 <= -8e+128) {
tmp = y4 * (j * (y3 * -y1));
} else if (y1 <= -1.85e-22) {
tmp = y4 * (j * (t * b));
} else if (y1 <= 2.6e+189) {
tmp = a * (b * ((x * y) - (z * t)));
} else {
tmp = x * (j * (i * y1));
}
return tmp;
}
def code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5): tmp = 0 if y1 <= -8e+128: tmp = y4 * (j * (y3 * -y1)) elif y1 <= -1.85e-22: tmp = y4 * (j * (t * b)) elif y1 <= 2.6e+189: tmp = a * (b * ((x * y) - (z * t))) else: tmp = x * (j * (i * y1)) return tmp
function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) tmp = 0.0 if (y1 <= -8e+128) tmp = Float64(y4 * Float64(j * Float64(y3 * Float64(-y1)))); elseif (y1 <= -1.85e-22) tmp = Float64(y4 * Float64(j * Float64(t * b))); elseif (y1 <= 2.6e+189) tmp = Float64(a * Float64(b * Float64(Float64(x * y) - Float64(z * t)))); else tmp = Float64(x * Float64(j * Float64(i * y1))); end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) tmp = 0.0; if (y1 <= -8e+128) tmp = y4 * (j * (y3 * -y1)); elseif (y1 <= -1.85e-22) tmp = y4 * (j * (t * b)); elseif (y1 <= 2.6e+189) tmp = a * (b * ((x * y) - (z * t))); else tmp = x * (j * (i * y1)); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_, j_, k_, y0_, y1_, y2_, y3_, y4_, y5_] := If[LessEqual[y1, -8e+128], N[(y4 * N[(j * N[(y3 * (-y1)), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y1, -1.85e-22], N[(y4 * N[(j * N[(t * b), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y1, 2.6e+189], N[(a * N[(b * N[(N[(x * y), $MachinePrecision] - N[(z * t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(x * N[(j * N[(i * y1), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;y1 \leq -8 \cdot 10^{+128}:\\
\;\;\;\;y4 \cdot \left(j \cdot \left(y3 \cdot \left(-y1\right)\right)\right)\\
\mathbf{elif}\;y1 \leq -1.85 \cdot 10^{-22}:\\
\;\;\;\;y4 \cdot \left(j \cdot \left(t \cdot b\right)\right)\\
\mathbf{elif}\;y1 \leq 2.6 \cdot 10^{+189}:\\
\;\;\;\;a \cdot \left(b \cdot \left(x \cdot y - z \cdot t\right)\right)\\
\mathbf{else}:\\
\;\;\;\;x \cdot \left(j \cdot \left(i \cdot y1\right)\right)\\
\end{array}
\end{array}
if y1 < -8.0000000000000006e128Initial program 21.9%
Simplified21.9%
Taylor expanded in y4 around inf 46.6%
Taylor expanded in j around inf 39.8%
associate-*r*30.5%
*-commutative30.5%
mul-1-neg30.5%
sub-neg30.5%
*-commutative30.5%
Simplified30.5%
Taylor expanded in b around 0 40.0%
mul-1-neg40.0%
distribute-rgt-neg-in40.0%
associate-*r*40.0%
*-commutative40.0%
Simplified40.0%
if -8.0000000000000006e128 < y1 < -1.85e-22Initial program 21.7%
Simplified21.7%
Taylor expanded in t around inf 34.1%
associate--l+34.1%
mul-1-neg34.1%
Simplified34.1%
Taylor expanded in j around inf 40.8%
Taylor expanded in y4 around inf 37.5%
associate-*r*40.4%
Simplified40.4%
if -1.85e-22 < y1 < 2.59999999999999981e189Initial program 32.7%
Simplified37.0%
Taylor expanded in a around inf 41.4%
mul-1-neg41.4%
mul-1-neg41.4%
Simplified41.4%
Taylor expanded in b around inf 37.4%
if 2.59999999999999981e189 < y1 Initial program 18.2%
Simplified18.2%
Taylor expanded in x around inf 50.5%
Taylor expanded in j around inf 55.3%
Taylor expanded in y1 around inf 47.3%
*-commutative47.3%
*-commutative47.3%
associate-*l*55.7%
Simplified55.7%
Final simplification39.8%
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5)
:precision binary64
(if (<= y1 -1.08e+273)
(* y4 (* j (* y3 (- y1))))
(if (<= y1 -4.7e-76)
(* b (* y0 (- (* z k) (* x j))))
(if (<= y1 1.45e+193)
(* a (* b (- (* x y) (* z t))))
(* x (* j (* i y1)))))))
double code(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 tmp;
if (y1 <= -1.08e+273) {
tmp = y4 * (j * (y3 * -y1));
} else if (y1 <= -4.7e-76) {
tmp = b * (y0 * ((z * k) - (x * j)));
} else if (y1 <= 1.45e+193) {
tmp = a * (b * ((x * y) - (z * t)));
} else {
tmp = x * (j * (i * y1));
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8), intent (in) :: t
real(8), intent (in) :: a
real(8), intent (in) :: b
real(8), intent (in) :: c
real(8), intent (in) :: i
real(8), intent (in) :: j
real(8), intent (in) :: k
real(8), intent (in) :: y0
real(8), intent (in) :: y1
real(8), intent (in) :: y2
real(8), intent (in) :: y3
real(8), intent (in) :: y4
real(8), intent (in) :: y5
real(8) :: tmp
if (y1 <= (-1.08d+273)) then
tmp = y4 * (j * (y3 * -y1))
else if (y1 <= (-4.7d-76)) then
tmp = b * (y0 * ((z * k) - (x * j)))
else if (y1 <= 1.45d+193) then
tmp = a * (b * ((x * y) - (z * t)))
else
tmp = x * (j * (i * y1))
end if
code = tmp
end function
public static double code(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 tmp;
if (y1 <= -1.08e+273) {
tmp = y4 * (j * (y3 * -y1));
} else if (y1 <= -4.7e-76) {
tmp = b * (y0 * ((z * k) - (x * j)));
} else if (y1 <= 1.45e+193) {
tmp = a * (b * ((x * y) - (z * t)));
} else {
tmp = x * (j * (i * y1));
}
return tmp;
}
def code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5): tmp = 0 if y1 <= -1.08e+273: tmp = y4 * (j * (y3 * -y1)) elif y1 <= -4.7e-76: tmp = b * (y0 * ((z * k) - (x * j))) elif y1 <= 1.45e+193: tmp = a * (b * ((x * y) - (z * t))) else: tmp = x * (j * (i * y1)) return tmp
function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) tmp = 0.0 if (y1 <= -1.08e+273) tmp = Float64(y4 * Float64(j * Float64(y3 * Float64(-y1)))); elseif (y1 <= -4.7e-76) tmp = Float64(b * Float64(y0 * Float64(Float64(z * k) - Float64(x * j)))); elseif (y1 <= 1.45e+193) tmp = Float64(a * Float64(b * Float64(Float64(x * y) - Float64(z * t)))); else tmp = Float64(x * Float64(j * Float64(i * y1))); end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) tmp = 0.0; if (y1 <= -1.08e+273) tmp = y4 * (j * (y3 * -y1)); elseif (y1 <= -4.7e-76) tmp = b * (y0 * ((z * k) - (x * j))); elseif (y1 <= 1.45e+193) tmp = a * (b * ((x * y) - (z * t))); else tmp = x * (j * (i * y1)); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_, j_, k_, y0_, y1_, y2_, y3_, y4_, y5_] := If[LessEqual[y1, -1.08e+273], N[(y4 * N[(j * N[(y3 * (-y1)), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y1, -4.7e-76], N[(b * N[(y0 * N[(N[(z * k), $MachinePrecision] - N[(x * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y1, 1.45e+193], N[(a * N[(b * N[(N[(x * y), $MachinePrecision] - N[(z * t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(x * N[(j * N[(i * y1), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;y1 \leq -1.08 \cdot 10^{+273}:\\
\;\;\;\;y4 \cdot \left(j \cdot \left(y3 \cdot \left(-y1\right)\right)\right)\\
\mathbf{elif}\;y1 \leq -4.7 \cdot 10^{-76}:\\
\;\;\;\;b \cdot \left(y0 \cdot \left(z \cdot k - x \cdot j\right)\right)\\
\mathbf{elif}\;y1 \leq 1.45 \cdot 10^{+193}:\\
\;\;\;\;a \cdot \left(b \cdot \left(x \cdot y - z \cdot t\right)\right)\\
\mathbf{else}:\\
\;\;\;\;x \cdot \left(j \cdot \left(i \cdot y1\right)\right)\\
\end{array}
\end{array}
if y1 < -1.08000000000000005e273Initial program 16.5%
Simplified16.5%
Taylor expanded in y4 around inf 50.6%
Taylor expanded in j around inf 67.1%
associate-*r*43.0%
*-commutative43.0%
mul-1-neg43.0%
sub-neg43.0%
*-commutative43.0%
Simplified43.0%
Taylor expanded in b around 0 67.0%
mul-1-neg67.0%
distribute-rgt-neg-in67.0%
associate-*r*67.0%
*-commutative67.0%
Simplified67.0%
if -1.08000000000000005e273 < y1 < -4.7000000000000002e-76Initial program 20.6%
Simplified20.6%
Taylor expanded in b around inf 39.7%
Taylor expanded in y0 around inf 31.1%
*-commutative31.1%
*-commutative31.1%
associate-*l*37.6%
Simplified37.6%
if -4.7000000000000002e-76 < y1 < 1.45000000000000007e193Initial program 34.6%
Simplified39.3%
Taylor expanded in a around inf 41.3%
mul-1-neg41.3%
mul-1-neg41.3%
Simplified41.3%
Taylor expanded in b around inf 38.3%
if 1.45000000000000007e193 < y1 Initial program 18.2%
Simplified18.2%
Taylor expanded in x around inf 50.5%
Taylor expanded in j around inf 55.3%
Taylor expanded in y1 around inf 47.3%
*-commutative47.3%
*-commutative47.3%
associate-*l*55.7%
Simplified55.7%
Final simplification40.9%
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5)
:precision binary64
(if (<= x -2.8e+104)
(* y0 (* j (* x (- b))))
(if (<= x -9.8e+25)
(* x (* j (* i y1)))
(if (<= x 1.5e-126)
(* y4 (* t (* b j)))
(if (<= x 3e+47) (* (* t i) (* j (- y5))) (* y (* b (* x a))))))))
double code(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 tmp;
if (x <= -2.8e+104) {
tmp = y0 * (j * (x * -b));
} else if (x <= -9.8e+25) {
tmp = x * (j * (i * y1));
} else if (x <= 1.5e-126) {
tmp = y4 * (t * (b * j));
} else if (x <= 3e+47) {
tmp = (t * i) * (j * -y5);
} else {
tmp = y * (b * (x * a));
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8), intent (in) :: t
real(8), intent (in) :: a
real(8), intent (in) :: b
real(8), intent (in) :: c
real(8), intent (in) :: i
real(8), intent (in) :: j
real(8), intent (in) :: k
real(8), intent (in) :: y0
real(8), intent (in) :: y1
real(8), intent (in) :: y2
real(8), intent (in) :: y3
real(8), intent (in) :: y4
real(8), intent (in) :: y5
real(8) :: tmp
if (x <= (-2.8d+104)) then
tmp = y0 * (j * (x * -b))
else if (x <= (-9.8d+25)) then
tmp = x * (j * (i * y1))
else if (x <= 1.5d-126) then
tmp = y4 * (t * (b * j))
else if (x <= 3d+47) then
tmp = (t * i) * (j * -y5)
else
tmp = y * (b * (x * a))
end if
code = tmp
end function
public static double code(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 tmp;
if (x <= -2.8e+104) {
tmp = y0 * (j * (x * -b));
} else if (x <= -9.8e+25) {
tmp = x * (j * (i * y1));
} else if (x <= 1.5e-126) {
tmp = y4 * (t * (b * j));
} else if (x <= 3e+47) {
tmp = (t * i) * (j * -y5);
} else {
tmp = y * (b * (x * a));
}
return tmp;
}
def code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5): tmp = 0 if x <= -2.8e+104: tmp = y0 * (j * (x * -b)) elif x <= -9.8e+25: tmp = x * (j * (i * y1)) elif x <= 1.5e-126: tmp = y4 * (t * (b * j)) elif x <= 3e+47: tmp = (t * i) * (j * -y5) else: tmp = y * (b * (x * a)) return tmp
function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) tmp = 0.0 if (x <= -2.8e+104) tmp = Float64(y0 * Float64(j * Float64(x * Float64(-b)))); elseif (x <= -9.8e+25) tmp = Float64(x * Float64(j * Float64(i * y1))); elseif (x <= 1.5e-126) tmp = Float64(y4 * Float64(t * Float64(b * j))); elseif (x <= 3e+47) tmp = Float64(Float64(t * i) * Float64(j * Float64(-y5))); else tmp = Float64(y * Float64(b * Float64(x * a))); end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) tmp = 0.0; if (x <= -2.8e+104) tmp = y0 * (j * (x * -b)); elseif (x <= -9.8e+25) tmp = x * (j * (i * y1)); elseif (x <= 1.5e-126) tmp = y4 * (t * (b * j)); elseif (x <= 3e+47) tmp = (t * i) * (j * -y5); else tmp = y * (b * (x * a)); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_, j_, k_, y0_, y1_, y2_, y3_, y4_, y5_] := If[LessEqual[x, -2.8e+104], N[(y0 * N[(j * N[(x * (-b)), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[x, -9.8e+25], N[(x * N[(j * N[(i * y1), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[x, 1.5e-126], N[(y4 * N[(t * N[(b * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[x, 3e+47], N[(N[(t * i), $MachinePrecision] * N[(j * (-y5)), $MachinePrecision]), $MachinePrecision], N[(y * N[(b * N[(x * a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;x \leq -2.8 \cdot 10^{+104}:\\
\;\;\;\;y0 \cdot \left(j \cdot \left(x \cdot \left(-b\right)\right)\right)\\
\mathbf{elif}\;x \leq -9.8 \cdot 10^{+25}:\\
\;\;\;\;x \cdot \left(j \cdot \left(i \cdot y1\right)\right)\\
\mathbf{elif}\;x \leq 1.5 \cdot 10^{-126}:\\
\;\;\;\;y4 \cdot \left(t \cdot \left(b \cdot j\right)\right)\\
\mathbf{elif}\;x \leq 3 \cdot 10^{+47}:\\
\;\;\;\;\left(t \cdot i\right) \cdot \left(j \cdot \left(-y5\right)\right)\\
\mathbf{else}:\\
\;\;\;\;y \cdot \left(b \cdot \left(x \cdot a\right)\right)\\
\end{array}
\end{array}
if x < -2.8e104Initial program 31.1%
Simplified31.1%
Taylor expanded in x around inf 64.2%
Taylor expanded in j around inf 37.2%
Taylor expanded in y1 around 0 44.6%
mul-1-neg44.6%
Simplified44.6%
if -2.8e104 < x < -9.8000000000000002e25Initial program 29.7%
Simplified29.7%
Taylor expanded in x around inf 41.8%
Taylor expanded in j around inf 48.2%
Taylor expanded in y1 around inf 37.3%
*-commutative37.3%
*-commutative37.3%
associate-*l*48.3%
Simplified48.3%
if -9.8000000000000002e25 < x < 1.5000000000000001e-126Initial program 31.4%
Simplified31.4%
Taylor expanded in t around inf 41.6%
associate--l+41.6%
mul-1-neg41.6%
Simplified41.6%
Taylor expanded in j around inf 28.1%
Taylor expanded in b around inf 28.3%
if 1.5000000000000001e-126 < x < 3.0000000000000001e47Initial program 22.6%
Simplified22.6%
Taylor expanded in t around inf 33.4%
associate--l+33.4%
mul-1-neg33.4%
Simplified33.4%
Taylor expanded in y5 around -inf 23.9%
mul-1-neg23.9%
*-commutative23.9%
Simplified23.9%
Taylor expanded in i around inf 26.9%
associate-*r*31.5%
*-commutative31.5%
Simplified31.5%
if 3.0000000000000001e47 < x Initial program 25.1%
Simplified34.5%
Taylor expanded in a around inf 42.8%
mul-1-neg42.8%
mul-1-neg42.8%
Simplified42.8%
Taylor expanded in b around inf 35.3%
Taylor expanded in y around inf 34.1%
Taylor expanded in a around 0 34.1%
*-commutative34.1%
associate-*l*37.3%
Simplified37.3%
Final simplification34.9%
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5)
:precision binary64
(if (<= x -1.1e+106)
(* b (* j (* x (- y0))))
(if (<= x -5.2e+23)
(* x (* j (* i y1)))
(if (<= x 1.75e-124)
(* y4 (* t (* b j)))
(if (<= x 8.2e+48) (* (* t i) (* j (- y5))) (* y (* b (* x a))))))))
double code(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 tmp;
if (x <= -1.1e+106) {
tmp = b * (j * (x * -y0));
} else if (x <= -5.2e+23) {
tmp = x * (j * (i * y1));
} else if (x <= 1.75e-124) {
tmp = y4 * (t * (b * j));
} else if (x <= 8.2e+48) {
tmp = (t * i) * (j * -y5);
} else {
tmp = y * (b * (x * a));
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8), intent (in) :: t
real(8), intent (in) :: a
real(8), intent (in) :: b
real(8), intent (in) :: c
real(8), intent (in) :: i
real(8), intent (in) :: j
real(8), intent (in) :: k
real(8), intent (in) :: y0
real(8), intent (in) :: y1
real(8), intent (in) :: y2
real(8), intent (in) :: y3
real(8), intent (in) :: y4
real(8), intent (in) :: y5
real(8) :: tmp
if (x <= (-1.1d+106)) then
tmp = b * (j * (x * -y0))
else if (x <= (-5.2d+23)) then
tmp = x * (j * (i * y1))
else if (x <= 1.75d-124) then
tmp = y4 * (t * (b * j))
else if (x <= 8.2d+48) then
tmp = (t * i) * (j * -y5)
else
tmp = y * (b * (x * a))
end if
code = tmp
end function
public static double code(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 tmp;
if (x <= -1.1e+106) {
tmp = b * (j * (x * -y0));
} else if (x <= -5.2e+23) {
tmp = x * (j * (i * y1));
} else if (x <= 1.75e-124) {
tmp = y4 * (t * (b * j));
} else if (x <= 8.2e+48) {
tmp = (t * i) * (j * -y5);
} else {
tmp = y * (b * (x * a));
}
return tmp;
}
def code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5): tmp = 0 if x <= -1.1e+106: tmp = b * (j * (x * -y0)) elif x <= -5.2e+23: tmp = x * (j * (i * y1)) elif x <= 1.75e-124: tmp = y4 * (t * (b * j)) elif x <= 8.2e+48: tmp = (t * i) * (j * -y5) else: tmp = y * (b * (x * a)) return tmp
function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) tmp = 0.0 if (x <= -1.1e+106) tmp = Float64(b * Float64(j * Float64(x * Float64(-y0)))); elseif (x <= -5.2e+23) tmp = Float64(x * Float64(j * Float64(i * y1))); elseif (x <= 1.75e-124) tmp = Float64(y4 * Float64(t * Float64(b * j))); elseif (x <= 8.2e+48) tmp = Float64(Float64(t * i) * Float64(j * Float64(-y5))); else tmp = Float64(y * Float64(b * Float64(x * a))); end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) tmp = 0.0; if (x <= -1.1e+106) tmp = b * (j * (x * -y0)); elseif (x <= -5.2e+23) tmp = x * (j * (i * y1)); elseif (x <= 1.75e-124) tmp = y4 * (t * (b * j)); elseif (x <= 8.2e+48) tmp = (t * i) * (j * -y5); else tmp = y * (b * (x * a)); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_, j_, k_, y0_, y1_, y2_, y3_, y4_, y5_] := If[LessEqual[x, -1.1e+106], N[(b * N[(j * N[(x * (-y0)), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[x, -5.2e+23], N[(x * N[(j * N[(i * y1), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[x, 1.75e-124], N[(y4 * N[(t * N[(b * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[x, 8.2e+48], N[(N[(t * i), $MachinePrecision] * N[(j * (-y5)), $MachinePrecision]), $MachinePrecision], N[(y * N[(b * N[(x * a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;x \leq -1.1 \cdot 10^{+106}:\\
\;\;\;\;b \cdot \left(j \cdot \left(x \cdot \left(-y0\right)\right)\right)\\
\mathbf{elif}\;x \leq -5.2 \cdot 10^{+23}:\\
\;\;\;\;x \cdot \left(j \cdot \left(i \cdot y1\right)\right)\\
\mathbf{elif}\;x \leq 1.75 \cdot 10^{-124}:\\
\;\;\;\;y4 \cdot \left(t \cdot \left(b \cdot j\right)\right)\\
\mathbf{elif}\;x \leq 8.2 \cdot 10^{+48}:\\
\;\;\;\;\left(t \cdot i\right) \cdot \left(j \cdot \left(-y5\right)\right)\\
\mathbf{else}:\\
\;\;\;\;y \cdot \left(b \cdot \left(x \cdot a\right)\right)\\
\end{array}
\end{array}
if x < -1.09999999999999996e106Initial program 31.1%
Simplified31.1%
Taylor expanded in x around inf 64.2%
Taylor expanded in j around inf 37.2%
Taylor expanded in y1 around 0 42.0%
mul-1-neg42.0%
*-commutative42.0%
distribute-rgt-neg-in42.0%
*-commutative42.0%
distribute-rgt-neg-in42.0%
Simplified42.0%
Taylor expanded in y0 around 0 44.6%
mul-1-neg44.6%
associate-*r*44.5%
*-commutative44.5%
associate-*r*49.4%
associate-*r*44.6%
*-commutative44.6%
associate-*l*44.5%
distribute-rgt-neg-in44.5%
*-commutative44.5%
associate-*l*47.0%
*-commutative47.0%
distribute-rgt-neg-in47.0%
Simplified47.0%
if -1.09999999999999996e106 < x < -5.19999999999999983e23Initial program 29.7%
Simplified29.7%
Taylor expanded in x around inf 41.8%
Taylor expanded in j around inf 48.2%
Taylor expanded in y1 around inf 37.3%
*-commutative37.3%
*-commutative37.3%
associate-*l*48.3%
Simplified48.3%
if -5.19999999999999983e23 < x < 1.7499999999999999e-124Initial program 31.4%
Simplified31.4%
Taylor expanded in t around inf 41.6%
associate--l+41.6%
mul-1-neg41.6%
Simplified41.6%
Taylor expanded in j around inf 28.1%
Taylor expanded in b around inf 28.3%
if 1.7499999999999999e-124 < x < 8.2000000000000005e48Initial program 22.6%
Simplified22.6%
Taylor expanded in t around inf 33.4%
associate--l+33.4%
mul-1-neg33.4%
Simplified33.4%
Taylor expanded in y5 around -inf 23.9%
mul-1-neg23.9%
*-commutative23.9%
Simplified23.9%
Taylor expanded in i around inf 26.9%
associate-*r*31.5%
*-commutative31.5%
Simplified31.5%
if 8.2000000000000005e48 < x Initial program 25.1%
Simplified34.5%
Taylor expanded in a around inf 42.8%
mul-1-neg42.8%
mul-1-neg42.8%
Simplified42.8%
Taylor expanded in b around inf 35.3%
Taylor expanded in y around inf 34.1%
Taylor expanded in a around 0 34.1%
*-commutative34.1%
associate-*l*37.3%
Simplified37.3%
Final simplification35.2%
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5)
:precision binary64
(if (<= x -3.2e-62)
(* a (* y (* x b)))
(if (<= x 2.3e+47)
(* y4 (* t (* b j)))
(if (<= x 3e+125)
(* a (* b (* x y)))
(if (<= x 2.25e+151) (* i (* y1 (* x j))) (* y (* b (* x a))))))))
double code(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 tmp;
if (x <= -3.2e-62) {
tmp = a * (y * (x * b));
} else if (x <= 2.3e+47) {
tmp = y4 * (t * (b * j));
} else if (x <= 3e+125) {
tmp = a * (b * (x * y));
} else if (x <= 2.25e+151) {
tmp = i * (y1 * (x * j));
} else {
tmp = y * (b * (x * a));
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8), intent (in) :: t
real(8), intent (in) :: a
real(8), intent (in) :: b
real(8), intent (in) :: c
real(8), intent (in) :: i
real(8), intent (in) :: j
real(8), intent (in) :: k
real(8), intent (in) :: y0
real(8), intent (in) :: y1
real(8), intent (in) :: y2
real(8), intent (in) :: y3
real(8), intent (in) :: y4
real(8), intent (in) :: y5
real(8) :: tmp
if (x <= (-3.2d-62)) then
tmp = a * (y * (x * b))
else if (x <= 2.3d+47) then
tmp = y4 * (t * (b * j))
else if (x <= 3d+125) then
tmp = a * (b * (x * y))
else if (x <= 2.25d+151) then
tmp = i * (y1 * (x * j))
else
tmp = y * (b * (x * a))
end if
code = tmp
end function
public static double code(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 tmp;
if (x <= -3.2e-62) {
tmp = a * (y * (x * b));
} else if (x <= 2.3e+47) {
tmp = y4 * (t * (b * j));
} else if (x <= 3e+125) {
tmp = a * (b * (x * y));
} else if (x <= 2.25e+151) {
tmp = i * (y1 * (x * j));
} else {
tmp = y * (b * (x * a));
}
return tmp;
}
def code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5): tmp = 0 if x <= -3.2e-62: tmp = a * (y * (x * b)) elif x <= 2.3e+47: tmp = y4 * (t * (b * j)) elif x <= 3e+125: tmp = a * (b * (x * y)) elif x <= 2.25e+151: tmp = i * (y1 * (x * j)) else: tmp = y * (b * (x * a)) return tmp
function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) tmp = 0.0 if (x <= -3.2e-62) tmp = Float64(a * Float64(y * Float64(x * b))); elseif (x <= 2.3e+47) tmp = Float64(y4 * Float64(t * Float64(b * j))); elseif (x <= 3e+125) tmp = Float64(a * Float64(b * Float64(x * y))); elseif (x <= 2.25e+151) tmp = Float64(i * Float64(y1 * Float64(x * j))); else tmp = Float64(y * Float64(b * Float64(x * a))); end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) tmp = 0.0; if (x <= -3.2e-62) tmp = a * (y * (x * b)); elseif (x <= 2.3e+47) tmp = y4 * (t * (b * j)); elseif (x <= 3e+125) tmp = a * (b * (x * y)); elseif (x <= 2.25e+151) tmp = i * (y1 * (x * j)); else tmp = y * (b * (x * a)); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_, j_, k_, y0_, y1_, y2_, y3_, y4_, y5_] := If[LessEqual[x, -3.2e-62], N[(a * N[(y * N[(x * b), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[x, 2.3e+47], N[(y4 * N[(t * N[(b * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[x, 3e+125], N[(a * N[(b * N[(x * y), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[x, 2.25e+151], N[(i * N[(y1 * N[(x * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(y * N[(b * N[(x * a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;x \leq -3.2 \cdot 10^{-62}:\\
\;\;\;\;a \cdot \left(y \cdot \left(x \cdot b\right)\right)\\
\mathbf{elif}\;x \leq 2.3 \cdot 10^{+47}:\\
\;\;\;\;y4 \cdot \left(t \cdot \left(b \cdot j\right)\right)\\
\mathbf{elif}\;x \leq 3 \cdot 10^{+125}:\\
\;\;\;\;a \cdot \left(b \cdot \left(x \cdot y\right)\right)\\
\mathbf{elif}\;x \leq 2.25 \cdot 10^{+151}:\\
\;\;\;\;i \cdot \left(y1 \cdot \left(x \cdot j\right)\right)\\
\mathbf{else}:\\
\;\;\;\;y \cdot \left(b \cdot \left(x \cdot a\right)\right)\\
\end{array}
\end{array}
if x < -3.20000000000000021e-62Initial program 31.0%
Simplified37.4%
Taylor expanded in a around inf 40.1%
mul-1-neg40.1%
mul-1-neg40.1%
Simplified40.1%
Taylor expanded in b around inf 42.0%
Taylor expanded in y around inf 32.0%
if -3.20000000000000021e-62 < x < 2.2999999999999999e47Initial program 28.5%
Simplified28.5%
Taylor expanded in t around inf 38.2%
associate--l+38.2%
mul-1-neg38.2%
Simplified38.2%
Taylor expanded in j around inf 28.6%
Taylor expanded in b around inf 26.7%
if 2.2999999999999999e47 < x < 3.00000000000000015e125Initial program 26.2%
Simplified42.0%
Taylor expanded in a around inf 63.2%
mul-1-neg63.2%
mul-1-neg63.2%
Simplified63.2%
Taylor expanded in b around inf 42.9%
Taylor expanded in y around inf 32.7%
if 3.00000000000000015e125 < x < 2.2499999999999999e151Initial program 42.9%
Simplified42.9%
Taylor expanded in x around inf 44.5%
Taylor expanded in j around inf 44.4%
Taylor expanded in y1 around inf 58.3%
if 2.2499999999999999e151 < x Initial program 20.7%
Simplified25.8%
Taylor expanded in a around inf 33.9%
mul-1-neg33.9%
mul-1-neg33.9%
Simplified33.9%
Taylor expanded in b around inf 34.2%
Taylor expanded in y around inf 37.2%
Taylor expanded in a around 0 42.1%
*-commutative42.1%
associate-*l*49.8%
Simplified49.8%
Final simplification33.2%
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5)
:precision binary64
(if (<= x -6e-62)
(* a (* y (* x b)))
(if (<= x 3.3e-90)
(* t (* j (* b y4)))
(if (<= x 2.9e+156) (* i (* y1 (* x j))) (* y (* b (* x a)))))))
double code(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 tmp;
if (x <= -6e-62) {
tmp = a * (y * (x * b));
} else if (x <= 3.3e-90) {
tmp = t * (j * (b * y4));
} else if (x <= 2.9e+156) {
tmp = i * (y1 * (x * j));
} else {
tmp = y * (b * (x * a));
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8), intent (in) :: t
real(8), intent (in) :: a
real(8), intent (in) :: b
real(8), intent (in) :: c
real(8), intent (in) :: i
real(8), intent (in) :: j
real(8), intent (in) :: k
real(8), intent (in) :: y0
real(8), intent (in) :: y1
real(8), intent (in) :: y2
real(8), intent (in) :: y3
real(8), intent (in) :: y4
real(8), intent (in) :: y5
real(8) :: tmp
if (x <= (-6d-62)) then
tmp = a * (y * (x * b))
else if (x <= 3.3d-90) then
tmp = t * (j * (b * y4))
else if (x <= 2.9d+156) then
tmp = i * (y1 * (x * j))
else
tmp = y * (b * (x * a))
end if
code = tmp
end function
public static double code(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 tmp;
if (x <= -6e-62) {
tmp = a * (y * (x * b));
} else if (x <= 3.3e-90) {
tmp = t * (j * (b * y4));
} else if (x <= 2.9e+156) {
tmp = i * (y1 * (x * j));
} else {
tmp = y * (b * (x * a));
}
return tmp;
}
def code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5): tmp = 0 if x <= -6e-62: tmp = a * (y * (x * b)) elif x <= 3.3e-90: tmp = t * (j * (b * y4)) elif x <= 2.9e+156: tmp = i * (y1 * (x * j)) else: tmp = y * (b * (x * a)) return tmp
function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) tmp = 0.0 if (x <= -6e-62) tmp = Float64(a * Float64(y * Float64(x * b))); elseif (x <= 3.3e-90) tmp = Float64(t * Float64(j * Float64(b * y4))); elseif (x <= 2.9e+156) tmp = Float64(i * Float64(y1 * Float64(x * j))); else tmp = Float64(y * Float64(b * Float64(x * a))); end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) tmp = 0.0; if (x <= -6e-62) tmp = a * (y * (x * b)); elseif (x <= 3.3e-90) tmp = t * (j * (b * y4)); elseif (x <= 2.9e+156) tmp = i * (y1 * (x * j)); else tmp = y * (b * (x * a)); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_, j_, k_, y0_, y1_, y2_, y3_, y4_, y5_] := If[LessEqual[x, -6e-62], N[(a * N[(y * N[(x * b), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[x, 3.3e-90], N[(t * N[(j * N[(b * y4), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[x, 2.9e+156], N[(i * N[(y1 * N[(x * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(y * N[(b * N[(x * a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;x \leq -6 \cdot 10^{-62}:\\
\;\;\;\;a \cdot \left(y \cdot \left(x \cdot b\right)\right)\\
\mathbf{elif}\;x \leq 3.3 \cdot 10^{-90}:\\
\;\;\;\;t \cdot \left(j \cdot \left(b \cdot y4\right)\right)\\
\mathbf{elif}\;x \leq 2.9 \cdot 10^{+156}:\\
\;\;\;\;i \cdot \left(y1 \cdot \left(x \cdot j\right)\right)\\
\mathbf{else}:\\
\;\;\;\;y \cdot \left(b \cdot \left(x \cdot a\right)\right)\\
\end{array}
\end{array}
if x < -6.0000000000000002e-62Initial program 31.0%
Simplified37.4%
Taylor expanded in a around inf 40.1%
mul-1-neg40.1%
mul-1-neg40.1%
Simplified40.1%
Taylor expanded in b around inf 42.0%
Taylor expanded in y around inf 32.0%
if -6.0000000000000002e-62 < x < 3.3e-90Initial program 29.1%
Simplified29.1%
Taylor expanded in t around inf 39.6%
associate--l+39.6%
mul-1-neg39.6%
Simplified39.6%
Taylor expanded in j around inf 28.8%
Taylor expanded in y4 around inf 25.4%
if 3.3e-90 < x < 2.9000000000000001e156Initial program 28.0%
Simplified28.0%
Taylor expanded in x around inf 41.2%
Taylor expanded in j around inf 24.3%
Taylor expanded in y1 around inf 24.3%
if 2.9000000000000001e156 < x Initial program 21.2%
Simplified26.5%
Taylor expanded in a around inf 32.1%
mul-1-neg32.1%
mul-1-neg32.1%
Simplified32.1%
Taylor expanded in b around inf 35.0%
Taylor expanded in y around inf 38.2%
Taylor expanded in a around 0 43.2%
*-commutative43.2%
associate-*l*51.1%
Simplified51.1%
Final simplification31.0%
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5) :precision binary64 (if (or (<= y1 -3e+228) (not (<= y1 2.4e+150))) (* i (* y1 (* x j))) (* a (* x (* y b)))))
double code(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 tmp;
if ((y1 <= -3e+228) || !(y1 <= 2.4e+150)) {
tmp = i * (y1 * (x * j));
} else {
tmp = a * (x * (y * b));
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8), intent (in) :: t
real(8), intent (in) :: a
real(8), intent (in) :: b
real(8), intent (in) :: c
real(8), intent (in) :: i
real(8), intent (in) :: j
real(8), intent (in) :: k
real(8), intent (in) :: y0
real(8), intent (in) :: y1
real(8), intent (in) :: y2
real(8), intent (in) :: y3
real(8), intent (in) :: y4
real(8), intent (in) :: y5
real(8) :: tmp
if ((y1 <= (-3d+228)) .or. (.not. (y1 <= 2.4d+150))) then
tmp = i * (y1 * (x * j))
else
tmp = a * (x * (y * b))
end if
code = tmp
end function
public static double code(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 tmp;
if ((y1 <= -3e+228) || !(y1 <= 2.4e+150)) {
tmp = i * (y1 * (x * j));
} else {
tmp = a * (x * (y * b));
}
return tmp;
}
def code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5): tmp = 0 if (y1 <= -3e+228) or not (y1 <= 2.4e+150): tmp = i * (y1 * (x * j)) else: tmp = a * (x * (y * b)) return tmp
function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) tmp = 0.0 if ((y1 <= -3e+228) || !(y1 <= 2.4e+150)) tmp = Float64(i * Float64(y1 * Float64(x * j))); else tmp = Float64(a * Float64(x * Float64(y * b))); end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) tmp = 0.0; if ((y1 <= -3e+228) || ~((y1 <= 2.4e+150))) tmp = i * (y1 * (x * j)); else tmp = a * (x * (y * b)); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_, j_, k_, y0_, y1_, y2_, y3_, y4_, y5_] := If[Or[LessEqual[y1, -3e+228], N[Not[LessEqual[y1, 2.4e+150]], $MachinePrecision]], N[(i * N[(y1 * N[(x * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(a * N[(x * N[(y * b), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;y1 \leq -3 \cdot 10^{+228} \lor \neg \left(y1 \leq 2.4 \cdot 10^{+150}\right):\\
\;\;\;\;i \cdot \left(y1 \cdot \left(x \cdot j\right)\right)\\
\mathbf{else}:\\
\;\;\;\;a \cdot \left(x \cdot \left(y \cdot b\right)\right)\\
\end{array}
\end{array}
if y1 < -3.0000000000000001e228 or 2.40000000000000003e150 < y1 Initial program 18.3%
Simplified18.3%
Taylor expanded in x around inf 43.0%
Taylor expanded in j around inf 44.3%
Taylor expanded in y1 around inf 41.5%
if -3.0000000000000001e228 < y1 < 2.40000000000000003e150Initial program 31.3%
Simplified35.4%
Taylor expanded in a around inf 39.4%
mul-1-neg39.4%
mul-1-neg39.4%
Simplified39.4%
Taylor expanded in b around inf 34.2%
Taylor expanded in y around inf 22.3%
associate-*r*23.8%
*-commutative23.8%
Simplified23.8%
Final simplification28.0%
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5) :precision binary64 (if (<= x -3.8e-62) (* a (* y (* x b))) (if (<= x 2.4e+47) (* t (* j (* b y4))) (* a (* b (* x y))))))
double code(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 tmp;
if (x <= -3.8e-62) {
tmp = a * (y * (x * b));
} else if (x <= 2.4e+47) {
tmp = t * (j * (b * y4));
} else {
tmp = a * (b * (x * y));
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8), intent (in) :: t
real(8), intent (in) :: a
real(8), intent (in) :: b
real(8), intent (in) :: c
real(8), intent (in) :: i
real(8), intent (in) :: j
real(8), intent (in) :: k
real(8), intent (in) :: y0
real(8), intent (in) :: y1
real(8), intent (in) :: y2
real(8), intent (in) :: y3
real(8), intent (in) :: y4
real(8), intent (in) :: y5
real(8) :: tmp
if (x <= (-3.8d-62)) then
tmp = a * (y * (x * b))
else if (x <= 2.4d+47) then
tmp = t * (j * (b * y4))
else
tmp = a * (b * (x * y))
end if
code = tmp
end function
public static double code(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 tmp;
if (x <= -3.8e-62) {
tmp = a * (y * (x * b));
} else if (x <= 2.4e+47) {
tmp = t * (j * (b * y4));
} else {
tmp = a * (b * (x * y));
}
return tmp;
}
def code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5): tmp = 0 if x <= -3.8e-62: tmp = a * (y * (x * b)) elif x <= 2.4e+47: tmp = t * (j * (b * y4)) else: tmp = a * (b * (x * y)) return tmp
function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) tmp = 0.0 if (x <= -3.8e-62) tmp = Float64(a * Float64(y * Float64(x * b))); elseif (x <= 2.4e+47) tmp = Float64(t * Float64(j * Float64(b * y4))); else tmp = Float64(a * Float64(b * Float64(x * y))); end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) tmp = 0.0; if (x <= -3.8e-62) tmp = a * (y * (x * b)); elseif (x <= 2.4e+47) tmp = t * (j * (b * y4)); else tmp = a * (b * (x * y)); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_, j_, k_, y0_, y1_, y2_, y3_, y4_, y5_] := If[LessEqual[x, -3.8e-62], N[(a * N[(y * N[(x * b), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[x, 2.4e+47], N[(t * N[(j * N[(b * y4), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(a * N[(b * N[(x * y), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;x \leq -3.8 \cdot 10^{-62}:\\
\;\;\;\;a \cdot \left(y \cdot \left(x \cdot b\right)\right)\\
\mathbf{elif}\;x \leq 2.4 \cdot 10^{+47}:\\
\;\;\;\;t \cdot \left(j \cdot \left(b \cdot y4\right)\right)\\
\mathbf{else}:\\
\;\;\;\;a \cdot \left(b \cdot \left(x \cdot y\right)\right)\\
\end{array}
\end{array}
if x < -3.80000000000000006e-62Initial program 31.0%
Simplified37.4%
Taylor expanded in a around inf 40.1%
mul-1-neg40.1%
mul-1-neg40.1%
Simplified40.1%
Taylor expanded in b around inf 42.0%
Taylor expanded in y around inf 32.0%
if -3.80000000000000006e-62 < x < 2.40000000000000019e47Initial program 28.5%
Simplified28.5%
Taylor expanded in t around inf 38.2%
associate--l+38.2%
mul-1-neg38.2%
Simplified38.2%
Taylor expanded in j around inf 28.6%
Taylor expanded in y4 around inf 22.5%
if 2.40000000000000019e47 < x Initial program 24.7%
Simplified33.9%
Taylor expanded in a around inf 42.1%
mul-1-neg42.1%
mul-1-neg42.1%
Simplified42.1%
Taylor expanded in b around inf 34.8%
Taylor expanded in y around inf 33.6%
Final simplification28.2%
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5) :precision binary64 (* a (* b (* x y))))
double code(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) {
return a * (b * (x * y));
}
real(8) function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8), intent (in) :: t
real(8), intent (in) :: a
real(8), intent (in) :: b
real(8), intent (in) :: c
real(8), intent (in) :: i
real(8), intent (in) :: j
real(8), intent (in) :: k
real(8), intent (in) :: y0
real(8), intent (in) :: y1
real(8), intent (in) :: y2
real(8), intent (in) :: y3
real(8), intent (in) :: y4
real(8), intent (in) :: y5
code = a * (b * (x * y))
end function
public static double code(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) {
return a * (b * (x * y));
}
def code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5): return a * (b * (x * y))
function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) return Float64(a * Float64(b * Float64(x * y))) end
function tmp = code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) tmp = a * (b * (x * y)); end
code[x_, y_, z_, t_, a_, b_, c_, i_, j_, k_, y0_, y1_, y2_, y3_, y4_, y5_] := N[(a * N[(b * N[(x * y), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
\begin{array}{l}
\\
a \cdot \left(b \cdot \left(x \cdot y\right)\right)
\end{array}
Initial program 28.3%
Simplified33.8%
Taylor expanded in a around inf 37.0%
mul-1-neg37.0%
mul-1-neg37.0%
Simplified37.0%
Taylor expanded in b around inf 31.2%
Taylor expanded in y around inf 21.0%
Final simplification21.0%
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5) :precision binary64 (* a (* x (* y b))))
double code(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) {
return a * (x * (y * b));
}
real(8) function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8), intent (in) :: t
real(8), intent (in) :: a
real(8), intent (in) :: b
real(8), intent (in) :: c
real(8), intent (in) :: i
real(8), intent (in) :: j
real(8), intent (in) :: k
real(8), intent (in) :: y0
real(8), intent (in) :: y1
real(8), intent (in) :: y2
real(8), intent (in) :: y3
real(8), intent (in) :: y4
real(8), intent (in) :: y5
code = a * (x * (y * b))
end function
public static double code(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) {
return a * (x * (y * b));
}
def code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5): return a * (x * (y * b))
function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) return Float64(a * Float64(x * Float64(y * b))) end
function tmp = code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) tmp = a * (x * (y * b)); end
code[x_, y_, z_, t_, a_, b_, c_, i_, j_, k_, y0_, y1_, y2_, y3_, y4_, y5_] := N[(a * N[(x * N[(y * b), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
\begin{array}{l}
\\
a \cdot \left(x \cdot \left(y \cdot b\right)\right)
\end{array}
Initial program 28.3%
Simplified33.8%
Taylor expanded in a around inf 37.0%
mul-1-neg37.0%
mul-1-neg37.0%
Simplified37.0%
Taylor expanded in b around inf 31.2%
Taylor expanded in y around inf 20.6%
associate-*r*21.3%
*-commutative21.3%
Simplified21.3%
Final simplification21.3%
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5)
:precision binary64
(let* ((t_1 (- (* y4 c) (* y5 a)))
(t_2 (- (* x y2) (* z y3)))
(t_3 (- (* y2 t) (* y3 y)))
(t_4 (- (* k y2) (* j y3)))
(t_5 (- (* y4 b) (* y5 i)))
(t_6 (* (- (* j t) (* k y)) t_5))
(t_7 (- (* b a) (* i c)))
(t_8 (* t_7 (- (* y x) (* t z))))
(t_9 (- (* j x) (* k z)))
(t_10 (* (- (* b y0) (* i y1)) t_9))
(t_11 (* t_9 (- (* y0 b) (* i y1))))
(t_12 (- (* y4 y1) (* y5 y0)))
(t_13 (* t_4 t_12))
(t_14 (* (- (* y2 k) (* y3 j)) t_12))
(t_15
(+
(-
(-
(- (* (* k y) (* y5 i)) (* (* y b) (* y4 k)))
(* (* y5 t) (* i j)))
(- (* t_3 t_1) t_14))
(- t_8 (- t_11 (* (- (* y2 x) (* y3 z)) (- (* c y0) (* y1 a)))))))
(t_16
(+
(+
(- t_6 (* (* y3 y) (- (* y5 a) (* y4 c))))
(+ (* (* y5 a) (* t y2)) t_13))
(-
(* t_2 (- (* c y0) (* a y1)))
(- t_10 (* (- (* y x) (* z t)) t_7)))))
(t_17 (- (* t y2) (* y y3))))
(if (< y4 -7.206256231996481e+60)
(- (- t_8 (- t_11 t_6)) (- (/ t_3 (/ 1.0 t_1)) t_14))
(if (< y4 -3.364603505246317e-66)
(+
(-
(- (- (* (* t c) (* i z)) (* (* a t) (* b z))) (* (* y c) (* i x)))
t_10)
(-
(* (- (* y0 c) (* a y1)) t_2)
(- (* t_17 (- (* y4 c) (* a y5))) (* (- (* y1 y4) (* y5 y0)) t_4))))
(if (< y4 -1.2000065055686116e-105)
t_16
(if (< y4 6.718963124057495e-279)
t_15
(if (< y4 4.77962681403792e-222)
t_16
(if (< y4 2.2852241541266835e-175)
t_15
(+
(-
(+
(+
(-
(* (- (* 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)) t_5))
(* t_17 t_1))
t_13)))))))))
double code(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 t_1 = (y4 * c) - (y5 * a);
double t_2 = (x * y2) - (z * y3);
double t_3 = (y2 * t) - (y3 * y);
double t_4 = (k * y2) - (j * y3);
double t_5 = (y4 * b) - (y5 * i);
double t_6 = ((j * t) - (k * y)) * t_5;
double t_7 = (b * a) - (i * c);
double t_8 = t_7 * ((y * x) - (t * z));
double t_9 = (j * x) - (k * z);
double t_10 = ((b * y0) - (i * y1)) * t_9;
double t_11 = t_9 * ((y0 * b) - (i * y1));
double t_12 = (y4 * y1) - (y5 * y0);
double t_13 = t_4 * t_12;
double t_14 = ((y2 * k) - (y3 * j)) * t_12;
double t_15 = (((((k * y) * (y5 * i)) - ((y * b) * (y4 * k))) - ((y5 * t) * (i * j))) - ((t_3 * t_1) - t_14)) + (t_8 - (t_11 - (((y2 * x) - (y3 * z)) * ((c * y0) - (y1 * a)))));
double t_16 = ((t_6 - ((y3 * y) * ((y5 * a) - (y4 * c)))) + (((y5 * a) * (t * y2)) + t_13)) + ((t_2 * ((c * y0) - (a * y1))) - (t_10 - (((y * x) - (z * t)) * t_7)));
double t_17 = (t * y2) - (y * y3);
double tmp;
if (y4 < -7.206256231996481e+60) {
tmp = (t_8 - (t_11 - t_6)) - ((t_3 / (1.0 / t_1)) - t_14);
} else if (y4 < -3.364603505246317e-66) {
tmp = (((((t * c) * (i * z)) - ((a * t) * (b * z))) - ((y * c) * (i * x))) - t_10) + ((((y0 * c) - (a * y1)) * t_2) - ((t_17 * ((y4 * c) - (a * y5))) - (((y1 * y4) - (y5 * y0)) * t_4)));
} else if (y4 < -1.2000065055686116e-105) {
tmp = t_16;
} else if (y4 < 6.718963124057495e-279) {
tmp = t_15;
} else if (y4 < 4.77962681403792e-222) {
tmp = t_16;
} else if (y4 < 2.2852241541266835e-175) {
tmp = t_15;
} else {
tmp = (((((((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)) * t_5)) - (t_17 * t_1)) + t_13;
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8), intent (in) :: t
real(8), intent (in) :: a
real(8), intent (in) :: b
real(8), intent (in) :: c
real(8), intent (in) :: i
real(8), intent (in) :: j
real(8), intent (in) :: k
real(8), intent (in) :: y0
real(8), intent (in) :: y1
real(8), intent (in) :: y2
real(8), intent (in) :: y3
real(8), intent (in) :: y4
real(8), intent (in) :: y5
real(8) :: t_1
real(8) :: t_10
real(8) :: t_11
real(8) :: t_12
real(8) :: t_13
real(8) :: t_14
real(8) :: t_15
real(8) :: t_16
real(8) :: t_17
real(8) :: t_2
real(8) :: t_3
real(8) :: t_4
real(8) :: t_5
real(8) :: t_6
real(8) :: t_7
real(8) :: t_8
real(8) :: t_9
real(8) :: tmp
t_1 = (y4 * c) - (y5 * a)
t_2 = (x * y2) - (z * y3)
t_3 = (y2 * t) - (y3 * y)
t_4 = (k * y2) - (j * y3)
t_5 = (y4 * b) - (y5 * i)
t_6 = ((j * t) - (k * y)) * t_5
t_7 = (b * a) - (i * c)
t_8 = t_7 * ((y * x) - (t * z))
t_9 = (j * x) - (k * z)
t_10 = ((b * y0) - (i * y1)) * t_9
t_11 = t_9 * ((y0 * b) - (i * y1))
t_12 = (y4 * y1) - (y5 * y0)
t_13 = t_4 * t_12
t_14 = ((y2 * k) - (y3 * j)) * t_12
t_15 = (((((k * y) * (y5 * i)) - ((y * b) * (y4 * k))) - ((y5 * t) * (i * j))) - ((t_3 * t_1) - t_14)) + (t_8 - (t_11 - (((y2 * x) - (y3 * z)) * ((c * y0) - (y1 * a)))))
t_16 = ((t_6 - ((y3 * y) * ((y5 * a) - (y4 * c)))) + (((y5 * a) * (t * y2)) + t_13)) + ((t_2 * ((c * y0) - (a * y1))) - (t_10 - (((y * x) - (z * t)) * t_7)))
t_17 = (t * y2) - (y * y3)
if (y4 < (-7.206256231996481d+60)) then
tmp = (t_8 - (t_11 - t_6)) - ((t_3 / (1.0d0 / t_1)) - t_14)
else if (y4 < (-3.364603505246317d-66)) then
tmp = (((((t * c) * (i * z)) - ((a * t) * (b * z))) - ((y * c) * (i * x))) - t_10) + ((((y0 * c) - (a * y1)) * t_2) - ((t_17 * ((y4 * c) - (a * y5))) - (((y1 * y4) - (y5 * y0)) * t_4)))
else if (y4 < (-1.2000065055686116d-105)) then
tmp = t_16
else if (y4 < 6.718963124057495d-279) then
tmp = t_15
else if (y4 < 4.77962681403792d-222) then
tmp = t_16
else if (y4 < 2.2852241541266835d-175) then
tmp = t_15
else
tmp = (((((((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)) * t_5)) - (t_17 * t_1)) + t_13
end if
code = tmp
end function
public static double code(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 t_1 = (y4 * c) - (y5 * a);
double t_2 = (x * y2) - (z * y3);
double t_3 = (y2 * t) - (y3 * y);
double t_4 = (k * y2) - (j * y3);
double t_5 = (y4 * b) - (y5 * i);
double t_6 = ((j * t) - (k * y)) * t_5;
double t_7 = (b * a) - (i * c);
double t_8 = t_7 * ((y * x) - (t * z));
double t_9 = (j * x) - (k * z);
double t_10 = ((b * y0) - (i * y1)) * t_9;
double t_11 = t_9 * ((y0 * b) - (i * y1));
double t_12 = (y4 * y1) - (y5 * y0);
double t_13 = t_4 * t_12;
double t_14 = ((y2 * k) - (y3 * j)) * t_12;
double t_15 = (((((k * y) * (y5 * i)) - ((y * b) * (y4 * k))) - ((y5 * t) * (i * j))) - ((t_3 * t_1) - t_14)) + (t_8 - (t_11 - (((y2 * x) - (y3 * z)) * ((c * y0) - (y1 * a)))));
double t_16 = ((t_6 - ((y3 * y) * ((y5 * a) - (y4 * c)))) + (((y5 * a) * (t * y2)) + t_13)) + ((t_2 * ((c * y0) - (a * y1))) - (t_10 - (((y * x) - (z * t)) * t_7)));
double t_17 = (t * y2) - (y * y3);
double tmp;
if (y4 < -7.206256231996481e+60) {
tmp = (t_8 - (t_11 - t_6)) - ((t_3 / (1.0 / t_1)) - t_14);
} else if (y4 < -3.364603505246317e-66) {
tmp = (((((t * c) * (i * z)) - ((a * t) * (b * z))) - ((y * c) * (i * x))) - t_10) + ((((y0 * c) - (a * y1)) * t_2) - ((t_17 * ((y4 * c) - (a * y5))) - (((y1 * y4) - (y5 * y0)) * t_4)));
} else if (y4 < -1.2000065055686116e-105) {
tmp = t_16;
} else if (y4 < 6.718963124057495e-279) {
tmp = t_15;
} else if (y4 < 4.77962681403792e-222) {
tmp = t_16;
} else if (y4 < 2.2852241541266835e-175) {
tmp = t_15;
} else {
tmp = (((((((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)) * t_5)) - (t_17 * t_1)) + t_13;
}
return tmp;
}
def code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5): t_1 = (y4 * c) - (y5 * a) t_2 = (x * y2) - (z * y3) t_3 = (y2 * t) - (y3 * y) t_4 = (k * y2) - (j * y3) t_5 = (y4 * b) - (y5 * i) t_6 = ((j * t) - (k * y)) * t_5 t_7 = (b * a) - (i * c) t_8 = t_7 * ((y * x) - (t * z)) t_9 = (j * x) - (k * z) t_10 = ((b * y0) - (i * y1)) * t_9 t_11 = t_9 * ((y0 * b) - (i * y1)) t_12 = (y4 * y1) - (y5 * y0) t_13 = t_4 * t_12 t_14 = ((y2 * k) - (y3 * j)) * t_12 t_15 = (((((k * y) * (y5 * i)) - ((y * b) * (y4 * k))) - ((y5 * t) * (i * j))) - ((t_3 * t_1) - t_14)) + (t_8 - (t_11 - (((y2 * x) - (y3 * z)) * ((c * y0) - (y1 * a))))) t_16 = ((t_6 - ((y3 * y) * ((y5 * a) - (y4 * c)))) + (((y5 * a) * (t * y2)) + t_13)) + ((t_2 * ((c * y0) - (a * y1))) - (t_10 - (((y * x) - (z * t)) * t_7))) t_17 = (t * y2) - (y * y3) tmp = 0 if y4 < -7.206256231996481e+60: tmp = (t_8 - (t_11 - t_6)) - ((t_3 / (1.0 / t_1)) - t_14) elif y4 < -3.364603505246317e-66: tmp = (((((t * c) * (i * z)) - ((a * t) * (b * z))) - ((y * c) * (i * x))) - t_10) + ((((y0 * c) - (a * y1)) * t_2) - ((t_17 * ((y4 * c) - (a * y5))) - (((y1 * y4) - (y5 * y0)) * t_4))) elif y4 < -1.2000065055686116e-105: tmp = t_16 elif y4 < 6.718963124057495e-279: tmp = t_15 elif y4 < 4.77962681403792e-222: tmp = t_16 elif y4 < 2.2852241541266835e-175: tmp = t_15 else: tmp = (((((((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)) * t_5)) - (t_17 * t_1)) + t_13 return tmp
function code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = Float64(Float64(y4 * c) - Float64(y5 * a)) t_2 = Float64(Float64(x * y2) - Float64(z * y3)) t_3 = Float64(Float64(y2 * t) - Float64(y3 * y)) t_4 = Float64(Float64(k * y2) - Float64(j * y3)) t_5 = Float64(Float64(y4 * b) - Float64(y5 * i)) t_6 = Float64(Float64(Float64(j * t) - Float64(k * y)) * t_5) t_7 = Float64(Float64(b * a) - Float64(i * c)) t_8 = Float64(t_7 * Float64(Float64(y * x) - Float64(t * z))) t_9 = Float64(Float64(j * x) - Float64(k * z)) t_10 = Float64(Float64(Float64(b * y0) - Float64(i * y1)) * t_9) t_11 = Float64(t_9 * Float64(Float64(y0 * b) - Float64(i * y1))) t_12 = Float64(Float64(y4 * y1) - Float64(y5 * y0)) t_13 = Float64(t_4 * t_12) t_14 = Float64(Float64(Float64(y2 * k) - Float64(y3 * j)) * t_12) t_15 = Float64(Float64(Float64(Float64(Float64(Float64(k * y) * Float64(y5 * i)) - Float64(Float64(y * b) * Float64(y4 * k))) - Float64(Float64(y5 * t) * Float64(i * j))) - Float64(Float64(t_3 * t_1) - t_14)) + Float64(t_8 - Float64(t_11 - Float64(Float64(Float64(y2 * x) - Float64(y3 * z)) * Float64(Float64(c * y0) - Float64(y1 * a)))))) t_16 = Float64(Float64(Float64(t_6 - Float64(Float64(y3 * y) * Float64(Float64(y5 * a) - Float64(y4 * c)))) + Float64(Float64(Float64(y5 * a) * Float64(t * y2)) + t_13)) + Float64(Float64(t_2 * Float64(Float64(c * y0) - Float64(a * y1))) - Float64(t_10 - Float64(Float64(Float64(y * x) - Float64(z * t)) * t_7)))) t_17 = Float64(Float64(t * y2) - Float64(y * y3)) tmp = 0.0 if (y4 < -7.206256231996481e+60) tmp = Float64(Float64(t_8 - Float64(t_11 - t_6)) - Float64(Float64(t_3 / Float64(1.0 / t_1)) - t_14)); elseif (y4 < -3.364603505246317e-66) tmp = Float64(Float64(Float64(Float64(Float64(Float64(t * c) * Float64(i * z)) - Float64(Float64(a * t) * Float64(b * z))) - Float64(Float64(y * c) * Float64(i * x))) - t_10) + Float64(Float64(Float64(Float64(y0 * c) - Float64(a * y1)) * t_2) - Float64(Float64(t_17 * Float64(Float64(y4 * c) - Float64(a * y5))) - Float64(Float64(Float64(y1 * y4) - Float64(y5 * y0)) * t_4)))); elseif (y4 < -1.2000065055686116e-105) tmp = t_16; elseif (y4 < 6.718963124057495e-279) tmp = t_15; elseif (y4 < 4.77962681403792e-222) tmp = t_16; elseif (y4 < 2.2852241541266835e-175) tmp = t_15; else tmp = Float64(Float64(Float64(Float64(Float64(Float64(Float64(Float64(x * y) - Float64(z * t)) * Float64(Float64(a * b) - Float64(c * i))) - Float64(Float64(k * Float64(i * Float64(z * y1))) - Float64(Float64(j * Float64(i * Float64(x * y1))) + Float64(y0 * Float64(k * Float64(z * b)))))) + Float64(Float64(z * Float64(y3 * Float64(a * y1))) - Float64(Float64(y2 * Float64(x * Float64(a * y1))) + Float64(y0 * Float64(z * Float64(c * y3)))))) + Float64(Float64(Float64(t * j) - Float64(y * k)) * t_5)) - Float64(t_17 * t_1)) + t_13); end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i, j, k, y0, y1, y2, y3, y4, y5) t_1 = (y4 * c) - (y5 * a); t_2 = (x * y2) - (z * y3); t_3 = (y2 * t) - (y3 * y); t_4 = (k * y2) - (j * y3); t_5 = (y4 * b) - (y5 * i); t_6 = ((j * t) - (k * y)) * t_5; t_7 = (b * a) - (i * c); t_8 = t_7 * ((y * x) - (t * z)); t_9 = (j * x) - (k * z); t_10 = ((b * y0) - (i * y1)) * t_9; t_11 = t_9 * ((y0 * b) - (i * y1)); t_12 = (y4 * y1) - (y5 * y0); t_13 = t_4 * t_12; t_14 = ((y2 * k) - (y3 * j)) * t_12; t_15 = (((((k * y) * (y5 * i)) - ((y * b) * (y4 * k))) - ((y5 * t) * (i * j))) - ((t_3 * t_1) - t_14)) + (t_8 - (t_11 - (((y2 * x) - (y3 * z)) * ((c * y0) - (y1 * a))))); t_16 = ((t_6 - ((y3 * y) * ((y5 * a) - (y4 * c)))) + (((y5 * a) * (t * y2)) + t_13)) + ((t_2 * ((c * y0) - (a * y1))) - (t_10 - (((y * x) - (z * t)) * t_7))); t_17 = (t * y2) - (y * y3); tmp = 0.0; if (y4 < -7.206256231996481e+60) tmp = (t_8 - (t_11 - t_6)) - ((t_3 / (1.0 / t_1)) - t_14); elseif (y4 < -3.364603505246317e-66) tmp = (((((t * c) * (i * z)) - ((a * t) * (b * z))) - ((y * c) * (i * x))) - t_10) + ((((y0 * c) - (a * y1)) * t_2) - ((t_17 * ((y4 * c) - (a * y5))) - (((y1 * y4) - (y5 * y0)) * t_4))); elseif (y4 < -1.2000065055686116e-105) tmp = t_16; elseif (y4 < 6.718963124057495e-279) tmp = t_15; elseif (y4 < 4.77962681403792e-222) tmp = t_16; elseif (y4 < 2.2852241541266835e-175) tmp = t_15; else tmp = (((((((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)) * t_5)) - (t_17 * t_1)) + t_13; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_, j_, k_, y0_, y1_, y2_, y3_, y4_, y5_] := Block[{t$95$1 = N[(N[(y4 * c), $MachinePrecision] - N[(y5 * a), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(N[(x * y2), $MachinePrecision] - N[(z * y3), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$3 = N[(N[(y2 * t), $MachinePrecision] - N[(y3 * y), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$4 = N[(N[(k * y2), $MachinePrecision] - N[(j * y3), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$5 = N[(N[(y4 * b), $MachinePrecision] - N[(y5 * i), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$6 = N[(N[(N[(j * t), $MachinePrecision] - N[(k * y), $MachinePrecision]), $MachinePrecision] * t$95$5), $MachinePrecision]}, Block[{t$95$7 = N[(N[(b * a), $MachinePrecision] - N[(i * c), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$8 = N[(t$95$7 * N[(N[(y * x), $MachinePrecision] - N[(t * z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$9 = N[(N[(j * x), $MachinePrecision] - N[(k * z), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$10 = N[(N[(N[(b * y0), $MachinePrecision] - N[(i * y1), $MachinePrecision]), $MachinePrecision] * t$95$9), $MachinePrecision]}, Block[{t$95$11 = N[(t$95$9 * N[(N[(y0 * b), $MachinePrecision] - N[(i * y1), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$12 = N[(N[(y4 * y1), $MachinePrecision] - N[(y5 * y0), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$13 = N[(t$95$4 * t$95$12), $MachinePrecision]}, Block[{t$95$14 = N[(N[(N[(y2 * k), $MachinePrecision] - N[(y3 * j), $MachinePrecision]), $MachinePrecision] * t$95$12), $MachinePrecision]}, Block[{t$95$15 = N[(N[(N[(N[(N[(N[(k * y), $MachinePrecision] * N[(y5 * i), $MachinePrecision]), $MachinePrecision] - N[(N[(y * b), $MachinePrecision] * N[(y4 * k), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - N[(N[(y5 * t), $MachinePrecision] * N[(i * j), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - N[(N[(t$95$3 * t$95$1), $MachinePrecision] - t$95$14), $MachinePrecision]), $MachinePrecision] + N[(t$95$8 - N[(t$95$11 - N[(N[(N[(y2 * x), $MachinePrecision] - N[(y3 * z), $MachinePrecision]), $MachinePrecision] * N[(N[(c * y0), $MachinePrecision] - N[(y1 * a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$16 = N[(N[(N[(t$95$6 - N[(N[(y3 * y), $MachinePrecision] * N[(N[(y5 * a), $MachinePrecision] - N[(y4 * c), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(N[(N[(y5 * a), $MachinePrecision] * N[(t * y2), $MachinePrecision]), $MachinePrecision] + t$95$13), $MachinePrecision]), $MachinePrecision] + N[(N[(t$95$2 * N[(N[(c * y0), $MachinePrecision] - N[(a * y1), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - N[(t$95$10 - N[(N[(N[(y * x), $MachinePrecision] - N[(z * t), $MachinePrecision]), $MachinePrecision] * t$95$7), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$17 = N[(N[(t * y2), $MachinePrecision] - N[(y * y3), $MachinePrecision]), $MachinePrecision]}, If[Less[y4, -7.206256231996481e+60], N[(N[(t$95$8 - N[(t$95$11 - t$95$6), $MachinePrecision]), $MachinePrecision] - N[(N[(t$95$3 / N[(1.0 / t$95$1), $MachinePrecision]), $MachinePrecision] - t$95$14), $MachinePrecision]), $MachinePrecision], If[Less[y4, -3.364603505246317e-66], N[(N[(N[(N[(N[(N[(t * c), $MachinePrecision] * N[(i * z), $MachinePrecision]), $MachinePrecision] - N[(N[(a * t), $MachinePrecision] * N[(b * z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - N[(N[(y * c), $MachinePrecision] * N[(i * x), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - t$95$10), $MachinePrecision] + N[(N[(N[(N[(y0 * c), $MachinePrecision] - N[(a * y1), $MachinePrecision]), $MachinePrecision] * t$95$2), $MachinePrecision] - N[(N[(t$95$17 * N[(N[(y4 * c), $MachinePrecision] - N[(a * y5), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - N[(N[(N[(y1 * y4), $MachinePrecision] - N[(y5 * y0), $MachinePrecision]), $MachinePrecision] * t$95$4), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[Less[y4, -1.2000065055686116e-105], t$95$16, If[Less[y4, 6.718963124057495e-279], t$95$15, If[Less[y4, 4.77962681403792e-222], t$95$16, If[Less[y4, 2.2852241541266835e-175], t$95$15, N[(N[(N[(N[(N[(N[(N[(N[(x * y), $MachinePrecision] - N[(z * t), $MachinePrecision]), $MachinePrecision] * N[(N[(a * b), $MachinePrecision] - N[(c * i), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - N[(N[(k * N[(i * N[(z * y1), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - N[(N[(j * N[(i * N[(x * y1), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(y0 * N[(k * N[(z * b), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(N[(z * N[(y3 * N[(a * y1), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - N[(N[(y2 * N[(x * N[(a * y1), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(y0 * N[(z * N[(c * y3), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(N[(N[(t * j), $MachinePrecision] - N[(y * k), $MachinePrecision]), $MachinePrecision] * t$95$5), $MachinePrecision]), $MachinePrecision] - N[(t$95$17 * t$95$1), $MachinePrecision]), $MachinePrecision] + t$95$13), $MachinePrecision]]]]]]]]]]]]]]]]]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := y4 \cdot c - y5 \cdot a\\
t_2 := x \cdot y2 - z \cdot y3\\
t_3 := y2 \cdot t - y3 \cdot y\\
t_4 := k \cdot y2 - j \cdot y3\\
t_5 := y4 \cdot b - y5 \cdot i\\
t_6 := \left(j \cdot t - k \cdot y\right) \cdot t_5\\
t_7 := b \cdot a - i \cdot c\\
t_8 := t_7 \cdot \left(y \cdot x - t \cdot z\right)\\
t_9 := j \cdot x - k \cdot z\\
t_10 := \left(b \cdot y0 - i \cdot y1\right) \cdot t_9\\
t_11 := t_9 \cdot \left(y0 \cdot b - i \cdot y1\right)\\
t_12 := y4 \cdot y1 - y5 \cdot y0\\
t_13 := t_4 \cdot t_12\\
t_14 := \left(y2 \cdot k - y3 \cdot j\right) \cdot t_12\\
t_15 := \left(\left(\left(\left(k \cdot y\right) \cdot \left(y5 \cdot i\right) - \left(y \cdot b\right) \cdot \left(y4 \cdot k\right)\right) - \left(y5 \cdot t\right) \cdot \left(i \cdot j\right)\right) - \left(t_3 \cdot t_1 - t_14\right)\right) + \left(t_8 - \left(t_11 - \left(y2 \cdot x - y3 \cdot z\right) \cdot \left(c \cdot y0 - y1 \cdot a\right)\right)\right)\\
t_16 := \left(\left(t_6 - \left(y3 \cdot y\right) \cdot \left(y5 \cdot a - y4 \cdot c\right)\right) + \left(\left(y5 \cdot a\right) \cdot \left(t \cdot y2\right) + t_13\right)\right) + \left(t_2 \cdot \left(c \cdot y0 - a \cdot y1\right) - \left(t_10 - \left(y \cdot x - z \cdot t\right) \cdot t_7\right)\right)\\
t_17 := t \cdot y2 - y \cdot y3\\
\mathbf{if}\;y4 < -7.206256231996481 \cdot 10^{+60}:\\
\;\;\;\;\left(t_8 - \left(t_11 - t_6\right)\right) - \left(\frac{t_3}{\frac{1}{t_1}} - t_14\right)\\
\mathbf{elif}\;y4 < -3.364603505246317 \cdot 10^{-66}:\\
\;\;\;\;\left(\left(\left(\left(t \cdot c\right) \cdot \left(i \cdot z\right) - \left(a \cdot t\right) \cdot \left(b \cdot z\right)\right) - \left(y \cdot c\right) \cdot \left(i \cdot x\right)\right) - t_10\right) + \left(\left(y0 \cdot c - a \cdot y1\right) \cdot t_2 - \left(t_17 \cdot \left(y4 \cdot c - a \cdot y5\right) - \left(y1 \cdot y4 - y5 \cdot y0\right) \cdot t_4\right)\right)\\
\mathbf{elif}\;y4 < -1.2000065055686116 \cdot 10^{-105}:\\
\;\;\;\;t_16\\
\mathbf{elif}\;y4 < 6.718963124057495 \cdot 10^{-279}:\\
\;\;\;\;t_15\\
\mathbf{elif}\;y4 < 4.77962681403792 \cdot 10^{-222}:\\
\;\;\;\;t_16\\
\mathbf{elif}\;y4 < 2.2852241541266835 \cdot 10^{-175}:\\
\;\;\;\;t_15\\
\mathbf{else}:\\
\;\;\;\;\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(j \cdot \left(i \cdot \left(x \cdot y1\right)\right) + y0 \cdot \left(k \cdot \left(z \cdot b\right)\right)\right)\right)\right) + \left(z \cdot \left(y3 \cdot \left(a \cdot y1\right)\right) - \left(y2 \cdot \left(x \cdot \left(a \cdot y1\right)\right) + y0 \cdot \left(z \cdot \left(c \cdot y3\right)\right)\right)\right)\right) + \left(t \cdot j - y \cdot k\right) \cdot t_5\right) - t_17 \cdot t_1\right) + t_13\\
\end{array}
\end{array}
herbie shell --seed 2023199
(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"
:precision binary64
: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)))))