
(FPCore (x y z t a b c i) :precision binary64 (* 2.0 (- (+ (* x y) (* z t)) (* (* (+ a (* b c)) c) i))))
double code(double x, double y, double z, double t, double a, double b, double c, double i) {
return 2.0 * (((x * y) + (z * t)) - (((a + (b * c)) * c) * i));
}
real(8) function code(x, y, z, t, a, b, c, i)
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
code = 2.0d0 * (((x * y) + (z * t)) - (((a + (b * c)) * c) * i))
end function
public static double code(double x, double y, double z, double t, double a, double b, double c, double i) {
return 2.0 * (((x * y) + (z * t)) - (((a + (b * c)) * c) * i));
}
def code(x, y, z, t, a, b, c, i): return 2.0 * (((x * y) + (z * t)) - (((a + (b * c)) * c) * i))
function code(x, y, z, t, a, b, c, i) return Float64(2.0 * Float64(Float64(Float64(x * y) + Float64(z * t)) - Float64(Float64(Float64(a + Float64(b * c)) * c) * i))) end
function tmp = code(x, y, z, t, a, b, c, i) tmp = 2.0 * (((x * y) + (z * t)) - (((a + (b * c)) * c) * i)); end
code[x_, y_, z_, t_, a_, b_, c_, i_] := N[(2.0 * N[(N[(N[(x * y), $MachinePrecision] + N[(z * t), $MachinePrecision]), $MachinePrecision] - N[(N[(N[(a + N[(b * c), $MachinePrecision]), $MachinePrecision] * c), $MachinePrecision] * i), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
\begin{array}{l}
\\
2 \cdot \left(\left(x \cdot y + z \cdot t\right) - \left(\left(a + b \cdot c\right) \cdot c\right) \cdot i\right)
\end{array}
Sampling outcomes in binary64 precision:
Herbie found 15 alternatives:
| Alternative | Accuracy | Speedup |
|---|
(FPCore (x y z t a b c i) :precision binary64 (* 2.0 (- (+ (* x y) (* z t)) (* (* (+ a (* b c)) c) i))))
double code(double x, double y, double z, double t, double a, double b, double c, double i) {
return 2.0 * (((x * y) + (z * t)) - (((a + (b * c)) * c) * i));
}
real(8) function code(x, y, z, t, a, b, c, i)
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
code = 2.0d0 * (((x * y) + (z * t)) - (((a + (b * c)) * c) * i))
end function
public static double code(double x, double y, double z, double t, double a, double b, double c, double i) {
return 2.0 * (((x * y) + (z * t)) - (((a + (b * c)) * c) * i));
}
def code(x, y, z, t, a, b, c, i): return 2.0 * (((x * y) + (z * t)) - (((a + (b * c)) * c) * i))
function code(x, y, z, t, a, b, c, i) return Float64(2.0 * Float64(Float64(Float64(x * y) + Float64(z * t)) - Float64(Float64(Float64(a + Float64(b * c)) * c) * i))) end
function tmp = code(x, y, z, t, a, b, c, i) tmp = 2.0 * (((x * y) + (z * t)) - (((a + (b * c)) * c) * i)); end
code[x_, y_, z_, t_, a_, b_, c_, i_] := N[(2.0 * N[(N[(N[(x * y), $MachinePrecision] + N[(z * t), $MachinePrecision]), $MachinePrecision] - N[(N[(N[(a + N[(b * c), $MachinePrecision]), $MachinePrecision] * c), $MachinePrecision] * i), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
\begin{array}{l}
\\
2 \cdot \left(\left(x \cdot y + z \cdot t\right) - \left(\left(a + b \cdot c\right) \cdot c\right) \cdot i\right)
\end{array}
(FPCore (x y z t a b c i)
:precision binary64
(let* ((t_1 (+ a (* b c))))
(if (<= (- (+ (* x y) (* z t)) (* (* t_1 c) i)) INFINITY)
(* (+ (* x y) (- (* z t) (* t_1 (* c i)))) 2.0)
(* (- t (/ (* c (* i (+ a (* c b)))) z)) (* z 2.0)))))
double code(double x, double y, double z, double t, double a, double b, double c, double i) {
double t_1 = a + (b * c);
double tmp;
if ((((x * y) + (z * t)) - ((t_1 * c) * i)) <= ((double) INFINITY)) {
tmp = ((x * y) + ((z * t) - (t_1 * (c * i)))) * 2.0;
} else {
tmp = (t - ((c * (i * (a + (c * b)))) / z)) * (z * 2.0);
}
return tmp;
}
public static double code(double x, double y, double z, double t, double a, double b, double c, double i) {
double t_1 = a + (b * c);
double tmp;
if ((((x * y) + (z * t)) - ((t_1 * c) * i)) <= Double.POSITIVE_INFINITY) {
tmp = ((x * y) + ((z * t) - (t_1 * (c * i)))) * 2.0;
} else {
tmp = (t - ((c * (i * (a + (c * b)))) / z)) * (z * 2.0);
}
return tmp;
}
def code(x, y, z, t, a, b, c, i): t_1 = a + (b * c) tmp = 0 if (((x * y) + (z * t)) - ((t_1 * c) * i)) <= math.inf: tmp = ((x * y) + ((z * t) - (t_1 * (c * i)))) * 2.0 else: tmp = (t - ((c * (i * (a + (c * b)))) / z)) * (z * 2.0) return tmp
function code(x, y, z, t, a, b, c, i) t_1 = Float64(a + Float64(b * c)) tmp = 0.0 if (Float64(Float64(Float64(x * y) + Float64(z * t)) - Float64(Float64(t_1 * c) * i)) <= Inf) tmp = Float64(Float64(Float64(x * y) + Float64(Float64(z * t) - Float64(t_1 * Float64(c * i)))) * 2.0); else tmp = Float64(Float64(t - Float64(Float64(c * Float64(i * Float64(a + Float64(c * b)))) / z)) * Float64(z * 2.0)); end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i) t_1 = a + (b * c); tmp = 0.0; if ((((x * y) + (z * t)) - ((t_1 * c) * i)) <= Inf) tmp = ((x * y) + ((z * t) - (t_1 * (c * i)))) * 2.0; else tmp = (t - ((c * (i * (a + (c * b)))) / z)) * (z * 2.0); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_] := Block[{t$95$1 = N[(a + N[(b * c), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[N[(N[(N[(x * y), $MachinePrecision] + N[(z * t), $MachinePrecision]), $MachinePrecision] - N[(N[(t$95$1 * c), $MachinePrecision] * i), $MachinePrecision]), $MachinePrecision], Infinity], N[(N[(N[(x * y), $MachinePrecision] + N[(N[(z * t), $MachinePrecision] - N[(t$95$1 * N[(c * i), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * 2.0), $MachinePrecision], N[(N[(t - N[(N[(c * N[(i * N[(a + N[(c * b), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / z), $MachinePrecision]), $MachinePrecision] * N[(z * 2.0), $MachinePrecision]), $MachinePrecision]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := a + b \cdot c\\
\mathbf{if}\;\left(x \cdot y + z \cdot t\right) - \left(t\_1 \cdot c\right) \cdot i \leq \infty:\\
\;\;\;\;\left(x \cdot y + \left(z \cdot t - t\_1 \cdot \left(c \cdot i\right)\right)\right) \cdot 2\\
\mathbf{else}:\\
\;\;\;\;\left(t - \frac{c \cdot \left(i \cdot \left(a + c \cdot b\right)\right)}{z}\right) \cdot \left(z \cdot 2\right)\\
\end{array}
\end{array}
if (-.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 (*.f64 (+.f64 a (*.f64 b c)) c) i)) < +inf.0Initial program 93.0%
Applied egg-rr0
if +inf.0 < (-.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 (*.f64 (+.f64 a (*.f64 b c)) c) i)) Initial program 0.0%
Applied egg-rr0
Taylor expanded in z around inf 0
Simplified0
Taylor expanded in x around 0 0
Simplified0
(FPCore (x y z t a b c i)
:precision binary64
(let* ((t_1 (+ a (* b c)))
(t_2 (* 2.0 (- (* x y) (* c (* i t_1)))))
(t_3 (* (* t_1 c) i))
(t_4 (* 2.0 (- (* t z) t_3))))
(if (<= t_3 (- INFINITY))
t_2
(if (<= t_3 -2e+94)
t_4
(if (<= t_3 1e+115)
(* 2.0 (+ (* t z) (* x y)))
(if (<= t_3 2e+284) t_4 t_2))))))
double code(double x, double y, double z, double t, double a, double b, double c, double i) {
double t_1 = a + (b * c);
double t_2 = 2.0 * ((x * y) - (c * (i * t_1)));
double t_3 = (t_1 * c) * i;
double t_4 = 2.0 * ((t * z) - t_3);
double tmp;
if (t_3 <= -((double) INFINITY)) {
tmp = t_2;
} else if (t_3 <= -2e+94) {
tmp = t_4;
} else if (t_3 <= 1e+115) {
tmp = 2.0 * ((t * z) + (x * y));
} else if (t_3 <= 2e+284) {
tmp = t_4;
} else {
tmp = t_2;
}
return tmp;
}
public static double code(double x, double y, double z, double t, double a, double b, double c, double i) {
double t_1 = a + (b * c);
double t_2 = 2.0 * ((x * y) - (c * (i * t_1)));
double t_3 = (t_1 * c) * i;
double t_4 = 2.0 * ((t * z) - t_3);
double tmp;
if (t_3 <= -Double.POSITIVE_INFINITY) {
tmp = t_2;
} else if (t_3 <= -2e+94) {
tmp = t_4;
} else if (t_3 <= 1e+115) {
tmp = 2.0 * ((t * z) + (x * y));
} else if (t_3 <= 2e+284) {
tmp = t_4;
} else {
tmp = t_2;
}
return tmp;
}
def code(x, y, z, t, a, b, c, i): t_1 = a + (b * c) t_2 = 2.0 * ((x * y) - (c * (i * t_1))) t_3 = (t_1 * c) * i t_4 = 2.0 * ((t * z) - t_3) tmp = 0 if t_3 <= -math.inf: tmp = t_2 elif t_3 <= -2e+94: tmp = t_4 elif t_3 <= 1e+115: tmp = 2.0 * ((t * z) + (x * y)) elif t_3 <= 2e+284: tmp = t_4 else: tmp = t_2 return tmp
function code(x, y, z, t, a, b, c, i) t_1 = Float64(a + Float64(b * c)) t_2 = Float64(2.0 * Float64(Float64(x * y) - Float64(c * Float64(i * t_1)))) t_3 = Float64(Float64(t_1 * c) * i) t_4 = Float64(2.0 * Float64(Float64(t * z) - t_3)) tmp = 0.0 if (t_3 <= Float64(-Inf)) tmp = t_2; elseif (t_3 <= -2e+94) tmp = t_4; elseif (t_3 <= 1e+115) tmp = Float64(2.0 * Float64(Float64(t * z) + Float64(x * y))); elseif (t_3 <= 2e+284) tmp = t_4; else tmp = t_2; end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i) t_1 = a + (b * c); t_2 = 2.0 * ((x * y) - (c * (i * t_1))); t_3 = (t_1 * c) * i; t_4 = 2.0 * ((t * z) - t_3); tmp = 0.0; if (t_3 <= -Inf) tmp = t_2; elseif (t_3 <= -2e+94) tmp = t_4; elseif (t_3 <= 1e+115) tmp = 2.0 * ((t * z) + (x * y)); elseif (t_3 <= 2e+284) tmp = t_4; else tmp = t_2; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_] := Block[{t$95$1 = N[(a + N[(b * c), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(2.0 * N[(N[(x * y), $MachinePrecision] - N[(c * N[(i * t$95$1), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$3 = N[(N[(t$95$1 * c), $MachinePrecision] * i), $MachinePrecision]}, Block[{t$95$4 = N[(2.0 * N[(N[(t * z), $MachinePrecision] - t$95$3), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t$95$3, (-Infinity)], t$95$2, If[LessEqual[t$95$3, -2e+94], t$95$4, If[LessEqual[t$95$3, 1e+115], N[(2.0 * N[(N[(t * z), $MachinePrecision] + N[(x * y), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t$95$3, 2e+284], t$95$4, t$95$2]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := a + b \cdot c\\
t_2 := 2 \cdot \left(x \cdot y - c \cdot \left(i \cdot t\_1\right)\right)\\
t_3 := \left(t\_1 \cdot c\right) \cdot i\\
t_4 := 2 \cdot \left(t \cdot z - t\_3\right)\\
\mathbf{if}\;t\_3 \leq -\infty:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;t\_3 \leq -2 \cdot 10^{+94}:\\
\;\;\;\;t\_4\\
\mathbf{elif}\;t\_3 \leq 10^{+115}:\\
\;\;\;\;2 \cdot \left(t \cdot z + x \cdot y\right)\\
\mathbf{elif}\;t\_3 \leq 2 \cdot 10^{+284}:\\
\;\;\;\;t\_4\\
\mathbf{else}:\\
\;\;\;\;t\_2\\
\end{array}
\end{array}
if (*.f64 (*.f64 (+.f64 a (*.f64 b c)) c) i) < -inf.0 or 2.00000000000000016e284 < (*.f64 (*.f64 (+.f64 a (*.f64 b c)) c) i) Initial program 73.2%
Taylor expanded in z around 0 0
Simplified0
if -inf.0 < (*.f64 (*.f64 (+.f64 a (*.f64 b c)) c) i) < -2e94 or 1e115 < (*.f64 (*.f64 (+.f64 a (*.f64 b c)) c) i) < 2.00000000000000016e284Initial program 99.8%
Taylor expanded in x around 0 0
Simplified0
if -2e94 < (*.f64 (*.f64 (+.f64 a (*.f64 b c)) c) i) < 1e115Initial program 98.3%
Taylor expanded in c around 0 0
Simplified0
(FPCore (x y z t a b c i)
:precision binary64
(let* ((t_1 (+ a (* b c)))
(t_2 (* (* i t_1) (* c -2.0)))
(t_3 (* (* t_1 c) i))
(t_4 (* 2.0 (- (* t z) t_3))))
(if (<= t_3 (- INFINITY))
t_2
(if (<= t_3 -2e+94)
t_4
(if (<= t_3 1e+115)
(* 2.0 (+ (* t z) (* x y)))
(if (<= t_3 2e+284) t_4 t_2))))))
double code(double x, double y, double z, double t, double a, double b, double c, double i) {
double t_1 = a + (b * c);
double t_2 = (i * t_1) * (c * -2.0);
double t_3 = (t_1 * c) * i;
double t_4 = 2.0 * ((t * z) - t_3);
double tmp;
if (t_3 <= -((double) INFINITY)) {
tmp = t_2;
} else if (t_3 <= -2e+94) {
tmp = t_4;
} else if (t_3 <= 1e+115) {
tmp = 2.0 * ((t * z) + (x * y));
} else if (t_3 <= 2e+284) {
tmp = t_4;
} else {
tmp = t_2;
}
return tmp;
}
public static double code(double x, double y, double z, double t, double a, double b, double c, double i) {
double t_1 = a + (b * c);
double t_2 = (i * t_1) * (c * -2.0);
double t_3 = (t_1 * c) * i;
double t_4 = 2.0 * ((t * z) - t_3);
double tmp;
if (t_3 <= -Double.POSITIVE_INFINITY) {
tmp = t_2;
} else if (t_3 <= -2e+94) {
tmp = t_4;
} else if (t_3 <= 1e+115) {
tmp = 2.0 * ((t * z) + (x * y));
} else if (t_3 <= 2e+284) {
tmp = t_4;
} else {
tmp = t_2;
}
return tmp;
}
def code(x, y, z, t, a, b, c, i): t_1 = a + (b * c) t_2 = (i * t_1) * (c * -2.0) t_3 = (t_1 * c) * i t_4 = 2.0 * ((t * z) - t_3) tmp = 0 if t_3 <= -math.inf: tmp = t_2 elif t_3 <= -2e+94: tmp = t_4 elif t_3 <= 1e+115: tmp = 2.0 * ((t * z) + (x * y)) elif t_3 <= 2e+284: tmp = t_4 else: tmp = t_2 return tmp
function code(x, y, z, t, a, b, c, i) t_1 = Float64(a + Float64(b * c)) t_2 = Float64(Float64(i * t_1) * Float64(c * -2.0)) t_3 = Float64(Float64(t_1 * c) * i) t_4 = Float64(2.0 * Float64(Float64(t * z) - t_3)) tmp = 0.0 if (t_3 <= Float64(-Inf)) tmp = t_2; elseif (t_3 <= -2e+94) tmp = t_4; elseif (t_3 <= 1e+115) tmp = Float64(2.0 * Float64(Float64(t * z) + Float64(x * y))); elseif (t_3 <= 2e+284) tmp = t_4; else tmp = t_2; end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i) t_1 = a + (b * c); t_2 = (i * t_1) * (c * -2.0); t_3 = (t_1 * c) * i; t_4 = 2.0 * ((t * z) - t_3); tmp = 0.0; if (t_3 <= -Inf) tmp = t_2; elseif (t_3 <= -2e+94) tmp = t_4; elseif (t_3 <= 1e+115) tmp = 2.0 * ((t * z) + (x * y)); elseif (t_3 <= 2e+284) tmp = t_4; else tmp = t_2; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_] := Block[{t$95$1 = N[(a + N[(b * c), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(N[(i * t$95$1), $MachinePrecision] * N[(c * -2.0), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$3 = N[(N[(t$95$1 * c), $MachinePrecision] * i), $MachinePrecision]}, Block[{t$95$4 = N[(2.0 * N[(N[(t * z), $MachinePrecision] - t$95$3), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t$95$3, (-Infinity)], t$95$2, If[LessEqual[t$95$3, -2e+94], t$95$4, If[LessEqual[t$95$3, 1e+115], N[(2.0 * N[(N[(t * z), $MachinePrecision] + N[(x * y), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t$95$3, 2e+284], t$95$4, t$95$2]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := a + b \cdot c\\
t_2 := \left(i \cdot t\_1\right) \cdot \left(c \cdot -2\right)\\
t_3 := \left(t\_1 \cdot c\right) \cdot i\\
t_4 := 2 \cdot \left(t \cdot z - t\_3\right)\\
\mathbf{if}\;t\_3 \leq -\infty:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;t\_3 \leq -2 \cdot 10^{+94}:\\
\;\;\;\;t\_4\\
\mathbf{elif}\;t\_3 \leq 10^{+115}:\\
\;\;\;\;2 \cdot \left(t \cdot z + x \cdot y\right)\\
\mathbf{elif}\;t\_3 \leq 2 \cdot 10^{+284}:\\
\;\;\;\;t\_4\\
\mathbf{else}:\\
\;\;\;\;t\_2\\
\end{array}
\end{array}
if (*.f64 (*.f64 (+.f64 a (*.f64 b c)) c) i) < -inf.0 or 2.00000000000000016e284 < (*.f64 (*.f64 (+.f64 a (*.f64 b c)) c) i) Initial program 73.2%
Taylor expanded in i around inf 0
Simplified0
if -inf.0 < (*.f64 (*.f64 (+.f64 a (*.f64 b c)) c) i) < -2e94 or 1e115 < (*.f64 (*.f64 (+.f64 a (*.f64 b c)) c) i) < 2.00000000000000016e284Initial program 99.8%
Taylor expanded in x around 0 0
Simplified0
if -2e94 < (*.f64 (*.f64 (+.f64 a (*.f64 b c)) c) i) < 1e115Initial program 98.3%
Taylor expanded in c around 0 0
Simplified0
(FPCore (x y z t a b c i)
:precision binary64
(let* ((t_1 (+ a (* b c)))
(t_2 (* 2.0 (- (* x y) (* c (* i t_1)))))
(t_3 (* t_1 c)))
(if (<= t_3 (- INFINITY))
t_2
(if (<= t_3 1e+267) (* 2.0 (- (+ (* x y) (* z t)) (* t_3 i))) t_2))))
double code(double x, double y, double z, double t, double a, double b, double c, double i) {
double t_1 = a + (b * c);
double t_2 = 2.0 * ((x * y) - (c * (i * t_1)));
double t_3 = t_1 * c;
double tmp;
if (t_3 <= -((double) INFINITY)) {
tmp = t_2;
} else if (t_3 <= 1e+267) {
tmp = 2.0 * (((x * y) + (z * t)) - (t_3 * i));
} else {
tmp = t_2;
}
return tmp;
}
public static double code(double x, double y, double z, double t, double a, double b, double c, double i) {
double t_1 = a + (b * c);
double t_2 = 2.0 * ((x * y) - (c * (i * t_1)));
double t_3 = t_1 * c;
double tmp;
if (t_3 <= -Double.POSITIVE_INFINITY) {
tmp = t_2;
} else if (t_3 <= 1e+267) {
tmp = 2.0 * (((x * y) + (z * t)) - (t_3 * i));
} else {
tmp = t_2;
}
return tmp;
}
def code(x, y, z, t, a, b, c, i): t_1 = a + (b * c) t_2 = 2.0 * ((x * y) - (c * (i * t_1))) t_3 = t_1 * c tmp = 0 if t_3 <= -math.inf: tmp = t_2 elif t_3 <= 1e+267: tmp = 2.0 * (((x * y) + (z * t)) - (t_3 * i)) else: tmp = t_2 return tmp
function code(x, y, z, t, a, b, c, i) t_1 = Float64(a + Float64(b * c)) t_2 = Float64(2.0 * Float64(Float64(x * y) - Float64(c * Float64(i * t_1)))) t_3 = Float64(t_1 * c) tmp = 0.0 if (t_3 <= Float64(-Inf)) tmp = t_2; elseif (t_3 <= 1e+267) tmp = Float64(2.0 * Float64(Float64(Float64(x * y) + Float64(z * t)) - Float64(t_3 * i))); else tmp = t_2; end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i) t_1 = a + (b * c); t_2 = 2.0 * ((x * y) - (c * (i * t_1))); t_3 = t_1 * c; tmp = 0.0; if (t_3 <= -Inf) tmp = t_2; elseif (t_3 <= 1e+267) tmp = 2.0 * (((x * y) + (z * t)) - (t_3 * i)); else tmp = t_2; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_] := Block[{t$95$1 = N[(a + N[(b * c), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(2.0 * N[(N[(x * y), $MachinePrecision] - N[(c * N[(i * t$95$1), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$3 = N[(t$95$1 * c), $MachinePrecision]}, If[LessEqual[t$95$3, (-Infinity)], t$95$2, If[LessEqual[t$95$3, 1e+267], N[(2.0 * N[(N[(N[(x * y), $MachinePrecision] + N[(z * t), $MachinePrecision]), $MachinePrecision] - N[(t$95$3 * i), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], t$95$2]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := a + b \cdot c\\
t_2 := 2 \cdot \left(x \cdot y - c \cdot \left(i \cdot t\_1\right)\right)\\
t_3 := t\_1 \cdot c\\
\mathbf{if}\;t\_3 \leq -\infty:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;t\_3 \leq 10^{+267}:\\
\;\;\;\;2 \cdot \left(\left(x \cdot y + z \cdot t\right) - t\_3 \cdot i\right)\\
\mathbf{else}:\\
\;\;\;\;t\_2\\
\end{array}
\end{array}
if (*.f64 (+.f64 a (*.f64 b c)) c) < -inf.0 or 9.9999999999999997e266 < (*.f64 (+.f64 a (*.f64 b c)) c) Initial program 67.5%
Taylor expanded in z around 0 0
Simplified0
if -inf.0 < (*.f64 (+.f64 a (*.f64 b c)) c) < 9.9999999999999997e266Initial program 98.3%
(FPCore (x y z t a b c i)
:precision binary64
(let* ((t_1 (* 2.0 (+ (* t z) (* x y))))
(t_2 (* (* i (+ a (* b c))) (* c -2.0))))
(if (<= c -3.5e+159)
t_2
(if (<= c -4.1e+114)
t_1
(if (<= c -100000000.0)
(* (* (* c -2.0) c) (* i (+ b (/ a c))))
(if (<= c 5e+39) t_1 t_2))))))
double code(double x, double y, double z, double t, double a, double b, double c, double i) {
double t_1 = 2.0 * ((t * z) + (x * y));
double t_2 = (i * (a + (b * c))) * (c * -2.0);
double tmp;
if (c <= -3.5e+159) {
tmp = t_2;
} else if (c <= -4.1e+114) {
tmp = t_1;
} else if (c <= -100000000.0) {
tmp = ((c * -2.0) * c) * (i * (b + (a / c)));
} else if (c <= 5e+39) {
tmp = t_1;
} else {
tmp = t_2;
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i)
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) :: t_1
real(8) :: t_2
real(8) :: tmp
t_1 = 2.0d0 * ((t * z) + (x * y))
t_2 = (i * (a + (b * c))) * (c * (-2.0d0))
if (c <= (-3.5d+159)) then
tmp = t_2
else if (c <= (-4.1d+114)) then
tmp = t_1
else if (c <= (-100000000.0d0)) then
tmp = ((c * (-2.0d0)) * c) * (i * (b + (a / c)))
else if (c <= 5d+39) 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 t_1 = 2.0 * ((t * z) + (x * y));
double t_2 = (i * (a + (b * c))) * (c * -2.0);
double tmp;
if (c <= -3.5e+159) {
tmp = t_2;
} else if (c <= -4.1e+114) {
tmp = t_1;
} else if (c <= -100000000.0) {
tmp = ((c * -2.0) * c) * (i * (b + (a / c)));
} else if (c <= 5e+39) {
tmp = t_1;
} else {
tmp = t_2;
}
return tmp;
}
def code(x, y, z, t, a, b, c, i): t_1 = 2.0 * ((t * z) + (x * y)) t_2 = (i * (a + (b * c))) * (c * -2.0) tmp = 0 if c <= -3.5e+159: tmp = t_2 elif c <= -4.1e+114: tmp = t_1 elif c <= -100000000.0: tmp = ((c * -2.0) * c) * (i * (b + (a / c))) elif c <= 5e+39: tmp = t_1 else: tmp = t_2 return tmp
function code(x, y, z, t, a, b, c, i) t_1 = Float64(2.0 * Float64(Float64(t * z) + Float64(x * y))) t_2 = Float64(Float64(i * Float64(a + Float64(b * c))) * Float64(c * -2.0)) tmp = 0.0 if (c <= -3.5e+159) tmp = t_2; elseif (c <= -4.1e+114) tmp = t_1; elseif (c <= -100000000.0) tmp = Float64(Float64(Float64(c * -2.0) * c) * Float64(i * Float64(b + Float64(a / c)))); elseif (c <= 5e+39) tmp = t_1; else tmp = t_2; end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i) t_1 = 2.0 * ((t * z) + (x * y)); t_2 = (i * (a + (b * c))) * (c * -2.0); tmp = 0.0; if (c <= -3.5e+159) tmp = t_2; elseif (c <= -4.1e+114) tmp = t_1; elseif (c <= -100000000.0) tmp = ((c * -2.0) * c) * (i * (b + (a / c))); elseif (c <= 5e+39) tmp = t_1; else tmp = t_2; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_] := Block[{t$95$1 = N[(2.0 * N[(N[(t * z), $MachinePrecision] + N[(x * y), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(N[(i * N[(a + N[(b * c), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * N[(c * -2.0), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[c, -3.5e+159], t$95$2, If[LessEqual[c, -4.1e+114], t$95$1, If[LessEqual[c, -100000000.0], N[(N[(N[(c * -2.0), $MachinePrecision] * c), $MachinePrecision] * N[(i * N[(b + N[(a / c), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[c, 5e+39], t$95$1, t$95$2]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := 2 \cdot \left(t \cdot z + x \cdot y\right)\\
t_2 := \left(i \cdot \left(a + b \cdot c\right)\right) \cdot \left(c \cdot -2\right)\\
\mathbf{if}\;c \leq -3.5 \cdot 10^{+159}:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;c \leq -4.1 \cdot 10^{+114}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;c \leq -100000000:\\
\;\;\;\;\left(\left(c \cdot -2\right) \cdot c\right) \cdot \left(i \cdot \left(b + \frac{a}{c}\right)\right)\\
\mathbf{elif}\;c \leq 5 \cdot 10^{+39}:\\
\;\;\;\;t\_1\\
\mathbf{else}:\\
\;\;\;\;t\_2\\
\end{array}
\end{array}
if c < -3.4999999999999999e159 or 5.00000000000000015e39 < c Initial program 79.4%
Taylor expanded in i around inf 0
Simplified0
if -3.4999999999999999e159 < c < -4.1000000000000001e114 or -1e8 < c < 5.00000000000000015e39Initial program 96.2%
Taylor expanded in c around 0 0
Simplified0
if -4.1000000000000001e114 < c < -1e8Initial program 81.6%
Taylor expanded in c around inf 0
Simplified0
(FPCore (x y z t a b c i)
:precision binary64
(let* ((t_1 (* 2.0 (+ (* t z) (* x y))))
(t_2 (* (* i (+ a (* b c))) (* c -2.0))))
(if (<= c -3.5e+159)
t_2
(if (<= c -4.7e+114)
t_1
(if (<= c -120000.0) t_2 (if (<= c 4.8e+38) t_1 t_2))))))
double code(double x, double y, double z, double t, double a, double b, double c, double i) {
double t_1 = 2.0 * ((t * z) + (x * y));
double t_2 = (i * (a + (b * c))) * (c * -2.0);
double tmp;
if (c <= -3.5e+159) {
tmp = t_2;
} else if (c <= -4.7e+114) {
tmp = t_1;
} else if (c <= -120000.0) {
tmp = t_2;
} else if (c <= 4.8e+38) {
tmp = t_1;
} else {
tmp = t_2;
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i)
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) :: t_1
real(8) :: t_2
real(8) :: tmp
t_1 = 2.0d0 * ((t * z) + (x * y))
t_2 = (i * (a + (b * c))) * (c * (-2.0d0))
if (c <= (-3.5d+159)) then
tmp = t_2
else if (c <= (-4.7d+114)) then
tmp = t_1
else if (c <= (-120000.0d0)) then
tmp = t_2
else if (c <= 4.8d+38) 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 t_1 = 2.0 * ((t * z) + (x * y));
double t_2 = (i * (a + (b * c))) * (c * -2.0);
double tmp;
if (c <= -3.5e+159) {
tmp = t_2;
} else if (c <= -4.7e+114) {
tmp = t_1;
} else if (c <= -120000.0) {
tmp = t_2;
} else if (c <= 4.8e+38) {
tmp = t_1;
} else {
tmp = t_2;
}
return tmp;
}
def code(x, y, z, t, a, b, c, i): t_1 = 2.0 * ((t * z) + (x * y)) t_2 = (i * (a + (b * c))) * (c * -2.0) tmp = 0 if c <= -3.5e+159: tmp = t_2 elif c <= -4.7e+114: tmp = t_1 elif c <= -120000.0: tmp = t_2 elif c <= 4.8e+38: tmp = t_1 else: tmp = t_2 return tmp
function code(x, y, z, t, a, b, c, i) t_1 = Float64(2.0 * Float64(Float64(t * z) + Float64(x * y))) t_2 = Float64(Float64(i * Float64(a + Float64(b * c))) * Float64(c * -2.0)) tmp = 0.0 if (c <= -3.5e+159) tmp = t_2; elseif (c <= -4.7e+114) tmp = t_1; elseif (c <= -120000.0) tmp = t_2; elseif (c <= 4.8e+38) tmp = t_1; else tmp = t_2; end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i) t_1 = 2.0 * ((t * z) + (x * y)); t_2 = (i * (a + (b * c))) * (c * -2.0); tmp = 0.0; if (c <= -3.5e+159) tmp = t_2; elseif (c <= -4.7e+114) tmp = t_1; elseif (c <= -120000.0) tmp = t_2; elseif (c <= 4.8e+38) tmp = t_1; else tmp = t_2; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_] := Block[{t$95$1 = N[(2.0 * N[(N[(t * z), $MachinePrecision] + N[(x * y), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(N[(i * N[(a + N[(b * c), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * N[(c * -2.0), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[c, -3.5e+159], t$95$2, If[LessEqual[c, -4.7e+114], t$95$1, If[LessEqual[c, -120000.0], t$95$2, If[LessEqual[c, 4.8e+38], t$95$1, t$95$2]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := 2 \cdot \left(t \cdot z + x \cdot y\right)\\
t_2 := \left(i \cdot \left(a + b \cdot c\right)\right) \cdot \left(c \cdot -2\right)\\
\mathbf{if}\;c \leq -3.5 \cdot 10^{+159}:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;c \leq -4.7 \cdot 10^{+114}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;c \leq -120000:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;c \leq 4.8 \cdot 10^{+38}:\\
\;\;\;\;t\_1\\
\mathbf{else}:\\
\;\;\;\;t\_2\\
\end{array}
\end{array}
if c < -3.4999999999999999e159 or -4.7000000000000001e114 < c < -1.2e5 or 4.80000000000000035e38 < c Initial program 79.9%
Taylor expanded in i around inf 0
Simplified0
if -3.4999999999999999e159 < c < -4.7000000000000001e114 or -1.2e5 < c < 4.80000000000000035e38Initial program 96.2%
Taylor expanded in c around 0 0
Simplified0
(FPCore (x y z t a b c i)
:precision binary64
(let* ((t_1 (* 2.0 (+ (* t z) (* x y)))))
(if (<= c -3.5e+159)
(* (* c (* b (* i (- c)))) 2.0)
(if (<= c -3.2e+90)
t_1
(if (<= c -4.2e+69)
(* c (* (* c (* i b)) -2.0))
(if (<= c 7.8e+105) t_1 (* (* b (* c (* -2.0 i))) c)))))))
double code(double x, double y, double z, double t, double a, double b, double c, double i) {
double t_1 = 2.0 * ((t * z) + (x * y));
double tmp;
if (c <= -3.5e+159) {
tmp = (c * (b * (i * -c))) * 2.0;
} else if (c <= -3.2e+90) {
tmp = t_1;
} else if (c <= -4.2e+69) {
tmp = c * ((c * (i * b)) * -2.0);
} else if (c <= 7.8e+105) {
tmp = t_1;
} else {
tmp = (b * (c * (-2.0 * i))) * c;
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i)
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) :: t_1
real(8) :: tmp
t_1 = 2.0d0 * ((t * z) + (x * y))
if (c <= (-3.5d+159)) then
tmp = (c * (b * (i * -c))) * 2.0d0
else if (c <= (-3.2d+90)) then
tmp = t_1
else if (c <= (-4.2d+69)) then
tmp = c * ((c * (i * b)) * (-2.0d0))
else if (c <= 7.8d+105) then
tmp = t_1
else
tmp = (b * (c * ((-2.0d0) * i))) * c
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 t_1 = 2.0 * ((t * z) + (x * y));
double tmp;
if (c <= -3.5e+159) {
tmp = (c * (b * (i * -c))) * 2.0;
} else if (c <= -3.2e+90) {
tmp = t_1;
} else if (c <= -4.2e+69) {
tmp = c * ((c * (i * b)) * -2.0);
} else if (c <= 7.8e+105) {
tmp = t_1;
} else {
tmp = (b * (c * (-2.0 * i))) * c;
}
return tmp;
}
def code(x, y, z, t, a, b, c, i): t_1 = 2.0 * ((t * z) + (x * y)) tmp = 0 if c <= -3.5e+159: tmp = (c * (b * (i * -c))) * 2.0 elif c <= -3.2e+90: tmp = t_1 elif c <= -4.2e+69: tmp = c * ((c * (i * b)) * -2.0) elif c <= 7.8e+105: tmp = t_1 else: tmp = (b * (c * (-2.0 * i))) * c return tmp
function code(x, y, z, t, a, b, c, i) t_1 = Float64(2.0 * Float64(Float64(t * z) + Float64(x * y))) tmp = 0.0 if (c <= -3.5e+159) tmp = Float64(Float64(c * Float64(b * Float64(i * Float64(-c)))) * 2.0); elseif (c <= -3.2e+90) tmp = t_1; elseif (c <= -4.2e+69) tmp = Float64(c * Float64(Float64(c * Float64(i * b)) * -2.0)); elseif (c <= 7.8e+105) tmp = t_1; else tmp = Float64(Float64(b * Float64(c * Float64(-2.0 * i))) * c); end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i) t_1 = 2.0 * ((t * z) + (x * y)); tmp = 0.0; if (c <= -3.5e+159) tmp = (c * (b * (i * -c))) * 2.0; elseif (c <= -3.2e+90) tmp = t_1; elseif (c <= -4.2e+69) tmp = c * ((c * (i * b)) * -2.0); elseif (c <= 7.8e+105) tmp = t_1; else tmp = (b * (c * (-2.0 * i))) * c; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_] := Block[{t$95$1 = N[(2.0 * N[(N[(t * z), $MachinePrecision] + N[(x * y), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[c, -3.5e+159], N[(N[(c * N[(b * N[(i * (-c)), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * 2.0), $MachinePrecision], If[LessEqual[c, -3.2e+90], t$95$1, If[LessEqual[c, -4.2e+69], N[(c * N[(N[(c * N[(i * b), $MachinePrecision]), $MachinePrecision] * -2.0), $MachinePrecision]), $MachinePrecision], If[LessEqual[c, 7.8e+105], t$95$1, N[(N[(b * N[(c * N[(-2.0 * i), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * c), $MachinePrecision]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := 2 \cdot \left(t \cdot z + x \cdot y\right)\\
\mathbf{if}\;c \leq -3.5 \cdot 10^{+159}:\\
\;\;\;\;\left(c \cdot \left(b \cdot \left(i \cdot \left(-c\right)\right)\right)\right) \cdot 2\\
\mathbf{elif}\;c \leq -3.2 \cdot 10^{+90}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;c \leq -4.2 \cdot 10^{+69}:\\
\;\;\;\;c \cdot \left(\left(c \cdot \left(i \cdot b\right)\right) \cdot -2\right)\\
\mathbf{elif}\;c \leq 7.8 \cdot 10^{+105}:\\
\;\;\;\;t\_1\\
\mathbf{else}:\\
\;\;\;\;\left(b \cdot \left(c \cdot \left(-2 \cdot i\right)\right)\right) \cdot c\\
\end{array}
\end{array}
if c < -3.4999999999999999e159Initial program 73.6%
Applied egg-rr0
Taylor expanded in b around inf 0
Simplified0
if -3.4999999999999999e159 < c < -3.19999999999999998e90 or -4.2000000000000003e69 < c < 7.79999999999999957e105Initial program 95.1%
Taylor expanded in c around 0 0
Simplified0
if -3.19999999999999998e90 < c < -4.2000000000000003e69Initial program 68.4%
Applied egg-rr0
Taylor expanded in b around inf 0
Simplified0
Taylor expanded in c around 0 0
Simplified0
if 7.79999999999999957e105 < c Initial program 80.9%
Applied egg-rr0
Taylor expanded in b around inf 0
Simplified0
Taylor expanded in c around 0 0
Simplified0
Applied egg-rr0
(FPCore (x y z t a b c i)
:precision binary64
(let* ((t_1 (* 2.0 (+ (* t z) (* x y)))))
(if (<= c -6.4e+159)
(* (* (* c i) (* b c)) -2.0)
(if (<= c -5.5e+90)
t_1
(if (<= c -3.6e+67)
(* c (* (* c (* i b)) -2.0))
(if (<= c 1.35e+102) t_1 (* (* b (* c (* -2.0 i))) c)))))))
double code(double x, double y, double z, double t, double a, double b, double c, double i) {
double t_1 = 2.0 * ((t * z) + (x * y));
double tmp;
if (c <= -6.4e+159) {
tmp = ((c * i) * (b * c)) * -2.0;
} else if (c <= -5.5e+90) {
tmp = t_1;
} else if (c <= -3.6e+67) {
tmp = c * ((c * (i * b)) * -2.0);
} else if (c <= 1.35e+102) {
tmp = t_1;
} else {
tmp = (b * (c * (-2.0 * i))) * c;
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i)
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) :: t_1
real(8) :: tmp
t_1 = 2.0d0 * ((t * z) + (x * y))
if (c <= (-6.4d+159)) then
tmp = ((c * i) * (b * c)) * (-2.0d0)
else if (c <= (-5.5d+90)) then
tmp = t_1
else if (c <= (-3.6d+67)) then
tmp = c * ((c * (i * b)) * (-2.0d0))
else if (c <= 1.35d+102) then
tmp = t_1
else
tmp = (b * (c * ((-2.0d0) * i))) * c
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 t_1 = 2.0 * ((t * z) + (x * y));
double tmp;
if (c <= -6.4e+159) {
tmp = ((c * i) * (b * c)) * -2.0;
} else if (c <= -5.5e+90) {
tmp = t_1;
} else if (c <= -3.6e+67) {
tmp = c * ((c * (i * b)) * -2.0);
} else if (c <= 1.35e+102) {
tmp = t_1;
} else {
tmp = (b * (c * (-2.0 * i))) * c;
}
return tmp;
}
def code(x, y, z, t, a, b, c, i): t_1 = 2.0 * ((t * z) + (x * y)) tmp = 0 if c <= -6.4e+159: tmp = ((c * i) * (b * c)) * -2.0 elif c <= -5.5e+90: tmp = t_1 elif c <= -3.6e+67: tmp = c * ((c * (i * b)) * -2.0) elif c <= 1.35e+102: tmp = t_1 else: tmp = (b * (c * (-2.0 * i))) * c return tmp
function code(x, y, z, t, a, b, c, i) t_1 = Float64(2.0 * Float64(Float64(t * z) + Float64(x * y))) tmp = 0.0 if (c <= -6.4e+159) tmp = Float64(Float64(Float64(c * i) * Float64(b * c)) * -2.0); elseif (c <= -5.5e+90) tmp = t_1; elseif (c <= -3.6e+67) tmp = Float64(c * Float64(Float64(c * Float64(i * b)) * -2.0)); elseif (c <= 1.35e+102) tmp = t_1; else tmp = Float64(Float64(b * Float64(c * Float64(-2.0 * i))) * c); end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i) t_1 = 2.0 * ((t * z) + (x * y)); tmp = 0.0; if (c <= -6.4e+159) tmp = ((c * i) * (b * c)) * -2.0; elseif (c <= -5.5e+90) tmp = t_1; elseif (c <= -3.6e+67) tmp = c * ((c * (i * b)) * -2.0); elseif (c <= 1.35e+102) tmp = t_1; else tmp = (b * (c * (-2.0 * i))) * c; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_] := Block[{t$95$1 = N[(2.0 * N[(N[(t * z), $MachinePrecision] + N[(x * y), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[c, -6.4e+159], N[(N[(N[(c * i), $MachinePrecision] * N[(b * c), $MachinePrecision]), $MachinePrecision] * -2.0), $MachinePrecision], If[LessEqual[c, -5.5e+90], t$95$1, If[LessEqual[c, -3.6e+67], N[(c * N[(N[(c * N[(i * b), $MachinePrecision]), $MachinePrecision] * -2.0), $MachinePrecision]), $MachinePrecision], If[LessEqual[c, 1.35e+102], t$95$1, N[(N[(b * N[(c * N[(-2.0 * i), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * c), $MachinePrecision]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := 2 \cdot \left(t \cdot z + x \cdot y\right)\\
\mathbf{if}\;c \leq -6.4 \cdot 10^{+159}:\\
\;\;\;\;\left(\left(c \cdot i\right) \cdot \left(b \cdot c\right)\right) \cdot -2\\
\mathbf{elif}\;c \leq -5.5 \cdot 10^{+90}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;c \leq -3.6 \cdot 10^{+67}:\\
\;\;\;\;c \cdot \left(\left(c \cdot \left(i \cdot b\right)\right) \cdot -2\right)\\
\mathbf{elif}\;c \leq 1.35 \cdot 10^{+102}:\\
\;\;\;\;t\_1\\
\mathbf{else}:\\
\;\;\;\;\left(b \cdot \left(c \cdot \left(-2 \cdot i\right)\right)\right) \cdot c\\
\end{array}
\end{array}
if c < -6.3999999999999997e159Initial program 73.6%
Taylor expanded in b around inf 0
Simplified0
if -6.3999999999999997e159 < c < -5.49999999999999999e90 or -3.5999999999999999e67 < c < 1.3500000000000001e102Initial program 95.1%
Taylor expanded in c around 0 0
Simplified0
if -5.49999999999999999e90 < c < -3.5999999999999999e67Initial program 68.4%
Applied egg-rr0
Taylor expanded in b around inf 0
Simplified0
Taylor expanded in c around 0 0
Simplified0
if 1.3500000000000001e102 < c Initial program 80.9%
Applied egg-rr0
Taylor expanded in b around inf 0
Simplified0
Taylor expanded in c around 0 0
Simplified0
Applied egg-rr0
(FPCore (x y z t a b c i)
:precision binary64
(let* ((t_1 (* 2.0 (+ (* t z) (* x y)))) (t_2 (* (* b (* c (* -2.0 i))) c)))
(if (<= c -3.5e+159)
t_2
(if (<= c -1.9e+92)
t_1
(if (<= c -4.4e+66)
(* c (* (* c (* i b)) -2.0))
(if (<= c 3.9e+101) t_1 t_2))))))
double code(double x, double y, double z, double t, double a, double b, double c, double i) {
double t_1 = 2.0 * ((t * z) + (x * y));
double t_2 = (b * (c * (-2.0 * i))) * c;
double tmp;
if (c <= -3.5e+159) {
tmp = t_2;
} else if (c <= -1.9e+92) {
tmp = t_1;
} else if (c <= -4.4e+66) {
tmp = c * ((c * (i * b)) * -2.0);
} else if (c <= 3.9e+101) {
tmp = t_1;
} else {
tmp = t_2;
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i)
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) :: t_1
real(8) :: t_2
real(8) :: tmp
t_1 = 2.0d0 * ((t * z) + (x * y))
t_2 = (b * (c * ((-2.0d0) * i))) * c
if (c <= (-3.5d+159)) then
tmp = t_2
else if (c <= (-1.9d+92)) then
tmp = t_1
else if (c <= (-4.4d+66)) then
tmp = c * ((c * (i * b)) * (-2.0d0))
else if (c <= 3.9d+101) 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 t_1 = 2.0 * ((t * z) + (x * y));
double t_2 = (b * (c * (-2.0 * i))) * c;
double tmp;
if (c <= -3.5e+159) {
tmp = t_2;
} else if (c <= -1.9e+92) {
tmp = t_1;
} else if (c <= -4.4e+66) {
tmp = c * ((c * (i * b)) * -2.0);
} else if (c <= 3.9e+101) {
tmp = t_1;
} else {
tmp = t_2;
}
return tmp;
}
def code(x, y, z, t, a, b, c, i): t_1 = 2.0 * ((t * z) + (x * y)) t_2 = (b * (c * (-2.0 * i))) * c tmp = 0 if c <= -3.5e+159: tmp = t_2 elif c <= -1.9e+92: tmp = t_1 elif c <= -4.4e+66: tmp = c * ((c * (i * b)) * -2.0) elif c <= 3.9e+101: tmp = t_1 else: tmp = t_2 return tmp
function code(x, y, z, t, a, b, c, i) t_1 = Float64(2.0 * Float64(Float64(t * z) + Float64(x * y))) t_2 = Float64(Float64(b * Float64(c * Float64(-2.0 * i))) * c) tmp = 0.0 if (c <= -3.5e+159) tmp = t_2; elseif (c <= -1.9e+92) tmp = t_1; elseif (c <= -4.4e+66) tmp = Float64(c * Float64(Float64(c * Float64(i * b)) * -2.0)); elseif (c <= 3.9e+101) tmp = t_1; else tmp = t_2; end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i) t_1 = 2.0 * ((t * z) + (x * y)); t_2 = (b * (c * (-2.0 * i))) * c; tmp = 0.0; if (c <= -3.5e+159) tmp = t_2; elseif (c <= -1.9e+92) tmp = t_1; elseif (c <= -4.4e+66) tmp = c * ((c * (i * b)) * -2.0); elseif (c <= 3.9e+101) tmp = t_1; else tmp = t_2; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_] := Block[{t$95$1 = N[(2.0 * N[(N[(t * z), $MachinePrecision] + N[(x * y), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(N[(b * N[(c * N[(-2.0 * i), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * c), $MachinePrecision]}, If[LessEqual[c, -3.5e+159], t$95$2, If[LessEqual[c, -1.9e+92], t$95$1, If[LessEqual[c, -4.4e+66], N[(c * N[(N[(c * N[(i * b), $MachinePrecision]), $MachinePrecision] * -2.0), $MachinePrecision]), $MachinePrecision], If[LessEqual[c, 3.9e+101], t$95$1, t$95$2]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := 2 \cdot \left(t \cdot z + x \cdot y\right)\\
t_2 := \left(b \cdot \left(c \cdot \left(-2 \cdot i\right)\right)\right) \cdot c\\
\mathbf{if}\;c \leq -3.5 \cdot 10^{+159}:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;c \leq -1.9 \cdot 10^{+92}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;c \leq -4.4 \cdot 10^{+66}:\\
\;\;\;\;c \cdot \left(\left(c \cdot \left(i \cdot b\right)\right) \cdot -2\right)\\
\mathbf{elif}\;c \leq 3.9 \cdot 10^{+101}:\\
\;\;\;\;t\_1\\
\mathbf{else}:\\
\;\;\;\;t\_2\\
\end{array}
\end{array}
if c < -3.4999999999999999e159 or 3.9e101 < c Initial program 77.9%
Applied egg-rr0
Taylor expanded in b around inf 0
Simplified0
Taylor expanded in c around 0 0
Simplified0
Applied egg-rr0
if -3.4999999999999999e159 < c < -1.9e92 or -4.3999999999999997e66 < c < 3.9e101Initial program 95.1%
Taylor expanded in c around 0 0
Simplified0
if -1.9e92 < c < -4.3999999999999997e66Initial program 68.4%
Applied egg-rr0
Taylor expanded in b around inf 0
Simplified0
Taylor expanded in c around 0 0
Simplified0
(FPCore (x y z t a b c i)
:precision binary64
(let* ((t_1 (* 2.0 (+ (* t z) (* x y)))) (t_2 (* c (* (* c (* i b)) -2.0))))
(if (<= c -3.5e+159)
t_2
(if (<= c -6.2e+91)
t_1
(if (<= c -1.65e+69) t_2 (if (<= c 3e+107) t_1 t_2))))))
double code(double x, double y, double z, double t, double a, double b, double c, double i) {
double t_1 = 2.0 * ((t * z) + (x * y));
double t_2 = c * ((c * (i * b)) * -2.0);
double tmp;
if (c <= -3.5e+159) {
tmp = t_2;
} else if (c <= -6.2e+91) {
tmp = t_1;
} else if (c <= -1.65e+69) {
tmp = t_2;
} else if (c <= 3e+107) {
tmp = t_1;
} else {
tmp = t_2;
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i)
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) :: t_1
real(8) :: t_2
real(8) :: tmp
t_1 = 2.0d0 * ((t * z) + (x * y))
t_2 = c * ((c * (i * b)) * (-2.0d0))
if (c <= (-3.5d+159)) then
tmp = t_2
else if (c <= (-6.2d+91)) then
tmp = t_1
else if (c <= (-1.65d+69)) then
tmp = t_2
else if (c <= 3d+107) 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 t_1 = 2.0 * ((t * z) + (x * y));
double t_2 = c * ((c * (i * b)) * -2.0);
double tmp;
if (c <= -3.5e+159) {
tmp = t_2;
} else if (c <= -6.2e+91) {
tmp = t_1;
} else if (c <= -1.65e+69) {
tmp = t_2;
} else if (c <= 3e+107) {
tmp = t_1;
} else {
tmp = t_2;
}
return tmp;
}
def code(x, y, z, t, a, b, c, i): t_1 = 2.0 * ((t * z) + (x * y)) t_2 = c * ((c * (i * b)) * -2.0) tmp = 0 if c <= -3.5e+159: tmp = t_2 elif c <= -6.2e+91: tmp = t_1 elif c <= -1.65e+69: tmp = t_2 elif c <= 3e+107: tmp = t_1 else: tmp = t_2 return tmp
function code(x, y, z, t, a, b, c, i) t_1 = Float64(2.0 * Float64(Float64(t * z) + Float64(x * y))) t_2 = Float64(c * Float64(Float64(c * Float64(i * b)) * -2.0)) tmp = 0.0 if (c <= -3.5e+159) tmp = t_2; elseif (c <= -6.2e+91) tmp = t_1; elseif (c <= -1.65e+69) tmp = t_2; elseif (c <= 3e+107) tmp = t_1; else tmp = t_2; end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i) t_1 = 2.0 * ((t * z) + (x * y)); t_2 = c * ((c * (i * b)) * -2.0); tmp = 0.0; if (c <= -3.5e+159) tmp = t_2; elseif (c <= -6.2e+91) tmp = t_1; elseif (c <= -1.65e+69) tmp = t_2; elseif (c <= 3e+107) tmp = t_1; else tmp = t_2; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_] := Block[{t$95$1 = N[(2.0 * N[(N[(t * z), $MachinePrecision] + N[(x * y), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(c * N[(N[(c * N[(i * b), $MachinePrecision]), $MachinePrecision] * -2.0), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[c, -3.5e+159], t$95$2, If[LessEqual[c, -6.2e+91], t$95$1, If[LessEqual[c, -1.65e+69], t$95$2, If[LessEqual[c, 3e+107], t$95$1, t$95$2]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := 2 \cdot \left(t \cdot z + x \cdot y\right)\\
t_2 := c \cdot \left(\left(c \cdot \left(i \cdot b\right)\right) \cdot -2\right)\\
\mathbf{if}\;c \leq -3.5 \cdot 10^{+159}:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;c \leq -6.2 \cdot 10^{+91}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;c \leq -1.65 \cdot 10^{+69}:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;c \leq 3 \cdot 10^{+107}:\\
\;\;\;\;t\_1\\
\mathbf{else}:\\
\;\;\;\;t\_2\\
\end{array}
\end{array}
if c < -3.4999999999999999e159 or -6.19999999999999995e91 < c < -1.6499999999999999e69 or 3.00000000000000023e107 < c Initial program 77.1%
Applied egg-rr0
Taylor expanded in b around inf 0
Simplified0
Taylor expanded in c around 0 0
Simplified0
if -3.4999999999999999e159 < c < -6.19999999999999995e91 or -1.6499999999999999e69 < c < 3.00000000000000023e107Initial program 95.1%
Taylor expanded in c around 0 0
Simplified0
(FPCore (x y z t a b c i)
:precision binary64
(let* ((t_1 (* x (* 2.0 y))))
(if (<= t -7.6)
(* 2.0 (* x (* t (/ z x))))
(if (<= t 2.3e-276)
t_1
(if (<= t 2.4e-212)
(* a (* i (* c -2.0)))
(if (<= t 1.22e+42) t_1 (* 2.0 (* t z))))))))
double code(double x, double y, double z, double t, double a, double b, double c, double i) {
double t_1 = x * (2.0 * y);
double tmp;
if (t <= -7.6) {
tmp = 2.0 * (x * (t * (z / x)));
} else if (t <= 2.3e-276) {
tmp = t_1;
} else if (t <= 2.4e-212) {
tmp = a * (i * (c * -2.0));
} else if (t <= 1.22e+42) {
tmp = t_1;
} else {
tmp = 2.0 * (t * z);
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i)
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) :: t_1
real(8) :: tmp
t_1 = x * (2.0d0 * y)
if (t <= (-7.6d0)) then
tmp = 2.0d0 * (x * (t * (z / x)))
else if (t <= 2.3d-276) then
tmp = t_1
else if (t <= 2.4d-212) then
tmp = a * (i * (c * (-2.0d0)))
else if (t <= 1.22d+42) then
tmp = t_1
else
tmp = 2.0d0 * (t * z)
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 t_1 = x * (2.0 * y);
double tmp;
if (t <= -7.6) {
tmp = 2.0 * (x * (t * (z / x)));
} else if (t <= 2.3e-276) {
tmp = t_1;
} else if (t <= 2.4e-212) {
tmp = a * (i * (c * -2.0));
} else if (t <= 1.22e+42) {
tmp = t_1;
} else {
tmp = 2.0 * (t * z);
}
return tmp;
}
def code(x, y, z, t, a, b, c, i): t_1 = x * (2.0 * y) tmp = 0 if t <= -7.6: tmp = 2.0 * (x * (t * (z / x))) elif t <= 2.3e-276: tmp = t_1 elif t <= 2.4e-212: tmp = a * (i * (c * -2.0)) elif t <= 1.22e+42: tmp = t_1 else: tmp = 2.0 * (t * z) return tmp
function code(x, y, z, t, a, b, c, i) t_1 = Float64(x * Float64(2.0 * y)) tmp = 0.0 if (t <= -7.6) tmp = Float64(2.0 * Float64(x * Float64(t * Float64(z / x)))); elseif (t <= 2.3e-276) tmp = t_1; elseif (t <= 2.4e-212) tmp = Float64(a * Float64(i * Float64(c * -2.0))); elseif (t <= 1.22e+42) tmp = t_1; else tmp = Float64(2.0 * Float64(t * z)); end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i) t_1 = x * (2.0 * y); tmp = 0.0; if (t <= -7.6) tmp = 2.0 * (x * (t * (z / x))); elseif (t <= 2.3e-276) tmp = t_1; elseif (t <= 2.4e-212) tmp = a * (i * (c * -2.0)); elseif (t <= 1.22e+42) tmp = t_1; else tmp = 2.0 * (t * z); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_] := Block[{t$95$1 = N[(x * N[(2.0 * y), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t, -7.6], N[(2.0 * N[(x * N[(t * N[(z / x), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 2.3e-276], t$95$1, If[LessEqual[t, 2.4e-212], N[(a * N[(i * N[(c * -2.0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 1.22e+42], t$95$1, N[(2.0 * N[(t * z), $MachinePrecision]), $MachinePrecision]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := x \cdot \left(2 \cdot y\right)\\
\mathbf{if}\;t \leq -7.6:\\
\;\;\;\;2 \cdot \left(x \cdot \left(t \cdot \frac{z}{x}\right)\right)\\
\mathbf{elif}\;t \leq 2.3 \cdot 10^{-276}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq 2.4 \cdot 10^{-212}:\\
\;\;\;\;a \cdot \left(i \cdot \left(c \cdot -2\right)\right)\\
\mathbf{elif}\;t \leq 1.22 \cdot 10^{+42}:\\
\;\;\;\;t\_1\\
\mathbf{else}:\\
\;\;\;\;2 \cdot \left(t \cdot z\right)\\
\end{array}
\end{array}
if t < -7.5999999999999996Initial program 87.5%
Taylor expanded in x around inf 0
Simplified0
Taylor expanded in t around inf 0
Simplified0
if -7.5999999999999996 < t < 2.29999999999999982e-276 or 2.39999999999999989e-212 < t < 1.22e42Initial program 91.3%
Taylor expanded in x around inf 0
Simplified0
if 2.29999999999999982e-276 < t < 2.39999999999999989e-212Initial program 92.4%
Taylor expanded in c around inf 0
Simplified0
Applied egg-rr0
Taylor expanded in c around 0 0
Simplified0
if 1.22e42 < t Initial program 88.3%
Taylor expanded in z around inf 0
Simplified0
(FPCore (x y z t a b c i)
:precision binary64
(let* ((t_1 (* x (* 2.0 y))) (t_2 (* 2.0 (* t z))))
(if (<= t -7.6)
t_2
(if (<= t 5.8e-274)
t_1
(if (<= t 1.65e-212)
(* a (* i (* c -2.0)))
(if (<= t 1.8e+42) t_1 t_2))))))
double code(double x, double y, double z, double t, double a, double b, double c, double i) {
double t_1 = x * (2.0 * y);
double t_2 = 2.0 * (t * z);
double tmp;
if (t <= -7.6) {
tmp = t_2;
} else if (t <= 5.8e-274) {
tmp = t_1;
} else if (t <= 1.65e-212) {
tmp = a * (i * (c * -2.0));
} else if (t <= 1.8e+42) {
tmp = t_1;
} else {
tmp = t_2;
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i)
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) :: t_1
real(8) :: t_2
real(8) :: tmp
t_1 = x * (2.0d0 * y)
t_2 = 2.0d0 * (t * z)
if (t <= (-7.6d0)) then
tmp = t_2
else if (t <= 5.8d-274) then
tmp = t_1
else if (t <= 1.65d-212) then
tmp = a * (i * (c * (-2.0d0)))
else if (t <= 1.8d+42) 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 t_1 = x * (2.0 * y);
double t_2 = 2.0 * (t * z);
double tmp;
if (t <= -7.6) {
tmp = t_2;
} else if (t <= 5.8e-274) {
tmp = t_1;
} else if (t <= 1.65e-212) {
tmp = a * (i * (c * -2.0));
} else if (t <= 1.8e+42) {
tmp = t_1;
} else {
tmp = t_2;
}
return tmp;
}
def code(x, y, z, t, a, b, c, i): t_1 = x * (2.0 * y) t_2 = 2.0 * (t * z) tmp = 0 if t <= -7.6: tmp = t_2 elif t <= 5.8e-274: tmp = t_1 elif t <= 1.65e-212: tmp = a * (i * (c * -2.0)) elif t <= 1.8e+42: tmp = t_1 else: tmp = t_2 return tmp
function code(x, y, z, t, a, b, c, i) t_1 = Float64(x * Float64(2.0 * y)) t_2 = Float64(2.0 * Float64(t * z)) tmp = 0.0 if (t <= -7.6) tmp = t_2; elseif (t <= 5.8e-274) tmp = t_1; elseif (t <= 1.65e-212) tmp = Float64(a * Float64(i * Float64(c * -2.0))); elseif (t <= 1.8e+42) tmp = t_1; else tmp = t_2; end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i) t_1 = x * (2.0 * y); t_2 = 2.0 * (t * z); tmp = 0.0; if (t <= -7.6) tmp = t_2; elseif (t <= 5.8e-274) tmp = t_1; elseif (t <= 1.65e-212) tmp = a * (i * (c * -2.0)); elseif (t <= 1.8e+42) tmp = t_1; else tmp = t_2; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_] := Block[{t$95$1 = N[(x * N[(2.0 * y), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(2.0 * N[(t * z), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t, -7.6], t$95$2, If[LessEqual[t, 5.8e-274], t$95$1, If[LessEqual[t, 1.65e-212], N[(a * N[(i * N[(c * -2.0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 1.8e+42], t$95$1, t$95$2]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := x \cdot \left(2 \cdot y\right)\\
t_2 := 2 \cdot \left(t \cdot z\right)\\
\mathbf{if}\;t \leq -7.6:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;t \leq 5.8 \cdot 10^{-274}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq 1.65 \cdot 10^{-212}:\\
\;\;\;\;a \cdot \left(i \cdot \left(c \cdot -2\right)\right)\\
\mathbf{elif}\;t \leq 1.8 \cdot 10^{+42}:\\
\;\;\;\;t\_1\\
\mathbf{else}:\\
\;\;\;\;t\_2\\
\end{array}
\end{array}
if t < -7.5999999999999996 or 1.8e42 < t Initial program 87.8%
Taylor expanded in z around inf 0
Simplified0
if -7.5999999999999996 < t < 5.79999999999999952e-274 or 1.6500000000000001e-212 < t < 1.8e42Initial program 91.3%
Taylor expanded in x around inf 0
Simplified0
if 5.79999999999999952e-274 < t < 1.6500000000000001e-212Initial program 92.4%
Taylor expanded in c around inf 0
Simplified0
Applied egg-rr0
Taylor expanded in c around 0 0
Simplified0
(FPCore (x y z t a b c i) :precision binary64 (let* ((t_1 (* 2.0 (* t z)))) (if (<= t -2.9e-19) t_1 (if (<= t 3e+41) (* x (* 2.0 y)) t_1))))
double code(double x, double y, double z, double t, double a, double b, double c, double i) {
double t_1 = 2.0 * (t * z);
double tmp;
if (t <= -2.9e-19) {
tmp = t_1;
} else if (t <= 3e+41) {
tmp = x * (2.0 * y);
} else {
tmp = t_1;
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i)
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) :: t_1
real(8) :: tmp
t_1 = 2.0d0 * (t * z)
if (t <= (-2.9d-19)) then
tmp = t_1
else if (t <= 3d+41) then
tmp = x * (2.0d0 * y)
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 t_1 = 2.0 * (t * z);
double tmp;
if (t <= -2.9e-19) {
tmp = t_1;
} else if (t <= 3e+41) {
tmp = x * (2.0 * y);
} else {
tmp = t_1;
}
return tmp;
}
def code(x, y, z, t, a, b, c, i): t_1 = 2.0 * (t * z) tmp = 0 if t <= -2.9e-19: tmp = t_1 elif t <= 3e+41: tmp = x * (2.0 * y) else: tmp = t_1 return tmp
function code(x, y, z, t, a, b, c, i) t_1 = Float64(2.0 * Float64(t * z)) tmp = 0.0 if (t <= -2.9e-19) tmp = t_1; elseif (t <= 3e+41) tmp = Float64(x * Float64(2.0 * y)); else tmp = t_1; end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i) t_1 = 2.0 * (t * z); tmp = 0.0; if (t <= -2.9e-19) tmp = t_1; elseif (t <= 3e+41) tmp = x * (2.0 * y); else tmp = t_1; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_] := Block[{t$95$1 = N[(2.0 * N[(t * z), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t, -2.9e-19], t$95$1, If[LessEqual[t, 3e+41], N[(x * N[(2.0 * y), $MachinePrecision]), $MachinePrecision], t$95$1]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := 2 \cdot \left(t \cdot z\right)\\
\mathbf{if}\;t \leq -2.9 \cdot 10^{-19}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq 3 \cdot 10^{+41}:\\
\;\;\;\;x \cdot \left(2 \cdot y\right)\\
\mathbf{else}:\\
\;\;\;\;t\_1\\
\end{array}
\end{array}
if t < -2.9e-19 or 2.9999999999999998e41 < t Initial program 87.8%
Taylor expanded in z around inf 0
Simplified0
if -2.9e-19 < t < 2.9999999999999998e41Initial program 91.4%
Taylor expanded in x around inf 0
Simplified0
(FPCore (x y z t a b c i) :precision binary64 (if (<= c 1.08e+119) (* 2.0 (+ (* t z) (* x y))) (* a (* i (* c -2.0)))))
double code(double x, double y, double z, double t, double a, double b, double c, double i) {
double tmp;
if (c <= 1.08e+119) {
tmp = 2.0 * ((t * z) + (x * y));
} else {
tmp = a * (i * (c * -2.0));
}
return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i)
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) :: tmp
if (c <= 1.08d+119) then
tmp = 2.0d0 * ((t * z) + (x * y))
else
tmp = a * (i * (c * (-2.0d0)))
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 tmp;
if (c <= 1.08e+119) {
tmp = 2.0 * ((t * z) + (x * y));
} else {
tmp = a * (i * (c * -2.0));
}
return tmp;
}
def code(x, y, z, t, a, b, c, i): tmp = 0 if c <= 1.08e+119: tmp = 2.0 * ((t * z) + (x * y)) else: tmp = a * (i * (c * -2.0)) return tmp
function code(x, y, z, t, a, b, c, i) tmp = 0.0 if (c <= 1.08e+119) tmp = Float64(2.0 * Float64(Float64(t * z) + Float64(x * y))); else tmp = Float64(a * Float64(i * Float64(c * -2.0))); end return tmp end
function tmp_2 = code(x, y, z, t, a, b, c, i) tmp = 0.0; if (c <= 1.08e+119) tmp = 2.0 * ((t * z) + (x * y)); else tmp = a * (i * (c * -2.0)); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_, b_, c_, i_] := If[LessEqual[c, 1.08e+119], N[(2.0 * N[(N[(t * z), $MachinePrecision] + N[(x * y), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(a * N[(i * N[(c * -2.0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;c \leq 1.08 \cdot 10^{+119}:\\
\;\;\;\;2 \cdot \left(t \cdot z + x \cdot y\right)\\
\mathbf{else}:\\
\;\;\;\;a \cdot \left(i \cdot \left(c \cdot -2\right)\right)\\
\end{array}
\end{array}
if c < 1.08e119Initial program 91.5%
Taylor expanded in c around 0 0
Simplified0
if 1.08e119 < c Initial program 79.4%
Taylor expanded in c around inf 0
Simplified0
Applied egg-rr0
Taylor expanded in c around 0 0
Simplified0
(FPCore (x y z t a b c i) :precision binary64 (* 2.0 (* t z)))
double code(double x, double y, double z, double t, double a, double b, double c, double i) {
return 2.0 * (t * z);
}
real(8) function code(x, y, z, t, a, b, c, i)
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
code = 2.0d0 * (t * z)
end function
public static double code(double x, double y, double z, double t, double a, double b, double c, double i) {
return 2.0 * (t * z);
}
def code(x, y, z, t, a, b, c, i): return 2.0 * (t * z)
function code(x, y, z, t, a, b, c, i) return Float64(2.0 * Float64(t * z)) end
function tmp = code(x, y, z, t, a, b, c, i) tmp = 2.0 * (t * z); end
code[x_, y_, z_, t_, a_, b_, c_, i_] := N[(2.0 * N[(t * z), $MachinePrecision]), $MachinePrecision]
\begin{array}{l}
\\
2 \cdot \left(t \cdot z\right)
\end{array}
Initial program 89.7%
Taylor expanded in z around inf 0
Simplified0
(FPCore (x y z t a b c i) :precision binary64 (* 2.0 (- (+ (* x y) (* z t)) (* (+ a (* b c)) (* c i)))))
double code(double x, double y, double z, double t, double a, double b, double c, double i) {
return 2.0 * (((x * y) + (z * t)) - ((a + (b * c)) * (c * i)));
}
real(8) function code(x, y, z, t, a, b, c, i)
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
code = 2.0d0 * (((x * y) + (z * t)) - ((a + (b * c)) * (c * i)))
end function
public static double code(double x, double y, double z, double t, double a, double b, double c, double i) {
return 2.0 * (((x * y) + (z * t)) - ((a + (b * c)) * (c * i)));
}
def code(x, y, z, t, a, b, c, i): return 2.0 * (((x * y) + (z * t)) - ((a + (b * c)) * (c * i)))
function code(x, y, z, t, a, b, c, i) return Float64(2.0 * Float64(Float64(Float64(x * y) + Float64(z * t)) - Float64(Float64(a + Float64(b * c)) * Float64(c * i)))) end
function tmp = code(x, y, z, t, a, b, c, i) tmp = 2.0 * (((x * y) + (z * t)) - ((a + (b * c)) * (c * i))); end
code[x_, y_, z_, t_, a_, b_, c_, i_] := N[(2.0 * N[(N[(N[(x * y), $MachinePrecision] + N[(z * t), $MachinePrecision]), $MachinePrecision] - N[(N[(a + N[(b * c), $MachinePrecision]), $MachinePrecision] * N[(c * i), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
\begin{array}{l}
\\
2 \cdot \left(\left(x \cdot y + z \cdot t\right) - \left(a + b \cdot c\right) \cdot \left(c \cdot i\right)\right)
\end{array}
herbie shell --seed 2024110
(FPCore (x y z t a b c i)
:name "Diagrams.ThreeD.Shapes:frustum from diagrams-lib-1.3.0.3, A"
:precision binary64
:alt
(* 2.0 (- (+ (* x y) (* z t)) (* (+ a (* b c)) (* c i))))
(* 2.0 (- (+ (* x y) (* z t)) (* (* (+ a (* b c)) c) i))))