
(FPCore (x y z t a) :precision binary64 (+ x (/ (* (- y z) (- t x)) (- a z))))
double code(double x, double y, double z, double t, double a) {
return x + (((y - z) * (t - x)) / (a - z));
}
real(8) function code(x, y, z, t, a)
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
code = x + (((y - z) * (t - x)) / (a - z))
end function
public static double code(double x, double y, double z, double t, double a) {
return x + (((y - z) * (t - x)) / (a - z));
}
def code(x, y, z, t, a): return x + (((y - z) * (t - x)) / (a - z))
function code(x, y, z, t, a) return Float64(x + Float64(Float64(Float64(y - z) * Float64(t - x)) / Float64(a - z))) end
function tmp = code(x, y, z, t, a) tmp = x + (((y - z) * (t - x)) / (a - z)); end
code[x_, y_, z_, t_, a_] := N[(x + N[(N[(N[(y - z), $MachinePrecision] * N[(t - x), $MachinePrecision]), $MachinePrecision] / N[(a - z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
\begin{array}{l}
\\
x + \frac{\left(y - z\right) \cdot \left(t - x\right)}{a - z}
\end{array}
Sampling outcomes in binary64 precision:
Herbie found 19 alternatives:
| Alternative | Accuracy | Speedup |
|---|
(FPCore (x y z t a) :precision binary64 (+ x (/ (* (- y z) (- t x)) (- a z))))
double code(double x, double y, double z, double t, double a) {
return x + (((y - z) * (t - x)) / (a - z));
}
real(8) function code(x, y, z, t, a)
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
code = x + (((y - z) * (t - x)) / (a - z))
end function
public static double code(double x, double y, double z, double t, double a) {
return x + (((y - z) * (t - x)) / (a - z));
}
def code(x, y, z, t, a): return x + (((y - z) * (t - x)) / (a - z))
function code(x, y, z, t, a) return Float64(x + Float64(Float64(Float64(y - z) * Float64(t - x)) / Float64(a - z))) end
function tmp = code(x, y, z, t, a) tmp = x + (((y - z) * (t - x)) / (a - z)); end
code[x_, y_, z_, t_, a_] := N[(x + N[(N[(N[(y - z), $MachinePrecision] * N[(t - x), $MachinePrecision]), $MachinePrecision] / N[(a - z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
\begin{array}{l}
\\
x + \frac{\left(y - z\right) \cdot \left(t - x\right)}{a - z}
\end{array}
(FPCore (x y z t a) :precision binary64 (if (or (<= z -7.8e+180) (not (<= z 1.3e+214))) (+ t (* (- t x) (* (- y a) (/ -1.0 z)))) (fma (- t x) (/ (- y z) (- a z)) x)))
double code(double x, double y, double z, double t, double a) {
double tmp;
if ((z <= -7.8e+180) || !(z <= 1.3e+214)) {
tmp = t + ((t - x) * ((y - a) * (-1.0 / z)));
} else {
tmp = fma((t - x), ((y - z) / (a - z)), x);
}
return tmp;
}
function code(x, y, z, t, a) tmp = 0.0 if ((z <= -7.8e+180) || !(z <= 1.3e+214)) tmp = Float64(t + Float64(Float64(t - x) * Float64(Float64(y - a) * Float64(-1.0 / z)))); else tmp = fma(Float64(t - x), Float64(Float64(y - z) / Float64(a - z)), x); end return tmp end
code[x_, y_, z_, t_, a_] := If[Or[LessEqual[z, -7.8e+180], N[Not[LessEqual[z, 1.3e+214]], $MachinePrecision]], N[(t + N[(N[(t - x), $MachinePrecision] * N[(N[(y - a), $MachinePrecision] * N[(-1.0 / z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(N[(t - x), $MachinePrecision] * N[(N[(y - z), $MachinePrecision] / N[(a - z), $MachinePrecision]), $MachinePrecision] + x), $MachinePrecision]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;z \leq -7.8 \cdot 10^{+180} \lor \neg \left(z \leq 1.3 \cdot 10^{+214}\right):\\
\;\;\;\;t + \left(t - x\right) \cdot \left(\left(y - a\right) \cdot \frac{-1}{z}\right)\\
\mathbf{else}:\\
\;\;\;\;\mathsf{fma}\left(t - x, \frac{y - z}{a - z}, x\right)\\
\end{array}
\end{array}
if z < -7.8000000000000002e180 or 1.29999999999999996e214 < z Initial program 27.7%
associate-/l*42.5%
Simplified42.5%
Taylor expanded in z around inf 66.7%
associate--l+66.7%
associate-*r/66.7%
associate-*r/66.7%
mul-1-neg66.7%
div-sub66.7%
mul-1-neg66.7%
distribute-lft-out--66.7%
associate-*r/66.7%
mul-1-neg66.7%
unsub-neg66.7%
distribute-rgt-out--66.9%
Simplified66.9%
div-inv66.9%
Applied egg-rr66.9%
associate-*l*93.1%
Simplified93.1%
if -7.8000000000000002e180 < z < 1.29999999999999996e214Initial program 80.2%
+-commutative80.2%
*-commutative80.2%
associate-/l*93.2%
fma-define93.2%
Simplified93.2%
Final simplification93.2%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (* x (/ (- y a) z))) (t_2 (* y (/ (- t x) a))))
(if (<= a -6.5e+127)
x
(if (<= a -2.65e+19)
t_2
(if (<= a -225.0)
t_1
(if (<= a -9.6e-20)
(- x (- x t))
(if (<= a -1.06e-110)
t_2
(if (<= a -3.1e-227)
t
(if (<= a 3.2e-116) t_1 (if (<= a 1.2e+84) t_2 x))))))))))
double code(double x, double y, double z, double t, double a) {
double t_1 = x * ((y - a) / z);
double t_2 = y * ((t - x) / a);
double tmp;
if (a <= -6.5e+127) {
tmp = x;
} else if (a <= -2.65e+19) {
tmp = t_2;
} else if (a <= -225.0) {
tmp = t_1;
} else if (a <= -9.6e-20) {
tmp = x - (x - t);
} else if (a <= -1.06e-110) {
tmp = t_2;
} else if (a <= -3.1e-227) {
tmp = t;
} else if (a <= 3.2e-116) {
tmp = t_1;
} else if (a <= 1.2e+84) {
tmp = t_2;
} else {
tmp = x;
}
return tmp;
}
real(8) function code(x, y, z, t, a)
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) :: t_1
real(8) :: t_2
real(8) :: tmp
t_1 = x * ((y - a) / z)
t_2 = y * ((t - x) / a)
if (a <= (-6.5d+127)) then
tmp = x
else if (a <= (-2.65d+19)) then
tmp = t_2
else if (a <= (-225.0d0)) then
tmp = t_1
else if (a <= (-9.6d-20)) then
tmp = x - (x - t)
else if (a <= (-1.06d-110)) then
tmp = t_2
else if (a <= (-3.1d-227)) then
tmp = t
else if (a <= 3.2d-116) then
tmp = t_1
else if (a <= 1.2d+84) then
tmp = t_2
else
tmp = x
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double t_1 = x * ((y - a) / z);
double t_2 = y * ((t - x) / a);
double tmp;
if (a <= -6.5e+127) {
tmp = x;
} else if (a <= -2.65e+19) {
tmp = t_2;
} else if (a <= -225.0) {
tmp = t_1;
} else if (a <= -9.6e-20) {
tmp = x - (x - t);
} else if (a <= -1.06e-110) {
tmp = t_2;
} else if (a <= -3.1e-227) {
tmp = t;
} else if (a <= 3.2e-116) {
tmp = t_1;
} else if (a <= 1.2e+84) {
tmp = t_2;
} else {
tmp = x;
}
return tmp;
}
def code(x, y, z, t, a): t_1 = x * ((y - a) / z) t_2 = y * ((t - x) / a) tmp = 0 if a <= -6.5e+127: tmp = x elif a <= -2.65e+19: tmp = t_2 elif a <= -225.0: tmp = t_1 elif a <= -9.6e-20: tmp = x - (x - t) elif a <= -1.06e-110: tmp = t_2 elif a <= -3.1e-227: tmp = t elif a <= 3.2e-116: tmp = t_1 elif a <= 1.2e+84: tmp = t_2 else: tmp = x return tmp
function code(x, y, z, t, a) t_1 = Float64(x * Float64(Float64(y - a) / z)) t_2 = Float64(y * Float64(Float64(t - x) / a)) tmp = 0.0 if (a <= -6.5e+127) tmp = x; elseif (a <= -2.65e+19) tmp = t_2; elseif (a <= -225.0) tmp = t_1; elseif (a <= -9.6e-20) tmp = Float64(x - Float64(x - t)); elseif (a <= -1.06e-110) tmp = t_2; elseif (a <= -3.1e-227) tmp = t; elseif (a <= 3.2e-116) tmp = t_1; elseif (a <= 1.2e+84) tmp = t_2; else tmp = x; end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = x * ((y - a) / z); t_2 = y * ((t - x) / a); tmp = 0.0; if (a <= -6.5e+127) tmp = x; elseif (a <= -2.65e+19) tmp = t_2; elseif (a <= -225.0) tmp = t_1; elseif (a <= -9.6e-20) tmp = x - (x - t); elseif (a <= -1.06e-110) tmp = t_2; elseif (a <= -3.1e-227) tmp = t; elseif (a <= 3.2e-116) tmp = t_1; elseif (a <= 1.2e+84) tmp = t_2; else tmp = x; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(x * N[(N[(y - a), $MachinePrecision] / z), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(y * N[(N[(t - x), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[a, -6.5e+127], x, If[LessEqual[a, -2.65e+19], t$95$2, If[LessEqual[a, -225.0], t$95$1, If[LessEqual[a, -9.6e-20], N[(x - N[(x - t), $MachinePrecision]), $MachinePrecision], If[LessEqual[a, -1.06e-110], t$95$2, If[LessEqual[a, -3.1e-227], t, If[LessEqual[a, 3.2e-116], t$95$1, If[LessEqual[a, 1.2e+84], t$95$2, x]]]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := x \cdot \frac{y - a}{z}\\
t_2 := y \cdot \frac{t - x}{a}\\
\mathbf{if}\;a \leq -6.5 \cdot 10^{+127}:\\
\;\;\;\;x\\
\mathbf{elif}\;a \leq -2.65 \cdot 10^{+19}:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;a \leq -225:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;a \leq -9.6 \cdot 10^{-20}:\\
\;\;\;\;x - \left(x - t\right)\\
\mathbf{elif}\;a \leq -1.06 \cdot 10^{-110}:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;a \leq -3.1 \cdot 10^{-227}:\\
\;\;\;\;t\\
\mathbf{elif}\;a \leq 3.2 \cdot 10^{-116}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;a \leq 1.2 \cdot 10^{+84}:\\
\;\;\;\;t\_2\\
\mathbf{else}:\\
\;\;\;\;x\\
\end{array}
\end{array}
if a < -6.5e127 or 1.2e84 < a Initial program 66.0%
associate-/l*88.0%
Simplified88.0%
Taylor expanded in a around inf 60.4%
if -6.5e127 < a < -2.65e19 or -9.59999999999999971e-20 < a < -1.0599999999999999e-110 or 3.20000000000000009e-116 < a < 1.2e84Initial program 78.0%
associate-/l*88.7%
Simplified88.7%
Taylor expanded in z around 0 57.7%
Taylor expanded in y around inf 45.5%
Taylor expanded in a around 0 46.8%
if -2.65e19 < a < -225 or -3.09999999999999979e-227 < a < 3.20000000000000009e-116Initial program 74.4%
associate-/l*71.2%
Simplified71.2%
Taylor expanded in z around inf 85.9%
associate--l+85.9%
associate-*r/85.9%
associate-*r/85.9%
mul-1-neg85.9%
div-sub86.2%
mul-1-neg86.2%
distribute-lft-out--86.2%
associate-*r/86.2%
mul-1-neg86.2%
unsub-neg86.2%
distribute-rgt-out--86.3%
Simplified86.3%
Taylor expanded in t around 0 45.2%
associate-/l*46.7%
Simplified46.7%
if -225 < a < -9.59999999999999971e-20Initial program 78.9%
associate-/l*90.3%
Simplified90.3%
Taylor expanded in z around inf 46.3%
if -1.0599999999999999e-110 < a < -3.09999999999999979e-227Initial program 50.1%
associate-/l*69.2%
Simplified69.2%
Taylor expanded in z around inf 61.5%
Final simplification52.6%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (* x (/ (- y a) z))))
(if (<= a -0.0027)
x
(if (<= a -1.24e-110)
(* y (/ t a))
(if (<= a -1.45e-226)
t
(if (<= a 3.9e-181)
t_1
(if (<= a 1.65e+59) t (if (<= a 1.4e+82) t_1 x))))))))
double code(double x, double y, double z, double t, double a) {
double t_1 = x * ((y - a) / z);
double tmp;
if (a <= -0.0027) {
tmp = x;
} else if (a <= -1.24e-110) {
tmp = y * (t / a);
} else if (a <= -1.45e-226) {
tmp = t;
} else if (a <= 3.9e-181) {
tmp = t_1;
} else if (a <= 1.65e+59) {
tmp = t;
} else if (a <= 1.4e+82) {
tmp = t_1;
} else {
tmp = x;
}
return tmp;
}
real(8) function code(x, y, z, t, a)
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) :: t_1
real(8) :: tmp
t_1 = x * ((y - a) / z)
if (a <= (-0.0027d0)) then
tmp = x
else if (a <= (-1.24d-110)) then
tmp = y * (t / a)
else if (a <= (-1.45d-226)) then
tmp = t
else if (a <= 3.9d-181) then
tmp = t_1
else if (a <= 1.65d+59) then
tmp = t
else if (a <= 1.4d+82) then
tmp = t_1
else
tmp = x
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double t_1 = x * ((y - a) / z);
double tmp;
if (a <= -0.0027) {
tmp = x;
} else if (a <= -1.24e-110) {
tmp = y * (t / a);
} else if (a <= -1.45e-226) {
tmp = t;
} else if (a <= 3.9e-181) {
tmp = t_1;
} else if (a <= 1.65e+59) {
tmp = t;
} else if (a <= 1.4e+82) {
tmp = t_1;
} else {
tmp = x;
}
return tmp;
}
def code(x, y, z, t, a): t_1 = x * ((y - a) / z) tmp = 0 if a <= -0.0027: tmp = x elif a <= -1.24e-110: tmp = y * (t / a) elif a <= -1.45e-226: tmp = t elif a <= 3.9e-181: tmp = t_1 elif a <= 1.65e+59: tmp = t elif a <= 1.4e+82: tmp = t_1 else: tmp = x return tmp
function code(x, y, z, t, a) t_1 = Float64(x * Float64(Float64(y - a) / z)) tmp = 0.0 if (a <= -0.0027) tmp = x; elseif (a <= -1.24e-110) tmp = Float64(y * Float64(t / a)); elseif (a <= -1.45e-226) tmp = t; elseif (a <= 3.9e-181) tmp = t_1; elseif (a <= 1.65e+59) tmp = t; elseif (a <= 1.4e+82) tmp = t_1; else tmp = x; end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = x * ((y - a) / z); tmp = 0.0; if (a <= -0.0027) tmp = x; elseif (a <= -1.24e-110) tmp = y * (t / a); elseif (a <= -1.45e-226) tmp = t; elseif (a <= 3.9e-181) tmp = t_1; elseif (a <= 1.65e+59) tmp = t; elseif (a <= 1.4e+82) tmp = t_1; else tmp = x; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(x * N[(N[(y - a), $MachinePrecision] / z), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[a, -0.0027], x, If[LessEqual[a, -1.24e-110], N[(y * N[(t / a), $MachinePrecision]), $MachinePrecision], If[LessEqual[a, -1.45e-226], t, If[LessEqual[a, 3.9e-181], t$95$1, If[LessEqual[a, 1.65e+59], t, If[LessEqual[a, 1.4e+82], t$95$1, x]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := x \cdot \frac{y - a}{z}\\
\mathbf{if}\;a \leq -0.0027:\\
\;\;\;\;x\\
\mathbf{elif}\;a \leq -1.24 \cdot 10^{-110}:\\
\;\;\;\;y \cdot \frac{t}{a}\\
\mathbf{elif}\;a \leq -1.45 \cdot 10^{-226}:\\
\;\;\;\;t\\
\mathbf{elif}\;a \leq 3.9 \cdot 10^{-181}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;a \leq 1.65 \cdot 10^{+59}:\\
\;\;\;\;t\\
\mathbf{elif}\;a \leq 1.4 \cdot 10^{+82}:\\
\;\;\;\;t\_1\\
\mathbf{else}:\\
\;\;\;\;x\\
\end{array}
\end{array}
if a < -0.0027000000000000001 or 1.4e82 < a Initial program 70.0%
associate-/l*87.7%
Simplified87.7%
Taylor expanded in a around inf 52.1%
if -0.0027000000000000001 < a < -1.24000000000000006e-110Initial program 81.0%
associate-/l*88.8%
Simplified88.8%
Taylor expanded in z around 0 54.0%
Taylor expanded in y around inf 46.1%
Taylor expanded in t around inf 38.9%
if -1.24000000000000006e-110 < a < -1.45000000000000001e-226 or 3.9e-181 < a < 1.65e59Initial program 62.0%
associate-/l*77.0%
Simplified77.0%
Taylor expanded in z around inf 45.5%
if -1.45000000000000001e-226 < a < 3.9e-181 or 1.65e59 < a < 1.4e82Initial program 76.7%
associate-/l*74.9%
Simplified74.9%
Taylor expanded in z around inf 82.8%
associate--l+82.8%
associate-*r/82.8%
associate-*r/82.8%
mul-1-neg82.8%
div-sub82.8%
mul-1-neg82.8%
distribute-lft-out--82.8%
associate-*r/82.8%
mul-1-neg82.8%
unsub-neg82.8%
distribute-rgt-out--84.6%
Simplified84.6%
Taylor expanded in t around 0 46.0%
associate-/l*51.1%
Simplified51.1%
Final simplification49.0%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (* x (/ y z))))
(if (<= a -0.00029)
x
(if (<= a -1.24e-110)
(* y (/ t a))
(if (<= a -4e-226)
t
(if (<= a 1.9e-180)
t_1
(if (<= a 5.5e+60) t (if (<= a 2.2e+82) t_1 x))))))))
double code(double x, double y, double z, double t, double a) {
double t_1 = x * (y / z);
double tmp;
if (a <= -0.00029) {
tmp = x;
} else if (a <= -1.24e-110) {
tmp = y * (t / a);
} else if (a <= -4e-226) {
tmp = t;
} else if (a <= 1.9e-180) {
tmp = t_1;
} else if (a <= 5.5e+60) {
tmp = t;
} else if (a <= 2.2e+82) {
tmp = t_1;
} else {
tmp = x;
}
return tmp;
}
real(8) function code(x, y, z, t, a)
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) :: t_1
real(8) :: tmp
t_1 = x * (y / z)
if (a <= (-0.00029d0)) then
tmp = x
else if (a <= (-1.24d-110)) then
tmp = y * (t / a)
else if (a <= (-4d-226)) then
tmp = t
else if (a <= 1.9d-180) then
tmp = t_1
else if (a <= 5.5d+60) then
tmp = t
else if (a <= 2.2d+82) then
tmp = t_1
else
tmp = x
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double t_1 = x * (y / z);
double tmp;
if (a <= -0.00029) {
tmp = x;
} else if (a <= -1.24e-110) {
tmp = y * (t / a);
} else if (a <= -4e-226) {
tmp = t;
} else if (a <= 1.9e-180) {
tmp = t_1;
} else if (a <= 5.5e+60) {
tmp = t;
} else if (a <= 2.2e+82) {
tmp = t_1;
} else {
tmp = x;
}
return tmp;
}
def code(x, y, z, t, a): t_1 = x * (y / z) tmp = 0 if a <= -0.00029: tmp = x elif a <= -1.24e-110: tmp = y * (t / a) elif a <= -4e-226: tmp = t elif a <= 1.9e-180: tmp = t_1 elif a <= 5.5e+60: tmp = t elif a <= 2.2e+82: tmp = t_1 else: tmp = x return tmp
function code(x, y, z, t, a) t_1 = Float64(x * Float64(y / z)) tmp = 0.0 if (a <= -0.00029) tmp = x; elseif (a <= -1.24e-110) tmp = Float64(y * Float64(t / a)); elseif (a <= -4e-226) tmp = t; elseif (a <= 1.9e-180) tmp = t_1; elseif (a <= 5.5e+60) tmp = t; elseif (a <= 2.2e+82) tmp = t_1; else tmp = x; end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = x * (y / z); tmp = 0.0; if (a <= -0.00029) tmp = x; elseif (a <= -1.24e-110) tmp = y * (t / a); elseif (a <= -4e-226) tmp = t; elseif (a <= 1.9e-180) tmp = t_1; elseif (a <= 5.5e+60) tmp = t; elseif (a <= 2.2e+82) tmp = t_1; else tmp = x; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(x * N[(y / z), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[a, -0.00029], x, If[LessEqual[a, -1.24e-110], N[(y * N[(t / a), $MachinePrecision]), $MachinePrecision], If[LessEqual[a, -4e-226], t, If[LessEqual[a, 1.9e-180], t$95$1, If[LessEqual[a, 5.5e+60], t, If[LessEqual[a, 2.2e+82], t$95$1, x]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := x \cdot \frac{y}{z}\\
\mathbf{if}\;a \leq -0.00029:\\
\;\;\;\;x\\
\mathbf{elif}\;a \leq -1.24 \cdot 10^{-110}:\\
\;\;\;\;y \cdot \frac{t}{a}\\
\mathbf{elif}\;a \leq -4 \cdot 10^{-226}:\\
\;\;\;\;t\\
\mathbf{elif}\;a \leq 1.9 \cdot 10^{-180}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;a \leq 5.5 \cdot 10^{+60}:\\
\;\;\;\;t\\
\mathbf{elif}\;a \leq 2.2 \cdot 10^{+82}:\\
\;\;\;\;t\_1\\
\mathbf{else}:\\
\;\;\;\;x\\
\end{array}
\end{array}
if a < -2.9e-4 or 2.2000000000000001e82 < a Initial program 70.0%
associate-/l*87.7%
Simplified87.7%
Taylor expanded in a around inf 52.1%
if -2.9e-4 < a < -1.24000000000000006e-110Initial program 81.0%
associate-/l*88.8%
Simplified88.8%
Taylor expanded in z around 0 54.0%
Taylor expanded in y around inf 46.1%
Taylor expanded in t around inf 38.9%
if -1.24000000000000006e-110 < a < -3.99999999999999969e-226 or 1.9e-180 < a < 5.5000000000000001e60Initial program 62.0%
associate-/l*77.0%
Simplified77.0%
Taylor expanded in z around inf 45.5%
if -3.99999999999999969e-226 < a < 1.9e-180 or 5.5000000000000001e60 < a < 2.2000000000000001e82Initial program 76.7%
associate-/l*74.9%
Simplified74.9%
associate-*r/76.7%
clear-num76.5%
associate-/r*85.2%
Applied egg-rr85.2%
Taylor expanded in t around 0 41.6%
mul-1-neg41.6%
unsub-neg41.6%
associate-/l*46.8%
Simplified46.8%
Taylor expanded in y around inf 48.7%
associate-*r/48.7%
mul-1-neg48.7%
*-commutative48.7%
Simplified48.7%
Taylor expanded in a around 0 45.5%
associate-/l*49.2%
Simplified49.2%
Final simplification48.6%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (+ x (* (- x t) (/ (- z y) a)))))
(if (<= a -1.05e-58)
t_1
(if (<= a 5.2e-104)
(+ t (* y (/ (- x t) z)))
(if (or (<= a 1.3e-27) (not (<= a 2e+67)))
t_1
(* t (/ (- y z) (- a z))))))))
double code(double x, double y, double z, double t, double a) {
double t_1 = x + ((x - t) * ((z - y) / a));
double tmp;
if (a <= -1.05e-58) {
tmp = t_1;
} else if (a <= 5.2e-104) {
tmp = t + (y * ((x - t) / z));
} else if ((a <= 1.3e-27) || !(a <= 2e+67)) {
tmp = t_1;
} else {
tmp = t * ((y - z) / (a - z));
}
return tmp;
}
real(8) function code(x, y, z, t, a)
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) :: t_1
real(8) :: tmp
t_1 = x + ((x - t) * ((z - y) / a))
if (a <= (-1.05d-58)) then
tmp = t_1
else if (a <= 5.2d-104) then
tmp = t + (y * ((x - t) / z))
else if ((a <= 1.3d-27) .or. (.not. (a <= 2d+67))) then
tmp = t_1
else
tmp = t * ((y - z) / (a - z))
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double t_1 = x + ((x - t) * ((z - y) / a));
double tmp;
if (a <= -1.05e-58) {
tmp = t_1;
} else if (a <= 5.2e-104) {
tmp = t + (y * ((x - t) / z));
} else if ((a <= 1.3e-27) || !(a <= 2e+67)) {
tmp = t_1;
} else {
tmp = t * ((y - z) / (a - z));
}
return tmp;
}
def code(x, y, z, t, a): t_1 = x + ((x - t) * ((z - y) / a)) tmp = 0 if a <= -1.05e-58: tmp = t_1 elif a <= 5.2e-104: tmp = t + (y * ((x - t) / z)) elif (a <= 1.3e-27) or not (a <= 2e+67): tmp = t_1 else: tmp = t * ((y - z) / (a - z)) return tmp
function code(x, y, z, t, a) t_1 = Float64(x + Float64(Float64(x - t) * Float64(Float64(z - y) / a))) tmp = 0.0 if (a <= -1.05e-58) tmp = t_1; elseif (a <= 5.2e-104) tmp = Float64(t + Float64(y * Float64(Float64(x - t) / z))); elseif ((a <= 1.3e-27) || !(a <= 2e+67)) tmp = t_1; else tmp = Float64(t * Float64(Float64(y - z) / Float64(a - z))); end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = x + ((x - t) * ((z - y) / a)); tmp = 0.0; if (a <= -1.05e-58) tmp = t_1; elseif (a <= 5.2e-104) tmp = t + (y * ((x - t) / z)); elseif ((a <= 1.3e-27) || ~((a <= 2e+67))) tmp = t_1; else tmp = t * ((y - z) / (a - z)); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(x + N[(N[(x - t), $MachinePrecision] * N[(N[(z - y), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[a, -1.05e-58], t$95$1, If[LessEqual[a, 5.2e-104], N[(t + N[(y * N[(N[(x - t), $MachinePrecision] / z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[Or[LessEqual[a, 1.3e-27], N[Not[LessEqual[a, 2e+67]], $MachinePrecision]], t$95$1, N[(t * N[(N[(y - z), $MachinePrecision] / N[(a - z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := x + \left(x - t\right) \cdot \frac{z - y}{a}\\
\mathbf{if}\;a \leq -1.05 \cdot 10^{-58}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;a \leq 5.2 \cdot 10^{-104}:\\
\;\;\;\;t + y \cdot \frac{x - t}{z}\\
\mathbf{elif}\;a \leq 1.3 \cdot 10^{-27} \lor \neg \left(a \leq 2 \cdot 10^{+67}\right):\\
\;\;\;\;t\_1\\
\mathbf{else}:\\
\;\;\;\;t \cdot \frac{y - z}{a - z}\\
\end{array}
\end{array}
if a < -1.04999999999999994e-58 or 5.20000000000000005e-104 < a < 1.30000000000000009e-27 or 1.99999999999999997e67 < a Initial program 71.3%
associate-/l*88.0%
Simplified88.0%
Taylor expanded in a around inf 64.1%
associate-/l*76.6%
Simplified76.6%
if -1.04999999999999994e-58 < a < 5.20000000000000005e-104Initial program 68.4%
associate-/l*72.3%
Simplified72.3%
Taylor expanded in z around inf 81.8%
associate--l+81.8%
associate-*r/81.8%
associate-*r/81.8%
mul-1-neg81.8%
div-sub83.0%
mul-1-neg83.0%
distribute-lft-out--83.0%
associate-*r/83.0%
mul-1-neg83.0%
unsub-neg83.0%
distribute-rgt-out--83.0%
Simplified83.0%
Taylor expanded in y around inf 81.8%
associate-/l*86.7%
Simplified86.7%
if 1.30000000000000009e-27 < a < 1.99999999999999997e67Initial program 77.9%
associate-/l*92.5%
Simplified92.5%
Taylor expanded in x around 0 63.0%
associate-/l*77.5%
Simplified77.5%
Final simplification80.4%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (* x (/ y z))))
(if (<= a -0.0026)
x
(if (<= a -1.45e-226)
t
(if (<= a 5.5e-181)
t_1
(if (<= a 4.2e+60) t (if (<= a 1e+83) t_1 x)))))))
double code(double x, double y, double z, double t, double a) {
double t_1 = x * (y / z);
double tmp;
if (a <= -0.0026) {
tmp = x;
} else if (a <= -1.45e-226) {
tmp = t;
} else if (a <= 5.5e-181) {
tmp = t_1;
} else if (a <= 4.2e+60) {
tmp = t;
} else if (a <= 1e+83) {
tmp = t_1;
} else {
tmp = x;
}
return tmp;
}
real(8) function code(x, y, z, t, a)
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) :: t_1
real(8) :: tmp
t_1 = x * (y / z)
if (a <= (-0.0026d0)) then
tmp = x
else if (a <= (-1.45d-226)) then
tmp = t
else if (a <= 5.5d-181) then
tmp = t_1
else if (a <= 4.2d+60) then
tmp = t
else if (a <= 1d+83) then
tmp = t_1
else
tmp = x
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double t_1 = x * (y / z);
double tmp;
if (a <= -0.0026) {
tmp = x;
} else if (a <= -1.45e-226) {
tmp = t;
} else if (a <= 5.5e-181) {
tmp = t_1;
} else if (a <= 4.2e+60) {
tmp = t;
} else if (a <= 1e+83) {
tmp = t_1;
} else {
tmp = x;
}
return tmp;
}
def code(x, y, z, t, a): t_1 = x * (y / z) tmp = 0 if a <= -0.0026: tmp = x elif a <= -1.45e-226: tmp = t elif a <= 5.5e-181: tmp = t_1 elif a <= 4.2e+60: tmp = t elif a <= 1e+83: tmp = t_1 else: tmp = x return tmp
function code(x, y, z, t, a) t_1 = Float64(x * Float64(y / z)) tmp = 0.0 if (a <= -0.0026) tmp = x; elseif (a <= -1.45e-226) tmp = t; elseif (a <= 5.5e-181) tmp = t_1; elseif (a <= 4.2e+60) tmp = t; elseif (a <= 1e+83) tmp = t_1; else tmp = x; end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = x * (y / z); tmp = 0.0; if (a <= -0.0026) tmp = x; elseif (a <= -1.45e-226) tmp = t; elseif (a <= 5.5e-181) tmp = t_1; elseif (a <= 4.2e+60) tmp = t; elseif (a <= 1e+83) tmp = t_1; else tmp = x; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(x * N[(y / z), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[a, -0.0026], x, If[LessEqual[a, -1.45e-226], t, If[LessEqual[a, 5.5e-181], t$95$1, If[LessEqual[a, 4.2e+60], t, If[LessEqual[a, 1e+83], t$95$1, x]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := x \cdot \frac{y}{z}\\
\mathbf{if}\;a \leq -0.0026:\\
\;\;\;\;x\\
\mathbf{elif}\;a \leq -1.45 \cdot 10^{-226}:\\
\;\;\;\;t\\
\mathbf{elif}\;a \leq 5.5 \cdot 10^{-181}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;a \leq 4.2 \cdot 10^{+60}:\\
\;\;\;\;t\\
\mathbf{elif}\;a \leq 10^{+83}:\\
\;\;\;\;t\_1\\
\mathbf{else}:\\
\;\;\;\;x\\
\end{array}
\end{array}
if a < -0.0025999999999999999 or 1.00000000000000003e83 < a Initial program 70.0%
associate-/l*87.7%
Simplified87.7%
Taylor expanded in a around inf 52.1%
if -0.0025999999999999999 < a < -1.45000000000000001e-226 or 5.50000000000000033e-181 < a < 4.2000000000000002e60Initial program 67.4%
associate-/l*80.4%
Simplified80.4%
Taylor expanded in z around inf 38.7%
if -1.45000000000000001e-226 < a < 5.50000000000000033e-181 or 4.2000000000000002e60 < a < 1.00000000000000003e83Initial program 76.7%
associate-/l*74.9%
Simplified74.9%
associate-*r/76.7%
clear-num76.5%
associate-/r*85.2%
Applied egg-rr85.2%
Taylor expanded in t around 0 41.6%
mul-1-neg41.6%
unsub-neg41.6%
associate-/l*46.8%
Simplified46.8%
Taylor expanded in y around inf 48.7%
associate-*r/48.7%
mul-1-neg48.7%
*-commutative48.7%
Simplified48.7%
Taylor expanded in a around 0 45.5%
associate-/l*49.2%
Simplified49.2%
Final simplification46.9%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (* t (/ (- y z) (- a z)))) (t_2 (- x (* x (/ y a)))))
(if (<= a -0.00175)
t_2
(if (<= a -2.7e-226)
t_1
(if (<= a 2.2e-181) (/ (* y (- x t)) z) (if (<= a 8.5e+67) t_1 t_2))))))
double code(double x, double y, double z, double t, double a) {
double t_1 = t * ((y - z) / (a - z));
double t_2 = x - (x * (y / a));
double tmp;
if (a <= -0.00175) {
tmp = t_2;
} else if (a <= -2.7e-226) {
tmp = t_1;
} else if (a <= 2.2e-181) {
tmp = (y * (x - t)) / z;
} else if (a <= 8.5e+67) {
tmp = t_1;
} else {
tmp = t_2;
}
return tmp;
}
real(8) function code(x, y, z, t, a)
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) :: t_1
real(8) :: t_2
real(8) :: tmp
t_1 = t * ((y - z) / (a - z))
t_2 = x - (x * (y / a))
if (a <= (-0.00175d0)) then
tmp = t_2
else if (a <= (-2.7d-226)) then
tmp = t_1
else if (a <= 2.2d-181) then
tmp = (y * (x - t)) / z
else if (a <= 8.5d+67) 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 t_1 = t * ((y - z) / (a - z));
double t_2 = x - (x * (y / a));
double tmp;
if (a <= -0.00175) {
tmp = t_2;
} else if (a <= -2.7e-226) {
tmp = t_1;
} else if (a <= 2.2e-181) {
tmp = (y * (x - t)) / z;
} else if (a <= 8.5e+67) {
tmp = t_1;
} else {
tmp = t_2;
}
return tmp;
}
def code(x, y, z, t, a): t_1 = t * ((y - z) / (a - z)) t_2 = x - (x * (y / a)) tmp = 0 if a <= -0.00175: tmp = t_2 elif a <= -2.7e-226: tmp = t_1 elif a <= 2.2e-181: tmp = (y * (x - t)) / z elif a <= 8.5e+67: tmp = t_1 else: tmp = t_2 return tmp
function code(x, y, z, t, a) t_1 = Float64(t * Float64(Float64(y - z) / Float64(a - z))) t_2 = Float64(x - Float64(x * Float64(y / a))) tmp = 0.0 if (a <= -0.00175) tmp = t_2; elseif (a <= -2.7e-226) tmp = t_1; elseif (a <= 2.2e-181) tmp = Float64(Float64(y * Float64(x - t)) / z); elseif (a <= 8.5e+67) tmp = t_1; else tmp = t_2; end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = t * ((y - z) / (a - z)); t_2 = x - (x * (y / a)); tmp = 0.0; if (a <= -0.00175) tmp = t_2; elseif (a <= -2.7e-226) tmp = t_1; elseif (a <= 2.2e-181) tmp = (y * (x - t)) / z; elseif (a <= 8.5e+67) tmp = t_1; else tmp = t_2; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(t * N[(N[(y - z), $MachinePrecision] / N[(a - z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(x - N[(x * N[(y / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[a, -0.00175], t$95$2, If[LessEqual[a, -2.7e-226], t$95$1, If[LessEqual[a, 2.2e-181], N[(N[(y * N[(x - t), $MachinePrecision]), $MachinePrecision] / z), $MachinePrecision], If[LessEqual[a, 8.5e+67], t$95$1, t$95$2]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := t \cdot \frac{y - z}{a - z}\\
t_2 := x - x \cdot \frac{y}{a}\\
\mathbf{if}\;a \leq -0.00175:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;a \leq -2.7 \cdot 10^{-226}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;a \leq 2.2 \cdot 10^{-181}:\\
\;\;\;\;\frac{y \cdot \left(x - t\right)}{z}\\
\mathbf{elif}\;a \leq 8.5 \cdot 10^{+67}:\\
\;\;\;\;t\_1\\
\mathbf{else}:\\
\;\;\;\;t\_2\\
\end{array}
\end{array}
if a < -0.00175000000000000004 or 8.50000000000000038e67 < a Initial program 69.4%
associate-/l*87.3%
Simplified87.3%
Taylor expanded in z around 0 61.9%
Taylor expanded in t around 0 55.7%
mul-1-neg55.7%
unsub-neg55.7%
associate-/l*65.4%
Simplified65.4%
if -0.00175000000000000004 < a < -2.70000000000000014e-226 or 2.19999999999999997e-181 < a < 8.50000000000000038e67Initial program 68.8%
associate-/l*81.2%
Simplified81.2%
Taylor expanded in x around 0 57.2%
associate-/l*71.4%
Simplified71.4%
if -2.70000000000000014e-226 < a < 2.19999999999999997e-181Initial program 77.0%
associate-/l*72.8%
Simplified72.8%
Taylor expanded in z around inf 90.1%
associate--l+90.1%
associate-*r/90.1%
associate-*r/90.1%
mul-1-neg90.1%
div-sub90.1%
mul-1-neg90.1%
distribute-lft-out--90.1%
associate-*r/90.1%
mul-1-neg90.1%
unsub-neg90.1%
distribute-rgt-out--90.2%
Simplified90.2%
Taylor expanded in y around -inf 69.2%
associate-*r/69.2%
mul-1-neg69.2%
Simplified69.2%
Final simplification68.3%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (* t (/ (- y z) (- a z)))) (t_2 (- x (* x (/ y a)))))
(if (<= a -0.0023)
t_2
(if (<= a -6.8e-227)
t_1
(if (<= a 4.1e-181)
(* y (/ (- t x) (- a z)))
(if (<= a 1.45e+68) t_1 t_2))))))
double code(double x, double y, double z, double t, double a) {
double t_1 = t * ((y - z) / (a - z));
double t_2 = x - (x * (y / a));
double tmp;
if (a <= -0.0023) {
tmp = t_2;
} else if (a <= -6.8e-227) {
tmp = t_1;
} else if (a <= 4.1e-181) {
tmp = y * ((t - x) / (a - z));
} else if (a <= 1.45e+68) {
tmp = t_1;
} else {
tmp = t_2;
}
return tmp;
}
real(8) function code(x, y, z, t, a)
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) :: t_1
real(8) :: t_2
real(8) :: tmp
t_1 = t * ((y - z) / (a - z))
t_2 = x - (x * (y / a))
if (a <= (-0.0023d0)) then
tmp = t_2
else if (a <= (-6.8d-227)) then
tmp = t_1
else if (a <= 4.1d-181) then
tmp = y * ((t - x) / (a - z))
else if (a <= 1.45d+68) 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 t_1 = t * ((y - z) / (a - z));
double t_2 = x - (x * (y / a));
double tmp;
if (a <= -0.0023) {
tmp = t_2;
} else if (a <= -6.8e-227) {
tmp = t_1;
} else if (a <= 4.1e-181) {
tmp = y * ((t - x) / (a - z));
} else if (a <= 1.45e+68) {
tmp = t_1;
} else {
tmp = t_2;
}
return tmp;
}
def code(x, y, z, t, a): t_1 = t * ((y - z) / (a - z)) t_2 = x - (x * (y / a)) tmp = 0 if a <= -0.0023: tmp = t_2 elif a <= -6.8e-227: tmp = t_1 elif a <= 4.1e-181: tmp = y * ((t - x) / (a - z)) elif a <= 1.45e+68: tmp = t_1 else: tmp = t_2 return tmp
function code(x, y, z, t, a) t_1 = Float64(t * Float64(Float64(y - z) / Float64(a - z))) t_2 = Float64(x - Float64(x * Float64(y / a))) tmp = 0.0 if (a <= -0.0023) tmp = t_2; elseif (a <= -6.8e-227) tmp = t_1; elseif (a <= 4.1e-181) tmp = Float64(y * Float64(Float64(t - x) / Float64(a - z))); elseif (a <= 1.45e+68) tmp = t_1; else tmp = t_2; end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = t * ((y - z) / (a - z)); t_2 = x - (x * (y / a)); tmp = 0.0; if (a <= -0.0023) tmp = t_2; elseif (a <= -6.8e-227) tmp = t_1; elseif (a <= 4.1e-181) tmp = y * ((t - x) / (a - z)); elseif (a <= 1.45e+68) tmp = t_1; else tmp = t_2; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(t * N[(N[(y - z), $MachinePrecision] / N[(a - z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(x - N[(x * N[(y / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[a, -0.0023], t$95$2, If[LessEqual[a, -6.8e-227], t$95$1, If[LessEqual[a, 4.1e-181], N[(y * N[(N[(t - x), $MachinePrecision] / N[(a - z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[a, 1.45e+68], t$95$1, t$95$2]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := t \cdot \frac{y - z}{a - z}\\
t_2 := x - x \cdot \frac{y}{a}\\
\mathbf{if}\;a \leq -0.0023:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;a \leq -6.8 \cdot 10^{-227}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;a \leq 4.1 \cdot 10^{-181}:\\
\;\;\;\;y \cdot \frac{t - x}{a - z}\\
\mathbf{elif}\;a \leq 1.45 \cdot 10^{+68}:\\
\;\;\;\;t\_1\\
\mathbf{else}:\\
\;\;\;\;t\_2\\
\end{array}
\end{array}
if a < -0.0023 or 1.45000000000000006e68 < a Initial program 69.4%
associate-/l*87.3%
Simplified87.3%
Taylor expanded in z around 0 61.9%
Taylor expanded in t around 0 55.7%
mul-1-neg55.7%
unsub-neg55.7%
associate-/l*65.4%
Simplified65.4%
if -0.0023 < a < -6.79999999999999958e-227 or 4.1000000000000001e-181 < a < 1.45000000000000006e68Initial program 68.8%
associate-/l*81.2%
Simplified81.2%
Taylor expanded in x around 0 57.2%
associate-/l*71.4%
Simplified71.4%
if -6.79999999999999958e-227 < a < 4.1000000000000001e-181Initial program 77.0%
associate-/l*72.8%
Simplified72.8%
Taylor expanded in y around inf 72.9%
div-sub72.9%
Simplified72.9%
Final simplification68.9%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (* t (/ (- y z) (- a z)))) (t_2 (+ x (* y (/ (- t x) a)))))
(if (<= a -0.00032)
t_2
(if (<= a -3.8e-226)
t_1
(if (<= a 6.5e-181)
(* y (/ (- t x) (- a z)))
(if (<= a 5.2e+59) t_1 t_2))))))
double code(double x, double y, double z, double t, double a) {
double t_1 = t * ((y - z) / (a - z));
double t_2 = x + (y * ((t - x) / a));
double tmp;
if (a <= -0.00032) {
tmp = t_2;
} else if (a <= -3.8e-226) {
tmp = t_1;
} else if (a <= 6.5e-181) {
tmp = y * ((t - x) / (a - z));
} else if (a <= 5.2e+59) {
tmp = t_1;
} else {
tmp = t_2;
}
return tmp;
}
real(8) function code(x, y, z, t, a)
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) :: t_1
real(8) :: t_2
real(8) :: tmp
t_1 = t * ((y - z) / (a - z))
t_2 = x + (y * ((t - x) / a))
if (a <= (-0.00032d0)) then
tmp = t_2
else if (a <= (-3.8d-226)) then
tmp = t_1
else if (a <= 6.5d-181) then
tmp = y * ((t - x) / (a - z))
else if (a <= 5.2d+59) 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 t_1 = t * ((y - z) / (a - z));
double t_2 = x + (y * ((t - x) / a));
double tmp;
if (a <= -0.00032) {
tmp = t_2;
} else if (a <= -3.8e-226) {
tmp = t_1;
} else if (a <= 6.5e-181) {
tmp = y * ((t - x) / (a - z));
} else if (a <= 5.2e+59) {
tmp = t_1;
} else {
tmp = t_2;
}
return tmp;
}
def code(x, y, z, t, a): t_1 = t * ((y - z) / (a - z)) t_2 = x + (y * ((t - x) / a)) tmp = 0 if a <= -0.00032: tmp = t_2 elif a <= -3.8e-226: tmp = t_1 elif a <= 6.5e-181: tmp = y * ((t - x) / (a - z)) elif a <= 5.2e+59: tmp = t_1 else: tmp = t_2 return tmp
function code(x, y, z, t, a) t_1 = Float64(t * Float64(Float64(y - z) / Float64(a - z))) t_2 = Float64(x + Float64(y * Float64(Float64(t - x) / a))) tmp = 0.0 if (a <= -0.00032) tmp = t_2; elseif (a <= -3.8e-226) tmp = t_1; elseif (a <= 6.5e-181) tmp = Float64(y * Float64(Float64(t - x) / Float64(a - z))); elseif (a <= 5.2e+59) tmp = t_1; else tmp = t_2; end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = t * ((y - z) / (a - z)); t_2 = x + (y * ((t - x) / a)); tmp = 0.0; if (a <= -0.00032) tmp = t_2; elseif (a <= -3.8e-226) tmp = t_1; elseif (a <= 6.5e-181) tmp = y * ((t - x) / (a - z)); elseif (a <= 5.2e+59) tmp = t_1; else tmp = t_2; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(t * N[(N[(y - z), $MachinePrecision] / N[(a - z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(x + N[(y * N[(N[(t - x), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[a, -0.00032], t$95$2, If[LessEqual[a, -3.8e-226], t$95$1, If[LessEqual[a, 6.5e-181], N[(y * N[(N[(t - x), $MachinePrecision] / N[(a - z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[a, 5.2e+59], t$95$1, t$95$2]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := t \cdot \frac{y - z}{a - z}\\
t_2 := x + y \cdot \frac{t - x}{a}\\
\mathbf{if}\;a \leq -0.00032:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;a \leq -3.8 \cdot 10^{-226}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;a \leq 6.5 \cdot 10^{-181}:\\
\;\;\;\;y \cdot \frac{t - x}{a - z}\\
\mathbf{elif}\;a \leq 5.2 \cdot 10^{+59}:\\
\;\;\;\;t\_1\\
\mathbf{else}:\\
\;\;\;\;t\_2\\
\end{array}
\end{array}
if a < -3.20000000000000026e-4 or 5.19999999999999999e59 < a Initial program 70.4%
associate-/l*87.7%
Simplified87.7%
Taylor expanded in z around 0 61.9%
associate-/l*71.8%
Simplified71.8%
if -3.20000000000000026e-4 < a < -3.79999999999999981e-226 or 6.4999999999999997e-181 < a < 5.19999999999999999e59Initial program 67.4%
associate-/l*80.4%
Simplified80.4%
Taylor expanded in x around 0 57.4%
associate-/l*72.3%
Simplified72.3%
if -3.79999999999999981e-226 < a < 6.4999999999999997e-181Initial program 77.0%
associate-/l*72.8%
Simplified72.8%
Taylor expanded in y around inf 72.9%
div-sub72.9%
Simplified72.9%
Final simplification72.2%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (+ x (* y (/ (- t x) a)))))
(if (<= a -1.55e-59)
t_1
(if (<= a 1.25e-111)
(+ t (* y (/ (- x t) z)))
(if (<= a 4.7e+58)
(* t (/ (- y z) (- a z)))
(if (<= a 1.15e+82) (* y (/ (- t x) (- a z))) t_1))))))
double code(double x, double y, double z, double t, double a) {
double t_1 = x + (y * ((t - x) / a));
double tmp;
if (a <= -1.55e-59) {
tmp = t_1;
} else if (a <= 1.25e-111) {
tmp = t + (y * ((x - t) / z));
} else if (a <= 4.7e+58) {
tmp = t * ((y - z) / (a - z));
} else if (a <= 1.15e+82) {
tmp = y * ((t - x) / (a - z));
} else {
tmp = t_1;
}
return tmp;
}
real(8) function code(x, y, z, t, a)
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) :: t_1
real(8) :: tmp
t_1 = x + (y * ((t - x) / a))
if (a <= (-1.55d-59)) then
tmp = t_1
else if (a <= 1.25d-111) then
tmp = t + (y * ((x - t) / z))
else if (a <= 4.7d+58) then
tmp = t * ((y - z) / (a - z))
else if (a <= 1.15d+82) then
tmp = y * ((t - x) / (a - z))
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 t_1 = x + (y * ((t - x) / a));
double tmp;
if (a <= -1.55e-59) {
tmp = t_1;
} else if (a <= 1.25e-111) {
tmp = t + (y * ((x - t) / z));
} else if (a <= 4.7e+58) {
tmp = t * ((y - z) / (a - z));
} else if (a <= 1.15e+82) {
tmp = y * ((t - x) / (a - z));
} else {
tmp = t_1;
}
return tmp;
}
def code(x, y, z, t, a): t_1 = x + (y * ((t - x) / a)) tmp = 0 if a <= -1.55e-59: tmp = t_1 elif a <= 1.25e-111: tmp = t + (y * ((x - t) / z)) elif a <= 4.7e+58: tmp = t * ((y - z) / (a - z)) elif a <= 1.15e+82: tmp = y * ((t - x) / (a - z)) else: tmp = t_1 return tmp
function code(x, y, z, t, a) t_1 = Float64(x + Float64(y * Float64(Float64(t - x) / a))) tmp = 0.0 if (a <= -1.55e-59) tmp = t_1; elseif (a <= 1.25e-111) tmp = Float64(t + Float64(y * Float64(Float64(x - t) / z))); elseif (a <= 4.7e+58) tmp = Float64(t * Float64(Float64(y - z) / Float64(a - z))); elseif (a <= 1.15e+82) tmp = Float64(y * Float64(Float64(t - x) / Float64(a - z))); else tmp = t_1; end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = x + (y * ((t - x) / a)); tmp = 0.0; if (a <= -1.55e-59) tmp = t_1; elseif (a <= 1.25e-111) tmp = t + (y * ((x - t) / z)); elseif (a <= 4.7e+58) tmp = t * ((y - z) / (a - z)); elseif (a <= 1.15e+82) tmp = y * ((t - x) / (a - z)); else tmp = t_1; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(x + N[(y * N[(N[(t - x), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[a, -1.55e-59], t$95$1, If[LessEqual[a, 1.25e-111], N[(t + N[(y * N[(N[(x - t), $MachinePrecision] / z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[a, 4.7e+58], N[(t * N[(N[(y - z), $MachinePrecision] / N[(a - z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[a, 1.15e+82], N[(y * N[(N[(t - x), $MachinePrecision] / N[(a - z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], t$95$1]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := x + y \cdot \frac{t - x}{a}\\
\mathbf{if}\;a \leq -1.55 \cdot 10^{-59}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;a \leq 1.25 \cdot 10^{-111}:\\
\;\;\;\;t + y \cdot \frac{x - t}{z}\\
\mathbf{elif}\;a \leq 4.7 \cdot 10^{+58}:\\
\;\;\;\;t \cdot \frac{y - z}{a - z}\\
\mathbf{elif}\;a \leq 1.15 \cdot 10^{+82}:\\
\;\;\;\;y \cdot \frac{t - x}{a - z}\\
\mathbf{else}:\\
\;\;\;\;t\_1\\
\end{array}
\end{array}
if a < -1.55e-59 or 1.14999999999999994e82 < a Initial program 71.3%
associate-/l*87.7%
Simplified87.7%
Taylor expanded in z around 0 62.1%
associate-/l*71.6%
Simplified71.6%
if -1.55e-59 < a < 1.2500000000000001e-111Initial program 68.7%
associate-/l*72.7%
Simplified72.7%
Taylor expanded in z around inf 81.4%
associate--l+81.4%
associate-*r/81.4%
associate-*r/81.4%
mul-1-neg81.4%
div-sub82.6%
mul-1-neg82.6%
distribute-lft-out--82.6%
associate-*r/82.6%
mul-1-neg82.6%
unsub-neg82.6%
distribute-rgt-out--82.6%
Simplified82.6%
Taylor expanded in y around inf 81.5%
associate-/l*86.4%
Simplified86.4%
if 1.2500000000000001e-111 < a < 4.69999999999999972e58Initial program 72.9%
associate-/l*89.5%
Simplified89.5%
Taylor expanded in x around 0 51.9%
associate-/l*68.5%
Simplified68.5%
if 4.69999999999999972e58 < a < 1.14999999999999994e82Initial program 72.0%
associate-/l*85.5%
Simplified85.5%
Taylor expanded in y around inf 85.4%
div-sub85.4%
Simplified85.4%
Final simplification77.0%
(FPCore (x y z t a)
:precision binary64
(if (<= a -0.0012)
(- x (* x (/ y a)))
(if (<= a -1.05e-110)
(* y (/ (- t x) a))
(if (<= a -3.8e-226)
t
(if (<= a 7e-112) (* x (/ (- y a) z)) (+ x (* t (/ y a))))))))
double code(double x, double y, double z, double t, double a) {
double tmp;
if (a <= -0.0012) {
tmp = x - (x * (y / a));
} else if (a <= -1.05e-110) {
tmp = y * ((t - x) / a);
} else if (a <= -3.8e-226) {
tmp = t;
} else if (a <= 7e-112) {
tmp = x * ((y - a) / z);
} else {
tmp = x + (t * (y / a));
}
return tmp;
}
real(8) function code(x, y, z, t, a)
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) :: tmp
if (a <= (-0.0012d0)) then
tmp = x - (x * (y / a))
else if (a <= (-1.05d-110)) then
tmp = y * ((t - x) / a)
else if (a <= (-3.8d-226)) then
tmp = t
else if (a <= 7d-112) then
tmp = x * ((y - a) / z)
else
tmp = x + (t * (y / a))
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double tmp;
if (a <= -0.0012) {
tmp = x - (x * (y / a));
} else if (a <= -1.05e-110) {
tmp = y * ((t - x) / a);
} else if (a <= -3.8e-226) {
tmp = t;
} else if (a <= 7e-112) {
tmp = x * ((y - a) / z);
} else {
tmp = x + (t * (y / a));
}
return tmp;
}
def code(x, y, z, t, a): tmp = 0 if a <= -0.0012: tmp = x - (x * (y / a)) elif a <= -1.05e-110: tmp = y * ((t - x) / a) elif a <= -3.8e-226: tmp = t elif a <= 7e-112: tmp = x * ((y - a) / z) else: tmp = x + (t * (y / a)) return tmp
function code(x, y, z, t, a) tmp = 0.0 if (a <= -0.0012) tmp = Float64(x - Float64(x * Float64(y / a))); elseif (a <= -1.05e-110) tmp = Float64(y * Float64(Float64(t - x) / a)); elseif (a <= -3.8e-226) tmp = t; elseif (a <= 7e-112) tmp = Float64(x * Float64(Float64(y - a) / z)); else tmp = Float64(x + Float64(t * Float64(y / a))); end return tmp end
function tmp_2 = code(x, y, z, t, a) tmp = 0.0; if (a <= -0.0012) tmp = x - (x * (y / a)); elseif (a <= -1.05e-110) tmp = y * ((t - x) / a); elseif (a <= -3.8e-226) tmp = t; elseif (a <= 7e-112) tmp = x * ((y - a) / z); else tmp = x + (t * (y / a)); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := If[LessEqual[a, -0.0012], N[(x - N[(x * N[(y / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[a, -1.05e-110], N[(y * N[(N[(t - x), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision], If[LessEqual[a, -3.8e-226], t, If[LessEqual[a, 7e-112], N[(x * N[(N[(y - a), $MachinePrecision] / z), $MachinePrecision]), $MachinePrecision], N[(x + N[(t * N[(y / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;a \leq -0.0012:\\
\;\;\;\;x - x \cdot \frac{y}{a}\\
\mathbf{elif}\;a \leq -1.05 \cdot 10^{-110}:\\
\;\;\;\;y \cdot \frac{t - x}{a}\\
\mathbf{elif}\;a \leq -3.8 \cdot 10^{-226}:\\
\;\;\;\;t\\
\mathbf{elif}\;a \leq 7 \cdot 10^{-112}:\\
\;\;\;\;x \cdot \frac{y - a}{z}\\
\mathbf{else}:\\
\;\;\;\;x + t \cdot \frac{y}{a}\\
\end{array}
\end{array}
if a < -0.00119999999999999989Initial program 80.5%
associate-/l*86.0%
Simplified86.0%
Taylor expanded in z around 0 69.9%
Taylor expanded in t around 0 60.8%
mul-1-neg60.8%
unsub-neg60.8%
associate-/l*65.7%
Simplified65.7%
if -0.00119999999999999989 < a < -1.05000000000000001e-110Initial program 81.0%
associate-/l*88.8%
Simplified88.8%
Taylor expanded in z around 0 54.0%
Taylor expanded in y around inf 46.1%
Taylor expanded in a around 0 50.1%
if -1.05000000000000001e-110 < a < -3.79999999999999981e-226Initial program 50.1%
associate-/l*69.2%
Simplified69.2%
Taylor expanded in z around inf 61.5%
if -3.79999999999999981e-226 < a < 6.99999999999999988e-112Initial program 74.2%
associate-/l*70.8%
Simplified70.8%
Taylor expanded in z around inf 88.4%
associate--l+88.4%
associate-*r/88.4%
associate-*r/88.4%
mul-1-neg88.4%
div-sub88.6%
mul-1-neg88.6%
distribute-lft-out--88.6%
associate-*r/88.6%
mul-1-neg88.6%
unsub-neg88.6%
distribute-rgt-out--88.6%
Simplified88.6%
Taylor expanded in t around 0 44.7%
associate-/l*46.3%
Simplified46.3%
if 6.99999999999999988e-112 < a Initial program 65.0%
associate-/l*89.2%
Simplified89.2%
Taylor expanded in z around 0 52.5%
Taylor expanded in t around inf 51.9%
associate-/l*53.0%
Simplified53.0%
Final simplification54.8%
(FPCore (x y z t a)
:precision binary64
(if (<= a -0.00046)
(- x (* x (/ y a)))
(if (<= a -6.6e-111)
(* y (/ (- t x) a))
(if (<= a -1.9e-226)
t
(if (<= a 3.3e-112) (/ (* y (- x t)) z) (+ x (* t (/ y a))))))))
double code(double x, double y, double z, double t, double a) {
double tmp;
if (a <= -0.00046) {
tmp = x - (x * (y / a));
} else if (a <= -6.6e-111) {
tmp = y * ((t - x) / a);
} else if (a <= -1.9e-226) {
tmp = t;
} else if (a <= 3.3e-112) {
tmp = (y * (x - t)) / z;
} else {
tmp = x + (t * (y / a));
}
return tmp;
}
real(8) function code(x, y, z, t, a)
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) :: tmp
if (a <= (-0.00046d0)) then
tmp = x - (x * (y / a))
else if (a <= (-6.6d-111)) then
tmp = y * ((t - x) / a)
else if (a <= (-1.9d-226)) then
tmp = t
else if (a <= 3.3d-112) then
tmp = (y * (x - t)) / z
else
tmp = x + (t * (y / a))
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double tmp;
if (a <= -0.00046) {
tmp = x - (x * (y / a));
} else if (a <= -6.6e-111) {
tmp = y * ((t - x) / a);
} else if (a <= -1.9e-226) {
tmp = t;
} else if (a <= 3.3e-112) {
tmp = (y * (x - t)) / z;
} else {
tmp = x + (t * (y / a));
}
return tmp;
}
def code(x, y, z, t, a): tmp = 0 if a <= -0.00046: tmp = x - (x * (y / a)) elif a <= -6.6e-111: tmp = y * ((t - x) / a) elif a <= -1.9e-226: tmp = t elif a <= 3.3e-112: tmp = (y * (x - t)) / z else: tmp = x + (t * (y / a)) return tmp
function code(x, y, z, t, a) tmp = 0.0 if (a <= -0.00046) tmp = Float64(x - Float64(x * Float64(y / a))); elseif (a <= -6.6e-111) tmp = Float64(y * Float64(Float64(t - x) / a)); elseif (a <= -1.9e-226) tmp = t; elseif (a <= 3.3e-112) tmp = Float64(Float64(y * Float64(x - t)) / z); else tmp = Float64(x + Float64(t * Float64(y / a))); end return tmp end
function tmp_2 = code(x, y, z, t, a) tmp = 0.0; if (a <= -0.00046) tmp = x - (x * (y / a)); elseif (a <= -6.6e-111) tmp = y * ((t - x) / a); elseif (a <= -1.9e-226) tmp = t; elseif (a <= 3.3e-112) tmp = (y * (x - t)) / z; else tmp = x + (t * (y / a)); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := If[LessEqual[a, -0.00046], N[(x - N[(x * N[(y / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[a, -6.6e-111], N[(y * N[(N[(t - x), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision], If[LessEqual[a, -1.9e-226], t, If[LessEqual[a, 3.3e-112], N[(N[(y * N[(x - t), $MachinePrecision]), $MachinePrecision] / z), $MachinePrecision], N[(x + N[(t * N[(y / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;a \leq -0.00046:\\
\;\;\;\;x - x \cdot \frac{y}{a}\\
\mathbf{elif}\;a \leq -6.6 \cdot 10^{-111}:\\
\;\;\;\;y \cdot \frac{t - x}{a}\\
\mathbf{elif}\;a \leq -1.9 \cdot 10^{-226}:\\
\;\;\;\;t\\
\mathbf{elif}\;a \leq 3.3 \cdot 10^{-112}:\\
\;\;\;\;\frac{y \cdot \left(x - t\right)}{z}\\
\mathbf{else}:\\
\;\;\;\;x + t \cdot \frac{y}{a}\\
\end{array}
\end{array}
if a < -4.6000000000000001e-4Initial program 80.5%
associate-/l*86.0%
Simplified86.0%
Taylor expanded in z around 0 69.9%
Taylor expanded in t around 0 60.8%
mul-1-neg60.8%
unsub-neg60.8%
associate-/l*65.7%
Simplified65.7%
if -4.6000000000000001e-4 < a < -6.6e-111Initial program 81.0%
associate-/l*88.8%
Simplified88.8%
Taylor expanded in z around 0 54.0%
Taylor expanded in y around inf 46.1%
Taylor expanded in a around 0 50.1%
if -6.6e-111 < a < -1.89999999999999991e-226Initial program 50.1%
associate-/l*69.2%
Simplified69.2%
Taylor expanded in z around inf 61.5%
if -1.89999999999999991e-226 < a < 3.3000000000000001e-112Initial program 74.2%
associate-/l*70.8%
Simplified70.8%
Taylor expanded in z around inf 88.4%
associate--l+88.4%
associate-*r/88.4%
associate-*r/88.4%
mul-1-neg88.4%
div-sub88.6%
mul-1-neg88.6%
distribute-lft-out--88.6%
associate-*r/88.6%
mul-1-neg88.6%
unsub-neg88.6%
distribute-rgt-out--88.6%
Simplified88.6%
Taylor expanded in y around -inf 62.4%
associate-*r/62.4%
mul-1-neg62.4%
Simplified62.4%
if 3.3000000000000001e-112 < a Initial program 65.0%
associate-/l*89.2%
Simplified89.2%
Taylor expanded in z around 0 52.5%
Taylor expanded in t around inf 51.9%
associate-/l*53.0%
Simplified53.0%
Final simplification58.4%
(FPCore (x y z t a) :precision binary64 (if (or (<= z -6.8e+158) (not (<= z 1.45e+214))) (+ t (* (- t x) (* (- y a) (/ -1.0 z)))) (+ x (/ -1.0 (/ (/ (- a z) (- y z)) (- x t))))))
double code(double x, double y, double z, double t, double a) {
double tmp;
if ((z <= -6.8e+158) || !(z <= 1.45e+214)) {
tmp = t + ((t - x) * ((y - a) * (-1.0 / z)));
} else {
tmp = x + (-1.0 / (((a - z) / (y - z)) / (x - t)));
}
return tmp;
}
real(8) function code(x, y, z, t, a)
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) :: tmp
if ((z <= (-6.8d+158)) .or. (.not. (z <= 1.45d+214))) then
tmp = t + ((t - x) * ((y - a) * ((-1.0d0) / z)))
else
tmp = x + ((-1.0d0) / (((a - z) / (y - z)) / (x - t)))
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double tmp;
if ((z <= -6.8e+158) || !(z <= 1.45e+214)) {
tmp = t + ((t - x) * ((y - a) * (-1.0 / z)));
} else {
tmp = x + (-1.0 / (((a - z) / (y - z)) / (x - t)));
}
return tmp;
}
def code(x, y, z, t, a): tmp = 0 if (z <= -6.8e+158) or not (z <= 1.45e+214): tmp = t + ((t - x) * ((y - a) * (-1.0 / z))) else: tmp = x + (-1.0 / (((a - z) / (y - z)) / (x - t))) return tmp
function code(x, y, z, t, a) tmp = 0.0 if ((z <= -6.8e+158) || !(z <= 1.45e+214)) tmp = Float64(t + Float64(Float64(t - x) * Float64(Float64(y - a) * Float64(-1.0 / z)))); else tmp = Float64(x + Float64(-1.0 / Float64(Float64(Float64(a - z) / Float64(y - z)) / Float64(x - t)))); end return tmp end
function tmp_2 = code(x, y, z, t, a) tmp = 0.0; if ((z <= -6.8e+158) || ~((z <= 1.45e+214))) tmp = t + ((t - x) * ((y - a) * (-1.0 / z))); else tmp = x + (-1.0 / (((a - z) / (y - z)) / (x - t))); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := If[Or[LessEqual[z, -6.8e+158], N[Not[LessEqual[z, 1.45e+214]], $MachinePrecision]], N[(t + N[(N[(t - x), $MachinePrecision] * N[(N[(y - a), $MachinePrecision] * N[(-1.0 / z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(x + N[(-1.0 / N[(N[(N[(a - z), $MachinePrecision] / N[(y - z), $MachinePrecision]), $MachinePrecision] / N[(x - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;z \leq -6.8 \cdot 10^{+158} \lor \neg \left(z \leq 1.45 \cdot 10^{+214}\right):\\
\;\;\;\;t + \left(t - x\right) \cdot \left(\left(y - a\right) \cdot \frac{-1}{z}\right)\\
\mathbf{else}:\\
\;\;\;\;x + \frac{-1}{\frac{\frac{a - z}{y - z}}{x - t}}\\
\end{array}
\end{array}
if z < -6.7999999999999998e158 or 1.45e214 < z Initial program 29.8%
associate-/l*47.0%
Simplified47.0%
Taylor expanded in z around inf 67.3%
associate--l+67.3%
associate-*r/67.3%
associate-*r/67.3%
mul-1-neg67.3%
div-sub67.3%
mul-1-neg67.3%
distribute-lft-out--67.3%
associate-*r/67.3%
mul-1-neg67.3%
unsub-neg67.3%
distribute-rgt-out--67.8%
Simplified67.8%
div-inv67.7%
Applied egg-rr67.7%
associate-*l*93.6%
Simplified93.6%
if -6.7999999999999998e158 < z < 1.45e214Initial program 80.7%
associate-/l*91.2%
Simplified91.2%
associate-*r/80.7%
clear-num80.6%
associate-/r*93.0%
Applied egg-rr93.0%
Final simplification93.1%
(FPCore (x y z t a) :precision binary64 (if (or (<= z -4e+177) (not (<= z 1.95e+214))) (+ t (* (- t x) (* (- y a) (/ -1.0 z)))) (+ x (/ (- y z) (/ (- z a) (- x t))))))
double code(double x, double y, double z, double t, double a) {
double tmp;
if ((z <= -4e+177) || !(z <= 1.95e+214)) {
tmp = t + ((t - x) * ((y - a) * (-1.0 / z)));
} else {
tmp = x + ((y - z) / ((z - a) / (x - t)));
}
return tmp;
}
real(8) function code(x, y, z, t, a)
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) :: tmp
if ((z <= (-4d+177)) .or. (.not. (z <= 1.95d+214))) then
tmp = t + ((t - x) * ((y - a) * ((-1.0d0) / z)))
else
tmp = x + ((y - z) / ((z - a) / (x - t)))
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double tmp;
if ((z <= -4e+177) || !(z <= 1.95e+214)) {
tmp = t + ((t - x) * ((y - a) * (-1.0 / z)));
} else {
tmp = x + ((y - z) / ((z - a) / (x - t)));
}
return tmp;
}
def code(x, y, z, t, a): tmp = 0 if (z <= -4e+177) or not (z <= 1.95e+214): tmp = t + ((t - x) * ((y - a) * (-1.0 / z))) else: tmp = x + ((y - z) / ((z - a) / (x - t))) return tmp
function code(x, y, z, t, a) tmp = 0.0 if ((z <= -4e+177) || !(z <= 1.95e+214)) tmp = Float64(t + Float64(Float64(t - x) * Float64(Float64(y - a) * Float64(-1.0 / z)))); else tmp = Float64(x + Float64(Float64(y - z) / Float64(Float64(z - a) / Float64(x - t)))); end return tmp end
function tmp_2 = code(x, y, z, t, a) tmp = 0.0; if ((z <= -4e+177) || ~((z <= 1.95e+214))) tmp = t + ((t - x) * ((y - a) * (-1.0 / z))); else tmp = x + ((y - z) / ((z - a) / (x - t))); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := If[Or[LessEqual[z, -4e+177], N[Not[LessEqual[z, 1.95e+214]], $MachinePrecision]], N[(t + N[(N[(t - x), $MachinePrecision] * N[(N[(y - a), $MachinePrecision] * N[(-1.0 / z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(x + N[(N[(y - z), $MachinePrecision] / N[(N[(z - a), $MachinePrecision] / N[(x - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;z \leq -4 \cdot 10^{+177} \lor \neg \left(z \leq 1.95 \cdot 10^{+214}\right):\\
\;\;\;\;t + \left(t - x\right) \cdot \left(\left(y - a\right) \cdot \frac{-1}{z}\right)\\
\mathbf{else}:\\
\;\;\;\;x + \frac{y - z}{\frac{z - a}{x - t}}\\
\end{array}
\end{array}
if z < -4e177 or 1.95000000000000007e214 < z Initial program 27.3%
associate-/l*43.7%
Simplified43.7%
Taylor expanded in z around inf 65.3%
associate--l+65.3%
associate-*r/65.3%
associate-*r/65.3%
mul-1-neg65.3%
div-sub65.3%
mul-1-neg65.3%
distribute-lft-out--65.3%
associate-*r/65.3%
mul-1-neg65.3%
unsub-neg65.3%
distribute-rgt-out--65.7%
Simplified65.7%
div-inv65.7%
Applied egg-rr65.7%
associate-*l*93.2%
Simplified93.2%
if -4e177 < z < 1.95000000000000007e214Initial program 80.5%
associate-/l*91.4%
Simplified91.4%
clear-num91.0%
un-div-inv91.5%
Applied egg-rr91.5%
Final simplification91.8%
(FPCore (x y z t a)
:precision binary64
(if (<= z -3.1e+181)
(+ t (* y (/ (- x t) z)))
(if (<= z 2.06e+204)
(- x (* (- y z) (/ (- t x) (- z a))))
(+ t (/ (* (- t x) (- a y)) z)))))
double code(double x, double y, double z, double t, double a) {
double tmp;
if (z <= -3.1e+181) {
tmp = t + (y * ((x - t) / z));
} else if (z <= 2.06e+204) {
tmp = x - ((y - z) * ((t - x) / (z - a)));
} else {
tmp = t + (((t - x) * (a - y)) / z);
}
return tmp;
}
real(8) function code(x, y, z, t, a)
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) :: tmp
if (z <= (-3.1d+181)) then
tmp = t + (y * ((x - t) / z))
else if (z <= 2.06d+204) then
tmp = x - ((y - z) * ((t - x) / (z - a)))
else
tmp = t + (((t - x) * (a - y)) / z)
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double tmp;
if (z <= -3.1e+181) {
tmp = t + (y * ((x - t) / z));
} else if (z <= 2.06e+204) {
tmp = x - ((y - z) * ((t - x) / (z - a)));
} else {
tmp = t + (((t - x) * (a - y)) / z);
}
return tmp;
}
def code(x, y, z, t, a): tmp = 0 if z <= -3.1e+181: tmp = t + (y * ((x - t) / z)) elif z <= 2.06e+204: tmp = x - ((y - z) * ((t - x) / (z - a))) else: tmp = t + (((t - x) * (a - y)) / z) return tmp
function code(x, y, z, t, a) tmp = 0.0 if (z <= -3.1e+181) tmp = Float64(t + Float64(y * Float64(Float64(x - t) / z))); elseif (z <= 2.06e+204) tmp = Float64(x - Float64(Float64(y - z) * Float64(Float64(t - x) / Float64(z - a)))); else tmp = Float64(t + Float64(Float64(Float64(t - x) * Float64(a - y)) / z)); end return tmp end
function tmp_2 = code(x, y, z, t, a) tmp = 0.0; if (z <= -3.1e+181) tmp = t + (y * ((x - t) / z)); elseif (z <= 2.06e+204) tmp = x - ((y - z) * ((t - x) / (z - a))); else tmp = t + (((t - x) * (a - y)) / z); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := If[LessEqual[z, -3.1e+181], N[(t + N[(y * N[(N[(x - t), $MachinePrecision] / z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[z, 2.06e+204], N[(x - N[(N[(y - z), $MachinePrecision] * N[(N[(t - x), $MachinePrecision] / N[(z - a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(t + N[(N[(N[(t - x), $MachinePrecision] * N[(a - y), $MachinePrecision]), $MachinePrecision] / z), $MachinePrecision]), $MachinePrecision]]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;z \leq -3.1 \cdot 10^{+181}:\\
\;\;\;\;t + y \cdot \frac{x - t}{z}\\
\mathbf{elif}\;z \leq 2.06 \cdot 10^{+204}:\\
\;\;\;\;x - \left(y - z\right) \cdot \frac{t - x}{z - a}\\
\mathbf{else}:\\
\;\;\;\;t + \frac{\left(t - x\right) \cdot \left(a - y\right)}{z}\\
\end{array}
\end{array}
if z < -3.09999999999999989e181Initial program 22.4%
associate-/l*45.8%
Simplified45.8%
Taylor expanded in z around inf 55.2%
associate--l+55.2%
associate-*r/55.2%
associate-*r/55.2%
mul-1-neg55.2%
div-sub55.2%
mul-1-neg55.2%
distribute-lft-out--55.2%
associate-*r/55.2%
mul-1-neg55.2%
unsub-neg55.2%
distribute-rgt-out--55.4%
Simplified55.4%
Taylor expanded in y around inf 58.3%
associate-/l*85.0%
Simplified85.0%
if -3.09999999999999989e181 < z < 2.05999999999999996e204Initial program 80.1%
associate-/l*91.4%
Simplified91.4%
if 2.05999999999999996e204 < z Initial program 42.7%
associate-/l*39.4%
Simplified39.4%
Taylor expanded in z around inf 91.8%
associate--l+91.8%
associate-*r/91.8%
associate-*r/91.8%
mul-1-neg91.8%
div-sub91.8%
mul-1-neg91.8%
distribute-lft-out--91.8%
associate-*r/91.8%
mul-1-neg91.8%
unsub-neg91.8%
distribute-rgt-out--92.2%
Simplified92.2%
Final simplification90.6%
(FPCore (x y z t a)
:precision binary64
(if (<= z -2.8e+177)
(+ t (* y (/ (- x t) z)))
(if (<= z 1.08e+200)
(+ x (/ (- y z) (/ (- z a) (- x t))))
(+ t (/ (* (- t x) (- a y)) z)))))
double code(double x, double y, double z, double t, double a) {
double tmp;
if (z <= -2.8e+177) {
tmp = t + (y * ((x - t) / z));
} else if (z <= 1.08e+200) {
tmp = x + ((y - z) / ((z - a) / (x - t)));
} else {
tmp = t + (((t - x) * (a - y)) / z);
}
return tmp;
}
real(8) function code(x, y, z, t, a)
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) :: tmp
if (z <= (-2.8d+177)) then
tmp = t + (y * ((x - t) / z))
else if (z <= 1.08d+200) then
tmp = x + ((y - z) / ((z - a) / (x - t)))
else
tmp = t + (((t - x) * (a - y)) / z)
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double tmp;
if (z <= -2.8e+177) {
tmp = t + (y * ((x - t) / z));
} else if (z <= 1.08e+200) {
tmp = x + ((y - z) / ((z - a) / (x - t)));
} else {
tmp = t + (((t - x) * (a - y)) / z);
}
return tmp;
}
def code(x, y, z, t, a): tmp = 0 if z <= -2.8e+177: tmp = t + (y * ((x - t) / z)) elif z <= 1.08e+200: tmp = x + ((y - z) / ((z - a) / (x - t))) else: tmp = t + (((t - x) * (a - y)) / z) return tmp
function code(x, y, z, t, a) tmp = 0.0 if (z <= -2.8e+177) tmp = Float64(t + Float64(y * Float64(Float64(x - t) / z))); elseif (z <= 1.08e+200) tmp = Float64(x + Float64(Float64(y - z) / Float64(Float64(z - a) / Float64(x - t)))); else tmp = Float64(t + Float64(Float64(Float64(t - x) * Float64(a - y)) / z)); end return tmp end
function tmp_2 = code(x, y, z, t, a) tmp = 0.0; if (z <= -2.8e+177) tmp = t + (y * ((x - t) / z)); elseif (z <= 1.08e+200) tmp = x + ((y - z) / ((z - a) / (x - t))); else tmp = t + (((t - x) * (a - y)) / z); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := If[LessEqual[z, -2.8e+177], N[(t + N[(y * N[(N[(x - t), $MachinePrecision] / z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[z, 1.08e+200], N[(x + N[(N[(y - z), $MachinePrecision] / N[(N[(z - a), $MachinePrecision] / N[(x - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(t + N[(N[(N[(t - x), $MachinePrecision] * N[(a - y), $MachinePrecision]), $MachinePrecision] / z), $MachinePrecision]), $MachinePrecision]]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;z \leq -2.8 \cdot 10^{+177}:\\
\;\;\;\;t + y \cdot \frac{x - t}{z}\\
\mathbf{elif}\;z \leq 1.08 \cdot 10^{+200}:\\
\;\;\;\;x + \frac{y - z}{\frac{z - a}{x - t}}\\
\mathbf{else}:\\
\;\;\;\;t + \frac{\left(t - x\right) \cdot \left(a - y\right)}{z}\\
\end{array}
\end{array}
if z < -2.80000000000000002e177Initial program 22.1%
associate-/l*47.4%
Simplified47.4%
Taylor expanded in z around inf 53.5%
associate--l+53.5%
associate-*r/53.5%
associate-*r/53.5%
mul-1-neg53.5%
div-sub53.5%
mul-1-neg53.5%
distribute-lft-out--53.5%
associate-*r/53.5%
mul-1-neg53.5%
unsub-neg53.5%
distribute-rgt-out--54.0%
Simplified54.0%
Taylor expanded in y around inf 56.8%
associate-/l*85.4%
Simplified85.4%
if -2.80000000000000002e177 < z < 1.07999999999999996e200Initial program 80.5%
associate-/l*91.3%
Simplified91.3%
clear-num91.0%
un-div-inv91.4%
Applied egg-rr91.4%
if 1.07999999999999996e200 < z Initial program 42.7%
associate-/l*39.4%
Simplified39.4%
Taylor expanded in z around inf 91.8%
associate--l+91.8%
associate-*r/91.8%
associate-*r/91.8%
mul-1-neg91.8%
div-sub91.8%
mul-1-neg91.8%
distribute-lft-out--91.8%
associate-*r/91.8%
mul-1-neg91.8%
unsub-neg91.8%
distribute-rgt-out--92.2%
Simplified92.2%
Final simplification90.7%
(FPCore (x y z t a) :precision binary64 (if (<= z -8.5e+130) t (if (<= z 1.62e+111) (+ x (* t (/ y a))) t)))
double code(double x, double y, double z, double t, double a) {
double tmp;
if (z <= -8.5e+130) {
tmp = t;
} else if (z <= 1.62e+111) {
tmp = x + (t * (y / a));
} else {
tmp = t;
}
return tmp;
}
real(8) function code(x, y, z, t, a)
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) :: tmp
if (z <= (-8.5d+130)) then
tmp = t
else if (z <= 1.62d+111) then
tmp = x + (t * (y / a))
else
tmp = t
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double tmp;
if (z <= -8.5e+130) {
tmp = t;
} else if (z <= 1.62e+111) {
tmp = x + (t * (y / a));
} else {
tmp = t;
}
return tmp;
}
def code(x, y, z, t, a): tmp = 0 if z <= -8.5e+130: tmp = t elif z <= 1.62e+111: tmp = x + (t * (y / a)) else: tmp = t return tmp
function code(x, y, z, t, a) tmp = 0.0 if (z <= -8.5e+130) tmp = t; elseif (z <= 1.62e+111) tmp = Float64(x + Float64(t * Float64(y / a))); else tmp = t; end return tmp end
function tmp_2 = code(x, y, z, t, a) tmp = 0.0; if (z <= -8.5e+130) tmp = t; elseif (z <= 1.62e+111) tmp = x + (t * (y / a)); else tmp = t; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := If[LessEqual[z, -8.5e+130], t, If[LessEqual[z, 1.62e+111], N[(x + N[(t * N[(y / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], t]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;z \leq -8.5 \cdot 10^{+130}:\\
\;\;\;\;t\\
\mathbf{elif}\;z \leq 1.62 \cdot 10^{+111}:\\
\;\;\;\;x + t \cdot \frac{y}{a}\\
\mathbf{else}:\\
\;\;\;\;t\\
\end{array}
\end{array}
if z < -8.49999999999999965e130 or 1.61999999999999999e111 < z Initial program 39.5%
associate-/l*62.5%
Simplified62.5%
Taylor expanded in z around inf 50.5%
if -8.49999999999999965e130 < z < 1.61999999999999999e111Initial program 84.2%
associate-/l*91.1%
Simplified91.1%
Taylor expanded in z around 0 61.8%
Taylor expanded in t around inf 54.2%
associate-/l*54.2%
Simplified54.2%
Final simplification53.1%
(FPCore (x y z t a) :precision binary64 (if (<= a -0.0028) x (if (<= a 9.5e+67) t x)))
double code(double x, double y, double z, double t, double a) {
double tmp;
if (a <= -0.0028) {
tmp = x;
} else if (a <= 9.5e+67) {
tmp = t;
} else {
tmp = x;
}
return tmp;
}
real(8) function code(x, y, z, t, a)
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) :: tmp
if (a <= (-0.0028d0)) then
tmp = x
else if (a <= 9.5d+67) then
tmp = t
else
tmp = x
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double tmp;
if (a <= -0.0028) {
tmp = x;
} else if (a <= 9.5e+67) {
tmp = t;
} else {
tmp = x;
}
return tmp;
}
def code(x, y, z, t, a): tmp = 0 if a <= -0.0028: tmp = x elif a <= 9.5e+67: tmp = t else: tmp = x return tmp
function code(x, y, z, t, a) tmp = 0.0 if (a <= -0.0028) tmp = x; elseif (a <= 9.5e+67) tmp = t; else tmp = x; end return tmp end
function tmp_2 = code(x, y, z, t, a) tmp = 0.0; if (a <= -0.0028) tmp = x; elseif (a <= 9.5e+67) tmp = t; else tmp = x; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := If[LessEqual[a, -0.0028], x, If[LessEqual[a, 9.5e+67], t, x]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;a \leq -0.0028:\\
\;\;\;\;x\\
\mathbf{elif}\;a \leq 9.5 \cdot 10^{+67}:\\
\;\;\;\;t\\
\mathbf{else}:\\
\;\;\;\;x\\
\end{array}
\end{array}
if a < -0.00279999999999999997 or 9.5000000000000002e67 < a Initial program 69.4%
associate-/l*87.3%
Simplified87.3%
Taylor expanded in a around inf 50.5%
if -0.00279999999999999997 < a < 9.5000000000000002e67Initial program 71.6%
associate-/l*78.4%
Simplified78.4%
Taylor expanded in z around inf 32.3%
Final simplification40.6%
(FPCore (x y z t a) :precision binary64 t)
double code(double x, double y, double z, double t, double a) {
return t;
}
real(8) function code(x, y, z, t, a)
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
code = t
end function
public static double code(double x, double y, double z, double t, double a) {
return t;
}
def code(x, y, z, t, a): return t
function code(x, y, z, t, a) return t end
function tmp = code(x, y, z, t, a) tmp = t; end
code[x_, y_, z_, t_, a_] := t
\begin{array}{l}
\\
t
\end{array}
Initial program 70.6%
associate-/l*82.4%
Simplified82.4%
Taylor expanded in z around inf 21.8%
Final simplification21.8%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (- t (* (/ y z) (- t x)))))
(if (< z -1.2536131056095036e+188)
t_1
(if (< z 4.446702369113811e+64)
(+ x (/ (- y z) (/ (- a z) (- t x))))
t_1))))
double code(double x, double y, double z, double t, double a) {
double t_1 = t - ((y / z) * (t - x));
double tmp;
if (z < -1.2536131056095036e+188) {
tmp = t_1;
} else if (z < 4.446702369113811e+64) {
tmp = x + ((y - z) / ((a - z) / (t - x)));
} else {
tmp = t_1;
}
return tmp;
}
real(8) function code(x, y, z, t, a)
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) :: t_1
real(8) :: tmp
t_1 = t - ((y / z) * (t - x))
if (z < (-1.2536131056095036d+188)) then
tmp = t_1
else if (z < 4.446702369113811d+64) then
tmp = x + ((y - z) / ((a - z) / (t - x)))
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 t_1 = t - ((y / z) * (t - x));
double tmp;
if (z < -1.2536131056095036e+188) {
tmp = t_1;
} else if (z < 4.446702369113811e+64) {
tmp = x + ((y - z) / ((a - z) / (t - x)));
} else {
tmp = t_1;
}
return tmp;
}
def code(x, y, z, t, a): t_1 = t - ((y / z) * (t - x)) tmp = 0 if z < -1.2536131056095036e+188: tmp = t_1 elif z < 4.446702369113811e+64: tmp = x + ((y - z) / ((a - z) / (t - x))) else: tmp = t_1 return tmp
function code(x, y, z, t, a) t_1 = Float64(t - Float64(Float64(y / z) * Float64(t - x))) tmp = 0.0 if (z < -1.2536131056095036e+188) tmp = t_1; elseif (z < 4.446702369113811e+64) tmp = Float64(x + Float64(Float64(y - z) / Float64(Float64(a - z) / Float64(t - x)))); else tmp = t_1; end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = t - ((y / z) * (t - x)); tmp = 0.0; if (z < -1.2536131056095036e+188) tmp = t_1; elseif (z < 4.446702369113811e+64) tmp = x + ((y - z) / ((a - z) / (t - x))); else tmp = t_1; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(t - N[(N[(y / z), $MachinePrecision] * N[(t - x), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[Less[z, -1.2536131056095036e+188], t$95$1, If[Less[z, 4.446702369113811e+64], N[(x + N[(N[(y - z), $MachinePrecision] / N[(N[(a - z), $MachinePrecision] / N[(t - x), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], t$95$1]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := t - \frac{y}{z} \cdot \left(t - x\right)\\
\mathbf{if}\;z < -1.2536131056095036 \cdot 10^{+188}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;z < 4.446702369113811 \cdot 10^{+64}:\\
\;\;\;\;x + \frac{y - z}{\frac{a - z}{t - x}}\\
\mathbf{else}:\\
\;\;\;\;t\_1\\
\end{array}
\end{array}
herbie shell --seed 2024115
(FPCore (x y z t a)
:name "Graphics.Rendering.Chart.Axis.Types:invLinMap from Chart-1.5.3"
:precision binary64
:alt
(if (< z -1.2536131056095036e+188) (- t (* (/ y z) (- t x))) (if (< z 4.446702369113811e+64) (+ x (/ (- y z) (/ (- a z) (- t x)))) (- t (* (/ y z) (- t x)))))
(+ x (/ (* (- y z) (- t x)) (- a z))))