
(FPCore (x y z t a) :precision binary64 (+ x (/ (* (- y x) (- z t)) (- a t))))
double code(double x, double y, double z, double t, double a) {
return x + (((y - x) * (z - t)) / (a - 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 = x + (((y - x) * (z - t)) / (a - t))
end function
public static double code(double x, double y, double z, double t, double a) {
return x + (((y - x) * (z - t)) / (a - t));
}
def code(x, y, z, t, a): return x + (((y - x) * (z - t)) / (a - t))
function code(x, y, z, t, a) return Float64(x + Float64(Float64(Float64(y - x) * Float64(z - t)) / Float64(a - t))) end
function tmp = code(x, y, z, t, a) tmp = x + (((y - x) * (z - t)) / (a - t)); end
code[x_, y_, z_, t_, a_] := N[(x + N[(N[(N[(y - x), $MachinePrecision] * N[(z - t), $MachinePrecision]), $MachinePrecision] / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
\begin{array}{l}
\\
x + \frac{\left(y - x\right) \cdot \left(z - t\right)}{a - t}
\end{array}
Sampling outcomes in binary64 precision:
Herbie found 43 alternatives:
| Alternative | Accuracy | Speedup |
|---|
(FPCore (x y z t a) :precision binary64 (+ x (/ (* (- y x) (- z t)) (- a t))))
double code(double x, double y, double z, double t, double a) {
return x + (((y - x) * (z - t)) / (a - 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 = x + (((y - x) * (z - t)) / (a - t))
end function
public static double code(double x, double y, double z, double t, double a) {
return x + (((y - x) * (z - t)) / (a - t));
}
def code(x, y, z, t, a): return x + (((y - x) * (z - t)) / (a - t))
function code(x, y, z, t, a) return Float64(x + Float64(Float64(Float64(y - x) * Float64(z - t)) / Float64(a - t))) end
function tmp = code(x, y, z, t, a) tmp = x + (((y - x) * (z - t)) / (a - t)); end
code[x_, y_, z_, t_, a_] := N[(x + N[(N[(N[(y - x), $MachinePrecision] * N[(z - t), $MachinePrecision]), $MachinePrecision] / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
\begin{array}{l}
\\
x + \frac{\left(y - x\right) \cdot \left(z - t\right)}{a - t}
\end{array}
(FPCore (x y z t a)
:precision binary64
(if (<= t -2.9e+68)
(+ y (* (/ (- y x) t) (- a z)))
(if (<= t 1.2e+173)
(fma (- z t) (/ (- y x) (- a t)) x)
(if (<= t 2.8e+220)
(+ y (* (- y x) (/ (- a z) t)))
(if (<= t 4.6e+287)
(+ y (/ (- (* (- y x) a) (* (- y x) z)) t))
(- y (* x (/ a t))))))))
double code(double x, double y, double z, double t, double a) {
double tmp;
if (t <= -2.9e+68) {
tmp = y + (((y - x) / t) * (a - z));
} else if (t <= 1.2e+173) {
tmp = fma((z - t), ((y - x) / (a - t)), x);
} else if (t <= 2.8e+220) {
tmp = y + ((y - x) * ((a - z) / t));
} else if (t <= 4.6e+287) {
tmp = y + ((((y - x) * a) - ((y - x) * z)) / t);
} else {
tmp = y - (x * (a / t));
}
return tmp;
}
function code(x, y, z, t, a) tmp = 0.0 if (t <= -2.9e+68) tmp = Float64(y + Float64(Float64(Float64(y - x) / t) * Float64(a - z))); elseif (t <= 1.2e+173) tmp = fma(Float64(z - t), Float64(Float64(y - x) / Float64(a - t)), x); elseif (t <= 2.8e+220) tmp = Float64(y + Float64(Float64(y - x) * Float64(Float64(a - z) / t))); elseif (t <= 4.6e+287) tmp = Float64(y + Float64(Float64(Float64(Float64(y - x) * a) - Float64(Float64(y - x) * z)) / t)); else tmp = Float64(y - Float64(x * Float64(a / t))); end return tmp end
code[x_, y_, z_, t_, a_] := If[LessEqual[t, -2.9e+68], N[(y + N[(N[(N[(y - x), $MachinePrecision] / t), $MachinePrecision] * N[(a - z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 1.2e+173], N[(N[(z - t), $MachinePrecision] * N[(N[(y - x), $MachinePrecision] / N[(a - t), $MachinePrecision]), $MachinePrecision] + x), $MachinePrecision], If[LessEqual[t, 2.8e+220], N[(y + N[(N[(y - x), $MachinePrecision] * N[(N[(a - z), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 4.6e+287], N[(y + N[(N[(N[(N[(y - x), $MachinePrecision] * a), $MachinePrecision] - N[(N[(y - x), $MachinePrecision] * z), $MachinePrecision]), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision], N[(y - N[(x * N[(a / t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;t \leq -2.9 \cdot 10^{+68}:\\
\;\;\;\;y + \frac{y - x}{t} \cdot \left(a - z\right)\\
\mathbf{elif}\;t \leq 1.2 \cdot 10^{+173}:\\
\;\;\;\;\mathsf{fma}\left(z - t, \frac{y - x}{a - t}, x\right)\\
\mathbf{elif}\;t \leq 2.8 \cdot 10^{+220}:\\
\;\;\;\;y + \left(y - x\right) \cdot \frac{a - z}{t}\\
\mathbf{elif}\;t \leq 4.6 \cdot 10^{+287}:\\
\;\;\;\;y + \frac{\left(y - x\right) \cdot a - \left(y - x\right) \cdot z}{t}\\
\mathbf{else}:\\
\;\;\;\;y - x \cdot \frac{a}{t}\\
\end{array}
\end{array}
if t < -2.90000000000000011e68Initial program 41.6%
Taylor expanded in t around inf 62.2%
associate--l+62.2%
distribute-lft-out--62.2%
div-sub62.2%
mul-1-neg62.2%
unsub-neg62.2%
div-sub62.2%
associate-/l*73.8%
associate-/l*87.7%
distribute-rgt-out--87.7%
Simplified87.7%
if -2.90000000000000011e68 < t < 1.2e173Initial program 83.3%
Taylor expanded in x around 0 80.3%
+-commutative80.3%
+-commutative80.3%
distribute-lft-in80.3%
mul-1-neg80.3%
distribute-rgt-neg-in80.3%
associate-/l*80.9%
mul-1-neg80.9%
*-rgt-identity80.9%
associate-+l+80.2%
Simplified92.4%
if 1.2e173 < t < 2.8000000000000001e220Initial program 12.6%
Taylor expanded in x around 0 52.2%
+-commutative52.2%
+-commutative52.2%
distribute-lft-in52.2%
mul-1-neg52.2%
distribute-rgt-neg-in52.2%
associate-/l*12.1%
mul-1-neg12.1%
*-rgt-identity12.1%
associate-+l+12.1%
Simplified41.8%
Taylor expanded in t around inf 80.0%
cancel-sign-sub-inv80.0%
mul-1-neg80.0%
sub-neg80.0%
metadata-eval80.0%
*-lft-identity80.0%
*-commutative80.0%
associate-+l-80.0%
div-sub80.0%
*-commutative80.0%
distribute-rgt-out--80.7%
associate-*r/90.9%
Simplified90.9%
if 2.8000000000000001e220 < t < 4.60000000000000028e287Initial program 25.7%
Taylor expanded in t around -inf 94.9%
if 4.60000000000000028e287 < t Initial program 7.2%
Taylor expanded in t around inf 68.3%
associate--l+68.3%
distribute-lft-out--68.3%
div-sub68.3%
mul-1-neg68.3%
unsub-neg68.3%
div-sub68.3%
associate-/l*83.1%
associate-/l*84.8%
distribute-rgt-out--84.8%
Simplified84.8%
*-commutative84.8%
clear-num84.8%
un-div-inv84.8%
Applied egg-rr84.8%
Taylor expanded in y around 0 99.7%
mul-1-neg99.7%
associate-/l*100.0%
Simplified100.0%
Taylor expanded in z around 0 99.7%
mul-1-neg99.7%
*-commutative99.7%
associate-*r/100.0%
unsub-neg100.0%
Simplified100.0%
Final simplification91.8%
(FPCore (x y z t a)
:precision binary64
(if (<= t -3.05e+63)
(+ y (* (/ (- y x) t) (- a z)))
(if (<= t -400.0)
(*
x
(+
(+ 1.0 (/ t (- a t)))
(+ (/ (* y (- z t)) (* x (- a t))) (/ z (- t a)))))
(if (<= t 1.2e-272)
(+ x (/ -1.0 (/ (- a t) (* (- y x) (- t z)))))
(if (<= t 1.22e+173)
(fma (- y x) (/ (- z t) (- a t)) x)
(+ y (* (- y x) (/ (- a z) t))))))))
double code(double x, double y, double z, double t, double a) {
double tmp;
if (t <= -3.05e+63) {
tmp = y + (((y - x) / t) * (a - z));
} else if (t <= -400.0) {
tmp = x * ((1.0 + (t / (a - t))) + (((y * (z - t)) / (x * (a - t))) + (z / (t - a))));
} else if (t <= 1.2e-272) {
tmp = x + (-1.0 / ((a - t) / ((y - x) * (t - z))));
} else if (t <= 1.22e+173) {
tmp = fma((y - x), ((z - t) / (a - t)), x);
} else {
tmp = y + ((y - x) * ((a - z) / t));
}
return tmp;
}
function code(x, y, z, t, a) tmp = 0.0 if (t <= -3.05e+63) tmp = Float64(y + Float64(Float64(Float64(y - x) / t) * Float64(a - z))); elseif (t <= -400.0) tmp = Float64(x * Float64(Float64(1.0 + Float64(t / Float64(a - t))) + Float64(Float64(Float64(y * Float64(z - t)) / Float64(x * Float64(a - t))) + Float64(z / Float64(t - a))))); elseif (t <= 1.2e-272) tmp = Float64(x + Float64(-1.0 / Float64(Float64(a - t) / Float64(Float64(y - x) * Float64(t - z))))); elseif (t <= 1.22e+173) tmp = fma(Float64(y - x), Float64(Float64(z - t) / Float64(a - t)), x); else tmp = Float64(y + Float64(Float64(y - x) * Float64(Float64(a - z) / t))); end return tmp end
code[x_, y_, z_, t_, a_] := If[LessEqual[t, -3.05e+63], N[(y + N[(N[(N[(y - x), $MachinePrecision] / t), $MachinePrecision] * N[(a - z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -400.0], N[(x * N[(N[(1.0 + N[(t / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(N[(N[(y * N[(z - t), $MachinePrecision]), $MachinePrecision] / N[(x * N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(z / N[(t - a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 1.2e-272], N[(x + N[(-1.0 / N[(N[(a - t), $MachinePrecision] / N[(N[(y - x), $MachinePrecision] * N[(t - z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 1.22e+173], N[(N[(y - x), $MachinePrecision] * N[(N[(z - t), $MachinePrecision] / N[(a - t), $MachinePrecision]), $MachinePrecision] + x), $MachinePrecision], N[(y + N[(N[(y - x), $MachinePrecision] * N[(N[(a - z), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;t \leq -3.05 \cdot 10^{+63}:\\
\;\;\;\;y + \frac{y - x}{t} \cdot \left(a - z\right)\\
\mathbf{elif}\;t \leq -400:\\
\;\;\;\;x \cdot \left(\left(1 + \frac{t}{a - t}\right) + \left(\frac{y \cdot \left(z - t\right)}{x \cdot \left(a - t\right)} + \frac{z}{t - a}\right)\right)\\
\mathbf{elif}\;t \leq 1.2 \cdot 10^{-272}:\\
\;\;\;\;x + \frac{-1}{\frac{a - t}{\left(y - x\right) \cdot \left(t - z\right)}}\\
\mathbf{elif}\;t \leq 1.22 \cdot 10^{+173}:\\
\;\;\;\;\mathsf{fma}\left(y - x, \frac{z - t}{a - t}, x\right)\\
\mathbf{else}:\\
\;\;\;\;y + \left(y - x\right) \cdot \frac{a - z}{t}\\
\end{array}
\end{array}
if t < -3.04999999999999984e63Initial program 43.9%
Taylor expanded in t around inf 63.7%
associate--l+63.7%
distribute-lft-out--63.7%
div-sub63.7%
mul-1-neg63.7%
unsub-neg63.7%
div-sub63.7%
associate-/l*74.8%
associate-/l*88.2%
distribute-rgt-out--88.2%
Simplified88.2%
if -3.04999999999999984e63 < t < -400Initial program 80.3%
Taylor expanded in x around -inf 99.5%
if -400 < t < 1.19999999999999995e-272Initial program 91.1%
clear-num91.1%
inv-pow91.1%
*-commutative91.1%
associate-/r*88.9%
Applied egg-rr88.9%
unpow-188.9%
associate-/l/91.1%
*-commutative91.1%
Simplified91.1%
if 1.19999999999999995e-272 < t < 1.22e173Initial program 76.1%
+-commutative76.1%
associate-/l*93.5%
fma-define93.5%
Simplified93.5%
if 1.22e173 < t Initial program 18.6%
Taylor expanded in x around 0 44.5%
+-commutative44.5%
+-commutative44.5%
distribute-lft-in44.5%
mul-1-neg44.5%
distribute-rgt-neg-in44.5%
associate-/l*21.0%
mul-1-neg21.0%
*-rgt-identity21.0%
associate-+l+18.4%
Simplified48.8%
Taylor expanded in t around inf 85.8%
cancel-sign-sub-inv85.8%
mul-1-neg85.8%
sub-neg85.8%
metadata-eval85.8%
*-lft-identity85.8%
*-commutative85.8%
associate-+l-85.8%
div-sub85.8%
*-commutative85.8%
distribute-rgt-out--86.0%
associate-*r/91.3%
Simplified91.3%
Final simplification91.7%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (+ y (* (/ (- y x) t) (- a z))))
(t_2 (+ x (/ (* (- y x) (- z t)) (- a t)))))
(if (<= t_2 (- INFINITY))
t_1
(if (<= t_2 -2e-69)
(+ x (/ (+ (* (- y x) z) (* t (- x y))) (- a t)))
(if (<= t_2 0.0)
(+ y (* (- y x) (/ (- a z) t)))
(if (<= t_2 1e+259) t_2 t_1))))))
double code(double x, double y, double z, double t, double a) {
double t_1 = y + (((y - x) / t) * (a - z));
double t_2 = x + (((y - x) * (z - t)) / (a - t));
double tmp;
if (t_2 <= -((double) INFINITY)) {
tmp = t_1;
} else if (t_2 <= -2e-69) {
tmp = x + ((((y - x) * z) + (t * (x - y))) / (a - t));
} else if (t_2 <= 0.0) {
tmp = y + ((y - x) * ((a - z) / t));
} else if (t_2 <= 1e+259) {
tmp = t_2;
} else {
tmp = t_1;
}
return tmp;
}
public static double code(double x, double y, double z, double t, double a) {
double t_1 = y + (((y - x) / t) * (a - z));
double t_2 = x + (((y - x) * (z - t)) / (a - t));
double tmp;
if (t_2 <= -Double.POSITIVE_INFINITY) {
tmp = t_1;
} else if (t_2 <= -2e-69) {
tmp = x + ((((y - x) * z) + (t * (x - y))) / (a - t));
} else if (t_2 <= 0.0) {
tmp = y + ((y - x) * ((a - z) / t));
} else if (t_2 <= 1e+259) {
tmp = t_2;
} else {
tmp = t_1;
}
return tmp;
}
def code(x, y, z, t, a): t_1 = y + (((y - x) / t) * (a - z)) t_2 = x + (((y - x) * (z - t)) / (a - t)) tmp = 0 if t_2 <= -math.inf: tmp = t_1 elif t_2 <= -2e-69: tmp = x + ((((y - x) * z) + (t * (x - y))) / (a - t)) elif t_2 <= 0.0: tmp = y + ((y - x) * ((a - z) / t)) elif t_2 <= 1e+259: tmp = t_2 else: tmp = t_1 return tmp
function code(x, y, z, t, a) t_1 = Float64(y + Float64(Float64(Float64(y - x) / t) * Float64(a - z))) t_2 = Float64(x + Float64(Float64(Float64(y - x) * Float64(z - t)) / Float64(a - t))) tmp = 0.0 if (t_2 <= Float64(-Inf)) tmp = t_1; elseif (t_2 <= -2e-69) tmp = Float64(x + Float64(Float64(Float64(Float64(y - x) * z) + Float64(t * Float64(x - y))) / Float64(a - t))); elseif (t_2 <= 0.0) tmp = Float64(y + Float64(Float64(y - x) * Float64(Float64(a - z) / t))); elseif (t_2 <= 1e+259) tmp = t_2; else tmp = t_1; end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = y + (((y - x) / t) * (a - z)); t_2 = x + (((y - x) * (z - t)) / (a - t)); tmp = 0.0; if (t_2 <= -Inf) tmp = t_1; elseif (t_2 <= -2e-69) tmp = x + ((((y - x) * z) + (t * (x - y))) / (a - t)); elseif (t_2 <= 0.0) tmp = y + ((y - x) * ((a - z) / t)); elseif (t_2 <= 1e+259) tmp = t_2; else tmp = t_1; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(y + N[(N[(N[(y - x), $MachinePrecision] / t), $MachinePrecision] * N[(a - z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(x + N[(N[(N[(y - x), $MachinePrecision] * N[(z - t), $MachinePrecision]), $MachinePrecision] / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t$95$2, (-Infinity)], t$95$1, If[LessEqual[t$95$2, -2e-69], N[(x + N[(N[(N[(N[(y - x), $MachinePrecision] * z), $MachinePrecision] + N[(t * N[(x - y), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t$95$2, 0.0], N[(y + N[(N[(y - x), $MachinePrecision] * N[(N[(a - z), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t$95$2, 1e+259], t$95$2, t$95$1]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := y + \frac{y - x}{t} \cdot \left(a - z\right)\\
t_2 := x + \frac{\left(y - x\right) \cdot \left(z - t\right)}{a - t}\\
\mathbf{if}\;t\_2 \leq -\infty:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t\_2 \leq -2 \cdot 10^{-69}:\\
\;\;\;\;x + \frac{\left(y - x\right) \cdot z + t \cdot \left(x - y\right)}{a - t}\\
\mathbf{elif}\;t\_2 \leq 0:\\
\;\;\;\;y + \left(y - x\right) \cdot \frac{a - z}{t}\\
\mathbf{elif}\;t\_2 \leq 10^{+259}:\\
\;\;\;\;t\_2\\
\mathbf{else}:\\
\;\;\;\;t\_1\\
\end{array}
\end{array}
if (+.f64 x (/.f64 (*.f64 (-.f64 y x) (-.f64 z t)) (-.f64 a t))) < -inf.0 or 9.999999999999999e258 < (+.f64 x (/.f64 (*.f64 (-.f64 y x) (-.f64 z t)) (-.f64 a t))) Initial program 40.5%
Taylor expanded in t around inf 53.8%
associate--l+53.8%
distribute-lft-out--53.8%
div-sub56.6%
mul-1-neg56.6%
unsub-neg56.6%
div-sub53.8%
associate-/l*64.3%
associate-/l*65.2%
distribute-rgt-out--75.5%
Simplified75.5%
if -inf.0 < (+.f64 x (/.f64 (*.f64 (-.f64 y x) (-.f64 z t)) (-.f64 a t))) < -1.9999999999999999e-69Initial program 99.6%
sub-neg99.6%
distribute-lft-in99.7%
Applied egg-rr99.7%
if -1.9999999999999999e-69 < (+.f64 x (/.f64 (*.f64 (-.f64 y x) (-.f64 z t)) (-.f64 a t))) < 0.0Initial program 34.0%
Taylor expanded in x around 0 47.6%
+-commutative47.6%
+-commutative47.6%
distribute-lft-in47.7%
mul-1-neg47.7%
distribute-rgt-neg-in47.7%
associate-/l*43.7%
mul-1-neg43.7%
*-rgt-identity43.7%
associate-+l+34.0%
Simplified32.3%
Taylor expanded in t around inf 83.2%
cancel-sign-sub-inv83.2%
mul-1-neg83.2%
sub-neg83.2%
metadata-eval83.2%
*-lft-identity83.2%
*-commutative83.2%
associate-+l-83.2%
div-sub83.2%
*-commutative83.2%
distribute-rgt-out--83.2%
associate-*r/83.2%
Simplified83.2%
if 0.0 < (+.f64 x (/.f64 (*.f64 (-.f64 y x) (-.f64 z t)) (-.f64 a t))) < 9.999999999999999e258Initial program 96.6%
Final simplification86.9%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (+ y (* (/ (- y x) t) (- a z))))
(t_2 (+ x (/ (* (- y x) (- z t)) (- a t)))))
(if (<= t_2 (- INFINITY))
t_1
(if (<= t_2 -2e-69)
t_2
(if (<= t_2 0.0)
(+ y (* (- y x) (/ (- a z) t)))
(if (<= t_2 1e+259) t_2 t_1))))))
double code(double x, double y, double z, double t, double a) {
double t_1 = y + (((y - x) / t) * (a - z));
double t_2 = x + (((y - x) * (z - t)) / (a - t));
double tmp;
if (t_2 <= -((double) INFINITY)) {
tmp = t_1;
} else if (t_2 <= -2e-69) {
tmp = t_2;
} else if (t_2 <= 0.0) {
tmp = y + ((y - x) * ((a - z) / t));
} else if (t_2 <= 1e+259) {
tmp = t_2;
} else {
tmp = t_1;
}
return tmp;
}
public static double code(double x, double y, double z, double t, double a) {
double t_1 = y + (((y - x) / t) * (a - z));
double t_2 = x + (((y - x) * (z - t)) / (a - t));
double tmp;
if (t_2 <= -Double.POSITIVE_INFINITY) {
tmp = t_1;
} else if (t_2 <= -2e-69) {
tmp = t_2;
} else if (t_2 <= 0.0) {
tmp = y + ((y - x) * ((a - z) / t));
} else if (t_2 <= 1e+259) {
tmp = t_2;
} else {
tmp = t_1;
}
return tmp;
}
def code(x, y, z, t, a): t_1 = y + (((y - x) / t) * (a - z)) t_2 = x + (((y - x) * (z - t)) / (a - t)) tmp = 0 if t_2 <= -math.inf: tmp = t_1 elif t_2 <= -2e-69: tmp = t_2 elif t_2 <= 0.0: tmp = y + ((y - x) * ((a - z) / t)) elif t_2 <= 1e+259: tmp = t_2 else: tmp = t_1 return tmp
function code(x, y, z, t, a) t_1 = Float64(y + Float64(Float64(Float64(y - x) / t) * Float64(a - z))) t_2 = Float64(x + Float64(Float64(Float64(y - x) * Float64(z - t)) / Float64(a - t))) tmp = 0.0 if (t_2 <= Float64(-Inf)) tmp = t_1; elseif (t_2 <= -2e-69) tmp = t_2; elseif (t_2 <= 0.0) tmp = Float64(y + Float64(Float64(y - x) * Float64(Float64(a - z) / t))); elseif (t_2 <= 1e+259) tmp = t_2; else tmp = t_1; end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = y + (((y - x) / t) * (a - z)); t_2 = x + (((y - x) * (z - t)) / (a - t)); tmp = 0.0; if (t_2 <= -Inf) tmp = t_1; elseif (t_2 <= -2e-69) tmp = t_2; elseif (t_2 <= 0.0) tmp = y + ((y - x) * ((a - z) / t)); elseif (t_2 <= 1e+259) tmp = t_2; else tmp = t_1; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(y + N[(N[(N[(y - x), $MachinePrecision] / t), $MachinePrecision] * N[(a - z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(x + N[(N[(N[(y - x), $MachinePrecision] * N[(z - t), $MachinePrecision]), $MachinePrecision] / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t$95$2, (-Infinity)], t$95$1, If[LessEqual[t$95$2, -2e-69], t$95$2, If[LessEqual[t$95$2, 0.0], N[(y + N[(N[(y - x), $MachinePrecision] * N[(N[(a - z), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t$95$2, 1e+259], t$95$2, t$95$1]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := y + \frac{y - x}{t} \cdot \left(a - z\right)\\
t_2 := x + \frac{\left(y - x\right) \cdot \left(z - t\right)}{a - t}\\
\mathbf{if}\;t\_2 \leq -\infty:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t\_2 \leq -2 \cdot 10^{-69}:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;t\_2 \leq 0:\\
\;\;\;\;y + \left(y - x\right) \cdot \frac{a - z}{t}\\
\mathbf{elif}\;t\_2 \leq 10^{+259}:\\
\;\;\;\;t\_2\\
\mathbf{else}:\\
\;\;\;\;t\_1\\
\end{array}
\end{array}
if (+.f64 x (/.f64 (*.f64 (-.f64 y x) (-.f64 z t)) (-.f64 a t))) < -inf.0 or 9.999999999999999e258 < (+.f64 x (/.f64 (*.f64 (-.f64 y x) (-.f64 z t)) (-.f64 a t))) Initial program 40.5%
Taylor expanded in t around inf 53.8%
associate--l+53.8%
distribute-lft-out--53.8%
div-sub56.6%
mul-1-neg56.6%
unsub-neg56.6%
div-sub53.8%
associate-/l*64.3%
associate-/l*65.2%
distribute-rgt-out--75.5%
Simplified75.5%
if -inf.0 < (+.f64 x (/.f64 (*.f64 (-.f64 y x) (-.f64 z t)) (-.f64 a t))) < -1.9999999999999999e-69 or 0.0 < (+.f64 x (/.f64 (*.f64 (-.f64 y x) (-.f64 z t)) (-.f64 a t))) < 9.999999999999999e258Initial program 98.0%
if -1.9999999999999999e-69 < (+.f64 x (/.f64 (*.f64 (-.f64 y x) (-.f64 z t)) (-.f64 a t))) < 0.0Initial program 34.0%
Taylor expanded in x around 0 47.6%
+-commutative47.6%
+-commutative47.6%
distribute-lft-in47.7%
mul-1-neg47.7%
distribute-rgt-neg-in47.7%
associate-/l*43.7%
mul-1-neg43.7%
*-rgt-identity43.7%
associate-+l+34.0%
Simplified32.3%
Taylor expanded in t around inf 83.2%
cancel-sign-sub-inv83.2%
mul-1-neg83.2%
sub-neg83.2%
metadata-eval83.2%
*-lft-identity83.2%
*-commutative83.2%
associate-+l-83.2%
div-sub83.2%
*-commutative83.2%
distribute-rgt-out--83.2%
associate-*r/83.2%
Simplified83.2%
Final simplification86.9%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (* z (/ (- y x) (- a t))))
(t_2 (* y (/ (- z t) (- a t))))
(t_3 (+ x (* z (/ (- y x) a)))))
(if (<= t -8.8e-11)
t_2
(if (<= t -1.02e-93)
t_1
(if (<= t -1.6e-152)
t_3
(if (<= t -1.05e-208)
(+ x (/ (* (- y x) z) a))
(if (<= t -1e-208)
(* y (/ t (- a)))
(if (<= t -1.9e-246)
(- x (/ (* x z) a))
(if (<= t -1.2e-253)
t_1
(if (<= t -7e-283)
(+ x (/ (- y x) (/ a z)))
(if (<= t 1.4e-61)
t_3
(if (<= t 56000.0)
t_2
(if (<= t 50000000000000.0)
x
(if (<= t 1.35e+79)
t_2
(if (<= t 6e+114)
(+ x (* t (/ y (- t a))))
(if (<= t 7.5e+178)
t_2
(+ y (* (- y x) (/ a t)))))))))))))))))))
double code(double x, double y, double z, double t, double a) {
double t_1 = z * ((y - x) / (a - t));
double t_2 = y * ((z - t) / (a - t));
double t_3 = x + (z * ((y - x) / a));
double tmp;
if (t <= -8.8e-11) {
tmp = t_2;
} else if (t <= -1.02e-93) {
tmp = t_1;
} else if (t <= -1.6e-152) {
tmp = t_3;
} else if (t <= -1.05e-208) {
tmp = x + (((y - x) * z) / a);
} else if (t <= -1e-208) {
tmp = y * (t / -a);
} else if (t <= -1.9e-246) {
tmp = x - ((x * z) / a);
} else if (t <= -1.2e-253) {
tmp = t_1;
} else if (t <= -7e-283) {
tmp = x + ((y - x) / (a / z));
} else if (t <= 1.4e-61) {
tmp = t_3;
} else if (t <= 56000.0) {
tmp = t_2;
} else if (t <= 50000000000000.0) {
tmp = x;
} else if (t <= 1.35e+79) {
tmp = t_2;
} else if (t <= 6e+114) {
tmp = x + (t * (y / (t - a)));
} else if (t <= 7.5e+178) {
tmp = t_2;
} else {
tmp = y + ((y - x) * (a / 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) :: t_1
real(8) :: t_2
real(8) :: t_3
real(8) :: tmp
t_1 = z * ((y - x) / (a - t))
t_2 = y * ((z - t) / (a - t))
t_3 = x + (z * ((y - x) / a))
if (t <= (-8.8d-11)) then
tmp = t_2
else if (t <= (-1.02d-93)) then
tmp = t_1
else if (t <= (-1.6d-152)) then
tmp = t_3
else if (t <= (-1.05d-208)) then
tmp = x + (((y - x) * z) / a)
else if (t <= (-1d-208)) then
tmp = y * (t / -a)
else if (t <= (-1.9d-246)) then
tmp = x - ((x * z) / a)
else if (t <= (-1.2d-253)) then
tmp = t_1
else if (t <= (-7d-283)) then
tmp = x + ((y - x) / (a / z))
else if (t <= 1.4d-61) then
tmp = t_3
else if (t <= 56000.0d0) then
tmp = t_2
else if (t <= 50000000000000.0d0) then
tmp = x
else if (t <= 1.35d+79) then
tmp = t_2
else if (t <= 6d+114) then
tmp = x + (t * (y / (t - a)))
else if (t <= 7.5d+178) then
tmp = t_2
else
tmp = y + ((y - x) * (a / t))
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double t_1 = z * ((y - x) / (a - t));
double t_2 = y * ((z - t) / (a - t));
double t_3 = x + (z * ((y - x) / a));
double tmp;
if (t <= -8.8e-11) {
tmp = t_2;
} else if (t <= -1.02e-93) {
tmp = t_1;
} else if (t <= -1.6e-152) {
tmp = t_3;
} else if (t <= -1.05e-208) {
tmp = x + (((y - x) * z) / a);
} else if (t <= -1e-208) {
tmp = y * (t / -a);
} else if (t <= -1.9e-246) {
tmp = x - ((x * z) / a);
} else if (t <= -1.2e-253) {
tmp = t_1;
} else if (t <= -7e-283) {
tmp = x + ((y - x) / (a / z));
} else if (t <= 1.4e-61) {
tmp = t_3;
} else if (t <= 56000.0) {
tmp = t_2;
} else if (t <= 50000000000000.0) {
tmp = x;
} else if (t <= 1.35e+79) {
tmp = t_2;
} else if (t <= 6e+114) {
tmp = x + (t * (y / (t - a)));
} else if (t <= 7.5e+178) {
tmp = t_2;
} else {
tmp = y + ((y - x) * (a / t));
}
return tmp;
}
def code(x, y, z, t, a): t_1 = z * ((y - x) / (a - t)) t_2 = y * ((z - t) / (a - t)) t_3 = x + (z * ((y - x) / a)) tmp = 0 if t <= -8.8e-11: tmp = t_2 elif t <= -1.02e-93: tmp = t_1 elif t <= -1.6e-152: tmp = t_3 elif t <= -1.05e-208: tmp = x + (((y - x) * z) / a) elif t <= -1e-208: tmp = y * (t / -a) elif t <= -1.9e-246: tmp = x - ((x * z) / a) elif t <= -1.2e-253: tmp = t_1 elif t <= -7e-283: tmp = x + ((y - x) / (a / z)) elif t <= 1.4e-61: tmp = t_3 elif t <= 56000.0: tmp = t_2 elif t <= 50000000000000.0: tmp = x elif t <= 1.35e+79: tmp = t_2 elif t <= 6e+114: tmp = x + (t * (y / (t - a))) elif t <= 7.5e+178: tmp = t_2 else: tmp = y + ((y - x) * (a / t)) return tmp
function code(x, y, z, t, a) t_1 = Float64(z * Float64(Float64(y - x) / Float64(a - t))) t_2 = Float64(y * Float64(Float64(z - t) / Float64(a - t))) t_3 = Float64(x + Float64(z * Float64(Float64(y - x) / a))) tmp = 0.0 if (t <= -8.8e-11) tmp = t_2; elseif (t <= -1.02e-93) tmp = t_1; elseif (t <= -1.6e-152) tmp = t_3; elseif (t <= -1.05e-208) tmp = Float64(x + Float64(Float64(Float64(y - x) * z) / a)); elseif (t <= -1e-208) tmp = Float64(y * Float64(t / Float64(-a))); elseif (t <= -1.9e-246) tmp = Float64(x - Float64(Float64(x * z) / a)); elseif (t <= -1.2e-253) tmp = t_1; elseif (t <= -7e-283) tmp = Float64(x + Float64(Float64(y - x) / Float64(a / z))); elseif (t <= 1.4e-61) tmp = t_3; elseif (t <= 56000.0) tmp = t_2; elseif (t <= 50000000000000.0) tmp = x; elseif (t <= 1.35e+79) tmp = t_2; elseif (t <= 6e+114) tmp = Float64(x + Float64(t * Float64(y / Float64(t - a)))); elseif (t <= 7.5e+178) tmp = t_2; else tmp = Float64(y + Float64(Float64(y - x) * Float64(a / t))); end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = z * ((y - x) / (a - t)); t_2 = y * ((z - t) / (a - t)); t_3 = x + (z * ((y - x) / a)); tmp = 0.0; if (t <= -8.8e-11) tmp = t_2; elseif (t <= -1.02e-93) tmp = t_1; elseif (t <= -1.6e-152) tmp = t_3; elseif (t <= -1.05e-208) tmp = x + (((y - x) * z) / a); elseif (t <= -1e-208) tmp = y * (t / -a); elseif (t <= -1.9e-246) tmp = x - ((x * z) / a); elseif (t <= -1.2e-253) tmp = t_1; elseif (t <= -7e-283) tmp = x + ((y - x) / (a / z)); elseif (t <= 1.4e-61) tmp = t_3; elseif (t <= 56000.0) tmp = t_2; elseif (t <= 50000000000000.0) tmp = x; elseif (t <= 1.35e+79) tmp = t_2; elseif (t <= 6e+114) tmp = x + (t * (y / (t - a))); elseif (t <= 7.5e+178) tmp = t_2; else tmp = y + ((y - x) * (a / t)); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(z * N[(N[(y - x), $MachinePrecision] / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(y * N[(N[(z - t), $MachinePrecision] / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$3 = N[(x + N[(z * N[(N[(y - x), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t, -8.8e-11], t$95$2, If[LessEqual[t, -1.02e-93], t$95$1, If[LessEqual[t, -1.6e-152], t$95$3, If[LessEqual[t, -1.05e-208], N[(x + N[(N[(N[(y - x), $MachinePrecision] * z), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -1e-208], N[(y * N[(t / (-a)), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -1.9e-246], N[(x - N[(N[(x * z), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -1.2e-253], t$95$1, If[LessEqual[t, -7e-283], N[(x + N[(N[(y - x), $MachinePrecision] / N[(a / z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 1.4e-61], t$95$3, If[LessEqual[t, 56000.0], t$95$2, If[LessEqual[t, 50000000000000.0], x, If[LessEqual[t, 1.35e+79], t$95$2, If[LessEqual[t, 6e+114], N[(x + N[(t * N[(y / N[(t - a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 7.5e+178], t$95$2, N[(y + N[(N[(y - x), $MachinePrecision] * N[(a / t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]]]]]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := z \cdot \frac{y - x}{a - t}\\
t_2 := y \cdot \frac{z - t}{a - t}\\
t_3 := x + z \cdot \frac{y - x}{a}\\
\mathbf{if}\;t \leq -8.8 \cdot 10^{-11}:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;t \leq -1.02 \cdot 10^{-93}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq -1.6 \cdot 10^{-152}:\\
\;\;\;\;t\_3\\
\mathbf{elif}\;t \leq -1.05 \cdot 10^{-208}:\\
\;\;\;\;x + \frac{\left(y - x\right) \cdot z}{a}\\
\mathbf{elif}\;t \leq -1 \cdot 10^{-208}:\\
\;\;\;\;y \cdot \frac{t}{-a}\\
\mathbf{elif}\;t \leq -1.9 \cdot 10^{-246}:\\
\;\;\;\;x - \frac{x \cdot z}{a}\\
\mathbf{elif}\;t \leq -1.2 \cdot 10^{-253}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq -7 \cdot 10^{-283}:\\
\;\;\;\;x + \frac{y - x}{\frac{a}{z}}\\
\mathbf{elif}\;t \leq 1.4 \cdot 10^{-61}:\\
\;\;\;\;t\_3\\
\mathbf{elif}\;t \leq 56000:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;t \leq 50000000000000:\\
\;\;\;\;x\\
\mathbf{elif}\;t \leq 1.35 \cdot 10^{+79}:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;t \leq 6 \cdot 10^{+114}:\\
\;\;\;\;x + t \cdot \frac{y}{t - a}\\
\mathbf{elif}\;t \leq 7.5 \cdot 10^{+178}:\\
\;\;\;\;t\_2\\
\mathbf{else}:\\
\;\;\;\;y + \left(y - x\right) \cdot \frac{a}{t}\\
\end{array}
\end{array}
if t < -8.8000000000000006e-11 or 1.4000000000000001e-61 < t < 56000 or 5e13 < t < 1.35e79 or 6.0000000000000001e114 < t < 7.4999999999999995e178Initial program 55.5%
Taylor expanded in x around 0 64.6%
+-commutative64.6%
+-commutative64.6%
distribute-lft-in64.6%
mul-1-neg64.6%
distribute-rgt-neg-in64.6%
associate-/l*56.5%
mul-1-neg56.5%
*-rgt-identity56.5%
associate-+l+54.4%
Simplified77.6%
Taylor expanded in y around inf 66.3%
div-sub66.3%
Simplified66.3%
if -8.8000000000000006e-11 < t < -1.02e-93 or -1.89999999999999988e-246 < t < -1.20000000000000005e-253Initial program 86.6%
Taylor expanded in x around 0 81.9%
+-commutative81.9%
+-commutative81.9%
distribute-lft-in82.0%
mul-1-neg82.0%
distribute-rgt-neg-in82.0%
associate-/l*86.2%
mul-1-neg86.2%
*-rgt-identity86.2%
associate-+l+86.3%
Simplified95.3%
Taylor expanded in z around inf 81.9%
div-sub81.9%
Simplified81.9%
if -1.02e-93 < t < -1.60000000000000006e-152 or -6.9999999999999997e-283 < t < 1.4000000000000001e-61Initial program 89.9%
Taylor expanded in t around 0 78.3%
associate-/l*85.5%
Simplified85.5%
if -1.60000000000000006e-152 < t < -1.05000000000000006e-208Initial program 99.5%
Taylor expanded in t around 0 68.5%
if -1.05000000000000006e-208 < t < -1.0000000000000001e-208Initial program 98.4%
Taylor expanded in y around inf 98.4%
associate-/l*100.0%
Simplified100.0%
clear-num100.0%
inv-pow100.0%
Applied egg-rr100.0%
unpow-1100.0%
Simplified100.0%
Taylor expanded in z around 0 98.4%
mul-1-neg98.4%
unsub-neg98.4%
associate-/l*98.4%
Simplified98.4%
Taylor expanded in t around 0 98.4%
associate-/l*98.4%
Simplified98.4%
Taylor expanded in x around 0 98.4%
mul-1-neg98.4%
*-commutative98.4%
distribute-frac-neg298.4%
associate-/l*100.0%
Simplified100.0%
if -1.0000000000000001e-208 < t < -1.89999999999999988e-246Initial program 99.6%
Taylor expanded in t around 0 71.4%
Taylor expanded in y around 0 86.0%
mul-1-neg86.0%
distribute-lft-neg-out86.0%
*-commutative86.0%
Simplified86.0%
if -1.20000000000000005e-253 < t < -6.9999999999999997e-283Initial program 87.1%
Taylor expanded in t around 0 87.1%
clear-num87.1%
inv-pow87.1%
Applied egg-rr87.1%
unpow-187.1%
associate-/r*100.0%
Simplified100.0%
clear-num100.0%
add-cube-cbrt99.2%
*-un-lft-identity99.2%
times-frac99.1%
pow299.1%
Applied egg-rr99.1%
/-rgt-identity99.1%
associate-*r/99.2%
unpow299.2%
rem-3cbrt-lft100.0%
Simplified100.0%
if 56000 < t < 5e13Initial program 100.0%
Taylor expanded in a around inf 100.0%
if 1.35e79 < t < 6.0000000000000001e114Initial program 44.0%
Taylor expanded in y around inf 42.8%
associate-/l*79.7%
Simplified79.7%
clear-num80.1%
inv-pow80.1%
Applied egg-rr80.1%
unpow-180.1%
Simplified80.1%
Taylor expanded in z around 0 42.8%
mul-1-neg42.8%
unsub-neg42.8%
associate-/l*79.7%
Simplified79.7%
if 7.4999999999999995e178 < t Initial program 18.6%
Taylor expanded in t around inf 85.8%
associate--l+85.8%
distribute-lft-out--85.8%
div-sub85.8%
mul-1-neg85.8%
unsub-neg85.8%
div-sub85.8%
associate-/l*85.7%
associate-/l*89.2%
distribute-rgt-out--89.2%
Simplified89.2%
Taylor expanded in z around 0 82.9%
cancel-sign-sub-inv82.9%
metadata-eval82.9%
*-lft-identity82.9%
*-commutative82.9%
associate-/l*88.3%
Simplified88.3%
Final simplification77.8%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (* y (/ (- z t) (- a t))))
(t_2 (/ z (/ (- a t) (- y x))))
(t_3 (+ x (* t (/ y (- t a))))))
(if (<= t -3.8e+164)
(/ y (/ (- a t) (- z t)))
(if (<= t -1.35e+26)
(- y (/ (* (- y x) z) t))
(if (<= t -2.75e+14)
t_3
(if (<= t -4e-103)
t_2
(if (<= t -3e-173)
(+ x (/ (- y x) (/ a z)))
(if (<= t -3.3e-192)
t_2
(if (<= t -3.6e-208)
(+ x (/ -1.0 (/ a (* x z))))
(if (<= t -3.1e-265)
t_2
(if (<= t 1.9e-67)
(+ x (* z (/ (- y x) a)))
(if (<= t 56000.0)
t_1
(if (<= t 540000000000.0)
x
(if (<= t 8e+79)
t_1
(if (<= t 3.3e+116)
t_3
(+ y (* (- y x) (/ a t))))))))))))))))))
double code(double x, double y, double z, double t, double a) {
double t_1 = y * ((z - t) / (a - t));
double t_2 = z / ((a - t) / (y - x));
double t_3 = x + (t * (y / (t - a)));
double tmp;
if (t <= -3.8e+164) {
tmp = y / ((a - t) / (z - t));
} else if (t <= -1.35e+26) {
tmp = y - (((y - x) * z) / t);
} else if (t <= -2.75e+14) {
tmp = t_3;
} else if (t <= -4e-103) {
tmp = t_2;
} else if (t <= -3e-173) {
tmp = x + ((y - x) / (a / z));
} else if (t <= -3.3e-192) {
tmp = t_2;
} else if (t <= -3.6e-208) {
tmp = x + (-1.0 / (a / (x * z)));
} else if (t <= -3.1e-265) {
tmp = t_2;
} else if (t <= 1.9e-67) {
tmp = x + (z * ((y - x) / a));
} else if (t <= 56000.0) {
tmp = t_1;
} else if (t <= 540000000000.0) {
tmp = x;
} else if (t <= 8e+79) {
tmp = t_1;
} else if (t <= 3.3e+116) {
tmp = t_3;
} else {
tmp = y + ((y - x) * (a / 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) :: t_1
real(8) :: t_2
real(8) :: t_3
real(8) :: tmp
t_1 = y * ((z - t) / (a - t))
t_2 = z / ((a - t) / (y - x))
t_3 = x + (t * (y / (t - a)))
if (t <= (-3.8d+164)) then
tmp = y / ((a - t) / (z - t))
else if (t <= (-1.35d+26)) then
tmp = y - (((y - x) * z) / t)
else if (t <= (-2.75d+14)) then
tmp = t_3
else if (t <= (-4d-103)) then
tmp = t_2
else if (t <= (-3d-173)) then
tmp = x + ((y - x) / (a / z))
else if (t <= (-3.3d-192)) then
tmp = t_2
else if (t <= (-3.6d-208)) then
tmp = x + ((-1.0d0) / (a / (x * z)))
else if (t <= (-3.1d-265)) then
tmp = t_2
else if (t <= 1.9d-67) then
tmp = x + (z * ((y - x) / a))
else if (t <= 56000.0d0) then
tmp = t_1
else if (t <= 540000000000.0d0) then
tmp = x
else if (t <= 8d+79) then
tmp = t_1
else if (t <= 3.3d+116) then
tmp = t_3
else
tmp = y + ((y - x) * (a / t))
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double t_1 = y * ((z - t) / (a - t));
double t_2 = z / ((a - t) / (y - x));
double t_3 = x + (t * (y / (t - a)));
double tmp;
if (t <= -3.8e+164) {
tmp = y / ((a - t) / (z - t));
} else if (t <= -1.35e+26) {
tmp = y - (((y - x) * z) / t);
} else if (t <= -2.75e+14) {
tmp = t_3;
} else if (t <= -4e-103) {
tmp = t_2;
} else if (t <= -3e-173) {
tmp = x + ((y - x) / (a / z));
} else if (t <= -3.3e-192) {
tmp = t_2;
} else if (t <= -3.6e-208) {
tmp = x + (-1.0 / (a / (x * z)));
} else if (t <= -3.1e-265) {
tmp = t_2;
} else if (t <= 1.9e-67) {
tmp = x + (z * ((y - x) / a));
} else if (t <= 56000.0) {
tmp = t_1;
} else if (t <= 540000000000.0) {
tmp = x;
} else if (t <= 8e+79) {
tmp = t_1;
} else if (t <= 3.3e+116) {
tmp = t_3;
} else {
tmp = y + ((y - x) * (a / t));
}
return tmp;
}
def code(x, y, z, t, a): t_1 = y * ((z - t) / (a - t)) t_2 = z / ((a - t) / (y - x)) t_3 = x + (t * (y / (t - a))) tmp = 0 if t <= -3.8e+164: tmp = y / ((a - t) / (z - t)) elif t <= -1.35e+26: tmp = y - (((y - x) * z) / t) elif t <= -2.75e+14: tmp = t_3 elif t <= -4e-103: tmp = t_2 elif t <= -3e-173: tmp = x + ((y - x) / (a / z)) elif t <= -3.3e-192: tmp = t_2 elif t <= -3.6e-208: tmp = x + (-1.0 / (a / (x * z))) elif t <= -3.1e-265: tmp = t_2 elif t <= 1.9e-67: tmp = x + (z * ((y - x) / a)) elif t <= 56000.0: tmp = t_1 elif t <= 540000000000.0: tmp = x elif t <= 8e+79: tmp = t_1 elif t <= 3.3e+116: tmp = t_3 else: tmp = y + ((y - x) * (a / t)) return tmp
function code(x, y, z, t, a) t_1 = Float64(y * Float64(Float64(z - t) / Float64(a - t))) t_2 = Float64(z / Float64(Float64(a - t) / Float64(y - x))) t_3 = Float64(x + Float64(t * Float64(y / Float64(t - a)))) tmp = 0.0 if (t <= -3.8e+164) tmp = Float64(y / Float64(Float64(a - t) / Float64(z - t))); elseif (t <= -1.35e+26) tmp = Float64(y - Float64(Float64(Float64(y - x) * z) / t)); elseif (t <= -2.75e+14) tmp = t_3; elseif (t <= -4e-103) tmp = t_2; elseif (t <= -3e-173) tmp = Float64(x + Float64(Float64(y - x) / Float64(a / z))); elseif (t <= -3.3e-192) tmp = t_2; elseif (t <= -3.6e-208) tmp = Float64(x + Float64(-1.0 / Float64(a / Float64(x * z)))); elseif (t <= -3.1e-265) tmp = t_2; elseif (t <= 1.9e-67) tmp = Float64(x + Float64(z * Float64(Float64(y - x) / a))); elseif (t <= 56000.0) tmp = t_1; elseif (t <= 540000000000.0) tmp = x; elseif (t <= 8e+79) tmp = t_1; elseif (t <= 3.3e+116) tmp = t_3; else tmp = Float64(y + Float64(Float64(y - x) * Float64(a / t))); end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = y * ((z - t) / (a - t)); t_2 = z / ((a - t) / (y - x)); t_3 = x + (t * (y / (t - a))); tmp = 0.0; if (t <= -3.8e+164) tmp = y / ((a - t) / (z - t)); elseif (t <= -1.35e+26) tmp = y - (((y - x) * z) / t); elseif (t <= -2.75e+14) tmp = t_3; elseif (t <= -4e-103) tmp = t_2; elseif (t <= -3e-173) tmp = x + ((y - x) / (a / z)); elseif (t <= -3.3e-192) tmp = t_2; elseif (t <= -3.6e-208) tmp = x + (-1.0 / (a / (x * z))); elseif (t <= -3.1e-265) tmp = t_2; elseif (t <= 1.9e-67) tmp = x + (z * ((y - x) / a)); elseif (t <= 56000.0) tmp = t_1; elseif (t <= 540000000000.0) tmp = x; elseif (t <= 8e+79) tmp = t_1; elseif (t <= 3.3e+116) tmp = t_3; else tmp = y + ((y - x) * (a / t)); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(y * N[(N[(z - t), $MachinePrecision] / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(z / N[(N[(a - t), $MachinePrecision] / N[(y - x), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$3 = N[(x + N[(t * N[(y / N[(t - a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t, -3.8e+164], N[(y / N[(N[(a - t), $MachinePrecision] / N[(z - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -1.35e+26], N[(y - N[(N[(N[(y - x), $MachinePrecision] * z), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -2.75e+14], t$95$3, If[LessEqual[t, -4e-103], t$95$2, If[LessEqual[t, -3e-173], N[(x + N[(N[(y - x), $MachinePrecision] / N[(a / z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -3.3e-192], t$95$2, If[LessEqual[t, -3.6e-208], N[(x + N[(-1.0 / N[(a / N[(x * z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -3.1e-265], t$95$2, If[LessEqual[t, 1.9e-67], N[(x + N[(z * N[(N[(y - x), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 56000.0], t$95$1, If[LessEqual[t, 540000000000.0], x, If[LessEqual[t, 8e+79], t$95$1, If[LessEqual[t, 3.3e+116], t$95$3, N[(y + N[(N[(y - x), $MachinePrecision] * N[(a / t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]]]]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := y \cdot \frac{z - t}{a - t}\\
t_2 := \frac{z}{\frac{a - t}{y - x}}\\
t_3 := x + t \cdot \frac{y}{t - a}\\
\mathbf{if}\;t \leq -3.8 \cdot 10^{+164}:\\
\;\;\;\;\frac{y}{\frac{a - t}{z - t}}\\
\mathbf{elif}\;t \leq -1.35 \cdot 10^{+26}:\\
\;\;\;\;y - \frac{\left(y - x\right) \cdot z}{t}\\
\mathbf{elif}\;t \leq -2.75 \cdot 10^{+14}:\\
\;\;\;\;t\_3\\
\mathbf{elif}\;t \leq -4 \cdot 10^{-103}:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;t \leq -3 \cdot 10^{-173}:\\
\;\;\;\;x + \frac{y - x}{\frac{a}{z}}\\
\mathbf{elif}\;t \leq -3.3 \cdot 10^{-192}:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;t \leq -3.6 \cdot 10^{-208}:\\
\;\;\;\;x + \frac{-1}{\frac{a}{x \cdot z}}\\
\mathbf{elif}\;t \leq -3.1 \cdot 10^{-265}:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;t \leq 1.9 \cdot 10^{-67}:\\
\;\;\;\;x + z \cdot \frac{y - x}{a}\\
\mathbf{elif}\;t \leq 56000:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq 540000000000:\\
\;\;\;\;x\\
\mathbf{elif}\;t \leq 8 \cdot 10^{+79}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq 3.3 \cdot 10^{+116}:\\
\;\;\;\;t\_3\\
\mathbf{else}:\\
\;\;\;\;y + \left(y - x\right) \cdot \frac{a}{t}\\
\end{array}
\end{array}
if t < -3.80000000000000021e164Initial program 29.6%
Taylor expanded in x around 0 47.3%
+-commutative47.3%
+-commutative47.3%
distribute-lft-in47.3%
mul-1-neg47.3%
distribute-rgt-neg-in47.3%
associate-/l*29.1%
mul-1-neg29.1%
*-rgt-identity29.1%
associate-+l+29.1%
Simplified71.4%
Taylor expanded in y around inf 81.0%
div-sub81.0%
Simplified81.0%
clear-num69.0%
un-div-inv69.0%
Applied egg-rr81.1%
if -3.80000000000000021e164 < t < -1.35e26Initial program 64.8%
Taylor expanded in t around inf 77.4%
associate--l+77.4%
distribute-lft-out--77.4%
div-sub77.4%
mul-1-neg77.4%
unsub-neg77.4%
div-sub77.4%
associate-/l*80.7%
associate-/l*80.6%
distribute-rgt-out--80.6%
Simplified80.6%
Taylor expanded in z around inf 67.9%
if -1.35e26 < t < -2.75e14 or 7.99999999999999974e79 < t < 3.2999999999999998e116Initial program 45.7%
Taylor expanded in y around inf 59.1%
associate-/l*85.5%
Simplified85.5%
clear-num85.8%
inv-pow85.8%
Applied egg-rr85.8%
unpow-185.8%
Simplified85.8%
Taylor expanded in z around 0 59.1%
mul-1-neg59.1%
unsub-neg59.1%
associate-/l*85.5%
Simplified85.5%
if -2.75e14 < t < -3.99999999999999983e-103 or -3.0000000000000001e-173 < t < -3.29999999999999989e-192 or -3.5999999999999998e-208 < t < -3.09999999999999988e-265Initial program 88.8%
Taylor expanded in x around 0 84.2%
+-commutative84.2%
+-commutative84.2%
distribute-lft-in84.3%
mul-1-neg84.3%
distribute-rgt-neg-in84.3%
associate-/l*86.1%
mul-1-neg86.1%
*-rgt-identity86.1%
associate-+l+86.1%
Simplified93.5%
Taylor expanded in z around inf 66.8%
div-sub69.1%
Simplified69.1%
clear-num69.0%
un-div-inv71.2%
Applied egg-rr71.2%
if -3.99999999999999983e-103 < t < -3.0000000000000001e-173Initial program 87.0%
Taylor expanded in t around 0 61.6%
clear-num61.6%
inv-pow61.6%
Applied egg-rr61.6%
unpow-161.6%
associate-/r*67.9%
Simplified67.9%
clear-num67.9%
add-cube-cbrt67.5%
*-un-lft-identity67.5%
times-frac67.4%
pow267.4%
Applied egg-rr67.4%
/-rgt-identity67.4%
associate-*r/67.5%
unpow267.5%
rem-3cbrt-lft67.9%
Simplified67.9%
if -3.29999999999999989e-192 < t < -3.5999999999999998e-208Initial program 99.6%
Taylor expanded in t around 0 99.6%
clear-num100.0%
inv-pow100.0%
Applied egg-rr100.0%
unpow-1100.0%
associate-/r*76.2%
Simplified76.2%
Taylor expanded in y around 0 100.0%
mul-1-neg100.0%
distribute-neg-frac2100.0%
*-commutative100.0%
distribute-rgt-neg-out100.0%
Simplified100.0%
if -3.09999999999999988e-265 < t < 1.89999999999999994e-67Initial program 91.8%
Taylor expanded in t around 0 83.6%
associate-/l*88.6%
Simplified88.6%
if 1.89999999999999994e-67 < t < 56000 or 5.4e11 < t < 7.99999999999999974e79Initial program 68.9%
Taylor expanded in x around 0 69.6%
+-commutative69.6%
+-commutative69.6%
distribute-lft-in69.6%
mul-1-neg69.6%
distribute-rgt-neg-in69.6%
associate-/l*69.4%
mul-1-neg69.4%
*-rgt-identity69.4%
associate-+l+68.9%
Simplified83.9%
Taylor expanded in y around inf 66.0%
div-sub66.0%
Simplified66.0%
if 56000 < t < 5.4e11Initial program 100.0%
Taylor expanded in a around inf 100.0%
if 3.2999999999999998e116 < t Initial program 24.7%
Taylor expanded in t around inf 77.5%
associate--l+77.5%
distribute-lft-out--77.5%
div-sub77.5%
mul-1-neg77.5%
unsub-neg77.5%
div-sub77.5%
associate-/l*83.5%
associate-/l*86.3%
distribute-rgt-out--86.3%
Simplified86.3%
Taylor expanded in z around 0 74.8%
cancel-sign-sub-inv74.8%
metadata-eval74.8%
*-lft-identity74.8%
*-commutative74.8%
associate-/l*79.0%
Simplified79.0%
Final simplification77.6%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (/ z (/ (- a t) (- y x))))
(t_2 (+ x (* t (/ y (- t a)))))
(t_3 (* y (/ (- z t) (- a t)))))
(if (<= t -1.42e+159)
(/ y (/ (- a t) (- z t)))
(if (<= t -7e+26)
(- y (/ (* (- y x) z) t))
(if (<= t -1050000000000.0)
t_2
(if (<= t -6.6e-103)
t_1
(if (<= t -2.75e-173)
(+ x (/ (- y x) (/ a z)))
(if (<= t -3.5e-193)
t_1
(if (<= t -3.4e-207)
(- x (/ (* x z) a))
(if (<= t -3.1e-265)
t_1
(if (<= t 3.6e-64)
(+ x (* z (/ (- y x) a)))
(if (<= t 56000.0)
t_3
(if (<= t 235000000000.0)
x
(if (<= t 1.2e+80)
t_3
(if (<= t 1.14e+117)
t_2
(+ y (* (- y x) (/ a t))))))))))))))))))
double code(double x, double y, double z, double t, double a) {
double t_1 = z / ((a - t) / (y - x));
double t_2 = x + (t * (y / (t - a)));
double t_3 = y * ((z - t) / (a - t));
double tmp;
if (t <= -1.42e+159) {
tmp = y / ((a - t) / (z - t));
} else if (t <= -7e+26) {
tmp = y - (((y - x) * z) / t);
} else if (t <= -1050000000000.0) {
tmp = t_2;
} else if (t <= -6.6e-103) {
tmp = t_1;
} else if (t <= -2.75e-173) {
tmp = x + ((y - x) / (a / z));
} else if (t <= -3.5e-193) {
tmp = t_1;
} else if (t <= -3.4e-207) {
tmp = x - ((x * z) / a);
} else if (t <= -3.1e-265) {
tmp = t_1;
} else if (t <= 3.6e-64) {
tmp = x + (z * ((y - x) / a));
} else if (t <= 56000.0) {
tmp = t_3;
} else if (t <= 235000000000.0) {
tmp = x;
} else if (t <= 1.2e+80) {
tmp = t_3;
} else if (t <= 1.14e+117) {
tmp = t_2;
} else {
tmp = y + ((y - x) * (a / 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) :: t_1
real(8) :: t_2
real(8) :: t_3
real(8) :: tmp
t_1 = z / ((a - t) / (y - x))
t_2 = x + (t * (y / (t - a)))
t_3 = y * ((z - t) / (a - t))
if (t <= (-1.42d+159)) then
tmp = y / ((a - t) / (z - t))
else if (t <= (-7d+26)) then
tmp = y - (((y - x) * z) / t)
else if (t <= (-1050000000000.0d0)) then
tmp = t_2
else if (t <= (-6.6d-103)) then
tmp = t_1
else if (t <= (-2.75d-173)) then
tmp = x + ((y - x) / (a / z))
else if (t <= (-3.5d-193)) then
tmp = t_1
else if (t <= (-3.4d-207)) then
tmp = x - ((x * z) / a)
else if (t <= (-3.1d-265)) then
tmp = t_1
else if (t <= 3.6d-64) then
tmp = x + (z * ((y - x) / a))
else if (t <= 56000.0d0) then
tmp = t_3
else if (t <= 235000000000.0d0) then
tmp = x
else if (t <= 1.2d+80) then
tmp = t_3
else if (t <= 1.14d+117) then
tmp = t_2
else
tmp = y + ((y - x) * (a / t))
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double t_1 = z / ((a - t) / (y - x));
double t_2 = x + (t * (y / (t - a)));
double t_3 = y * ((z - t) / (a - t));
double tmp;
if (t <= -1.42e+159) {
tmp = y / ((a - t) / (z - t));
} else if (t <= -7e+26) {
tmp = y - (((y - x) * z) / t);
} else if (t <= -1050000000000.0) {
tmp = t_2;
} else if (t <= -6.6e-103) {
tmp = t_1;
} else if (t <= -2.75e-173) {
tmp = x + ((y - x) / (a / z));
} else if (t <= -3.5e-193) {
tmp = t_1;
} else if (t <= -3.4e-207) {
tmp = x - ((x * z) / a);
} else if (t <= -3.1e-265) {
tmp = t_1;
} else if (t <= 3.6e-64) {
tmp = x + (z * ((y - x) / a));
} else if (t <= 56000.0) {
tmp = t_3;
} else if (t <= 235000000000.0) {
tmp = x;
} else if (t <= 1.2e+80) {
tmp = t_3;
} else if (t <= 1.14e+117) {
tmp = t_2;
} else {
tmp = y + ((y - x) * (a / t));
}
return tmp;
}
def code(x, y, z, t, a): t_1 = z / ((a - t) / (y - x)) t_2 = x + (t * (y / (t - a))) t_3 = y * ((z - t) / (a - t)) tmp = 0 if t <= -1.42e+159: tmp = y / ((a - t) / (z - t)) elif t <= -7e+26: tmp = y - (((y - x) * z) / t) elif t <= -1050000000000.0: tmp = t_2 elif t <= -6.6e-103: tmp = t_1 elif t <= -2.75e-173: tmp = x + ((y - x) / (a / z)) elif t <= -3.5e-193: tmp = t_1 elif t <= -3.4e-207: tmp = x - ((x * z) / a) elif t <= -3.1e-265: tmp = t_1 elif t <= 3.6e-64: tmp = x + (z * ((y - x) / a)) elif t <= 56000.0: tmp = t_3 elif t <= 235000000000.0: tmp = x elif t <= 1.2e+80: tmp = t_3 elif t <= 1.14e+117: tmp = t_2 else: tmp = y + ((y - x) * (a / t)) return tmp
function code(x, y, z, t, a) t_1 = Float64(z / Float64(Float64(a - t) / Float64(y - x))) t_2 = Float64(x + Float64(t * Float64(y / Float64(t - a)))) t_3 = Float64(y * Float64(Float64(z - t) / Float64(a - t))) tmp = 0.0 if (t <= -1.42e+159) tmp = Float64(y / Float64(Float64(a - t) / Float64(z - t))); elseif (t <= -7e+26) tmp = Float64(y - Float64(Float64(Float64(y - x) * z) / t)); elseif (t <= -1050000000000.0) tmp = t_2; elseif (t <= -6.6e-103) tmp = t_1; elseif (t <= -2.75e-173) tmp = Float64(x + Float64(Float64(y - x) / Float64(a / z))); elseif (t <= -3.5e-193) tmp = t_1; elseif (t <= -3.4e-207) tmp = Float64(x - Float64(Float64(x * z) / a)); elseif (t <= -3.1e-265) tmp = t_1; elseif (t <= 3.6e-64) tmp = Float64(x + Float64(z * Float64(Float64(y - x) / a))); elseif (t <= 56000.0) tmp = t_3; elseif (t <= 235000000000.0) tmp = x; elseif (t <= 1.2e+80) tmp = t_3; elseif (t <= 1.14e+117) tmp = t_2; else tmp = Float64(y + Float64(Float64(y - x) * Float64(a / t))); end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = z / ((a - t) / (y - x)); t_2 = x + (t * (y / (t - a))); t_3 = y * ((z - t) / (a - t)); tmp = 0.0; if (t <= -1.42e+159) tmp = y / ((a - t) / (z - t)); elseif (t <= -7e+26) tmp = y - (((y - x) * z) / t); elseif (t <= -1050000000000.0) tmp = t_2; elseif (t <= -6.6e-103) tmp = t_1; elseif (t <= -2.75e-173) tmp = x + ((y - x) / (a / z)); elseif (t <= -3.5e-193) tmp = t_1; elseif (t <= -3.4e-207) tmp = x - ((x * z) / a); elseif (t <= -3.1e-265) tmp = t_1; elseif (t <= 3.6e-64) tmp = x + (z * ((y - x) / a)); elseif (t <= 56000.0) tmp = t_3; elseif (t <= 235000000000.0) tmp = x; elseif (t <= 1.2e+80) tmp = t_3; elseif (t <= 1.14e+117) tmp = t_2; else tmp = y + ((y - x) * (a / t)); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(z / N[(N[(a - t), $MachinePrecision] / N[(y - x), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(x + N[(t * N[(y / N[(t - a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$3 = N[(y * N[(N[(z - t), $MachinePrecision] / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t, -1.42e+159], N[(y / N[(N[(a - t), $MachinePrecision] / N[(z - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -7e+26], N[(y - N[(N[(N[(y - x), $MachinePrecision] * z), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -1050000000000.0], t$95$2, If[LessEqual[t, -6.6e-103], t$95$1, If[LessEqual[t, -2.75e-173], N[(x + N[(N[(y - x), $MachinePrecision] / N[(a / z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -3.5e-193], t$95$1, If[LessEqual[t, -3.4e-207], N[(x - N[(N[(x * z), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -3.1e-265], t$95$1, If[LessEqual[t, 3.6e-64], N[(x + N[(z * N[(N[(y - x), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 56000.0], t$95$3, If[LessEqual[t, 235000000000.0], x, If[LessEqual[t, 1.2e+80], t$95$3, If[LessEqual[t, 1.14e+117], t$95$2, N[(y + N[(N[(y - x), $MachinePrecision] * N[(a / t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]]]]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := \frac{z}{\frac{a - t}{y - x}}\\
t_2 := x + t \cdot \frac{y}{t - a}\\
t_3 := y \cdot \frac{z - t}{a - t}\\
\mathbf{if}\;t \leq -1.42 \cdot 10^{+159}:\\
\;\;\;\;\frac{y}{\frac{a - t}{z - t}}\\
\mathbf{elif}\;t \leq -7 \cdot 10^{+26}:\\
\;\;\;\;y - \frac{\left(y - x\right) \cdot z}{t}\\
\mathbf{elif}\;t \leq -1050000000000:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;t \leq -6.6 \cdot 10^{-103}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq -2.75 \cdot 10^{-173}:\\
\;\;\;\;x + \frac{y - x}{\frac{a}{z}}\\
\mathbf{elif}\;t \leq -3.5 \cdot 10^{-193}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq -3.4 \cdot 10^{-207}:\\
\;\;\;\;x - \frac{x \cdot z}{a}\\
\mathbf{elif}\;t \leq -3.1 \cdot 10^{-265}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq 3.6 \cdot 10^{-64}:\\
\;\;\;\;x + z \cdot \frac{y - x}{a}\\
\mathbf{elif}\;t \leq 56000:\\
\;\;\;\;t\_3\\
\mathbf{elif}\;t \leq 235000000000:\\
\;\;\;\;x\\
\mathbf{elif}\;t \leq 1.2 \cdot 10^{+80}:\\
\;\;\;\;t\_3\\
\mathbf{elif}\;t \leq 1.14 \cdot 10^{+117}:\\
\;\;\;\;t\_2\\
\mathbf{else}:\\
\;\;\;\;y + \left(y - x\right) \cdot \frac{a}{t}\\
\end{array}
\end{array}
if t < -1.4199999999999999e159Initial program 29.6%
Taylor expanded in x around 0 47.3%
+-commutative47.3%
+-commutative47.3%
distribute-lft-in47.3%
mul-1-neg47.3%
distribute-rgt-neg-in47.3%
associate-/l*29.1%
mul-1-neg29.1%
*-rgt-identity29.1%
associate-+l+29.1%
Simplified71.4%
Taylor expanded in y around inf 81.0%
div-sub81.0%
Simplified81.0%
clear-num69.0%
un-div-inv69.0%
Applied egg-rr81.1%
if -1.4199999999999999e159 < t < -6.9999999999999998e26Initial program 64.8%
Taylor expanded in t around inf 77.4%
associate--l+77.4%
distribute-lft-out--77.4%
div-sub77.4%
mul-1-neg77.4%
unsub-neg77.4%
div-sub77.4%
associate-/l*80.7%
associate-/l*80.6%
distribute-rgt-out--80.6%
Simplified80.6%
Taylor expanded in z around inf 67.9%
if -6.9999999999999998e26 < t < -1.05e12 or 1.1999999999999999e80 < t < 1.13999999999999997e117Initial program 45.7%
Taylor expanded in y around inf 59.1%
associate-/l*85.5%
Simplified85.5%
clear-num85.8%
inv-pow85.8%
Applied egg-rr85.8%
unpow-185.8%
Simplified85.8%
Taylor expanded in z around 0 59.1%
mul-1-neg59.1%
unsub-neg59.1%
associate-/l*85.5%
Simplified85.5%
if -1.05e12 < t < -6.59999999999999979e-103 or -2.75000000000000011e-173 < t < -3.50000000000000005e-193 or -3.39999999999999999e-207 < t < -3.09999999999999988e-265Initial program 88.8%
Taylor expanded in x around 0 84.2%
+-commutative84.2%
+-commutative84.2%
distribute-lft-in84.3%
mul-1-neg84.3%
distribute-rgt-neg-in84.3%
associate-/l*86.1%
mul-1-neg86.1%
*-rgt-identity86.1%
associate-+l+86.1%
Simplified93.5%
Taylor expanded in z around inf 66.8%
div-sub69.1%
Simplified69.1%
clear-num69.0%
un-div-inv71.2%
Applied egg-rr71.2%
if -6.59999999999999979e-103 < t < -2.75000000000000011e-173Initial program 87.0%
Taylor expanded in t around 0 61.6%
clear-num61.6%
inv-pow61.6%
Applied egg-rr61.6%
unpow-161.6%
associate-/r*67.9%
Simplified67.9%
clear-num67.9%
add-cube-cbrt67.5%
*-un-lft-identity67.5%
times-frac67.4%
pow267.4%
Applied egg-rr67.4%
/-rgt-identity67.4%
associate-*r/67.5%
unpow267.5%
rem-3cbrt-lft67.9%
Simplified67.9%
if -3.50000000000000005e-193 < t < -3.39999999999999999e-207Initial program 99.6%
Taylor expanded in t around 0 99.6%
Taylor expanded in y around 0 99.6%
mul-1-neg99.6%
distribute-lft-neg-out99.6%
*-commutative99.6%
Simplified99.6%
if -3.09999999999999988e-265 < t < 3.5999999999999998e-64Initial program 91.8%
Taylor expanded in t around 0 83.6%
associate-/l*88.6%
Simplified88.6%
if 3.5999999999999998e-64 < t < 56000 or 2.35e11 < t < 1.1999999999999999e80Initial program 68.9%
Taylor expanded in x around 0 69.6%
+-commutative69.6%
+-commutative69.6%
distribute-lft-in69.6%
mul-1-neg69.6%
distribute-rgt-neg-in69.6%
associate-/l*69.4%
mul-1-neg69.4%
*-rgt-identity69.4%
associate-+l+68.9%
Simplified83.9%
Taylor expanded in y around inf 66.0%
div-sub66.0%
Simplified66.0%
if 56000 < t < 2.35e11Initial program 100.0%
Taylor expanded in a around inf 100.0%
if 1.13999999999999997e117 < t Initial program 24.7%
Taylor expanded in t around inf 77.5%
associate--l+77.5%
distribute-lft-out--77.5%
div-sub77.5%
mul-1-neg77.5%
unsub-neg77.5%
div-sub77.5%
associate-/l*83.5%
associate-/l*86.3%
distribute-rgt-out--86.3%
Simplified86.3%
Taylor expanded in z around 0 74.8%
cancel-sign-sub-inv74.8%
metadata-eval74.8%
*-lft-identity74.8%
*-commutative74.8%
associate-/l*79.0%
Simplified79.0%
Final simplification77.5%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (+ x (* z (/ (- y x) a))))
(t_2 (/ z (/ (- a t) (- y x))))
(t_3 (* y (/ (- z t) (- a t)))))
(if (<= t -1.7e-26)
(+ y (/ (- z a) (/ t x)))
(if (<= t -1.95e-52)
t_1
(if (<= t -1.52e-92)
t_2
(if (<= t -9.5e-155)
t_1
(if (<= t -1.05e-208)
(+ x (/ (* (- y x) z) a))
(if (<= t -4.6e-212)
(+ x (* t (/ y (- t a))))
(if (<= t -1.2e-253)
t_2
(if (<= t -5e-291)
(+ x (/ (- y x) (/ a z)))
(if (<= t 6e-63)
t_1
(if (<= t 56000.0)
t_3
(if (<= t 235000000000.0)
x
(if (<= t 6.8e+77)
t_3
(+ y (* x (/ (- z a) t)))))))))))))))))
double code(double x, double y, double z, double t, double a) {
double t_1 = x + (z * ((y - x) / a));
double t_2 = z / ((a - t) / (y - x));
double t_3 = y * ((z - t) / (a - t));
double tmp;
if (t <= -1.7e-26) {
tmp = y + ((z - a) / (t / x));
} else if (t <= -1.95e-52) {
tmp = t_1;
} else if (t <= -1.52e-92) {
tmp = t_2;
} else if (t <= -9.5e-155) {
tmp = t_1;
} else if (t <= -1.05e-208) {
tmp = x + (((y - x) * z) / a);
} else if (t <= -4.6e-212) {
tmp = x + (t * (y / (t - a)));
} else if (t <= -1.2e-253) {
tmp = t_2;
} else if (t <= -5e-291) {
tmp = x + ((y - x) / (a / z));
} else if (t <= 6e-63) {
tmp = t_1;
} else if (t <= 56000.0) {
tmp = t_3;
} else if (t <= 235000000000.0) {
tmp = x;
} else if (t <= 6.8e+77) {
tmp = t_3;
} else {
tmp = y + (x * ((z - a) / 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) :: t_1
real(8) :: t_2
real(8) :: t_3
real(8) :: tmp
t_1 = x + (z * ((y - x) / a))
t_2 = z / ((a - t) / (y - x))
t_3 = y * ((z - t) / (a - t))
if (t <= (-1.7d-26)) then
tmp = y + ((z - a) / (t / x))
else if (t <= (-1.95d-52)) then
tmp = t_1
else if (t <= (-1.52d-92)) then
tmp = t_2
else if (t <= (-9.5d-155)) then
tmp = t_1
else if (t <= (-1.05d-208)) then
tmp = x + (((y - x) * z) / a)
else if (t <= (-4.6d-212)) then
tmp = x + (t * (y / (t - a)))
else if (t <= (-1.2d-253)) then
tmp = t_2
else if (t <= (-5d-291)) then
tmp = x + ((y - x) / (a / z))
else if (t <= 6d-63) then
tmp = t_1
else if (t <= 56000.0d0) then
tmp = t_3
else if (t <= 235000000000.0d0) then
tmp = x
else if (t <= 6.8d+77) then
tmp = t_3
else
tmp = y + (x * ((z - a) / t))
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double t_1 = x + (z * ((y - x) / a));
double t_2 = z / ((a - t) / (y - x));
double t_3 = y * ((z - t) / (a - t));
double tmp;
if (t <= -1.7e-26) {
tmp = y + ((z - a) / (t / x));
} else if (t <= -1.95e-52) {
tmp = t_1;
} else if (t <= -1.52e-92) {
tmp = t_2;
} else if (t <= -9.5e-155) {
tmp = t_1;
} else if (t <= -1.05e-208) {
tmp = x + (((y - x) * z) / a);
} else if (t <= -4.6e-212) {
tmp = x + (t * (y / (t - a)));
} else if (t <= -1.2e-253) {
tmp = t_2;
} else if (t <= -5e-291) {
tmp = x + ((y - x) / (a / z));
} else if (t <= 6e-63) {
tmp = t_1;
} else if (t <= 56000.0) {
tmp = t_3;
} else if (t <= 235000000000.0) {
tmp = x;
} else if (t <= 6.8e+77) {
tmp = t_3;
} else {
tmp = y + (x * ((z - a) / t));
}
return tmp;
}
def code(x, y, z, t, a): t_1 = x + (z * ((y - x) / a)) t_2 = z / ((a - t) / (y - x)) t_3 = y * ((z - t) / (a - t)) tmp = 0 if t <= -1.7e-26: tmp = y + ((z - a) / (t / x)) elif t <= -1.95e-52: tmp = t_1 elif t <= -1.52e-92: tmp = t_2 elif t <= -9.5e-155: tmp = t_1 elif t <= -1.05e-208: tmp = x + (((y - x) * z) / a) elif t <= -4.6e-212: tmp = x + (t * (y / (t - a))) elif t <= -1.2e-253: tmp = t_2 elif t <= -5e-291: tmp = x + ((y - x) / (a / z)) elif t <= 6e-63: tmp = t_1 elif t <= 56000.0: tmp = t_3 elif t <= 235000000000.0: tmp = x elif t <= 6.8e+77: tmp = t_3 else: tmp = y + (x * ((z - a) / t)) return tmp
function code(x, y, z, t, a) t_1 = Float64(x + Float64(z * Float64(Float64(y - x) / a))) t_2 = Float64(z / Float64(Float64(a - t) / Float64(y - x))) t_3 = Float64(y * Float64(Float64(z - t) / Float64(a - t))) tmp = 0.0 if (t <= -1.7e-26) tmp = Float64(y + Float64(Float64(z - a) / Float64(t / x))); elseif (t <= -1.95e-52) tmp = t_1; elseif (t <= -1.52e-92) tmp = t_2; elseif (t <= -9.5e-155) tmp = t_1; elseif (t <= -1.05e-208) tmp = Float64(x + Float64(Float64(Float64(y - x) * z) / a)); elseif (t <= -4.6e-212) tmp = Float64(x + Float64(t * Float64(y / Float64(t - a)))); elseif (t <= -1.2e-253) tmp = t_2; elseif (t <= -5e-291) tmp = Float64(x + Float64(Float64(y - x) / Float64(a / z))); elseif (t <= 6e-63) tmp = t_1; elseif (t <= 56000.0) tmp = t_3; elseif (t <= 235000000000.0) tmp = x; elseif (t <= 6.8e+77) tmp = t_3; else tmp = Float64(y + Float64(x * Float64(Float64(z - a) / t))); end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = x + (z * ((y - x) / a)); t_2 = z / ((a - t) / (y - x)); t_3 = y * ((z - t) / (a - t)); tmp = 0.0; if (t <= -1.7e-26) tmp = y + ((z - a) / (t / x)); elseif (t <= -1.95e-52) tmp = t_1; elseif (t <= -1.52e-92) tmp = t_2; elseif (t <= -9.5e-155) tmp = t_1; elseif (t <= -1.05e-208) tmp = x + (((y - x) * z) / a); elseif (t <= -4.6e-212) tmp = x + (t * (y / (t - a))); elseif (t <= -1.2e-253) tmp = t_2; elseif (t <= -5e-291) tmp = x + ((y - x) / (a / z)); elseif (t <= 6e-63) tmp = t_1; elseif (t <= 56000.0) tmp = t_3; elseif (t <= 235000000000.0) tmp = x; elseif (t <= 6.8e+77) tmp = t_3; else tmp = y + (x * ((z - a) / t)); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(x + N[(z * N[(N[(y - x), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(z / N[(N[(a - t), $MachinePrecision] / N[(y - x), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$3 = N[(y * N[(N[(z - t), $MachinePrecision] / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t, -1.7e-26], N[(y + N[(N[(z - a), $MachinePrecision] / N[(t / x), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -1.95e-52], t$95$1, If[LessEqual[t, -1.52e-92], t$95$2, If[LessEqual[t, -9.5e-155], t$95$1, If[LessEqual[t, -1.05e-208], N[(x + N[(N[(N[(y - x), $MachinePrecision] * z), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -4.6e-212], N[(x + N[(t * N[(y / N[(t - a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -1.2e-253], t$95$2, If[LessEqual[t, -5e-291], N[(x + N[(N[(y - x), $MachinePrecision] / N[(a / z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 6e-63], t$95$1, If[LessEqual[t, 56000.0], t$95$3, If[LessEqual[t, 235000000000.0], x, If[LessEqual[t, 6.8e+77], t$95$3, N[(y + N[(x * N[(N[(z - a), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]]]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := x + z \cdot \frac{y - x}{a}\\
t_2 := \frac{z}{\frac{a - t}{y - x}}\\
t_3 := y \cdot \frac{z - t}{a - t}\\
\mathbf{if}\;t \leq -1.7 \cdot 10^{-26}:\\
\;\;\;\;y + \frac{z - a}{\frac{t}{x}}\\
\mathbf{elif}\;t \leq -1.95 \cdot 10^{-52}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq -1.52 \cdot 10^{-92}:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;t \leq -9.5 \cdot 10^{-155}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq -1.05 \cdot 10^{-208}:\\
\;\;\;\;x + \frac{\left(y - x\right) \cdot z}{a}\\
\mathbf{elif}\;t \leq -4.6 \cdot 10^{-212}:\\
\;\;\;\;x + t \cdot \frac{y}{t - a}\\
\mathbf{elif}\;t \leq -1.2 \cdot 10^{-253}:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;t \leq -5 \cdot 10^{-291}:\\
\;\;\;\;x + \frac{y - x}{\frac{a}{z}}\\
\mathbf{elif}\;t \leq 6 \cdot 10^{-63}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq 56000:\\
\;\;\;\;t\_3\\
\mathbf{elif}\;t \leq 235000000000:\\
\;\;\;\;x\\
\mathbf{elif}\;t \leq 6.8 \cdot 10^{+77}:\\
\;\;\;\;t\_3\\
\mathbf{else}:\\
\;\;\;\;y + x \cdot \frac{z - a}{t}\\
\end{array}
\end{array}
if t < -1.70000000000000007e-26Initial program 52.2%
Taylor expanded in t around inf 63.1%
associate--l+63.1%
distribute-lft-out--63.1%
div-sub63.1%
mul-1-neg63.1%
unsub-neg63.1%
div-sub63.1%
associate-/l*71.8%
associate-/l*82.1%
distribute-rgt-out--82.1%
Simplified82.1%
*-commutative82.1%
clear-num82.0%
un-div-inv82.1%
Applied egg-rr82.1%
Taylor expanded in y around 0 72.1%
associate-*r/72.1%
mul-1-neg72.1%
Simplified72.1%
if -1.70000000000000007e-26 < t < -1.95000000000000009e-52 or -1.52e-92 < t < -9.50000000000000024e-155 or -5.0000000000000003e-291 < t < 5.99999999999999959e-63Initial program 89.4%
Taylor expanded in t around 0 77.2%
associate-/l*85.1%
Simplified85.1%
if -1.95000000000000009e-52 < t < -1.52e-92 or -4.6000000000000002e-212 < t < -1.20000000000000005e-253Initial program 89.4%
Taylor expanded in x around 0 84.6%
+-commutative84.6%
+-commutative84.6%
distribute-lft-in84.6%
mul-1-neg84.6%
distribute-rgt-neg-in84.6%
associate-/l*89.4%
mul-1-neg89.4%
*-rgt-identity89.4%
associate-+l+89.4%
Simplified94.5%
Taylor expanded in z around inf 79.0%
div-sub79.0%
Simplified79.0%
clear-num79.0%
un-div-inv79.1%
Applied egg-rr79.1%
if -9.50000000000000024e-155 < t < -1.05000000000000006e-208Initial program 99.5%
Taylor expanded in t around 0 68.5%
if -1.05000000000000006e-208 < t < -4.6000000000000002e-212Initial program 99.5%
Taylor expanded in y around inf 99.5%
associate-/l*100.0%
Simplified100.0%
clear-num100.0%
inv-pow100.0%
Applied egg-rr100.0%
unpow-1100.0%
Simplified100.0%
Taylor expanded in z around 0 68.6%
mul-1-neg68.6%
unsub-neg68.6%
associate-/l*99.5%
Simplified99.5%
if -1.20000000000000005e-253 < t < -5.0000000000000003e-291Initial program 88.7%
Taylor expanded in t around 0 88.7%
clear-num88.7%
inv-pow88.7%
Applied egg-rr88.7%
unpow-188.7%
associate-/r*100.0%
Simplified100.0%
clear-num100.0%
add-cube-cbrt99.3%
*-un-lft-identity99.3%
times-frac99.2%
pow299.2%
Applied egg-rr99.2%
/-rgt-identity99.2%
associate-*r/99.3%
unpow299.3%
rem-3cbrt-lft100.0%
Simplified100.0%
if 5.99999999999999959e-63 < t < 56000 or 2.35e11 < t < 6.79999999999999993e77Initial program 68.9%
Taylor expanded in x around 0 69.6%
+-commutative69.6%
+-commutative69.6%
distribute-lft-in69.6%
mul-1-neg69.6%
distribute-rgt-neg-in69.6%
associate-/l*69.4%
mul-1-neg69.4%
*-rgt-identity69.4%
associate-+l+68.9%
Simplified83.9%
Taylor expanded in y around inf 66.0%
div-sub66.0%
Simplified66.0%
if 56000 < t < 2.35e11Initial program 100.0%
Taylor expanded in a around inf 100.0%
if 6.79999999999999993e77 < t Initial program 26.7%
Taylor expanded in t around inf 73.7%
associate--l+73.7%
distribute-lft-out--73.7%
div-sub73.7%
mul-1-neg73.7%
unsub-neg73.7%
div-sub73.7%
associate-/l*81.1%
associate-/l*83.6%
distribute-rgt-out--83.6%
Simplified83.6%
*-commutative83.6%
clear-num83.6%
un-div-inv83.5%
Applied egg-rr83.5%
Taylor expanded in y around 0 79.1%
mul-1-neg79.1%
associate-/l*80.7%
Simplified80.7%
Final simplification78.6%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (* z (/ (- y x) (- a t))))
(t_2 (* y (/ (- z t) (- a t))))
(t_3 (+ x (* z (/ (- y x) a)))))
(if (<= t -6.3e-15)
t_2
(if (<= t -1.7e-92)
t_1
(if (<= t -4.2e-154)
t_3
(if (<= t -1.05e-208)
(+ x (/ (* (- y x) z) a))
(if (<= t -1e-208)
(* y (/ t (- a)))
(if (<= t -9.4e-244)
(- x (/ (* x z) a))
(if (<= t -1.2e-253)
t_1
(if (<= t -9.2e-283)
(+ x (/ (- y x) (/ a z)))
(if (<= t 7e-63)
t_3
(if (<= t 49000.0)
t_2
(if (<= t 235000000000.0)
x
(if (<= t 9.8e+79)
t_2
(+ y (* (- y x) (/ a t)))))))))))))))))
double code(double x, double y, double z, double t, double a) {
double t_1 = z * ((y - x) / (a - t));
double t_2 = y * ((z - t) / (a - t));
double t_3 = x + (z * ((y - x) / a));
double tmp;
if (t <= -6.3e-15) {
tmp = t_2;
} else if (t <= -1.7e-92) {
tmp = t_1;
} else if (t <= -4.2e-154) {
tmp = t_3;
} else if (t <= -1.05e-208) {
tmp = x + (((y - x) * z) / a);
} else if (t <= -1e-208) {
tmp = y * (t / -a);
} else if (t <= -9.4e-244) {
tmp = x - ((x * z) / a);
} else if (t <= -1.2e-253) {
tmp = t_1;
} else if (t <= -9.2e-283) {
tmp = x + ((y - x) / (a / z));
} else if (t <= 7e-63) {
tmp = t_3;
} else if (t <= 49000.0) {
tmp = t_2;
} else if (t <= 235000000000.0) {
tmp = x;
} else if (t <= 9.8e+79) {
tmp = t_2;
} else {
tmp = y + ((y - x) * (a / 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) :: t_1
real(8) :: t_2
real(8) :: t_3
real(8) :: tmp
t_1 = z * ((y - x) / (a - t))
t_2 = y * ((z - t) / (a - t))
t_3 = x + (z * ((y - x) / a))
if (t <= (-6.3d-15)) then
tmp = t_2
else if (t <= (-1.7d-92)) then
tmp = t_1
else if (t <= (-4.2d-154)) then
tmp = t_3
else if (t <= (-1.05d-208)) then
tmp = x + (((y - x) * z) / a)
else if (t <= (-1d-208)) then
tmp = y * (t / -a)
else if (t <= (-9.4d-244)) then
tmp = x - ((x * z) / a)
else if (t <= (-1.2d-253)) then
tmp = t_1
else if (t <= (-9.2d-283)) then
tmp = x + ((y - x) / (a / z))
else if (t <= 7d-63) then
tmp = t_3
else if (t <= 49000.0d0) then
tmp = t_2
else if (t <= 235000000000.0d0) then
tmp = x
else if (t <= 9.8d+79) then
tmp = t_2
else
tmp = y + ((y - x) * (a / t))
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double t_1 = z * ((y - x) / (a - t));
double t_2 = y * ((z - t) / (a - t));
double t_3 = x + (z * ((y - x) / a));
double tmp;
if (t <= -6.3e-15) {
tmp = t_2;
} else if (t <= -1.7e-92) {
tmp = t_1;
} else if (t <= -4.2e-154) {
tmp = t_3;
} else if (t <= -1.05e-208) {
tmp = x + (((y - x) * z) / a);
} else if (t <= -1e-208) {
tmp = y * (t / -a);
} else if (t <= -9.4e-244) {
tmp = x - ((x * z) / a);
} else if (t <= -1.2e-253) {
tmp = t_1;
} else if (t <= -9.2e-283) {
tmp = x + ((y - x) / (a / z));
} else if (t <= 7e-63) {
tmp = t_3;
} else if (t <= 49000.0) {
tmp = t_2;
} else if (t <= 235000000000.0) {
tmp = x;
} else if (t <= 9.8e+79) {
tmp = t_2;
} else {
tmp = y + ((y - x) * (a / t));
}
return tmp;
}
def code(x, y, z, t, a): t_1 = z * ((y - x) / (a - t)) t_2 = y * ((z - t) / (a - t)) t_3 = x + (z * ((y - x) / a)) tmp = 0 if t <= -6.3e-15: tmp = t_2 elif t <= -1.7e-92: tmp = t_1 elif t <= -4.2e-154: tmp = t_3 elif t <= -1.05e-208: tmp = x + (((y - x) * z) / a) elif t <= -1e-208: tmp = y * (t / -a) elif t <= -9.4e-244: tmp = x - ((x * z) / a) elif t <= -1.2e-253: tmp = t_1 elif t <= -9.2e-283: tmp = x + ((y - x) / (a / z)) elif t <= 7e-63: tmp = t_3 elif t <= 49000.0: tmp = t_2 elif t <= 235000000000.0: tmp = x elif t <= 9.8e+79: tmp = t_2 else: tmp = y + ((y - x) * (a / t)) return tmp
function code(x, y, z, t, a) t_1 = Float64(z * Float64(Float64(y - x) / Float64(a - t))) t_2 = Float64(y * Float64(Float64(z - t) / Float64(a - t))) t_3 = Float64(x + Float64(z * Float64(Float64(y - x) / a))) tmp = 0.0 if (t <= -6.3e-15) tmp = t_2; elseif (t <= -1.7e-92) tmp = t_1; elseif (t <= -4.2e-154) tmp = t_3; elseif (t <= -1.05e-208) tmp = Float64(x + Float64(Float64(Float64(y - x) * z) / a)); elseif (t <= -1e-208) tmp = Float64(y * Float64(t / Float64(-a))); elseif (t <= -9.4e-244) tmp = Float64(x - Float64(Float64(x * z) / a)); elseif (t <= -1.2e-253) tmp = t_1; elseif (t <= -9.2e-283) tmp = Float64(x + Float64(Float64(y - x) / Float64(a / z))); elseif (t <= 7e-63) tmp = t_3; elseif (t <= 49000.0) tmp = t_2; elseif (t <= 235000000000.0) tmp = x; elseif (t <= 9.8e+79) tmp = t_2; else tmp = Float64(y + Float64(Float64(y - x) * Float64(a / t))); end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = z * ((y - x) / (a - t)); t_2 = y * ((z - t) / (a - t)); t_3 = x + (z * ((y - x) / a)); tmp = 0.0; if (t <= -6.3e-15) tmp = t_2; elseif (t <= -1.7e-92) tmp = t_1; elseif (t <= -4.2e-154) tmp = t_3; elseif (t <= -1.05e-208) tmp = x + (((y - x) * z) / a); elseif (t <= -1e-208) tmp = y * (t / -a); elseif (t <= -9.4e-244) tmp = x - ((x * z) / a); elseif (t <= -1.2e-253) tmp = t_1; elseif (t <= -9.2e-283) tmp = x + ((y - x) / (a / z)); elseif (t <= 7e-63) tmp = t_3; elseif (t <= 49000.0) tmp = t_2; elseif (t <= 235000000000.0) tmp = x; elseif (t <= 9.8e+79) tmp = t_2; else tmp = y + ((y - x) * (a / t)); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(z * N[(N[(y - x), $MachinePrecision] / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(y * N[(N[(z - t), $MachinePrecision] / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$3 = N[(x + N[(z * N[(N[(y - x), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t, -6.3e-15], t$95$2, If[LessEqual[t, -1.7e-92], t$95$1, If[LessEqual[t, -4.2e-154], t$95$3, If[LessEqual[t, -1.05e-208], N[(x + N[(N[(N[(y - x), $MachinePrecision] * z), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -1e-208], N[(y * N[(t / (-a)), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -9.4e-244], N[(x - N[(N[(x * z), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -1.2e-253], t$95$1, If[LessEqual[t, -9.2e-283], N[(x + N[(N[(y - x), $MachinePrecision] / N[(a / z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 7e-63], t$95$3, If[LessEqual[t, 49000.0], t$95$2, If[LessEqual[t, 235000000000.0], x, If[LessEqual[t, 9.8e+79], t$95$2, N[(y + N[(N[(y - x), $MachinePrecision] * N[(a / t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]]]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := z \cdot \frac{y - x}{a - t}\\
t_2 := y \cdot \frac{z - t}{a - t}\\
t_3 := x + z \cdot \frac{y - x}{a}\\
\mathbf{if}\;t \leq -6.3 \cdot 10^{-15}:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;t \leq -1.7 \cdot 10^{-92}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq -4.2 \cdot 10^{-154}:\\
\;\;\;\;t\_3\\
\mathbf{elif}\;t \leq -1.05 \cdot 10^{-208}:\\
\;\;\;\;x + \frac{\left(y - x\right) \cdot z}{a}\\
\mathbf{elif}\;t \leq -1 \cdot 10^{-208}:\\
\;\;\;\;y \cdot \frac{t}{-a}\\
\mathbf{elif}\;t \leq -9.4 \cdot 10^{-244}:\\
\;\;\;\;x - \frac{x \cdot z}{a}\\
\mathbf{elif}\;t \leq -1.2 \cdot 10^{-253}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq -9.2 \cdot 10^{-283}:\\
\;\;\;\;x + \frac{y - x}{\frac{a}{z}}\\
\mathbf{elif}\;t \leq 7 \cdot 10^{-63}:\\
\;\;\;\;t\_3\\
\mathbf{elif}\;t \leq 49000:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;t \leq 235000000000:\\
\;\;\;\;x\\
\mathbf{elif}\;t \leq 9.8 \cdot 10^{+79}:\\
\;\;\;\;t\_2\\
\mathbf{else}:\\
\;\;\;\;y + \left(y - x\right) \cdot \frac{a}{t}\\
\end{array}
\end{array}
if t < -6.29999999999999982e-15 or 7.00000000000000006e-63 < t < 49000 or 2.35e11 < t < 9.7999999999999997e79Initial program 56.3%
Taylor expanded in x around 0 65.2%
+-commutative65.2%
+-commutative65.2%
distribute-lft-in65.2%
mul-1-neg65.2%
distribute-rgt-neg-in65.2%
associate-/l*57.3%
mul-1-neg57.3%
*-rgt-identity57.3%
associate-+l+55.1%
Simplified76.4%
Taylor expanded in y around inf 65.5%
div-sub65.5%
Simplified65.5%
if -6.29999999999999982e-15 < t < -1.7000000000000001e-92 or -9.3999999999999997e-244 < t < -1.20000000000000005e-253Initial program 86.6%
Taylor expanded in x around 0 81.9%
+-commutative81.9%
+-commutative81.9%
distribute-lft-in82.0%
mul-1-neg82.0%
distribute-rgt-neg-in82.0%
associate-/l*86.2%
mul-1-neg86.2%
*-rgt-identity86.2%
associate-+l+86.3%
Simplified95.3%
Taylor expanded in z around inf 81.9%
div-sub81.9%
Simplified81.9%
if -1.7000000000000001e-92 < t < -4.19999999999999969e-154 or -9.1999999999999996e-283 < t < 7.00000000000000006e-63Initial program 89.9%
Taylor expanded in t around 0 78.3%
associate-/l*85.5%
Simplified85.5%
if -4.19999999999999969e-154 < t < -1.05000000000000006e-208Initial program 99.5%
Taylor expanded in t around 0 68.5%
if -1.05000000000000006e-208 < t < -1.0000000000000001e-208Initial program 98.4%
Taylor expanded in y around inf 98.4%
associate-/l*100.0%
Simplified100.0%
clear-num100.0%
inv-pow100.0%
Applied egg-rr100.0%
unpow-1100.0%
Simplified100.0%
Taylor expanded in z around 0 98.4%
mul-1-neg98.4%
unsub-neg98.4%
associate-/l*98.4%
Simplified98.4%
Taylor expanded in t around 0 98.4%
associate-/l*98.4%
Simplified98.4%
Taylor expanded in x around 0 98.4%
mul-1-neg98.4%
*-commutative98.4%
distribute-frac-neg298.4%
associate-/l*100.0%
Simplified100.0%
if -1.0000000000000001e-208 < t < -9.3999999999999997e-244Initial program 99.6%
Taylor expanded in t around 0 71.4%
Taylor expanded in y around 0 86.0%
mul-1-neg86.0%
distribute-lft-neg-out86.0%
*-commutative86.0%
Simplified86.0%
if -1.20000000000000005e-253 < t < -9.1999999999999996e-283Initial program 87.1%
Taylor expanded in t around 0 87.1%
clear-num87.1%
inv-pow87.1%
Applied egg-rr87.1%
unpow-187.1%
associate-/r*100.0%
Simplified100.0%
clear-num100.0%
add-cube-cbrt99.2%
*-un-lft-identity99.2%
times-frac99.1%
pow299.1%
Applied egg-rr99.1%
/-rgt-identity99.1%
associate-*r/99.2%
unpow299.2%
rem-3cbrt-lft100.0%
Simplified100.0%
if 49000 < t < 2.35e11Initial program 100.0%
Taylor expanded in a around inf 100.0%
if 9.7999999999999997e79 < t Initial program 26.7%
Taylor expanded in t around inf 73.7%
associate--l+73.7%
distribute-lft-out--73.7%
div-sub73.7%
mul-1-neg73.7%
unsub-neg73.7%
div-sub73.7%
associate-/l*81.1%
associate-/l*83.6%
distribute-rgt-out--83.6%
Simplified83.6%
Taylor expanded in z around 0 71.2%
cancel-sign-sub-inv71.2%
metadata-eval71.2%
*-lft-identity71.2%
*-commutative71.2%
associate-/l*75.0%
Simplified75.0%
Final simplification76.0%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (* z (/ (- y x) (- a t))))
(t_2 (* y (/ (- z t) (- a t))))
(t_3 (+ x (* z (/ (- y x) a)))))
(if (<= t -1.65e-13)
t_2
(if (<= t -4.4e-93)
t_1
(if (<= t -2.6e-148)
t_3
(if (<= t -1.05e-208)
(+ x (/ (* (- y x) z) a))
(if (<= t -1e-208)
(* y (/ t (- a)))
(if (<= t -1.5e-243)
(- x (/ (* x z) a))
(if (<= t -1.2e-253)
t_1
(if (<= t -4.6e-284)
(+ x (/ (- y x) (/ a z)))
(if (<= t 6.2e-64)
t_3
(if (<= t 56000.0)
t_2
(if (<= t 240000000000.0)
x
(if (<= t 1.12e+80)
t_2
(- y (* x (/ a t)))))))))))))))))
double code(double x, double y, double z, double t, double a) {
double t_1 = z * ((y - x) / (a - t));
double t_2 = y * ((z - t) / (a - t));
double t_3 = x + (z * ((y - x) / a));
double tmp;
if (t <= -1.65e-13) {
tmp = t_2;
} else if (t <= -4.4e-93) {
tmp = t_1;
} else if (t <= -2.6e-148) {
tmp = t_3;
} else if (t <= -1.05e-208) {
tmp = x + (((y - x) * z) / a);
} else if (t <= -1e-208) {
tmp = y * (t / -a);
} else if (t <= -1.5e-243) {
tmp = x - ((x * z) / a);
} else if (t <= -1.2e-253) {
tmp = t_1;
} else if (t <= -4.6e-284) {
tmp = x + ((y - x) / (a / z));
} else if (t <= 6.2e-64) {
tmp = t_3;
} else if (t <= 56000.0) {
tmp = t_2;
} else if (t <= 240000000000.0) {
tmp = x;
} else if (t <= 1.12e+80) {
tmp = t_2;
} else {
tmp = y - (x * (a / 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) :: t_1
real(8) :: t_2
real(8) :: t_3
real(8) :: tmp
t_1 = z * ((y - x) / (a - t))
t_2 = y * ((z - t) / (a - t))
t_3 = x + (z * ((y - x) / a))
if (t <= (-1.65d-13)) then
tmp = t_2
else if (t <= (-4.4d-93)) then
tmp = t_1
else if (t <= (-2.6d-148)) then
tmp = t_3
else if (t <= (-1.05d-208)) then
tmp = x + (((y - x) * z) / a)
else if (t <= (-1d-208)) then
tmp = y * (t / -a)
else if (t <= (-1.5d-243)) then
tmp = x - ((x * z) / a)
else if (t <= (-1.2d-253)) then
tmp = t_1
else if (t <= (-4.6d-284)) then
tmp = x + ((y - x) / (a / z))
else if (t <= 6.2d-64) then
tmp = t_3
else if (t <= 56000.0d0) then
tmp = t_2
else if (t <= 240000000000.0d0) then
tmp = x
else if (t <= 1.12d+80) then
tmp = t_2
else
tmp = y - (x * (a / t))
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double t_1 = z * ((y - x) / (a - t));
double t_2 = y * ((z - t) / (a - t));
double t_3 = x + (z * ((y - x) / a));
double tmp;
if (t <= -1.65e-13) {
tmp = t_2;
} else if (t <= -4.4e-93) {
tmp = t_1;
} else if (t <= -2.6e-148) {
tmp = t_3;
} else if (t <= -1.05e-208) {
tmp = x + (((y - x) * z) / a);
} else if (t <= -1e-208) {
tmp = y * (t / -a);
} else if (t <= -1.5e-243) {
tmp = x - ((x * z) / a);
} else if (t <= -1.2e-253) {
tmp = t_1;
} else if (t <= -4.6e-284) {
tmp = x + ((y - x) / (a / z));
} else if (t <= 6.2e-64) {
tmp = t_3;
} else if (t <= 56000.0) {
tmp = t_2;
} else if (t <= 240000000000.0) {
tmp = x;
} else if (t <= 1.12e+80) {
tmp = t_2;
} else {
tmp = y - (x * (a / t));
}
return tmp;
}
def code(x, y, z, t, a): t_1 = z * ((y - x) / (a - t)) t_2 = y * ((z - t) / (a - t)) t_3 = x + (z * ((y - x) / a)) tmp = 0 if t <= -1.65e-13: tmp = t_2 elif t <= -4.4e-93: tmp = t_1 elif t <= -2.6e-148: tmp = t_3 elif t <= -1.05e-208: tmp = x + (((y - x) * z) / a) elif t <= -1e-208: tmp = y * (t / -a) elif t <= -1.5e-243: tmp = x - ((x * z) / a) elif t <= -1.2e-253: tmp = t_1 elif t <= -4.6e-284: tmp = x + ((y - x) / (a / z)) elif t <= 6.2e-64: tmp = t_3 elif t <= 56000.0: tmp = t_2 elif t <= 240000000000.0: tmp = x elif t <= 1.12e+80: tmp = t_2 else: tmp = y - (x * (a / t)) return tmp
function code(x, y, z, t, a) t_1 = Float64(z * Float64(Float64(y - x) / Float64(a - t))) t_2 = Float64(y * Float64(Float64(z - t) / Float64(a - t))) t_3 = Float64(x + Float64(z * Float64(Float64(y - x) / a))) tmp = 0.0 if (t <= -1.65e-13) tmp = t_2; elseif (t <= -4.4e-93) tmp = t_1; elseif (t <= -2.6e-148) tmp = t_3; elseif (t <= -1.05e-208) tmp = Float64(x + Float64(Float64(Float64(y - x) * z) / a)); elseif (t <= -1e-208) tmp = Float64(y * Float64(t / Float64(-a))); elseif (t <= -1.5e-243) tmp = Float64(x - Float64(Float64(x * z) / a)); elseif (t <= -1.2e-253) tmp = t_1; elseif (t <= -4.6e-284) tmp = Float64(x + Float64(Float64(y - x) / Float64(a / z))); elseif (t <= 6.2e-64) tmp = t_3; elseif (t <= 56000.0) tmp = t_2; elseif (t <= 240000000000.0) tmp = x; elseif (t <= 1.12e+80) tmp = t_2; else tmp = Float64(y - Float64(x * Float64(a / t))); end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = z * ((y - x) / (a - t)); t_2 = y * ((z - t) / (a - t)); t_3 = x + (z * ((y - x) / a)); tmp = 0.0; if (t <= -1.65e-13) tmp = t_2; elseif (t <= -4.4e-93) tmp = t_1; elseif (t <= -2.6e-148) tmp = t_3; elseif (t <= -1.05e-208) tmp = x + (((y - x) * z) / a); elseif (t <= -1e-208) tmp = y * (t / -a); elseif (t <= -1.5e-243) tmp = x - ((x * z) / a); elseif (t <= -1.2e-253) tmp = t_1; elseif (t <= -4.6e-284) tmp = x + ((y - x) / (a / z)); elseif (t <= 6.2e-64) tmp = t_3; elseif (t <= 56000.0) tmp = t_2; elseif (t <= 240000000000.0) tmp = x; elseif (t <= 1.12e+80) tmp = t_2; else tmp = y - (x * (a / t)); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(z * N[(N[(y - x), $MachinePrecision] / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(y * N[(N[(z - t), $MachinePrecision] / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$3 = N[(x + N[(z * N[(N[(y - x), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t, -1.65e-13], t$95$2, If[LessEqual[t, -4.4e-93], t$95$1, If[LessEqual[t, -2.6e-148], t$95$3, If[LessEqual[t, -1.05e-208], N[(x + N[(N[(N[(y - x), $MachinePrecision] * z), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -1e-208], N[(y * N[(t / (-a)), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -1.5e-243], N[(x - N[(N[(x * z), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -1.2e-253], t$95$1, If[LessEqual[t, -4.6e-284], N[(x + N[(N[(y - x), $MachinePrecision] / N[(a / z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 6.2e-64], t$95$3, If[LessEqual[t, 56000.0], t$95$2, If[LessEqual[t, 240000000000.0], x, If[LessEqual[t, 1.12e+80], t$95$2, N[(y - N[(x * N[(a / t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]]]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := z \cdot \frac{y - x}{a - t}\\
t_2 := y \cdot \frac{z - t}{a - t}\\
t_3 := x + z \cdot \frac{y - x}{a}\\
\mathbf{if}\;t \leq -1.65 \cdot 10^{-13}:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;t \leq -4.4 \cdot 10^{-93}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq -2.6 \cdot 10^{-148}:\\
\;\;\;\;t\_3\\
\mathbf{elif}\;t \leq -1.05 \cdot 10^{-208}:\\
\;\;\;\;x + \frac{\left(y - x\right) \cdot z}{a}\\
\mathbf{elif}\;t \leq -1 \cdot 10^{-208}:\\
\;\;\;\;y \cdot \frac{t}{-a}\\
\mathbf{elif}\;t \leq -1.5 \cdot 10^{-243}:\\
\;\;\;\;x - \frac{x \cdot z}{a}\\
\mathbf{elif}\;t \leq -1.2 \cdot 10^{-253}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq -4.6 \cdot 10^{-284}:\\
\;\;\;\;x + \frac{y - x}{\frac{a}{z}}\\
\mathbf{elif}\;t \leq 6.2 \cdot 10^{-64}:\\
\;\;\;\;t\_3\\
\mathbf{elif}\;t \leq 56000:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;t \leq 240000000000:\\
\;\;\;\;x\\
\mathbf{elif}\;t \leq 1.12 \cdot 10^{+80}:\\
\;\;\;\;t\_2\\
\mathbf{else}:\\
\;\;\;\;y - x \cdot \frac{a}{t}\\
\end{array}
\end{array}
if t < -1.65e-13 or 6.20000000000000049e-64 < t < 56000 or 2.4e11 < t < 1.12e80Initial program 56.3%
Taylor expanded in x around 0 65.2%
+-commutative65.2%
+-commutative65.2%
distribute-lft-in65.2%
mul-1-neg65.2%
distribute-rgt-neg-in65.2%
associate-/l*57.3%
mul-1-neg57.3%
*-rgt-identity57.3%
associate-+l+55.1%
Simplified76.4%
Taylor expanded in y around inf 65.5%
div-sub65.5%
Simplified65.5%
if -1.65e-13 < t < -4.39999999999999991e-93 or -1.5000000000000001e-243 < t < -1.20000000000000005e-253Initial program 86.6%
Taylor expanded in x around 0 81.9%
+-commutative81.9%
+-commutative81.9%
distribute-lft-in82.0%
mul-1-neg82.0%
distribute-rgt-neg-in82.0%
associate-/l*86.2%
mul-1-neg86.2%
*-rgt-identity86.2%
associate-+l+86.3%
Simplified95.3%
Taylor expanded in z around inf 81.9%
div-sub81.9%
Simplified81.9%
if -4.39999999999999991e-93 < t < -2.60000000000000008e-148 or -4.6e-284 < t < 6.20000000000000049e-64Initial program 89.9%
Taylor expanded in t around 0 78.3%
associate-/l*85.5%
Simplified85.5%
if -2.60000000000000008e-148 < t < -1.05000000000000006e-208Initial program 99.5%
Taylor expanded in t around 0 68.5%
if -1.05000000000000006e-208 < t < -1.0000000000000001e-208Initial program 98.4%
Taylor expanded in y around inf 98.4%
associate-/l*100.0%
Simplified100.0%
clear-num100.0%
inv-pow100.0%
Applied egg-rr100.0%
unpow-1100.0%
Simplified100.0%
Taylor expanded in z around 0 98.4%
mul-1-neg98.4%
unsub-neg98.4%
associate-/l*98.4%
Simplified98.4%
Taylor expanded in t around 0 98.4%
associate-/l*98.4%
Simplified98.4%
Taylor expanded in x around 0 98.4%
mul-1-neg98.4%
*-commutative98.4%
distribute-frac-neg298.4%
associate-/l*100.0%
Simplified100.0%
if -1.0000000000000001e-208 < t < -1.5000000000000001e-243Initial program 99.6%
Taylor expanded in t around 0 71.4%
Taylor expanded in y around 0 86.0%
mul-1-neg86.0%
distribute-lft-neg-out86.0%
*-commutative86.0%
Simplified86.0%
if -1.20000000000000005e-253 < t < -4.6e-284Initial program 87.1%
Taylor expanded in t around 0 87.1%
clear-num87.1%
inv-pow87.1%
Applied egg-rr87.1%
unpow-187.1%
associate-/r*100.0%
Simplified100.0%
clear-num100.0%
add-cube-cbrt99.2%
*-un-lft-identity99.2%
times-frac99.1%
pow299.1%
Applied egg-rr99.1%
/-rgt-identity99.1%
associate-*r/99.2%
unpow299.2%
rem-3cbrt-lft100.0%
Simplified100.0%
if 56000 < t < 2.4e11Initial program 100.0%
Taylor expanded in a around inf 100.0%
if 1.12e80 < t Initial program 26.7%
Taylor expanded in t around inf 73.7%
associate--l+73.7%
distribute-lft-out--73.7%
div-sub73.7%
mul-1-neg73.7%
unsub-neg73.7%
div-sub73.7%
associate-/l*81.1%
associate-/l*83.6%
distribute-rgt-out--83.6%
Simplified83.6%
*-commutative83.6%
clear-num83.6%
un-div-inv83.5%
Applied egg-rr83.5%
Taylor expanded in y around 0 79.1%
mul-1-neg79.1%
associate-/l*80.7%
Simplified80.7%
Taylor expanded in z around 0 75.0%
mul-1-neg75.0%
*-commutative75.0%
associate-*r/74.6%
unsub-neg74.6%
Simplified74.6%
Final simplification75.9%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (+ x (/ (* (- y x) z) a)))
(t_2 (* z (/ (- y x) (- a t))))
(t_3 (* y (/ (- z t) (- a t))))
(t_4 (+ x (* z (/ (- y x) a)))))
(if (<= t -7.6e-20)
t_3
(if (<= t -6.2e-93)
t_2
(if (<= t -7e-155)
t_4
(if (<= t -1.05e-208)
t_1
(if (<= t -1e-208)
(* y (/ t (- a)))
(if (<= t -2.7e-246)
(- x (/ (* x z) a))
(if (<= t -1.02e-254)
t_2
(if (<= t -5e-286)
t_1
(if (<= t 3.4e-67)
t_4
(if (<= t 56000.0)
t_3
(if (<= t 230000000000.0)
x
(if (<= t 1.25e+80)
t_3
(- y (* x (/ a t)))))))))))))))))
double code(double x, double y, double z, double t, double a) {
double t_1 = x + (((y - x) * z) / a);
double t_2 = z * ((y - x) / (a - t));
double t_3 = y * ((z - t) / (a - t));
double t_4 = x + (z * ((y - x) / a));
double tmp;
if (t <= -7.6e-20) {
tmp = t_3;
} else if (t <= -6.2e-93) {
tmp = t_2;
} else if (t <= -7e-155) {
tmp = t_4;
} else if (t <= -1.05e-208) {
tmp = t_1;
} else if (t <= -1e-208) {
tmp = y * (t / -a);
} else if (t <= -2.7e-246) {
tmp = x - ((x * z) / a);
} else if (t <= -1.02e-254) {
tmp = t_2;
} else if (t <= -5e-286) {
tmp = t_1;
} else if (t <= 3.4e-67) {
tmp = t_4;
} else if (t <= 56000.0) {
tmp = t_3;
} else if (t <= 230000000000.0) {
tmp = x;
} else if (t <= 1.25e+80) {
tmp = t_3;
} else {
tmp = y - (x * (a / 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) :: t_1
real(8) :: t_2
real(8) :: t_3
real(8) :: t_4
real(8) :: tmp
t_1 = x + (((y - x) * z) / a)
t_2 = z * ((y - x) / (a - t))
t_3 = y * ((z - t) / (a - t))
t_4 = x + (z * ((y - x) / a))
if (t <= (-7.6d-20)) then
tmp = t_3
else if (t <= (-6.2d-93)) then
tmp = t_2
else if (t <= (-7d-155)) then
tmp = t_4
else if (t <= (-1.05d-208)) then
tmp = t_1
else if (t <= (-1d-208)) then
tmp = y * (t / -a)
else if (t <= (-2.7d-246)) then
tmp = x - ((x * z) / a)
else if (t <= (-1.02d-254)) then
tmp = t_2
else if (t <= (-5d-286)) then
tmp = t_1
else if (t <= 3.4d-67) then
tmp = t_4
else if (t <= 56000.0d0) then
tmp = t_3
else if (t <= 230000000000.0d0) then
tmp = x
else if (t <= 1.25d+80) then
tmp = t_3
else
tmp = y - (x * (a / t))
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 - x) * z) / a);
double t_2 = z * ((y - x) / (a - t));
double t_3 = y * ((z - t) / (a - t));
double t_4 = x + (z * ((y - x) / a));
double tmp;
if (t <= -7.6e-20) {
tmp = t_3;
} else if (t <= -6.2e-93) {
tmp = t_2;
} else if (t <= -7e-155) {
tmp = t_4;
} else if (t <= -1.05e-208) {
tmp = t_1;
} else if (t <= -1e-208) {
tmp = y * (t / -a);
} else if (t <= -2.7e-246) {
tmp = x - ((x * z) / a);
} else if (t <= -1.02e-254) {
tmp = t_2;
} else if (t <= -5e-286) {
tmp = t_1;
} else if (t <= 3.4e-67) {
tmp = t_4;
} else if (t <= 56000.0) {
tmp = t_3;
} else if (t <= 230000000000.0) {
tmp = x;
} else if (t <= 1.25e+80) {
tmp = t_3;
} else {
tmp = y - (x * (a / t));
}
return tmp;
}
def code(x, y, z, t, a): t_1 = x + (((y - x) * z) / a) t_2 = z * ((y - x) / (a - t)) t_3 = y * ((z - t) / (a - t)) t_4 = x + (z * ((y - x) / a)) tmp = 0 if t <= -7.6e-20: tmp = t_3 elif t <= -6.2e-93: tmp = t_2 elif t <= -7e-155: tmp = t_4 elif t <= -1.05e-208: tmp = t_1 elif t <= -1e-208: tmp = y * (t / -a) elif t <= -2.7e-246: tmp = x - ((x * z) / a) elif t <= -1.02e-254: tmp = t_2 elif t <= -5e-286: tmp = t_1 elif t <= 3.4e-67: tmp = t_4 elif t <= 56000.0: tmp = t_3 elif t <= 230000000000.0: tmp = x elif t <= 1.25e+80: tmp = t_3 else: tmp = y - (x * (a / t)) return tmp
function code(x, y, z, t, a) t_1 = Float64(x + Float64(Float64(Float64(y - x) * z) / a)) t_2 = Float64(z * Float64(Float64(y - x) / Float64(a - t))) t_3 = Float64(y * Float64(Float64(z - t) / Float64(a - t))) t_4 = Float64(x + Float64(z * Float64(Float64(y - x) / a))) tmp = 0.0 if (t <= -7.6e-20) tmp = t_3; elseif (t <= -6.2e-93) tmp = t_2; elseif (t <= -7e-155) tmp = t_4; elseif (t <= -1.05e-208) tmp = t_1; elseif (t <= -1e-208) tmp = Float64(y * Float64(t / Float64(-a))); elseif (t <= -2.7e-246) tmp = Float64(x - Float64(Float64(x * z) / a)); elseif (t <= -1.02e-254) tmp = t_2; elseif (t <= -5e-286) tmp = t_1; elseif (t <= 3.4e-67) tmp = t_4; elseif (t <= 56000.0) tmp = t_3; elseif (t <= 230000000000.0) tmp = x; elseif (t <= 1.25e+80) tmp = t_3; else tmp = Float64(y - Float64(x * Float64(a / t))); end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = x + (((y - x) * z) / a); t_2 = z * ((y - x) / (a - t)); t_3 = y * ((z - t) / (a - t)); t_4 = x + (z * ((y - x) / a)); tmp = 0.0; if (t <= -7.6e-20) tmp = t_3; elseif (t <= -6.2e-93) tmp = t_2; elseif (t <= -7e-155) tmp = t_4; elseif (t <= -1.05e-208) tmp = t_1; elseif (t <= -1e-208) tmp = y * (t / -a); elseif (t <= -2.7e-246) tmp = x - ((x * z) / a); elseif (t <= -1.02e-254) tmp = t_2; elseif (t <= -5e-286) tmp = t_1; elseif (t <= 3.4e-67) tmp = t_4; elseif (t <= 56000.0) tmp = t_3; elseif (t <= 230000000000.0) tmp = x; elseif (t <= 1.25e+80) tmp = t_3; else tmp = y - (x * (a / t)); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(x + N[(N[(N[(y - x), $MachinePrecision] * z), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(z * N[(N[(y - x), $MachinePrecision] / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$3 = N[(y * N[(N[(z - t), $MachinePrecision] / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$4 = N[(x + N[(z * N[(N[(y - x), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t, -7.6e-20], t$95$3, If[LessEqual[t, -6.2e-93], t$95$2, If[LessEqual[t, -7e-155], t$95$4, If[LessEqual[t, -1.05e-208], t$95$1, If[LessEqual[t, -1e-208], N[(y * N[(t / (-a)), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -2.7e-246], N[(x - N[(N[(x * z), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -1.02e-254], t$95$2, If[LessEqual[t, -5e-286], t$95$1, If[LessEqual[t, 3.4e-67], t$95$4, If[LessEqual[t, 56000.0], t$95$3, If[LessEqual[t, 230000000000.0], x, If[LessEqual[t, 1.25e+80], t$95$3, N[(y - N[(x * N[(a / t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]]]]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := x + \frac{\left(y - x\right) \cdot z}{a}\\
t_2 := z \cdot \frac{y - x}{a - t}\\
t_3 := y \cdot \frac{z - t}{a - t}\\
t_4 := x + z \cdot \frac{y - x}{a}\\
\mathbf{if}\;t \leq -7.6 \cdot 10^{-20}:\\
\;\;\;\;t\_3\\
\mathbf{elif}\;t \leq -6.2 \cdot 10^{-93}:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;t \leq -7 \cdot 10^{-155}:\\
\;\;\;\;t\_4\\
\mathbf{elif}\;t \leq -1.05 \cdot 10^{-208}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq -1 \cdot 10^{-208}:\\
\;\;\;\;y \cdot \frac{t}{-a}\\
\mathbf{elif}\;t \leq -2.7 \cdot 10^{-246}:\\
\;\;\;\;x - \frac{x \cdot z}{a}\\
\mathbf{elif}\;t \leq -1.02 \cdot 10^{-254}:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;t \leq -5 \cdot 10^{-286}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq 3.4 \cdot 10^{-67}:\\
\;\;\;\;t\_4\\
\mathbf{elif}\;t \leq 56000:\\
\;\;\;\;t\_3\\
\mathbf{elif}\;t \leq 230000000000:\\
\;\;\;\;x\\
\mathbf{elif}\;t \leq 1.25 \cdot 10^{+80}:\\
\;\;\;\;t\_3\\
\mathbf{else}:\\
\;\;\;\;y - x \cdot \frac{a}{t}\\
\end{array}
\end{array}
if t < -7.5999999999999995e-20 or 3.4000000000000001e-67 < t < 56000 or 2.3e11 < t < 1.2499999999999999e80Initial program 56.3%
Taylor expanded in x around 0 65.2%
+-commutative65.2%
+-commutative65.2%
distribute-lft-in65.2%
mul-1-neg65.2%
distribute-rgt-neg-in65.2%
associate-/l*57.3%
mul-1-neg57.3%
*-rgt-identity57.3%
associate-+l+55.1%
Simplified76.4%
Taylor expanded in y around inf 65.5%
div-sub65.5%
Simplified65.5%
if -7.5999999999999995e-20 < t < -6.19999999999999999e-93 or -2.6999999999999999e-246 < t < -1.0200000000000001e-254Initial program 83.3%
Taylor expanded in x around 0 78.4%
+-commutative78.4%
+-commutative78.4%
distribute-lft-in78.4%
mul-1-neg78.4%
distribute-rgt-neg-in78.4%
associate-/l*82.5%
mul-1-neg82.5%
*-rgt-identity82.5%
associate-+l+82.5%
Simplified95.5%
Taylor expanded in z around inf 82.7%
div-sub82.7%
Simplified82.7%
if -6.19999999999999999e-93 < t < -7.00000000000000031e-155 or -5.00000000000000037e-286 < t < 3.4000000000000001e-67Initial program 89.9%
Taylor expanded in t around 0 78.3%
associate-/l*85.5%
Simplified85.5%
if -7.00000000000000031e-155 < t < -1.05000000000000006e-208 or -1.0200000000000001e-254 < t < -5.00000000000000037e-286Initial program 99.6%
Taylor expanded in t around 0 78.9%
if -1.05000000000000006e-208 < t < -1.0000000000000001e-208Initial program 98.4%
Taylor expanded in y around inf 98.4%
associate-/l*100.0%
Simplified100.0%
clear-num100.0%
inv-pow100.0%
Applied egg-rr100.0%
unpow-1100.0%
Simplified100.0%
Taylor expanded in z around 0 98.4%
mul-1-neg98.4%
unsub-neg98.4%
associate-/l*98.4%
Simplified98.4%
Taylor expanded in t around 0 98.4%
associate-/l*98.4%
Simplified98.4%
Taylor expanded in x around 0 98.4%
mul-1-neg98.4%
*-commutative98.4%
distribute-frac-neg298.4%
associate-/l*100.0%
Simplified100.0%
if -1.0000000000000001e-208 < t < -2.6999999999999999e-246Initial program 99.6%
Taylor expanded in t around 0 71.4%
Taylor expanded in y around 0 86.0%
mul-1-neg86.0%
distribute-lft-neg-out86.0%
*-commutative86.0%
Simplified86.0%
if 56000 < t < 2.3e11Initial program 100.0%
Taylor expanded in a around inf 100.0%
if 1.2499999999999999e80 < t Initial program 26.7%
Taylor expanded in t around inf 73.7%
associate--l+73.7%
distribute-lft-out--73.7%
div-sub73.7%
mul-1-neg73.7%
unsub-neg73.7%
div-sub73.7%
associate-/l*81.1%
associate-/l*83.6%
distribute-rgt-out--83.6%
Simplified83.6%
*-commutative83.6%
clear-num83.6%
un-div-inv83.5%
Applied egg-rr83.5%
Taylor expanded in y around 0 79.1%
mul-1-neg79.1%
associate-/l*80.7%
Simplified80.7%
Taylor expanded in z around 0 75.0%
mul-1-neg75.0%
*-commutative75.0%
associate-*r/74.6%
unsub-neg74.6%
Simplified74.6%
Final simplification75.9%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (* x (- 1.0 (/ z a)))) (t_2 (* z (/ (- x y) t))))
(if (<= t -4.2e+219)
y
(if (<= t -2.8e+155)
t_2
(if (<= t -3.5e+121)
y
(if (<= t -3.1e+84)
t_2
(if (<= t -1.9e+33)
(* x (/ (- z a) t))
(if (<= t -1.7e-9)
t_2
(if (<= t -1.02e-11)
(* (- y x) (/ a t))
(if (<= t -3.9e-53)
(* y (/ (- z t) a))
(if (<= t 2.05e-274)
t_1
(if (<= t 5.8e-245)
(* z (/ (- y x) a))
(if (<= t 9e+14)
t_1
(if (<= t 1.6e+79) (* y (/ z (- a t))) y))))))))))))))
double code(double x, double y, double z, double t, double a) {
double t_1 = x * (1.0 - (z / a));
double t_2 = z * ((x - y) / t);
double tmp;
if (t <= -4.2e+219) {
tmp = y;
} else if (t <= -2.8e+155) {
tmp = t_2;
} else if (t <= -3.5e+121) {
tmp = y;
} else if (t <= -3.1e+84) {
tmp = t_2;
} else if (t <= -1.9e+33) {
tmp = x * ((z - a) / t);
} else if (t <= -1.7e-9) {
tmp = t_2;
} else if (t <= -1.02e-11) {
tmp = (y - x) * (a / t);
} else if (t <= -3.9e-53) {
tmp = y * ((z - t) / a);
} else if (t <= 2.05e-274) {
tmp = t_1;
} else if (t <= 5.8e-245) {
tmp = z * ((y - x) / a);
} else if (t <= 9e+14) {
tmp = t_1;
} else if (t <= 1.6e+79) {
tmp = y * (z / (a - t));
} else {
tmp = y;
}
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 * (1.0d0 - (z / a))
t_2 = z * ((x - y) / t)
if (t <= (-4.2d+219)) then
tmp = y
else if (t <= (-2.8d+155)) then
tmp = t_2
else if (t <= (-3.5d+121)) then
tmp = y
else if (t <= (-3.1d+84)) then
tmp = t_2
else if (t <= (-1.9d+33)) then
tmp = x * ((z - a) / t)
else if (t <= (-1.7d-9)) then
tmp = t_2
else if (t <= (-1.02d-11)) then
tmp = (y - x) * (a / t)
else if (t <= (-3.9d-53)) then
tmp = y * ((z - t) / a)
else if (t <= 2.05d-274) then
tmp = t_1
else if (t <= 5.8d-245) then
tmp = z * ((y - x) / a)
else if (t <= 9d+14) then
tmp = t_1
else if (t <= 1.6d+79) then
tmp = y * (z / (a - t))
else
tmp = y
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double t_1 = x * (1.0 - (z / a));
double t_2 = z * ((x - y) / t);
double tmp;
if (t <= -4.2e+219) {
tmp = y;
} else if (t <= -2.8e+155) {
tmp = t_2;
} else if (t <= -3.5e+121) {
tmp = y;
} else if (t <= -3.1e+84) {
tmp = t_2;
} else if (t <= -1.9e+33) {
tmp = x * ((z - a) / t);
} else if (t <= -1.7e-9) {
tmp = t_2;
} else if (t <= -1.02e-11) {
tmp = (y - x) * (a / t);
} else if (t <= -3.9e-53) {
tmp = y * ((z - t) / a);
} else if (t <= 2.05e-274) {
tmp = t_1;
} else if (t <= 5.8e-245) {
tmp = z * ((y - x) / a);
} else if (t <= 9e+14) {
tmp = t_1;
} else if (t <= 1.6e+79) {
tmp = y * (z / (a - t));
} else {
tmp = y;
}
return tmp;
}
def code(x, y, z, t, a): t_1 = x * (1.0 - (z / a)) t_2 = z * ((x - y) / t) tmp = 0 if t <= -4.2e+219: tmp = y elif t <= -2.8e+155: tmp = t_2 elif t <= -3.5e+121: tmp = y elif t <= -3.1e+84: tmp = t_2 elif t <= -1.9e+33: tmp = x * ((z - a) / t) elif t <= -1.7e-9: tmp = t_2 elif t <= -1.02e-11: tmp = (y - x) * (a / t) elif t <= -3.9e-53: tmp = y * ((z - t) / a) elif t <= 2.05e-274: tmp = t_1 elif t <= 5.8e-245: tmp = z * ((y - x) / a) elif t <= 9e+14: tmp = t_1 elif t <= 1.6e+79: tmp = y * (z / (a - t)) else: tmp = y return tmp
function code(x, y, z, t, a) t_1 = Float64(x * Float64(1.0 - Float64(z / a))) t_2 = Float64(z * Float64(Float64(x - y) / t)) tmp = 0.0 if (t <= -4.2e+219) tmp = y; elseif (t <= -2.8e+155) tmp = t_2; elseif (t <= -3.5e+121) tmp = y; elseif (t <= -3.1e+84) tmp = t_2; elseif (t <= -1.9e+33) tmp = Float64(x * Float64(Float64(z - a) / t)); elseif (t <= -1.7e-9) tmp = t_2; elseif (t <= -1.02e-11) tmp = Float64(Float64(y - x) * Float64(a / t)); elseif (t <= -3.9e-53) tmp = Float64(y * Float64(Float64(z - t) / a)); elseif (t <= 2.05e-274) tmp = t_1; elseif (t <= 5.8e-245) tmp = Float64(z * Float64(Float64(y - x) / a)); elseif (t <= 9e+14) tmp = t_1; elseif (t <= 1.6e+79) tmp = Float64(y * Float64(z / Float64(a - t))); else tmp = y; end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = x * (1.0 - (z / a)); t_2 = z * ((x - y) / t); tmp = 0.0; if (t <= -4.2e+219) tmp = y; elseif (t <= -2.8e+155) tmp = t_2; elseif (t <= -3.5e+121) tmp = y; elseif (t <= -3.1e+84) tmp = t_2; elseif (t <= -1.9e+33) tmp = x * ((z - a) / t); elseif (t <= -1.7e-9) tmp = t_2; elseif (t <= -1.02e-11) tmp = (y - x) * (a / t); elseif (t <= -3.9e-53) tmp = y * ((z - t) / a); elseif (t <= 2.05e-274) tmp = t_1; elseif (t <= 5.8e-245) tmp = z * ((y - x) / a); elseif (t <= 9e+14) tmp = t_1; elseif (t <= 1.6e+79) tmp = y * (z / (a - t)); else tmp = y; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(x * N[(1.0 - N[(z / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(z * N[(N[(x - y), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t, -4.2e+219], y, If[LessEqual[t, -2.8e+155], t$95$2, If[LessEqual[t, -3.5e+121], y, If[LessEqual[t, -3.1e+84], t$95$2, If[LessEqual[t, -1.9e+33], N[(x * N[(N[(z - a), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -1.7e-9], t$95$2, If[LessEqual[t, -1.02e-11], N[(N[(y - x), $MachinePrecision] * N[(a / t), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -3.9e-53], N[(y * N[(N[(z - t), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 2.05e-274], t$95$1, If[LessEqual[t, 5.8e-245], N[(z * N[(N[(y - x), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 9e+14], t$95$1, If[LessEqual[t, 1.6e+79], N[(y * N[(z / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], y]]]]]]]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := x \cdot \left(1 - \frac{z}{a}\right)\\
t_2 := z \cdot \frac{x - y}{t}\\
\mathbf{if}\;t \leq -4.2 \cdot 10^{+219}:\\
\;\;\;\;y\\
\mathbf{elif}\;t \leq -2.8 \cdot 10^{+155}:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;t \leq -3.5 \cdot 10^{+121}:\\
\;\;\;\;y\\
\mathbf{elif}\;t \leq -3.1 \cdot 10^{+84}:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;t \leq -1.9 \cdot 10^{+33}:\\
\;\;\;\;x \cdot \frac{z - a}{t}\\
\mathbf{elif}\;t \leq -1.7 \cdot 10^{-9}:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;t \leq -1.02 \cdot 10^{-11}:\\
\;\;\;\;\left(y - x\right) \cdot \frac{a}{t}\\
\mathbf{elif}\;t \leq -3.9 \cdot 10^{-53}:\\
\;\;\;\;y \cdot \frac{z - t}{a}\\
\mathbf{elif}\;t \leq 2.05 \cdot 10^{-274}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq 5.8 \cdot 10^{-245}:\\
\;\;\;\;z \cdot \frac{y - x}{a}\\
\mathbf{elif}\;t \leq 9 \cdot 10^{+14}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq 1.6 \cdot 10^{+79}:\\
\;\;\;\;y \cdot \frac{z}{a - t}\\
\mathbf{else}:\\
\;\;\;\;y\\
\end{array}
\end{array}
if t < -4.19999999999999976e219 or -2.80000000000000016e155 < t < -3.5e121 or 1.60000000000000001e79 < t Initial program 32.7%
Taylor expanded in t around inf 67.4%
if -4.19999999999999976e219 < t < -2.80000000000000016e155 or -3.5e121 < t < -3.10000000000000003e84 or -1.90000000000000001e33 < t < -1.6999999999999999e-9Initial program 57.4%
Taylor expanded in t around inf 56.0%
associate--l+56.0%
distribute-lft-out--56.0%
div-sub56.0%
mul-1-neg56.0%
unsub-neg56.0%
div-sub56.0%
associate-/l*69.0%
associate-/l*75.9%
distribute-rgt-out--75.9%
Simplified75.9%
Taylor expanded in z around inf 60.2%
div-sub60.2%
Simplified60.2%
if -3.10000000000000003e84 < t < -1.90000000000000001e33Initial program 58.0%
Taylor expanded in t around inf 73.7%
associate--l+73.7%
distribute-lft-out--73.7%
div-sub73.7%
mul-1-neg73.7%
unsub-neg73.7%
div-sub73.7%
associate-/l*73.7%
associate-/l*73.5%
distribute-rgt-out--73.5%
Simplified73.5%
Taylor expanded in y around 0 46.0%
associate-/l*45.7%
Simplified45.7%
if -1.6999999999999999e-9 < t < -1.01999999999999994e-11Initial program 51.6%
Taylor expanded in t around inf 100.0%
associate--l+100.0%
distribute-lft-out--100.0%
div-sub100.0%
mul-1-neg100.0%
unsub-neg100.0%
div-sub100.0%
associate-/l*100.0%
associate-/l*99.2%
distribute-rgt-out--99.2%
Simplified99.2%
Taylor expanded in a around inf 54.0%
*-commutative54.0%
associate-/l*54.0%
Simplified54.0%
if -1.01999999999999994e-11 < t < -3.9000000000000002e-53Initial program 89.2%
Taylor expanded in x around 0 88.0%
+-commutative88.0%
+-commutative88.0%
distribute-lft-in88.2%
mul-1-neg88.2%
distribute-rgt-neg-in88.2%
associate-/l*88.4%
mul-1-neg88.4%
*-rgt-identity88.4%
associate-+l+88.4%
Simplified99.8%
Taylor expanded in y around inf 43.5%
div-sub43.5%
Simplified43.5%
Taylor expanded in a around inf 55.7%
associate-/l*55.9%
Simplified55.9%
if -3.9000000000000002e-53 < t < 2.04999999999999994e-274 or 5.7999999999999999e-245 < t < 9e14Initial program 88.2%
Taylor expanded in t around 0 64.8%
Taylor expanded in x around inf 54.1%
mul-1-neg54.1%
unsub-neg54.1%
Simplified54.1%
if 2.04999999999999994e-274 < t < 5.7999999999999999e-245Initial program 99.6%
Taylor expanded in t around 0 99.6%
Taylor expanded in z around inf 88.2%
div-sub88.2%
associate-*r/88.4%
*-commutative88.4%
associate-*r/76.9%
*-commutative76.9%
Simplified76.9%
*-commutative76.9%
clear-num76.5%
un-div-inv76.7%
Applied egg-rr76.7%
associate-/r/88.2%
Simplified88.2%
if 9e14 < t < 1.60000000000000001e79Initial program 61.9%
Taylor expanded in x around 0 62.1%
+-commutative62.1%
+-commutative62.1%
distribute-lft-in62.1%
mul-1-neg62.1%
distribute-rgt-neg-in62.1%
associate-/l*61.9%
mul-1-neg61.9%
*-rgt-identity61.9%
associate-+l+61.9%
Simplified81.3%
Taylor expanded in y around inf 73.5%
div-sub73.5%
Simplified73.5%
Taylor expanded in z around inf 33.3%
associate-/l*51.6%
Simplified51.6%
Final simplification59.5%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (+ x (* z (/ (- y x) a))))
(t_2 (+ y (* x (/ (- z a) t))))
(t_3 (/ z (/ (- a t) (- y x))))
(t_4 (* y (/ (- z t) (- a t)))))
(if (<= t -2.5e-23)
t_2
(if (<= t -1.05e-52)
t_1
(if (<= t -6.2e-103)
t_3
(if (<= t -5.6e-173)
(+ x (/ y (/ (- a t) z)))
(if (<= t -4.4e-222)
(+ x (/ -1.0 (/ a (* x z))))
(if (<= t -4e-255)
t_3
(if (<= t -4.1e-290)
(+ x (/ (- y x) (/ a z)))
(if (<= t 1.4e-66)
t_1
(if (<= t 56000.0)
t_4
(if (<= t 420000000000.0)
x
(if (<= t 2.6e+152) t_4 t_2)))))))))))))
double code(double x, double y, double z, double t, double a) {
double t_1 = x + (z * ((y - x) / a));
double t_2 = y + (x * ((z - a) / t));
double t_3 = z / ((a - t) / (y - x));
double t_4 = y * ((z - t) / (a - t));
double tmp;
if (t <= -2.5e-23) {
tmp = t_2;
} else if (t <= -1.05e-52) {
tmp = t_1;
} else if (t <= -6.2e-103) {
tmp = t_3;
} else if (t <= -5.6e-173) {
tmp = x + (y / ((a - t) / z));
} else if (t <= -4.4e-222) {
tmp = x + (-1.0 / (a / (x * z)));
} else if (t <= -4e-255) {
tmp = t_3;
} else if (t <= -4.1e-290) {
tmp = x + ((y - x) / (a / z));
} else if (t <= 1.4e-66) {
tmp = t_1;
} else if (t <= 56000.0) {
tmp = t_4;
} else if (t <= 420000000000.0) {
tmp = x;
} else if (t <= 2.6e+152) {
tmp = t_4;
} 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) :: t_3
real(8) :: t_4
real(8) :: tmp
t_1 = x + (z * ((y - x) / a))
t_2 = y + (x * ((z - a) / t))
t_3 = z / ((a - t) / (y - x))
t_4 = y * ((z - t) / (a - t))
if (t <= (-2.5d-23)) then
tmp = t_2
else if (t <= (-1.05d-52)) then
tmp = t_1
else if (t <= (-6.2d-103)) then
tmp = t_3
else if (t <= (-5.6d-173)) then
tmp = x + (y / ((a - t) / z))
else if (t <= (-4.4d-222)) then
tmp = x + ((-1.0d0) / (a / (x * z)))
else if (t <= (-4d-255)) then
tmp = t_3
else if (t <= (-4.1d-290)) then
tmp = x + ((y - x) / (a / z))
else if (t <= 1.4d-66) then
tmp = t_1
else if (t <= 56000.0d0) then
tmp = t_4
else if (t <= 420000000000.0d0) then
tmp = x
else if (t <= 2.6d+152) then
tmp = t_4
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 = x + (z * ((y - x) / a));
double t_2 = y + (x * ((z - a) / t));
double t_3 = z / ((a - t) / (y - x));
double t_4 = y * ((z - t) / (a - t));
double tmp;
if (t <= -2.5e-23) {
tmp = t_2;
} else if (t <= -1.05e-52) {
tmp = t_1;
} else if (t <= -6.2e-103) {
tmp = t_3;
} else if (t <= -5.6e-173) {
tmp = x + (y / ((a - t) / z));
} else if (t <= -4.4e-222) {
tmp = x + (-1.0 / (a / (x * z)));
} else if (t <= -4e-255) {
tmp = t_3;
} else if (t <= -4.1e-290) {
tmp = x + ((y - x) / (a / z));
} else if (t <= 1.4e-66) {
tmp = t_1;
} else if (t <= 56000.0) {
tmp = t_4;
} else if (t <= 420000000000.0) {
tmp = x;
} else if (t <= 2.6e+152) {
tmp = t_4;
} else {
tmp = t_2;
}
return tmp;
}
def code(x, y, z, t, a): t_1 = x + (z * ((y - x) / a)) t_2 = y + (x * ((z - a) / t)) t_3 = z / ((a - t) / (y - x)) t_4 = y * ((z - t) / (a - t)) tmp = 0 if t <= -2.5e-23: tmp = t_2 elif t <= -1.05e-52: tmp = t_1 elif t <= -6.2e-103: tmp = t_3 elif t <= -5.6e-173: tmp = x + (y / ((a - t) / z)) elif t <= -4.4e-222: tmp = x + (-1.0 / (a / (x * z))) elif t <= -4e-255: tmp = t_3 elif t <= -4.1e-290: tmp = x + ((y - x) / (a / z)) elif t <= 1.4e-66: tmp = t_1 elif t <= 56000.0: tmp = t_4 elif t <= 420000000000.0: tmp = x elif t <= 2.6e+152: tmp = t_4 else: tmp = t_2 return tmp
function code(x, y, z, t, a) t_1 = Float64(x + Float64(z * Float64(Float64(y - x) / a))) t_2 = Float64(y + Float64(x * Float64(Float64(z - a) / t))) t_3 = Float64(z / Float64(Float64(a - t) / Float64(y - x))) t_4 = Float64(y * Float64(Float64(z - t) / Float64(a - t))) tmp = 0.0 if (t <= -2.5e-23) tmp = t_2; elseif (t <= -1.05e-52) tmp = t_1; elseif (t <= -6.2e-103) tmp = t_3; elseif (t <= -5.6e-173) tmp = Float64(x + Float64(y / Float64(Float64(a - t) / z))); elseif (t <= -4.4e-222) tmp = Float64(x + Float64(-1.0 / Float64(a / Float64(x * z)))); elseif (t <= -4e-255) tmp = t_3; elseif (t <= -4.1e-290) tmp = Float64(x + Float64(Float64(y - x) / Float64(a / z))); elseif (t <= 1.4e-66) tmp = t_1; elseif (t <= 56000.0) tmp = t_4; elseif (t <= 420000000000.0) tmp = x; elseif (t <= 2.6e+152) tmp = t_4; else tmp = t_2; end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = x + (z * ((y - x) / a)); t_2 = y + (x * ((z - a) / t)); t_3 = z / ((a - t) / (y - x)); t_4 = y * ((z - t) / (a - t)); tmp = 0.0; if (t <= -2.5e-23) tmp = t_2; elseif (t <= -1.05e-52) tmp = t_1; elseif (t <= -6.2e-103) tmp = t_3; elseif (t <= -5.6e-173) tmp = x + (y / ((a - t) / z)); elseif (t <= -4.4e-222) tmp = x + (-1.0 / (a / (x * z))); elseif (t <= -4e-255) tmp = t_3; elseif (t <= -4.1e-290) tmp = x + ((y - x) / (a / z)); elseif (t <= 1.4e-66) tmp = t_1; elseif (t <= 56000.0) tmp = t_4; elseif (t <= 420000000000.0) tmp = x; elseif (t <= 2.6e+152) tmp = t_4; else tmp = t_2; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(x + N[(z * N[(N[(y - x), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(y + N[(x * N[(N[(z - a), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$3 = N[(z / N[(N[(a - t), $MachinePrecision] / N[(y - x), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$4 = N[(y * N[(N[(z - t), $MachinePrecision] / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t, -2.5e-23], t$95$2, If[LessEqual[t, -1.05e-52], t$95$1, If[LessEqual[t, -6.2e-103], t$95$3, If[LessEqual[t, -5.6e-173], N[(x + N[(y / N[(N[(a - t), $MachinePrecision] / z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -4.4e-222], N[(x + N[(-1.0 / N[(a / N[(x * z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -4e-255], t$95$3, If[LessEqual[t, -4.1e-290], N[(x + N[(N[(y - x), $MachinePrecision] / N[(a / z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 1.4e-66], t$95$1, If[LessEqual[t, 56000.0], t$95$4, If[LessEqual[t, 420000000000.0], x, If[LessEqual[t, 2.6e+152], t$95$4, t$95$2]]]]]]]]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := x + z \cdot \frac{y - x}{a}\\
t_2 := y + x \cdot \frac{z - a}{t}\\
t_3 := \frac{z}{\frac{a - t}{y - x}}\\
t_4 := y \cdot \frac{z - t}{a - t}\\
\mathbf{if}\;t \leq -2.5 \cdot 10^{-23}:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;t \leq -1.05 \cdot 10^{-52}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq -6.2 \cdot 10^{-103}:\\
\;\;\;\;t\_3\\
\mathbf{elif}\;t \leq -5.6 \cdot 10^{-173}:\\
\;\;\;\;x + \frac{y}{\frac{a - t}{z}}\\
\mathbf{elif}\;t \leq -4.4 \cdot 10^{-222}:\\
\;\;\;\;x + \frac{-1}{\frac{a}{x \cdot z}}\\
\mathbf{elif}\;t \leq -4 \cdot 10^{-255}:\\
\;\;\;\;t\_3\\
\mathbf{elif}\;t \leq -4.1 \cdot 10^{-290}:\\
\;\;\;\;x + \frac{y - x}{\frac{a}{z}}\\
\mathbf{elif}\;t \leq 1.4 \cdot 10^{-66}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq 56000:\\
\;\;\;\;t\_4\\
\mathbf{elif}\;t \leq 420000000000:\\
\;\;\;\;x\\
\mathbf{elif}\;t \leq 2.6 \cdot 10^{+152}:\\
\;\;\;\;t\_4\\
\mathbf{else}:\\
\;\;\;\;t\_2\\
\end{array}
\end{array}
if t < -2.5000000000000001e-23 or 2.6000000000000001e152 < t Initial program 41.6%
Taylor expanded in t around inf 68.9%
associate--l+68.9%
distribute-lft-out--68.9%
div-sub68.9%
mul-1-neg68.9%
unsub-neg68.9%
div-sub68.9%
associate-/l*75.3%
associate-/l*83.0%
distribute-rgt-out--83.0%
Simplified83.0%
*-commutative83.0%
clear-num83.0%
un-div-inv83.0%
Applied egg-rr83.0%
Taylor expanded in y around 0 72.6%
mul-1-neg72.6%
associate-/l*76.1%
Simplified76.1%
if -2.5000000000000001e-23 < t < -1.0499999999999999e-52 or -4.1000000000000003e-290 < t < 1.4e-66Initial program 90.5%
Taylor expanded in t around 0 80.6%
associate-/l*88.5%
Simplified88.5%
if -1.0499999999999999e-52 < t < -6.2000000000000003e-103 or -4.4e-222 < t < -4e-255Initial program 85.5%
Taylor expanded in x around 0 80.3%
+-commutative80.3%
+-commutative80.3%
distribute-lft-in80.3%
mul-1-neg80.3%
distribute-rgt-neg-in80.3%
associate-/l*84.9%
mul-1-neg84.9%
*-rgt-identity84.9%
associate-+l+85.0%
Simplified94.8%
Taylor expanded in z around inf 85.0%
div-sub85.0%
Simplified85.0%
clear-num85.0%
un-div-inv85.1%
Applied egg-rr85.1%
if -6.2000000000000003e-103 < t < -5.5999999999999998e-173Initial program 86.1%
Taylor expanded in y around inf 60.7%
associate-/l*67.7%
Simplified67.7%
clear-num67.8%
un-div-inv67.9%
Applied egg-rr67.9%
Taylor expanded in z around inf 67.9%
if -5.5999999999999998e-173 < t < -4.4e-222Initial program 99.4%
Taylor expanded in t around 0 63.2%
clear-num63.3%
inv-pow63.3%
Applied egg-rr63.3%
unpow-163.3%
associate-/r*56.0%
Simplified56.0%
Taylor expanded in y around 0 70.9%
mul-1-neg70.9%
distribute-neg-frac270.9%
*-commutative70.9%
distribute-rgt-neg-out70.9%
Simplified70.9%
if -4e-255 < t < -4.1000000000000003e-290Initial program 99.8%
Taylor expanded in t around 0 99.8%
clear-num99.8%
inv-pow99.8%
Applied egg-rr99.8%
unpow-199.8%
associate-/r*100.0%
Simplified100.0%
clear-num100.0%
add-cube-cbrt99.4%
*-un-lft-identity99.4%
times-frac99.3%
pow299.3%
Applied egg-rr99.3%
/-rgt-identity99.3%
associate-*r/99.4%
unpow299.4%
rem-3cbrt-lft100.0%
Simplified100.0%
if 1.4e-66 < t < 56000 or 4.2e11 < t < 2.6000000000000001e152Initial program 60.2%
Taylor expanded in x around 0 62.4%
+-commutative62.4%
+-commutative62.4%
distribute-lft-in62.4%
mul-1-neg62.4%
distribute-rgt-neg-in62.4%
associate-/l*60.6%
mul-1-neg60.6%
*-rgt-identity60.6%
associate-+l+60.2%
Simplified85.2%
Taylor expanded in y around inf 71.0%
div-sub71.0%
Simplified71.0%
if 56000 < t < 4.2e11Initial program 100.0%
Taylor expanded in a around inf 100.0%
Final simplification79.2%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (* y (/ (- z t) (- a t))))
(t_2 (* z (/ (- y x) (- a t))))
(t_3 (- y (* x (/ a t)))))
(if (<= z -1.16e+218)
t_2
(if (<= z -4.2e-173)
t_1
(if (<= z -1.4e-226)
(+ y x)
(if (<= z -7e-309)
t_3
(if (<= z 6.2e-296)
x
(if (<= z 1.15e-290)
t_3
(if (<= z 2.15e-193)
(- x (/ t (/ a y)))
(if (<= z 4e-7)
t_1
(if (or (<= z 2.6e+235) (not (<= z 5.4e+262)))
t_2
(* x (- 1.0 (/ z a))))))))))))))
double code(double x, double y, double z, double t, double a) {
double t_1 = y * ((z - t) / (a - t));
double t_2 = z * ((y - x) / (a - t));
double t_3 = y - (x * (a / t));
double tmp;
if (z <= -1.16e+218) {
tmp = t_2;
} else if (z <= -4.2e-173) {
tmp = t_1;
} else if (z <= -1.4e-226) {
tmp = y + x;
} else if (z <= -7e-309) {
tmp = t_3;
} else if (z <= 6.2e-296) {
tmp = x;
} else if (z <= 1.15e-290) {
tmp = t_3;
} else if (z <= 2.15e-193) {
tmp = x - (t / (a / y));
} else if (z <= 4e-7) {
tmp = t_1;
} else if ((z <= 2.6e+235) || !(z <= 5.4e+262)) {
tmp = t_2;
} else {
tmp = x * (1.0 - (z / 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) :: t_1
real(8) :: t_2
real(8) :: t_3
real(8) :: tmp
t_1 = y * ((z - t) / (a - t))
t_2 = z * ((y - x) / (a - t))
t_3 = y - (x * (a / t))
if (z <= (-1.16d+218)) then
tmp = t_2
else if (z <= (-4.2d-173)) then
tmp = t_1
else if (z <= (-1.4d-226)) then
tmp = y + x
else if (z <= (-7d-309)) then
tmp = t_3
else if (z <= 6.2d-296) then
tmp = x
else if (z <= 1.15d-290) then
tmp = t_3
else if (z <= 2.15d-193) then
tmp = x - (t / (a / y))
else if (z <= 4d-7) then
tmp = t_1
else if ((z <= 2.6d+235) .or. (.not. (z <= 5.4d+262))) then
tmp = t_2
else
tmp = x * (1.0d0 - (z / a))
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double t_1 = y * ((z - t) / (a - t));
double t_2 = z * ((y - x) / (a - t));
double t_3 = y - (x * (a / t));
double tmp;
if (z <= -1.16e+218) {
tmp = t_2;
} else if (z <= -4.2e-173) {
tmp = t_1;
} else if (z <= -1.4e-226) {
tmp = y + x;
} else if (z <= -7e-309) {
tmp = t_3;
} else if (z <= 6.2e-296) {
tmp = x;
} else if (z <= 1.15e-290) {
tmp = t_3;
} else if (z <= 2.15e-193) {
tmp = x - (t / (a / y));
} else if (z <= 4e-7) {
tmp = t_1;
} else if ((z <= 2.6e+235) || !(z <= 5.4e+262)) {
tmp = t_2;
} else {
tmp = x * (1.0 - (z / a));
}
return tmp;
}
def code(x, y, z, t, a): t_1 = y * ((z - t) / (a - t)) t_2 = z * ((y - x) / (a - t)) t_3 = y - (x * (a / t)) tmp = 0 if z <= -1.16e+218: tmp = t_2 elif z <= -4.2e-173: tmp = t_1 elif z <= -1.4e-226: tmp = y + x elif z <= -7e-309: tmp = t_3 elif z <= 6.2e-296: tmp = x elif z <= 1.15e-290: tmp = t_3 elif z <= 2.15e-193: tmp = x - (t / (a / y)) elif z <= 4e-7: tmp = t_1 elif (z <= 2.6e+235) or not (z <= 5.4e+262): tmp = t_2 else: tmp = x * (1.0 - (z / a)) return tmp
function code(x, y, z, t, a) t_1 = Float64(y * Float64(Float64(z - t) / Float64(a - t))) t_2 = Float64(z * Float64(Float64(y - x) / Float64(a - t))) t_3 = Float64(y - Float64(x * Float64(a / t))) tmp = 0.0 if (z <= -1.16e+218) tmp = t_2; elseif (z <= -4.2e-173) tmp = t_1; elseif (z <= -1.4e-226) tmp = Float64(y + x); elseif (z <= -7e-309) tmp = t_3; elseif (z <= 6.2e-296) tmp = x; elseif (z <= 1.15e-290) tmp = t_3; elseif (z <= 2.15e-193) tmp = Float64(x - Float64(t / Float64(a / y))); elseif (z <= 4e-7) tmp = t_1; elseif ((z <= 2.6e+235) || !(z <= 5.4e+262)) tmp = t_2; else tmp = Float64(x * Float64(1.0 - Float64(z / a))); end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = y * ((z - t) / (a - t)); t_2 = z * ((y - x) / (a - t)); t_3 = y - (x * (a / t)); tmp = 0.0; if (z <= -1.16e+218) tmp = t_2; elseif (z <= -4.2e-173) tmp = t_1; elseif (z <= -1.4e-226) tmp = y + x; elseif (z <= -7e-309) tmp = t_3; elseif (z <= 6.2e-296) tmp = x; elseif (z <= 1.15e-290) tmp = t_3; elseif (z <= 2.15e-193) tmp = x - (t / (a / y)); elseif (z <= 4e-7) tmp = t_1; elseif ((z <= 2.6e+235) || ~((z <= 5.4e+262))) tmp = t_2; else tmp = x * (1.0 - (z / a)); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(y * N[(N[(z - t), $MachinePrecision] / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(z * N[(N[(y - x), $MachinePrecision] / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$3 = N[(y - N[(x * N[(a / t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[z, -1.16e+218], t$95$2, If[LessEqual[z, -4.2e-173], t$95$1, If[LessEqual[z, -1.4e-226], N[(y + x), $MachinePrecision], If[LessEqual[z, -7e-309], t$95$3, If[LessEqual[z, 6.2e-296], x, If[LessEqual[z, 1.15e-290], t$95$3, If[LessEqual[z, 2.15e-193], N[(x - N[(t / N[(a / y), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[z, 4e-7], t$95$1, If[Or[LessEqual[z, 2.6e+235], N[Not[LessEqual[z, 5.4e+262]], $MachinePrecision]], t$95$2, N[(x * N[(1.0 - N[(z / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := y \cdot \frac{z - t}{a - t}\\
t_2 := z \cdot \frac{y - x}{a - t}\\
t_3 := y - x \cdot \frac{a}{t}\\
\mathbf{if}\;z \leq -1.16 \cdot 10^{+218}:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;z \leq -4.2 \cdot 10^{-173}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;z \leq -1.4 \cdot 10^{-226}:\\
\;\;\;\;y + x\\
\mathbf{elif}\;z \leq -7 \cdot 10^{-309}:\\
\;\;\;\;t\_3\\
\mathbf{elif}\;z \leq 6.2 \cdot 10^{-296}:\\
\;\;\;\;x\\
\mathbf{elif}\;z \leq 1.15 \cdot 10^{-290}:\\
\;\;\;\;t\_3\\
\mathbf{elif}\;z \leq 2.15 \cdot 10^{-193}:\\
\;\;\;\;x - \frac{t}{\frac{a}{y}}\\
\mathbf{elif}\;z \leq 4 \cdot 10^{-7}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;z \leq 2.6 \cdot 10^{+235} \lor \neg \left(z \leq 5.4 \cdot 10^{+262}\right):\\
\;\;\;\;t\_2\\
\mathbf{else}:\\
\;\;\;\;x \cdot \left(1 - \frac{z}{a}\right)\\
\end{array}
\end{array}
if z < -1.15999999999999994e218 or 3.9999999999999998e-7 < z < 2.5999999999999998e235 or 5.4000000000000002e262 < z Initial program 70.3%
Taylor expanded in x around 0 59.4%
+-commutative59.4%
+-commutative59.4%
distribute-lft-in59.4%
mul-1-neg59.4%
distribute-rgt-neg-in59.4%
associate-/l*63.0%
mul-1-neg63.0%
*-rgt-identity63.0%
associate-+l+63.0%
Simplified95.7%
Taylor expanded in z around inf 81.3%
div-sub82.6%
Simplified82.6%
if -1.15999999999999994e218 < z < -4.20000000000000003e-173 or 2.1500000000000001e-193 < z < 3.9999999999999998e-7Initial program 67.3%
Taylor expanded in x around 0 76.9%
+-commutative76.9%
+-commutative76.9%
distribute-lft-in76.9%
mul-1-neg76.9%
distribute-rgt-neg-in76.9%
associate-/l*68.9%
mul-1-neg68.9%
*-rgt-identity68.9%
associate-+l+66.5%
Simplified77.4%
Taylor expanded in y around inf 62.4%
div-sub62.4%
Simplified62.4%
if -4.20000000000000003e-173 < z < -1.40000000000000004e-226Initial program 72.9%
Taylor expanded in y around inf 70.1%
associate-/l*82.2%
Simplified82.2%
Taylor expanded in t around inf 68.3%
if -1.40000000000000004e-226 < z < -6.9999999999999984e-309 or 6.2000000000000004e-296 < z < 1.15e-290Initial program 25.7%
Taylor expanded in t around inf 77.1%
associate--l+77.1%
distribute-lft-out--77.1%
div-sub77.1%
mul-1-neg77.1%
unsub-neg77.1%
div-sub77.1%
associate-/l*77.1%
associate-/l*88.2%
distribute-rgt-out--88.2%
Simplified88.2%
*-commutative88.2%
clear-num88.3%
un-div-inv88.4%
Applied egg-rr88.4%
Taylor expanded in y around 0 77.1%
mul-1-neg77.1%
associate-/l*82.8%
Simplified82.8%
Taylor expanded in z around 0 71.5%
mul-1-neg71.5%
*-commutative71.5%
associate-*r/82.8%
unsub-neg82.8%
Simplified82.8%
if -6.9999999999999984e-309 < z < 6.2000000000000004e-296Initial program 80.0%
Taylor expanded in a around inf 100.0%
if 1.15e-290 < z < 2.1500000000000001e-193Initial program 72.8%
Taylor expanded in y around inf 68.9%
associate-/l*77.5%
Simplified77.5%
clear-num77.7%
inv-pow77.7%
Applied egg-rr77.7%
unpow-177.7%
Simplified77.7%
Taylor expanded in z around 0 68.9%
mul-1-neg68.9%
unsub-neg68.9%
associate-/l*77.4%
Simplified77.4%
Taylor expanded in t around 0 59.1%
associate-/l*59.1%
Simplified59.1%
clear-num59.1%
un-div-inv59.1%
Applied egg-rr59.1%
if 2.5999999999999998e235 < z < 5.4000000000000002e262Initial program 81.7%
Taylor expanded in t around 0 81.7%
Taylor expanded in x around inf 82.1%
mul-1-neg82.1%
unsub-neg82.1%
Simplified82.1%
Final simplification70.7%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (* z (/ (- y x) (- a t)))) (t_2 (* y (/ (- z t) (- a t)))))
(if (<= t -1.45e-13)
t_2
(if (<= t -6.2e-81)
t_1
(if (<= t -5.6e-173)
(+ x (/ y (/ (- a t) z)))
(if (<= t -2.1e-208)
(- x (/ (* x z) a))
(if (<= t -9.2e-211)
(- x (* t (/ y a)))
(if (<= t -1.02e-254)
t_1
(if (<= t 3.6e-62)
(+ x (* z (/ (- y x) a)))
(if (<= t 56000.0)
t_2
(if (<= t 240000000000.0)
x
(if (<= t 6.2e+171) t_2 (- y (* x (/ a t)))))))))))))))
double code(double x, double y, double z, double t, double a) {
double t_1 = z * ((y - x) / (a - t));
double t_2 = y * ((z - t) / (a - t));
double tmp;
if (t <= -1.45e-13) {
tmp = t_2;
} else if (t <= -6.2e-81) {
tmp = t_1;
} else if (t <= -5.6e-173) {
tmp = x + (y / ((a - t) / z));
} else if (t <= -2.1e-208) {
tmp = x - ((x * z) / a);
} else if (t <= -9.2e-211) {
tmp = x - (t * (y / a));
} else if (t <= -1.02e-254) {
tmp = t_1;
} else if (t <= 3.6e-62) {
tmp = x + (z * ((y - x) / a));
} else if (t <= 56000.0) {
tmp = t_2;
} else if (t <= 240000000000.0) {
tmp = x;
} else if (t <= 6.2e+171) {
tmp = t_2;
} else {
tmp = y - (x * (a / 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) :: t_1
real(8) :: t_2
real(8) :: tmp
t_1 = z * ((y - x) / (a - t))
t_2 = y * ((z - t) / (a - t))
if (t <= (-1.45d-13)) then
tmp = t_2
else if (t <= (-6.2d-81)) then
tmp = t_1
else if (t <= (-5.6d-173)) then
tmp = x + (y / ((a - t) / z))
else if (t <= (-2.1d-208)) then
tmp = x - ((x * z) / a)
else if (t <= (-9.2d-211)) then
tmp = x - (t * (y / a))
else if (t <= (-1.02d-254)) then
tmp = t_1
else if (t <= 3.6d-62) then
tmp = x + (z * ((y - x) / a))
else if (t <= 56000.0d0) then
tmp = t_2
else if (t <= 240000000000.0d0) then
tmp = x
else if (t <= 6.2d+171) then
tmp = t_2
else
tmp = y - (x * (a / t))
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double t_1 = z * ((y - x) / (a - t));
double t_2 = y * ((z - t) / (a - t));
double tmp;
if (t <= -1.45e-13) {
tmp = t_2;
} else if (t <= -6.2e-81) {
tmp = t_1;
} else if (t <= -5.6e-173) {
tmp = x + (y / ((a - t) / z));
} else if (t <= -2.1e-208) {
tmp = x - ((x * z) / a);
} else if (t <= -9.2e-211) {
tmp = x - (t * (y / a));
} else if (t <= -1.02e-254) {
tmp = t_1;
} else if (t <= 3.6e-62) {
tmp = x + (z * ((y - x) / a));
} else if (t <= 56000.0) {
tmp = t_2;
} else if (t <= 240000000000.0) {
tmp = x;
} else if (t <= 6.2e+171) {
tmp = t_2;
} else {
tmp = y - (x * (a / t));
}
return tmp;
}
def code(x, y, z, t, a): t_1 = z * ((y - x) / (a - t)) t_2 = y * ((z - t) / (a - t)) tmp = 0 if t <= -1.45e-13: tmp = t_2 elif t <= -6.2e-81: tmp = t_1 elif t <= -5.6e-173: tmp = x + (y / ((a - t) / z)) elif t <= -2.1e-208: tmp = x - ((x * z) / a) elif t <= -9.2e-211: tmp = x - (t * (y / a)) elif t <= -1.02e-254: tmp = t_1 elif t <= 3.6e-62: tmp = x + (z * ((y - x) / a)) elif t <= 56000.0: tmp = t_2 elif t <= 240000000000.0: tmp = x elif t <= 6.2e+171: tmp = t_2 else: tmp = y - (x * (a / t)) return tmp
function code(x, y, z, t, a) t_1 = Float64(z * Float64(Float64(y - x) / Float64(a - t))) t_2 = Float64(y * Float64(Float64(z - t) / Float64(a - t))) tmp = 0.0 if (t <= -1.45e-13) tmp = t_2; elseif (t <= -6.2e-81) tmp = t_1; elseif (t <= -5.6e-173) tmp = Float64(x + Float64(y / Float64(Float64(a - t) / z))); elseif (t <= -2.1e-208) tmp = Float64(x - Float64(Float64(x * z) / a)); elseif (t <= -9.2e-211) tmp = Float64(x - Float64(t * Float64(y / a))); elseif (t <= -1.02e-254) tmp = t_1; elseif (t <= 3.6e-62) tmp = Float64(x + Float64(z * Float64(Float64(y - x) / a))); elseif (t <= 56000.0) tmp = t_2; elseif (t <= 240000000000.0) tmp = x; elseif (t <= 6.2e+171) tmp = t_2; else tmp = Float64(y - Float64(x * Float64(a / t))); end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = z * ((y - x) / (a - t)); t_2 = y * ((z - t) / (a - t)); tmp = 0.0; if (t <= -1.45e-13) tmp = t_2; elseif (t <= -6.2e-81) tmp = t_1; elseif (t <= -5.6e-173) tmp = x + (y / ((a - t) / z)); elseif (t <= -2.1e-208) tmp = x - ((x * z) / a); elseif (t <= -9.2e-211) tmp = x - (t * (y / a)); elseif (t <= -1.02e-254) tmp = t_1; elseif (t <= 3.6e-62) tmp = x + (z * ((y - x) / a)); elseif (t <= 56000.0) tmp = t_2; elseif (t <= 240000000000.0) tmp = x; elseif (t <= 6.2e+171) tmp = t_2; else tmp = y - (x * (a / t)); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(z * N[(N[(y - x), $MachinePrecision] / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(y * N[(N[(z - t), $MachinePrecision] / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t, -1.45e-13], t$95$2, If[LessEqual[t, -6.2e-81], t$95$1, If[LessEqual[t, -5.6e-173], N[(x + N[(y / N[(N[(a - t), $MachinePrecision] / z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -2.1e-208], N[(x - N[(N[(x * z), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -9.2e-211], N[(x - N[(t * N[(y / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -1.02e-254], t$95$1, If[LessEqual[t, 3.6e-62], N[(x + N[(z * N[(N[(y - x), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 56000.0], t$95$2, If[LessEqual[t, 240000000000.0], x, If[LessEqual[t, 6.2e+171], t$95$2, N[(y - N[(x * N[(a / t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := z \cdot \frac{y - x}{a - t}\\
t_2 := y \cdot \frac{z - t}{a - t}\\
\mathbf{if}\;t \leq -1.45 \cdot 10^{-13}:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;t \leq -6.2 \cdot 10^{-81}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq -5.6 \cdot 10^{-173}:\\
\;\;\;\;x + \frac{y}{\frac{a - t}{z}}\\
\mathbf{elif}\;t \leq -2.1 \cdot 10^{-208}:\\
\;\;\;\;x - \frac{x \cdot z}{a}\\
\mathbf{elif}\;t \leq -9.2 \cdot 10^{-211}:\\
\;\;\;\;x - t \cdot \frac{y}{a}\\
\mathbf{elif}\;t \leq -1.02 \cdot 10^{-254}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq 3.6 \cdot 10^{-62}:\\
\;\;\;\;x + z \cdot \frac{y - x}{a}\\
\mathbf{elif}\;t \leq 56000:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;t \leq 240000000000:\\
\;\;\;\;x\\
\mathbf{elif}\;t \leq 6.2 \cdot 10^{+171}:\\
\;\;\;\;t\_2\\
\mathbf{else}:\\
\;\;\;\;y - x \cdot \frac{a}{t}\\
\end{array}
\end{array}
if t < -1.4499999999999999e-13 or 3.6e-62 < t < 56000 or 2.4e11 < t < 6.1999999999999998e171Initial program 54.5%
Taylor expanded in x around 0 63.9%
+-commutative63.9%
+-commutative63.9%
distribute-lft-in63.9%
mul-1-neg63.9%
distribute-rgt-neg-in63.9%
associate-/l*55.4%
mul-1-neg55.4%
*-rgt-identity55.4%
associate-+l+53.5%
Simplified78.1%
Taylor expanded in y around inf 67.0%
div-sub67.0%
Simplified67.0%
if -1.4499999999999999e-13 < t < -6.19999999999999976e-81 or -9.19999999999999953e-211 < t < -1.0200000000000001e-254Initial program 84.7%
Taylor expanded in x around 0 76.1%
+-commutative76.1%
+-commutative76.1%
distribute-lft-in76.2%
mul-1-neg76.2%
distribute-rgt-neg-in76.2%
associate-/l*79.9%
mul-1-neg79.9%
*-rgt-identity79.9%
associate-+l+79.9%
Simplified95.9%
Taylor expanded in z around inf 72.3%
div-sub76.3%
Simplified76.3%
if -6.19999999999999976e-81 < t < -5.5999999999999998e-173Initial program 89.6%
Taylor expanded in y around inf 65.6%
associate-/l*70.8%
Simplified70.8%
clear-num70.8%
un-div-inv70.8%
Applied egg-rr70.8%
Taylor expanded in z around inf 70.8%
if -5.5999999999999998e-173 < t < -2.10000000000000012e-208Initial program 99.3%
Taylor expanded in t around 0 68.1%
Taylor expanded in y around 0 68.7%
mul-1-neg68.7%
distribute-lft-neg-out68.7%
*-commutative68.7%
Simplified68.7%
if -2.10000000000000012e-208 < t < -9.19999999999999953e-211Initial program 99.2%
Taylor expanded in y around inf 99.2%
associate-/l*100.0%
Simplified100.0%
clear-num100.0%
inv-pow100.0%
Applied egg-rr100.0%
unpow-1100.0%
Simplified100.0%
Taylor expanded in z around 0 99.2%
mul-1-neg99.2%
unsub-neg99.2%
associate-/l*99.2%
Simplified99.2%
Taylor expanded in t around 0 99.2%
associate-/l*99.2%
Simplified99.2%
if -1.0200000000000001e-254 < t < 3.6e-62Initial program 92.0%
Taylor expanded in t around 0 84.1%
associate-/l*89.0%
Simplified89.0%
if 56000 < t < 2.4e11Initial program 100.0%
Taylor expanded in a around inf 100.0%
if 6.1999999999999998e171 < t Initial program 20.9%
Taylor expanded in t around inf 83.4%
associate--l+83.4%
distribute-lft-out--83.4%
div-sub83.4%
mul-1-neg83.4%
unsub-neg83.4%
div-sub83.4%
associate-/l*83.3%
associate-/l*86.7%
distribute-rgt-out--86.7%
Simplified86.7%
*-commutative86.7%
clear-num86.7%
un-div-inv86.7%
Applied egg-rr86.7%
Taylor expanded in y around 0 91.1%
mul-1-neg91.1%
associate-/l*87.9%
Simplified87.9%
Taylor expanded in z around 0 85.8%
mul-1-neg85.8%
*-commutative85.8%
associate-*r/85.2%
unsub-neg85.2%
Simplified85.2%
Final simplification76.5%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (* z (/ (- x y) t))))
(if (<= t -3.7e+219)
y
(if (<= t -2.15e+156)
t_1
(if (<= t -7.8e+120)
y
(if (<= t -3.5e+81)
t_1
(if (<= t -1.7e+33)
(* x (/ (- z a) t))
(if (<= t -1.7e-9)
t_1
(if (<= t -6.2e-16)
(* (- y x) (/ a t))
(if (<= t -2e-62)
(* y (/ (- z t) a))
(if (<= t 1.6e+14)
(* x (- 1.0 (/ z a)))
(if (<= t 1.04e+77) (* y (/ z (- a t))) y))))))))))))
double code(double x, double y, double z, double t, double a) {
double t_1 = z * ((x - y) / t);
double tmp;
if (t <= -3.7e+219) {
tmp = y;
} else if (t <= -2.15e+156) {
tmp = t_1;
} else if (t <= -7.8e+120) {
tmp = y;
} else if (t <= -3.5e+81) {
tmp = t_1;
} else if (t <= -1.7e+33) {
tmp = x * ((z - a) / t);
} else if (t <= -1.7e-9) {
tmp = t_1;
} else if (t <= -6.2e-16) {
tmp = (y - x) * (a / t);
} else if (t <= -2e-62) {
tmp = y * ((z - t) / a);
} else if (t <= 1.6e+14) {
tmp = x * (1.0 - (z / a));
} else if (t <= 1.04e+77) {
tmp = y * (z / (a - t));
} else {
tmp = y;
}
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 = z * ((x - y) / t)
if (t <= (-3.7d+219)) then
tmp = y
else if (t <= (-2.15d+156)) then
tmp = t_1
else if (t <= (-7.8d+120)) then
tmp = y
else if (t <= (-3.5d+81)) then
tmp = t_1
else if (t <= (-1.7d+33)) then
tmp = x * ((z - a) / t)
else if (t <= (-1.7d-9)) then
tmp = t_1
else if (t <= (-6.2d-16)) then
tmp = (y - x) * (a / t)
else if (t <= (-2d-62)) then
tmp = y * ((z - t) / a)
else if (t <= 1.6d+14) then
tmp = x * (1.0d0 - (z / a))
else if (t <= 1.04d+77) then
tmp = y * (z / (a - t))
else
tmp = y
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double t_1 = z * ((x - y) / t);
double tmp;
if (t <= -3.7e+219) {
tmp = y;
} else if (t <= -2.15e+156) {
tmp = t_1;
} else if (t <= -7.8e+120) {
tmp = y;
} else if (t <= -3.5e+81) {
tmp = t_1;
} else if (t <= -1.7e+33) {
tmp = x * ((z - a) / t);
} else if (t <= -1.7e-9) {
tmp = t_1;
} else if (t <= -6.2e-16) {
tmp = (y - x) * (a / t);
} else if (t <= -2e-62) {
tmp = y * ((z - t) / a);
} else if (t <= 1.6e+14) {
tmp = x * (1.0 - (z / a));
} else if (t <= 1.04e+77) {
tmp = y * (z / (a - t));
} else {
tmp = y;
}
return tmp;
}
def code(x, y, z, t, a): t_1 = z * ((x - y) / t) tmp = 0 if t <= -3.7e+219: tmp = y elif t <= -2.15e+156: tmp = t_1 elif t <= -7.8e+120: tmp = y elif t <= -3.5e+81: tmp = t_1 elif t <= -1.7e+33: tmp = x * ((z - a) / t) elif t <= -1.7e-9: tmp = t_1 elif t <= -6.2e-16: tmp = (y - x) * (a / t) elif t <= -2e-62: tmp = y * ((z - t) / a) elif t <= 1.6e+14: tmp = x * (1.0 - (z / a)) elif t <= 1.04e+77: tmp = y * (z / (a - t)) else: tmp = y return tmp
function code(x, y, z, t, a) t_1 = Float64(z * Float64(Float64(x - y) / t)) tmp = 0.0 if (t <= -3.7e+219) tmp = y; elseif (t <= -2.15e+156) tmp = t_1; elseif (t <= -7.8e+120) tmp = y; elseif (t <= -3.5e+81) tmp = t_1; elseif (t <= -1.7e+33) tmp = Float64(x * Float64(Float64(z - a) / t)); elseif (t <= -1.7e-9) tmp = t_1; elseif (t <= -6.2e-16) tmp = Float64(Float64(y - x) * Float64(a / t)); elseif (t <= -2e-62) tmp = Float64(y * Float64(Float64(z - t) / a)); elseif (t <= 1.6e+14) tmp = Float64(x * Float64(1.0 - Float64(z / a))); elseif (t <= 1.04e+77) tmp = Float64(y * Float64(z / Float64(a - t))); else tmp = y; end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = z * ((x - y) / t); tmp = 0.0; if (t <= -3.7e+219) tmp = y; elseif (t <= -2.15e+156) tmp = t_1; elseif (t <= -7.8e+120) tmp = y; elseif (t <= -3.5e+81) tmp = t_1; elseif (t <= -1.7e+33) tmp = x * ((z - a) / t); elseif (t <= -1.7e-9) tmp = t_1; elseif (t <= -6.2e-16) tmp = (y - x) * (a / t); elseif (t <= -2e-62) tmp = y * ((z - t) / a); elseif (t <= 1.6e+14) tmp = x * (1.0 - (z / a)); elseif (t <= 1.04e+77) tmp = y * (z / (a - t)); else tmp = y; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(z * N[(N[(x - y), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t, -3.7e+219], y, If[LessEqual[t, -2.15e+156], t$95$1, If[LessEqual[t, -7.8e+120], y, If[LessEqual[t, -3.5e+81], t$95$1, If[LessEqual[t, -1.7e+33], N[(x * N[(N[(z - a), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -1.7e-9], t$95$1, If[LessEqual[t, -6.2e-16], N[(N[(y - x), $MachinePrecision] * N[(a / t), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -2e-62], N[(y * N[(N[(z - t), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 1.6e+14], N[(x * N[(1.0 - N[(z / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 1.04e+77], N[(y * N[(z / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], y]]]]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := z \cdot \frac{x - y}{t}\\
\mathbf{if}\;t \leq -3.7 \cdot 10^{+219}:\\
\;\;\;\;y\\
\mathbf{elif}\;t \leq -2.15 \cdot 10^{+156}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq -7.8 \cdot 10^{+120}:\\
\;\;\;\;y\\
\mathbf{elif}\;t \leq -3.5 \cdot 10^{+81}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq -1.7 \cdot 10^{+33}:\\
\;\;\;\;x \cdot \frac{z - a}{t}\\
\mathbf{elif}\;t \leq -1.7 \cdot 10^{-9}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq -6.2 \cdot 10^{-16}:\\
\;\;\;\;\left(y - x\right) \cdot \frac{a}{t}\\
\mathbf{elif}\;t \leq -2 \cdot 10^{-62}:\\
\;\;\;\;y \cdot \frac{z - t}{a}\\
\mathbf{elif}\;t \leq 1.6 \cdot 10^{+14}:\\
\;\;\;\;x \cdot \left(1 - \frac{z}{a}\right)\\
\mathbf{elif}\;t \leq 1.04 \cdot 10^{+77}:\\
\;\;\;\;y \cdot \frac{z}{a - t}\\
\mathbf{else}:\\
\;\;\;\;y\\
\end{array}
\end{array}
if t < -3.7e219 or -2.14999999999999993e156 < t < -7.7999999999999997e120 or 1.04e77 < t Initial program 32.7%
Taylor expanded in t around inf 67.4%
if -3.7e219 < t < -2.14999999999999993e156 or -7.7999999999999997e120 < t < -3.5e81 or -1.7e33 < t < -1.6999999999999999e-9Initial program 57.4%
Taylor expanded in t around inf 56.0%
associate--l+56.0%
distribute-lft-out--56.0%
div-sub56.0%
mul-1-neg56.0%
unsub-neg56.0%
div-sub56.0%
associate-/l*69.0%
associate-/l*75.9%
distribute-rgt-out--75.9%
Simplified75.9%
Taylor expanded in z around inf 60.2%
div-sub60.2%
Simplified60.2%
if -3.5e81 < t < -1.7e33Initial program 58.0%
Taylor expanded in t around inf 73.7%
associate--l+73.7%
distribute-lft-out--73.7%
div-sub73.7%
mul-1-neg73.7%
unsub-neg73.7%
div-sub73.7%
associate-/l*73.7%
associate-/l*73.5%
distribute-rgt-out--73.5%
Simplified73.5%
Taylor expanded in y around 0 46.0%
associate-/l*45.7%
Simplified45.7%
if -1.6999999999999999e-9 < t < -6.2000000000000002e-16Initial program 51.6%
Taylor expanded in t around inf 100.0%
associate--l+100.0%
distribute-lft-out--100.0%
div-sub100.0%
mul-1-neg100.0%
unsub-neg100.0%
div-sub100.0%
associate-/l*100.0%
associate-/l*99.2%
distribute-rgt-out--99.2%
Simplified99.2%
Taylor expanded in a around inf 54.0%
*-commutative54.0%
associate-/l*54.0%
Simplified54.0%
if -6.2000000000000002e-16 < t < -2.0000000000000001e-62Initial program 89.2%
Taylor expanded in x around 0 88.0%
+-commutative88.0%
+-commutative88.0%
distribute-lft-in88.2%
mul-1-neg88.2%
distribute-rgt-neg-in88.2%
associate-/l*88.4%
mul-1-neg88.4%
*-rgt-identity88.4%
associate-+l+88.4%
Simplified99.8%
Taylor expanded in y around inf 43.5%
div-sub43.5%
Simplified43.5%
Taylor expanded in a around inf 55.7%
associate-/l*55.9%
Simplified55.9%
if -2.0000000000000001e-62 < t < 1.6e14Initial program 88.9%
Taylor expanded in t around 0 67.1%
Taylor expanded in x around inf 52.3%
mul-1-neg52.3%
unsub-neg52.3%
Simplified52.3%
if 1.6e14 < t < 1.04e77Initial program 61.9%
Taylor expanded in x around 0 62.1%
+-commutative62.1%
+-commutative62.1%
distribute-lft-in62.1%
mul-1-neg62.1%
distribute-rgt-neg-in62.1%
associate-/l*61.9%
mul-1-neg61.9%
*-rgt-identity61.9%
associate-+l+61.9%
Simplified81.3%
Taylor expanded in y around inf 73.5%
div-sub73.5%
Simplified73.5%
Taylor expanded in z around inf 33.3%
associate-/l*51.6%
Simplified51.6%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (* z (/ (- x y) t))))
(if (<= t -3.7e+219)
y
(if (<= t -2.4e+156)
t_1
(if (<= t -1.8e+123)
y
(if (<= t -4.7e+82)
t_1
(if (<= t -1.65e+33)
(* x (/ (- z a) t))
(if (<= t -5e-9)
t_1
(if (<= t -6.5e-11)
(* (/ (- y x) t) a)
(if (<= t -3.4e-54)
(* y (/ (- z t) a))
(if (<= t 15000000000000.0)
(* x (- 1.0 (/ z a)))
(if (<= t 8.6e+76) (* y (/ z (- a t))) y))))))))))))
double code(double x, double y, double z, double t, double a) {
double t_1 = z * ((x - y) / t);
double tmp;
if (t <= -3.7e+219) {
tmp = y;
} else if (t <= -2.4e+156) {
tmp = t_1;
} else if (t <= -1.8e+123) {
tmp = y;
} else if (t <= -4.7e+82) {
tmp = t_1;
} else if (t <= -1.65e+33) {
tmp = x * ((z - a) / t);
} else if (t <= -5e-9) {
tmp = t_1;
} else if (t <= -6.5e-11) {
tmp = ((y - x) / t) * a;
} else if (t <= -3.4e-54) {
tmp = y * ((z - t) / a);
} else if (t <= 15000000000000.0) {
tmp = x * (1.0 - (z / a));
} else if (t <= 8.6e+76) {
tmp = y * (z / (a - t));
} else {
tmp = y;
}
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 = z * ((x - y) / t)
if (t <= (-3.7d+219)) then
tmp = y
else if (t <= (-2.4d+156)) then
tmp = t_1
else if (t <= (-1.8d+123)) then
tmp = y
else if (t <= (-4.7d+82)) then
tmp = t_1
else if (t <= (-1.65d+33)) then
tmp = x * ((z - a) / t)
else if (t <= (-5d-9)) then
tmp = t_1
else if (t <= (-6.5d-11)) then
tmp = ((y - x) / t) * a
else if (t <= (-3.4d-54)) then
tmp = y * ((z - t) / a)
else if (t <= 15000000000000.0d0) then
tmp = x * (1.0d0 - (z / a))
else if (t <= 8.6d+76) then
tmp = y * (z / (a - t))
else
tmp = y
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double t_1 = z * ((x - y) / t);
double tmp;
if (t <= -3.7e+219) {
tmp = y;
} else if (t <= -2.4e+156) {
tmp = t_1;
} else if (t <= -1.8e+123) {
tmp = y;
} else if (t <= -4.7e+82) {
tmp = t_1;
} else if (t <= -1.65e+33) {
tmp = x * ((z - a) / t);
} else if (t <= -5e-9) {
tmp = t_1;
} else if (t <= -6.5e-11) {
tmp = ((y - x) / t) * a;
} else if (t <= -3.4e-54) {
tmp = y * ((z - t) / a);
} else if (t <= 15000000000000.0) {
tmp = x * (1.0 - (z / a));
} else if (t <= 8.6e+76) {
tmp = y * (z / (a - t));
} else {
tmp = y;
}
return tmp;
}
def code(x, y, z, t, a): t_1 = z * ((x - y) / t) tmp = 0 if t <= -3.7e+219: tmp = y elif t <= -2.4e+156: tmp = t_1 elif t <= -1.8e+123: tmp = y elif t <= -4.7e+82: tmp = t_1 elif t <= -1.65e+33: tmp = x * ((z - a) / t) elif t <= -5e-9: tmp = t_1 elif t <= -6.5e-11: tmp = ((y - x) / t) * a elif t <= -3.4e-54: tmp = y * ((z - t) / a) elif t <= 15000000000000.0: tmp = x * (1.0 - (z / a)) elif t <= 8.6e+76: tmp = y * (z / (a - t)) else: tmp = y return tmp
function code(x, y, z, t, a) t_1 = Float64(z * Float64(Float64(x - y) / t)) tmp = 0.0 if (t <= -3.7e+219) tmp = y; elseif (t <= -2.4e+156) tmp = t_1; elseif (t <= -1.8e+123) tmp = y; elseif (t <= -4.7e+82) tmp = t_1; elseif (t <= -1.65e+33) tmp = Float64(x * Float64(Float64(z - a) / t)); elseif (t <= -5e-9) tmp = t_1; elseif (t <= -6.5e-11) tmp = Float64(Float64(Float64(y - x) / t) * a); elseif (t <= -3.4e-54) tmp = Float64(y * Float64(Float64(z - t) / a)); elseif (t <= 15000000000000.0) tmp = Float64(x * Float64(1.0 - Float64(z / a))); elseif (t <= 8.6e+76) tmp = Float64(y * Float64(z / Float64(a - t))); else tmp = y; end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = z * ((x - y) / t); tmp = 0.0; if (t <= -3.7e+219) tmp = y; elseif (t <= -2.4e+156) tmp = t_1; elseif (t <= -1.8e+123) tmp = y; elseif (t <= -4.7e+82) tmp = t_1; elseif (t <= -1.65e+33) tmp = x * ((z - a) / t); elseif (t <= -5e-9) tmp = t_1; elseif (t <= -6.5e-11) tmp = ((y - x) / t) * a; elseif (t <= -3.4e-54) tmp = y * ((z - t) / a); elseif (t <= 15000000000000.0) tmp = x * (1.0 - (z / a)); elseif (t <= 8.6e+76) tmp = y * (z / (a - t)); else tmp = y; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(z * N[(N[(x - y), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t, -3.7e+219], y, If[LessEqual[t, -2.4e+156], t$95$1, If[LessEqual[t, -1.8e+123], y, If[LessEqual[t, -4.7e+82], t$95$1, If[LessEqual[t, -1.65e+33], N[(x * N[(N[(z - a), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -5e-9], t$95$1, If[LessEqual[t, -6.5e-11], N[(N[(N[(y - x), $MachinePrecision] / t), $MachinePrecision] * a), $MachinePrecision], If[LessEqual[t, -3.4e-54], N[(y * N[(N[(z - t), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 15000000000000.0], N[(x * N[(1.0 - N[(z / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 8.6e+76], N[(y * N[(z / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], y]]]]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := z \cdot \frac{x - y}{t}\\
\mathbf{if}\;t \leq -3.7 \cdot 10^{+219}:\\
\;\;\;\;y\\
\mathbf{elif}\;t \leq -2.4 \cdot 10^{+156}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq -1.8 \cdot 10^{+123}:\\
\;\;\;\;y\\
\mathbf{elif}\;t \leq -4.7 \cdot 10^{+82}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq -1.65 \cdot 10^{+33}:\\
\;\;\;\;x \cdot \frac{z - a}{t}\\
\mathbf{elif}\;t \leq -5 \cdot 10^{-9}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq -6.5 \cdot 10^{-11}:\\
\;\;\;\;\frac{y - x}{t} \cdot a\\
\mathbf{elif}\;t \leq -3.4 \cdot 10^{-54}:\\
\;\;\;\;y \cdot \frac{z - t}{a}\\
\mathbf{elif}\;t \leq 15000000000000:\\
\;\;\;\;x \cdot \left(1 - \frac{z}{a}\right)\\
\mathbf{elif}\;t \leq 8.6 \cdot 10^{+76}:\\
\;\;\;\;y \cdot \frac{z}{a - t}\\
\mathbf{else}:\\
\;\;\;\;y\\
\end{array}
\end{array}
if t < -3.7e219 or -2.4000000000000001e156 < t < -1.79999999999999999e123 or 8.59999999999999957e76 < t Initial program 32.7%
Taylor expanded in t around inf 67.4%
if -3.7e219 < t < -2.4000000000000001e156 or -1.79999999999999999e123 < t < -4.7e82 or -1.64999999999999988e33 < t < -5.0000000000000001e-9Initial program 57.4%
Taylor expanded in t around inf 56.0%
associate--l+56.0%
distribute-lft-out--56.0%
div-sub56.0%
mul-1-neg56.0%
unsub-neg56.0%
div-sub56.0%
associate-/l*69.0%
associate-/l*75.9%
distribute-rgt-out--75.9%
Simplified75.9%
Taylor expanded in z around inf 60.2%
div-sub60.2%
Simplified60.2%
if -4.7e82 < t < -1.64999999999999988e33Initial program 58.0%
Taylor expanded in t around inf 73.7%
associate--l+73.7%
distribute-lft-out--73.7%
div-sub73.7%
mul-1-neg73.7%
unsub-neg73.7%
div-sub73.7%
associate-/l*73.7%
associate-/l*73.5%
distribute-rgt-out--73.5%
Simplified73.5%
Taylor expanded in y around 0 46.0%
associate-/l*45.7%
Simplified45.7%
if -5.0000000000000001e-9 < t < -6.49999999999999953e-11Initial program 51.6%
Taylor expanded in t around inf 100.0%
associate--l+100.0%
distribute-lft-out--100.0%
div-sub100.0%
mul-1-neg100.0%
unsub-neg100.0%
div-sub100.0%
associate-/l*100.0%
associate-/l*99.2%
distribute-rgt-out--99.2%
Simplified99.2%
*-commutative99.2%
clear-num99.2%
un-div-inv100.0%
Applied egg-rr100.0%
Taylor expanded in a around inf 54.0%
associate-/l*53.3%
Simplified53.3%
if -6.49999999999999953e-11 < t < -3.39999999999999987e-54Initial program 89.2%
Taylor expanded in x around 0 88.0%
+-commutative88.0%
+-commutative88.0%
distribute-lft-in88.2%
mul-1-neg88.2%
distribute-rgt-neg-in88.2%
associate-/l*88.4%
mul-1-neg88.4%
*-rgt-identity88.4%
associate-+l+88.4%
Simplified99.8%
Taylor expanded in y around inf 43.5%
div-sub43.5%
Simplified43.5%
Taylor expanded in a around inf 55.7%
associate-/l*55.9%
Simplified55.9%
if -3.39999999999999987e-54 < t < 1.5e13Initial program 88.9%
Taylor expanded in t around 0 67.1%
Taylor expanded in x around inf 52.3%
mul-1-neg52.3%
unsub-neg52.3%
Simplified52.3%
if 1.5e13 < t < 8.59999999999999957e76Initial program 61.9%
Taylor expanded in x around 0 62.1%
+-commutative62.1%
+-commutative62.1%
distribute-lft-in62.1%
mul-1-neg62.1%
distribute-rgt-neg-in62.1%
associate-/l*61.9%
mul-1-neg61.9%
*-rgt-identity61.9%
associate-+l+61.9%
Simplified81.3%
Taylor expanded in y around inf 73.5%
div-sub73.5%
Simplified73.5%
Taylor expanded in z around inf 33.3%
associate-/l*51.6%
Simplified51.6%
Final simplification57.6%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (+ x (* z (/ (- y x) (- a t)))))
(t_2 (+ y (* (- y x) (/ (- a z) t)))))
(if (<= t -4.5e+30)
t_2
(if (<= t -1.02e-51)
t_1
(if (<= t -7e-70)
(+ x (* y (/ -1.0 (/ a (- t z)))))
(if (<= t -1.05e-208)
t_1
(if (<= t -1e-208)
(* y (/ t (- a)))
(if (<= t -1.4e-269)
t_1
(if (<= t 3.1e-273)
(+ x (/ (* (- y x) z) a))
(if (<= t 3.5e-82)
t_1
(if (<= t 1.26e+48)
(+ x (* y (/ (- z t) (- a t))))
t_2)))))))))))
double code(double x, double y, double z, double t, double a) {
double t_1 = x + (z * ((y - x) / (a - t)));
double t_2 = y + ((y - x) * ((a - z) / t));
double tmp;
if (t <= -4.5e+30) {
tmp = t_2;
} else if (t <= -1.02e-51) {
tmp = t_1;
} else if (t <= -7e-70) {
tmp = x + (y * (-1.0 / (a / (t - z))));
} else if (t <= -1.05e-208) {
tmp = t_1;
} else if (t <= -1e-208) {
tmp = y * (t / -a);
} else if (t <= -1.4e-269) {
tmp = t_1;
} else if (t <= 3.1e-273) {
tmp = x + (((y - x) * z) / a);
} else if (t <= 3.5e-82) {
tmp = t_1;
} else if (t <= 1.26e+48) {
tmp = x + (y * ((z - t) / (a - t)));
} 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 = x + (z * ((y - x) / (a - t)))
t_2 = y + ((y - x) * ((a - z) / t))
if (t <= (-4.5d+30)) then
tmp = t_2
else if (t <= (-1.02d-51)) then
tmp = t_1
else if (t <= (-7d-70)) then
tmp = x + (y * ((-1.0d0) / (a / (t - z))))
else if (t <= (-1.05d-208)) then
tmp = t_1
else if (t <= (-1d-208)) then
tmp = y * (t / -a)
else if (t <= (-1.4d-269)) then
tmp = t_1
else if (t <= 3.1d-273) then
tmp = x + (((y - x) * z) / a)
else if (t <= 3.5d-82) then
tmp = t_1
else if (t <= 1.26d+48) then
tmp = x + (y * ((z - t) / (a - t)))
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 = x + (z * ((y - x) / (a - t)));
double t_2 = y + ((y - x) * ((a - z) / t));
double tmp;
if (t <= -4.5e+30) {
tmp = t_2;
} else if (t <= -1.02e-51) {
tmp = t_1;
} else if (t <= -7e-70) {
tmp = x + (y * (-1.0 / (a / (t - z))));
} else if (t <= -1.05e-208) {
tmp = t_1;
} else if (t <= -1e-208) {
tmp = y * (t / -a);
} else if (t <= -1.4e-269) {
tmp = t_1;
} else if (t <= 3.1e-273) {
tmp = x + (((y - x) * z) / a);
} else if (t <= 3.5e-82) {
tmp = t_1;
} else if (t <= 1.26e+48) {
tmp = x + (y * ((z - t) / (a - t)));
} else {
tmp = t_2;
}
return tmp;
}
def code(x, y, z, t, a): t_1 = x + (z * ((y - x) / (a - t))) t_2 = y + ((y - x) * ((a - z) / t)) tmp = 0 if t <= -4.5e+30: tmp = t_2 elif t <= -1.02e-51: tmp = t_1 elif t <= -7e-70: tmp = x + (y * (-1.0 / (a / (t - z)))) elif t <= -1.05e-208: tmp = t_1 elif t <= -1e-208: tmp = y * (t / -a) elif t <= -1.4e-269: tmp = t_1 elif t <= 3.1e-273: tmp = x + (((y - x) * z) / a) elif t <= 3.5e-82: tmp = t_1 elif t <= 1.26e+48: tmp = x + (y * ((z - t) / (a - t))) else: tmp = t_2 return tmp
function code(x, y, z, t, a) t_1 = Float64(x + Float64(z * Float64(Float64(y - x) / Float64(a - t)))) t_2 = Float64(y + Float64(Float64(y - x) * Float64(Float64(a - z) / t))) tmp = 0.0 if (t <= -4.5e+30) tmp = t_2; elseif (t <= -1.02e-51) tmp = t_1; elseif (t <= -7e-70) tmp = Float64(x + Float64(y * Float64(-1.0 / Float64(a / Float64(t - z))))); elseif (t <= -1.05e-208) tmp = t_1; elseif (t <= -1e-208) tmp = Float64(y * Float64(t / Float64(-a))); elseif (t <= -1.4e-269) tmp = t_1; elseif (t <= 3.1e-273) tmp = Float64(x + Float64(Float64(Float64(y - x) * z) / a)); elseif (t <= 3.5e-82) tmp = t_1; elseif (t <= 1.26e+48) tmp = Float64(x + Float64(y * Float64(Float64(z - t) / Float64(a - t)))); else tmp = t_2; end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = x + (z * ((y - x) / (a - t))); t_2 = y + ((y - x) * ((a - z) / t)); tmp = 0.0; if (t <= -4.5e+30) tmp = t_2; elseif (t <= -1.02e-51) tmp = t_1; elseif (t <= -7e-70) tmp = x + (y * (-1.0 / (a / (t - z)))); elseif (t <= -1.05e-208) tmp = t_1; elseif (t <= -1e-208) tmp = y * (t / -a); elseif (t <= -1.4e-269) tmp = t_1; elseif (t <= 3.1e-273) tmp = x + (((y - x) * z) / a); elseif (t <= 3.5e-82) tmp = t_1; elseif (t <= 1.26e+48) tmp = x + (y * ((z - t) / (a - t))); else tmp = t_2; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(x + N[(z * N[(N[(y - x), $MachinePrecision] / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(y + N[(N[(y - x), $MachinePrecision] * N[(N[(a - z), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t, -4.5e+30], t$95$2, If[LessEqual[t, -1.02e-51], t$95$1, If[LessEqual[t, -7e-70], N[(x + N[(y * N[(-1.0 / N[(a / N[(t - z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -1.05e-208], t$95$1, If[LessEqual[t, -1e-208], N[(y * N[(t / (-a)), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -1.4e-269], t$95$1, If[LessEqual[t, 3.1e-273], N[(x + N[(N[(N[(y - x), $MachinePrecision] * z), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 3.5e-82], t$95$1, If[LessEqual[t, 1.26e+48], N[(x + N[(y * N[(N[(z - t), $MachinePrecision] / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], t$95$2]]]]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := x + z \cdot \frac{y - x}{a - t}\\
t_2 := y + \left(y - x\right) \cdot \frac{a - z}{t}\\
\mathbf{if}\;t \leq -4.5 \cdot 10^{+30}:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;t \leq -1.02 \cdot 10^{-51}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq -7 \cdot 10^{-70}:\\
\;\;\;\;x + y \cdot \frac{-1}{\frac{a}{t - z}}\\
\mathbf{elif}\;t \leq -1.05 \cdot 10^{-208}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq -1 \cdot 10^{-208}:\\
\;\;\;\;y \cdot \frac{t}{-a}\\
\mathbf{elif}\;t \leq -1.4 \cdot 10^{-269}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq 3.1 \cdot 10^{-273}:\\
\;\;\;\;x + \frac{\left(y - x\right) \cdot z}{a}\\
\mathbf{elif}\;t \leq 3.5 \cdot 10^{-82}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq 1.26 \cdot 10^{+48}:\\
\;\;\;\;x + y \cdot \frac{z - t}{a - t}\\
\mathbf{else}:\\
\;\;\;\;t\_2\\
\end{array}
\end{array}
if t < -4.49999999999999995e30 or 1.26000000000000001e48 < t Initial program 38.0%
Taylor expanded in x around 0 53.7%
+-commutative53.7%
+-commutative53.7%
distribute-lft-in53.7%
mul-1-neg53.7%
distribute-rgt-neg-in53.7%
associate-/l*39.5%
mul-1-neg39.5%
*-rgt-identity39.5%
associate-+l+36.9%
Simplified66.0%
Taylor expanded in t around inf 68.9%
cancel-sign-sub-inv68.9%
mul-1-neg68.9%
sub-neg68.9%
metadata-eval68.9%
*-lft-identity68.9%
*-commutative68.9%
associate-+l-68.9%
div-sub68.9%
*-commutative68.9%
distribute-rgt-out--69.2%
associate-*r/85.0%
Simplified85.0%
if -4.49999999999999995e30 < t < -1.01999999999999998e-51 or -6.99999999999999949e-70 < t < -1.05000000000000006e-208 or -1.0000000000000001e-208 < t < -1.39999999999999997e-269 or 3.09999999999999988e-273 < t < 3.4999999999999999e-82Initial program 88.2%
Taylor expanded in z around inf 82.8%
associate-/l*88.6%
Simplified88.6%
if -1.01999999999999998e-51 < t < -6.99999999999999949e-70Initial program 80.6%
Taylor expanded in y around inf 76.9%
associate-/l*95.9%
Simplified95.9%
clear-num95.9%
inv-pow95.9%
Applied egg-rr95.9%
unpow-195.9%
Simplified95.9%
Taylor expanded in a around inf 95.9%
if -1.05000000000000006e-208 < t < -1.0000000000000001e-208Initial program 98.4%
Taylor expanded in y around inf 98.4%
associate-/l*100.0%
Simplified100.0%
clear-num100.0%
inv-pow100.0%
Applied egg-rr100.0%
unpow-1100.0%
Simplified100.0%
Taylor expanded in z around 0 98.4%
mul-1-neg98.4%
unsub-neg98.4%
associate-/l*98.4%
Simplified98.4%
Taylor expanded in t around 0 98.4%
associate-/l*98.4%
Simplified98.4%
Taylor expanded in x around 0 98.4%
mul-1-neg98.4%
*-commutative98.4%
distribute-frac-neg298.4%
associate-/l*100.0%
Simplified100.0%
if -1.39999999999999997e-269 < t < 3.09999999999999988e-273Initial program 100.0%
Taylor expanded in t around 0 100.0%
if 3.4999999999999999e-82 < t < 1.26000000000000001e48Initial program 80.3%
Taylor expanded in y around inf 69.4%
associate-/l*77.0%
Simplified77.0%
Final simplification86.8%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (+ x (* t (/ y (- t a))))) (t_2 (* y (/ (- z t) (- a t)))))
(if (<= t -3.7e+158)
(/ y (/ (- a t) (- z t)))
(if (<= t -5.2e+25)
(- y (/ (* (- y x) z) t))
(if (<= t -1e+14)
t_1
(if (<= t -6e-103)
(* z (/ (- y x) (- a t)))
(if (<= t 1.35e-61)
(+ x (* z (/ (- y x) a)))
(if (<= t 30000.0)
t_2
(if (<= t 420000000000.0)
x
(if (<= t 6e+77)
t_2
(if (<= t 1.12e+116)
t_1
(+ y (* (- y x) (/ a t))))))))))))))
double code(double x, double y, double z, double t, double a) {
double t_1 = x + (t * (y / (t - a)));
double t_2 = y * ((z - t) / (a - t));
double tmp;
if (t <= -3.7e+158) {
tmp = y / ((a - t) / (z - t));
} else if (t <= -5.2e+25) {
tmp = y - (((y - x) * z) / t);
} else if (t <= -1e+14) {
tmp = t_1;
} else if (t <= -6e-103) {
tmp = z * ((y - x) / (a - t));
} else if (t <= 1.35e-61) {
tmp = x + (z * ((y - x) / a));
} else if (t <= 30000.0) {
tmp = t_2;
} else if (t <= 420000000000.0) {
tmp = x;
} else if (t <= 6e+77) {
tmp = t_2;
} else if (t <= 1.12e+116) {
tmp = t_1;
} else {
tmp = y + ((y - x) * (a / 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) :: t_1
real(8) :: t_2
real(8) :: tmp
t_1 = x + (t * (y / (t - a)))
t_2 = y * ((z - t) / (a - t))
if (t <= (-3.7d+158)) then
tmp = y / ((a - t) / (z - t))
else if (t <= (-5.2d+25)) then
tmp = y - (((y - x) * z) / t)
else if (t <= (-1d+14)) then
tmp = t_1
else if (t <= (-6d-103)) then
tmp = z * ((y - x) / (a - t))
else if (t <= 1.35d-61) then
tmp = x + (z * ((y - x) / a))
else if (t <= 30000.0d0) then
tmp = t_2
else if (t <= 420000000000.0d0) then
tmp = x
else if (t <= 6d+77) then
tmp = t_2
else if (t <= 1.12d+116) then
tmp = t_1
else
tmp = y + ((y - x) * (a / t))
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double t_1 = x + (t * (y / (t - a)));
double t_2 = y * ((z - t) / (a - t));
double tmp;
if (t <= -3.7e+158) {
tmp = y / ((a - t) / (z - t));
} else if (t <= -5.2e+25) {
tmp = y - (((y - x) * z) / t);
} else if (t <= -1e+14) {
tmp = t_1;
} else if (t <= -6e-103) {
tmp = z * ((y - x) / (a - t));
} else if (t <= 1.35e-61) {
tmp = x + (z * ((y - x) / a));
} else if (t <= 30000.0) {
tmp = t_2;
} else if (t <= 420000000000.0) {
tmp = x;
} else if (t <= 6e+77) {
tmp = t_2;
} else if (t <= 1.12e+116) {
tmp = t_1;
} else {
tmp = y + ((y - x) * (a / t));
}
return tmp;
}
def code(x, y, z, t, a): t_1 = x + (t * (y / (t - a))) t_2 = y * ((z - t) / (a - t)) tmp = 0 if t <= -3.7e+158: tmp = y / ((a - t) / (z - t)) elif t <= -5.2e+25: tmp = y - (((y - x) * z) / t) elif t <= -1e+14: tmp = t_1 elif t <= -6e-103: tmp = z * ((y - x) / (a - t)) elif t <= 1.35e-61: tmp = x + (z * ((y - x) / a)) elif t <= 30000.0: tmp = t_2 elif t <= 420000000000.0: tmp = x elif t <= 6e+77: tmp = t_2 elif t <= 1.12e+116: tmp = t_1 else: tmp = y + ((y - x) * (a / t)) return tmp
function code(x, y, z, t, a) t_1 = Float64(x + Float64(t * Float64(y / Float64(t - a)))) t_2 = Float64(y * Float64(Float64(z - t) / Float64(a - t))) tmp = 0.0 if (t <= -3.7e+158) tmp = Float64(y / Float64(Float64(a - t) / Float64(z - t))); elseif (t <= -5.2e+25) tmp = Float64(y - Float64(Float64(Float64(y - x) * z) / t)); elseif (t <= -1e+14) tmp = t_1; elseif (t <= -6e-103) tmp = Float64(z * Float64(Float64(y - x) / Float64(a - t))); elseif (t <= 1.35e-61) tmp = Float64(x + Float64(z * Float64(Float64(y - x) / a))); elseif (t <= 30000.0) tmp = t_2; elseif (t <= 420000000000.0) tmp = x; elseif (t <= 6e+77) tmp = t_2; elseif (t <= 1.12e+116) tmp = t_1; else tmp = Float64(y + Float64(Float64(y - x) * Float64(a / t))); end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = x + (t * (y / (t - a))); t_2 = y * ((z - t) / (a - t)); tmp = 0.0; if (t <= -3.7e+158) tmp = y / ((a - t) / (z - t)); elseif (t <= -5.2e+25) tmp = y - (((y - x) * z) / t); elseif (t <= -1e+14) tmp = t_1; elseif (t <= -6e-103) tmp = z * ((y - x) / (a - t)); elseif (t <= 1.35e-61) tmp = x + (z * ((y - x) / a)); elseif (t <= 30000.0) tmp = t_2; elseif (t <= 420000000000.0) tmp = x; elseif (t <= 6e+77) tmp = t_2; elseif (t <= 1.12e+116) tmp = t_1; else tmp = y + ((y - x) * (a / t)); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(x + N[(t * N[(y / N[(t - a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(y * N[(N[(z - t), $MachinePrecision] / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t, -3.7e+158], N[(y / N[(N[(a - t), $MachinePrecision] / N[(z - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -5.2e+25], N[(y - N[(N[(N[(y - x), $MachinePrecision] * z), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -1e+14], t$95$1, If[LessEqual[t, -6e-103], N[(z * N[(N[(y - x), $MachinePrecision] / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 1.35e-61], N[(x + N[(z * N[(N[(y - x), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 30000.0], t$95$2, If[LessEqual[t, 420000000000.0], x, If[LessEqual[t, 6e+77], t$95$2, If[LessEqual[t, 1.12e+116], t$95$1, N[(y + N[(N[(y - x), $MachinePrecision] * N[(a / t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := x + t \cdot \frac{y}{t - a}\\
t_2 := y \cdot \frac{z - t}{a - t}\\
\mathbf{if}\;t \leq -3.7 \cdot 10^{+158}:\\
\;\;\;\;\frac{y}{\frac{a - t}{z - t}}\\
\mathbf{elif}\;t \leq -5.2 \cdot 10^{+25}:\\
\;\;\;\;y - \frac{\left(y - x\right) \cdot z}{t}\\
\mathbf{elif}\;t \leq -1 \cdot 10^{+14}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq -6 \cdot 10^{-103}:\\
\;\;\;\;z \cdot \frac{y - x}{a - t}\\
\mathbf{elif}\;t \leq 1.35 \cdot 10^{-61}:\\
\;\;\;\;x + z \cdot \frac{y - x}{a}\\
\mathbf{elif}\;t \leq 30000:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;t \leq 420000000000:\\
\;\;\;\;x\\
\mathbf{elif}\;t \leq 6 \cdot 10^{+77}:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;t \leq 1.12 \cdot 10^{+116}:\\
\;\;\;\;t\_1\\
\mathbf{else}:\\
\;\;\;\;y + \left(y - x\right) \cdot \frac{a}{t}\\
\end{array}
\end{array}
if t < -3.70000000000000011e158Initial program 29.6%
Taylor expanded in x around 0 47.3%
+-commutative47.3%
+-commutative47.3%
distribute-lft-in47.3%
mul-1-neg47.3%
distribute-rgt-neg-in47.3%
associate-/l*29.1%
mul-1-neg29.1%
*-rgt-identity29.1%
associate-+l+29.1%
Simplified71.4%
Taylor expanded in y around inf 81.0%
div-sub81.0%
Simplified81.0%
clear-num69.0%
un-div-inv69.0%
Applied egg-rr81.1%
if -3.70000000000000011e158 < t < -5.1999999999999997e25Initial program 64.8%
Taylor expanded in t around inf 77.4%
associate--l+77.4%
distribute-lft-out--77.4%
div-sub77.4%
mul-1-neg77.4%
unsub-neg77.4%
div-sub77.4%
associate-/l*80.7%
associate-/l*80.6%
distribute-rgt-out--80.6%
Simplified80.6%
Taylor expanded in z around inf 67.9%
if -5.1999999999999997e25 < t < -1e14 or 5.9999999999999996e77 < t < 1.12e116Initial program 45.7%
Taylor expanded in y around inf 59.1%
associate-/l*85.5%
Simplified85.5%
clear-num85.8%
inv-pow85.8%
Applied egg-rr85.8%
unpow-185.8%
Simplified85.8%
Taylor expanded in z around 0 59.1%
mul-1-neg59.1%
unsub-neg59.1%
associate-/l*85.5%
Simplified85.5%
if -1e14 < t < -6e-103Initial program 84.5%
Taylor expanded in x around 0 84.6%
+-commutative84.6%
+-commutative84.6%
distribute-lft-in84.7%
mul-1-neg84.7%
distribute-rgt-neg-in84.7%
associate-/l*84.1%
mul-1-neg84.1%
*-rgt-identity84.1%
associate-+l+84.2%
Simplified92.7%
Taylor expanded in z around inf 68.9%
div-sub68.9%
Simplified68.9%
if -6e-103 < t < 1.34999999999999997e-61Initial program 91.9%
Taylor expanded in t around 0 74.1%
associate-/l*78.1%
Simplified78.1%
if 1.34999999999999997e-61 < t < 3e4 or 4.2e11 < t < 5.9999999999999996e77Initial program 68.9%
Taylor expanded in x around 0 69.6%
+-commutative69.6%
+-commutative69.6%
distribute-lft-in69.6%
mul-1-neg69.6%
distribute-rgt-neg-in69.6%
associate-/l*69.4%
mul-1-neg69.4%
*-rgt-identity69.4%
associate-+l+68.9%
Simplified83.9%
Taylor expanded in y around inf 66.0%
div-sub66.0%
Simplified66.0%
if 3e4 < t < 4.2e11Initial program 100.0%
Taylor expanded in a around inf 100.0%
if 1.12e116 < t Initial program 24.7%
Taylor expanded in t around inf 77.5%
associate--l+77.5%
distribute-lft-out--77.5%
div-sub77.5%
mul-1-neg77.5%
unsub-neg77.5%
div-sub77.5%
associate-/l*83.5%
associate-/l*86.3%
distribute-rgt-out--86.3%
Simplified86.3%
Taylor expanded in z around 0 74.8%
cancel-sign-sub-inv74.8%
metadata-eval74.8%
*-lft-identity74.8%
*-commutative74.8%
associate-/l*79.0%
Simplified79.0%
Final simplification75.7%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (* y (/ (- z t) (- a t)))) (t_2 (+ x (* t (/ y (- t a))))))
(if (<= t -1.5e+159)
t_1
(if (<= t -1.25e+26)
(- y (/ (* (- y x) z) t))
(if (<= t -66000000000.0)
t_2
(if (<= t -7.5e-103)
(* z (/ (- y x) (- a t)))
(if (<= t 1.5e-64)
(+ x (* z (/ (- y x) a)))
(if (<= t 49000.0)
t_1
(if (<= t 2500000000000.0)
x
(if (<= t 4.4e+78)
t_1
(if (<= t 4.2e+116) t_2 (+ y (* (- y x) (/ a t))))))))))))))
double code(double x, double y, double z, double t, double a) {
double t_1 = y * ((z - t) / (a - t));
double t_2 = x + (t * (y / (t - a)));
double tmp;
if (t <= -1.5e+159) {
tmp = t_1;
} else if (t <= -1.25e+26) {
tmp = y - (((y - x) * z) / t);
} else if (t <= -66000000000.0) {
tmp = t_2;
} else if (t <= -7.5e-103) {
tmp = z * ((y - x) / (a - t));
} else if (t <= 1.5e-64) {
tmp = x + (z * ((y - x) / a));
} else if (t <= 49000.0) {
tmp = t_1;
} else if (t <= 2500000000000.0) {
tmp = x;
} else if (t <= 4.4e+78) {
tmp = t_1;
} else if (t <= 4.2e+116) {
tmp = t_2;
} else {
tmp = y + ((y - x) * (a / 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) :: t_1
real(8) :: t_2
real(8) :: tmp
t_1 = y * ((z - t) / (a - t))
t_2 = x + (t * (y / (t - a)))
if (t <= (-1.5d+159)) then
tmp = t_1
else if (t <= (-1.25d+26)) then
tmp = y - (((y - x) * z) / t)
else if (t <= (-66000000000.0d0)) then
tmp = t_2
else if (t <= (-7.5d-103)) then
tmp = z * ((y - x) / (a - t))
else if (t <= 1.5d-64) then
tmp = x + (z * ((y - x) / a))
else if (t <= 49000.0d0) then
tmp = t_1
else if (t <= 2500000000000.0d0) then
tmp = x
else if (t <= 4.4d+78) then
tmp = t_1
else if (t <= 4.2d+116) then
tmp = t_2
else
tmp = y + ((y - x) * (a / t))
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double t_1 = y * ((z - t) / (a - t));
double t_2 = x + (t * (y / (t - a)));
double tmp;
if (t <= -1.5e+159) {
tmp = t_1;
} else if (t <= -1.25e+26) {
tmp = y - (((y - x) * z) / t);
} else if (t <= -66000000000.0) {
tmp = t_2;
} else if (t <= -7.5e-103) {
tmp = z * ((y - x) / (a - t));
} else if (t <= 1.5e-64) {
tmp = x + (z * ((y - x) / a));
} else if (t <= 49000.0) {
tmp = t_1;
} else if (t <= 2500000000000.0) {
tmp = x;
} else if (t <= 4.4e+78) {
tmp = t_1;
} else if (t <= 4.2e+116) {
tmp = t_2;
} else {
tmp = y + ((y - x) * (a / t));
}
return tmp;
}
def code(x, y, z, t, a): t_1 = y * ((z - t) / (a - t)) t_2 = x + (t * (y / (t - a))) tmp = 0 if t <= -1.5e+159: tmp = t_1 elif t <= -1.25e+26: tmp = y - (((y - x) * z) / t) elif t <= -66000000000.0: tmp = t_2 elif t <= -7.5e-103: tmp = z * ((y - x) / (a - t)) elif t <= 1.5e-64: tmp = x + (z * ((y - x) / a)) elif t <= 49000.0: tmp = t_1 elif t <= 2500000000000.0: tmp = x elif t <= 4.4e+78: tmp = t_1 elif t <= 4.2e+116: tmp = t_2 else: tmp = y + ((y - x) * (a / t)) return tmp
function code(x, y, z, t, a) t_1 = Float64(y * Float64(Float64(z - t) / Float64(a - t))) t_2 = Float64(x + Float64(t * Float64(y / Float64(t - a)))) tmp = 0.0 if (t <= -1.5e+159) tmp = t_1; elseif (t <= -1.25e+26) tmp = Float64(y - Float64(Float64(Float64(y - x) * z) / t)); elseif (t <= -66000000000.0) tmp = t_2; elseif (t <= -7.5e-103) tmp = Float64(z * Float64(Float64(y - x) / Float64(a - t))); elseif (t <= 1.5e-64) tmp = Float64(x + Float64(z * Float64(Float64(y - x) / a))); elseif (t <= 49000.0) tmp = t_1; elseif (t <= 2500000000000.0) tmp = x; elseif (t <= 4.4e+78) tmp = t_1; elseif (t <= 4.2e+116) tmp = t_2; else tmp = Float64(y + Float64(Float64(y - x) * Float64(a / t))); end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = y * ((z - t) / (a - t)); t_2 = x + (t * (y / (t - a))); tmp = 0.0; if (t <= -1.5e+159) tmp = t_1; elseif (t <= -1.25e+26) tmp = y - (((y - x) * z) / t); elseif (t <= -66000000000.0) tmp = t_2; elseif (t <= -7.5e-103) tmp = z * ((y - x) / (a - t)); elseif (t <= 1.5e-64) tmp = x + (z * ((y - x) / a)); elseif (t <= 49000.0) tmp = t_1; elseif (t <= 2500000000000.0) tmp = x; elseif (t <= 4.4e+78) tmp = t_1; elseif (t <= 4.2e+116) tmp = t_2; else tmp = y + ((y - x) * (a / t)); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(y * N[(N[(z - t), $MachinePrecision] / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(x + N[(t * N[(y / N[(t - a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t, -1.5e+159], t$95$1, If[LessEqual[t, -1.25e+26], N[(y - N[(N[(N[(y - x), $MachinePrecision] * z), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -66000000000.0], t$95$2, If[LessEqual[t, -7.5e-103], N[(z * N[(N[(y - x), $MachinePrecision] / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 1.5e-64], N[(x + N[(z * N[(N[(y - x), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 49000.0], t$95$1, If[LessEqual[t, 2500000000000.0], x, If[LessEqual[t, 4.4e+78], t$95$1, If[LessEqual[t, 4.2e+116], t$95$2, N[(y + N[(N[(y - x), $MachinePrecision] * N[(a / t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := y \cdot \frac{z - t}{a - t}\\
t_2 := x + t \cdot \frac{y}{t - a}\\
\mathbf{if}\;t \leq -1.5 \cdot 10^{+159}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq -1.25 \cdot 10^{+26}:\\
\;\;\;\;y - \frac{\left(y - x\right) \cdot z}{t}\\
\mathbf{elif}\;t \leq -66000000000:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;t \leq -7.5 \cdot 10^{-103}:\\
\;\;\;\;z \cdot \frac{y - x}{a - t}\\
\mathbf{elif}\;t \leq 1.5 \cdot 10^{-64}:\\
\;\;\;\;x + z \cdot \frac{y - x}{a}\\
\mathbf{elif}\;t \leq 49000:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq 2500000000000:\\
\;\;\;\;x\\
\mathbf{elif}\;t \leq 4.4 \cdot 10^{+78}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq 4.2 \cdot 10^{+116}:\\
\;\;\;\;t\_2\\
\mathbf{else}:\\
\;\;\;\;y + \left(y - x\right) \cdot \frac{a}{t}\\
\end{array}
\end{array}
if t < -1.5000000000000001e159 or 1.5e-64 < t < 49000 or 2.5e12 < t < 4.40000000000000028e78Initial program 48.5%
Taylor expanded in x around 0 58.0%
+-commutative58.0%
+-commutative58.0%
distribute-lft-in58.0%
mul-1-neg58.0%
distribute-rgt-neg-in58.0%
associate-/l*48.5%
mul-1-neg48.5%
*-rgt-identity48.5%
associate-+l+48.2%
Simplified77.4%
Taylor expanded in y around inf 73.8%
div-sub73.8%
Simplified73.8%
if -1.5000000000000001e159 < t < -1.25e26Initial program 64.8%
Taylor expanded in t around inf 77.4%
associate--l+77.4%
distribute-lft-out--77.4%
div-sub77.4%
mul-1-neg77.4%
unsub-neg77.4%
div-sub77.4%
associate-/l*80.7%
associate-/l*80.6%
distribute-rgt-out--80.6%
Simplified80.6%
Taylor expanded in z around inf 67.9%
if -1.25e26 < t < -6.6e10 or 4.40000000000000028e78 < t < 4.2000000000000002e116Initial program 45.7%
Taylor expanded in y around inf 59.1%
associate-/l*85.5%
Simplified85.5%
clear-num85.8%
inv-pow85.8%
Applied egg-rr85.8%
unpow-185.8%
Simplified85.8%
Taylor expanded in z around 0 59.1%
mul-1-neg59.1%
unsub-neg59.1%
associate-/l*85.5%
Simplified85.5%
if -6.6e10 < t < -7.5e-103Initial program 84.5%
Taylor expanded in x around 0 84.6%
+-commutative84.6%
+-commutative84.6%
distribute-lft-in84.7%
mul-1-neg84.7%
distribute-rgt-neg-in84.7%
associate-/l*84.1%
mul-1-neg84.1%
*-rgt-identity84.1%
associate-+l+84.2%
Simplified92.7%
Taylor expanded in z around inf 68.9%
div-sub68.9%
Simplified68.9%
if -7.5e-103 < t < 1.5e-64Initial program 91.9%
Taylor expanded in t around 0 74.1%
associate-/l*78.1%
Simplified78.1%
if 49000 < t < 2.5e12Initial program 100.0%
Taylor expanded in a around inf 100.0%
if 4.2000000000000002e116 < t Initial program 24.7%
Taylor expanded in t around inf 77.5%
associate--l+77.5%
distribute-lft-out--77.5%
div-sub77.5%
mul-1-neg77.5%
unsub-neg77.5%
div-sub77.5%
associate-/l*83.5%
associate-/l*86.3%
distribute-rgt-out--86.3%
Simplified86.3%
Taylor expanded in z around 0 74.8%
cancel-sign-sub-inv74.8%
metadata-eval74.8%
*-lft-identity74.8%
*-commutative74.8%
associate-/l*79.0%
Simplified79.0%
Final simplification75.7%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (* y (/ (- z t) (- a t)))) (t_2 (+ x (* z (/ (- y x) a)))))
(if (<= t -2.15e-17)
t_1
(if (<= t -9.2e-93)
(* z (/ (- y x) (- a t)))
(if (<= t -6.5e-155)
t_2
(if (<= t -4.9e-224)
(- x (/ (* x z) a))
(if (<= t -2.3e-227)
(* y (/ z (- a t)))
(if (<= t 6.2e-62)
t_2
(if (<= t 56000.0)
t_1
(if (<= t 750000000000.0)
x
(if (<= t 2.65e+122) t_1 (- y (* x (/ a t))))))))))))))
double code(double x, double y, double z, double t, double a) {
double t_1 = y * ((z - t) / (a - t));
double t_2 = x + (z * ((y - x) / a));
double tmp;
if (t <= -2.15e-17) {
tmp = t_1;
} else if (t <= -9.2e-93) {
tmp = z * ((y - x) / (a - t));
} else if (t <= -6.5e-155) {
tmp = t_2;
} else if (t <= -4.9e-224) {
tmp = x - ((x * z) / a);
} else if (t <= -2.3e-227) {
tmp = y * (z / (a - t));
} else if (t <= 6.2e-62) {
tmp = t_2;
} else if (t <= 56000.0) {
tmp = t_1;
} else if (t <= 750000000000.0) {
tmp = x;
} else if (t <= 2.65e+122) {
tmp = t_1;
} else {
tmp = y - (x * (a / 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) :: t_1
real(8) :: t_2
real(8) :: tmp
t_1 = y * ((z - t) / (a - t))
t_2 = x + (z * ((y - x) / a))
if (t <= (-2.15d-17)) then
tmp = t_1
else if (t <= (-9.2d-93)) then
tmp = z * ((y - x) / (a - t))
else if (t <= (-6.5d-155)) then
tmp = t_2
else if (t <= (-4.9d-224)) then
tmp = x - ((x * z) / a)
else if (t <= (-2.3d-227)) then
tmp = y * (z / (a - t))
else if (t <= 6.2d-62) then
tmp = t_2
else if (t <= 56000.0d0) then
tmp = t_1
else if (t <= 750000000000.0d0) then
tmp = x
else if (t <= 2.65d+122) then
tmp = t_1
else
tmp = y - (x * (a / t))
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double t_1 = y * ((z - t) / (a - t));
double t_2 = x + (z * ((y - x) / a));
double tmp;
if (t <= -2.15e-17) {
tmp = t_1;
} else if (t <= -9.2e-93) {
tmp = z * ((y - x) / (a - t));
} else if (t <= -6.5e-155) {
tmp = t_2;
} else if (t <= -4.9e-224) {
tmp = x - ((x * z) / a);
} else if (t <= -2.3e-227) {
tmp = y * (z / (a - t));
} else if (t <= 6.2e-62) {
tmp = t_2;
} else if (t <= 56000.0) {
tmp = t_1;
} else if (t <= 750000000000.0) {
tmp = x;
} else if (t <= 2.65e+122) {
tmp = t_1;
} else {
tmp = y - (x * (a / t));
}
return tmp;
}
def code(x, y, z, t, a): t_1 = y * ((z - t) / (a - t)) t_2 = x + (z * ((y - x) / a)) tmp = 0 if t <= -2.15e-17: tmp = t_1 elif t <= -9.2e-93: tmp = z * ((y - x) / (a - t)) elif t <= -6.5e-155: tmp = t_2 elif t <= -4.9e-224: tmp = x - ((x * z) / a) elif t <= -2.3e-227: tmp = y * (z / (a - t)) elif t <= 6.2e-62: tmp = t_2 elif t <= 56000.0: tmp = t_1 elif t <= 750000000000.0: tmp = x elif t <= 2.65e+122: tmp = t_1 else: tmp = y - (x * (a / t)) return tmp
function code(x, y, z, t, a) t_1 = Float64(y * Float64(Float64(z - t) / Float64(a - t))) t_2 = Float64(x + Float64(z * Float64(Float64(y - x) / a))) tmp = 0.0 if (t <= -2.15e-17) tmp = t_1; elseif (t <= -9.2e-93) tmp = Float64(z * Float64(Float64(y - x) / Float64(a - t))); elseif (t <= -6.5e-155) tmp = t_2; elseif (t <= -4.9e-224) tmp = Float64(x - Float64(Float64(x * z) / a)); elseif (t <= -2.3e-227) tmp = Float64(y * Float64(z / Float64(a - t))); elseif (t <= 6.2e-62) tmp = t_2; elseif (t <= 56000.0) tmp = t_1; elseif (t <= 750000000000.0) tmp = x; elseif (t <= 2.65e+122) tmp = t_1; else tmp = Float64(y - Float64(x * Float64(a / t))); end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = y * ((z - t) / (a - t)); t_2 = x + (z * ((y - x) / a)); tmp = 0.0; if (t <= -2.15e-17) tmp = t_1; elseif (t <= -9.2e-93) tmp = z * ((y - x) / (a - t)); elseif (t <= -6.5e-155) tmp = t_2; elseif (t <= -4.9e-224) tmp = x - ((x * z) / a); elseif (t <= -2.3e-227) tmp = y * (z / (a - t)); elseif (t <= 6.2e-62) tmp = t_2; elseif (t <= 56000.0) tmp = t_1; elseif (t <= 750000000000.0) tmp = x; elseif (t <= 2.65e+122) tmp = t_1; else tmp = y - (x * (a / t)); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(y * N[(N[(z - t), $MachinePrecision] / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(x + N[(z * N[(N[(y - x), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t, -2.15e-17], t$95$1, If[LessEqual[t, -9.2e-93], N[(z * N[(N[(y - x), $MachinePrecision] / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -6.5e-155], t$95$2, If[LessEqual[t, -4.9e-224], N[(x - N[(N[(x * z), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -2.3e-227], N[(y * N[(z / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 6.2e-62], t$95$2, If[LessEqual[t, 56000.0], t$95$1, If[LessEqual[t, 750000000000.0], x, If[LessEqual[t, 2.65e+122], t$95$1, N[(y - N[(x * N[(a / t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := y \cdot \frac{z - t}{a - t}\\
t_2 := x + z \cdot \frac{y - x}{a}\\
\mathbf{if}\;t \leq -2.15 \cdot 10^{-17}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq -9.2 \cdot 10^{-93}:\\
\;\;\;\;z \cdot \frac{y - x}{a - t}\\
\mathbf{elif}\;t \leq -6.5 \cdot 10^{-155}:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;t \leq -4.9 \cdot 10^{-224}:\\
\;\;\;\;x - \frac{x \cdot z}{a}\\
\mathbf{elif}\;t \leq -2.3 \cdot 10^{-227}:\\
\;\;\;\;y \cdot \frac{z}{a - t}\\
\mathbf{elif}\;t \leq 6.2 \cdot 10^{-62}:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;t \leq 56000:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq 750000000000:\\
\;\;\;\;x\\
\mathbf{elif}\;t \leq 2.65 \cdot 10^{+122}:\\
\;\;\;\;t\_1\\
\mathbf{else}:\\
\;\;\;\;y - x \cdot \frac{a}{t}\\
\end{array}
\end{array}
if t < -2.15000000000000012e-17 or 6.1999999999999999e-62 < t < 56000 or 7.5e11 < t < 2.65e122Initial program 55.1%
Taylor expanded in x around 0 64.1%
+-commutative64.1%
+-commutative64.1%
distribute-lft-in64.1%
mul-1-neg64.1%
distribute-rgt-neg-in64.1%
associate-/l*56.1%
mul-1-neg56.1%
*-rgt-identity56.1%
associate-+l+54.0%
Simplified77.5%
Taylor expanded in y around inf 66.0%
div-sub66.0%
Simplified66.0%
if -2.15000000000000012e-17 < t < -9.1999999999999993e-93Initial program 83.8%
Taylor expanded in x around 0 83.2%
+-commutative83.2%
+-commutative83.2%
distribute-lft-in83.2%
mul-1-neg83.2%
distribute-rgt-neg-in83.2%
associate-/l*83.3%
mul-1-neg83.3%
*-rgt-identity83.3%
associate-+l+83.4%
Simplified94.3%
Taylor expanded in z around inf 78.0%
div-sub78.0%
Simplified78.0%
if -9.1999999999999993e-93 < t < -6.5e-155 or -2.30000000000000012e-227 < t < 6.1999999999999999e-62Initial program 90.4%
Taylor expanded in t around 0 77.2%
associate-/l*83.2%
Simplified83.2%
if -6.5e-155 < t < -4.8999999999999996e-224Initial program 99.5%
Taylor expanded in t around 0 64.4%
Taylor expanded in y around 0 64.7%
mul-1-neg64.7%
distribute-lft-neg-out64.7%
*-commutative64.7%
Simplified64.7%
if -4.8999999999999996e-224 < t < -2.30000000000000012e-227Initial program 98.4%
Taylor expanded in x around 0 98.4%
+-commutative98.4%
+-commutative98.4%
distribute-lft-in98.4%
mul-1-neg98.4%
distribute-rgt-neg-in98.4%
associate-/l*98.4%
mul-1-neg98.4%
*-rgt-identity98.4%
associate-+l+98.4%
Simplified98.4%
Taylor expanded in y around inf 98.4%
div-sub98.4%
Simplified98.4%
Taylor expanded in z around inf 98.4%
associate-/l*98.4%
Simplified98.4%
if 56000 < t < 7.5e11Initial program 100.0%
Taylor expanded in a around inf 100.0%
if 2.65e122 < t Initial program 25.2%
Taylor expanded in t around inf 76.9%
associate--l+76.9%
distribute-lft-out--76.9%
div-sub76.9%
mul-1-neg76.9%
unsub-neg76.9%
div-sub76.9%
associate-/l*83.2%
associate-/l*86.0%
distribute-rgt-out--86.0%
Simplified86.0%
*-commutative86.0%
clear-num86.0%
un-div-inv85.9%
Applied egg-rr85.9%
Taylor expanded in y around 0 83.0%
mul-1-neg83.0%
associate-/l*82.6%
Simplified82.6%
Taylor expanded in z around 0 78.5%
mul-1-neg78.5%
*-commutative78.5%
associate-*r/78.0%
unsub-neg78.0%
Simplified78.0%
Final simplification74.6%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (* z (/ (- x y) t))))
(if (<= t -3.7e+219)
y
(if (<= t -2.4e+156)
t_1
(if (<= t -2.3e+121)
y
(if (<= t -5.2e+81)
t_1
(if (<= t -2.7e+33)
(* x (/ (- z a) t))
(if (<= t -0.043)
t_1
(if (<= t -5.6e-173)
(+ x (/ y (/ a z)))
(if (<= t -4.2e-253)
(* x (- 1.0 (/ z a)))
(if (<= t 1.05e-80) (+ x (* y (/ z a))) y)))))))))))
double code(double x, double y, double z, double t, double a) {
double t_1 = z * ((x - y) / t);
double tmp;
if (t <= -3.7e+219) {
tmp = y;
} else if (t <= -2.4e+156) {
tmp = t_1;
} else if (t <= -2.3e+121) {
tmp = y;
} else if (t <= -5.2e+81) {
tmp = t_1;
} else if (t <= -2.7e+33) {
tmp = x * ((z - a) / t);
} else if (t <= -0.043) {
tmp = t_1;
} else if (t <= -5.6e-173) {
tmp = x + (y / (a / z));
} else if (t <= -4.2e-253) {
tmp = x * (1.0 - (z / a));
} else if (t <= 1.05e-80) {
tmp = x + (y * (z / a));
} else {
tmp = y;
}
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 = z * ((x - y) / t)
if (t <= (-3.7d+219)) then
tmp = y
else if (t <= (-2.4d+156)) then
tmp = t_1
else if (t <= (-2.3d+121)) then
tmp = y
else if (t <= (-5.2d+81)) then
tmp = t_1
else if (t <= (-2.7d+33)) then
tmp = x * ((z - a) / t)
else if (t <= (-0.043d0)) then
tmp = t_1
else if (t <= (-5.6d-173)) then
tmp = x + (y / (a / z))
else if (t <= (-4.2d-253)) then
tmp = x * (1.0d0 - (z / a))
else if (t <= 1.05d-80) then
tmp = x + (y * (z / a))
else
tmp = y
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double t_1 = z * ((x - y) / t);
double tmp;
if (t <= -3.7e+219) {
tmp = y;
} else if (t <= -2.4e+156) {
tmp = t_1;
} else if (t <= -2.3e+121) {
tmp = y;
} else if (t <= -5.2e+81) {
tmp = t_1;
} else if (t <= -2.7e+33) {
tmp = x * ((z - a) / t);
} else if (t <= -0.043) {
tmp = t_1;
} else if (t <= -5.6e-173) {
tmp = x + (y / (a / z));
} else if (t <= -4.2e-253) {
tmp = x * (1.0 - (z / a));
} else if (t <= 1.05e-80) {
tmp = x + (y * (z / a));
} else {
tmp = y;
}
return tmp;
}
def code(x, y, z, t, a): t_1 = z * ((x - y) / t) tmp = 0 if t <= -3.7e+219: tmp = y elif t <= -2.4e+156: tmp = t_1 elif t <= -2.3e+121: tmp = y elif t <= -5.2e+81: tmp = t_1 elif t <= -2.7e+33: tmp = x * ((z - a) / t) elif t <= -0.043: tmp = t_1 elif t <= -5.6e-173: tmp = x + (y / (a / z)) elif t <= -4.2e-253: tmp = x * (1.0 - (z / a)) elif t <= 1.05e-80: tmp = x + (y * (z / a)) else: tmp = y return tmp
function code(x, y, z, t, a) t_1 = Float64(z * Float64(Float64(x - y) / t)) tmp = 0.0 if (t <= -3.7e+219) tmp = y; elseif (t <= -2.4e+156) tmp = t_1; elseif (t <= -2.3e+121) tmp = y; elseif (t <= -5.2e+81) tmp = t_1; elseif (t <= -2.7e+33) tmp = Float64(x * Float64(Float64(z - a) / t)); elseif (t <= -0.043) tmp = t_1; elseif (t <= -5.6e-173) tmp = Float64(x + Float64(y / Float64(a / z))); elseif (t <= -4.2e-253) tmp = Float64(x * Float64(1.0 - Float64(z / a))); elseif (t <= 1.05e-80) tmp = Float64(x + Float64(y * Float64(z / a))); else tmp = y; end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = z * ((x - y) / t); tmp = 0.0; if (t <= -3.7e+219) tmp = y; elseif (t <= -2.4e+156) tmp = t_1; elseif (t <= -2.3e+121) tmp = y; elseif (t <= -5.2e+81) tmp = t_1; elseif (t <= -2.7e+33) tmp = x * ((z - a) / t); elseif (t <= -0.043) tmp = t_1; elseif (t <= -5.6e-173) tmp = x + (y / (a / z)); elseif (t <= -4.2e-253) tmp = x * (1.0 - (z / a)); elseif (t <= 1.05e-80) tmp = x + (y * (z / a)); else tmp = y; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(z * N[(N[(x - y), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t, -3.7e+219], y, If[LessEqual[t, -2.4e+156], t$95$1, If[LessEqual[t, -2.3e+121], y, If[LessEqual[t, -5.2e+81], t$95$1, If[LessEqual[t, -2.7e+33], N[(x * N[(N[(z - a), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -0.043], t$95$1, If[LessEqual[t, -5.6e-173], N[(x + N[(y / N[(a / z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -4.2e-253], N[(x * N[(1.0 - N[(z / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 1.05e-80], N[(x + N[(y * N[(z / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], y]]]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := z \cdot \frac{x - y}{t}\\
\mathbf{if}\;t \leq -3.7 \cdot 10^{+219}:\\
\;\;\;\;y\\
\mathbf{elif}\;t \leq -2.4 \cdot 10^{+156}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq -2.3 \cdot 10^{+121}:\\
\;\;\;\;y\\
\mathbf{elif}\;t \leq -5.2 \cdot 10^{+81}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq -2.7 \cdot 10^{+33}:\\
\;\;\;\;x \cdot \frac{z - a}{t}\\
\mathbf{elif}\;t \leq -0.043:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq -5.6 \cdot 10^{-173}:\\
\;\;\;\;x + \frac{y}{\frac{a}{z}}\\
\mathbf{elif}\;t \leq -4.2 \cdot 10^{-253}:\\
\;\;\;\;x \cdot \left(1 - \frac{z}{a}\right)\\
\mathbf{elif}\;t \leq 1.05 \cdot 10^{-80}:\\
\;\;\;\;x + y \cdot \frac{z}{a}\\
\mathbf{else}:\\
\;\;\;\;y\\
\end{array}
\end{array}
if t < -3.7e219 or -2.4000000000000001e156 < t < -2.2999999999999999e121 or 1.05000000000000001e-80 < t Initial program 44.5%
Taylor expanded in t around inf 56.1%
if -3.7e219 < t < -2.4000000000000001e156 or -2.2999999999999999e121 < t < -5.19999999999999984e81 or -2.69999999999999991e33 < t < -0.042999999999999997Initial program 55.9%
Taylor expanded in t around inf 57.9%
associate--l+57.9%
distribute-lft-out--57.9%
div-sub57.9%
mul-1-neg57.9%
unsub-neg57.9%
div-sub57.9%
associate-/l*71.4%
associate-/l*78.5%
distribute-rgt-out--78.5%
Simplified78.5%
Taylor expanded in z around inf 61.9%
div-sub61.9%
Simplified61.9%
if -5.19999999999999984e81 < t < -2.69999999999999991e33Initial program 58.0%
Taylor expanded in t around inf 73.7%
associate--l+73.7%
distribute-lft-out--73.7%
div-sub73.7%
mul-1-neg73.7%
unsub-neg73.7%
div-sub73.7%
associate-/l*73.7%
associate-/l*73.5%
distribute-rgt-out--73.5%
Simplified73.5%
Taylor expanded in y around 0 46.0%
associate-/l*45.7%
Simplified45.7%
if -0.042999999999999997 < t < -5.5999999999999998e-173Initial program 83.8%
Taylor expanded in y around inf 62.0%
associate-/l*67.4%
Simplified67.4%
clear-num67.4%
un-div-inv67.4%
Applied egg-rr67.4%
Taylor expanded in t around 0 55.7%
if -5.5999999999999998e-173 < t < -4.1999999999999998e-253Initial program 99.3%
Taylor expanded in t around 0 61.0%
Taylor expanded in x around inf 56.5%
mul-1-neg56.5%
unsub-neg56.5%
Simplified56.5%
if -4.1999999999999998e-253 < t < 1.05000000000000001e-80Initial program 90.4%
Taylor expanded in y around inf 76.0%
associate-/l*76.0%
Simplified76.0%
Taylor expanded in t around 0 69.5%
associate-/l*69.5%
Simplified69.5%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (+ x (* y (/ z a)))) (t_2 (* z (/ (- x y) t))))
(if (<= t -3.7e+219)
y
(if (<= t -1.85e+156)
t_2
(if (<= t -1.8e+121)
y
(if (<= t -1.15e+82)
t_2
(if (<= t -3e+33)
(* x (/ (- z a) t))
(if (<= t -0.0305)
t_2
(if (<= t -1.9e-172)
t_1
(if (<= t -4.2e-253)
(* x (- 1.0 (/ z a)))
(if (<= t 6e-87) t_1 y)))))))))))
double code(double x, double y, double z, double t, double a) {
double t_1 = x + (y * (z / a));
double t_2 = z * ((x - y) / t);
double tmp;
if (t <= -3.7e+219) {
tmp = y;
} else if (t <= -1.85e+156) {
tmp = t_2;
} else if (t <= -1.8e+121) {
tmp = y;
} else if (t <= -1.15e+82) {
tmp = t_2;
} else if (t <= -3e+33) {
tmp = x * ((z - a) / t);
} else if (t <= -0.0305) {
tmp = t_2;
} else if (t <= -1.9e-172) {
tmp = t_1;
} else if (t <= -4.2e-253) {
tmp = x * (1.0 - (z / a));
} else if (t <= 6e-87) {
tmp = t_1;
} else {
tmp = y;
}
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 * (z / a))
t_2 = z * ((x - y) / t)
if (t <= (-3.7d+219)) then
tmp = y
else if (t <= (-1.85d+156)) then
tmp = t_2
else if (t <= (-1.8d+121)) then
tmp = y
else if (t <= (-1.15d+82)) then
tmp = t_2
else if (t <= (-3d+33)) then
tmp = x * ((z - a) / t)
else if (t <= (-0.0305d0)) then
tmp = t_2
else if (t <= (-1.9d-172)) then
tmp = t_1
else if (t <= (-4.2d-253)) then
tmp = x * (1.0d0 - (z / a))
else if (t <= 6d-87) then
tmp = t_1
else
tmp = y
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 / a));
double t_2 = z * ((x - y) / t);
double tmp;
if (t <= -3.7e+219) {
tmp = y;
} else if (t <= -1.85e+156) {
tmp = t_2;
} else if (t <= -1.8e+121) {
tmp = y;
} else if (t <= -1.15e+82) {
tmp = t_2;
} else if (t <= -3e+33) {
tmp = x * ((z - a) / t);
} else if (t <= -0.0305) {
tmp = t_2;
} else if (t <= -1.9e-172) {
tmp = t_1;
} else if (t <= -4.2e-253) {
tmp = x * (1.0 - (z / a));
} else if (t <= 6e-87) {
tmp = t_1;
} else {
tmp = y;
}
return tmp;
}
def code(x, y, z, t, a): t_1 = x + (y * (z / a)) t_2 = z * ((x - y) / t) tmp = 0 if t <= -3.7e+219: tmp = y elif t <= -1.85e+156: tmp = t_2 elif t <= -1.8e+121: tmp = y elif t <= -1.15e+82: tmp = t_2 elif t <= -3e+33: tmp = x * ((z - a) / t) elif t <= -0.0305: tmp = t_2 elif t <= -1.9e-172: tmp = t_1 elif t <= -4.2e-253: tmp = x * (1.0 - (z / a)) elif t <= 6e-87: tmp = t_1 else: tmp = y return tmp
function code(x, y, z, t, a) t_1 = Float64(x + Float64(y * Float64(z / a))) t_2 = Float64(z * Float64(Float64(x - y) / t)) tmp = 0.0 if (t <= -3.7e+219) tmp = y; elseif (t <= -1.85e+156) tmp = t_2; elseif (t <= -1.8e+121) tmp = y; elseif (t <= -1.15e+82) tmp = t_2; elseif (t <= -3e+33) tmp = Float64(x * Float64(Float64(z - a) / t)); elseif (t <= -0.0305) tmp = t_2; elseif (t <= -1.9e-172) tmp = t_1; elseif (t <= -4.2e-253) tmp = Float64(x * Float64(1.0 - Float64(z / a))); elseif (t <= 6e-87) tmp = t_1; else tmp = y; end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = x + (y * (z / a)); t_2 = z * ((x - y) / t); tmp = 0.0; if (t <= -3.7e+219) tmp = y; elseif (t <= -1.85e+156) tmp = t_2; elseif (t <= -1.8e+121) tmp = y; elseif (t <= -1.15e+82) tmp = t_2; elseif (t <= -3e+33) tmp = x * ((z - a) / t); elseif (t <= -0.0305) tmp = t_2; elseif (t <= -1.9e-172) tmp = t_1; elseif (t <= -4.2e-253) tmp = x * (1.0 - (z / a)); elseif (t <= 6e-87) tmp = t_1; else tmp = y; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(x + N[(y * N[(z / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(z * N[(N[(x - y), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t, -3.7e+219], y, If[LessEqual[t, -1.85e+156], t$95$2, If[LessEqual[t, -1.8e+121], y, If[LessEqual[t, -1.15e+82], t$95$2, If[LessEqual[t, -3e+33], N[(x * N[(N[(z - a), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -0.0305], t$95$2, If[LessEqual[t, -1.9e-172], t$95$1, If[LessEqual[t, -4.2e-253], N[(x * N[(1.0 - N[(z / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 6e-87], t$95$1, y]]]]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := x + y \cdot \frac{z}{a}\\
t_2 := z \cdot \frac{x - y}{t}\\
\mathbf{if}\;t \leq -3.7 \cdot 10^{+219}:\\
\;\;\;\;y\\
\mathbf{elif}\;t \leq -1.85 \cdot 10^{+156}:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;t \leq -1.8 \cdot 10^{+121}:\\
\;\;\;\;y\\
\mathbf{elif}\;t \leq -1.15 \cdot 10^{+82}:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;t \leq -3 \cdot 10^{+33}:\\
\;\;\;\;x \cdot \frac{z - a}{t}\\
\mathbf{elif}\;t \leq -0.0305:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;t \leq -1.9 \cdot 10^{-172}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq -4.2 \cdot 10^{-253}:\\
\;\;\;\;x \cdot \left(1 - \frac{z}{a}\right)\\
\mathbf{elif}\;t \leq 6 \cdot 10^{-87}:\\
\;\;\;\;t\_1\\
\mathbf{else}:\\
\;\;\;\;y\\
\end{array}
\end{array}
if t < -3.7e219 or -1.85000000000000001e156 < t < -1.79999999999999991e121 or 6.00000000000000033e-87 < t Initial program 44.7%
Taylor expanded in t around inf 55.1%
if -3.7e219 < t < -1.85000000000000001e156 or -1.79999999999999991e121 < t < -1.14999999999999994e82 or -2.99999999999999984e33 < t < -0.030499999999999999Initial program 55.9%
Taylor expanded in t around inf 57.9%
associate--l+57.9%
distribute-lft-out--57.9%
div-sub57.9%
mul-1-neg57.9%
unsub-neg57.9%
div-sub57.9%
associate-/l*71.4%
associate-/l*78.5%
distribute-rgt-out--78.5%
Simplified78.5%
Taylor expanded in z around inf 61.9%
div-sub61.9%
Simplified61.9%
if -1.14999999999999994e82 < t < -2.99999999999999984e33Initial program 58.0%
Taylor expanded in t around inf 73.7%
associate--l+73.7%
distribute-lft-out--73.7%
div-sub73.7%
mul-1-neg73.7%
unsub-neg73.7%
div-sub73.7%
associate-/l*73.7%
associate-/l*73.5%
distribute-rgt-out--73.5%
Simplified73.5%
Taylor expanded in y around 0 46.0%
associate-/l*45.7%
Simplified45.7%
if -0.030499999999999999 < t < -1.89999999999999993e-172 or -4.1999999999999998e-253 < t < 6.00000000000000033e-87Initial program 88.6%
Taylor expanded in y around inf 72.1%
associate-/l*74.1%
Simplified74.1%
Taylor expanded in t around 0 63.5%
associate-/l*65.5%
Simplified65.5%
if -1.89999999999999993e-172 < t < -4.1999999999999998e-253Initial program 99.3%
Taylor expanded in t around 0 61.0%
Taylor expanded in x around inf 56.5%
mul-1-neg56.5%
unsub-neg56.5%
Simplified56.5%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (/ z (/ (- a t) (- y x)))) (t_2 (+ x (* y (/ (- z t) (- a t))))))
(if (<= t -4.8e+27)
(+ y (/ (- z a) (/ t x)))
(if (<= t -1.7e-9)
t_2
(if (<= t -9.5e-11)
(- y (* x (/ a t)))
(if (<= t -1e-51)
t_1
(if (<= t -1.05e-236)
t_2
(if (<= t -2.45e-265)
t_1
(if (<= t 6.5e-272)
(+ x (/ (* (- y x) z) a))
(if (<= t 3.5e+174) t_2 (+ y (* x (/ (- z a) t)))))))))))))
double code(double x, double y, double z, double t, double a) {
double t_1 = z / ((a - t) / (y - x));
double t_2 = x + (y * ((z - t) / (a - t)));
double tmp;
if (t <= -4.8e+27) {
tmp = y + ((z - a) / (t / x));
} else if (t <= -1.7e-9) {
tmp = t_2;
} else if (t <= -9.5e-11) {
tmp = y - (x * (a / t));
} else if (t <= -1e-51) {
tmp = t_1;
} else if (t <= -1.05e-236) {
tmp = t_2;
} else if (t <= -2.45e-265) {
tmp = t_1;
} else if (t <= 6.5e-272) {
tmp = x + (((y - x) * z) / a);
} else if (t <= 3.5e+174) {
tmp = t_2;
} else {
tmp = y + (x * ((z - a) / 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) :: t_1
real(8) :: t_2
real(8) :: tmp
t_1 = z / ((a - t) / (y - x))
t_2 = x + (y * ((z - t) / (a - t)))
if (t <= (-4.8d+27)) then
tmp = y + ((z - a) / (t / x))
else if (t <= (-1.7d-9)) then
tmp = t_2
else if (t <= (-9.5d-11)) then
tmp = y - (x * (a / t))
else if (t <= (-1d-51)) then
tmp = t_1
else if (t <= (-1.05d-236)) then
tmp = t_2
else if (t <= (-2.45d-265)) then
tmp = t_1
else if (t <= 6.5d-272) then
tmp = x + (((y - x) * z) / a)
else if (t <= 3.5d+174) then
tmp = t_2
else
tmp = y + (x * ((z - a) / t))
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double t_1 = z / ((a - t) / (y - x));
double t_2 = x + (y * ((z - t) / (a - t)));
double tmp;
if (t <= -4.8e+27) {
tmp = y + ((z - a) / (t / x));
} else if (t <= -1.7e-9) {
tmp = t_2;
} else if (t <= -9.5e-11) {
tmp = y - (x * (a / t));
} else if (t <= -1e-51) {
tmp = t_1;
} else if (t <= -1.05e-236) {
tmp = t_2;
} else if (t <= -2.45e-265) {
tmp = t_1;
} else if (t <= 6.5e-272) {
tmp = x + (((y - x) * z) / a);
} else if (t <= 3.5e+174) {
tmp = t_2;
} else {
tmp = y + (x * ((z - a) / t));
}
return tmp;
}
def code(x, y, z, t, a): t_1 = z / ((a - t) / (y - x)) t_2 = x + (y * ((z - t) / (a - t))) tmp = 0 if t <= -4.8e+27: tmp = y + ((z - a) / (t / x)) elif t <= -1.7e-9: tmp = t_2 elif t <= -9.5e-11: tmp = y - (x * (a / t)) elif t <= -1e-51: tmp = t_1 elif t <= -1.05e-236: tmp = t_2 elif t <= -2.45e-265: tmp = t_1 elif t <= 6.5e-272: tmp = x + (((y - x) * z) / a) elif t <= 3.5e+174: tmp = t_2 else: tmp = y + (x * ((z - a) / t)) return tmp
function code(x, y, z, t, a) t_1 = Float64(z / Float64(Float64(a - t) / Float64(y - x))) t_2 = Float64(x + Float64(y * Float64(Float64(z - t) / Float64(a - t)))) tmp = 0.0 if (t <= -4.8e+27) tmp = Float64(y + Float64(Float64(z - a) / Float64(t / x))); elseif (t <= -1.7e-9) tmp = t_2; elseif (t <= -9.5e-11) tmp = Float64(y - Float64(x * Float64(a / t))); elseif (t <= -1e-51) tmp = t_1; elseif (t <= -1.05e-236) tmp = t_2; elseif (t <= -2.45e-265) tmp = t_1; elseif (t <= 6.5e-272) tmp = Float64(x + Float64(Float64(Float64(y - x) * z) / a)); elseif (t <= 3.5e+174) tmp = t_2; else tmp = Float64(y + Float64(x * Float64(Float64(z - a) / t))); end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = z / ((a - t) / (y - x)); t_2 = x + (y * ((z - t) / (a - t))); tmp = 0.0; if (t <= -4.8e+27) tmp = y + ((z - a) / (t / x)); elseif (t <= -1.7e-9) tmp = t_2; elseif (t <= -9.5e-11) tmp = y - (x * (a / t)); elseif (t <= -1e-51) tmp = t_1; elseif (t <= -1.05e-236) tmp = t_2; elseif (t <= -2.45e-265) tmp = t_1; elseif (t <= 6.5e-272) tmp = x + (((y - x) * z) / a); elseif (t <= 3.5e+174) tmp = t_2; else tmp = y + (x * ((z - a) / t)); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(z / N[(N[(a - t), $MachinePrecision] / N[(y - x), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(x + N[(y * N[(N[(z - t), $MachinePrecision] / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t, -4.8e+27], N[(y + N[(N[(z - a), $MachinePrecision] / N[(t / x), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -1.7e-9], t$95$2, If[LessEqual[t, -9.5e-11], N[(y - N[(x * N[(a / t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -1e-51], t$95$1, If[LessEqual[t, -1.05e-236], t$95$2, If[LessEqual[t, -2.45e-265], t$95$1, If[LessEqual[t, 6.5e-272], N[(x + N[(N[(N[(y - x), $MachinePrecision] * z), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 3.5e+174], t$95$2, N[(y + N[(x * N[(N[(z - a), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := \frac{z}{\frac{a - t}{y - x}}\\
t_2 := x + y \cdot \frac{z - t}{a - t}\\
\mathbf{if}\;t \leq -4.8 \cdot 10^{+27}:\\
\;\;\;\;y + \frac{z - a}{\frac{t}{x}}\\
\mathbf{elif}\;t \leq -1.7 \cdot 10^{-9}:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;t \leq -9.5 \cdot 10^{-11}:\\
\;\;\;\;y - x \cdot \frac{a}{t}\\
\mathbf{elif}\;t \leq -1 \cdot 10^{-51}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq -1.05 \cdot 10^{-236}:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;t \leq -2.45 \cdot 10^{-265}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq 6.5 \cdot 10^{-272}:\\
\;\;\;\;x + \frac{\left(y - x\right) \cdot z}{a}\\
\mathbf{elif}\;t \leq 3.5 \cdot 10^{+174}:\\
\;\;\;\;t\_2\\
\mathbf{else}:\\
\;\;\;\;y + x \cdot \frac{z - a}{t}\\
\end{array}
\end{array}
if t < -4.79999999999999995e27Initial program 48.1%
Taylor expanded in t around inf 64.3%
associate--l+64.3%
distribute-lft-out--64.3%
div-sub64.3%
mul-1-neg64.3%
unsub-neg64.3%
div-sub64.3%
associate-/l*74.3%
associate-/l*86.2%
distribute-rgt-out--86.2%
Simplified86.2%
*-commutative86.2%
clear-num86.2%
un-div-inv86.2%
Applied egg-rr86.2%
Taylor expanded in y around 0 76.2%
associate-*r/76.2%
mul-1-neg76.2%
Simplified76.2%
if -4.79999999999999995e27 < t < -1.6999999999999999e-9 or -1e-51 < t < -1.04999999999999989e-236 or 6.5e-272 < t < 3.5000000000000001e174Initial program 80.8%
Taylor expanded in y around inf 67.1%
associate-/l*76.3%
Simplified76.3%
if -1.6999999999999999e-9 < t < -9.49999999999999951e-11Initial program 51.6%
Taylor expanded in t around inf 100.0%
associate--l+100.0%
distribute-lft-out--100.0%
div-sub100.0%
mul-1-neg100.0%
unsub-neg100.0%
div-sub100.0%
associate-/l*100.0%
associate-/l*99.2%
distribute-rgt-out--99.2%
Simplified99.2%
*-commutative99.2%
clear-num99.2%
un-div-inv100.0%
Applied egg-rr100.0%
Taylor expanded in y around 0 100.0%
mul-1-neg100.0%
associate-/l*100.0%
Simplified100.0%
Taylor expanded in z around 0 100.0%
mul-1-neg100.0%
*-commutative100.0%
associate-*r/100.0%
unsub-neg100.0%
Simplified100.0%
if -9.49999999999999951e-11 < t < -1e-51 or -1.04999999999999989e-236 < t < -2.45e-265Initial program 88.0%
Taylor expanded in x around 0 81.0%
+-commutative81.0%
+-commutative81.0%
distribute-lft-in81.0%
mul-1-neg81.0%
distribute-rgt-neg-in81.0%
associate-/l*86.8%
mul-1-neg86.8%
*-rgt-identity86.8%
associate-+l+86.8%
Simplified99.7%
Taylor expanded in z around inf 93.6%
div-sub93.6%
Simplified93.6%
clear-num93.4%
un-div-inv93.9%
Applied egg-rr93.9%
if -2.45e-265 < t < 6.5e-272Initial program 100.0%
Taylor expanded in t around 0 100.0%
if 3.5000000000000001e174 < t Initial program 18.6%
Taylor expanded in t around inf 85.8%
associate--l+85.8%
distribute-lft-out--85.8%
div-sub85.8%
mul-1-neg85.8%
unsub-neg85.8%
div-sub85.8%
associate-/l*85.7%
associate-/l*89.2%
distribute-rgt-out--89.2%
Simplified89.2%
*-commutative89.2%
clear-num89.2%
un-div-inv89.2%
Applied egg-rr89.2%
Taylor expanded in y around 0 93.7%
mul-1-neg93.7%
associate-/l*90.4%
Simplified90.4%
Final simplification80.9%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (+ x (* z (/ (- y x) (- a t))))))
(if (<= t -2.15e+30)
(+ y (* (/ (- y x) t) (- a z)))
(if (<= t -3.8e-80)
t_1
(if (<= t -3.7e-80)
(* z (/ x t))
(if (<= t -6.5e-274)
t_1
(if (<= t 5e-273)
(+ x (/ (* (- y x) z) a))
(if (<= t 1e-80)
t_1
(if (<= t 6.5e+47)
(+ x (* y (/ (- z t) (- a t))))
(+ y (* (- y x) (/ (- a z) t))))))))))))
double code(double x, double y, double z, double t, double a) {
double t_1 = x + (z * ((y - x) / (a - t)));
double tmp;
if (t <= -2.15e+30) {
tmp = y + (((y - x) / t) * (a - z));
} else if (t <= -3.8e-80) {
tmp = t_1;
} else if (t <= -3.7e-80) {
tmp = z * (x / t);
} else if (t <= -6.5e-274) {
tmp = t_1;
} else if (t <= 5e-273) {
tmp = x + (((y - x) * z) / a);
} else if (t <= 1e-80) {
tmp = t_1;
} else if (t <= 6.5e+47) {
tmp = x + (y * ((z - t) / (a - t)));
} else {
tmp = y + ((y - x) * ((a - z) / 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) :: t_1
real(8) :: tmp
t_1 = x + (z * ((y - x) / (a - t)))
if (t <= (-2.15d+30)) then
tmp = y + (((y - x) / t) * (a - z))
else if (t <= (-3.8d-80)) then
tmp = t_1
else if (t <= (-3.7d-80)) then
tmp = z * (x / t)
else if (t <= (-6.5d-274)) then
tmp = t_1
else if (t <= 5d-273) then
tmp = x + (((y - x) * z) / a)
else if (t <= 1d-80) then
tmp = t_1
else if (t <= 6.5d+47) then
tmp = x + (y * ((z - t) / (a - t)))
else
tmp = y + ((y - x) * ((a - z) / t))
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double t_1 = x + (z * ((y - x) / (a - t)));
double tmp;
if (t <= -2.15e+30) {
tmp = y + (((y - x) / t) * (a - z));
} else if (t <= -3.8e-80) {
tmp = t_1;
} else if (t <= -3.7e-80) {
tmp = z * (x / t);
} else if (t <= -6.5e-274) {
tmp = t_1;
} else if (t <= 5e-273) {
tmp = x + (((y - x) * z) / a);
} else if (t <= 1e-80) {
tmp = t_1;
} else if (t <= 6.5e+47) {
tmp = x + (y * ((z - t) / (a - t)));
} else {
tmp = y + ((y - x) * ((a - z) / t));
}
return tmp;
}
def code(x, y, z, t, a): t_1 = x + (z * ((y - x) / (a - t))) tmp = 0 if t <= -2.15e+30: tmp = y + (((y - x) / t) * (a - z)) elif t <= -3.8e-80: tmp = t_1 elif t <= -3.7e-80: tmp = z * (x / t) elif t <= -6.5e-274: tmp = t_1 elif t <= 5e-273: tmp = x + (((y - x) * z) / a) elif t <= 1e-80: tmp = t_1 elif t <= 6.5e+47: tmp = x + (y * ((z - t) / (a - t))) else: tmp = y + ((y - x) * ((a - z) / t)) return tmp
function code(x, y, z, t, a) t_1 = Float64(x + Float64(z * Float64(Float64(y - x) / Float64(a - t)))) tmp = 0.0 if (t <= -2.15e+30) tmp = Float64(y + Float64(Float64(Float64(y - x) / t) * Float64(a - z))); elseif (t <= -3.8e-80) tmp = t_1; elseif (t <= -3.7e-80) tmp = Float64(z * Float64(x / t)); elseif (t <= -6.5e-274) tmp = t_1; elseif (t <= 5e-273) tmp = Float64(x + Float64(Float64(Float64(y - x) * z) / a)); elseif (t <= 1e-80) tmp = t_1; elseif (t <= 6.5e+47) tmp = Float64(x + Float64(y * Float64(Float64(z - t) / Float64(a - t)))); else tmp = Float64(y + Float64(Float64(y - x) * Float64(Float64(a - z) / t))); end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = x + (z * ((y - x) / (a - t))); tmp = 0.0; if (t <= -2.15e+30) tmp = y + (((y - x) / t) * (a - z)); elseif (t <= -3.8e-80) tmp = t_1; elseif (t <= -3.7e-80) tmp = z * (x / t); elseif (t <= -6.5e-274) tmp = t_1; elseif (t <= 5e-273) tmp = x + (((y - x) * z) / a); elseif (t <= 1e-80) tmp = t_1; elseif (t <= 6.5e+47) tmp = x + (y * ((z - t) / (a - t))); else tmp = y + ((y - x) * ((a - z) / t)); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(x + N[(z * N[(N[(y - x), $MachinePrecision] / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t, -2.15e+30], N[(y + N[(N[(N[(y - x), $MachinePrecision] / t), $MachinePrecision] * N[(a - z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -3.8e-80], t$95$1, If[LessEqual[t, -3.7e-80], N[(z * N[(x / t), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -6.5e-274], t$95$1, If[LessEqual[t, 5e-273], N[(x + N[(N[(N[(y - x), $MachinePrecision] * z), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 1e-80], t$95$1, If[LessEqual[t, 6.5e+47], N[(x + N[(y * N[(N[(z - t), $MachinePrecision] / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(y + N[(N[(y - x), $MachinePrecision] * N[(N[(a - z), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := x + z \cdot \frac{y - x}{a - t}\\
\mathbf{if}\;t \leq -2.15 \cdot 10^{+30}:\\
\;\;\;\;y + \frac{y - x}{t} \cdot \left(a - z\right)\\
\mathbf{elif}\;t \leq -3.8 \cdot 10^{-80}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq -3.7 \cdot 10^{-80}:\\
\;\;\;\;z \cdot \frac{x}{t}\\
\mathbf{elif}\;t \leq -6.5 \cdot 10^{-274}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq 5 \cdot 10^{-273}:\\
\;\;\;\;x + \frac{\left(y - x\right) \cdot z}{a}\\
\mathbf{elif}\;t \leq 10^{-80}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq 6.5 \cdot 10^{+47}:\\
\;\;\;\;x + y \cdot \frac{z - t}{a - t}\\
\mathbf{else}:\\
\;\;\;\;y + \left(y - x\right) \cdot \frac{a - z}{t}\\
\end{array}
\end{array}
if t < -2.15e30Initial program 47.2%
Taylor expanded in t around inf 63.6%
associate--l+63.6%
distribute-lft-out--63.6%
div-sub63.6%
mul-1-neg63.6%
unsub-neg63.6%
div-sub63.6%
associate-/l*73.8%
associate-/l*85.9%
distribute-rgt-out--85.9%
Simplified85.9%
if -2.15e30 < t < -3.79999999999999967e-80 or -3.70000000000000033e-80 < t < -6.49999999999999959e-274 or 4.99999999999999965e-273 < t < 9.99999999999999961e-81Initial program 88.8%
Taylor expanded in z around inf 81.6%
associate-/l*88.0%
Simplified88.0%
if -3.79999999999999967e-80 < t < -3.70000000000000033e-80Initial program 3.8%
Taylor expanded in t around inf 100.0%
associate--l+100.0%
distribute-lft-out--100.0%
div-sub100.0%
mul-1-neg100.0%
unsub-neg100.0%
div-sub100.0%
associate-/l*100.0%
associate-/l*100.0%
distribute-rgt-out--100.0%
Simplified100.0%
Taylor expanded in z around inf 100.0%
div-sub100.0%
Simplified100.0%
Taylor expanded in x around inf 100.0%
if -6.49999999999999959e-274 < t < 4.99999999999999965e-273Initial program 100.0%
Taylor expanded in t around 0 100.0%
if 9.99999999999999961e-81 < t < 6.49999999999999988e47Initial program 80.3%
Taylor expanded in y around inf 69.4%
associate-/l*77.0%
Simplified77.0%
if 6.49999999999999988e47 < t Initial program 28.3%
Taylor expanded in x around 0 47.9%
+-commutative47.9%
+-commutative47.9%
distribute-lft-in47.9%
mul-1-neg47.9%
distribute-rgt-neg-in47.9%
associate-/l*29.8%
mul-1-neg29.8%
*-rgt-identity29.8%
associate-+l+28.2%
Simplified61.2%
Taylor expanded in t around inf 74.6%
cancel-sign-sub-inv74.6%
mul-1-neg74.6%
sub-neg74.6%
metadata-eval74.6%
*-lft-identity74.6%
*-commutative74.6%
associate-+l-74.6%
div-sub74.6%
*-commutative74.6%
distribute-rgt-out--74.7%
associate-*r/85.6%
Simplified85.6%
Final simplification86.8%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (+ x (* y (/ (- z t) (- a t))))) (t_2 (+ y (/ (- z a) (/ t x)))))
(if (<= t -8.6e+29)
t_2
(if (<= t -1.7e-9)
t_1
(if (<= t -1.65e-9)
(* x (/ a (- t)))
(if (<= t 1.75e-82)
(+ x (* z (/ (- y x) (- a t))))
(if (<= t 1.4e+48)
t_1
(if (<= t 1.6e+87)
t_2
(if (<= t 1e+177) t_1 (+ y (* x (/ (- z a) t))))))))))))
double code(double x, double y, double z, double t, double a) {
double t_1 = x + (y * ((z - t) / (a - t)));
double t_2 = y + ((z - a) / (t / x));
double tmp;
if (t <= -8.6e+29) {
tmp = t_2;
} else if (t <= -1.7e-9) {
tmp = t_1;
} else if (t <= -1.65e-9) {
tmp = x * (a / -t);
} else if (t <= 1.75e-82) {
tmp = x + (z * ((y - x) / (a - t)));
} else if (t <= 1.4e+48) {
tmp = t_1;
} else if (t <= 1.6e+87) {
tmp = t_2;
} else if (t <= 1e+177) {
tmp = t_1;
} else {
tmp = y + (x * ((z - a) / 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) :: t_1
real(8) :: t_2
real(8) :: tmp
t_1 = x + (y * ((z - t) / (a - t)))
t_2 = y + ((z - a) / (t / x))
if (t <= (-8.6d+29)) then
tmp = t_2
else if (t <= (-1.7d-9)) then
tmp = t_1
else if (t <= (-1.65d-9)) then
tmp = x * (a / -t)
else if (t <= 1.75d-82) then
tmp = x + (z * ((y - x) / (a - t)))
else if (t <= 1.4d+48) then
tmp = t_1
else if (t <= 1.6d+87) then
tmp = t_2
else if (t <= 1d+177) then
tmp = t_1
else
tmp = y + (x * ((z - a) / t))
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 - t) / (a - t)));
double t_2 = y + ((z - a) / (t / x));
double tmp;
if (t <= -8.6e+29) {
tmp = t_2;
} else if (t <= -1.7e-9) {
tmp = t_1;
} else if (t <= -1.65e-9) {
tmp = x * (a / -t);
} else if (t <= 1.75e-82) {
tmp = x + (z * ((y - x) / (a - t)));
} else if (t <= 1.4e+48) {
tmp = t_1;
} else if (t <= 1.6e+87) {
tmp = t_2;
} else if (t <= 1e+177) {
tmp = t_1;
} else {
tmp = y + (x * ((z - a) / t));
}
return tmp;
}
def code(x, y, z, t, a): t_1 = x + (y * ((z - t) / (a - t))) t_2 = y + ((z - a) / (t / x)) tmp = 0 if t <= -8.6e+29: tmp = t_2 elif t <= -1.7e-9: tmp = t_1 elif t <= -1.65e-9: tmp = x * (a / -t) elif t <= 1.75e-82: tmp = x + (z * ((y - x) / (a - t))) elif t <= 1.4e+48: tmp = t_1 elif t <= 1.6e+87: tmp = t_2 elif t <= 1e+177: tmp = t_1 else: tmp = y + (x * ((z - a) / t)) return tmp
function code(x, y, z, t, a) t_1 = Float64(x + Float64(y * Float64(Float64(z - t) / Float64(a - t)))) t_2 = Float64(y + Float64(Float64(z - a) / Float64(t / x))) tmp = 0.0 if (t <= -8.6e+29) tmp = t_2; elseif (t <= -1.7e-9) tmp = t_1; elseif (t <= -1.65e-9) tmp = Float64(x * Float64(a / Float64(-t))); elseif (t <= 1.75e-82) tmp = Float64(x + Float64(z * Float64(Float64(y - x) / Float64(a - t)))); elseif (t <= 1.4e+48) tmp = t_1; elseif (t <= 1.6e+87) tmp = t_2; elseif (t <= 1e+177) tmp = t_1; else tmp = Float64(y + Float64(x * Float64(Float64(z - a) / t))); end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = x + (y * ((z - t) / (a - t))); t_2 = y + ((z - a) / (t / x)); tmp = 0.0; if (t <= -8.6e+29) tmp = t_2; elseif (t <= -1.7e-9) tmp = t_1; elseif (t <= -1.65e-9) tmp = x * (a / -t); elseif (t <= 1.75e-82) tmp = x + (z * ((y - x) / (a - t))); elseif (t <= 1.4e+48) tmp = t_1; elseif (t <= 1.6e+87) tmp = t_2; elseif (t <= 1e+177) tmp = t_1; else tmp = y + (x * ((z - a) / t)); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(x + N[(y * N[(N[(z - t), $MachinePrecision] / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(y + N[(N[(z - a), $MachinePrecision] / N[(t / x), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t, -8.6e+29], t$95$2, If[LessEqual[t, -1.7e-9], t$95$1, If[LessEqual[t, -1.65e-9], N[(x * N[(a / (-t)), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 1.75e-82], N[(x + N[(z * N[(N[(y - x), $MachinePrecision] / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 1.4e+48], t$95$1, If[LessEqual[t, 1.6e+87], t$95$2, If[LessEqual[t, 1e+177], t$95$1, N[(y + N[(x * N[(N[(z - a), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := x + y \cdot \frac{z - t}{a - t}\\
t_2 := y + \frac{z - a}{\frac{t}{x}}\\
\mathbf{if}\;t \leq -8.6 \cdot 10^{+29}:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;t \leq -1.7 \cdot 10^{-9}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq -1.65 \cdot 10^{-9}:\\
\;\;\;\;x \cdot \frac{a}{-t}\\
\mathbf{elif}\;t \leq 1.75 \cdot 10^{-82}:\\
\;\;\;\;x + z \cdot \frac{y - x}{a - t}\\
\mathbf{elif}\;t \leq 1.4 \cdot 10^{+48}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq 1.6 \cdot 10^{+87}:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;t \leq 10^{+177}:\\
\;\;\;\;t\_1\\
\mathbf{else}:\\
\;\;\;\;y + x \cdot \frac{z - a}{t}\\
\end{array}
\end{array}
if t < -8.6000000000000006e29 or 1.40000000000000006e48 < t < 1.6e87Initial program 47.2%
Taylor expanded in t around inf 65.9%
associate--l+65.9%
distribute-lft-out--65.9%
div-sub65.9%
mul-1-neg65.9%
unsub-neg65.9%
div-sub65.9%
associate-/l*77.4%
associate-/l*87.9%
distribute-rgt-out--87.9%
Simplified87.9%
*-commutative87.9%
clear-num87.8%
un-div-inv87.9%
Applied egg-rr87.9%
Taylor expanded in y around 0 76.1%
associate-*r/76.1%
mul-1-neg76.1%
Simplified76.1%
if -8.6000000000000006e29 < t < -1.6999999999999999e-9 or 1.7499999999999999e-82 < t < 1.40000000000000006e48 or 1.6e87 < t < 1e177Initial program 72.5%
Taylor expanded in y around inf 65.9%
associate-/l*81.1%
Simplified81.1%
if -1.6999999999999999e-9 < t < -1.65000000000000009e-9Initial program 3.2%
Taylor expanded in t around inf 100.0%
associate--l+100.0%
distribute-lft-out--100.0%
div-sub100.0%
mul-1-neg100.0%
unsub-neg100.0%
div-sub100.0%
associate-/l*100.0%
associate-/l*98.4%
distribute-rgt-out--98.4%
Simplified98.4%
Taylor expanded in y around 0 100.0%
Taylor expanded in z around 0 100.0%
mul-1-neg100.0%
distribute-rgt-neg-in100.0%
Simplified100.0%
*-commutative100.0%
associate-/l*100.0%
add-sqr-sqrt0.0%
sqrt-unprod1.6%
sqr-neg1.6%
sqrt-unprod1.6%
add-sqr-sqrt1.6%
Applied egg-rr1.6%
frac-2neg1.6%
associate-*r/1.6%
add-sqr-sqrt1.6%
sqrt-unprod1.6%
sqr-neg1.6%
sqrt-unprod0.0%
add-sqr-sqrt100.0%
Applied egg-rr100.0%
associate-/l*100.0%
Simplified100.0%
if -1.65000000000000009e-9 < t < 1.7499999999999999e-82Initial program 90.6%
Taylor expanded in z around inf 85.7%
associate-/l*89.9%
Simplified89.9%
if 1e177 < t Initial program 18.6%
Taylor expanded in t around inf 85.8%
associate--l+85.8%
distribute-lft-out--85.8%
div-sub85.8%
mul-1-neg85.8%
unsub-neg85.8%
div-sub85.8%
associate-/l*85.7%
associate-/l*89.2%
distribute-rgt-out--89.2%
Simplified89.2%
*-commutative89.2%
clear-num89.2%
un-div-inv89.2%
Applied egg-rr89.2%
Taylor expanded in y around 0 93.7%
mul-1-neg93.7%
associate-/l*90.4%
Simplified90.4%
Final simplification85.1%
(FPCore (x y z t a)
:precision binary64
(if (<= t -5.5e+121)
y
(if (<= t -5.5e-52)
(* z (/ x t))
(if (<= t -2.1e-195)
(/ (* x z) t)
(if (<= t -1.35e-254)
(* t (/ x t))
(if (<= t -8e-281)
(* x (/ z (- a)))
(if (<= t 3e-173) x (if (<= t 9e-79) (* t (/ (- y) a)) y))))))))
double code(double x, double y, double z, double t, double a) {
double tmp;
if (t <= -5.5e+121) {
tmp = y;
} else if (t <= -5.5e-52) {
tmp = z * (x / t);
} else if (t <= -2.1e-195) {
tmp = (x * z) / t;
} else if (t <= -1.35e-254) {
tmp = t * (x / t);
} else if (t <= -8e-281) {
tmp = x * (z / -a);
} else if (t <= 3e-173) {
tmp = x;
} else if (t <= 9e-79) {
tmp = t * (-y / a);
} else {
tmp = y;
}
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 (t <= (-5.5d+121)) then
tmp = y
else if (t <= (-5.5d-52)) then
tmp = z * (x / t)
else if (t <= (-2.1d-195)) then
tmp = (x * z) / t
else if (t <= (-1.35d-254)) then
tmp = t * (x / t)
else if (t <= (-8d-281)) then
tmp = x * (z / -a)
else if (t <= 3d-173) then
tmp = x
else if (t <= 9d-79) then
tmp = t * (-y / a)
else
tmp = y
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double tmp;
if (t <= -5.5e+121) {
tmp = y;
} else if (t <= -5.5e-52) {
tmp = z * (x / t);
} else if (t <= -2.1e-195) {
tmp = (x * z) / t;
} else if (t <= -1.35e-254) {
tmp = t * (x / t);
} else if (t <= -8e-281) {
tmp = x * (z / -a);
} else if (t <= 3e-173) {
tmp = x;
} else if (t <= 9e-79) {
tmp = t * (-y / a);
} else {
tmp = y;
}
return tmp;
}
def code(x, y, z, t, a): tmp = 0 if t <= -5.5e+121: tmp = y elif t <= -5.5e-52: tmp = z * (x / t) elif t <= -2.1e-195: tmp = (x * z) / t elif t <= -1.35e-254: tmp = t * (x / t) elif t <= -8e-281: tmp = x * (z / -a) elif t <= 3e-173: tmp = x elif t <= 9e-79: tmp = t * (-y / a) else: tmp = y return tmp
function code(x, y, z, t, a) tmp = 0.0 if (t <= -5.5e+121) tmp = y; elseif (t <= -5.5e-52) tmp = Float64(z * Float64(x / t)); elseif (t <= -2.1e-195) tmp = Float64(Float64(x * z) / t); elseif (t <= -1.35e-254) tmp = Float64(t * Float64(x / t)); elseif (t <= -8e-281) tmp = Float64(x * Float64(z / Float64(-a))); elseif (t <= 3e-173) tmp = x; elseif (t <= 9e-79) tmp = Float64(t * Float64(Float64(-y) / a)); else tmp = y; end return tmp end
function tmp_2 = code(x, y, z, t, a) tmp = 0.0; if (t <= -5.5e+121) tmp = y; elseif (t <= -5.5e-52) tmp = z * (x / t); elseif (t <= -2.1e-195) tmp = (x * z) / t; elseif (t <= -1.35e-254) tmp = t * (x / t); elseif (t <= -8e-281) tmp = x * (z / -a); elseif (t <= 3e-173) tmp = x; elseif (t <= 9e-79) tmp = t * (-y / a); else tmp = y; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := If[LessEqual[t, -5.5e+121], y, If[LessEqual[t, -5.5e-52], N[(z * N[(x / t), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -2.1e-195], N[(N[(x * z), $MachinePrecision] / t), $MachinePrecision], If[LessEqual[t, -1.35e-254], N[(t * N[(x / t), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -8e-281], N[(x * N[(z / (-a)), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 3e-173], x, If[LessEqual[t, 9e-79], N[(t * N[((-y) / a), $MachinePrecision]), $MachinePrecision], y]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;t \leq -5.5 \cdot 10^{+121}:\\
\;\;\;\;y\\
\mathbf{elif}\;t \leq -5.5 \cdot 10^{-52}:\\
\;\;\;\;z \cdot \frac{x}{t}\\
\mathbf{elif}\;t \leq -2.1 \cdot 10^{-195}:\\
\;\;\;\;\frac{x \cdot z}{t}\\
\mathbf{elif}\;t \leq -1.35 \cdot 10^{-254}:\\
\;\;\;\;t \cdot \frac{x}{t}\\
\mathbf{elif}\;t \leq -8 \cdot 10^{-281}:\\
\;\;\;\;x \cdot \frac{z}{-a}\\
\mathbf{elif}\;t \leq 3 \cdot 10^{-173}:\\
\;\;\;\;x\\
\mathbf{elif}\;t \leq 9 \cdot 10^{-79}:\\
\;\;\;\;t \cdot \frac{-y}{a}\\
\mathbf{else}:\\
\;\;\;\;y\\
\end{array}
\end{array}
if t < -5.4999999999999998e121 or 9.0000000000000006e-79 < t Initial program 43.2%
Taylor expanded in t around inf 52.8%
if -5.4999999999999998e121 < t < -5.5e-52Initial program 69.5%
Taylor expanded in t around inf 64.0%
associate--l+64.0%
distribute-lft-out--64.0%
div-sub64.0%
mul-1-neg64.0%
unsub-neg64.0%
div-sub64.0%
associate-/l*66.8%
associate-/l*63.9%
distribute-rgt-out--66.7%
Simplified66.7%
Taylor expanded in z around inf 42.3%
div-sub42.3%
Simplified42.3%
Taylor expanded in x around inf 31.3%
if -5.5e-52 < t < -2.1e-195Initial program 87.7%
Taylor expanded in t around inf 42.6%
associate--l+42.6%
distribute-lft-out--42.6%
div-sub45.7%
mul-1-neg45.7%
unsub-neg45.7%
div-sub42.6%
associate-/l*36.3%
associate-/l*32.9%
distribute-rgt-out--39.8%
Simplified39.8%
Taylor expanded in y around 0 34.3%
Taylor expanded in z around inf 34.2%
*-commutative34.2%
Simplified34.2%
if -2.1e-195 < t < -1.35000000000000003e-254Initial program 99.4%
Taylor expanded in y around inf 80.3%
associate-/l*74.4%
Simplified74.4%
clear-num74.4%
inv-pow74.4%
Applied egg-rr74.4%
unpow-174.4%
Simplified74.4%
Taylor expanded in z around 0 42.1%
mul-1-neg42.1%
unsub-neg42.1%
associate-/l*48.4%
Simplified48.4%
Taylor expanded in t around 0 42.0%
associate-/l*42.0%
Simplified42.0%
Taylor expanded in t around inf 54.5%
Taylor expanded in x around inf 54.6%
if -1.35000000000000003e-254 < t < -8.0000000000000001e-281Initial program 85.0%
Taylor expanded in t around 0 85.0%
Taylor expanded in z around inf 70.6%
div-sub70.6%
associate-*r/70.7%
*-commutative70.7%
associate-*r/85.2%
*-commutative85.2%
Simplified85.2%
Taylor expanded in y around 0 54.0%
mul-1-neg54.0%
associate-/l*68.6%
distribute-lft-neg-out68.6%
*-commutative68.6%
Simplified68.6%
if -8.0000000000000001e-281 < t < 3.0000000000000001e-173Initial program 92.2%
Taylor expanded in a around inf 54.0%
if 3.0000000000000001e-173 < t < 9.0000000000000006e-79Initial program 88.3%
Taylor expanded in y around inf 64.6%
associate-/l*70.5%
Simplified70.5%
clear-num70.5%
inv-pow70.5%
Applied egg-rr70.5%
unpow-170.5%
Simplified70.5%
Taylor expanded in z around 0 33.7%
mul-1-neg33.7%
unsub-neg33.7%
associate-/l*39.6%
Simplified39.6%
Taylor expanded in t around 0 40.0%
associate-/l*51.7%
Simplified51.7%
Taylor expanded in x around 0 27.9%
associate-/l*39.6%
associate-*r*39.6%
neg-mul-139.6%
*-commutative39.6%
Simplified39.6%
Final simplification47.3%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (* z (/ x t))))
(if (<= t -4.2e+120)
y
(if (<= t -6.2e-52)
t_1
(if (<= t -1.8e-197)
(/ (* x z) t)
(if (<= t -1.15e-253)
(* t (/ x t))
(if (<= t 1.16e+34)
x
(if (<= t 1.7e+50) (* y (/ z a)) (if (<= t 2.2e+86) t_1 y)))))))))
double code(double x, double y, double z, double t, double a) {
double t_1 = z * (x / t);
double tmp;
if (t <= -4.2e+120) {
tmp = y;
} else if (t <= -6.2e-52) {
tmp = t_1;
} else if (t <= -1.8e-197) {
tmp = (x * z) / t;
} else if (t <= -1.15e-253) {
tmp = t * (x / t);
} else if (t <= 1.16e+34) {
tmp = x;
} else if (t <= 1.7e+50) {
tmp = y * (z / a);
} else if (t <= 2.2e+86) {
tmp = t_1;
} else {
tmp = y;
}
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 = z * (x / t)
if (t <= (-4.2d+120)) then
tmp = y
else if (t <= (-6.2d-52)) then
tmp = t_1
else if (t <= (-1.8d-197)) then
tmp = (x * z) / t
else if (t <= (-1.15d-253)) then
tmp = t * (x / t)
else if (t <= 1.16d+34) then
tmp = x
else if (t <= 1.7d+50) then
tmp = y * (z / a)
else if (t <= 2.2d+86) then
tmp = t_1
else
tmp = y
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double t_1 = z * (x / t);
double tmp;
if (t <= -4.2e+120) {
tmp = y;
} else if (t <= -6.2e-52) {
tmp = t_1;
} else if (t <= -1.8e-197) {
tmp = (x * z) / t;
} else if (t <= -1.15e-253) {
tmp = t * (x / t);
} else if (t <= 1.16e+34) {
tmp = x;
} else if (t <= 1.7e+50) {
tmp = y * (z / a);
} else if (t <= 2.2e+86) {
tmp = t_1;
} else {
tmp = y;
}
return tmp;
}
def code(x, y, z, t, a): t_1 = z * (x / t) tmp = 0 if t <= -4.2e+120: tmp = y elif t <= -6.2e-52: tmp = t_1 elif t <= -1.8e-197: tmp = (x * z) / t elif t <= -1.15e-253: tmp = t * (x / t) elif t <= 1.16e+34: tmp = x elif t <= 1.7e+50: tmp = y * (z / a) elif t <= 2.2e+86: tmp = t_1 else: tmp = y return tmp
function code(x, y, z, t, a) t_1 = Float64(z * Float64(x / t)) tmp = 0.0 if (t <= -4.2e+120) tmp = y; elseif (t <= -6.2e-52) tmp = t_1; elseif (t <= -1.8e-197) tmp = Float64(Float64(x * z) / t); elseif (t <= -1.15e-253) tmp = Float64(t * Float64(x / t)); elseif (t <= 1.16e+34) tmp = x; elseif (t <= 1.7e+50) tmp = Float64(y * Float64(z / a)); elseif (t <= 2.2e+86) tmp = t_1; else tmp = y; end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = z * (x / t); tmp = 0.0; if (t <= -4.2e+120) tmp = y; elseif (t <= -6.2e-52) tmp = t_1; elseif (t <= -1.8e-197) tmp = (x * z) / t; elseif (t <= -1.15e-253) tmp = t * (x / t); elseif (t <= 1.16e+34) tmp = x; elseif (t <= 1.7e+50) tmp = y * (z / a); elseif (t <= 2.2e+86) tmp = t_1; else tmp = y; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(z * N[(x / t), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t, -4.2e+120], y, If[LessEqual[t, -6.2e-52], t$95$1, If[LessEqual[t, -1.8e-197], N[(N[(x * z), $MachinePrecision] / t), $MachinePrecision], If[LessEqual[t, -1.15e-253], N[(t * N[(x / t), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 1.16e+34], x, If[LessEqual[t, 1.7e+50], N[(y * N[(z / a), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 2.2e+86], t$95$1, y]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := z \cdot \frac{x}{t}\\
\mathbf{if}\;t \leq -4.2 \cdot 10^{+120}:\\
\;\;\;\;y\\
\mathbf{elif}\;t \leq -6.2 \cdot 10^{-52}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq -1.8 \cdot 10^{-197}:\\
\;\;\;\;\frac{x \cdot z}{t}\\
\mathbf{elif}\;t \leq -1.15 \cdot 10^{-253}:\\
\;\;\;\;t \cdot \frac{x}{t}\\
\mathbf{elif}\;t \leq 1.16 \cdot 10^{+34}:\\
\;\;\;\;x\\
\mathbf{elif}\;t \leq 1.7 \cdot 10^{+50}:\\
\;\;\;\;y \cdot \frac{z}{a}\\
\mathbf{elif}\;t \leq 2.2 \cdot 10^{+86}:\\
\;\;\;\;t\_1\\
\mathbf{else}:\\
\;\;\;\;y\\
\end{array}
\end{array}
if t < -4.2000000000000001e120 or 2.20000000000000003e86 < t Initial program 33.5%
Taylor expanded in t around inf 61.3%
if -4.2000000000000001e120 < t < -6.1999999999999998e-52 or 1.6999999999999999e50 < t < 2.20000000000000003e86Initial program 62.5%
Taylor expanded in t around inf 64.8%
associate--l+64.8%
distribute-lft-out--64.8%
div-sub64.8%
mul-1-neg64.8%
unsub-neg64.8%
div-sub64.8%
associate-/l*71.7%
associate-/l*69.1%
distribute-rgt-out--71.6%
Simplified71.6%
Taylor expanded in z around inf 46.1%
div-sub46.1%
Simplified46.1%
Taylor expanded in x around inf 32.0%
if -6.1999999999999998e-52 < t < -1.7999999999999999e-197Initial program 87.7%
Taylor expanded in t around inf 42.6%
associate--l+42.6%
distribute-lft-out--42.6%
div-sub45.7%
mul-1-neg45.7%
unsub-neg45.7%
div-sub42.6%
associate-/l*36.3%
associate-/l*32.9%
distribute-rgt-out--39.8%
Simplified39.8%
Taylor expanded in y around 0 34.3%
Taylor expanded in z around inf 34.2%
*-commutative34.2%
Simplified34.2%
if -1.7999999999999999e-197 < t < -1.15e-253Initial program 99.4%
Taylor expanded in y around inf 80.3%
associate-/l*74.4%
Simplified74.4%
clear-num74.4%
inv-pow74.4%
Applied egg-rr74.4%
unpow-174.4%
Simplified74.4%
Taylor expanded in z around 0 42.1%
mul-1-neg42.1%
unsub-neg42.1%
associate-/l*48.4%
Simplified48.4%
Taylor expanded in t around 0 42.0%
associate-/l*42.0%
Simplified42.0%
Taylor expanded in t around inf 54.5%
Taylor expanded in x around inf 54.6%
if -1.15e-253 < t < 1.1600000000000001e34Initial program 88.0%
Taylor expanded in a around inf 37.9%
if 1.1600000000000001e34 < t < 1.6999999999999999e50Initial program 76.7%
Taylor expanded in x around 0 76.7%
+-commutative76.7%
+-commutative76.7%
distribute-lft-in76.7%
mul-1-neg76.7%
distribute-rgt-neg-in76.7%
associate-/l*76.7%
mul-1-neg76.7%
*-rgt-identity76.7%
associate-+l+76.7%
Simplified100.0%
Taylor expanded in y around inf 82.7%
div-sub82.7%
Simplified82.7%
Taylor expanded in t around 0 28.5%
associate-/l*54.6%
Simplified51.9%
Final simplification45.3%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (* y (/ (- z t) (- a t)))) (t_2 (* x (- 1.0 (/ z a)))))
(if (<= x -1.25e+186)
t_2
(if (<= x -1.9e-20)
t_1
(if (<= x -1.85e-80)
(- x (/ (* t y) a))
(if (<= x 8.2e-17)
t_1
(if (<= x 5.2e+37)
t_2
(if (<= x 1.15e+102) t_1 (+ y (* x (/ z t)))))))))))
double code(double x, double y, double z, double t, double a) {
double t_1 = y * ((z - t) / (a - t));
double t_2 = x * (1.0 - (z / a));
double tmp;
if (x <= -1.25e+186) {
tmp = t_2;
} else if (x <= -1.9e-20) {
tmp = t_1;
} else if (x <= -1.85e-80) {
tmp = x - ((t * y) / a);
} else if (x <= 8.2e-17) {
tmp = t_1;
} else if (x <= 5.2e+37) {
tmp = t_2;
} else if (x <= 1.15e+102) {
tmp = t_1;
} else {
tmp = y + (x * (z / 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) :: t_1
real(8) :: t_2
real(8) :: tmp
t_1 = y * ((z - t) / (a - t))
t_2 = x * (1.0d0 - (z / a))
if (x <= (-1.25d+186)) then
tmp = t_2
else if (x <= (-1.9d-20)) then
tmp = t_1
else if (x <= (-1.85d-80)) then
tmp = x - ((t * y) / a)
else if (x <= 8.2d-17) then
tmp = t_1
else if (x <= 5.2d+37) then
tmp = t_2
else if (x <= 1.15d+102) then
tmp = t_1
else
tmp = y + (x * (z / t))
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double t_1 = y * ((z - t) / (a - t));
double t_2 = x * (1.0 - (z / a));
double tmp;
if (x <= -1.25e+186) {
tmp = t_2;
} else if (x <= -1.9e-20) {
tmp = t_1;
} else if (x <= -1.85e-80) {
tmp = x - ((t * y) / a);
} else if (x <= 8.2e-17) {
tmp = t_1;
} else if (x <= 5.2e+37) {
tmp = t_2;
} else if (x <= 1.15e+102) {
tmp = t_1;
} else {
tmp = y + (x * (z / t));
}
return tmp;
}
def code(x, y, z, t, a): t_1 = y * ((z - t) / (a - t)) t_2 = x * (1.0 - (z / a)) tmp = 0 if x <= -1.25e+186: tmp = t_2 elif x <= -1.9e-20: tmp = t_1 elif x <= -1.85e-80: tmp = x - ((t * y) / a) elif x <= 8.2e-17: tmp = t_1 elif x <= 5.2e+37: tmp = t_2 elif x <= 1.15e+102: tmp = t_1 else: tmp = y + (x * (z / t)) return tmp
function code(x, y, z, t, a) t_1 = Float64(y * Float64(Float64(z - t) / Float64(a - t))) t_2 = Float64(x * Float64(1.0 - Float64(z / a))) tmp = 0.0 if (x <= -1.25e+186) tmp = t_2; elseif (x <= -1.9e-20) tmp = t_1; elseif (x <= -1.85e-80) tmp = Float64(x - Float64(Float64(t * y) / a)); elseif (x <= 8.2e-17) tmp = t_1; elseif (x <= 5.2e+37) tmp = t_2; elseif (x <= 1.15e+102) tmp = t_1; else tmp = Float64(y + Float64(x * Float64(z / t))); end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = y * ((z - t) / (a - t)); t_2 = x * (1.0 - (z / a)); tmp = 0.0; if (x <= -1.25e+186) tmp = t_2; elseif (x <= -1.9e-20) tmp = t_1; elseif (x <= -1.85e-80) tmp = x - ((t * y) / a); elseif (x <= 8.2e-17) tmp = t_1; elseif (x <= 5.2e+37) tmp = t_2; elseif (x <= 1.15e+102) tmp = t_1; else tmp = y + (x * (z / t)); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(y * N[(N[(z - t), $MachinePrecision] / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(x * N[(1.0 - N[(z / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[x, -1.25e+186], t$95$2, If[LessEqual[x, -1.9e-20], t$95$1, If[LessEqual[x, -1.85e-80], N[(x - N[(N[(t * y), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision], If[LessEqual[x, 8.2e-17], t$95$1, If[LessEqual[x, 5.2e+37], t$95$2, If[LessEqual[x, 1.15e+102], t$95$1, N[(y + N[(x * N[(z / t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := y \cdot \frac{z - t}{a - t}\\
t_2 := x \cdot \left(1 - \frac{z}{a}\right)\\
\mathbf{if}\;x \leq -1.25 \cdot 10^{+186}:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;x \leq -1.9 \cdot 10^{-20}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;x \leq -1.85 \cdot 10^{-80}:\\
\;\;\;\;x - \frac{t \cdot y}{a}\\
\mathbf{elif}\;x \leq 8.2 \cdot 10^{-17}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;x \leq 5.2 \cdot 10^{+37}:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;x \leq 1.15 \cdot 10^{+102}:\\
\;\;\;\;t\_1\\
\mathbf{else}:\\
\;\;\;\;y + x \cdot \frac{z}{t}\\
\end{array}
\end{array}
if x < -1.24999999999999988e186 or 8.2000000000000001e-17 < x < 5.1999999999999998e37Initial program 67.9%
Taylor expanded in t around 0 51.6%
Taylor expanded in x around inf 57.1%
mul-1-neg57.1%
unsub-neg57.1%
Simplified57.1%
if -1.24999999999999988e186 < x < -1.8999999999999999e-20 or -1.85000000000000016e-80 < x < 8.2000000000000001e-17 or 5.1999999999999998e37 < x < 1.1499999999999999e102Initial program 67.7%
Taylor expanded in x around 0 70.0%
+-commutative70.0%
+-commutative70.0%
distribute-lft-in70.0%
mul-1-neg70.0%
distribute-rgt-neg-in70.0%
associate-/l*68.1%
mul-1-neg68.1%
*-rgt-identity68.1%
associate-+l+66.4%
Simplified84.8%
Taylor expanded in y around inf 71.7%
div-sub71.7%
Simplified71.7%
if -1.8999999999999999e-20 < x < -1.85000000000000016e-80Initial program 93.3%
Taylor expanded in y around inf 78.0%
associate-/l*84.9%
Simplified84.9%
clear-num84.9%
inv-pow84.9%
Applied egg-rr84.9%
unpow-184.9%
Simplified84.9%
Taylor expanded in z around 0 56.8%
mul-1-neg56.8%
unsub-neg56.8%
associate-/l*63.2%
Simplified63.2%
Taylor expanded in t around 0 56.2%
if 1.1499999999999999e102 < x Initial program 51.6%
Taylor expanded in t around inf 49.6%
associate--l+49.6%
distribute-lft-out--49.6%
div-sub52.2%
mul-1-neg52.2%
unsub-neg52.2%
div-sub49.6%
associate-/l*52.0%
associate-/l*48.7%
distribute-rgt-out--57.0%
Simplified57.0%
*-commutative57.0%
clear-num57.0%
un-div-inv57.0%
Applied egg-rr57.0%
Taylor expanded in y around 0 55.0%
mul-1-neg55.0%
associate-/l*60.6%
Simplified60.6%
Taylor expanded in a around 0 47.7%
+-commutative47.7%
associate-/l*52.4%
Simplified52.4%
Final simplification66.0%
(FPCore (x y z t a)
:precision binary64
(if (<= t -2.2e-25)
(+ y (* x (/ z t)))
(if (<= t -7.5e-155)
(+ x (/ y (/ a z)))
(if (<= t -2.7e-227)
(- x (/ (* x z) a))
(if (<= t -1.2e-253)
(* z (/ (- x y) t))
(if (<= t 7e-62)
(+ x (* y (/ z a)))
(if (<= t 3.8e+86) (* y (/ (- t z) t)) (- y (* x (/ a t))))))))))
double code(double x, double y, double z, double t, double a) {
double tmp;
if (t <= -2.2e-25) {
tmp = y + (x * (z / t));
} else if (t <= -7.5e-155) {
tmp = x + (y / (a / z));
} else if (t <= -2.7e-227) {
tmp = x - ((x * z) / a);
} else if (t <= -1.2e-253) {
tmp = z * ((x - y) / t);
} else if (t <= 7e-62) {
tmp = x + (y * (z / a));
} else if (t <= 3.8e+86) {
tmp = y * ((t - z) / t);
} else {
tmp = y - (x * (a / 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 (t <= (-2.2d-25)) then
tmp = y + (x * (z / t))
else if (t <= (-7.5d-155)) then
tmp = x + (y / (a / z))
else if (t <= (-2.7d-227)) then
tmp = x - ((x * z) / a)
else if (t <= (-1.2d-253)) then
tmp = z * ((x - y) / t)
else if (t <= 7d-62) then
tmp = x + (y * (z / a))
else if (t <= 3.8d+86) then
tmp = y * ((t - z) / t)
else
tmp = y - (x * (a / t))
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double tmp;
if (t <= -2.2e-25) {
tmp = y + (x * (z / t));
} else if (t <= -7.5e-155) {
tmp = x + (y / (a / z));
} else if (t <= -2.7e-227) {
tmp = x - ((x * z) / a);
} else if (t <= -1.2e-253) {
tmp = z * ((x - y) / t);
} else if (t <= 7e-62) {
tmp = x + (y * (z / a));
} else if (t <= 3.8e+86) {
tmp = y * ((t - z) / t);
} else {
tmp = y - (x * (a / t));
}
return tmp;
}
def code(x, y, z, t, a): tmp = 0 if t <= -2.2e-25: tmp = y + (x * (z / t)) elif t <= -7.5e-155: tmp = x + (y / (a / z)) elif t <= -2.7e-227: tmp = x - ((x * z) / a) elif t <= -1.2e-253: tmp = z * ((x - y) / t) elif t <= 7e-62: tmp = x + (y * (z / a)) elif t <= 3.8e+86: tmp = y * ((t - z) / t) else: tmp = y - (x * (a / t)) return tmp
function code(x, y, z, t, a) tmp = 0.0 if (t <= -2.2e-25) tmp = Float64(y + Float64(x * Float64(z / t))); elseif (t <= -7.5e-155) tmp = Float64(x + Float64(y / Float64(a / z))); elseif (t <= -2.7e-227) tmp = Float64(x - Float64(Float64(x * z) / a)); elseif (t <= -1.2e-253) tmp = Float64(z * Float64(Float64(x - y) / t)); elseif (t <= 7e-62) tmp = Float64(x + Float64(y * Float64(z / a))); elseif (t <= 3.8e+86) tmp = Float64(y * Float64(Float64(t - z) / t)); else tmp = Float64(y - Float64(x * Float64(a / t))); end return tmp end
function tmp_2 = code(x, y, z, t, a) tmp = 0.0; if (t <= -2.2e-25) tmp = y + (x * (z / t)); elseif (t <= -7.5e-155) tmp = x + (y / (a / z)); elseif (t <= -2.7e-227) tmp = x - ((x * z) / a); elseif (t <= -1.2e-253) tmp = z * ((x - y) / t); elseif (t <= 7e-62) tmp = x + (y * (z / a)); elseif (t <= 3.8e+86) tmp = y * ((t - z) / t); else tmp = y - (x * (a / t)); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := If[LessEqual[t, -2.2e-25], N[(y + N[(x * N[(z / t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -7.5e-155], N[(x + N[(y / N[(a / z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -2.7e-227], N[(x - N[(N[(x * z), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -1.2e-253], N[(z * N[(N[(x - y), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 7e-62], N[(x + N[(y * N[(z / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 3.8e+86], N[(y * N[(N[(t - z), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision], N[(y - N[(x * N[(a / t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;t \leq -2.2 \cdot 10^{-25}:\\
\;\;\;\;y + x \cdot \frac{z}{t}\\
\mathbf{elif}\;t \leq -7.5 \cdot 10^{-155}:\\
\;\;\;\;x + \frac{y}{\frac{a}{z}}\\
\mathbf{elif}\;t \leq -2.7 \cdot 10^{-227}:\\
\;\;\;\;x - \frac{x \cdot z}{a}\\
\mathbf{elif}\;t \leq -1.2 \cdot 10^{-253}:\\
\;\;\;\;z \cdot \frac{x - y}{t}\\
\mathbf{elif}\;t \leq 7 \cdot 10^{-62}:\\
\;\;\;\;x + y \cdot \frac{z}{a}\\
\mathbf{elif}\;t \leq 3.8 \cdot 10^{+86}:\\
\;\;\;\;y \cdot \frac{t - z}{t}\\
\mathbf{else}:\\
\;\;\;\;y - x \cdot \frac{a}{t}\\
\end{array}
\end{array}
if t < -2.2000000000000002e-25Initial program 52.2%
Taylor expanded in t around inf 63.1%
associate--l+63.1%
distribute-lft-out--63.1%
div-sub63.1%
mul-1-neg63.1%
unsub-neg63.1%
div-sub63.1%
associate-/l*71.8%
associate-/l*82.1%
distribute-rgt-out--82.1%
Simplified82.1%
*-commutative82.1%
clear-num82.0%
un-div-inv82.1%
Applied egg-rr82.1%
Taylor expanded in y around 0 64.9%
mul-1-neg64.9%
associate-/l*70.7%
Simplified70.7%
Taylor expanded in a around 0 57.7%
+-commutative57.7%
associate-/l*60.6%
Simplified60.6%
if -2.2000000000000002e-25 < t < -7.5000000000000006e-155Initial program 83.2%
Taylor expanded in y around inf 62.9%
associate-/l*69.6%
Simplified69.6%
clear-num69.5%
un-div-inv69.5%
Applied egg-rr69.5%
Taylor expanded in t around 0 57.6%
if -7.5000000000000006e-155 < t < -2.7e-227Initial program 99.5%
Taylor expanded in t around 0 64.4%
Taylor expanded in y around 0 64.7%
mul-1-neg64.7%
distribute-lft-neg-out64.7%
*-commutative64.7%
Simplified64.7%
if -2.7e-227 < t < -1.20000000000000005e-253Initial program 99.2%
Taylor expanded in t around inf 62.2%
associate--l+62.2%
distribute-lft-out--62.2%
div-sub62.2%
mul-1-neg62.2%
unsub-neg62.2%
div-sub62.2%
associate-/l*62.2%
associate-/l*35.9%
distribute-rgt-out--62.2%
Simplified62.2%
Taylor expanded in z around inf 62.0%
div-sub62.0%
Simplified62.0%
if -1.20000000000000005e-253 < t < 7.0000000000000003e-62Initial program 90.7%
Taylor expanded in y around inf 75.1%
associate-/l*75.1%
Simplified75.1%
Taylor expanded in t around 0 68.9%
associate-/l*69.0%
Simplified69.0%
if 7.0000000000000003e-62 < t < 3.79999999999999978e86Initial program 66.7%
Taylor expanded in x around 0 69.4%
+-commutative69.4%
+-commutative69.4%
distribute-lft-in69.5%
mul-1-neg69.5%
distribute-rgt-neg-in69.5%
associate-/l*67.2%
mul-1-neg67.2%
*-rgt-identity67.2%
associate-+l+66.7%
Simplified84.9%
Taylor expanded in y around inf 60.7%
div-sub60.7%
Simplified60.7%
Taylor expanded in a around 0 47.0%
mul-1-neg47.0%
Simplified47.0%
if 3.79999999999999978e86 < t Initial program 27.6%
Taylor expanded in t around inf 74.6%
associate--l+74.6%
distribute-lft-out--74.6%
div-sub74.6%
mul-1-neg74.6%
unsub-neg74.6%
div-sub74.6%
associate-/l*80.3%
associate-/l*82.9%
distribute-rgt-out--82.9%
Simplified82.9%
*-commutative82.9%
clear-num82.9%
un-div-inv82.8%
Applied egg-rr82.8%
Taylor expanded in y around 0 80.2%
mul-1-neg80.2%
associate-/l*79.9%
Simplified79.9%
Taylor expanded in z around 0 76.1%
mul-1-neg76.1%
*-commutative76.1%
associate-*r/75.6%
unsub-neg75.6%
Simplified75.6%
Final simplification63.8%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (* y (/ z a))))
(if (<= t -9.8e+100)
y
(if (<= t -4e-131)
(* x (/ z t))
(if (<= t 9.5e-282)
(* t (/ x t))
(if (<= t 6.8e-246)
t_1
(if (<= t 2.2e-165)
x
(if (<= t 1.2e-46) t_1 (if (<= t 2.1e-14) x y)))))))))
double code(double x, double y, double z, double t, double a) {
double t_1 = y * (z / a);
double tmp;
if (t <= -9.8e+100) {
tmp = y;
} else if (t <= -4e-131) {
tmp = x * (z / t);
} else if (t <= 9.5e-282) {
tmp = t * (x / t);
} else if (t <= 6.8e-246) {
tmp = t_1;
} else if (t <= 2.2e-165) {
tmp = x;
} else if (t <= 1.2e-46) {
tmp = t_1;
} else if (t <= 2.1e-14) {
tmp = x;
} else {
tmp = y;
}
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 = y * (z / a)
if (t <= (-9.8d+100)) then
tmp = y
else if (t <= (-4d-131)) then
tmp = x * (z / t)
else if (t <= 9.5d-282) then
tmp = t * (x / t)
else if (t <= 6.8d-246) then
tmp = t_1
else if (t <= 2.2d-165) then
tmp = x
else if (t <= 1.2d-46) then
tmp = t_1
else if (t <= 2.1d-14) then
tmp = x
else
tmp = y
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double t_1 = y * (z / a);
double tmp;
if (t <= -9.8e+100) {
tmp = y;
} else if (t <= -4e-131) {
tmp = x * (z / t);
} else if (t <= 9.5e-282) {
tmp = t * (x / t);
} else if (t <= 6.8e-246) {
tmp = t_1;
} else if (t <= 2.2e-165) {
tmp = x;
} else if (t <= 1.2e-46) {
tmp = t_1;
} else if (t <= 2.1e-14) {
tmp = x;
} else {
tmp = y;
}
return tmp;
}
def code(x, y, z, t, a): t_1 = y * (z / a) tmp = 0 if t <= -9.8e+100: tmp = y elif t <= -4e-131: tmp = x * (z / t) elif t <= 9.5e-282: tmp = t * (x / t) elif t <= 6.8e-246: tmp = t_1 elif t <= 2.2e-165: tmp = x elif t <= 1.2e-46: tmp = t_1 elif t <= 2.1e-14: tmp = x else: tmp = y return tmp
function code(x, y, z, t, a) t_1 = Float64(y * Float64(z / a)) tmp = 0.0 if (t <= -9.8e+100) tmp = y; elseif (t <= -4e-131) tmp = Float64(x * Float64(z / t)); elseif (t <= 9.5e-282) tmp = Float64(t * Float64(x / t)); elseif (t <= 6.8e-246) tmp = t_1; elseif (t <= 2.2e-165) tmp = x; elseif (t <= 1.2e-46) tmp = t_1; elseif (t <= 2.1e-14) tmp = x; else tmp = y; end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = y * (z / a); tmp = 0.0; if (t <= -9.8e+100) tmp = y; elseif (t <= -4e-131) tmp = x * (z / t); elseif (t <= 9.5e-282) tmp = t * (x / t); elseif (t <= 6.8e-246) tmp = t_1; elseif (t <= 2.2e-165) tmp = x; elseif (t <= 1.2e-46) tmp = t_1; elseif (t <= 2.1e-14) tmp = x; else tmp = y; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(y * N[(z / a), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t, -9.8e+100], y, If[LessEqual[t, -4e-131], N[(x * N[(z / t), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 9.5e-282], N[(t * N[(x / t), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 6.8e-246], t$95$1, If[LessEqual[t, 2.2e-165], x, If[LessEqual[t, 1.2e-46], t$95$1, If[LessEqual[t, 2.1e-14], x, y]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := y \cdot \frac{z}{a}\\
\mathbf{if}\;t \leq -9.8 \cdot 10^{+100}:\\
\;\;\;\;y\\
\mathbf{elif}\;t \leq -4 \cdot 10^{-131}:\\
\;\;\;\;x \cdot \frac{z}{t}\\
\mathbf{elif}\;t \leq 9.5 \cdot 10^{-282}:\\
\;\;\;\;t \cdot \frac{x}{t}\\
\mathbf{elif}\;t \leq 6.8 \cdot 10^{-246}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq 2.2 \cdot 10^{-165}:\\
\;\;\;\;x\\
\mathbf{elif}\;t \leq 1.2 \cdot 10^{-46}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq 2.1 \cdot 10^{-14}:\\
\;\;\;\;x\\
\mathbf{else}:\\
\;\;\;\;y\\
\end{array}
\end{array}
if t < -9.79999999999999934e100 or 2.0999999999999999e-14 < t Initial program 37.9%
Taylor expanded in t around inf 55.9%
if -9.79999999999999934e100 < t < -3.9999999999999999e-131Initial program 79.7%
Taylor expanded in t around inf 55.1%
associate--l+55.1%
distribute-lft-out--55.1%
div-sub55.1%
mul-1-neg55.1%
unsub-neg55.1%
div-sub55.1%
associate-/l*53.2%
associate-/l*51.1%
distribute-rgt-out--53.1%
Simplified53.1%
Taylor expanded in y around 0 33.7%
Taylor expanded in z around inf 27.9%
associate-/l*29.8%
Simplified29.8%
if -3.9999999999999999e-131 < t < 9.49999999999999941e-282Initial program 95.8%
Taylor expanded in y around inf 67.4%
associate-/l*67.5%
Simplified67.5%
clear-num67.6%
inv-pow67.6%
Applied egg-rr67.6%
unpow-167.6%
Simplified67.6%
Taylor expanded in z around 0 40.5%
mul-1-neg40.5%
unsub-neg40.5%
associate-/l*42.4%
Simplified42.4%
Taylor expanded in t around 0 40.6%
associate-/l*40.5%
Simplified40.5%
Taylor expanded in t around inf 40.6%
Taylor expanded in x around inf 40.4%
if 9.49999999999999941e-282 < t < 6.8000000000000003e-246 or 2.1999999999999999e-165 < t < 1.20000000000000007e-46Initial program 86.4%
Taylor expanded in x around 0 75.7%
+-commutative75.7%
+-commutative75.7%
distribute-lft-in75.7%
mul-1-neg75.7%
distribute-rgt-neg-in75.7%
associate-/l*79.3%
mul-1-neg79.3%
*-rgt-identity79.3%
associate-+l+79.4%
Simplified92.4%
Taylor expanded in y around inf 58.7%
div-sub58.7%
Simplified58.7%
Taylor expanded in t around 0 35.0%
associate-/l*49.0%
Simplified38.5%
if 6.8000000000000003e-246 < t < 2.1999999999999999e-165 or 1.20000000000000007e-46 < t < 2.0999999999999999e-14Initial program 85.5%
Taylor expanded in a around inf 60.3%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (* x (/ z t))))
(if (<= t -5.7e+100)
y
(if (<= t -4.15e-131)
t_1
(if (<= t -7.4e-164)
x
(if (<= t -2.3e-191)
t_1
(if (<= t 1.62e-9)
x
(if (<= t 18000.0) y (if (<= t 3800000000.0) x y)))))))))
double code(double x, double y, double z, double t, double a) {
double t_1 = x * (z / t);
double tmp;
if (t <= -5.7e+100) {
tmp = y;
} else if (t <= -4.15e-131) {
tmp = t_1;
} else if (t <= -7.4e-164) {
tmp = x;
} else if (t <= -2.3e-191) {
tmp = t_1;
} else if (t <= 1.62e-9) {
tmp = x;
} else if (t <= 18000.0) {
tmp = y;
} else if (t <= 3800000000.0) {
tmp = x;
} else {
tmp = y;
}
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 * (z / t)
if (t <= (-5.7d+100)) then
tmp = y
else if (t <= (-4.15d-131)) then
tmp = t_1
else if (t <= (-7.4d-164)) then
tmp = x
else if (t <= (-2.3d-191)) then
tmp = t_1
else if (t <= 1.62d-9) then
tmp = x
else if (t <= 18000.0d0) then
tmp = y
else if (t <= 3800000000.0d0) then
tmp = x
else
tmp = y
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double t_1 = x * (z / t);
double tmp;
if (t <= -5.7e+100) {
tmp = y;
} else if (t <= -4.15e-131) {
tmp = t_1;
} else if (t <= -7.4e-164) {
tmp = x;
} else if (t <= -2.3e-191) {
tmp = t_1;
} else if (t <= 1.62e-9) {
tmp = x;
} else if (t <= 18000.0) {
tmp = y;
} else if (t <= 3800000000.0) {
tmp = x;
} else {
tmp = y;
}
return tmp;
}
def code(x, y, z, t, a): t_1 = x * (z / t) tmp = 0 if t <= -5.7e+100: tmp = y elif t <= -4.15e-131: tmp = t_1 elif t <= -7.4e-164: tmp = x elif t <= -2.3e-191: tmp = t_1 elif t <= 1.62e-9: tmp = x elif t <= 18000.0: tmp = y elif t <= 3800000000.0: tmp = x else: tmp = y return tmp
function code(x, y, z, t, a) t_1 = Float64(x * Float64(z / t)) tmp = 0.0 if (t <= -5.7e+100) tmp = y; elseif (t <= -4.15e-131) tmp = t_1; elseif (t <= -7.4e-164) tmp = x; elseif (t <= -2.3e-191) tmp = t_1; elseif (t <= 1.62e-9) tmp = x; elseif (t <= 18000.0) tmp = y; elseif (t <= 3800000000.0) tmp = x; else tmp = y; end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = x * (z / t); tmp = 0.0; if (t <= -5.7e+100) tmp = y; elseif (t <= -4.15e-131) tmp = t_1; elseif (t <= -7.4e-164) tmp = x; elseif (t <= -2.3e-191) tmp = t_1; elseif (t <= 1.62e-9) tmp = x; elseif (t <= 18000.0) tmp = y; elseif (t <= 3800000000.0) tmp = x; else tmp = y; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(x * N[(z / t), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t, -5.7e+100], y, If[LessEqual[t, -4.15e-131], t$95$1, If[LessEqual[t, -7.4e-164], x, If[LessEqual[t, -2.3e-191], t$95$1, If[LessEqual[t, 1.62e-9], x, If[LessEqual[t, 18000.0], y, If[LessEqual[t, 3800000000.0], x, y]]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := x \cdot \frac{z}{t}\\
\mathbf{if}\;t \leq -5.7 \cdot 10^{+100}:\\
\;\;\;\;y\\
\mathbf{elif}\;t \leq -4.15 \cdot 10^{-131}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq -7.4 \cdot 10^{-164}:\\
\;\;\;\;x\\
\mathbf{elif}\;t \leq -2.3 \cdot 10^{-191}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq 1.62 \cdot 10^{-9}:\\
\;\;\;\;x\\
\mathbf{elif}\;t \leq 18000:\\
\;\;\;\;y\\
\mathbf{elif}\;t \leq 3800000000:\\
\;\;\;\;x\\
\mathbf{else}:\\
\;\;\;\;y\\
\end{array}
\end{array}
if t < -5.69999999999999984e100 or 1.61999999999999999e-9 < t < 18000 or 3.8e9 < t Initial program 37.3%
Taylor expanded in t around inf 56.4%
if -5.69999999999999984e100 < t < -4.14999999999999982e-131 or -7.3999999999999998e-164 < t < -2.30000000000000011e-191Initial program 81.8%
Taylor expanded in t around inf 55.2%
associate--l+55.2%
distribute-lft-out--55.2%
div-sub55.2%
mul-1-neg55.2%
unsub-neg55.2%
div-sub55.2%
associate-/l*51.8%
associate-/l*47.8%
distribute-rgt-out--51.7%
Simplified51.7%
Taylor expanded in y around 0 34.4%
Taylor expanded in z around inf 28.8%
associate-/l*30.5%
Simplified30.5%
if -4.14999999999999982e-131 < t < -7.3999999999999998e-164 or -2.30000000000000011e-191 < t < 1.61999999999999999e-9 or 18000 < t < 3.8e9Initial program 90.0%
Taylor expanded in a around inf 40.0%
(FPCore (x y z t a)
:precision binary64
(if (<= t -5.4e+121)
y
(if (<= t -5.6e-52)
(* z (/ x t))
(if (<= t -7.5e-194)
(/ (* x z) t)
(if (<= t -1.8e-243)
(* t (/ x t))
(if (<= t 3e-173) x (if (<= t 9.5e-76) (* t (/ (- y) a)) y)))))))
double code(double x, double y, double z, double t, double a) {
double tmp;
if (t <= -5.4e+121) {
tmp = y;
} else if (t <= -5.6e-52) {
tmp = z * (x / t);
} else if (t <= -7.5e-194) {
tmp = (x * z) / t;
} else if (t <= -1.8e-243) {
tmp = t * (x / t);
} else if (t <= 3e-173) {
tmp = x;
} else if (t <= 9.5e-76) {
tmp = t * (-y / a);
} else {
tmp = y;
}
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 (t <= (-5.4d+121)) then
tmp = y
else if (t <= (-5.6d-52)) then
tmp = z * (x / t)
else if (t <= (-7.5d-194)) then
tmp = (x * z) / t
else if (t <= (-1.8d-243)) then
tmp = t * (x / t)
else if (t <= 3d-173) then
tmp = x
else if (t <= 9.5d-76) then
tmp = t * (-y / a)
else
tmp = y
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double tmp;
if (t <= -5.4e+121) {
tmp = y;
} else if (t <= -5.6e-52) {
tmp = z * (x / t);
} else if (t <= -7.5e-194) {
tmp = (x * z) / t;
} else if (t <= -1.8e-243) {
tmp = t * (x / t);
} else if (t <= 3e-173) {
tmp = x;
} else if (t <= 9.5e-76) {
tmp = t * (-y / a);
} else {
tmp = y;
}
return tmp;
}
def code(x, y, z, t, a): tmp = 0 if t <= -5.4e+121: tmp = y elif t <= -5.6e-52: tmp = z * (x / t) elif t <= -7.5e-194: tmp = (x * z) / t elif t <= -1.8e-243: tmp = t * (x / t) elif t <= 3e-173: tmp = x elif t <= 9.5e-76: tmp = t * (-y / a) else: tmp = y return tmp
function code(x, y, z, t, a) tmp = 0.0 if (t <= -5.4e+121) tmp = y; elseif (t <= -5.6e-52) tmp = Float64(z * Float64(x / t)); elseif (t <= -7.5e-194) tmp = Float64(Float64(x * z) / t); elseif (t <= -1.8e-243) tmp = Float64(t * Float64(x / t)); elseif (t <= 3e-173) tmp = x; elseif (t <= 9.5e-76) tmp = Float64(t * Float64(Float64(-y) / a)); else tmp = y; end return tmp end
function tmp_2 = code(x, y, z, t, a) tmp = 0.0; if (t <= -5.4e+121) tmp = y; elseif (t <= -5.6e-52) tmp = z * (x / t); elseif (t <= -7.5e-194) tmp = (x * z) / t; elseif (t <= -1.8e-243) tmp = t * (x / t); elseif (t <= 3e-173) tmp = x; elseif (t <= 9.5e-76) tmp = t * (-y / a); else tmp = y; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := If[LessEqual[t, -5.4e+121], y, If[LessEqual[t, -5.6e-52], N[(z * N[(x / t), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -7.5e-194], N[(N[(x * z), $MachinePrecision] / t), $MachinePrecision], If[LessEqual[t, -1.8e-243], N[(t * N[(x / t), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 3e-173], x, If[LessEqual[t, 9.5e-76], N[(t * N[((-y) / a), $MachinePrecision]), $MachinePrecision], y]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;t \leq -5.4 \cdot 10^{+121}:\\
\;\;\;\;y\\
\mathbf{elif}\;t \leq -5.6 \cdot 10^{-52}:\\
\;\;\;\;z \cdot \frac{x}{t}\\
\mathbf{elif}\;t \leq -7.5 \cdot 10^{-194}:\\
\;\;\;\;\frac{x \cdot z}{t}\\
\mathbf{elif}\;t \leq -1.8 \cdot 10^{-243}:\\
\;\;\;\;t \cdot \frac{x}{t}\\
\mathbf{elif}\;t \leq 3 \cdot 10^{-173}:\\
\;\;\;\;x\\
\mathbf{elif}\;t \leq 9.5 \cdot 10^{-76}:\\
\;\;\;\;t \cdot \frac{-y}{a}\\
\mathbf{else}:\\
\;\;\;\;y\\
\end{array}
\end{array}
if t < -5.4000000000000004e121 or 9.49999999999999984e-76 < t Initial program 43.2%
Taylor expanded in t around inf 52.8%
if -5.4000000000000004e121 < t < -5.59999999999999989e-52Initial program 69.5%
Taylor expanded in t around inf 64.0%
associate--l+64.0%
distribute-lft-out--64.0%
div-sub64.0%
mul-1-neg64.0%
unsub-neg64.0%
div-sub64.0%
associate-/l*66.8%
associate-/l*63.9%
distribute-rgt-out--66.7%
Simplified66.7%
Taylor expanded in z around inf 42.3%
div-sub42.3%
Simplified42.3%
Taylor expanded in x around inf 31.3%
if -5.59999999999999989e-52 < t < -7.4999999999999998e-194Initial program 87.7%
Taylor expanded in t around inf 42.6%
associate--l+42.6%
distribute-lft-out--42.6%
div-sub45.7%
mul-1-neg45.7%
unsub-neg45.7%
div-sub42.6%
associate-/l*36.3%
associate-/l*32.9%
distribute-rgt-out--39.8%
Simplified39.8%
Taylor expanded in y around 0 34.3%
Taylor expanded in z around inf 34.2%
*-commutative34.2%
Simplified34.2%
if -7.4999999999999998e-194 < t < -1.8000000000000001e-243Initial program 99.4%
Taylor expanded in y around inf 73.4%
associate-/l*73.5%
Simplified73.5%
clear-num73.5%
inv-pow73.5%
Applied egg-rr73.5%
unpow-173.5%
Simplified73.5%
Taylor expanded in z around 0 55.9%
mul-1-neg55.9%
unsub-neg55.9%
associate-/l*64.3%
Simplified64.3%
Taylor expanded in t around 0 55.8%
associate-/l*55.8%
Simplified55.8%
Taylor expanded in t around inf 55.7%
Taylor expanded in x around inf 55.7%
if -1.8000000000000001e-243 < t < 3.0000000000000001e-173Initial program 91.9%
Taylor expanded in a around inf 45.6%
if 3.0000000000000001e-173 < t < 9.49999999999999984e-76Initial program 88.3%
Taylor expanded in y around inf 64.6%
associate-/l*70.5%
Simplified70.5%
clear-num70.5%
inv-pow70.5%
Applied egg-rr70.5%
unpow-170.5%
Simplified70.5%
Taylor expanded in z around 0 33.7%
mul-1-neg33.7%
unsub-neg33.7%
associate-/l*39.6%
Simplified39.6%
Taylor expanded in t around 0 40.0%
associate-/l*51.7%
Simplified51.7%
Taylor expanded in x around 0 27.9%
associate-/l*39.6%
associate-*r*39.6%
neg-mul-139.6%
*-commutative39.6%
Simplified39.6%
Final simplification45.5%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (+ x (/ y (/ a z)))))
(if (<= t -4.2e-21)
(+ y (* x (/ z t)))
(if (<= t -9e-155)
t_1
(if (<= t -8e-281)
(* x (- 1.0 (/ z a)))
(if (<= t 4e-246)
(+ x (/ (* y z) a))
(if (<= t 6e-87) t_1 (- y (* x (/ a t))))))))))
double code(double x, double y, double z, double t, double a) {
double t_1 = x + (y / (a / z));
double tmp;
if (t <= -4.2e-21) {
tmp = y + (x * (z / t));
} else if (t <= -9e-155) {
tmp = t_1;
} else if (t <= -8e-281) {
tmp = x * (1.0 - (z / a));
} else if (t <= 4e-246) {
tmp = x + ((y * z) / a);
} else if (t <= 6e-87) {
tmp = t_1;
} else {
tmp = y - (x * (a / 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) :: t_1
real(8) :: tmp
t_1 = x + (y / (a / z))
if (t <= (-4.2d-21)) then
tmp = y + (x * (z / t))
else if (t <= (-9d-155)) then
tmp = t_1
else if (t <= (-8d-281)) then
tmp = x * (1.0d0 - (z / a))
else if (t <= 4d-246) then
tmp = x + ((y * z) / a)
else if (t <= 6d-87) then
tmp = t_1
else
tmp = y - (x * (a / t))
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 (t <= -4.2e-21) {
tmp = y + (x * (z / t));
} else if (t <= -9e-155) {
tmp = t_1;
} else if (t <= -8e-281) {
tmp = x * (1.0 - (z / a));
} else if (t <= 4e-246) {
tmp = x + ((y * z) / a);
} else if (t <= 6e-87) {
tmp = t_1;
} else {
tmp = y - (x * (a / t));
}
return tmp;
}
def code(x, y, z, t, a): t_1 = x + (y / (a / z)) tmp = 0 if t <= -4.2e-21: tmp = y + (x * (z / t)) elif t <= -9e-155: tmp = t_1 elif t <= -8e-281: tmp = x * (1.0 - (z / a)) elif t <= 4e-246: tmp = x + ((y * z) / a) elif t <= 6e-87: tmp = t_1 else: tmp = y - (x * (a / t)) return tmp
function code(x, y, z, t, a) t_1 = Float64(x + Float64(y / Float64(a / z))) tmp = 0.0 if (t <= -4.2e-21) tmp = Float64(y + Float64(x * Float64(z / t))); elseif (t <= -9e-155) tmp = t_1; elseif (t <= -8e-281) tmp = Float64(x * Float64(1.0 - Float64(z / a))); elseif (t <= 4e-246) tmp = Float64(x + Float64(Float64(y * z) / a)); elseif (t <= 6e-87) tmp = t_1; else tmp = Float64(y - Float64(x * Float64(a / t))); end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = x + (y / (a / z)); tmp = 0.0; if (t <= -4.2e-21) tmp = y + (x * (z / t)); elseif (t <= -9e-155) tmp = t_1; elseif (t <= -8e-281) tmp = x * (1.0 - (z / a)); elseif (t <= 4e-246) tmp = x + ((y * z) / a); elseif (t <= 6e-87) tmp = t_1; else tmp = y - (x * (a / t)); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(x + N[(y / N[(a / z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t, -4.2e-21], N[(y + N[(x * N[(z / t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -9e-155], t$95$1, If[LessEqual[t, -8e-281], N[(x * N[(1.0 - N[(z / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 4e-246], N[(x + N[(N[(y * z), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 6e-87], t$95$1, N[(y - N[(x * N[(a / t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := x + \frac{y}{\frac{a}{z}}\\
\mathbf{if}\;t \leq -4.2 \cdot 10^{-21}:\\
\;\;\;\;y + x \cdot \frac{z}{t}\\
\mathbf{elif}\;t \leq -9 \cdot 10^{-155}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq -8 \cdot 10^{-281}:\\
\;\;\;\;x \cdot \left(1 - \frac{z}{a}\right)\\
\mathbf{elif}\;t \leq 4 \cdot 10^{-246}:\\
\;\;\;\;x + \frac{y \cdot z}{a}\\
\mathbf{elif}\;t \leq 6 \cdot 10^{-87}:\\
\;\;\;\;t\_1\\
\mathbf{else}:\\
\;\;\;\;y - x \cdot \frac{a}{t}\\
\end{array}
\end{array}
if t < -4.20000000000000025e-21Initial program 52.2%
Taylor expanded in t around inf 63.1%
associate--l+63.1%
distribute-lft-out--63.1%
div-sub63.1%
mul-1-neg63.1%
unsub-neg63.1%
div-sub63.1%
associate-/l*71.8%
associate-/l*82.1%
distribute-rgt-out--82.1%
Simplified82.1%
*-commutative82.1%
clear-num82.0%
un-div-inv82.1%
Applied egg-rr82.1%
Taylor expanded in y around 0 64.9%
mul-1-neg64.9%
associate-/l*70.7%
Simplified70.7%
Taylor expanded in a around 0 57.7%
+-commutative57.7%
associate-/l*60.6%
Simplified60.6%
if -4.20000000000000025e-21 < t < -9.0000000000000007e-155 or 3.99999999999999982e-246 < t < 6.00000000000000033e-87Initial program 85.4%
Taylor expanded in y around inf 72.5%
associate-/l*77.3%
Simplified77.3%
clear-num77.3%
un-div-inv77.3%
Applied egg-rr77.3%
Taylor expanded in t around 0 66.8%
if -9.0000000000000007e-155 < t < -8.0000000000000001e-281Initial program 96.5%
Taylor expanded in t around 0 64.6%
Taylor expanded in x around inf 58.1%
mul-1-neg58.1%
unsub-neg58.1%
Simplified58.1%
if -8.0000000000000001e-281 < t < 3.99999999999999982e-246Initial program 99.8%
Taylor expanded in y around inf 79.9%
associate-/l*75.3%
Simplified75.3%
Taylor expanded in t around 0 79.9%
if 6.00000000000000033e-87 < t Initial program 45.2%
Taylor expanded in t around inf 67.6%
associate--l+67.6%
distribute-lft-out--67.6%
div-sub67.6%
mul-1-neg67.6%
unsub-neg67.6%
div-sub67.6%
associate-/l*73.1%
associate-/l*74.5%
distribute-rgt-out--74.5%
Simplified74.5%
*-commutative74.5%
clear-num74.5%
un-div-inv74.5%
Applied egg-rr74.5%
Taylor expanded in y around 0 66.3%
mul-1-neg66.3%
associate-/l*66.4%
Simplified66.4%
Taylor expanded in z around 0 60.2%
mul-1-neg60.2%
*-commutative60.2%
associate-*r/59.1%
unsub-neg59.1%
Simplified59.1%
Final simplification62.8%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (+ x (/ y (/ a z)))) (t_2 (+ y (* x (/ z t)))))
(if (<= t -9.5e-23)
t_2
(if (<= t -2.4e-151)
t_1
(if (<= t -8e-281)
(* x (- 1.0 (/ z a)))
(if (<= t 3e-245)
(+ x (/ (* y z) a))
(if (<= t 5.2e-87) t_1 t_2)))))))
double code(double x, double y, double z, double t, double a) {
double t_1 = x + (y / (a / z));
double t_2 = y + (x * (z / t));
double tmp;
if (t <= -9.5e-23) {
tmp = t_2;
} else if (t <= -2.4e-151) {
tmp = t_1;
} else if (t <= -8e-281) {
tmp = x * (1.0 - (z / a));
} else if (t <= 3e-245) {
tmp = x + ((y * z) / a);
} else if (t <= 5.2e-87) {
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 = x + (y / (a / z))
t_2 = y + (x * (z / t))
if (t <= (-9.5d-23)) then
tmp = t_2
else if (t <= (-2.4d-151)) then
tmp = t_1
else if (t <= (-8d-281)) then
tmp = x * (1.0d0 - (z / a))
else if (t <= 3d-245) then
tmp = x + ((y * z) / a)
else if (t <= 5.2d-87) 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 = x + (y / (a / z));
double t_2 = y + (x * (z / t));
double tmp;
if (t <= -9.5e-23) {
tmp = t_2;
} else if (t <= -2.4e-151) {
tmp = t_1;
} else if (t <= -8e-281) {
tmp = x * (1.0 - (z / a));
} else if (t <= 3e-245) {
tmp = x + ((y * z) / a);
} else if (t <= 5.2e-87) {
tmp = t_1;
} else {
tmp = t_2;
}
return tmp;
}
def code(x, y, z, t, a): t_1 = x + (y / (a / z)) t_2 = y + (x * (z / t)) tmp = 0 if t <= -9.5e-23: tmp = t_2 elif t <= -2.4e-151: tmp = t_1 elif t <= -8e-281: tmp = x * (1.0 - (z / a)) elif t <= 3e-245: tmp = x + ((y * z) / a) elif t <= 5.2e-87: tmp = t_1 else: tmp = t_2 return tmp
function code(x, y, z, t, a) t_1 = Float64(x + Float64(y / Float64(a / z))) t_2 = Float64(y + Float64(x * Float64(z / t))) tmp = 0.0 if (t <= -9.5e-23) tmp = t_2; elseif (t <= -2.4e-151) tmp = t_1; elseif (t <= -8e-281) tmp = Float64(x * Float64(1.0 - Float64(z / a))); elseif (t <= 3e-245) tmp = Float64(x + Float64(Float64(y * z) / a)); elseif (t <= 5.2e-87) tmp = t_1; else tmp = t_2; end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = x + (y / (a / z)); t_2 = y + (x * (z / t)); tmp = 0.0; if (t <= -9.5e-23) tmp = t_2; elseif (t <= -2.4e-151) tmp = t_1; elseif (t <= -8e-281) tmp = x * (1.0 - (z / a)); elseif (t <= 3e-245) tmp = x + ((y * z) / a); elseif (t <= 5.2e-87) tmp = t_1; else tmp = t_2; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(x + N[(y / N[(a / z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(y + N[(x * N[(z / t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t, -9.5e-23], t$95$2, If[LessEqual[t, -2.4e-151], t$95$1, If[LessEqual[t, -8e-281], N[(x * N[(1.0 - N[(z / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 3e-245], N[(x + N[(N[(y * z), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 5.2e-87], t$95$1, t$95$2]]]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := x + \frac{y}{\frac{a}{z}}\\
t_2 := y + x \cdot \frac{z}{t}\\
\mathbf{if}\;t \leq -9.5 \cdot 10^{-23}:\\
\;\;\;\;t\_2\\
\mathbf{elif}\;t \leq -2.4 \cdot 10^{-151}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq -8 \cdot 10^{-281}:\\
\;\;\;\;x \cdot \left(1 - \frac{z}{a}\right)\\
\mathbf{elif}\;t \leq 3 \cdot 10^{-245}:\\
\;\;\;\;x + \frac{y \cdot z}{a}\\
\mathbf{elif}\;t \leq 5.2 \cdot 10^{-87}:\\
\;\;\;\;t\_1\\
\mathbf{else}:\\
\;\;\;\;t\_2\\
\end{array}
\end{array}
if t < -9.50000000000000058e-23 or 5.20000000000000005e-87 < t Initial program 48.4%
Taylor expanded in t around inf 65.6%
associate--l+65.6%
distribute-lft-out--65.6%
div-sub65.6%
mul-1-neg65.6%
unsub-neg65.6%
div-sub65.6%
associate-/l*72.5%
associate-/l*77.9%
distribute-rgt-out--77.9%
Simplified77.9%
*-commutative77.9%
clear-num77.9%
un-div-inv77.9%
Applied egg-rr77.9%
Taylor expanded in y around 0 65.7%
mul-1-neg65.7%
associate-/l*68.3%
Simplified68.3%
Taylor expanded in a around 0 56.0%
+-commutative56.0%
associate-/l*57.9%
Simplified57.9%
if -9.50000000000000058e-23 < t < -2.4e-151 or 3.0000000000000002e-245 < t < 5.20000000000000005e-87Initial program 85.4%
Taylor expanded in y around inf 72.5%
associate-/l*77.3%
Simplified77.3%
clear-num77.3%
un-div-inv77.3%
Applied egg-rr77.3%
Taylor expanded in t around 0 66.8%
if -2.4e-151 < t < -8.0000000000000001e-281Initial program 96.5%
Taylor expanded in t around 0 64.6%
Taylor expanded in x around inf 58.1%
mul-1-neg58.1%
unsub-neg58.1%
Simplified58.1%
if -8.0000000000000001e-281 < t < 3.0000000000000002e-245Initial program 99.8%
Taylor expanded in y around inf 79.9%
associate-/l*75.3%
Simplified75.3%
Taylor expanded in t around 0 79.9%
Final simplification61.7%
(FPCore (x y z t a)
:precision binary64
(if (<= t -2.5e+220)
y
(if (<= t -3.3e+65)
(* x (/ (- z a) t))
(if (<= t -5.8e+23)
(+ y x)
(if (<= t -7.5e-82)
(* y (/ (- z t) a))
(if (<= t 1.4e-61) (* x (- 1.0 (/ z a))) y))))))
double code(double x, double y, double z, double t, double a) {
double tmp;
if (t <= -2.5e+220) {
tmp = y;
} else if (t <= -3.3e+65) {
tmp = x * ((z - a) / t);
} else if (t <= -5.8e+23) {
tmp = y + x;
} else if (t <= -7.5e-82) {
tmp = y * ((z - t) / a);
} else if (t <= 1.4e-61) {
tmp = x * (1.0 - (z / a));
} else {
tmp = y;
}
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 (t <= (-2.5d+220)) then
tmp = y
else if (t <= (-3.3d+65)) then
tmp = x * ((z - a) / t)
else if (t <= (-5.8d+23)) then
tmp = y + x
else if (t <= (-7.5d-82)) then
tmp = y * ((z - t) / a)
else if (t <= 1.4d-61) then
tmp = x * (1.0d0 - (z / a))
else
tmp = y
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double tmp;
if (t <= -2.5e+220) {
tmp = y;
} else if (t <= -3.3e+65) {
tmp = x * ((z - a) / t);
} else if (t <= -5.8e+23) {
tmp = y + x;
} else if (t <= -7.5e-82) {
tmp = y * ((z - t) / a);
} else if (t <= 1.4e-61) {
tmp = x * (1.0 - (z / a));
} else {
tmp = y;
}
return tmp;
}
def code(x, y, z, t, a): tmp = 0 if t <= -2.5e+220: tmp = y elif t <= -3.3e+65: tmp = x * ((z - a) / t) elif t <= -5.8e+23: tmp = y + x elif t <= -7.5e-82: tmp = y * ((z - t) / a) elif t <= 1.4e-61: tmp = x * (1.0 - (z / a)) else: tmp = y return tmp
function code(x, y, z, t, a) tmp = 0.0 if (t <= -2.5e+220) tmp = y; elseif (t <= -3.3e+65) tmp = Float64(x * Float64(Float64(z - a) / t)); elseif (t <= -5.8e+23) tmp = Float64(y + x); elseif (t <= -7.5e-82) tmp = Float64(y * Float64(Float64(z - t) / a)); elseif (t <= 1.4e-61) tmp = Float64(x * Float64(1.0 - Float64(z / a))); else tmp = y; end return tmp end
function tmp_2 = code(x, y, z, t, a) tmp = 0.0; if (t <= -2.5e+220) tmp = y; elseif (t <= -3.3e+65) tmp = x * ((z - a) / t); elseif (t <= -5.8e+23) tmp = y + x; elseif (t <= -7.5e-82) tmp = y * ((z - t) / a); elseif (t <= 1.4e-61) tmp = x * (1.0 - (z / a)); else tmp = y; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := If[LessEqual[t, -2.5e+220], y, If[LessEqual[t, -3.3e+65], N[(x * N[(N[(z - a), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -5.8e+23], N[(y + x), $MachinePrecision], If[LessEqual[t, -7.5e-82], N[(y * N[(N[(z - t), $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 1.4e-61], N[(x * N[(1.0 - N[(z / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], y]]]]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;t \leq -2.5 \cdot 10^{+220}:\\
\;\;\;\;y\\
\mathbf{elif}\;t \leq -3.3 \cdot 10^{+65}:\\
\;\;\;\;x \cdot \frac{z - a}{t}\\
\mathbf{elif}\;t \leq -5.8 \cdot 10^{+23}:\\
\;\;\;\;y + x\\
\mathbf{elif}\;t \leq -7.5 \cdot 10^{-82}:\\
\;\;\;\;y \cdot \frac{z - t}{a}\\
\mathbf{elif}\;t \leq 1.4 \cdot 10^{-61}:\\
\;\;\;\;x \cdot \left(1 - \frac{z}{a}\right)\\
\mathbf{else}:\\
\;\;\;\;y\\
\end{array}
\end{array}
if t < -2.5000000000000001e220 or 1.4000000000000001e-61 < t Initial program 40.4%
Taylor expanded in t around inf 58.7%
if -2.5000000000000001e220 < t < -3.30000000000000023e65Initial program 49.6%
Taylor expanded in t around inf 63.3%
associate--l+63.3%
distribute-lft-out--63.3%
div-sub63.3%
mul-1-neg63.3%
unsub-neg63.3%
div-sub63.3%
associate-/l*75.1%
associate-/l*81.2%
distribute-rgt-out--81.2%
Simplified81.2%
Taylor expanded in y around 0 33.9%
associate-/l*39.7%
Simplified39.7%
if -3.30000000000000023e65 < t < -5.80000000000000025e23Initial program 75.2%
Taylor expanded in y around inf 60.6%
associate-/l*60.7%
Simplified60.7%
Taylor expanded in t around inf 48.9%
if -5.80000000000000025e23 < t < -7.4999999999999997e-82Initial program 82.4%
Taylor expanded in x around 0 82.5%
+-commutative82.5%
+-commutative82.5%
distribute-lft-in82.6%
mul-1-neg82.6%
distribute-rgt-neg-in82.6%
associate-/l*82.0%
mul-1-neg82.0%
*-rgt-identity82.0%
associate-+l+82.1%
Simplified91.9%
Taylor expanded in y around inf 54.9%
div-sub54.9%
Simplified54.9%
Taylor expanded in a around inf 37.8%
associate-/l*42.2%
Simplified42.2%
if -7.4999999999999997e-82 < t < 1.4000000000000001e-61Initial program 92.2%
Taylor expanded in t around 0 73.2%
Taylor expanded in x around inf 56.9%
mul-1-neg56.9%
unsub-neg56.9%
Simplified56.9%
Final simplification53.9%
(FPCore (x y z t a)
:precision binary64
(if (<= t -4.2e+219)
y
(if (<= t -3.4e+65)
(* x (/ (- z a) t))
(if (<= t -1.62e+22)
(+ y x)
(if (<= t -6.2e-87)
(* y (/ z (- a t)))
(if (<= t 1.4e-61) (* x (- 1.0 (/ z a))) y))))))
double code(double x, double y, double z, double t, double a) {
double tmp;
if (t <= -4.2e+219) {
tmp = y;
} else if (t <= -3.4e+65) {
tmp = x * ((z - a) / t);
} else if (t <= -1.62e+22) {
tmp = y + x;
} else if (t <= -6.2e-87) {
tmp = y * (z / (a - t));
} else if (t <= 1.4e-61) {
tmp = x * (1.0 - (z / a));
} else {
tmp = y;
}
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 (t <= (-4.2d+219)) then
tmp = y
else if (t <= (-3.4d+65)) then
tmp = x * ((z - a) / t)
else if (t <= (-1.62d+22)) then
tmp = y + x
else if (t <= (-6.2d-87)) then
tmp = y * (z / (a - t))
else if (t <= 1.4d-61) then
tmp = x * (1.0d0 - (z / a))
else
tmp = y
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double tmp;
if (t <= -4.2e+219) {
tmp = y;
} else if (t <= -3.4e+65) {
tmp = x * ((z - a) / t);
} else if (t <= -1.62e+22) {
tmp = y + x;
} else if (t <= -6.2e-87) {
tmp = y * (z / (a - t));
} else if (t <= 1.4e-61) {
tmp = x * (1.0 - (z / a));
} else {
tmp = y;
}
return tmp;
}
def code(x, y, z, t, a): tmp = 0 if t <= -4.2e+219: tmp = y elif t <= -3.4e+65: tmp = x * ((z - a) / t) elif t <= -1.62e+22: tmp = y + x elif t <= -6.2e-87: tmp = y * (z / (a - t)) elif t <= 1.4e-61: tmp = x * (1.0 - (z / a)) else: tmp = y return tmp
function code(x, y, z, t, a) tmp = 0.0 if (t <= -4.2e+219) tmp = y; elseif (t <= -3.4e+65) tmp = Float64(x * Float64(Float64(z - a) / t)); elseif (t <= -1.62e+22) tmp = Float64(y + x); elseif (t <= -6.2e-87) tmp = Float64(y * Float64(z / Float64(a - t))); elseif (t <= 1.4e-61) tmp = Float64(x * Float64(1.0 - Float64(z / a))); else tmp = y; end return tmp end
function tmp_2 = code(x, y, z, t, a) tmp = 0.0; if (t <= -4.2e+219) tmp = y; elseif (t <= -3.4e+65) tmp = x * ((z - a) / t); elseif (t <= -1.62e+22) tmp = y + x; elseif (t <= -6.2e-87) tmp = y * (z / (a - t)); elseif (t <= 1.4e-61) tmp = x * (1.0 - (z / a)); else tmp = y; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := If[LessEqual[t, -4.2e+219], y, If[LessEqual[t, -3.4e+65], N[(x * N[(N[(z - a), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, -1.62e+22], N[(y + x), $MachinePrecision], If[LessEqual[t, -6.2e-87], N[(y * N[(z / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 1.4e-61], N[(x * N[(1.0 - N[(z / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], y]]]]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;t \leq -4.2 \cdot 10^{+219}:\\
\;\;\;\;y\\
\mathbf{elif}\;t \leq -3.4 \cdot 10^{+65}:\\
\;\;\;\;x \cdot \frac{z - a}{t}\\
\mathbf{elif}\;t \leq -1.62 \cdot 10^{+22}:\\
\;\;\;\;y + x\\
\mathbf{elif}\;t \leq -6.2 \cdot 10^{-87}:\\
\;\;\;\;y \cdot \frac{z}{a - t}\\
\mathbf{elif}\;t \leq 1.4 \cdot 10^{-61}:\\
\;\;\;\;x \cdot \left(1 - \frac{z}{a}\right)\\
\mathbf{else}:\\
\;\;\;\;y\\
\end{array}
\end{array}
if t < -4.19999999999999976e219 or 1.4000000000000001e-61 < t Initial program 40.4%
Taylor expanded in t around inf 58.7%
if -4.19999999999999976e219 < t < -3.3999999999999999e65Initial program 49.6%
Taylor expanded in t around inf 63.3%
associate--l+63.3%
distribute-lft-out--63.3%
div-sub63.3%
mul-1-neg63.3%
unsub-neg63.3%
div-sub63.3%
associate-/l*75.1%
associate-/l*81.2%
distribute-rgt-out--81.2%
Simplified81.2%
Taylor expanded in y around 0 33.9%
associate-/l*39.7%
Simplified39.7%
if -3.3999999999999999e65 < t < -1.62e22Initial program 75.2%
Taylor expanded in y around inf 60.6%
associate-/l*60.7%
Simplified60.7%
Taylor expanded in t around inf 48.9%
if -1.62e22 < t < -6.19999999999999995e-87Initial program 83.2%
Taylor expanded in x around 0 83.3%
+-commutative83.3%
+-commutative83.3%
distribute-lft-in83.4%
mul-1-neg83.4%
distribute-rgt-neg-in83.4%
associate-/l*82.7%
mul-1-neg82.7%
*-rgt-identity82.7%
associate-+l+82.8%
Simplified92.2%
Taylor expanded in y around inf 56.8%
div-sub56.8%
Simplified56.8%
Taylor expanded in z around inf 35.6%
associate-/l*39.9%
Simplified39.9%
if -6.19999999999999995e-87 < t < 1.4000000000000001e-61Initial program 92.1%
Taylor expanded in t around 0 73.0%
Taylor expanded in x around inf 57.4%
mul-1-neg57.4%
unsub-neg57.4%
Simplified57.4%
Final simplification53.8%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (* x (- 1.0 (/ z a)))))
(if (<= t -1.26e+101)
y
(if (<= t -3e-51)
t_1
(if (<= t -7.3e-87) (/ y (/ a z)) (if (<= t 3.6e-62) t_1 y))))))
double code(double x, double y, double z, double t, double a) {
double t_1 = x * (1.0 - (z / a));
double tmp;
if (t <= -1.26e+101) {
tmp = y;
} else if (t <= -3e-51) {
tmp = t_1;
} else if (t <= -7.3e-87) {
tmp = y / (a / z);
} else if (t <= 3.6e-62) {
tmp = t_1;
} else {
tmp = y;
}
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 * (1.0d0 - (z / a))
if (t <= (-1.26d+101)) then
tmp = y
else if (t <= (-3d-51)) then
tmp = t_1
else if (t <= (-7.3d-87)) then
tmp = y / (a / z)
else if (t <= 3.6d-62) then
tmp = t_1
else
tmp = y
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double t_1 = x * (1.0 - (z / a));
double tmp;
if (t <= -1.26e+101) {
tmp = y;
} else if (t <= -3e-51) {
tmp = t_1;
} else if (t <= -7.3e-87) {
tmp = y / (a / z);
} else if (t <= 3.6e-62) {
tmp = t_1;
} else {
tmp = y;
}
return tmp;
}
def code(x, y, z, t, a): t_1 = x * (1.0 - (z / a)) tmp = 0 if t <= -1.26e+101: tmp = y elif t <= -3e-51: tmp = t_1 elif t <= -7.3e-87: tmp = y / (a / z) elif t <= 3.6e-62: tmp = t_1 else: tmp = y return tmp
function code(x, y, z, t, a) t_1 = Float64(x * Float64(1.0 - Float64(z / a))) tmp = 0.0 if (t <= -1.26e+101) tmp = y; elseif (t <= -3e-51) tmp = t_1; elseif (t <= -7.3e-87) tmp = Float64(y / Float64(a / z)); elseif (t <= 3.6e-62) tmp = t_1; else tmp = y; end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = x * (1.0 - (z / a)); tmp = 0.0; if (t <= -1.26e+101) tmp = y; elseif (t <= -3e-51) tmp = t_1; elseif (t <= -7.3e-87) tmp = y / (a / z); elseif (t <= 3.6e-62) tmp = t_1; else tmp = y; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(x * N[(1.0 - N[(z / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t, -1.26e+101], y, If[LessEqual[t, -3e-51], t$95$1, If[LessEqual[t, -7.3e-87], N[(y / N[(a / z), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 3.6e-62], t$95$1, y]]]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := x \cdot \left(1 - \frac{z}{a}\right)\\
\mathbf{if}\;t \leq -1.26 \cdot 10^{+101}:\\
\;\;\;\;y\\
\mathbf{elif}\;t \leq -3 \cdot 10^{-51}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;t \leq -7.3 \cdot 10^{-87}:\\
\;\;\;\;\frac{y}{\frac{a}{z}}\\
\mathbf{elif}\;t \leq 3.6 \cdot 10^{-62}:\\
\;\;\;\;t\_1\\
\mathbf{else}:\\
\;\;\;\;y\\
\end{array}
\end{array}
if t < -1.2600000000000001e101 or 3.6e-62 < t Initial program 41.3%
Taylor expanded in t around inf 53.2%
if -1.2600000000000001e101 < t < -3.00000000000000002e-51 or -7.29999999999999967e-87 < t < 3.6e-62Initial program 88.6%
Taylor expanded in t around 0 63.0%
Taylor expanded in x around inf 51.3%
mul-1-neg51.3%
unsub-neg51.3%
Simplified51.3%
if -3.00000000000000002e-51 < t < -7.29999999999999967e-87Initial program 80.5%
Taylor expanded in x around 0 80.3%
+-commutative80.3%
+-commutative80.3%
distribute-lft-in80.4%
mul-1-neg80.4%
distribute-rgt-neg-in80.4%
associate-/l*80.4%
mul-1-neg80.4%
*-rgt-identity80.4%
associate-+l+80.5%
Simplified90.0%
Taylor expanded in y around inf 61.1%
div-sub61.1%
Simplified61.1%
Taylor expanded in t around 0 37.1%
associate-/l*64.1%
Simplified46.3%
clear-num46.3%
div-inv46.3%
Applied egg-rr46.3%
(FPCore (x y z t a)
:precision binary64
(if (<= t -3.7e+219)
y
(if (<= t -3.9e+64)
(* x (/ (- z a) t))
(if (<= t 9.2e-71) (* x (- 1.0 (/ z a))) y))))
double code(double x, double y, double z, double t, double a) {
double tmp;
if (t <= -3.7e+219) {
tmp = y;
} else if (t <= -3.9e+64) {
tmp = x * ((z - a) / t);
} else if (t <= 9.2e-71) {
tmp = x * (1.0 - (z / a));
} else {
tmp = y;
}
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 (t <= (-3.7d+219)) then
tmp = y
else if (t <= (-3.9d+64)) then
tmp = x * ((z - a) / t)
else if (t <= 9.2d-71) then
tmp = x * (1.0d0 - (z / a))
else
tmp = y
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double tmp;
if (t <= -3.7e+219) {
tmp = y;
} else if (t <= -3.9e+64) {
tmp = x * ((z - a) / t);
} else if (t <= 9.2e-71) {
tmp = x * (1.0 - (z / a));
} else {
tmp = y;
}
return tmp;
}
def code(x, y, z, t, a): tmp = 0 if t <= -3.7e+219: tmp = y elif t <= -3.9e+64: tmp = x * ((z - a) / t) elif t <= 9.2e-71: tmp = x * (1.0 - (z / a)) else: tmp = y return tmp
function code(x, y, z, t, a) tmp = 0.0 if (t <= -3.7e+219) tmp = y; elseif (t <= -3.9e+64) tmp = Float64(x * Float64(Float64(z - a) / t)); elseif (t <= 9.2e-71) tmp = Float64(x * Float64(1.0 - Float64(z / a))); else tmp = y; end return tmp end
function tmp_2 = code(x, y, z, t, a) tmp = 0.0; if (t <= -3.7e+219) tmp = y; elseif (t <= -3.9e+64) tmp = x * ((z - a) / t); elseif (t <= 9.2e-71) tmp = x * (1.0 - (z / a)); else tmp = y; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := If[LessEqual[t, -3.7e+219], y, If[LessEqual[t, -3.9e+64], N[(x * N[(N[(z - a), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 9.2e-71], N[(x * N[(1.0 - N[(z / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], y]]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;t \leq -3.7 \cdot 10^{+219}:\\
\;\;\;\;y\\
\mathbf{elif}\;t \leq -3.9 \cdot 10^{+64}:\\
\;\;\;\;x \cdot \frac{z - a}{t}\\
\mathbf{elif}\;t \leq 9.2 \cdot 10^{-71}:\\
\;\;\;\;x \cdot \left(1 - \frac{z}{a}\right)\\
\mathbf{else}:\\
\;\;\;\;y\\
\end{array}
\end{array}
if t < -3.7e219 or 9.1999999999999994e-71 < t Initial program 41.0%
Taylor expanded in t around inf 58.1%
if -3.7e219 < t < -3.8999999999999998e64Initial program 49.6%
Taylor expanded in t around inf 63.3%
associate--l+63.3%
distribute-lft-out--63.3%
div-sub63.3%
mul-1-neg63.3%
unsub-neg63.3%
div-sub63.3%
associate-/l*75.1%
associate-/l*81.2%
distribute-rgt-out--81.2%
Simplified81.2%
Taylor expanded in y around 0 33.9%
associate-/l*39.7%
Simplified39.7%
if -3.8999999999999998e64 < t < 9.1999999999999994e-71Initial program 89.5%
Taylor expanded in t around 0 65.0%
Taylor expanded in x around inf 50.0%
mul-1-neg50.0%
unsub-neg50.0%
Simplified50.0%
(FPCore (x y z t a)
:precision binary64
(if (<= x -1.55e+219)
(* z (/ x t))
(if (<= x 7.1e+40)
(+ y x)
(if (<= x 4.15e+151) (* a (/ x (- t))) (* x (/ z t))))))
double code(double x, double y, double z, double t, double a) {
double tmp;
if (x <= -1.55e+219) {
tmp = z * (x / t);
} else if (x <= 7.1e+40) {
tmp = y + x;
} else if (x <= 4.15e+151) {
tmp = a * (x / -t);
} else {
tmp = x * (z / 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 (x <= (-1.55d+219)) then
tmp = z * (x / t)
else if (x <= 7.1d+40) then
tmp = y + x
else if (x <= 4.15d+151) then
tmp = a * (x / -t)
else
tmp = x * (z / t)
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double tmp;
if (x <= -1.55e+219) {
tmp = z * (x / t);
} else if (x <= 7.1e+40) {
tmp = y + x;
} else if (x <= 4.15e+151) {
tmp = a * (x / -t);
} else {
tmp = x * (z / t);
}
return tmp;
}
def code(x, y, z, t, a): tmp = 0 if x <= -1.55e+219: tmp = z * (x / t) elif x <= 7.1e+40: tmp = y + x elif x <= 4.15e+151: tmp = a * (x / -t) else: tmp = x * (z / t) return tmp
function code(x, y, z, t, a) tmp = 0.0 if (x <= -1.55e+219) tmp = Float64(z * Float64(x / t)); elseif (x <= 7.1e+40) tmp = Float64(y + x); elseif (x <= 4.15e+151) tmp = Float64(a * Float64(x / Float64(-t))); else tmp = Float64(x * Float64(z / t)); end return tmp end
function tmp_2 = code(x, y, z, t, a) tmp = 0.0; if (x <= -1.55e+219) tmp = z * (x / t); elseif (x <= 7.1e+40) tmp = y + x; elseif (x <= 4.15e+151) tmp = a * (x / -t); else tmp = x * (z / t); end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := If[LessEqual[x, -1.55e+219], N[(z * N[(x / t), $MachinePrecision]), $MachinePrecision], If[LessEqual[x, 7.1e+40], N[(y + x), $MachinePrecision], If[LessEqual[x, 4.15e+151], N[(a * N[(x / (-t)), $MachinePrecision]), $MachinePrecision], N[(x * N[(z / t), $MachinePrecision]), $MachinePrecision]]]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;x \leq -1.55 \cdot 10^{+219}:\\
\;\;\;\;z \cdot \frac{x}{t}\\
\mathbf{elif}\;x \leq 7.1 \cdot 10^{+40}:\\
\;\;\;\;y + x\\
\mathbf{elif}\;x \leq 4.15 \cdot 10^{+151}:\\
\;\;\;\;a \cdot \frac{x}{-t}\\
\mathbf{else}:\\
\;\;\;\;x \cdot \frac{z}{t}\\
\end{array}
\end{array}
if x < -1.54999999999999984e219Initial program 54.6%
Taylor expanded in t around inf 39.1%
associate--l+39.1%
distribute-lft-out--39.1%
div-sub45.0%
mul-1-neg45.0%
unsub-neg45.0%
div-sub39.1%
associate-/l*44.1%
associate-/l*43.7%
distribute-rgt-out--61.9%
Simplified61.9%
Taylor expanded in z around inf 49.7%
div-sub50.1%
Simplified50.1%
Taylor expanded in x around inf 48.5%
if -1.54999999999999984e219 < x < 7.10000000000000037e40Initial program 72.7%
Taylor expanded in y around inf 62.2%
associate-/l*77.3%
Simplified77.3%
Taylor expanded in t around inf 39.6%
if 7.10000000000000037e40 < x < 4.14999999999999995e151Initial program 48.7%
Taylor expanded in t around inf 55.2%
associate--l+55.2%
distribute-lft-out--55.2%
div-sub58.9%
mul-1-neg58.9%
unsub-neg58.9%
div-sub55.2%
associate-/l*58.3%
associate-/l*61.4%
distribute-rgt-out--65.3%
Simplified65.3%
Taylor expanded in y around 0 31.0%
Taylor expanded in z around 0 20.7%
mul-1-neg20.7%
associate-/l*30.7%
distribute-rgt-neg-in30.7%
mul-1-neg30.7%
associate-*r/30.7%
neg-mul-130.7%
Simplified30.7%
if 4.14999999999999995e151 < x Initial program 51.3%
Taylor expanded in t around inf 52.1%
associate--l+52.1%
distribute-lft-out--52.1%
div-sub55.9%
mul-1-neg55.9%
unsub-neg55.9%
div-sub52.1%
associate-/l*55.7%
associate-/l*47.5%
distribute-rgt-out--59.5%
Simplified59.5%
Taylor expanded in y around 0 41.2%
Taylor expanded in z around inf 34.0%
associate-/l*40.9%
Simplified40.9%
Final simplification39.3%
(FPCore (x y z t a) :precision binary64 (if (<= t -2.1e+30) y (if (<= t -2e-74) (* t (/ x t)) (if (<= t 3e-14) x y))))
double code(double x, double y, double z, double t, double a) {
double tmp;
if (t <= -2.1e+30) {
tmp = y;
} else if (t <= -2e-74) {
tmp = t * (x / t);
} else if (t <= 3e-14) {
tmp = x;
} else {
tmp = y;
}
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 (t <= (-2.1d+30)) then
tmp = y
else if (t <= (-2d-74)) then
tmp = t * (x / t)
else if (t <= 3d-14) then
tmp = x
else
tmp = y
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double tmp;
if (t <= -2.1e+30) {
tmp = y;
} else if (t <= -2e-74) {
tmp = t * (x / t);
} else if (t <= 3e-14) {
tmp = x;
} else {
tmp = y;
}
return tmp;
}
def code(x, y, z, t, a): tmp = 0 if t <= -2.1e+30: tmp = y elif t <= -2e-74: tmp = t * (x / t) elif t <= 3e-14: tmp = x else: tmp = y return tmp
function code(x, y, z, t, a) tmp = 0.0 if (t <= -2.1e+30) tmp = y; elseif (t <= -2e-74) tmp = Float64(t * Float64(x / t)); elseif (t <= 3e-14) tmp = x; else tmp = y; end return tmp end
function tmp_2 = code(x, y, z, t, a) tmp = 0.0; if (t <= -2.1e+30) tmp = y; elseif (t <= -2e-74) tmp = t * (x / t); elseif (t <= 3e-14) tmp = x; else tmp = y; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := If[LessEqual[t, -2.1e+30], y, If[LessEqual[t, -2e-74], N[(t * N[(x / t), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 3e-14], x, y]]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;t \leq -2.1 \cdot 10^{+30}:\\
\;\;\;\;y\\
\mathbf{elif}\;t \leq -2 \cdot 10^{-74}:\\
\;\;\;\;t \cdot \frac{x}{t}\\
\mathbf{elif}\;t \leq 3 \cdot 10^{-14}:\\
\;\;\;\;x\\
\mathbf{else}:\\
\;\;\;\;y\\
\end{array}
\end{array}
if t < -2.1e30 or 2.9999999999999998e-14 < t Initial program 41.9%
Taylor expanded in t around inf 52.2%
if -2.1e30 < t < -1.99999999999999992e-74Initial program 82.3%
Taylor expanded in y around inf 67.3%
associate-/l*71.6%
Simplified71.6%
clear-num71.6%
inv-pow71.6%
Applied egg-rr71.6%
unpow-171.6%
Simplified71.6%
Taylor expanded in z around 0 41.9%
mul-1-neg41.9%
unsub-neg41.9%
associate-/l*41.9%
Simplified41.9%
Taylor expanded in t around 0 34.3%
associate-/l*34.3%
Simplified34.3%
Taylor expanded in t around inf 34.2%
Taylor expanded in x around inf 28.6%
if -1.99999999999999992e-74 < t < 2.9999999999999998e-14Initial program 89.7%
Taylor expanded in a around inf 34.8%
(FPCore (x y z t a) :precision binary64 (if (<= t -3.4e+30) y (if (<= t 8.3e-165) x y)))
double code(double x, double y, double z, double t, double a) {
double tmp;
if (t <= -3.4e+30) {
tmp = y;
} else if (t <= 8.3e-165) {
tmp = x;
} else {
tmp = y;
}
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 (t <= (-3.4d+30)) then
tmp = y
else if (t <= 8.3d-165) then
tmp = x
else
tmp = y
end if
code = tmp
end function
public static double code(double x, double y, double z, double t, double a) {
double tmp;
if (t <= -3.4e+30) {
tmp = y;
} else if (t <= 8.3e-165) {
tmp = x;
} else {
tmp = y;
}
return tmp;
}
def code(x, y, z, t, a): tmp = 0 if t <= -3.4e+30: tmp = y elif t <= 8.3e-165: tmp = x else: tmp = y return tmp
function code(x, y, z, t, a) tmp = 0.0 if (t <= -3.4e+30) tmp = y; elseif (t <= 8.3e-165) tmp = x; else tmp = y; end return tmp end
function tmp_2 = code(x, y, z, t, a) tmp = 0.0; if (t <= -3.4e+30) tmp = y; elseif (t <= 8.3e-165) tmp = x; else tmp = y; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := If[LessEqual[t, -3.4e+30], y, If[LessEqual[t, 8.3e-165], x, y]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;t \leq -3.4 \cdot 10^{+30}:\\
\;\;\;\;y\\
\mathbf{elif}\;t \leq 8.3 \cdot 10^{-165}:\\
\;\;\;\;x\\
\mathbf{else}:\\
\;\;\;\;y\\
\end{array}
\end{array}
if t < -3.4000000000000002e30 or 8.2999999999999996e-165 < t Initial program 49.4%
Taylor expanded in t around inf 45.0%
if -3.4000000000000002e30 < t < 8.2999999999999996e-165Initial program 90.0%
Taylor expanded in a around inf 36.1%
(FPCore (x y z t a) :precision binary64 x)
double code(double x, double y, double z, double t, double a) {
return x;
}
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
end function
public static double code(double x, double y, double z, double t, double a) {
return x;
}
def code(x, y, z, t, a): return x
function code(x, y, z, t, a) return x end
function tmp = code(x, y, z, t, a) tmp = x; end
code[x_, y_, z_, t_, a_] := x
\begin{array}{l}
\\
x
\end{array}
Initial program 66.7%
Taylor expanded in a around inf 21.4%
(FPCore (x y z t a)
:precision binary64
(let* ((t_1 (+ x (* (/ (- y x) 1.0) (/ (- z t) (- a t))))))
(if (< a -1.6153062845442575e-142)
t_1
(if (< a 3.774403170083174e-182) (- y (* (/ z t) (- y x))) t_1))))
double code(double x, double y, double z, double t, double a) {
double t_1 = x + (((y - x) / 1.0) * ((z - t) / (a - t)));
double tmp;
if (a < -1.6153062845442575e-142) {
tmp = t_1;
} else if (a < 3.774403170083174e-182) {
tmp = y - ((z / t) * (y - 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 = x + (((y - x) / 1.0d0) * ((z - t) / (a - t)))
if (a < (-1.6153062845442575d-142)) then
tmp = t_1
else if (a < 3.774403170083174d-182) then
tmp = y - ((z / t) * (y - 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 = x + (((y - x) / 1.0) * ((z - t) / (a - t)));
double tmp;
if (a < -1.6153062845442575e-142) {
tmp = t_1;
} else if (a < 3.774403170083174e-182) {
tmp = y - ((z / t) * (y - x));
} else {
tmp = t_1;
}
return tmp;
}
def code(x, y, z, t, a): t_1 = x + (((y - x) / 1.0) * ((z - t) / (a - t))) tmp = 0 if a < -1.6153062845442575e-142: tmp = t_1 elif a < 3.774403170083174e-182: tmp = y - ((z / t) * (y - x)) else: tmp = t_1 return tmp
function code(x, y, z, t, a) t_1 = Float64(x + Float64(Float64(Float64(y - x) / 1.0) * Float64(Float64(z - t) / Float64(a - t)))) tmp = 0.0 if (a < -1.6153062845442575e-142) tmp = t_1; elseif (a < 3.774403170083174e-182) tmp = Float64(y - Float64(Float64(z / t) * Float64(y - x))); else tmp = t_1; end return tmp end
function tmp_2 = code(x, y, z, t, a) t_1 = x + (((y - x) / 1.0) * ((z - t) / (a - t))); tmp = 0.0; if (a < -1.6153062845442575e-142) tmp = t_1; elseif (a < 3.774403170083174e-182) tmp = y - ((z / t) * (y - x)); else tmp = t_1; end tmp_2 = tmp; end
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[(x + N[(N[(N[(y - x), $MachinePrecision] / 1.0), $MachinePrecision] * N[(N[(z - t), $MachinePrecision] / N[(a - t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[Less[a, -1.6153062845442575e-142], t$95$1, If[Less[a, 3.774403170083174e-182], N[(y - N[(N[(z / t), $MachinePrecision] * N[(y - x), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], t$95$1]]]
\begin{array}{l}
\\
\begin{array}{l}
t_1 := x + \frac{y - x}{1} \cdot \frac{z - t}{a - t}\\
\mathbf{if}\;a < -1.6153062845442575 \cdot 10^{-142}:\\
\;\;\;\;t\_1\\
\mathbf{elif}\;a < 3.774403170083174 \cdot 10^{-182}:\\
\;\;\;\;y - \frac{z}{t} \cdot \left(y - x\right)\\
\mathbf{else}:\\
\;\;\;\;t\_1\\
\end{array}
\end{array}
herbie shell --seed 2024107
(FPCore (x y z t a)
:name "Graphics.Rendering.Chart.Axis.Types:linMap from Chart-1.5.3"
:precision binary64
:alt
(if (< a -1.6153062845442575e-142) (+ x (* (/ (- y x) 1.0) (/ (- z t) (- a t)))) (if (< a 3.774403170083174e-182) (- y (* (/ z t) (- y x))) (+ x (* (/ (- y x) 1.0) (/ (- z t) (- a t))))))
(+ x (/ (* (- y x) (- z t)) (- a t))))