Numeric.SpecFunctions:logGamma from math-functions-0.1.5.2

Percentage Accurate: 55.7% → 82.0%
Time: 24.7s
Alternatives: 18
Speedup: 1.6×

Specification

?
\[\begin{array}{l} \\ \frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \end{array} \]
(FPCore (x y z t a b c i)
 :precision binary64
 (/
  (+ (* (+ (* (+ (* (+ (* x y) z) y) 27464.7644705) y) 230661.510616) y) t)
  (+ (* (+ (* (+ (* (+ y a) y) b) y) c) y) i)))
double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	return ((((((((x * y) + z) * y) + 27464.7644705) * y) + 230661.510616) * y) + t) / (((((((y + a) * y) + b) * y) + c) * y) + i);
}
real(8) function code(x, y, z, t, a, b, c, i)
    real(8), intent (in) :: x
    real(8), intent (in) :: y
    real(8), intent (in) :: z
    real(8), intent (in) :: t
    real(8), intent (in) :: a
    real(8), intent (in) :: b
    real(8), intent (in) :: c
    real(8), intent (in) :: i
    code = ((((((((x * y) + z) * y) + 27464.7644705d0) * y) + 230661.510616d0) * y) + t) / (((((((y + a) * y) + b) * y) + c) * y) + i)
end function
public static double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	return ((((((((x * y) + z) * y) + 27464.7644705) * y) + 230661.510616) * y) + t) / (((((((y + a) * y) + b) * y) + c) * y) + i);
}
def code(x, y, z, t, a, b, c, i):
	return ((((((((x * y) + z) * y) + 27464.7644705) * y) + 230661.510616) * y) + t) / (((((((y + a) * y) + b) * y) + c) * y) + i)
function code(x, y, z, t, a, b, c, i)
	return Float64(Float64(Float64(Float64(Float64(Float64(Float64(Float64(Float64(x * y) + z) * y) + 27464.7644705) * y) + 230661.510616) * y) + t) / Float64(Float64(Float64(Float64(Float64(Float64(Float64(y + a) * y) + b) * y) + c) * y) + i))
end
function tmp = code(x, y, z, t, a, b, c, i)
	tmp = ((((((((x * y) + z) * y) + 27464.7644705) * y) + 230661.510616) * y) + t) / (((((((y + a) * y) + b) * y) + c) * y) + i);
end
code[x_, y_, z_, t_, a_, b_, c_, i_] := N[(N[(N[(N[(N[(N[(N[(N[(N[(x * y), $MachinePrecision] + z), $MachinePrecision] * y), $MachinePrecision] + 27464.7644705), $MachinePrecision] * y), $MachinePrecision] + 230661.510616), $MachinePrecision] * y), $MachinePrecision] + t), $MachinePrecision] / N[(N[(N[(N[(N[(N[(N[(y + a), $MachinePrecision] * y), $MachinePrecision] + b), $MachinePrecision] * y), $MachinePrecision] + c), $MachinePrecision] * y), $MachinePrecision] + i), $MachinePrecision]), $MachinePrecision]
\begin{array}{l}

\\
\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i}
\end{array}

Sampling outcomes in binary64 precision:

Local Percentage Accuracy vs ?

The average percentage accuracy by input value. Horizontal axis shows value of an input variable; the variable is choosen in the title. Vertical axis is accuracy; higher is better. Red represent the original program, while blue represents Herbie's suggestion. These can be toggled with buttons below the plot. The line is an average while dots represent individual samples.

Accuracy vs Speed?

Herbie found 18 alternatives:

AlternativeAccuracySpeedup
The accuracy (vertical axis) and speed (horizontal axis) of each alternatives. Up and to the right is better. The red square shows the initial program, and each blue circle shows an alternative.The line shows the best available speed-accuracy tradeoffs.

Initial Program: 55.7% accurate, 1.0× speedup?

\[\begin{array}{l} \\ \frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \end{array} \]
(FPCore (x y z t a b c i)
 :precision binary64
 (/
  (+ (* (+ (* (+ (* (+ (* x y) z) y) 27464.7644705) y) 230661.510616) y) t)
  (+ (* (+ (* (+ (* (+ y a) y) b) y) c) y) i)))
double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	return ((((((((x * y) + z) * y) + 27464.7644705) * y) + 230661.510616) * y) + t) / (((((((y + a) * y) + b) * y) + c) * y) + i);
}
real(8) function code(x, y, z, t, a, b, c, i)
    real(8), intent (in) :: x
    real(8), intent (in) :: y
    real(8), intent (in) :: z
    real(8), intent (in) :: t
    real(8), intent (in) :: a
    real(8), intent (in) :: b
    real(8), intent (in) :: c
    real(8), intent (in) :: i
    code = ((((((((x * y) + z) * y) + 27464.7644705d0) * y) + 230661.510616d0) * y) + t) / (((((((y + a) * y) + b) * y) + c) * y) + i)
end function
public static double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	return ((((((((x * y) + z) * y) + 27464.7644705) * y) + 230661.510616) * y) + t) / (((((((y + a) * y) + b) * y) + c) * y) + i);
}
def code(x, y, z, t, a, b, c, i):
	return ((((((((x * y) + z) * y) + 27464.7644705) * y) + 230661.510616) * y) + t) / (((((((y + a) * y) + b) * y) + c) * y) + i)
function code(x, y, z, t, a, b, c, i)
	return Float64(Float64(Float64(Float64(Float64(Float64(Float64(Float64(Float64(x * y) + z) * y) + 27464.7644705) * y) + 230661.510616) * y) + t) / Float64(Float64(Float64(Float64(Float64(Float64(Float64(y + a) * y) + b) * y) + c) * y) + i))
end
function tmp = code(x, y, z, t, a, b, c, i)
	tmp = ((((((((x * y) + z) * y) + 27464.7644705) * y) + 230661.510616) * y) + t) / (((((((y + a) * y) + b) * y) + c) * y) + i);
end
code[x_, y_, z_, t_, a_, b_, c_, i_] := N[(N[(N[(N[(N[(N[(N[(N[(N[(x * y), $MachinePrecision] + z), $MachinePrecision] * y), $MachinePrecision] + 27464.7644705), $MachinePrecision] * y), $MachinePrecision] + 230661.510616), $MachinePrecision] * y), $MachinePrecision] + t), $MachinePrecision] / N[(N[(N[(N[(N[(N[(N[(y + a), $MachinePrecision] * y), $MachinePrecision] + b), $MachinePrecision] * y), $MachinePrecision] + c), $MachinePrecision] * y), $MachinePrecision] + i), $MachinePrecision]), $MachinePrecision]
\begin{array}{l}

\\
\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i}
\end{array}

Alternative 1: 82.0% accurate, 0.5× speedup?

\[\begin{array}{l} \\ \begin{array}{l} t_1 := y \cdot \left(y \cdot \left(y \cdot \left(y + a\right) + b\right) + c\right) + i\\ \mathbf{if}\;\frac{y \cdot \left(y \cdot \left(y \cdot \left(x \cdot y + z\right) + 27464.7644705\right) + 230661.510616\right) + t}{t\_1} \leq \infty:\\ \;\;\;\;\frac{t + y \cdot \left(230661.510616 + y \cdot \left(27464.7644705 + \left(y \cdot \left(x \cdot y\right) + y \cdot z\right)\right)\right)}{t\_1}\\ \mathbf{else}:\\ \;\;\;\;x + \frac{z - x \cdot a}{y}\\ \end{array} \end{array} \]
(FPCore (x y z t a b c i)
 :precision binary64
 (let* ((t_1 (+ (* y (+ (* y (+ (* y (+ y a)) b)) c)) i)))
   (if (<=
        (/
         (+
          (* y (+ (* y (+ (* y (+ (* x y) z)) 27464.7644705)) 230661.510616))
          t)
         t_1)
        INFINITY)
     (/
      (+
       t
       (*
        y
        (+ 230661.510616 (* y (+ 27464.7644705 (+ (* y (* x y)) (* y z)))))))
      t_1)
     (+ x (/ (- z (* x a)) y)))))
double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	double t_1 = (y * ((y * ((y * (y + a)) + b)) + c)) + i;
	double tmp;
	if ((((y * ((y * ((y * ((x * y) + z)) + 27464.7644705)) + 230661.510616)) + t) / t_1) <= ((double) INFINITY)) {
		tmp = (t + (y * (230661.510616 + (y * (27464.7644705 + ((y * (x * y)) + (y * z))))))) / t_1;
	} else {
		tmp = x + ((z - (x * a)) / y);
	}
	return tmp;
}
public static double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	double t_1 = (y * ((y * ((y * (y + a)) + b)) + c)) + i;
	double tmp;
	if ((((y * ((y * ((y * ((x * y) + z)) + 27464.7644705)) + 230661.510616)) + t) / t_1) <= Double.POSITIVE_INFINITY) {
		tmp = (t + (y * (230661.510616 + (y * (27464.7644705 + ((y * (x * y)) + (y * z))))))) / t_1;
	} else {
		tmp = x + ((z - (x * a)) / y);
	}
	return tmp;
}
def code(x, y, z, t, a, b, c, i):
	t_1 = (y * ((y * ((y * (y + a)) + b)) + c)) + i
	tmp = 0
	if (((y * ((y * ((y * ((x * y) + z)) + 27464.7644705)) + 230661.510616)) + t) / t_1) <= math.inf:
		tmp = (t + (y * (230661.510616 + (y * (27464.7644705 + ((y * (x * y)) + (y * z))))))) / t_1
	else:
		tmp = x + ((z - (x * a)) / y)
	return tmp
function code(x, y, z, t, a, b, c, i)
	t_1 = Float64(Float64(y * Float64(Float64(y * Float64(Float64(y * Float64(y + a)) + b)) + c)) + i)
	tmp = 0.0
	if (Float64(Float64(Float64(y * Float64(Float64(y * Float64(Float64(y * Float64(Float64(x * y) + z)) + 27464.7644705)) + 230661.510616)) + t) / t_1) <= Inf)
		tmp = Float64(Float64(t + Float64(y * Float64(230661.510616 + Float64(y * Float64(27464.7644705 + Float64(Float64(y * Float64(x * y)) + Float64(y * z))))))) / t_1);
	else
		tmp = Float64(x + Float64(Float64(z - Float64(x * a)) / y));
	end
	return tmp
end
function tmp_2 = code(x, y, z, t, a, b, c, i)
	t_1 = (y * ((y * ((y * (y + a)) + b)) + c)) + i;
	tmp = 0.0;
	if ((((y * ((y * ((y * ((x * y) + z)) + 27464.7644705)) + 230661.510616)) + t) / t_1) <= Inf)
		tmp = (t + (y * (230661.510616 + (y * (27464.7644705 + ((y * (x * y)) + (y * z))))))) / t_1;
	else
		tmp = x + ((z - (x * a)) / y);
	end
	tmp_2 = tmp;
end
code[x_, y_, z_, t_, a_, b_, c_, i_] := Block[{t$95$1 = N[(N[(y * N[(N[(y * N[(N[(y * N[(y + a), $MachinePrecision]), $MachinePrecision] + b), $MachinePrecision]), $MachinePrecision] + c), $MachinePrecision]), $MachinePrecision] + i), $MachinePrecision]}, If[LessEqual[N[(N[(N[(y * N[(N[(y * N[(N[(y * N[(N[(x * y), $MachinePrecision] + z), $MachinePrecision]), $MachinePrecision] + 27464.7644705), $MachinePrecision]), $MachinePrecision] + 230661.510616), $MachinePrecision]), $MachinePrecision] + t), $MachinePrecision] / t$95$1), $MachinePrecision], Infinity], N[(N[(t + N[(y * N[(230661.510616 + N[(y * N[(27464.7644705 + N[(N[(y * N[(x * y), $MachinePrecision]), $MachinePrecision] + N[(y * z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / t$95$1), $MachinePrecision], N[(x + N[(N[(z - N[(x * a), $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision]), $MachinePrecision]]]
\begin{array}{l}

\\
\begin{array}{l}
t_1 := y \cdot \left(y \cdot \left(y \cdot \left(y + a\right) + b\right) + c\right) + i\\
\mathbf{if}\;\frac{y \cdot \left(y \cdot \left(y \cdot \left(x \cdot y + z\right) + 27464.7644705\right) + 230661.510616\right) + t}{t\_1} \leq \infty:\\
\;\;\;\;\frac{t + y \cdot \left(230661.510616 + y \cdot \left(27464.7644705 + \left(y \cdot \left(x \cdot y\right) + y \cdot z\right)\right)\right)}{t\_1}\\

\mathbf{else}:\\
\;\;\;\;x + \frac{z - x \cdot a}{y}\\


\end{array}
\end{array}
Derivation
  1. Split input into 2 regimes
  2. if (/.f64 (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 x y) z) y) 54929528941/2000000) y) 28832688827/125000) y) t) (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 y a) y) b) y) c) y) i)) < +inf.0

    1. Initial program 91.8%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Step-by-step derivation
      1. *-commutative91.8%

        \[\leadsto \frac{\left(\left(\color{blue}{y \cdot \left(x \cdot y + z\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
      2. distribute-rgt-in91.8%

        \[\leadsto \frac{\left(\left(\color{blue}{\left(\left(x \cdot y\right) \cdot y + z \cdot y\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    4. Applied egg-rr91.8%

      \[\leadsto \frac{\left(\left(\color{blue}{\left(\left(x \cdot y\right) \cdot y + z \cdot y\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]

    if +inf.0 < (/.f64 (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 x y) z) y) 54929528941/2000000) y) 28832688827/125000) y) t) (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 y a) y) b) y) c) y) i))

    1. Initial program 0.0%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Taylor expanded in t around 0 0.0%

      \[\leadsto \color{blue}{\frac{y \cdot \left(230661.510616 + y \cdot \left(27464.7644705 + y \cdot \left(z + x \cdot y\right)\right)\right)}{i + y \cdot \left(c + y \cdot \left(b + y \cdot \left(a + y\right)\right)\right)}} \]
    4. Taylor expanded in y around inf 68.4%

      \[\leadsto \color{blue}{\left(x + \frac{z}{y}\right) - \frac{a \cdot x}{y}} \]
    5. Step-by-step derivation
      1. associate--l+68.4%

        \[\leadsto \color{blue}{x + \left(\frac{z}{y} - \frac{a \cdot x}{y}\right)} \]
      2. div-sub68.4%

        \[\leadsto x + \color{blue}{\frac{z - a \cdot x}{y}} \]
      3. *-commutative68.4%

        \[\leadsto x + \frac{z - \color{blue}{x \cdot a}}{y} \]
    6. Simplified68.4%

      \[\leadsto \color{blue}{x + \frac{z - x \cdot a}{y}} \]
  3. Recombined 2 regimes into one program.
  4. Final simplification83.9%

    \[\leadsto \begin{array}{l} \mathbf{if}\;\frac{y \cdot \left(y \cdot \left(y \cdot \left(x \cdot y + z\right) + 27464.7644705\right) + 230661.510616\right) + t}{y \cdot \left(y \cdot \left(y \cdot \left(y + a\right) + b\right) + c\right) + i} \leq \infty:\\ \;\;\;\;\frac{t + y \cdot \left(230661.510616 + y \cdot \left(27464.7644705 + \left(y \cdot \left(x \cdot y\right) + y \cdot z\right)\right)\right)}{y \cdot \left(y \cdot \left(y \cdot \left(y + a\right) + b\right) + c\right) + i}\\ \mathbf{else}:\\ \;\;\;\;x + \frac{z - x \cdot a}{y}\\ \end{array} \]
  5. Add Preprocessing

Alternative 2: 82.0% accurate, 0.5× speedup?

\[\begin{array}{l} \\ \begin{array}{l} t_1 := \frac{y \cdot \left(y \cdot \left(y \cdot \left(x \cdot y + z\right) + 27464.7644705\right) + 230661.510616\right) + t}{y \cdot \left(y \cdot \left(y \cdot \left(y + a\right) + b\right) + c\right) + i}\\ \mathbf{if}\;t\_1 \leq \infty:\\ \;\;\;\;t\_1\\ \mathbf{else}:\\ \;\;\;\;x + \frac{z - x \cdot a}{y}\\ \end{array} \end{array} \]
(FPCore (x y z t a b c i)
 :precision binary64
 (let* ((t_1
         (/
          (+
           (* y (+ (* y (+ (* y (+ (* x y) z)) 27464.7644705)) 230661.510616))
           t)
          (+ (* y (+ (* y (+ (* y (+ y a)) b)) c)) i))))
   (if (<= t_1 INFINITY) t_1 (+ x (/ (- z (* x a)) y)))))
double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	double t_1 = ((y * ((y * ((y * ((x * y) + z)) + 27464.7644705)) + 230661.510616)) + t) / ((y * ((y * ((y * (y + a)) + b)) + c)) + i);
	double tmp;
	if (t_1 <= ((double) INFINITY)) {
		tmp = t_1;
	} else {
		tmp = x + ((z - (x * a)) / y);
	}
	return tmp;
}
public static double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	double t_1 = ((y * ((y * ((y * ((x * y) + z)) + 27464.7644705)) + 230661.510616)) + t) / ((y * ((y * ((y * (y + a)) + b)) + c)) + i);
	double tmp;
	if (t_1 <= Double.POSITIVE_INFINITY) {
		tmp = t_1;
	} else {
		tmp = x + ((z - (x * a)) / y);
	}
	return tmp;
}
def code(x, y, z, t, a, b, c, i):
	t_1 = ((y * ((y * ((y * ((x * y) + z)) + 27464.7644705)) + 230661.510616)) + t) / ((y * ((y * ((y * (y + a)) + b)) + c)) + i)
	tmp = 0
	if t_1 <= math.inf:
		tmp = t_1
	else:
		tmp = x + ((z - (x * a)) / y)
	return tmp
function code(x, y, z, t, a, b, c, i)
	t_1 = Float64(Float64(Float64(y * Float64(Float64(y * Float64(Float64(y * Float64(Float64(x * y) + z)) + 27464.7644705)) + 230661.510616)) + t) / Float64(Float64(y * Float64(Float64(y * Float64(Float64(y * Float64(y + a)) + b)) + c)) + i))
	tmp = 0.0
	if (t_1 <= Inf)
		tmp = t_1;
	else
		tmp = Float64(x + Float64(Float64(z - Float64(x * a)) / y));
	end
	return tmp
end
function tmp_2 = code(x, y, z, t, a, b, c, i)
	t_1 = ((y * ((y * ((y * ((x * y) + z)) + 27464.7644705)) + 230661.510616)) + t) / ((y * ((y * ((y * (y + a)) + b)) + c)) + i);
	tmp = 0.0;
	if (t_1 <= Inf)
		tmp = t_1;
	else
		tmp = x + ((z - (x * a)) / y);
	end
	tmp_2 = tmp;
end
code[x_, y_, z_, t_, a_, b_, c_, i_] := Block[{t$95$1 = N[(N[(N[(y * N[(N[(y * N[(N[(y * N[(N[(x * y), $MachinePrecision] + z), $MachinePrecision]), $MachinePrecision] + 27464.7644705), $MachinePrecision]), $MachinePrecision] + 230661.510616), $MachinePrecision]), $MachinePrecision] + t), $MachinePrecision] / N[(N[(y * N[(N[(y * N[(N[(y * N[(y + a), $MachinePrecision]), $MachinePrecision] + b), $MachinePrecision]), $MachinePrecision] + c), $MachinePrecision]), $MachinePrecision] + i), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t$95$1, Infinity], t$95$1, N[(x + N[(N[(z - N[(x * a), $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision]), $MachinePrecision]]]
\begin{array}{l}

\\
\begin{array}{l}
t_1 := \frac{y \cdot \left(y \cdot \left(y \cdot \left(x \cdot y + z\right) + 27464.7644705\right) + 230661.510616\right) + t}{y \cdot \left(y \cdot \left(y \cdot \left(y + a\right) + b\right) + c\right) + i}\\
\mathbf{if}\;t\_1 \leq \infty:\\
\;\;\;\;t\_1\\

\mathbf{else}:\\
\;\;\;\;x + \frac{z - x \cdot a}{y}\\


\end{array}
\end{array}
Derivation
  1. Split input into 2 regimes
  2. if (/.f64 (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 x y) z) y) 54929528941/2000000) y) 28832688827/125000) y) t) (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 y a) y) b) y) c) y) i)) < +inf.0

    1. Initial program 91.8%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing

    if +inf.0 < (/.f64 (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 x y) z) y) 54929528941/2000000) y) 28832688827/125000) y) t) (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 y a) y) b) y) c) y) i))

    1. Initial program 0.0%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Taylor expanded in t around 0 0.0%

      \[\leadsto \color{blue}{\frac{y \cdot \left(230661.510616 + y \cdot \left(27464.7644705 + y \cdot \left(z + x \cdot y\right)\right)\right)}{i + y \cdot \left(c + y \cdot \left(b + y \cdot \left(a + y\right)\right)\right)}} \]
    4. Taylor expanded in y around inf 68.4%

      \[\leadsto \color{blue}{\left(x + \frac{z}{y}\right) - \frac{a \cdot x}{y}} \]
    5. Step-by-step derivation
      1. associate--l+68.4%

        \[\leadsto \color{blue}{x + \left(\frac{z}{y} - \frac{a \cdot x}{y}\right)} \]
      2. div-sub68.4%

        \[\leadsto x + \color{blue}{\frac{z - a \cdot x}{y}} \]
      3. *-commutative68.4%

        \[\leadsto x + \frac{z - \color{blue}{x \cdot a}}{y} \]
    6. Simplified68.4%

      \[\leadsto \color{blue}{x + \frac{z - x \cdot a}{y}} \]
  3. Recombined 2 regimes into one program.
  4. Final simplification83.8%

    \[\leadsto \begin{array}{l} \mathbf{if}\;\frac{y \cdot \left(y \cdot \left(y \cdot \left(x \cdot y + z\right) + 27464.7644705\right) + 230661.510616\right) + t}{y \cdot \left(y \cdot \left(y \cdot \left(y + a\right) + b\right) + c\right) + i} \leq \infty:\\ \;\;\;\;\frac{y \cdot \left(y \cdot \left(y \cdot \left(x \cdot y + z\right) + 27464.7644705\right) + 230661.510616\right) + t}{y \cdot \left(y \cdot \left(y \cdot \left(y + a\right) + b\right) + c\right) + i}\\ \mathbf{else}:\\ \;\;\;\;x + \frac{z - x \cdot a}{y}\\ \end{array} \]
  5. Add Preprocessing

Alternative 3: 76.1% accurate, 0.8× speedup?

\[\begin{array}{l} \\ \begin{array}{l} t_1 := x + \frac{z - x \cdot a}{y}\\ \mathbf{if}\;y \leq -5.8 \cdot 10^{+39}:\\ \;\;\;\;t\_1\\ \mathbf{elif}\;y \leq 1500:\\ \;\;\;\;\frac{t + y \cdot \left(230661.510616 + y \cdot \left(27464.7644705 + y \cdot z\right)\right)}{i + y \cdot \left(c + y \cdot b\right)}\\ \mathbf{elif}\;y \leq 1.32 \cdot 10^{+94}:\\ \;\;\;\;\frac{y \cdot \left(y \cdot \left(x \cdot y + z\right) + 27464.7644705\right) + 230661.510616}{y \cdot \left(y \cdot \left(y + a\right) + b\right) + c}\\ \mathbf{else}:\\ \;\;\;\;t\_1\\ \end{array} \end{array} \]
(FPCore (x y z t a b c i)
 :precision binary64
 (let* ((t_1 (+ x (/ (- z (* x a)) y))))
   (if (<= y -5.8e+39)
     t_1
     (if (<= y 1500.0)
       (/
        (+ t (* y (+ 230661.510616 (* y (+ 27464.7644705 (* y z))))))
        (+ i (* y (+ c (* y b)))))
       (if (<= y 1.32e+94)
         (/
          (+ (* y (+ (* y (+ (* x y) z)) 27464.7644705)) 230661.510616)
          (+ (* y (+ (* y (+ y a)) b)) c))
         t_1)))))
double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	double t_1 = x + ((z - (x * a)) / y);
	double tmp;
	if (y <= -5.8e+39) {
		tmp = t_1;
	} else if (y <= 1500.0) {
		tmp = (t + (y * (230661.510616 + (y * (27464.7644705 + (y * z)))))) / (i + (y * (c + (y * b))));
	} else if (y <= 1.32e+94) {
		tmp = ((y * ((y * ((x * y) + z)) + 27464.7644705)) + 230661.510616) / ((y * ((y * (y + a)) + b)) + c);
	} else {
		tmp = t_1;
	}
	return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i)
    real(8), intent (in) :: x
    real(8), intent (in) :: y
    real(8), intent (in) :: z
    real(8), intent (in) :: t
    real(8), intent (in) :: a
    real(8), intent (in) :: b
    real(8), intent (in) :: c
    real(8), intent (in) :: i
    real(8) :: t_1
    real(8) :: tmp
    t_1 = x + ((z - (x * a)) / y)
    if (y <= (-5.8d+39)) then
        tmp = t_1
    else if (y <= 1500.0d0) then
        tmp = (t + (y * (230661.510616d0 + (y * (27464.7644705d0 + (y * z)))))) / (i + (y * (c + (y * b))))
    else if (y <= 1.32d+94) then
        tmp = ((y * ((y * ((x * y) + z)) + 27464.7644705d0)) + 230661.510616d0) / ((y * ((y * (y + a)) + b)) + c)
    else
        tmp = t_1
    end if
    code = tmp
end function
public static double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	double t_1 = x + ((z - (x * a)) / y);
	double tmp;
	if (y <= -5.8e+39) {
		tmp = t_1;
	} else if (y <= 1500.0) {
		tmp = (t + (y * (230661.510616 + (y * (27464.7644705 + (y * z)))))) / (i + (y * (c + (y * b))));
	} else if (y <= 1.32e+94) {
		tmp = ((y * ((y * ((x * y) + z)) + 27464.7644705)) + 230661.510616) / ((y * ((y * (y + a)) + b)) + c);
	} else {
		tmp = t_1;
	}
	return tmp;
}
def code(x, y, z, t, a, b, c, i):
	t_1 = x + ((z - (x * a)) / y)
	tmp = 0
	if y <= -5.8e+39:
		tmp = t_1
	elif y <= 1500.0:
		tmp = (t + (y * (230661.510616 + (y * (27464.7644705 + (y * z)))))) / (i + (y * (c + (y * b))))
	elif y <= 1.32e+94:
		tmp = ((y * ((y * ((x * y) + z)) + 27464.7644705)) + 230661.510616) / ((y * ((y * (y + a)) + b)) + c)
	else:
		tmp = t_1
	return tmp
function code(x, y, z, t, a, b, c, i)
	t_1 = Float64(x + Float64(Float64(z - Float64(x * a)) / y))
	tmp = 0.0
	if (y <= -5.8e+39)
		tmp = t_1;
	elseif (y <= 1500.0)
		tmp = Float64(Float64(t + Float64(y * Float64(230661.510616 + Float64(y * Float64(27464.7644705 + Float64(y * z)))))) / Float64(i + Float64(y * Float64(c + Float64(y * b)))));
	elseif (y <= 1.32e+94)
		tmp = Float64(Float64(Float64(y * Float64(Float64(y * Float64(Float64(x * y) + z)) + 27464.7644705)) + 230661.510616) / Float64(Float64(y * Float64(Float64(y * Float64(y + a)) + b)) + c));
	else
		tmp = t_1;
	end
	return tmp
end
function tmp_2 = code(x, y, z, t, a, b, c, i)
	t_1 = x + ((z - (x * a)) / y);
	tmp = 0.0;
	if (y <= -5.8e+39)
		tmp = t_1;
	elseif (y <= 1500.0)
		tmp = (t + (y * (230661.510616 + (y * (27464.7644705 + (y * z)))))) / (i + (y * (c + (y * b))));
	elseif (y <= 1.32e+94)
		tmp = ((y * ((y * ((x * y) + z)) + 27464.7644705)) + 230661.510616) / ((y * ((y * (y + a)) + b)) + c);
	else
		tmp = t_1;
	end
	tmp_2 = tmp;
end
code[x_, y_, z_, t_, a_, b_, c_, i_] := Block[{t$95$1 = N[(x + N[(N[(z - N[(x * a), $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[y, -5.8e+39], t$95$1, If[LessEqual[y, 1500.0], N[(N[(t + N[(y * N[(230661.510616 + N[(y * N[(27464.7644705 + N[(y * z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / N[(i + N[(y * N[(c + N[(y * b), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y, 1.32e+94], N[(N[(N[(y * N[(N[(y * N[(N[(x * y), $MachinePrecision] + z), $MachinePrecision]), $MachinePrecision] + 27464.7644705), $MachinePrecision]), $MachinePrecision] + 230661.510616), $MachinePrecision] / N[(N[(y * N[(N[(y * N[(y + a), $MachinePrecision]), $MachinePrecision] + b), $MachinePrecision]), $MachinePrecision] + c), $MachinePrecision]), $MachinePrecision], t$95$1]]]]
\begin{array}{l}

\\
\begin{array}{l}
t_1 := x + \frac{z - x \cdot a}{y}\\
\mathbf{if}\;y \leq -5.8 \cdot 10^{+39}:\\
\;\;\;\;t\_1\\

\mathbf{elif}\;y \leq 1500:\\
\;\;\;\;\frac{t + y \cdot \left(230661.510616 + y \cdot \left(27464.7644705 + y \cdot z\right)\right)}{i + y \cdot \left(c + y \cdot b\right)}\\

\mathbf{elif}\;y \leq 1.32 \cdot 10^{+94}:\\
\;\;\;\;\frac{y \cdot \left(y \cdot \left(x \cdot y + z\right) + 27464.7644705\right) + 230661.510616}{y \cdot \left(y \cdot \left(y + a\right) + b\right) + c}\\

\mathbf{else}:\\
\;\;\;\;t\_1\\


\end{array}
\end{array}
Derivation
  1. Split input into 3 regimes
  2. if y < -5.80000000000000059e39 or 1.32000000000000003e94 < y

    1. Initial program 2.6%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Taylor expanded in t around 0 2.6%

      \[\leadsto \color{blue}{\frac{y \cdot \left(230661.510616 + y \cdot \left(27464.7644705 + y \cdot \left(z + x \cdot y\right)\right)\right)}{i + y \cdot \left(c + y \cdot \left(b + y \cdot \left(a + y\right)\right)\right)}} \]
    4. Taylor expanded in y around inf 69.3%

      \[\leadsto \color{blue}{\left(x + \frac{z}{y}\right) - \frac{a \cdot x}{y}} \]
    5. Step-by-step derivation
      1. associate--l+69.3%

        \[\leadsto \color{blue}{x + \left(\frac{z}{y} - \frac{a \cdot x}{y}\right)} \]
      2. div-sub69.3%

        \[\leadsto x + \color{blue}{\frac{z - a \cdot x}{y}} \]
      3. *-commutative69.3%

        \[\leadsto x + \frac{z - \color{blue}{x \cdot a}}{y} \]
    6. Simplified69.3%

      \[\leadsto \color{blue}{x + \frac{z - x \cdot a}{y}} \]

    if -5.80000000000000059e39 < y < 1500

    1. Initial program 97.6%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Taylor expanded in x around 0 91.3%

      \[\leadsto \frac{\left(\left(\color{blue}{y \cdot z} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    4. Taylor expanded in y around 0 88.9%

      \[\leadsto \frac{\left(\left(y \cdot z + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\color{blue}{y \cdot \left(c + b \cdot y\right)} + i} \]
    5. Step-by-step derivation
      1. *-commutative93.3%

        \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{y \cdot \left(c + \color{blue}{y \cdot b}\right) + i} \]
    6. Simplified88.9%

      \[\leadsto \frac{\left(\left(y \cdot z + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\color{blue}{y \cdot \left(c + y \cdot b\right)} + i} \]

    if 1500 < y < 1.32000000000000003e94

    1. Initial program 53.2%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Taylor expanded in t around 0 49.2%

      \[\leadsto \color{blue}{\frac{y \cdot \left(230661.510616 + y \cdot \left(27464.7644705 + y \cdot \left(z + x \cdot y\right)\right)\right)}{i + y \cdot \left(c + y \cdot \left(b + y \cdot \left(a + y\right)\right)\right)}} \]
    4. Taylor expanded in i around 0 62.5%

      \[\leadsto \color{blue}{\frac{230661.510616 + y \cdot \left(27464.7644705 + y \cdot \left(z + x \cdot y\right)\right)}{c + y \cdot \left(b + y \cdot \left(a + y\right)\right)}} \]
  3. Recombined 3 regimes into one program.
  4. Final simplification79.7%

    \[\leadsto \begin{array}{l} \mathbf{if}\;y \leq -5.8 \cdot 10^{+39}:\\ \;\;\;\;x + \frac{z - x \cdot a}{y}\\ \mathbf{elif}\;y \leq 1500:\\ \;\;\;\;\frac{t + y \cdot \left(230661.510616 + y \cdot \left(27464.7644705 + y \cdot z\right)\right)}{i + y \cdot \left(c + y \cdot b\right)}\\ \mathbf{elif}\;y \leq 1.32 \cdot 10^{+94}:\\ \;\;\;\;\frac{y \cdot \left(y \cdot \left(x \cdot y + z\right) + 27464.7644705\right) + 230661.510616}{y \cdot \left(y \cdot \left(y + a\right) + b\right) + c}\\ \mathbf{else}:\\ \;\;\;\;x + \frac{z - x \cdot a}{y}\\ \end{array} \]
  5. Add Preprocessing

Alternative 4: 78.9% accurate, 0.8× speedup?

\[\begin{array}{l} \\ \begin{array}{l} t_1 := y \cdot \left(y \cdot \left(y + a\right) + b\right) + c\\ t_2 := x + \frac{z - x \cdot a}{y}\\ \mathbf{if}\;y \leq -3.8 \cdot 10^{+39}:\\ \;\;\;\;t\_2\\ \mathbf{elif}\;y \leq 1120:\\ \;\;\;\;\frac{t + y \cdot \left(230661.510616 + y \cdot \left(27464.7644705 + y \cdot z\right)\right)}{y \cdot t\_1 + i}\\ \mathbf{elif}\;y \leq 1.32 \cdot 10^{+94}:\\ \;\;\;\;\frac{y \cdot \left(y \cdot \left(x \cdot y + z\right) + 27464.7644705\right) + 230661.510616}{t\_1}\\ \mathbf{else}:\\ \;\;\;\;t\_2\\ \end{array} \end{array} \]
(FPCore (x y z t a b c i)
 :precision binary64
 (let* ((t_1 (+ (* y (+ (* y (+ y a)) b)) c)) (t_2 (+ x (/ (- z (* x a)) y))))
   (if (<= y -3.8e+39)
     t_2
     (if (<= y 1120.0)
       (/
        (+ t (* y (+ 230661.510616 (* y (+ 27464.7644705 (* y z))))))
        (+ (* y t_1) i))
       (if (<= y 1.32e+94)
         (/ (+ (* y (+ (* y (+ (* x y) z)) 27464.7644705)) 230661.510616) t_1)
         t_2)))))
double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	double t_1 = (y * ((y * (y + a)) + b)) + c;
	double t_2 = x + ((z - (x * a)) / y);
	double tmp;
	if (y <= -3.8e+39) {
		tmp = t_2;
	} else if (y <= 1120.0) {
		tmp = (t + (y * (230661.510616 + (y * (27464.7644705 + (y * z)))))) / ((y * t_1) + i);
	} else if (y <= 1.32e+94) {
		tmp = ((y * ((y * ((x * y) + z)) + 27464.7644705)) + 230661.510616) / t_1;
	} else {
		tmp = t_2;
	}
	return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i)
    real(8), intent (in) :: x
    real(8), intent (in) :: y
    real(8), intent (in) :: z
    real(8), intent (in) :: t
    real(8), intent (in) :: a
    real(8), intent (in) :: b
    real(8), intent (in) :: c
    real(8), intent (in) :: i
    real(8) :: t_1
    real(8) :: t_2
    real(8) :: tmp
    t_1 = (y * ((y * (y + a)) + b)) + c
    t_2 = x + ((z - (x * a)) / y)
    if (y <= (-3.8d+39)) then
        tmp = t_2
    else if (y <= 1120.0d0) then
        tmp = (t + (y * (230661.510616d0 + (y * (27464.7644705d0 + (y * z)))))) / ((y * t_1) + i)
    else if (y <= 1.32d+94) then
        tmp = ((y * ((y * ((x * y) + z)) + 27464.7644705d0)) + 230661.510616d0) / t_1
    else
        tmp = t_2
    end if
    code = tmp
end function
public static double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	double t_1 = (y * ((y * (y + a)) + b)) + c;
	double t_2 = x + ((z - (x * a)) / y);
	double tmp;
	if (y <= -3.8e+39) {
		tmp = t_2;
	} else if (y <= 1120.0) {
		tmp = (t + (y * (230661.510616 + (y * (27464.7644705 + (y * z)))))) / ((y * t_1) + i);
	} else if (y <= 1.32e+94) {
		tmp = ((y * ((y * ((x * y) + z)) + 27464.7644705)) + 230661.510616) / t_1;
	} else {
		tmp = t_2;
	}
	return tmp;
}
def code(x, y, z, t, a, b, c, i):
	t_1 = (y * ((y * (y + a)) + b)) + c
	t_2 = x + ((z - (x * a)) / y)
	tmp = 0
	if y <= -3.8e+39:
		tmp = t_2
	elif y <= 1120.0:
		tmp = (t + (y * (230661.510616 + (y * (27464.7644705 + (y * z)))))) / ((y * t_1) + i)
	elif y <= 1.32e+94:
		tmp = ((y * ((y * ((x * y) + z)) + 27464.7644705)) + 230661.510616) / t_1
	else:
		tmp = t_2
	return tmp
function code(x, y, z, t, a, b, c, i)
	t_1 = Float64(Float64(y * Float64(Float64(y * Float64(y + a)) + b)) + c)
	t_2 = Float64(x + Float64(Float64(z - Float64(x * a)) / y))
	tmp = 0.0
	if (y <= -3.8e+39)
		tmp = t_2;
	elseif (y <= 1120.0)
		tmp = Float64(Float64(t + Float64(y * Float64(230661.510616 + Float64(y * Float64(27464.7644705 + Float64(y * z)))))) / Float64(Float64(y * t_1) + i));
	elseif (y <= 1.32e+94)
		tmp = Float64(Float64(Float64(y * Float64(Float64(y * Float64(Float64(x * y) + z)) + 27464.7644705)) + 230661.510616) / t_1);
	else
		tmp = t_2;
	end
	return tmp
end
function tmp_2 = code(x, y, z, t, a, b, c, i)
	t_1 = (y * ((y * (y + a)) + b)) + c;
	t_2 = x + ((z - (x * a)) / y);
	tmp = 0.0;
	if (y <= -3.8e+39)
		tmp = t_2;
	elseif (y <= 1120.0)
		tmp = (t + (y * (230661.510616 + (y * (27464.7644705 + (y * z)))))) / ((y * t_1) + i);
	elseif (y <= 1.32e+94)
		tmp = ((y * ((y * ((x * y) + z)) + 27464.7644705)) + 230661.510616) / t_1;
	else
		tmp = t_2;
	end
	tmp_2 = tmp;
end
code[x_, y_, z_, t_, a_, b_, c_, i_] := Block[{t$95$1 = N[(N[(y * N[(N[(y * N[(y + a), $MachinePrecision]), $MachinePrecision] + b), $MachinePrecision]), $MachinePrecision] + c), $MachinePrecision]}, Block[{t$95$2 = N[(x + N[(N[(z - N[(x * a), $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[y, -3.8e+39], t$95$2, If[LessEqual[y, 1120.0], N[(N[(t + N[(y * N[(230661.510616 + N[(y * N[(27464.7644705 + N[(y * z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / N[(N[(y * t$95$1), $MachinePrecision] + i), $MachinePrecision]), $MachinePrecision], If[LessEqual[y, 1.32e+94], N[(N[(N[(y * N[(N[(y * N[(N[(x * y), $MachinePrecision] + z), $MachinePrecision]), $MachinePrecision] + 27464.7644705), $MachinePrecision]), $MachinePrecision] + 230661.510616), $MachinePrecision] / t$95$1), $MachinePrecision], t$95$2]]]]]
\begin{array}{l}

\\
\begin{array}{l}
t_1 := y \cdot \left(y \cdot \left(y + a\right) + b\right) + c\\
t_2 := x + \frac{z - x \cdot a}{y}\\
\mathbf{if}\;y \leq -3.8 \cdot 10^{+39}:\\
\;\;\;\;t\_2\\

\mathbf{elif}\;y \leq 1120:\\
\;\;\;\;\frac{t + y \cdot \left(230661.510616 + y \cdot \left(27464.7644705 + y \cdot z\right)\right)}{y \cdot t\_1 + i}\\

\mathbf{elif}\;y \leq 1.32 \cdot 10^{+94}:\\
\;\;\;\;\frac{y \cdot \left(y \cdot \left(x \cdot y + z\right) + 27464.7644705\right) + 230661.510616}{t\_1}\\

\mathbf{else}:\\
\;\;\;\;t\_2\\


\end{array}
\end{array}
Derivation
  1. Split input into 3 regimes
  2. if y < -3.7999999999999998e39 or 1.32000000000000003e94 < y

    1. Initial program 2.6%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Taylor expanded in t around 0 2.6%

      \[\leadsto \color{blue}{\frac{y \cdot \left(230661.510616 + y \cdot \left(27464.7644705 + y \cdot \left(z + x \cdot y\right)\right)\right)}{i + y \cdot \left(c + y \cdot \left(b + y \cdot \left(a + y\right)\right)\right)}} \]
    4. Taylor expanded in y around inf 69.3%

      \[\leadsto \color{blue}{\left(x + \frac{z}{y}\right) - \frac{a \cdot x}{y}} \]
    5. Step-by-step derivation
      1. associate--l+69.3%

        \[\leadsto \color{blue}{x + \left(\frac{z}{y} - \frac{a \cdot x}{y}\right)} \]
      2. div-sub69.3%

        \[\leadsto x + \color{blue}{\frac{z - a \cdot x}{y}} \]
      3. *-commutative69.3%

        \[\leadsto x + \frac{z - \color{blue}{x \cdot a}}{y} \]
    6. Simplified69.3%

      \[\leadsto \color{blue}{x + \frac{z - x \cdot a}{y}} \]

    if -3.7999999999999998e39 < y < 1120

    1. Initial program 97.6%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Taylor expanded in x around 0 91.3%

      \[\leadsto \frac{\left(\left(\color{blue}{y \cdot z} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]

    if 1120 < y < 1.32000000000000003e94

    1. Initial program 53.2%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Taylor expanded in t around 0 49.2%

      \[\leadsto \color{blue}{\frac{y \cdot \left(230661.510616 + y \cdot \left(27464.7644705 + y \cdot \left(z + x \cdot y\right)\right)\right)}{i + y \cdot \left(c + y \cdot \left(b + y \cdot \left(a + y\right)\right)\right)}} \]
    4. Taylor expanded in i around 0 62.5%

      \[\leadsto \color{blue}{\frac{230661.510616 + y \cdot \left(27464.7644705 + y \cdot \left(z + x \cdot y\right)\right)}{c + y \cdot \left(b + y \cdot \left(a + y\right)\right)}} \]
  3. Recombined 3 regimes into one program.
  4. Final simplification81.1%

    \[\leadsto \begin{array}{l} \mathbf{if}\;y \leq -3.8 \cdot 10^{+39}:\\ \;\;\;\;x + \frac{z - x \cdot a}{y}\\ \mathbf{elif}\;y \leq 1120:\\ \;\;\;\;\frac{t + y \cdot \left(230661.510616 + y \cdot \left(27464.7644705 + y \cdot z\right)\right)}{y \cdot \left(y \cdot \left(y \cdot \left(y + a\right) + b\right) + c\right) + i}\\ \mathbf{elif}\;y \leq 1.32 \cdot 10^{+94}:\\ \;\;\;\;\frac{y \cdot \left(y \cdot \left(x \cdot y + z\right) + 27464.7644705\right) + 230661.510616}{y \cdot \left(y \cdot \left(y + a\right) + b\right) + c}\\ \mathbf{else}:\\ \;\;\;\;x + \frac{z - x \cdot a}{y}\\ \end{array} \]
  5. Add Preprocessing

Alternative 5: 78.0% accurate, 0.8× speedup?

\[\begin{array}{l} \\ \begin{array}{l} t_1 := x + \frac{z - x \cdot a}{y}\\ \mathbf{if}\;y \leq -3.3 \cdot 10^{+39}:\\ \;\;\;\;t\_1\\ \mathbf{elif}\;y \leq 3000:\\ \;\;\;\;\frac{t + y \cdot \left(230661.510616 + y \cdot \left(27464.7644705 + \left(y \cdot \left(x \cdot y\right) + y \cdot z\right)\right)\right)}{i + y \cdot \left(c + y \cdot b\right)}\\ \mathbf{elif}\;y \leq 2.05 \cdot 10^{+94}:\\ \;\;\;\;\frac{y \cdot \left(y \cdot \left(x \cdot y + z\right) + 27464.7644705\right) + 230661.510616}{y \cdot \left(y \cdot \left(y + a\right) + b\right) + c}\\ \mathbf{else}:\\ \;\;\;\;t\_1\\ \end{array} \end{array} \]
(FPCore (x y z t a b c i)
 :precision binary64
 (let* ((t_1 (+ x (/ (- z (* x a)) y))))
   (if (<= y -3.3e+39)
     t_1
     (if (<= y 3000.0)
       (/
        (+
         t
         (*
          y
          (+ 230661.510616 (* y (+ 27464.7644705 (+ (* y (* x y)) (* y z)))))))
        (+ i (* y (+ c (* y b)))))
       (if (<= y 2.05e+94)
         (/
          (+ (* y (+ (* y (+ (* x y) z)) 27464.7644705)) 230661.510616)
          (+ (* y (+ (* y (+ y a)) b)) c))
         t_1)))))
double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	double t_1 = x + ((z - (x * a)) / y);
	double tmp;
	if (y <= -3.3e+39) {
		tmp = t_1;
	} else if (y <= 3000.0) {
		tmp = (t + (y * (230661.510616 + (y * (27464.7644705 + ((y * (x * y)) + (y * z))))))) / (i + (y * (c + (y * b))));
	} else if (y <= 2.05e+94) {
		tmp = ((y * ((y * ((x * y) + z)) + 27464.7644705)) + 230661.510616) / ((y * ((y * (y + a)) + b)) + c);
	} else {
		tmp = t_1;
	}
	return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i)
    real(8), intent (in) :: x
    real(8), intent (in) :: y
    real(8), intent (in) :: z
    real(8), intent (in) :: t
    real(8), intent (in) :: a
    real(8), intent (in) :: b
    real(8), intent (in) :: c
    real(8), intent (in) :: i
    real(8) :: t_1
    real(8) :: tmp
    t_1 = x + ((z - (x * a)) / y)
    if (y <= (-3.3d+39)) then
        tmp = t_1
    else if (y <= 3000.0d0) then
        tmp = (t + (y * (230661.510616d0 + (y * (27464.7644705d0 + ((y * (x * y)) + (y * z))))))) / (i + (y * (c + (y * b))))
    else if (y <= 2.05d+94) then
        tmp = ((y * ((y * ((x * y) + z)) + 27464.7644705d0)) + 230661.510616d0) / ((y * ((y * (y + a)) + b)) + c)
    else
        tmp = t_1
    end if
    code = tmp
end function
public static double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	double t_1 = x + ((z - (x * a)) / y);
	double tmp;
	if (y <= -3.3e+39) {
		tmp = t_1;
	} else if (y <= 3000.0) {
		tmp = (t + (y * (230661.510616 + (y * (27464.7644705 + ((y * (x * y)) + (y * z))))))) / (i + (y * (c + (y * b))));
	} else if (y <= 2.05e+94) {
		tmp = ((y * ((y * ((x * y) + z)) + 27464.7644705)) + 230661.510616) / ((y * ((y * (y + a)) + b)) + c);
	} else {
		tmp = t_1;
	}
	return tmp;
}
def code(x, y, z, t, a, b, c, i):
	t_1 = x + ((z - (x * a)) / y)
	tmp = 0
	if y <= -3.3e+39:
		tmp = t_1
	elif y <= 3000.0:
		tmp = (t + (y * (230661.510616 + (y * (27464.7644705 + ((y * (x * y)) + (y * z))))))) / (i + (y * (c + (y * b))))
	elif y <= 2.05e+94:
		tmp = ((y * ((y * ((x * y) + z)) + 27464.7644705)) + 230661.510616) / ((y * ((y * (y + a)) + b)) + c)
	else:
		tmp = t_1
	return tmp
function code(x, y, z, t, a, b, c, i)
	t_1 = Float64(x + Float64(Float64(z - Float64(x * a)) / y))
	tmp = 0.0
	if (y <= -3.3e+39)
		tmp = t_1;
	elseif (y <= 3000.0)
		tmp = Float64(Float64(t + Float64(y * Float64(230661.510616 + Float64(y * Float64(27464.7644705 + Float64(Float64(y * Float64(x * y)) + Float64(y * z))))))) / Float64(i + Float64(y * Float64(c + Float64(y * b)))));
	elseif (y <= 2.05e+94)
		tmp = Float64(Float64(Float64(y * Float64(Float64(y * Float64(Float64(x * y) + z)) + 27464.7644705)) + 230661.510616) / Float64(Float64(y * Float64(Float64(y * Float64(y + a)) + b)) + c));
	else
		tmp = t_1;
	end
	return tmp
end
function tmp_2 = code(x, y, z, t, a, b, c, i)
	t_1 = x + ((z - (x * a)) / y);
	tmp = 0.0;
	if (y <= -3.3e+39)
		tmp = t_1;
	elseif (y <= 3000.0)
		tmp = (t + (y * (230661.510616 + (y * (27464.7644705 + ((y * (x * y)) + (y * z))))))) / (i + (y * (c + (y * b))));
	elseif (y <= 2.05e+94)
		tmp = ((y * ((y * ((x * y) + z)) + 27464.7644705)) + 230661.510616) / ((y * ((y * (y + a)) + b)) + c);
	else
		tmp = t_1;
	end
	tmp_2 = tmp;
end
code[x_, y_, z_, t_, a_, b_, c_, i_] := Block[{t$95$1 = N[(x + N[(N[(z - N[(x * a), $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[y, -3.3e+39], t$95$1, If[LessEqual[y, 3000.0], N[(N[(t + N[(y * N[(230661.510616 + N[(y * N[(27464.7644705 + N[(N[(y * N[(x * y), $MachinePrecision]), $MachinePrecision] + N[(y * z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / N[(i + N[(y * N[(c + N[(y * b), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y, 2.05e+94], N[(N[(N[(y * N[(N[(y * N[(N[(x * y), $MachinePrecision] + z), $MachinePrecision]), $MachinePrecision] + 27464.7644705), $MachinePrecision]), $MachinePrecision] + 230661.510616), $MachinePrecision] / N[(N[(y * N[(N[(y * N[(y + a), $MachinePrecision]), $MachinePrecision] + b), $MachinePrecision]), $MachinePrecision] + c), $MachinePrecision]), $MachinePrecision], t$95$1]]]]
\begin{array}{l}

\\
\begin{array}{l}
t_1 := x + \frac{z - x \cdot a}{y}\\
\mathbf{if}\;y \leq -3.3 \cdot 10^{+39}:\\
\;\;\;\;t\_1\\

\mathbf{elif}\;y \leq 3000:\\
\;\;\;\;\frac{t + y \cdot \left(230661.510616 + y \cdot \left(27464.7644705 + \left(y \cdot \left(x \cdot y\right) + y \cdot z\right)\right)\right)}{i + y \cdot \left(c + y \cdot b\right)}\\

\mathbf{elif}\;y \leq 2.05 \cdot 10^{+94}:\\
\;\;\;\;\frac{y \cdot \left(y \cdot \left(x \cdot y + z\right) + 27464.7644705\right) + 230661.510616}{y \cdot \left(y \cdot \left(y + a\right) + b\right) + c}\\

\mathbf{else}:\\
\;\;\;\;t\_1\\


\end{array}
\end{array}
Derivation
  1. Split input into 3 regimes
  2. if y < -3.30000000000000021e39 or 2.05000000000000015e94 < y

    1. Initial program 2.6%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Taylor expanded in t around 0 2.6%

      \[\leadsto \color{blue}{\frac{y \cdot \left(230661.510616 + y \cdot \left(27464.7644705 + y \cdot \left(z + x \cdot y\right)\right)\right)}{i + y \cdot \left(c + y \cdot \left(b + y \cdot \left(a + y\right)\right)\right)}} \]
    4. Taylor expanded in y around inf 69.3%

      \[\leadsto \color{blue}{\left(x + \frac{z}{y}\right) - \frac{a \cdot x}{y}} \]
    5. Step-by-step derivation
      1. associate--l+69.3%

        \[\leadsto \color{blue}{x + \left(\frac{z}{y} - \frac{a \cdot x}{y}\right)} \]
      2. div-sub69.3%

        \[\leadsto x + \color{blue}{\frac{z - a \cdot x}{y}} \]
      3. *-commutative69.3%

        \[\leadsto x + \frac{z - \color{blue}{x \cdot a}}{y} \]
    6. Simplified69.3%

      \[\leadsto \color{blue}{x + \frac{z - x \cdot a}{y}} \]

    if -3.30000000000000021e39 < y < 3e3

    1. Initial program 97.6%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Step-by-step derivation
      1. *-commutative97.6%

        \[\leadsto \frac{\left(\left(\color{blue}{y \cdot \left(x \cdot y + z\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
      2. distribute-rgt-in97.7%

        \[\leadsto \frac{\left(\left(\color{blue}{\left(\left(x \cdot y\right) \cdot y + z \cdot y\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    4. Applied egg-rr97.7%

      \[\leadsto \frac{\left(\left(\color{blue}{\left(\left(x \cdot y\right) \cdot y + z \cdot y\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    5. Taylor expanded in y around 0 93.3%

      \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\color{blue}{y \cdot \left(c + b \cdot y\right)} + i} \]
    6. Step-by-step derivation
      1. *-commutative93.3%

        \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{y \cdot \left(c + \color{blue}{y \cdot b}\right) + i} \]
    7. Simplified93.3%

      \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\color{blue}{y \cdot \left(c + y \cdot b\right)} + i} \]

    if 3e3 < y < 2.05000000000000015e94

    1. Initial program 53.2%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Taylor expanded in t around 0 49.2%

      \[\leadsto \color{blue}{\frac{y \cdot \left(230661.510616 + y \cdot \left(27464.7644705 + y \cdot \left(z + x \cdot y\right)\right)\right)}{i + y \cdot \left(c + y \cdot \left(b + y \cdot \left(a + y\right)\right)\right)}} \]
    4. Taylor expanded in i around 0 62.5%

      \[\leadsto \color{blue}{\frac{230661.510616 + y \cdot \left(27464.7644705 + y \cdot \left(z + x \cdot y\right)\right)}{c + y \cdot \left(b + y \cdot \left(a + y\right)\right)}} \]
  3. Recombined 3 regimes into one program.
  4. Final simplification82.2%

    \[\leadsto \begin{array}{l} \mathbf{if}\;y \leq -3.3 \cdot 10^{+39}:\\ \;\;\;\;x + \frac{z - x \cdot a}{y}\\ \mathbf{elif}\;y \leq 3000:\\ \;\;\;\;\frac{t + y \cdot \left(230661.510616 + y \cdot \left(27464.7644705 + \left(y \cdot \left(x \cdot y\right) + y \cdot z\right)\right)\right)}{i + y \cdot \left(c + y \cdot b\right)}\\ \mathbf{elif}\;y \leq 2.05 \cdot 10^{+94}:\\ \;\;\;\;\frac{y \cdot \left(y \cdot \left(x \cdot y + z\right) + 27464.7644705\right) + 230661.510616}{y \cdot \left(y \cdot \left(y + a\right) + b\right) + c}\\ \mathbf{else}:\\ \;\;\;\;x + \frac{z - x \cdot a}{y}\\ \end{array} \]
  5. Add Preprocessing

Alternative 6: 75.5% accurate, 1.0× speedup?

\[\begin{array}{l} \\ \begin{array}{l} t_1 := x + \frac{z - x \cdot a}{y}\\ \mathbf{if}\;y \leq -5.1 \cdot 10^{+40}:\\ \;\;\;\;t\_1\\ \mathbf{elif}\;y \leq 6 \cdot 10^{+21}:\\ \;\;\;\;\frac{t + y \cdot \left(230661.510616 + y \cdot \left(27464.7644705 + y \cdot z\right)\right)}{i + y \cdot \left(c + y \cdot b\right)}\\ \mathbf{elif}\;y \leq 2.4 \cdot 10^{+98}:\\ \;\;\;\;\frac{y \cdot \left(x + \frac{z}{y}\right)}{a}\\ \mathbf{else}:\\ \;\;\;\;t\_1\\ \end{array} \end{array} \]
(FPCore (x y z t a b c i)
 :precision binary64
 (let* ((t_1 (+ x (/ (- z (* x a)) y))))
   (if (<= y -5.1e+40)
     t_1
     (if (<= y 6e+21)
       (/
        (+ t (* y (+ 230661.510616 (* y (+ 27464.7644705 (* y z))))))
        (+ i (* y (+ c (* y b)))))
       (if (<= y 2.4e+98) (/ (* y (+ x (/ z y))) a) t_1)))))
double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	double t_1 = x + ((z - (x * a)) / y);
	double tmp;
	if (y <= -5.1e+40) {
		tmp = t_1;
	} else if (y <= 6e+21) {
		tmp = (t + (y * (230661.510616 + (y * (27464.7644705 + (y * z)))))) / (i + (y * (c + (y * b))));
	} else if (y <= 2.4e+98) {
		tmp = (y * (x + (z / y))) / a;
	} else {
		tmp = t_1;
	}
	return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i)
    real(8), intent (in) :: x
    real(8), intent (in) :: y
    real(8), intent (in) :: z
    real(8), intent (in) :: t
    real(8), intent (in) :: a
    real(8), intent (in) :: b
    real(8), intent (in) :: c
    real(8), intent (in) :: i
    real(8) :: t_1
    real(8) :: tmp
    t_1 = x + ((z - (x * a)) / y)
    if (y <= (-5.1d+40)) then
        tmp = t_1
    else if (y <= 6d+21) then
        tmp = (t + (y * (230661.510616d0 + (y * (27464.7644705d0 + (y * z)))))) / (i + (y * (c + (y * b))))
    else if (y <= 2.4d+98) then
        tmp = (y * (x + (z / y))) / a
    else
        tmp = t_1
    end if
    code = tmp
end function
public static double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	double t_1 = x + ((z - (x * a)) / y);
	double tmp;
	if (y <= -5.1e+40) {
		tmp = t_1;
	} else if (y <= 6e+21) {
		tmp = (t + (y * (230661.510616 + (y * (27464.7644705 + (y * z)))))) / (i + (y * (c + (y * b))));
	} else if (y <= 2.4e+98) {
		tmp = (y * (x + (z / y))) / a;
	} else {
		tmp = t_1;
	}
	return tmp;
}
def code(x, y, z, t, a, b, c, i):
	t_1 = x + ((z - (x * a)) / y)
	tmp = 0
	if y <= -5.1e+40:
		tmp = t_1
	elif y <= 6e+21:
		tmp = (t + (y * (230661.510616 + (y * (27464.7644705 + (y * z)))))) / (i + (y * (c + (y * b))))
	elif y <= 2.4e+98:
		tmp = (y * (x + (z / y))) / a
	else:
		tmp = t_1
	return tmp
function code(x, y, z, t, a, b, c, i)
	t_1 = Float64(x + Float64(Float64(z - Float64(x * a)) / y))
	tmp = 0.0
	if (y <= -5.1e+40)
		tmp = t_1;
	elseif (y <= 6e+21)
		tmp = Float64(Float64(t + Float64(y * Float64(230661.510616 + Float64(y * Float64(27464.7644705 + Float64(y * z)))))) / Float64(i + Float64(y * Float64(c + Float64(y * b)))));
	elseif (y <= 2.4e+98)
		tmp = Float64(Float64(y * Float64(x + Float64(z / y))) / a);
	else
		tmp = t_1;
	end
	return tmp
end
function tmp_2 = code(x, y, z, t, a, b, c, i)
	t_1 = x + ((z - (x * a)) / y);
	tmp = 0.0;
	if (y <= -5.1e+40)
		tmp = t_1;
	elseif (y <= 6e+21)
		tmp = (t + (y * (230661.510616 + (y * (27464.7644705 + (y * z)))))) / (i + (y * (c + (y * b))));
	elseif (y <= 2.4e+98)
		tmp = (y * (x + (z / y))) / a;
	else
		tmp = t_1;
	end
	tmp_2 = tmp;
end
code[x_, y_, z_, t_, a_, b_, c_, i_] := Block[{t$95$1 = N[(x + N[(N[(z - N[(x * a), $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[y, -5.1e+40], t$95$1, If[LessEqual[y, 6e+21], N[(N[(t + N[(y * N[(230661.510616 + N[(y * N[(27464.7644705 + N[(y * z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / N[(i + N[(y * N[(c + N[(y * b), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y, 2.4e+98], N[(N[(y * N[(x + N[(z / y), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / a), $MachinePrecision], t$95$1]]]]
\begin{array}{l}

\\
\begin{array}{l}
t_1 := x + \frac{z - x \cdot a}{y}\\
\mathbf{if}\;y \leq -5.1 \cdot 10^{+40}:\\
\;\;\;\;t\_1\\

\mathbf{elif}\;y \leq 6 \cdot 10^{+21}:\\
\;\;\;\;\frac{t + y \cdot \left(230661.510616 + y \cdot \left(27464.7644705 + y \cdot z\right)\right)}{i + y \cdot \left(c + y \cdot b\right)}\\

\mathbf{elif}\;y \leq 2.4 \cdot 10^{+98}:\\
\;\;\;\;\frac{y \cdot \left(x + \frac{z}{y}\right)}{a}\\

\mathbf{else}:\\
\;\;\;\;t\_1\\


\end{array}
\end{array}
Derivation
  1. Split input into 3 regimes
  2. if y < -5.09999999999999959e40 or 2.3999999999999999e98 < y

    1. Initial program 2.7%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Taylor expanded in t around 0 2.7%

      \[\leadsto \color{blue}{\frac{y \cdot \left(230661.510616 + y \cdot \left(27464.7644705 + y \cdot \left(z + x \cdot y\right)\right)\right)}{i + y \cdot \left(c + y \cdot \left(b + y \cdot \left(a + y\right)\right)\right)}} \]
    4. Taylor expanded in y around inf 71.7%

      \[\leadsto \color{blue}{\left(x + \frac{z}{y}\right) - \frac{a \cdot x}{y}} \]
    5. Step-by-step derivation
      1. associate--l+71.7%

        \[\leadsto \color{blue}{x + \left(\frac{z}{y} - \frac{a \cdot x}{y}\right)} \]
      2. div-sub71.7%

        \[\leadsto x + \color{blue}{\frac{z - a \cdot x}{y}} \]
      3. *-commutative71.7%

        \[\leadsto x + \frac{z - \color{blue}{x \cdot a}}{y} \]
    6. Simplified71.7%

      \[\leadsto \color{blue}{x + \frac{z - x \cdot a}{y}} \]

    if -5.09999999999999959e40 < y < 6e21

    1. Initial program 97.1%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Taylor expanded in x around 0 89.9%

      \[\leadsto \frac{\left(\left(\color{blue}{y \cdot z} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    4. Taylor expanded in y around 0 86.9%

      \[\leadsto \frac{\left(\left(y \cdot z + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\color{blue}{y \cdot \left(c + b \cdot y\right)} + i} \]
    5. Step-by-step derivation
      1. *-commutative91.8%

        \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{y \cdot \left(c + \color{blue}{y \cdot b}\right) + i} \]
    6. Simplified86.9%

      \[\leadsto \frac{\left(\left(y \cdot z + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\color{blue}{y \cdot \left(c + y \cdot b\right)} + i} \]

    if 6e21 < y < 2.3999999999999999e98

    1. Initial program 29.2%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Step-by-step derivation
      1. *-commutative29.2%

        \[\leadsto \frac{\left(\left(\color{blue}{y \cdot \left(x \cdot y + z\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
      2. distribute-rgt-in29.2%

        \[\leadsto \frac{\left(\left(\color{blue}{\left(\left(x \cdot y\right) \cdot y + z \cdot y\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    4. Applied egg-rr29.2%

      \[\leadsto \frac{\left(\left(\color{blue}{\left(\left(x \cdot y\right) \cdot y + z \cdot y\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    5. Taylor expanded in y around 0 29.1%

      \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\color{blue}{y \cdot \left(c + y \cdot \left(b + a \cdot y\right)\right)} + i} \]
    6. Step-by-step derivation
      1. *-commutative29.1%

        \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{y \cdot \left(c + y \cdot \left(b + \color{blue}{y \cdot a}\right)\right) + i} \]
    7. Simplified29.1%

      \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\color{blue}{y \cdot \left(c + y \cdot \left(b + y \cdot a\right)\right)} + i} \]
    8. Taylor expanded in y around inf 35.7%

      \[\leadsto \color{blue}{y \cdot \left(\left(\frac{x}{a} + \frac{z}{a \cdot y}\right) - \frac{b \cdot x}{{a}^{2} \cdot y}\right)} \]
    9. Step-by-step derivation
      1. associate--l+35.7%

        \[\leadsto y \cdot \color{blue}{\left(\frac{x}{a} + \left(\frac{z}{a \cdot y} - \frac{b \cdot x}{{a}^{2} \cdot y}\right)\right)} \]
      2. associate-/r*41.0%

        \[\leadsto y \cdot \left(\frac{x}{a} + \left(\color{blue}{\frac{\frac{z}{a}}{y}} - \frac{b \cdot x}{{a}^{2} \cdot y}\right)\right) \]
      3. associate-/r*41.0%

        \[\leadsto y \cdot \left(\frac{x}{a} + \left(\frac{\frac{z}{a}}{y} - \color{blue}{\frac{\frac{b \cdot x}{{a}^{2}}}{y}}\right)\right) \]
      4. div-sub41.0%

        \[\leadsto y \cdot \left(\frac{x}{a} + \color{blue}{\frac{\frac{z}{a} - \frac{b \cdot x}{{a}^{2}}}{y}}\right) \]
      5. associate-/l*46.6%

        \[\leadsto y \cdot \left(\frac{x}{a} + \frac{\frac{z}{a} - \color{blue}{b \cdot \frac{x}{{a}^{2}}}}{y}\right) \]
    10. Simplified46.6%

      \[\leadsto \color{blue}{y \cdot \left(\frac{x}{a} + \frac{\frac{z}{a} - b \cdot \frac{x}{{a}^{2}}}{y}\right)} \]
    11. Taylor expanded in a around inf 36.6%

      \[\leadsto \color{blue}{\frac{y \cdot \left(x + \frac{z}{y}\right)}{a}} \]
  3. Recombined 3 regimes into one program.
  4. Final simplification78.3%

    \[\leadsto \begin{array}{l} \mathbf{if}\;y \leq -5.1 \cdot 10^{+40}:\\ \;\;\;\;x + \frac{z - x \cdot a}{y}\\ \mathbf{elif}\;y \leq 6 \cdot 10^{+21}:\\ \;\;\;\;\frac{t + y \cdot \left(230661.510616 + y \cdot \left(27464.7644705 + y \cdot z\right)\right)}{i + y \cdot \left(c + y \cdot b\right)}\\ \mathbf{elif}\;y \leq 2.4 \cdot 10^{+98}:\\ \;\;\;\;\frac{y \cdot \left(x + \frac{z}{y}\right)}{a}\\ \mathbf{else}:\\ \;\;\;\;x + \frac{z - x \cdot a}{y}\\ \end{array} \]
  5. Add Preprocessing

Alternative 7: 73.7% accurate, 1.1× speedup?

\[\begin{array}{l} \\ \begin{array}{l} t_1 := x + \frac{z - x \cdot a}{y}\\ \mathbf{if}\;y \leq -1.05 \cdot 10^{+40}:\\ \;\;\;\;t\_1\\ \mathbf{elif}\;y \leq 205000:\\ \;\;\;\;\frac{t + y \cdot 230661.510616}{y \cdot \left(y \cdot \left(y \cdot \left(y + a\right) + b\right) + c\right) + i}\\ \mathbf{elif}\;y \leq 2.4 \cdot 10^{+98}:\\ \;\;\;\;\frac{y \cdot \left(x + \frac{z}{y}\right)}{a}\\ \mathbf{else}:\\ \;\;\;\;t\_1\\ \end{array} \end{array} \]
(FPCore (x y z t a b c i)
 :precision binary64
 (let* ((t_1 (+ x (/ (- z (* x a)) y))))
   (if (<= y -1.05e+40)
     t_1
     (if (<= y 205000.0)
       (/
        (+ t (* y 230661.510616))
        (+ (* y (+ (* y (+ (* y (+ y a)) b)) c)) i))
       (if (<= y 2.4e+98) (/ (* y (+ x (/ z y))) a) t_1)))))
double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	double t_1 = x + ((z - (x * a)) / y);
	double tmp;
	if (y <= -1.05e+40) {
		tmp = t_1;
	} else if (y <= 205000.0) {
		tmp = (t + (y * 230661.510616)) / ((y * ((y * ((y * (y + a)) + b)) + c)) + i);
	} else if (y <= 2.4e+98) {
		tmp = (y * (x + (z / y))) / a;
	} else {
		tmp = t_1;
	}
	return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i)
    real(8), intent (in) :: x
    real(8), intent (in) :: y
    real(8), intent (in) :: z
    real(8), intent (in) :: t
    real(8), intent (in) :: a
    real(8), intent (in) :: b
    real(8), intent (in) :: c
    real(8), intent (in) :: i
    real(8) :: t_1
    real(8) :: tmp
    t_1 = x + ((z - (x * a)) / y)
    if (y <= (-1.05d+40)) then
        tmp = t_1
    else if (y <= 205000.0d0) then
        tmp = (t + (y * 230661.510616d0)) / ((y * ((y * ((y * (y + a)) + b)) + c)) + i)
    else if (y <= 2.4d+98) then
        tmp = (y * (x + (z / y))) / a
    else
        tmp = t_1
    end if
    code = tmp
end function
public static double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	double t_1 = x + ((z - (x * a)) / y);
	double tmp;
	if (y <= -1.05e+40) {
		tmp = t_1;
	} else if (y <= 205000.0) {
		tmp = (t + (y * 230661.510616)) / ((y * ((y * ((y * (y + a)) + b)) + c)) + i);
	} else if (y <= 2.4e+98) {
		tmp = (y * (x + (z / y))) / a;
	} else {
		tmp = t_1;
	}
	return tmp;
}
def code(x, y, z, t, a, b, c, i):
	t_1 = x + ((z - (x * a)) / y)
	tmp = 0
	if y <= -1.05e+40:
		tmp = t_1
	elif y <= 205000.0:
		tmp = (t + (y * 230661.510616)) / ((y * ((y * ((y * (y + a)) + b)) + c)) + i)
	elif y <= 2.4e+98:
		tmp = (y * (x + (z / y))) / a
	else:
		tmp = t_1
	return tmp
function code(x, y, z, t, a, b, c, i)
	t_1 = Float64(x + Float64(Float64(z - Float64(x * a)) / y))
	tmp = 0.0
	if (y <= -1.05e+40)
		tmp = t_1;
	elseif (y <= 205000.0)
		tmp = Float64(Float64(t + Float64(y * 230661.510616)) / Float64(Float64(y * Float64(Float64(y * Float64(Float64(y * Float64(y + a)) + b)) + c)) + i));
	elseif (y <= 2.4e+98)
		tmp = Float64(Float64(y * Float64(x + Float64(z / y))) / a);
	else
		tmp = t_1;
	end
	return tmp
end
function tmp_2 = code(x, y, z, t, a, b, c, i)
	t_1 = x + ((z - (x * a)) / y);
	tmp = 0.0;
	if (y <= -1.05e+40)
		tmp = t_1;
	elseif (y <= 205000.0)
		tmp = (t + (y * 230661.510616)) / ((y * ((y * ((y * (y + a)) + b)) + c)) + i);
	elseif (y <= 2.4e+98)
		tmp = (y * (x + (z / y))) / a;
	else
		tmp = t_1;
	end
	tmp_2 = tmp;
end
code[x_, y_, z_, t_, a_, b_, c_, i_] := Block[{t$95$1 = N[(x + N[(N[(z - N[(x * a), $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[y, -1.05e+40], t$95$1, If[LessEqual[y, 205000.0], N[(N[(t + N[(y * 230661.510616), $MachinePrecision]), $MachinePrecision] / N[(N[(y * N[(N[(y * N[(N[(y * N[(y + a), $MachinePrecision]), $MachinePrecision] + b), $MachinePrecision]), $MachinePrecision] + c), $MachinePrecision]), $MachinePrecision] + i), $MachinePrecision]), $MachinePrecision], If[LessEqual[y, 2.4e+98], N[(N[(y * N[(x + N[(z / y), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / a), $MachinePrecision], t$95$1]]]]
\begin{array}{l}

\\
\begin{array}{l}
t_1 := x + \frac{z - x \cdot a}{y}\\
\mathbf{if}\;y \leq -1.05 \cdot 10^{+40}:\\
\;\;\;\;t\_1\\

\mathbf{elif}\;y \leq 205000:\\
\;\;\;\;\frac{t + y \cdot 230661.510616}{y \cdot \left(y \cdot \left(y \cdot \left(y + a\right) + b\right) + c\right) + i}\\

\mathbf{elif}\;y \leq 2.4 \cdot 10^{+98}:\\
\;\;\;\;\frac{y \cdot \left(x + \frac{z}{y}\right)}{a}\\

\mathbf{else}:\\
\;\;\;\;t\_1\\


\end{array}
\end{array}
Derivation
  1. Split input into 3 regimes
  2. if y < -1.05000000000000005e40 or 2.3999999999999999e98 < y

    1. Initial program 2.7%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Taylor expanded in t around 0 2.7%

      \[\leadsto \color{blue}{\frac{y \cdot \left(230661.510616 + y \cdot \left(27464.7644705 + y \cdot \left(z + x \cdot y\right)\right)\right)}{i + y \cdot \left(c + y \cdot \left(b + y \cdot \left(a + y\right)\right)\right)}} \]
    4. Taylor expanded in y around inf 71.7%

      \[\leadsto \color{blue}{\left(x + \frac{z}{y}\right) - \frac{a \cdot x}{y}} \]
    5. Step-by-step derivation
      1. associate--l+71.7%

        \[\leadsto \color{blue}{x + \left(\frac{z}{y} - \frac{a \cdot x}{y}\right)} \]
      2. div-sub71.7%

        \[\leadsto x + \color{blue}{\frac{z - a \cdot x}{y}} \]
      3. *-commutative71.7%

        \[\leadsto x + \frac{z - \color{blue}{x \cdot a}}{y} \]
    6. Simplified71.7%

      \[\leadsto \color{blue}{x + \frac{z - x \cdot a}{y}} \]

    if -1.05000000000000005e40 < y < 205000

    1. Initial program 97.7%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Taylor expanded in y around 0 82.2%

      \[\leadsto \frac{\color{blue}{230661.510616 \cdot y} + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    4. Step-by-step derivation
      1. *-commutative82.2%

        \[\leadsto \frac{\color{blue}{y \cdot 230661.510616} + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    5. Simplified82.2%

      \[\leadsto \frac{\color{blue}{y \cdot 230661.510616} + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]

    if 205000 < y < 2.3999999999999999e98

    1. Initial program 44.9%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Step-by-step derivation
      1. *-commutative44.9%

        \[\leadsto \frac{\left(\left(\color{blue}{y \cdot \left(x \cdot y + z\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
      2. distribute-rgt-in44.9%

        \[\leadsto \frac{\left(\left(\color{blue}{\left(\left(x \cdot y\right) \cdot y + z \cdot y\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    4. Applied egg-rr44.9%

      \[\leadsto \frac{\left(\left(\color{blue}{\left(\left(x \cdot y\right) \cdot y + z \cdot y\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    5. Taylor expanded in y around 0 41.2%

      \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\color{blue}{y \cdot \left(c + y \cdot \left(b + a \cdot y\right)\right)} + i} \]
    6. Step-by-step derivation
      1. *-commutative41.2%

        \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{y \cdot \left(c + y \cdot \left(b + \color{blue}{y \cdot a}\right)\right) + i} \]
    7. Simplified41.2%

      \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\color{blue}{y \cdot \left(c + y \cdot \left(b + y \cdot a\right)\right)} + i} \]
    8. Taylor expanded in y around inf 30.0%

      \[\leadsto \color{blue}{y \cdot \left(\left(\frac{x}{a} + \frac{z}{a \cdot y}\right) - \frac{b \cdot x}{{a}^{2} \cdot y}\right)} \]
    9. Step-by-step derivation
      1. associate--l+30.0%

        \[\leadsto y \cdot \color{blue}{\left(\frac{x}{a} + \left(\frac{z}{a \cdot y} - \frac{b \cdot x}{{a}^{2} \cdot y}\right)\right)} \]
      2. associate-/r*33.8%

        \[\leadsto y \cdot \left(\frac{x}{a} + \left(\color{blue}{\frac{\frac{z}{a}}{y}} - \frac{b \cdot x}{{a}^{2} \cdot y}\right)\right) \]
      3. associate-/r*33.8%

        \[\leadsto y \cdot \left(\frac{x}{a} + \left(\frac{\frac{z}{a}}{y} - \color{blue}{\frac{\frac{b \cdot x}{{a}^{2}}}{y}}\right)\right) \]
      4. div-sub33.8%

        \[\leadsto y \cdot \left(\frac{x}{a} + \color{blue}{\frac{\frac{z}{a} - \frac{b \cdot x}{{a}^{2}}}{y}}\right) \]
      5. associate-/l*41.7%

        \[\leadsto y \cdot \left(\frac{x}{a} + \frac{\frac{z}{a} - \color{blue}{b \cdot \frac{x}{{a}^{2}}}}{y}\right) \]
    10. Simplified41.7%

      \[\leadsto \color{blue}{y \cdot \left(\frac{x}{a} + \frac{\frac{z}{a} - b \cdot \frac{x}{{a}^{2}}}{y}\right)} \]
    11. Taylor expanded in a around inf 34.7%

      \[\leadsto \color{blue}{\frac{y \cdot \left(x + \frac{z}{y}\right)}{a}} \]
  3. Recombined 3 regimes into one program.
  4. Final simplification74.0%

    \[\leadsto \begin{array}{l} \mathbf{if}\;y \leq -1.05 \cdot 10^{+40}:\\ \;\;\;\;x + \frac{z - x \cdot a}{y}\\ \mathbf{elif}\;y \leq 205000:\\ \;\;\;\;\frac{t + y \cdot 230661.510616}{y \cdot \left(y \cdot \left(y \cdot \left(y + a\right) + b\right) + c\right) + i}\\ \mathbf{elif}\;y \leq 2.4 \cdot 10^{+98}:\\ \;\;\;\;\frac{y \cdot \left(x + \frac{z}{y}\right)}{a}\\ \mathbf{else}:\\ \;\;\;\;x + \frac{z - x \cdot a}{y}\\ \end{array} \]
  5. Add Preprocessing

Alternative 8: 73.4% accurate, 1.1× speedup?

\[\begin{array}{l} \\ \begin{array}{l} t_1 := x + \frac{z - x \cdot a}{y}\\ \mathbf{if}\;y \leq -6.3 \cdot 10^{+38}:\\ \;\;\;\;t\_1\\ \mathbf{elif}\;y \leq 14500:\\ \;\;\;\;\frac{t + y \cdot 230661.510616}{i + y \cdot \left(c + y \cdot \left(b + y \cdot a\right)\right)}\\ \mathbf{elif}\;y \leq 3.3 \cdot 10^{+98}:\\ \;\;\;\;\frac{y \cdot \left(x + \frac{z}{y}\right)}{a}\\ \mathbf{else}:\\ \;\;\;\;t\_1\\ \end{array} \end{array} \]
(FPCore (x y z t a b c i)
 :precision binary64
 (let* ((t_1 (+ x (/ (- z (* x a)) y))))
   (if (<= y -6.3e+38)
     t_1
     (if (<= y 14500.0)
       (/ (+ t (* y 230661.510616)) (+ i (* y (+ c (* y (+ b (* y a)))))))
       (if (<= y 3.3e+98) (/ (* y (+ x (/ z y))) a) t_1)))))
double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	double t_1 = x + ((z - (x * a)) / y);
	double tmp;
	if (y <= -6.3e+38) {
		tmp = t_1;
	} else if (y <= 14500.0) {
		tmp = (t + (y * 230661.510616)) / (i + (y * (c + (y * (b + (y * a))))));
	} else if (y <= 3.3e+98) {
		tmp = (y * (x + (z / y))) / a;
	} else {
		tmp = t_1;
	}
	return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i)
    real(8), intent (in) :: x
    real(8), intent (in) :: y
    real(8), intent (in) :: z
    real(8), intent (in) :: t
    real(8), intent (in) :: a
    real(8), intent (in) :: b
    real(8), intent (in) :: c
    real(8), intent (in) :: i
    real(8) :: t_1
    real(8) :: tmp
    t_1 = x + ((z - (x * a)) / y)
    if (y <= (-6.3d+38)) then
        tmp = t_1
    else if (y <= 14500.0d0) then
        tmp = (t + (y * 230661.510616d0)) / (i + (y * (c + (y * (b + (y * a))))))
    else if (y <= 3.3d+98) then
        tmp = (y * (x + (z / y))) / a
    else
        tmp = t_1
    end if
    code = tmp
end function
public static double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	double t_1 = x + ((z - (x * a)) / y);
	double tmp;
	if (y <= -6.3e+38) {
		tmp = t_1;
	} else if (y <= 14500.0) {
		tmp = (t + (y * 230661.510616)) / (i + (y * (c + (y * (b + (y * a))))));
	} else if (y <= 3.3e+98) {
		tmp = (y * (x + (z / y))) / a;
	} else {
		tmp = t_1;
	}
	return tmp;
}
def code(x, y, z, t, a, b, c, i):
	t_1 = x + ((z - (x * a)) / y)
	tmp = 0
	if y <= -6.3e+38:
		tmp = t_1
	elif y <= 14500.0:
		tmp = (t + (y * 230661.510616)) / (i + (y * (c + (y * (b + (y * a))))))
	elif y <= 3.3e+98:
		tmp = (y * (x + (z / y))) / a
	else:
		tmp = t_1
	return tmp
function code(x, y, z, t, a, b, c, i)
	t_1 = Float64(x + Float64(Float64(z - Float64(x * a)) / y))
	tmp = 0.0
	if (y <= -6.3e+38)
		tmp = t_1;
	elseif (y <= 14500.0)
		tmp = Float64(Float64(t + Float64(y * 230661.510616)) / Float64(i + Float64(y * Float64(c + Float64(y * Float64(b + Float64(y * a)))))));
	elseif (y <= 3.3e+98)
		tmp = Float64(Float64(y * Float64(x + Float64(z / y))) / a);
	else
		tmp = t_1;
	end
	return tmp
end
function tmp_2 = code(x, y, z, t, a, b, c, i)
	t_1 = x + ((z - (x * a)) / y);
	tmp = 0.0;
	if (y <= -6.3e+38)
		tmp = t_1;
	elseif (y <= 14500.0)
		tmp = (t + (y * 230661.510616)) / (i + (y * (c + (y * (b + (y * a))))));
	elseif (y <= 3.3e+98)
		tmp = (y * (x + (z / y))) / a;
	else
		tmp = t_1;
	end
	tmp_2 = tmp;
end
code[x_, y_, z_, t_, a_, b_, c_, i_] := Block[{t$95$1 = N[(x + N[(N[(z - N[(x * a), $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[y, -6.3e+38], t$95$1, If[LessEqual[y, 14500.0], N[(N[(t + N[(y * 230661.510616), $MachinePrecision]), $MachinePrecision] / N[(i + N[(y * N[(c + N[(y * N[(b + N[(y * a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y, 3.3e+98], N[(N[(y * N[(x + N[(z / y), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / a), $MachinePrecision], t$95$1]]]]
\begin{array}{l}

\\
\begin{array}{l}
t_1 := x + \frac{z - x \cdot a}{y}\\
\mathbf{if}\;y \leq -6.3 \cdot 10^{+38}:\\
\;\;\;\;t\_1\\

\mathbf{elif}\;y \leq 14500:\\
\;\;\;\;\frac{t + y \cdot 230661.510616}{i + y \cdot \left(c + y \cdot \left(b + y \cdot a\right)\right)}\\

\mathbf{elif}\;y \leq 3.3 \cdot 10^{+98}:\\
\;\;\;\;\frac{y \cdot \left(x + \frac{z}{y}\right)}{a}\\

\mathbf{else}:\\
\;\;\;\;t\_1\\


\end{array}
\end{array}
Derivation
  1. Split input into 3 regimes
  2. if y < -6.30000000000000003e38 or 3.30000000000000028e98 < y

    1. Initial program 2.7%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Taylor expanded in t around 0 2.7%

      \[\leadsto \color{blue}{\frac{y \cdot \left(230661.510616 + y \cdot \left(27464.7644705 + y \cdot \left(z + x \cdot y\right)\right)\right)}{i + y \cdot \left(c + y \cdot \left(b + y \cdot \left(a + y\right)\right)\right)}} \]
    4. Taylor expanded in y around inf 71.7%

      \[\leadsto \color{blue}{\left(x + \frac{z}{y}\right) - \frac{a \cdot x}{y}} \]
    5. Step-by-step derivation
      1. associate--l+71.7%

        \[\leadsto \color{blue}{x + \left(\frac{z}{y} - \frac{a \cdot x}{y}\right)} \]
      2. div-sub71.7%

        \[\leadsto x + \color{blue}{\frac{z - a \cdot x}{y}} \]
      3. *-commutative71.7%

        \[\leadsto x + \frac{z - \color{blue}{x \cdot a}}{y} \]
    6. Simplified71.7%

      \[\leadsto \color{blue}{x + \frac{z - x \cdot a}{y}} \]

    if -6.30000000000000003e38 < y < 14500

    1. Initial program 97.7%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Step-by-step derivation
      1. *-commutative97.7%

        \[\leadsto \frac{\left(\left(\color{blue}{y \cdot \left(x \cdot y + z\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
      2. distribute-rgt-in97.7%

        \[\leadsto \frac{\left(\left(\color{blue}{\left(\left(x \cdot y\right) \cdot y + z \cdot y\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    4. Applied egg-rr97.7%

      \[\leadsto \frac{\left(\left(\color{blue}{\left(\left(x \cdot y\right) \cdot y + z \cdot y\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    5. Taylor expanded in y around 0 96.6%

      \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\color{blue}{y \cdot \left(c + y \cdot \left(b + a \cdot y\right)\right)} + i} \]
    6. Step-by-step derivation
      1. *-commutative96.6%

        \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{y \cdot \left(c + y \cdot \left(b + \color{blue}{y \cdot a}\right)\right) + i} \]
    7. Simplified96.6%

      \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\color{blue}{y \cdot \left(c + y \cdot \left(b + y \cdot a\right)\right)} + i} \]
    8. Taylor expanded in y around 0 81.6%

      \[\leadsto \frac{\color{blue}{230661.510616 \cdot y} + t}{y \cdot \left(c + y \cdot \left(b + y \cdot a\right)\right) + i} \]
    9. Step-by-step derivation
      1. *-commutative80.4%

        \[\leadsto \frac{\color{blue}{y \cdot 230661.510616} + t}{y \cdot \left(c + y \cdot b\right) + i} \]
    10. Simplified81.6%

      \[\leadsto \frac{\color{blue}{y \cdot 230661.510616} + t}{y \cdot \left(c + y \cdot \left(b + y \cdot a\right)\right) + i} \]

    if 14500 < y < 3.30000000000000028e98

    1. Initial program 44.9%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Step-by-step derivation
      1. *-commutative44.9%

        \[\leadsto \frac{\left(\left(\color{blue}{y \cdot \left(x \cdot y + z\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
      2. distribute-rgt-in44.9%

        \[\leadsto \frac{\left(\left(\color{blue}{\left(\left(x \cdot y\right) \cdot y + z \cdot y\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    4. Applied egg-rr44.9%

      \[\leadsto \frac{\left(\left(\color{blue}{\left(\left(x \cdot y\right) \cdot y + z \cdot y\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    5. Taylor expanded in y around 0 41.2%

      \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\color{blue}{y \cdot \left(c + y \cdot \left(b + a \cdot y\right)\right)} + i} \]
    6. Step-by-step derivation
      1. *-commutative41.2%

        \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{y \cdot \left(c + y \cdot \left(b + \color{blue}{y \cdot a}\right)\right) + i} \]
    7. Simplified41.2%

      \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\color{blue}{y \cdot \left(c + y \cdot \left(b + y \cdot a\right)\right)} + i} \]
    8. Taylor expanded in y around inf 30.0%

      \[\leadsto \color{blue}{y \cdot \left(\left(\frac{x}{a} + \frac{z}{a \cdot y}\right) - \frac{b \cdot x}{{a}^{2} \cdot y}\right)} \]
    9. Step-by-step derivation
      1. associate--l+30.0%

        \[\leadsto y \cdot \color{blue}{\left(\frac{x}{a} + \left(\frac{z}{a \cdot y} - \frac{b \cdot x}{{a}^{2} \cdot y}\right)\right)} \]
      2. associate-/r*33.8%

        \[\leadsto y \cdot \left(\frac{x}{a} + \left(\color{blue}{\frac{\frac{z}{a}}{y}} - \frac{b \cdot x}{{a}^{2} \cdot y}\right)\right) \]
      3. associate-/r*33.8%

        \[\leadsto y \cdot \left(\frac{x}{a} + \left(\frac{\frac{z}{a}}{y} - \color{blue}{\frac{\frac{b \cdot x}{{a}^{2}}}{y}}\right)\right) \]
      4. div-sub33.8%

        \[\leadsto y \cdot \left(\frac{x}{a} + \color{blue}{\frac{\frac{z}{a} - \frac{b \cdot x}{{a}^{2}}}{y}}\right) \]
      5. associate-/l*41.7%

        \[\leadsto y \cdot \left(\frac{x}{a} + \frac{\frac{z}{a} - \color{blue}{b \cdot \frac{x}{{a}^{2}}}}{y}\right) \]
    10. Simplified41.7%

      \[\leadsto \color{blue}{y \cdot \left(\frac{x}{a} + \frac{\frac{z}{a} - b \cdot \frac{x}{{a}^{2}}}{y}\right)} \]
    11. Taylor expanded in a around inf 34.7%

      \[\leadsto \color{blue}{\frac{y \cdot \left(x + \frac{z}{y}\right)}{a}} \]
  3. Recombined 3 regimes into one program.
  4. Final simplification73.7%

    \[\leadsto \begin{array}{l} \mathbf{if}\;y \leq -6.3 \cdot 10^{+38}:\\ \;\;\;\;x + \frac{z - x \cdot a}{y}\\ \mathbf{elif}\;y \leq 14500:\\ \;\;\;\;\frac{t + y \cdot 230661.510616}{i + y \cdot \left(c + y \cdot \left(b + y \cdot a\right)\right)}\\ \mathbf{elif}\;y \leq 3.3 \cdot 10^{+98}:\\ \;\;\;\;\frac{y \cdot \left(x + \frac{z}{y}\right)}{a}\\ \mathbf{else}:\\ \;\;\;\;x + \frac{z - x \cdot a}{y}\\ \end{array} \]
  5. Add Preprocessing

Alternative 9: 66.5% accurate, 1.3× speedup?

\[\begin{array}{l} \\ \begin{array}{l} t_1 := x + \frac{z - x \cdot a}{y}\\ \mathbf{if}\;y \leq -5.8 \cdot 10^{+38}:\\ \;\;\;\;t\_1\\ \mathbf{elif}\;y \leq 155000:\\ \;\;\;\;\frac{t}{i + y \cdot \left(c + y \cdot \left(b + y \cdot a\right)\right)}\\ \mathbf{elif}\;y \leq 4.6 \cdot 10^{+98}:\\ \;\;\;\;\frac{y \cdot \left(x + \frac{z}{y}\right)}{a}\\ \mathbf{else}:\\ \;\;\;\;t\_1\\ \end{array} \end{array} \]
(FPCore (x y z t a b c i)
 :precision binary64
 (let* ((t_1 (+ x (/ (- z (* x a)) y))))
   (if (<= y -5.8e+38)
     t_1
     (if (<= y 155000.0)
       (/ t (+ i (* y (+ c (* y (+ b (* y a)))))))
       (if (<= y 4.6e+98) (/ (* y (+ x (/ z y))) a) t_1)))))
double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	double t_1 = x + ((z - (x * a)) / y);
	double tmp;
	if (y <= -5.8e+38) {
		tmp = t_1;
	} else if (y <= 155000.0) {
		tmp = t / (i + (y * (c + (y * (b + (y * a))))));
	} else if (y <= 4.6e+98) {
		tmp = (y * (x + (z / y))) / a;
	} else {
		tmp = t_1;
	}
	return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i)
    real(8), intent (in) :: x
    real(8), intent (in) :: y
    real(8), intent (in) :: z
    real(8), intent (in) :: t
    real(8), intent (in) :: a
    real(8), intent (in) :: b
    real(8), intent (in) :: c
    real(8), intent (in) :: i
    real(8) :: t_1
    real(8) :: tmp
    t_1 = x + ((z - (x * a)) / y)
    if (y <= (-5.8d+38)) then
        tmp = t_1
    else if (y <= 155000.0d0) then
        tmp = t / (i + (y * (c + (y * (b + (y * a))))))
    else if (y <= 4.6d+98) then
        tmp = (y * (x + (z / y))) / a
    else
        tmp = t_1
    end if
    code = tmp
end function
public static double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	double t_1 = x + ((z - (x * a)) / y);
	double tmp;
	if (y <= -5.8e+38) {
		tmp = t_1;
	} else if (y <= 155000.0) {
		tmp = t / (i + (y * (c + (y * (b + (y * a))))));
	} else if (y <= 4.6e+98) {
		tmp = (y * (x + (z / y))) / a;
	} else {
		tmp = t_1;
	}
	return tmp;
}
def code(x, y, z, t, a, b, c, i):
	t_1 = x + ((z - (x * a)) / y)
	tmp = 0
	if y <= -5.8e+38:
		tmp = t_1
	elif y <= 155000.0:
		tmp = t / (i + (y * (c + (y * (b + (y * a))))))
	elif y <= 4.6e+98:
		tmp = (y * (x + (z / y))) / a
	else:
		tmp = t_1
	return tmp
function code(x, y, z, t, a, b, c, i)
	t_1 = Float64(x + Float64(Float64(z - Float64(x * a)) / y))
	tmp = 0.0
	if (y <= -5.8e+38)
		tmp = t_1;
	elseif (y <= 155000.0)
		tmp = Float64(t / Float64(i + Float64(y * Float64(c + Float64(y * Float64(b + Float64(y * a)))))));
	elseif (y <= 4.6e+98)
		tmp = Float64(Float64(y * Float64(x + Float64(z / y))) / a);
	else
		tmp = t_1;
	end
	return tmp
end
function tmp_2 = code(x, y, z, t, a, b, c, i)
	t_1 = x + ((z - (x * a)) / y);
	tmp = 0.0;
	if (y <= -5.8e+38)
		tmp = t_1;
	elseif (y <= 155000.0)
		tmp = t / (i + (y * (c + (y * (b + (y * a))))));
	elseif (y <= 4.6e+98)
		tmp = (y * (x + (z / y))) / a;
	else
		tmp = t_1;
	end
	tmp_2 = tmp;
end
code[x_, y_, z_, t_, a_, b_, c_, i_] := Block[{t$95$1 = N[(x + N[(N[(z - N[(x * a), $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[y, -5.8e+38], t$95$1, If[LessEqual[y, 155000.0], N[(t / N[(i + N[(y * N[(c + N[(y * N[(b + N[(y * a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y, 4.6e+98], N[(N[(y * N[(x + N[(z / y), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / a), $MachinePrecision], t$95$1]]]]
\begin{array}{l}

\\
\begin{array}{l}
t_1 := x + \frac{z - x \cdot a}{y}\\
\mathbf{if}\;y \leq -5.8 \cdot 10^{+38}:\\
\;\;\;\;t\_1\\

\mathbf{elif}\;y \leq 155000:\\
\;\;\;\;\frac{t}{i + y \cdot \left(c + y \cdot \left(b + y \cdot a\right)\right)}\\

\mathbf{elif}\;y \leq 4.6 \cdot 10^{+98}:\\
\;\;\;\;\frac{y \cdot \left(x + \frac{z}{y}\right)}{a}\\

\mathbf{else}:\\
\;\;\;\;t\_1\\


\end{array}
\end{array}
Derivation
  1. Split input into 3 regimes
  2. if y < -5.80000000000000013e38 or 4.60000000000000026e98 < y

    1. Initial program 2.7%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Taylor expanded in t around 0 2.7%

      \[\leadsto \color{blue}{\frac{y \cdot \left(230661.510616 + y \cdot \left(27464.7644705 + y \cdot \left(z + x \cdot y\right)\right)\right)}{i + y \cdot \left(c + y \cdot \left(b + y \cdot \left(a + y\right)\right)\right)}} \]
    4. Taylor expanded in y around inf 71.7%

      \[\leadsto \color{blue}{\left(x + \frac{z}{y}\right) - \frac{a \cdot x}{y}} \]
    5. Step-by-step derivation
      1. associate--l+71.7%

        \[\leadsto \color{blue}{x + \left(\frac{z}{y} - \frac{a \cdot x}{y}\right)} \]
      2. div-sub71.7%

        \[\leadsto x + \color{blue}{\frac{z - a \cdot x}{y}} \]
      3. *-commutative71.7%

        \[\leadsto x + \frac{z - \color{blue}{x \cdot a}}{y} \]
    6. Simplified71.7%

      \[\leadsto \color{blue}{x + \frac{z - x \cdot a}{y}} \]

    if -5.80000000000000013e38 < y < 155000

    1. Initial program 97.7%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Step-by-step derivation
      1. fma-define97.7%

        \[\leadsto \frac{\color{blue}{\mathsf{fma}\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616, y, t\right)}}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
      2. fma-define97.7%

        \[\leadsto \frac{\mathsf{fma}\left(\color{blue}{\mathsf{fma}\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705, y, 230661.510616\right)}, y, t\right)}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
      3. fma-define97.7%

        \[\leadsto \frac{\mathsf{fma}\left(\mathsf{fma}\left(\color{blue}{\mathsf{fma}\left(x \cdot y + z, y, 27464.7644705\right)}, y, 230661.510616\right), y, t\right)}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
      4. fma-define97.7%

        \[\leadsto \frac{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(\color{blue}{\mathsf{fma}\left(x, y, z\right)}, y, 27464.7644705\right), y, 230661.510616\right), y, t\right)}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
      5. fma-define97.7%

        \[\leadsto \frac{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(x, y, z\right), y, 27464.7644705\right), y, 230661.510616\right), y, t\right)}{\color{blue}{\mathsf{fma}\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c, y, i\right)}} \]
      6. fma-define97.7%

        \[\leadsto \frac{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(x, y, z\right), y, 27464.7644705\right), y, 230661.510616\right), y, t\right)}{\mathsf{fma}\left(\color{blue}{\mathsf{fma}\left(\left(y + a\right) \cdot y + b, y, c\right)}, y, i\right)} \]
      7. fma-define97.7%

        \[\leadsto \frac{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(x, y, z\right), y, 27464.7644705\right), y, 230661.510616\right), y, t\right)}{\mathsf{fma}\left(\mathsf{fma}\left(\color{blue}{\mathsf{fma}\left(y + a, y, b\right)}, y, c\right), y, i\right)} \]
    3. Simplified97.7%

      \[\leadsto \color{blue}{\frac{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(x, y, z\right), y, 27464.7644705\right), y, 230661.510616\right), y, t\right)}{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(y + a, y, b\right), y, c\right), y, i\right)}} \]
    4. Add Preprocessing
    5. Taylor expanded in y around 0 71.3%

      \[\leadsto \frac{\color{blue}{t}}{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(y + a, y, b\right), y, c\right), y, i\right)} \]
    6. Taylor expanded in y around 0 70.7%

      \[\leadsto \frac{t}{\color{blue}{i + y \cdot \left(c + y \cdot \left(b + a \cdot y\right)\right)}} \]
    7. Step-by-step derivation
      1. *-commutative70.7%

        \[\leadsto \frac{t}{i + y \cdot \left(c + y \cdot \left(b + \color{blue}{y \cdot a}\right)\right)} \]
    8. Simplified70.7%

      \[\leadsto \frac{t}{\color{blue}{i + y \cdot \left(c + y \cdot \left(b + y \cdot a\right)\right)}} \]

    if 155000 < y < 4.60000000000000026e98

    1. Initial program 44.9%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Step-by-step derivation
      1. *-commutative44.9%

        \[\leadsto \frac{\left(\left(\color{blue}{y \cdot \left(x \cdot y + z\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
      2. distribute-rgt-in44.9%

        \[\leadsto \frac{\left(\left(\color{blue}{\left(\left(x \cdot y\right) \cdot y + z \cdot y\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    4. Applied egg-rr44.9%

      \[\leadsto \frac{\left(\left(\color{blue}{\left(\left(x \cdot y\right) \cdot y + z \cdot y\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    5. Taylor expanded in y around 0 41.2%

      \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\color{blue}{y \cdot \left(c + y \cdot \left(b + a \cdot y\right)\right)} + i} \]
    6. Step-by-step derivation
      1. *-commutative41.2%

        \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{y \cdot \left(c + y \cdot \left(b + \color{blue}{y \cdot a}\right)\right) + i} \]
    7. Simplified41.2%

      \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\color{blue}{y \cdot \left(c + y \cdot \left(b + y \cdot a\right)\right)} + i} \]
    8. Taylor expanded in y around inf 30.0%

      \[\leadsto \color{blue}{y \cdot \left(\left(\frac{x}{a} + \frac{z}{a \cdot y}\right) - \frac{b \cdot x}{{a}^{2} \cdot y}\right)} \]
    9. Step-by-step derivation
      1. associate--l+30.0%

        \[\leadsto y \cdot \color{blue}{\left(\frac{x}{a} + \left(\frac{z}{a \cdot y} - \frac{b \cdot x}{{a}^{2} \cdot y}\right)\right)} \]
      2. associate-/r*33.8%

        \[\leadsto y \cdot \left(\frac{x}{a} + \left(\color{blue}{\frac{\frac{z}{a}}{y}} - \frac{b \cdot x}{{a}^{2} \cdot y}\right)\right) \]
      3. associate-/r*33.8%

        \[\leadsto y \cdot \left(\frac{x}{a} + \left(\frac{\frac{z}{a}}{y} - \color{blue}{\frac{\frac{b \cdot x}{{a}^{2}}}{y}}\right)\right) \]
      4. div-sub33.8%

        \[\leadsto y \cdot \left(\frac{x}{a} + \color{blue}{\frac{\frac{z}{a} - \frac{b \cdot x}{{a}^{2}}}{y}}\right) \]
      5. associate-/l*41.7%

        \[\leadsto y \cdot \left(\frac{x}{a} + \frac{\frac{z}{a} - \color{blue}{b \cdot \frac{x}{{a}^{2}}}}{y}\right) \]
    10. Simplified41.7%

      \[\leadsto \color{blue}{y \cdot \left(\frac{x}{a} + \frac{\frac{z}{a} - b \cdot \frac{x}{{a}^{2}}}{y}\right)} \]
    11. Taylor expanded in a around inf 34.7%

      \[\leadsto \color{blue}{\frac{y \cdot \left(x + \frac{z}{y}\right)}{a}} \]
  3. Recombined 3 regimes into one program.
  4. Final simplification67.5%

    \[\leadsto \begin{array}{l} \mathbf{if}\;y \leq -5.8 \cdot 10^{+38}:\\ \;\;\;\;x + \frac{z - x \cdot a}{y}\\ \mathbf{elif}\;y \leq 155000:\\ \;\;\;\;\frac{t}{i + y \cdot \left(c + y \cdot \left(b + y \cdot a\right)\right)}\\ \mathbf{elif}\;y \leq 4.6 \cdot 10^{+98}:\\ \;\;\;\;\frac{y \cdot \left(x + \frac{z}{y}\right)}{a}\\ \mathbf{else}:\\ \;\;\;\;x + \frac{z - x \cdot a}{y}\\ \end{array} \]
  5. Add Preprocessing

Alternative 10: 71.7% accurate, 1.3× speedup?

\[\begin{array}{l} \\ \begin{array}{l} t_1 := x + \frac{z - x \cdot a}{y}\\ \mathbf{if}\;y \leq -1.05 \cdot 10^{+39}:\\ \;\;\;\;t\_1\\ \mathbf{elif}\;y \leq 115000:\\ \;\;\;\;\frac{t + y \cdot 230661.510616}{i + y \cdot \left(c + y \cdot b\right)}\\ \mathbf{elif}\;y \leq 5 \cdot 10^{+100}:\\ \;\;\;\;\frac{y \cdot \left(x + \frac{z}{y}\right)}{a}\\ \mathbf{else}:\\ \;\;\;\;t\_1\\ \end{array} \end{array} \]
(FPCore (x y z t a b c i)
 :precision binary64
 (let* ((t_1 (+ x (/ (- z (* x a)) y))))
   (if (<= y -1.05e+39)
     t_1
     (if (<= y 115000.0)
       (/ (+ t (* y 230661.510616)) (+ i (* y (+ c (* y b)))))
       (if (<= y 5e+100) (/ (* y (+ x (/ z y))) a) t_1)))))
double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	double t_1 = x + ((z - (x * a)) / y);
	double tmp;
	if (y <= -1.05e+39) {
		tmp = t_1;
	} else if (y <= 115000.0) {
		tmp = (t + (y * 230661.510616)) / (i + (y * (c + (y * b))));
	} else if (y <= 5e+100) {
		tmp = (y * (x + (z / y))) / a;
	} else {
		tmp = t_1;
	}
	return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i)
    real(8), intent (in) :: x
    real(8), intent (in) :: y
    real(8), intent (in) :: z
    real(8), intent (in) :: t
    real(8), intent (in) :: a
    real(8), intent (in) :: b
    real(8), intent (in) :: c
    real(8), intent (in) :: i
    real(8) :: t_1
    real(8) :: tmp
    t_1 = x + ((z - (x * a)) / y)
    if (y <= (-1.05d+39)) then
        tmp = t_1
    else if (y <= 115000.0d0) then
        tmp = (t + (y * 230661.510616d0)) / (i + (y * (c + (y * b))))
    else if (y <= 5d+100) then
        tmp = (y * (x + (z / y))) / a
    else
        tmp = t_1
    end if
    code = tmp
end function
public static double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	double t_1 = x + ((z - (x * a)) / y);
	double tmp;
	if (y <= -1.05e+39) {
		tmp = t_1;
	} else if (y <= 115000.0) {
		tmp = (t + (y * 230661.510616)) / (i + (y * (c + (y * b))));
	} else if (y <= 5e+100) {
		tmp = (y * (x + (z / y))) / a;
	} else {
		tmp = t_1;
	}
	return tmp;
}
def code(x, y, z, t, a, b, c, i):
	t_1 = x + ((z - (x * a)) / y)
	tmp = 0
	if y <= -1.05e+39:
		tmp = t_1
	elif y <= 115000.0:
		tmp = (t + (y * 230661.510616)) / (i + (y * (c + (y * b))))
	elif y <= 5e+100:
		tmp = (y * (x + (z / y))) / a
	else:
		tmp = t_1
	return tmp
function code(x, y, z, t, a, b, c, i)
	t_1 = Float64(x + Float64(Float64(z - Float64(x * a)) / y))
	tmp = 0.0
	if (y <= -1.05e+39)
		tmp = t_1;
	elseif (y <= 115000.0)
		tmp = Float64(Float64(t + Float64(y * 230661.510616)) / Float64(i + Float64(y * Float64(c + Float64(y * b)))));
	elseif (y <= 5e+100)
		tmp = Float64(Float64(y * Float64(x + Float64(z / y))) / a);
	else
		tmp = t_1;
	end
	return tmp
end
function tmp_2 = code(x, y, z, t, a, b, c, i)
	t_1 = x + ((z - (x * a)) / y);
	tmp = 0.0;
	if (y <= -1.05e+39)
		tmp = t_1;
	elseif (y <= 115000.0)
		tmp = (t + (y * 230661.510616)) / (i + (y * (c + (y * b))));
	elseif (y <= 5e+100)
		tmp = (y * (x + (z / y))) / a;
	else
		tmp = t_1;
	end
	tmp_2 = tmp;
end
code[x_, y_, z_, t_, a_, b_, c_, i_] := Block[{t$95$1 = N[(x + N[(N[(z - N[(x * a), $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[y, -1.05e+39], t$95$1, If[LessEqual[y, 115000.0], N[(N[(t + N[(y * 230661.510616), $MachinePrecision]), $MachinePrecision] / N[(i + N[(y * N[(c + N[(y * b), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y, 5e+100], N[(N[(y * N[(x + N[(z / y), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / a), $MachinePrecision], t$95$1]]]]
\begin{array}{l}

\\
\begin{array}{l}
t_1 := x + \frac{z - x \cdot a}{y}\\
\mathbf{if}\;y \leq -1.05 \cdot 10^{+39}:\\
\;\;\;\;t\_1\\

\mathbf{elif}\;y \leq 115000:\\
\;\;\;\;\frac{t + y \cdot 230661.510616}{i + y \cdot \left(c + y \cdot b\right)}\\

\mathbf{elif}\;y \leq 5 \cdot 10^{+100}:\\
\;\;\;\;\frac{y \cdot \left(x + \frac{z}{y}\right)}{a}\\

\mathbf{else}:\\
\;\;\;\;t\_1\\


\end{array}
\end{array}
Derivation
  1. Split input into 3 regimes
  2. if y < -1.0499999999999999e39 or 4.9999999999999999e100 < y

    1. Initial program 2.7%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Taylor expanded in t around 0 2.7%

      \[\leadsto \color{blue}{\frac{y \cdot \left(230661.510616 + y \cdot \left(27464.7644705 + y \cdot \left(z + x \cdot y\right)\right)\right)}{i + y \cdot \left(c + y \cdot \left(b + y \cdot \left(a + y\right)\right)\right)}} \]
    4. Taylor expanded in y around inf 71.7%

      \[\leadsto \color{blue}{\left(x + \frac{z}{y}\right) - \frac{a \cdot x}{y}} \]
    5. Step-by-step derivation
      1. associate--l+71.7%

        \[\leadsto \color{blue}{x + \left(\frac{z}{y} - \frac{a \cdot x}{y}\right)} \]
      2. div-sub71.7%

        \[\leadsto x + \color{blue}{\frac{z - a \cdot x}{y}} \]
      3. *-commutative71.7%

        \[\leadsto x + \frac{z - \color{blue}{x \cdot a}}{y} \]
    6. Simplified71.7%

      \[\leadsto \color{blue}{x + \frac{z - x \cdot a}{y}} \]

    if -1.0499999999999999e39 < y < 115000

    1. Initial program 97.7%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Step-by-step derivation
      1. *-commutative97.7%

        \[\leadsto \frac{\left(\left(\color{blue}{y \cdot \left(x \cdot y + z\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
      2. distribute-rgt-in97.7%

        \[\leadsto \frac{\left(\left(\color{blue}{\left(\left(x \cdot y\right) \cdot y + z \cdot y\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    4. Applied egg-rr97.7%

      \[\leadsto \frac{\left(\left(\color{blue}{\left(\left(x \cdot y\right) \cdot y + z \cdot y\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    5. Taylor expanded in y around 0 93.3%

      \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\color{blue}{y \cdot \left(c + b \cdot y\right)} + i} \]
    6. Step-by-step derivation
      1. *-commutative93.3%

        \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{y \cdot \left(c + \color{blue}{y \cdot b}\right) + i} \]
    7. Simplified93.3%

      \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\color{blue}{y \cdot \left(c + y \cdot b\right)} + i} \]
    8. Taylor expanded in y around 0 80.4%

      \[\leadsto \frac{\color{blue}{230661.510616 \cdot y} + t}{y \cdot \left(c + y \cdot b\right) + i} \]
    9. Step-by-step derivation
      1. *-commutative80.4%

        \[\leadsto \frac{\color{blue}{y \cdot 230661.510616} + t}{y \cdot \left(c + y \cdot b\right) + i} \]
    10. Simplified80.4%

      \[\leadsto \frac{\color{blue}{y \cdot 230661.510616} + t}{y \cdot \left(c + y \cdot b\right) + i} \]

    if 115000 < y < 4.9999999999999999e100

    1. Initial program 44.9%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Step-by-step derivation
      1. *-commutative44.9%

        \[\leadsto \frac{\left(\left(\color{blue}{y \cdot \left(x \cdot y + z\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
      2. distribute-rgt-in44.9%

        \[\leadsto \frac{\left(\left(\color{blue}{\left(\left(x \cdot y\right) \cdot y + z \cdot y\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    4. Applied egg-rr44.9%

      \[\leadsto \frac{\left(\left(\color{blue}{\left(\left(x \cdot y\right) \cdot y + z \cdot y\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    5. Taylor expanded in y around 0 41.2%

      \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\color{blue}{y \cdot \left(c + y \cdot \left(b + a \cdot y\right)\right)} + i} \]
    6. Step-by-step derivation
      1. *-commutative41.2%

        \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{y \cdot \left(c + y \cdot \left(b + \color{blue}{y \cdot a}\right)\right) + i} \]
    7. Simplified41.2%

      \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\color{blue}{y \cdot \left(c + y \cdot \left(b + y \cdot a\right)\right)} + i} \]
    8. Taylor expanded in y around inf 30.0%

      \[\leadsto \color{blue}{y \cdot \left(\left(\frac{x}{a} + \frac{z}{a \cdot y}\right) - \frac{b \cdot x}{{a}^{2} \cdot y}\right)} \]
    9. Step-by-step derivation
      1. associate--l+30.0%

        \[\leadsto y \cdot \color{blue}{\left(\frac{x}{a} + \left(\frac{z}{a \cdot y} - \frac{b \cdot x}{{a}^{2} \cdot y}\right)\right)} \]
      2. associate-/r*33.8%

        \[\leadsto y \cdot \left(\frac{x}{a} + \left(\color{blue}{\frac{\frac{z}{a}}{y}} - \frac{b \cdot x}{{a}^{2} \cdot y}\right)\right) \]
      3. associate-/r*33.8%

        \[\leadsto y \cdot \left(\frac{x}{a} + \left(\frac{\frac{z}{a}}{y} - \color{blue}{\frac{\frac{b \cdot x}{{a}^{2}}}{y}}\right)\right) \]
      4. div-sub33.8%

        \[\leadsto y \cdot \left(\frac{x}{a} + \color{blue}{\frac{\frac{z}{a} - \frac{b \cdot x}{{a}^{2}}}{y}}\right) \]
      5. associate-/l*41.7%

        \[\leadsto y \cdot \left(\frac{x}{a} + \frac{\frac{z}{a} - \color{blue}{b \cdot \frac{x}{{a}^{2}}}}{y}\right) \]
    10. Simplified41.7%

      \[\leadsto \color{blue}{y \cdot \left(\frac{x}{a} + \frac{\frac{z}{a} - b \cdot \frac{x}{{a}^{2}}}{y}\right)} \]
    11. Taylor expanded in a around inf 34.7%

      \[\leadsto \color{blue}{\frac{y \cdot \left(x + \frac{z}{y}\right)}{a}} \]
  3. Recombined 3 regimes into one program.
  4. Final simplification73.0%

    \[\leadsto \begin{array}{l} \mathbf{if}\;y \leq -1.05 \cdot 10^{+39}:\\ \;\;\;\;x + \frac{z - x \cdot a}{y}\\ \mathbf{elif}\;y \leq 115000:\\ \;\;\;\;\frac{t + y \cdot 230661.510616}{i + y \cdot \left(c + y \cdot b\right)}\\ \mathbf{elif}\;y \leq 5 \cdot 10^{+100}:\\ \;\;\;\;\frac{y \cdot \left(x + \frac{z}{y}\right)}{a}\\ \mathbf{else}:\\ \;\;\;\;x + \frac{z - x \cdot a}{y}\\ \end{array} \]
  5. Add Preprocessing

Alternative 11: 62.2% accurate, 1.4× speedup?

\[\begin{array}{l} \\ \begin{array}{l} t_1 := x + \frac{z - x \cdot a}{y}\\ \mathbf{if}\;y \leq -3.5 \cdot 10^{-21}:\\ \;\;\;\;t\_1\\ \mathbf{elif}\;y \leq 450:\\ \;\;\;\;\frac{t}{i + y \cdot c}\\ \mathbf{elif}\;y \leq 3.6 \cdot 10^{+99}:\\ \;\;\;\;x \cdot \frac{y}{a}\\ \mathbf{else}:\\ \;\;\;\;t\_1\\ \end{array} \end{array} \]
(FPCore (x y z t a b c i)
 :precision binary64
 (let* ((t_1 (+ x (/ (- z (* x a)) y))))
   (if (<= y -3.5e-21)
     t_1
     (if (<= y 450.0)
       (/ t (+ i (* y c)))
       (if (<= y 3.6e+99) (* x (/ y a)) t_1)))))
double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	double t_1 = x + ((z - (x * a)) / y);
	double tmp;
	if (y <= -3.5e-21) {
		tmp = t_1;
	} else if (y <= 450.0) {
		tmp = t / (i + (y * c));
	} else if (y <= 3.6e+99) {
		tmp = x * (y / a);
	} else {
		tmp = t_1;
	}
	return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i)
    real(8), intent (in) :: x
    real(8), intent (in) :: y
    real(8), intent (in) :: z
    real(8), intent (in) :: t
    real(8), intent (in) :: a
    real(8), intent (in) :: b
    real(8), intent (in) :: c
    real(8), intent (in) :: i
    real(8) :: t_1
    real(8) :: tmp
    t_1 = x + ((z - (x * a)) / y)
    if (y <= (-3.5d-21)) then
        tmp = t_1
    else if (y <= 450.0d0) then
        tmp = t / (i + (y * c))
    else if (y <= 3.6d+99) then
        tmp = x * (y / a)
    else
        tmp = t_1
    end if
    code = tmp
end function
public static double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	double t_1 = x + ((z - (x * a)) / y);
	double tmp;
	if (y <= -3.5e-21) {
		tmp = t_1;
	} else if (y <= 450.0) {
		tmp = t / (i + (y * c));
	} else if (y <= 3.6e+99) {
		tmp = x * (y / a);
	} else {
		tmp = t_1;
	}
	return tmp;
}
def code(x, y, z, t, a, b, c, i):
	t_1 = x + ((z - (x * a)) / y)
	tmp = 0
	if y <= -3.5e-21:
		tmp = t_1
	elif y <= 450.0:
		tmp = t / (i + (y * c))
	elif y <= 3.6e+99:
		tmp = x * (y / a)
	else:
		tmp = t_1
	return tmp
function code(x, y, z, t, a, b, c, i)
	t_1 = Float64(x + Float64(Float64(z - Float64(x * a)) / y))
	tmp = 0.0
	if (y <= -3.5e-21)
		tmp = t_1;
	elseif (y <= 450.0)
		tmp = Float64(t / Float64(i + Float64(y * c)));
	elseif (y <= 3.6e+99)
		tmp = Float64(x * Float64(y / a));
	else
		tmp = t_1;
	end
	return tmp
end
function tmp_2 = code(x, y, z, t, a, b, c, i)
	t_1 = x + ((z - (x * a)) / y);
	tmp = 0.0;
	if (y <= -3.5e-21)
		tmp = t_1;
	elseif (y <= 450.0)
		tmp = t / (i + (y * c));
	elseif (y <= 3.6e+99)
		tmp = x * (y / a);
	else
		tmp = t_1;
	end
	tmp_2 = tmp;
end
code[x_, y_, z_, t_, a_, b_, c_, i_] := Block[{t$95$1 = N[(x + N[(N[(z - N[(x * a), $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[y, -3.5e-21], t$95$1, If[LessEqual[y, 450.0], N[(t / N[(i + N[(y * c), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y, 3.6e+99], N[(x * N[(y / a), $MachinePrecision]), $MachinePrecision], t$95$1]]]]
\begin{array}{l}

\\
\begin{array}{l}
t_1 := x + \frac{z - x \cdot a}{y}\\
\mathbf{if}\;y \leq -3.5 \cdot 10^{-21}:\\
\;\;\;\;t\_1\\

\mathbf{elif}\;y \leq 450:\\
\;\;\;\;\frac{t}{i + y \cdot c}\\

\mathbf{elif}\;y \leq 3.6 \cdot 10^{+99}:\\
\;\;\;\;x \cdot \frac{y}{a}\\

\mathbf{else}:\\
\;\;\;\;t\_1\\


\end{array}
\end{array}
Derivation
  1. Split input into 3 regimes
  2. if y < -3.5000000000000003e-21 or 3.6000000000000002e99 < y

    1. Initial program 11.5%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Taylor expanded in t around 0 10.5%

      \[\leadsto \color{blue}{\frac{y \cdot \left(230661.510616 + y \cdot \left(27464.7644705 + y \cdot \left(z + x \cdot y\right)\right)\right)}{i + y \cdot \left(c + y \cdot \left(b + y \cdot \left(a + y\right)\right)\right)}} \]
    4. Taylor expanded in y around inf 63.4%

      \[\leadsto \color{blue}{\left(x + \frac{z}{y}\right) - \frac{a \cdot x}{y}} \]
    5. Step-by-step derivation
      1. associate--l+63.4%

        \[\leadsto \color{blue}{x + \left(\frac{z}{y} - \frac{a \cdot x}{y}\right)} \]
      2. div-sub63.4%

        \[\leadsto x + \color{blue}{\frac{z - a \cdot x}{y}} \]
      3. *-commutative63.4%

        \[\leadsto x + \frac{z - \color{blue}{x \cdot a}}{y} \]
    6. Simplified63.4%

      \[\leadsto \color{blue}{x + \frac{z - x \cdot a}{y}} \]

    if -3.5000000000000003e-21 < y < 450

    1. Initial program 99.7%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Step-by-step derivation
      1. fma-define99.7%

        \[\leadsto \frac{\color{blue}{\mathsf{fma}\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616, y, t\right)}}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
      2. fma-define99.7%

        \[\leadsto \frac{\mathsf{fma}\left(\color{blue}{\mathsf{fma}\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705, y, 230661.510616\right)}, y, t\right)}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
      3. fma-define99.7%

        \[\leadsto \frac{\mathsf{fma}\left(\mathsf{fma}\left(\color{blue}{\mathsf{fma}\left(x \cdot y + z, y, 27464.7644705\right)}, y, 230661.510616\right), y, t\right)}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
      4. fma-define99.7%

        \[\leadsto \frac{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(\color{blue}{\mathsf{fma}\left(x, y, z\right)}, y, 27464.7644705\right), y, 230661.510616\right), y, t\right)}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
      5. fma-define99.7%

        \[\leadsto \frac{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(x, y, z\right), y, 27464.7644705\right), y, 230661.510616\right), y, t\right)}{\color{blue}{\mathsf{fma}\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c, y, i\right)}} \]
      6. fma-define99.7%

        \[\leadsto \frac{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(x, y, z\right), y, 27464.7644705\right), y, 230661.510616\right), y, t\right)}{\mathsf{fma}\left(\color{blue}{\mathsf{fma}\left(\left(y + a\right) \cdot y + b, y, c\right)}, y, i\right)} \]
      7. fma-define99.7%

        \[\leadsto \frac{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(x, y, z\right), y, 27464.7644705\right), y, 230661.510616\right), y, t\right)}{\mathsf{fma}\left(\mathsf{fma}\left(\color{blue}{\mathsf{fma}\left(y + a, y, b\right)}, y, c\right), y, i\right)} \]
    3. Simplified99.7%

      \[\leadsto \color{blue}{\frac{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(x, y, z\right), y, 27464.7644705\right), y, 230661.510616\right), y, t\right)}{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(y + a, y, b\right), y, c\right), y, i\right)}} \]
    4. Add Preprocessing
    5. Taylor expanded in y around 0 77.9%

      \[\leadsto \frac{\color{blue}{t}}{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(y + a, y, b\right), y, c\right), y, i\right)} \]
    6. Taylor expanded in y around 0 71.9%

      \[\leadsto \frac{t}{\color{blue}{i + c \cdot y}} \]
    7. Step-by-step derivation
      1. *-commutative71.9%

        \[\leadsto \frac{t}{i + \color{blue}{y \cdot c}} \]
    8. Simplified71.9%

      \[\leadsto \frac{t}{\color{blue}{i + y \cdot c}} \]

    if 450 < y < 3.6000000000000002e99

    1. Initial program 49.0%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Step-by-step derivation
      1. *-commutative49.0%

        \[\leadsto \frac{\left(\left(\color{blue}{y \cdot \left(x \cdot y + z\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
      2. distribute-rgt-in49.0%

        \[\leadsto \frac{\left(\left(\color{blue}{\left(\left(x \cdot y\right) \cdot y + z \cdot y\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    4. Applied egg-rr49.0%

      \[\leadsto \frac{\left(\left(\color{blue}{\left(\left(x \cdot y\right) \cdot y + z \cdot y\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    5. Taylor expanded in y around 0 45.5%

      \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\color{blue}{y \cdot \left(c + y \cdot \left(b + a \cdot y\right)\right)} + i} \]
    6. Step-by-step derivation
      1. *-commutative45.5%

        \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{y \cdot \left(c + y \cdot \left(b + \color{blue}{y \cdot a}\right)\right) + i} \]
    7. Simplified45.5%

      \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\color{blue}{y \cdot \left(c + y \cdot \left(b + y \cdot a\right)\right)} + i} \]
    8. Taylor expanded in y around inf 18.6%

      \[\leadsto \color{blue}{\frac{x \cdot y}{a}} \]
    9. Step-by-step derivation
      1. associate-/l*25.8%

        \[\leadsto \color{blue}{x \cdot \frac{y}{a}} \]
    10. Simplified25.8%

      \[\leadsto \color{blue}{x \cdot \frac{y}{a}} \]
  3. Recombined 3 regimes into one program.
  4. Final simplification63.8%

    \[\leadsto \begin{array}{l} \mathbf{if}\;y \leq -3.5 \cdot 10^{-21}:\\ \;\;\;\;x + \frac{z - x \cdot a}{y}\\ \mathbf{elif}\;y \leq 450:\\ \;\;\;\;\frac{t}{i + y \cdot c}\\ \mathbf{elif}\;y \leq 3.6 \cdot 10^{+99}:\\ \;\;\;\;x \cdot \frac{y}{a}\\ \mathbf{else}:\\ \;\;\;\;x + \frac{z - x \cdot a}{y}\\ \end{array} \]
  5. Add Preprocessing

Alternative 12: 62.8% accurate, 1.4× speedup?

\[\begin{array}{l} \\ \begin{array}{l} t_1 := x + \frac{z - x \cdot a}{y}\\ \mathbf{if}\;y \leq -3.5 \cdot 10^{-21}:\\ \;\;\;\;t\_1\\ \mathbf{elif}\;y \leq 4800:\\ \;\;\;\;\frac{t}{i + y \cdot c}\\ \mathbf{elif}\;y \leq 3.5 \cdot 10^{+99}:\\ \;\;\;\;\frac{y \cdot \left(x + \frac{z}{y}\right)}{a}\\ \mathbf{else}:\\ \;\;\;\;t\_1\\ \end{array} \end{array} \]
(FPCore (x y z t a b c i)
 :precision binary64
 (let* ((t_1 (+ x (/ (- z (* x a)) y))))
   (if (<= y -3.5e-21)
     t_1
     (if (<= y 4800.0)
       (/ t (+ i (* y c)))
       (if (<= y 3.5e+99) (/ (* y (+ x (/ z y))) a) t_1)))))
double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	double t_1 = x + ((z - (x * a)) / y);
	double tmp;
	if (y <= -3.5e-21) {
		tmp = t_1;
	} else if (y <= 4800.0) {
		tmp = t / (i + (y * c));
	} else if (y <= 3.5e+99) {
		tmp = (y * (x + (z / y))) / a;
	} else {
		tmp = t_1;
	}
	return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i)
    real(8), intent (in) :: x
    real(8), intent (in) :: y
    real(8), intent (in) :: z
    real(8), intent (in) :: t
    real(8), intent (in) :: a
    real(8), intent (in) :: b
    real(8), intent (in) :: c
    real(8), intent (in) :: i
    real(8) :: t_1
    real(8) :: tmp
    t_1 = x + ((z - (x * a)) / y)
    if (y <= (-3.5d-21)) then
        tmp = t_1
    else if (y <= 4800.0d0) then
        tmp = t / (i + (y * c))
    else if (y <= 3.5d+99) then
        tmp = (y * (x + (z / y))) / a
    else
        tmp = t_1
    end if
    code = tmp
end function
public static double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	double t_1 = x + ((z - (x * a)) / y);
	double tmp;
	if (y <= -3.5e-21) {
		tmp = t_1;
	} else if (y <= 4800.0) {
		tmp = t / (i + (y * c));
	} else if (y <= 3.5e+99) {
		tmp = (y * (x + (z / y))) / a;
	} else {
		tmp = t_1;
	}
	return tmp;
}
def code(x, y, z, t, a, b, c, i):
	t_1 = x + ((z - (x * a)) / y)
	tmp = 0
	if y <= -3.5e-21:
		tmp = t_1
	elif y <= 4800.0:
		tmp = t / (i + (y * c))
	elif y <= 3.5e+99:
		tmp = (y * (x + (z / y))) / a
	else:
		tmp = t_1
	return tmp
function code(x, y, z, t, a, b, c, i)
	t_1 = Float64(x + Float64(Float64(z - Float64(x * a)) / y))
	tmp = 0.0
	if (y <= -3.5e-21)
		tmp = t_1;
	elseif (y <= 4800.0)
		tmp = Float64(t / Float64(i + Float64(y * c)));
	elseif (y <= 3.5e+99)
		tmp = Float64(Float64(y * Float64(x + Float64(z / y))) / a);
	else
		tmp = t_1;
	end
	return tmp
end
function tmp_2 = code(x, y, z, t, a, b, c, i)
	t_1 = x + ((z - (x * a)) / y);
	tmp = 0.0;
	if (y <= -3.5e-21)
		tmp = t_1;
	elseif (y <= 4800.0)
		tmp = t / (i + (y * c));
	elseif (y <= 3.5e+99)
		tmp = (y * (x + (z / y))) / a;
	else
		tmp = t_1;
	end
	tmp_2 = tmp;
end
code[x_, y_, z_, t_, a_, b_, c_, i_] := Block[{t$95$1 = N[(x + N[(N[(z - N[(x * a), $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[y, -3.5e-21], t$95$1, If[LessEqual[y, 4800.0], N[(t / N[(i + N[(y * c), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y, 3.5e+99], N[(N[(y * N[(x + N[(z / y), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / a), $MachinePrecision], t$95$1]]]]
\begin{array}{l}

\\
\begin{array}{l}
t_1 := x + \frac{z - x \cdot a}{y}\\
\mathbf{if}\;y \leq -3.5 \cdot 10^{-21}:\\
\;\;\;\;t\_1\\

\mathbf{elif}\;y \leq 4800:\\
\;\;\;\;\frac{t}{i + y \cdot c}\\

\mathbf{elif}\;y \leq 3.5 \cdot 10^{+99}:\\
\;\;\;\;\frac{y \cdot \left(x + \frac{z}{y}\right)}{a}\\

\mathbf{else}:\\
\;\;\;\;t\_1\\


\end{array}
\end{array}
Derivation
  1. Split input into 3 regimes
  2. if y < -3.5000000000000003e-21 or 3.4999999999999998e99 < y

    1. Initial program 11.5%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Taylor expanded in t around 0 10.5%

      \[\leadsto \color{blue}{\frac{y \cdot \left(230661.510616 + y \cdot \left(27464.7644705 + y \cdot \left(z + x \cdot y\right)\right)\right)}{i + y \cdot \left(c + y \cdot \left(b + y \cdot \left(a + y\right)\right)\right)}} \]
    4. Taylor expanded in y around inf 63.4%

      \[\leadsto \color{blue}{\left(x + \frac{z}{y}\right) - \frac{a \cdot x}{y}} \]
    5. Step-by-step derivation
      1. associate--l+63.4%

        \[\leadsto \color{blue}{x + \left(\frac{z}{y} - \frac{a \cdot x}{y}\right)} \]
      2. div-sub63.4%

        \[\leadsto x + \color{blue}{\frac{z - a \cdot x}{y}} \]
      3. *-commutative63.4%

        \[\leadsto x + \frac{z - \color{blue}{x \cdot a}}{y} \]
    6. Simplified63.4%

      \[\leadsto \color{blue}{x + \frac{z - x \cdot a}{y}} \]

    if -3.5000000000000003e-21 < y < 4800

    1. Initial program 99.7%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Step-by-step derivation
      1. fma-define99.7%

        \[\leadsto \frac{\color{blue}{\mathsf{fma}\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616, y, t\right)}}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
      2. fma-define99.7%

        \[\leadsto \frac{\mathsf{fma}\left(\color{blue}{\mathsf{fma}\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705, y, 230661.510616\right)}, y, t\right)}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
      3. fma-define99.7%

        \[\leadsto \frac{\mathsf{fma}\left(\mathsf{fma}\left(\color{blue}{\mathsf{fma}\left(x \cdot y + z, y, 27464.7644705\right)}, y, 230661.510616\right), y, t\right)}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
      4. fma-define99.7%

        \[\leadsto \frac{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(\color{blue}{\mathsf{fma}\left(x, y, z\right)}, y, 27464.7644705\right), y, 230661.510616\right), y, t\right)}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
      5. fma-define99.7%

        \[\leadsto \frac{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(x, y, z\right), y, 27464.7644705\right), y, 230661.510616\right), y, t\right)}{\color{blue}{\mathsf{fma}\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c, y, i\right)}} \]
      6. fma-define99.7%

        \[\leadsto \frac{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(x, y, z\right), y, 27464.7644705\right), y, 230661.510616\right), y, t\right)}{\mathsf{fma}\left(\color{blue}{\mathsf{fma}\left(\left(y + a\right) \cdot y + b, y, c\right)}, y, i\right)} \]
      7. fma-define99.7%

        \[\leadsto \frac{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(x, y, z\right), y, 27464.7644705\right), y, 230661.510616\right), y, t\right)}{\mathsf{fma}\left(\mathsf{fma}\left(\color{blue}{\mathsf{fma}\left(y + a, y, b\right)}, y, c\right), y, i\right)} \]
    3. Simplified99.7%

      \[\leadsto \color{blue}{\frac{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(x, y, z\right), y, 27464.7644705\right), y, 230661.510616\right), y, t\right)}{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(y + a, y, b\right), y, c\right), y, i\right)}} \]
    4. Add Preprocessing
    5. Taylor expanded in y around 0 76.8%

      \[\leadsto \frac{\color{blue}{t}}{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(y + a, y, b\right), y, c\right), y, i\right)} \]
    6. Taylor expanded in y around 0 70.9%

      \[\leadsto \frac{t}{\color{blue}{i + c \cdot y}} \]
    7. Step-by-step derivation
      1. *-commutative70.9%

        \[\leadsto \frac{t}{i + \color{blue}{y \cdot c}} \]
    8. Simplified70.9%

      \[\leadsto \frac{t}{\color{blue}{i + y \cdot c}} \]

    if 4800 < y < 3.4999999999999998e99

    1. Initial program 44.9%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Step-by-step derivation
      1. *-commutative44.9%

        \[\leadsto \frac{\left(\left(\color{blue}{y \cdot \left(x \cdot y + z\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
      2. distribute-rgt-in44.9%

        \[\leadsto \frac{\left(\left(\color{blue}{\left(\left(x \cdot y\right) \cdot y + z \cdot y\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    4. Applied egg-rr44.9%

      \[\leadsto \frac{\left(\left(\color{blue}{\left(\left(x \cdot y\right) \cdot y + z \cdot y\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    5. Taylor expanded in y around 0 41.2%

      \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\color{blue}{y \cdot \left(c + y \cdot \left(b + a \cdot y\right)\right)} + i} \]
    6. Step-by-step derivation
      1. *-commutative41.2%

        \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{y \cdot \left(c + y \cdot \left(b + \color{blue}{y \cdot a}\right)\right) + i} \]
    7. Simplified41.2%

      \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\color{blue}{y \cdot \left(c + y \cdot \left(b + y \cdot a\right)\right)} + i} \]
    8. Taylor expanded in y around inf 30.0%

      \[\leadsto \color{blue}{y \cdot \left(\left(\frac{x}{a} + \frac{z}{a \cdot y}\right) - \frac{b \cdot x}{{a}^{2} \cdot y}\right)} \]
    9. Step-by-step derivation
      1. associate--l+30.0%

        \[\leadsto y \cdot \color{blue}{\left(\frac{x}{a} + \left(\frac{z}{a \cdot y} - \frac{b \cdot x}{{a}^{2} \cdot y}\right)\right)} \]
      2. associate-/r*33.8%

        \[\leadsto y \cdot \left(\frac{x}{a} + \left(\color{blue}{\frac{\frac{z}{a}}{y}} - \frac{b \cdot x}{{a}^{2} \cdot y}\right)\right) \]
      3. associate-/r*33.8%

        \[\leadsto y \cdot \left(\frac{x}{a} + \left(\frac{\frac{z}{a}}{y} - \color{blue}{\frac{\frac{b \cdot x}{{a}^{2}}}{y}}\right)\right) \]
      4. div-sub33.8%

        \[\leadsto y \cdot \left(\frac{x}{a} + \color{blue}{\frac{\frac{z}{a} - \frac{b \cdot x}{{a}^{2}}}{y}}\right) \]
      5. associate-/l*41.7%

        \[\leadsto y \cdot \left(\frac{x}{a} + \frac{\frac{z}{a} - \color{blue}{b \cdot \frac{x}{{a}^{2}}}}{y}\right) \]
    10. Simplified41.7%

      \[\leadsto \color{blue}{y \cdot \left(\frac{x}{a} + \frac{\frac{z}{a} - b \cdot \frac{x}{{a}^{2}}}{y}\right)} \]
    11. Taylor expanded in a around inf 34.7%

      \[\leadsto \color{blue}{\frac{y \cdot \left(x + \frac{z}{y}\right)}{a}} \]
  3. Recombined 3 regimes into one program.
  4. Final simplification64.5%

    \[\leadsto \begin{array}{l} \mathbf{if}\;y \leq -3.5 \cdot 10^{-21}:\\ \;\;\;\;x + \frac{z - x \cdot a}{y}\\ \mathbf{elif}\;y \leq 4800:\\ \;\;\;\;\frac{t}{i + y \cdot c}\\ \mathbf{elif}\;y \leq 3.5 \cdot 10^{+99}:\\ \;\;\;\;\frac{y \cdot \left(x + \frac{z}{y}\right)}{a}\\ \mathbf{else}:\\ \;\;\;\;x + \frac{z - x \cdot a}{y}\\ \end{array} \]
  5. Add Preprocessing

Alternative 13: 65.2% accurate, 1.4× speedup?

\[\begin{array}{l} \\ \begin{array}{l} t_1 := x + \frac{z - x \cdot a}{y}\\ \mathbf{if}\;y \leq -6.7 \cdot 10^{+38}:\\ \;\;\;\;t\_1\\ \mathbf{elif}\;y \leq 95000:\\ \;\;\;\;\frac{t}{i + y \cdot \left(c + y \cdot b\right)}\\ \mathbf{elif}\;y \leq 2.4 \cdot 10^{+98}:\\ \;\;\;\;\frac{y \cdot \left(x + \frac{z}{y}\right)}{a}\\ \mathbf{else}:\\ \;\;\;\;t\_1\\ \end{array} \end{array} \]
(FPCore (x y z t a b c i)
 :precision binary64
 (let* ((t_1 (+ x (/ (- z (* x a)) y))))
   (if (<= y -6.7e+38)
     t_1
     (if (<= y 95000.0)
       (/ t (+ i (* y (+ c (* y b)))))
       (if (<= y 2.4e+98) (/ (* y (+ x (/ z y))) a) t_1)))))
double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	double t_1 = x + ((z - (x * a)) / y);
	double tmp;
	if (y <= -6.7e+38) {
		tmp = t_1;
	} else if (y <= 95000.0) {
		tmp = t / (i + (y * (c + (y * b))));
	} else if (y <= 2.4e+98) {
		tmp = (y * (x + (z / y))) / a;
	} else {
		tmp = t_1;
	}
	return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i)
    real(8), intent (in) :: x
    real(8), intent (in) :: y
    real(8), intent (in) :: z
    real(8), intent (in) :: t
    real(8), intent (in) :: a
    real(8), intent (in) :: b
    real(8), intent (in) :: c
    real(8), intent (in) :: i
    real(8) :: t_1
    real(8) :: tmp
    t_1 = x + ((z - (x * a)) / y)
    if (y <= (-6.7d+38)) then
        tmp = t_1
    else if (y <= 95000.0d0) then
        tmp = t / (i + (y * (c + (y * b))))
    else if (y <= 2.4d+98) then
        tmp = (y * (x + (z / y))) / a
    else
        tmp = t_1
    end if
    code = tmp
end function
public static double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	double t_1 = x + ((z - (x * a)) / y);
	double tmp;
	if (y <= -6.7e+38) {
		tmp = t_1;
	} else if (y <= 95000.0) {
		tmp = t / (i + (y * (c + (y * b))));
	} else if (y <= 2.4e+98) {
		tmp = (y * (x + (z / y))) / a;
	} else {
		tmp = t_1;
	}
	return tmp;
}
def code(x, y, z, t, a, b, c, i):
	t_1 = x + ((z - (x * a)) / y)
	tmp = 0
	if y <= -6.7e+38:
		tmp = t_1
	elif y <= 95000.0:
		tmp = t / (i + (y * (c + (y * b))))
	elif y <= 2.4e+98:
		tmp = (y * (x + (z / y))) / a
	else:
		tmp = t_1
	return tmp
function code(x, y, z, t, a, b, c, i)
	t_1 = Float64(x + Float64(Float64(z - Float64(x * a)) / y))
	tmp = 0.0
	if (y <= -6.7e+38)
		tmp = t_1;
	elseif (y <= 95000.0)
		tmp = Float64(t / Float64(i + Float64(y * Float64(c + Float64(y * b)))));
	elseif (y <= 2.4e+98)
		tmp = Float64(Float64(y * Float64(x + Float64(z / y))) / a);
	else
		tmp = t_1;
	end
	return tmp
end
function tmp_2 = code(x, y, z, t, a, b, c, i)
	t_1 = x + ((z - (x * a)) / y);
	tmp = 0.0;
	if (y <= -6.7e+38)
		tmp = t_1;
	elseif (y <= 95000.0)
		tmp = t / (i + (y * (c + (y * b))));
	elseif (y <= 2.4e+98)
		tmp = (y * (x + (z / y))) / a;
	else
		tmp = t_1;
	end
	tmp_2 = tmp;
end
code[x_, y_, z_, t_, a_, b_, c_, i_] := Block[{t$95$1 = N[(x + N[(N[(z - N[(x * a), $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[y, -6.7e+38], t$95$1, If[LessEqual[y, 95000.0], N[(t / N[(i + N[(y * N[(c + N[(y * b), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y, 2.4e+98], N[(N[(y * N[(x + N[(z / y), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / a), $MachinePrecision], t$95$1]]]]
\begin{array}{l}

\\
\begin{array}{l}
t_1 := x + \frac{z - x \cdot a}{y}\\
\mathbf{if}\;y \leq -6.7 \cdot 10^{+38}:\\
\;\;\;\;t\_1\\

\mathbf{elif}\;y \leq 95000:\\
\;\;\;\;\frac{t}{i + y \cdot \left(c + y \cdot b\right)}\\

\mathbf{elif}\;y \leq 2.4 \cdot 10^{+98}:\\
\;\;\;\;\frac{y \cdot \left(x + \frac{z}{y}\right)}{a}\\

\mathbf{else}:\\
\;\;\;\;t\_1\\


\end{array}
\end{array}
Derivation
  1. Split input into 3 regimes
  2. if y < -6.70000000000000025e38 or 2.3999999999999999e98 < y

    1. Initial program 2.7%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Taylor expanded in t around 0 2.7%

      \[\leadsto \color{blue}{\frac{y \cdot \left(230661.510616 + y \cdot \left(27464.7644705 + y \cdot \left(z + x \cdot y\right)\right)\right)}{i + y \cdot \left(c + y \cdot \left(b + y \cdot \left(a + y\right)\right)\right)}} \]
    4. Taylor expanded in y around inf 71.7%

      \[\leadsto \color{blue}{\left(x + \frac{z}{y}\right) - \frac{a \cdot x}{y}} \]
    5. Step-by-step derivation
      1. associate--l+71.7%

        \[\leadsto \color{blue}{x + \left(\frac{z}{y} - \frac{a \cdot x}{y}\right)} \]
      2. div-sub71.7%

        \[\leadsto x + \color{blue}{\frac{z - a \cdot x}{y}} \]
      3. *-commutative71.7%

        \[\leadsto x + \frac{z - \color{blue}{x \cdot a}}{y} \]
    6. Simplified71.7%

      \[\leadsto \color{blue}{x + \frac{z - x \cdot a}{y}} \]

    if -6.70000000000000025e38 < y < 95000

    1. Initial program 97.7%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Step-by-step derivation
      1. fma-define97.7%

        \[\leadsto \frac{\color{blue}{\mathsf{fma}\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616, y, t\right)}}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
      2. fma-define97.7%

        \[\leadsto \frac{\mathsf{fma}\left(\color{blue}{\mathsf{fma}\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705, y, 230661.510616\right)}, y, t\right)}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
      3. fma-define97.7%

        \[\leadsto \frac{\mathsf{fma}\left(\mathsf{fma}\left(\color{blue}{\mathsf{fma}\left(x \cdot y + z, y, 27464.7644705\right)}, y, 230661.510616\right), y, t\right)}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
      4. fma-define97.7%

        \[\leadsto \frac{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(\color{blue}{\mathsf{fma}\left(x, y, z\right)}, y, 27464.7644705\right), y, 230661.510616\right), y, t\right)}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
      5. fma-define97.7%

        \[\leadsto \frac{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(x, y, z\right), y, 27464.7644705\right), y, 230661.510616\right), y, t\right)}{\color{blue}{\mathsf{fma}\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c, y, i\right)}} \]
      6. fma-define97.7%

        \[\leadsto \frac{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(x, y, z\right), y, 27464.7644705\right), y, 230661.510616\right), y, t\right)}{\mathsf{fma}\left(\color{blue}{\mathsf{fma}\left(\left(y + a\right) \cdot y + b, y, c\right)}, y, i\right)} \]
      7. fma-define97.7%

        \[\leadsto \frac{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(x, y, z\right), y, 27464.7644705\right), y, 230661.510616\right), y, t\right)}{\mathsf{fma}\left(\mathsf{fma}\left(\color{blue}{\mathsf{fma}\left(y + a, y, b\right)}, y, c\right), y, i\right)} \]
    3. Simplified97.7%

      \[\leadsto \color{blue}{\frac{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(x, y, z\right), y, 27464.7644705\right), y, 230661.510616\right), y, t\right)}{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(y + a, y, b\right), y, c\right), y, i\right)}} \]
    4. Add Preprocessing
    5. Taylor expanded in y around 0 71.3%

      \[\leadsto \frac{\color{blue}{t}}{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(y + a, y, b\right), y, c\right), y, i\right)} \]
    6. Taylor expanded in y around 0 70.6%

      \[\leadsto \frac{t}{\color{blue}{i + y \cdot \left(c + b \cdot y\right)}} \]
    7. Step-by-step derivation
      1. *-commutative70.6%

        \[\leadsto \frac{t}{i + y \cdot \left(c + \color{blue}{y \cdot b}\right)} \]
    8. Simplified70.6%

      \[\leadsto \frac{t}{\color{blue}{i + y \cdot \left(c + y \cdot b\right)}} \]

    if 95000 < y < 2.3999999999999999e98

    1. Initial program 44.9%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Step-by-step derivation
      1. *-commutative44.9%

        \[\leadsto \frac{\left(\left(\color{blue}{y \cdot \left(x \cdot y + z\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
      2. distribute-rgt-in44.9%

        \[\leadsto \frac{\left(\left(\color{blue}{\left(\left(x \cdot y\right) \cdot y + z \cdot y\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    4. Applied egg-rr44.9%

      \[\leadsto \frac{\left(\left(\color{blue}{\left(\left(x \cdot y\right) \cdot y + z \cdot y\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    5. Taylor expanded in y around 0 41.2%

      \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\color{blue}{y \cdot \left(c + y \cdot \left(b + a \cdot y\right)\right)} + i} \]
    6. Step-by-step derivation
      1. *-commutative41.2%

        \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{y \cdot \left(c + y \cdot \left(b + \color{blue}{y \cdot a}\right)\right) + i} \]
    7. Simplified41.2%

      \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\color{blue}{y \cdot \left(c + y \cdot \left(b + y \cdot a\right)\right)} + i} \]
    8. Taylor expanded in y around inf 30.0%

      \[\leadsto \color{blue}{y \cdot \left(\left(\frac{x}{a} + \frac{z}{a \cdot y}\right) - \frac{b \cdot x}{{a}^{2} \cdot y}\right)} \]
    9. Step-by-step derivation
      1. associate--l+30.0%

        \[\leadsto y \cdot \color{blue}{\left(\frac{x}{a} + \left(\frac{z}{a \cdot y} - \frac{b \cdot x}{{a}^{2} \cdot y}\right)\right)} \]
      2. associate-/r*33.8%

        \[\leadsto y \cdot \left(\frac{x}{a} + \left(\color{blue}{\frac{\frac{z}{a}}{y}} - \frac{b \cdot x}{{a}^{2} \cdot y}\right)\right) \]
      3. associate-/r*33.8%

        \[\leadsto y \cdot \left(\frac{x}{a} + \left(\frac{\frac{z}{a}}{y} - \color{blue}{\frac{\frac{b \cdot x}{{a}^{2}}}{y}}\right)\right) \]
      4. div-sub33.8%

        \[\leadsto y \cdot \left(\frac{x}{a} + \color{blue}{\frac{\frac{z}{a} - \frac{b \cdot x}{{a}^{2}}}{y}}\right) \]
      5. associate-/l*41.7%

        \[\leadsto y \cdot \left(\frac{x}{a} + \frac{\frac{z}{a} - \color{blue}{b \cdot \frac{x}{{a}^{2}}}}{y}\right) \]
    10. Simplified41.7%

      \[\leadsto \color{blue}{y \cdot \left(\frac{x}{a} + \frac{\frac{z}{a} - b \cdot \frac{x}{{a}^{2}}}{y}\right)} \]
    11. Taylor expanded in a around inf 34.7%

      \[\leadsto \color{blue}{\frac{y \cdot \left(x + \frac{z}{y}\right)}{a}} \]
  3. Recombined 3 regimes into one program.
  4. Final simplification67.4%

    \[\leadsto \begin{array}{l} \mathbf{if}\;y \leq -6.7 \cdot 10^{+38}:\\ \;\;\;\;x + \frac{z - x \cdot a}{y}\\ \mathbf{elif}\;y \leq 95000:\\ \;\;\;\;\frac{t}{i + y \cdot \left(c + y \cdot b\right)}\\ \mathbf{elif}\;y \leq 2.4 \cdot 10^{+98}:\\ \;\;\;\;\frac{y \cdot \left(x + \frac{z}{y}\right)}{a}\\ \mathbf{else}:\\ \;\;\;\;x + \frac{z - x \cdot a}{y}\\ \end{array} \]
  5. Add Preprocessing

Alternative 14: 49.3% accurate, 1.6× speedup?

\[\begin{array}{l} \\ \begin{array}{l} \mathbf{if}\;y \leq -3.2 \cdot 10^{-8}:\\ \;\;\;\;x\\ \mathbf{elif}\;y \leq 6 \cdot 10^{-77}:\\ \;\;\;\;\frac{t}{i}\\ \mathbf{elif}\;y \leq 3.3 \cdot 10^{+120}:\\ \;\;\;\;x \cdot \frac{y}{a}\\ \mathbf{else}:\\ \;\;\;\;x\\ \end{array} \end{array} \]
(FPCore (x y z t a b c i)
 :precision binary64
 (if (<= y -3.2e-8)
   x
   (if (<= y 6e-77) (/ t i) (if (<= y 3.3e+120) (* x (/ y a)) x))))
double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	double tmp;
	if (y <= -3.2e-8) {
		tmp = x;
	} else if (y <= 6e-77) {
		tmp = t / i;
	} else if (y <= 3.3e+120) {
		tmp = x * (y / a);
	} else {
		tmp = x;
	}
	return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i)
    real(8), intent (in) :: x
    real(8), intent (in) :: y
    real(8), intent (in) :: z
    real(8), intent (in) :: t
    real(8), intent (in) :: a
    real(8), intent (in) :: b
    real(8), intent (in) :: c
    real(8), intent (in) :: i
    real(8) :: tmp
    if (y <= (-3.2d-8)) then
        tmp = x
    else if (y <= 6d-77) then
        tmp = t / i
    else if (y <= 3.3d+120) then
        tmp = x * (y / a)
    else
        tmp = x
    end if
    code = tmp
end function
public static double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	double tmp;
	if (y <= -3.2e-8) {
		tmp = x;
	} else if (y <= 6e-77) {
		tmp = t / i;
	} else if (y <= 3.3e+120) {
		tmp = x * (y / a);
	} else {
		tmp = x;
	}
	return tmp;
}
def code(x, y, z, t, a, b, c, i):
	tmp = 0
	if y <= -3.2e-8:
		tmp = x
	elif y <= 6e-77:
		tmp = t / i
	elif y <= 3.3e+120:
		tmp = x * (y / a)
	else:
		tmp = x
	return tmp
function code(x, y, z, t, a, b, c, i)
	tmp = 0.0
	if (y <= -3.2e-8)
		tmp = x;
	elseif (y <= 6e-77)
		tmp = Float64(t / i);
	elseif (y <= 3.3e+120)
		tmp = Float64(x * Float64(y / a));
	else
		tmp = x;
	end
	return tmp
end
function tmp_2 = code(x, y, z, t, a, b, c, i)
	tmp = 0.0;
	if (y <= -3.2e-8)
		tmp = x;
	elseif (y <= 6e-77)
		tmp = t / i;
	elseif (y <= 3.3e+120)
		tmp = x * (y / a);
	else
		tmp = x;
	end
	tmp_2 = tmp;
end
code[x_, y_, z_, t_, a_, b_, c_, i_] := If[LessEqual[y, -3.2e-8], x, If[LessEqual[y, 6e-77], N[(t / i), $MachinePrecision], If[LessEqual[y, 3.3e+120], N[(x * N[(y / a), $MachinePrecision]), $MachinePrecision], x]]]
\begin{array}{l}

\\
\begin{array}{l}
\mathbf{if}\;y \leq -3.2 \cdot 10^{-8}:\\
\;\;\;\;x\\

\mathbf{elif}\;y \leq 6 \cdot 10^{-77}:\\
\;\;\;\;\frac{t}{i}\\

\mathbf{elif}\;y \leq 3.3 \cdot 10^{+120}:\\
\;\;\;\;x \cdot \frac{y}{a}\\

\mathbf{else}:\\
\;\;\;\;x\\


\end{array}
\end{array}
Derivation
  1. Split input into 3 regimes
  2. if y < -3.2000000000000002e-8 or 3.29999999999999991e120 < y

    1. Initial program 10.3%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Taylor expanded in y around inf 57.9%

      \[\leadsto \color{blue}{x} \]

    if -3.2000000000000002e-8 < y < 6.00000000000000033e-77

    1. Initial program 99.8%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Taylor expanded in y around 0 58.9%

      \[\leadsto \color{blue}{\frac{t}{i}} \]

    if 6.00000000000000033e-77 < y < 3.29999999999999991e120

    1. Initial program 59.4%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Step-by-step derivation
      1. *-commutative59.4%

        \[\leadsto \frac{\left(\left(\color{blue}{y \cdot \left(x \cdot y + z\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
      2. distribute-rgt-in59.4%

        \[\leadsto \frac{\left(\left(\color{blue}{\left(\left(x \cdot y\right) \cdot y + z \cdot y\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    4. Applied egg-rr59.4%

      \[\leadsto \frac{\left(\left(\color{blue}{\left(\left(x \cdot y\right) \cdot y + z \cdot y\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    5. Taylor expanded in y around 0 55.7%

      \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\color{blue}{y \cdot \left(c + y \cdot \left(b + a \cdot y\right)\right)} + i} \]
    6. Step-by-step derivation
      1. *-commutative55.7%

        \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{y \cdot \left(c + y \cdot \left(b + \color{blue}{y \cdot a}\right)\right) + i} \]
    7. Simplified55.7%

      \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\color{blue}{y \cdot \left(c + y \cdot \left(b + y \cdot a\right)\right)} + i} \]
    8. Taylor expanded in y around inf 16.4%

      \[\leadsto \color{blue}{\frac{x \cdot y}{a}} \]
    9. Step-by-step derivation
      1. associate-/l*20.3%

        \[\leadsto \color{blue}{x \cdot \frac{y}{a}} \]
    10. Simplified20.3%

      \[\leadsto \color{blue}{x \cdot \frac{y}{a}} \]
  3. Recombined 3 regimes into one program.
  4. Final simplification51.1%

    \[\leadsto \begin{array}{l} \mathbf{if}\;y \leq -3.2 \cdot 10^{-8}:\\ \;\;\;\;x\\ \mathbf{elif}\;y \leq 6 \cdot 10^{-77}:\\ \;\;\;\;\frac{t}{i}\\ \mathbf{elif}\;y \leq 3.3 \cdot 10^{+120}:\\ \;\;\;\;x \cdot \frac{y}{a}\\ \mathbf{else}:\\ \;\;\;\;x\\ \end{array} \]
  5. Add Preprocessing

Alternative 15: 57.6% accurate, 1.6× speedup?

\[\begin{array}{l} \\ \begin{array}{l} \mathbf{if}\;y \leq -4.2 \cdot 10^{-7}:\\ \;\;\;\;x\\ \mathbf{elif}\;y \leq 280:\\ \;\;\;\;\frac{t}{i + y \cdot c}\\ \mathbf{elif}\;y \leq 6.6 \cdot 10^{+120}:\\ \;\;\;\;x \cdot \frac{y}{a}\\ \mathbf{else}:\\ \;\;\;\;x\\ \end{array} \end{array} \]
(FPCore (x y z t a b c i)
 :precision binary64
 (if (<= y -4.2e-7)
   x
   (if (<= y 280.0) (/ t (+ i (* y c))) (if (<= y 6.6e+120) (* x (/ y a)) x))))
double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	double tmp;
	if (y <= -4.2e-7) {
		tmp = x;
	} else if (y <= 280.0) {
		tmp = t / (i + (y * c));
	} else if (y <= 6.6e+120) {
		tmp = x * (y / a);
	} else {
		tmp = x;
	}
	return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i)
    real(8), intent (in) :: x
    real(8), intent (in) :: y
    real(8), intent (in) :: z
    real(8), intent (in) :: t
    real(8), intent (in) :: a
    real(8), intent (in) :: b
    real(8), intent (in) :: c
    real(8), intent (in) :: i
    real(8) :: tmp
    if (y <= (-4.2d-7)) then
        tmp = x
    else if (y <= 280.0d0) then
        tmp = t / (i + (y * c))
    else if (y <= 6.6d+120) then
        tmp = x * (y / a)
    else
        tmp = x
    end if
    code = tmp
end function
public static double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	double tmp;
	if (y <= -4.2e-7) {
		tmp = x;
	} else if (y <= 280.0) {
		tmp = t / (i + (y * c));
	} else if (y <= 6.6e+120) {
		tmp = x * (y / a);
	} else {
		tmp = x;
	}
	return tmp;
}
def code(x, y, z, t, a, b, c, i):
	tmp = 0
	if y <= -4.2e-7:
		tmp = x
	elif y <= 280.0:
		tmp = t / (i + (y * c))
	elif y <= 6.6e+120:
		tmp = x * (y / a)
	else:
		tmp = x
	return tmp
function code(x, y, z, t, a, b, c, i)
	tmp = 0.0
	if (y <= -4.2e-7)
		tmp = x;
	elseif (y <= 280.0)
		tmp = Float64(t / Float64(i + Float64(y * c)));
	elseif (y <= 6.6e+120)
		tmp = Float64(x * Float64(y / a));
	else
		tmp = x;
	end
	return tmp
end
function tmp_2 = code(x, y, z, t, a, b, c, i)
	tmp = 0.0;
	if (y <= -4.2e-7)
		tmp = x;
	elseif (y <= 280.0)
		tmp = t / (i + (y * c));
	elseif (y <= 6.6e+120)
		tmp = x * (y / a);
	else
		tmp = x;
	end
	tmp_2 = tmp;
end
code[x_, y_, z_, t_, a_, b_, c_, i_] := If[LessEqual[y, -4.2e-7], x, If[LessEqual[y, 280.0], N[(t / N[(i + N[(y * c), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y, 6.6e+120], N[(x * N[(y / a), $MachinePrecision]), $MachinePrecision], x]]]
\begin{array}{l}

\\
\begin{array}{l}
\mathbf{if}\;y \leq -4.2 \cdot 10^{-7}:\\
\;\;\;\;x\\

\mathbf{elif}\;y \leq 280:\\
\;\;\;\;\frac{t}{i + y \cdot c}\\

\mathbf{elif}\;y \leq 6.6 \cdot 10^{+120}:\\
\;\;\;\;x \cdot \frac{y}{a}\\

\mathbf{else}:\\
\;\;\;\;x\\


\end{array}
\end{array}
Derivation
  1. Split input into 3 regimes
  2. if y < -4.2e-7 or 6.59999999999999981e120 < y

    1. Initial program 10.3%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Taylor expanded in y around inf 57.9%

      \[\leadsto \color{blue}{x} \]

    if -4.2e-7 < y < 280

    1. Initial program 99.7%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Step-by-step derivation
      1. fma-define99.7%

        \[\leadsto \frac{\color{blue}{\mathsf{fma}\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616, y, t\right)}}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
      2. fma-define99.7%

        \[\leadsto \frac{\mathsf{fma}\left(\color{blue}{\mathsf{fma}\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705, y, 230661.510616\right)}, y, t\right)}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
      3. fma-define99.7%

        \[\leadsto \frac{\mathsf{fma}\left(\mathsf{fma}\left(\color{blue}{\mathsf{fma}\left(x \cdot y + z, y, 27464.7644705\right)}, y, 230661.510616\right), y, t\right)}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
      4. fma-define99.7%

        \[\leadsto \frac{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(\color{blue}{\mathsf{fma}\left(x, y, z\right)}, y, 27464.7644705\right), y, 230661.510616\right), y, t\right)}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
      5. fma-define99.7%

        \[\leadsto \frac{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(x, y, z\right), y, 27464.7644705\right), y, 230661.510616\right), y, t\right)}{\color{blue}{\mathsf{fma}\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c, y, i\right)}} \]
      6. fma-define99.7%

        \[\leadsto \frac{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(x, y, z\right), y, 27464.7644705\right), y, 230661.510616\right), y, t\right)}{\mathsf{fma}\left(\color{blue}{\mathsf{fma}\left(\left(y + a\right) \cdot y + b, y, c\right)}, y, i\right)} \]
      7. fma-define99.7%

        \[\leadsto \frac{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(x, y, z\right), y, 27464.7644705\right), y, 230661.510616\right), y, t\right)}{\mathsf{fma}\left(\mathsf{fma}\left(\color{blue}{\mathsf{fma}\left(y + a, y, b\right)}, y, c\right), y, i\right)} \]
    3. Simplified99.7%

      \[\leadsto \color{blue}{\frac{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(x, y, z\right), y, 27464.7644705\right), y, 230661.510616\right), y, t\right)}{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(y + a, y, b\right), y, c\right), y, i\right)}} \]
    4. Add Preprocessing
    5. Taylor expanded in y around 0 76.8%

      \[\leadsto \frac{\color{blue}{t}}{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(y + a, y, b\right), y, c\right), y, i\right)} \]
    6. Taylor expanded in y around 0 70.8%

      \[\leadsto \frac{t}{\color{blue}{i + c \cdot y}} \]
    7. Step-by-step derivation
      1. *-commutative70.8%

        \[\leadsto \frac{t}{i + \color{blue}{y \cdot c}} \]
    8. Simplified70.8%

      \[\leadsto \frac{t}{\color{blue}{i + y \cdot c}} \]

    if 280 < y < 6.59999999999999981e120

    1. Initial program 40.1%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Step-by-step derivation
      1. *-commutative40.1%

        \[\leadsto \frac{\left(\left(\color{blue}{y \cdot \left(x \cdot y + z\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
      2. distribute-rgt-in40.1%

        \[\leadsto \frac{\left(\left(\color{blue}{\left(\left(x \cdot y\right) \cdot y + z \cdot y\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    4. Applied egg-rr40.1%

      \[\leadsto \frac{\left(\left(\color{blue}{\left(\left(x \cdot y\right) \cdot y + z \cdot y\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    5. Taylor expanded in y around 0 37.3%

      \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\color{blue}{y \cdot \left(c + y \cdot \left(b + a \cdot y\right)\right)} + i} \]
    6. Step-by-step derivation
      1. *-commutative37.3%

        \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{y \cdot \left(c + y \cdot \left(b + \color{blue}{y \cdot a}\right)\right) + i} \]
    7. Simplified37.3%

      \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\color{blue}{y \cdot \left(c + y \cdot \left(b + y \cdot a\right)\right)} + i} \]
    8. Taylor expanded in y around inf 19.2%

      \[\leadsto \color{blue}{\frac{x \cdot y}{a}} \]
    9. Step-by-step derivation
      1. associate-/l*25.0%

        \[\leadsto \color{blue}{x \cdot \frac{y}{a}} \]
    10. Simplified25.0%

      \[\leadsto \color{blue}{x \cdot \frac{y}{a}} \]
  3. Recombined 3 regimes into one program.
  4. Final simplification60.4%

    \[\leadsto \begin{array}{l} \mathbf{if}\;y \leq -4.2 \cdot 10^{-7}:\\ \;\;\;\;x\\ \mathbf{elif}\;y \leq 280:\\ \;\;\;\;\frac{t}{i + y \cdot c}\\ \mathbf{elif}\;y \leq 6.6 \cdot 10^{+120}:\\ \;\;\;\;x \cdot \frac{y}{a}\\ \mathbf{else}:\\ \;\;\;\;x\\ \end{array} \]
  5. Add Preprocessing

Alternative 16: 49.8% accurate, 1.8× speedup?

\[\begin{array}{l} \\ \begin{array}{l} \mathbf{if}\;y \leq -4.4 \cdot 10^{-8}:\\ \;\;\;\;x\\ \mathbf{elif}\;y \leq 42:\\ \;\;\;\;\frac{t}{i}\\ \mathbf{elif}\;y \leq 1.32 \cdot 10^{+94}:\\ \;\;\;\;\frac{z}{a}\\ \mathbf{else}:\\ \;\;\;\;x\\ \end{array} \end{array} \]
(FPCore (x y z t a b c i)
 :precision binary64
 (if (<= y -4.4e-8) x (if (<= y 42.0) (/ t i) (if (<= y 1.32e+94) (/ z a) x))))
double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	double tmp;
	if (y <= -4.4e-8) {
		tmp = x;
	} else if (y <= 42.0) {
		tmp = t / i;
	} else if (y <= 1.32e+94) {
		tmp = z / a;
	} else {
		tmp = x;
	}
	return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i)
    real(8), intent (in) :: x
    real(8), intent (in) :: y
    real(8), intent (in) :: z
    real(8), intent (in) :: t
    real(8), intent (in) :: a
    real(8), intent (in) :: b
    real(8), intent (in) :: c
    real(8), intent (in) :: i
    real(8) :: tmp
    if (y <= (-4.4d-8)) then
        tmp = x
    else if (y <= 42.0d0) then
        tmp = t / i
    else if (y <= 1.32d+94) then
        tmp = z / a
    else
        tmp = x
    end if
    code = tmp
end function
public static double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	double tmp;
	if (y <= -4.4e-8) {
		tmp = x;
	} else if (y <= 42.0) {
		tmp = t / i;
	} else if (y <= 1.32e+94) {
		tmp = z / a;
	} else {
		tmp = x;
	}
	return tmp;
}
def code(x, y, z, t, a, b, c, i):
	tmp = 0
	if y <= -4.4e-8:
		tmp = x
	elif y <= 42.0:
		tmp = t / i
	elif y <= 1.32e+94:
		tmp = z / a
	else:
		tmp = x
	return tmp
function code(x, y, z, t, a, b, c, i)
	tmp = 0.0
	if (y <= -4.4e-8)
		tmp = x;
	elseif (y <= 42.0)
		tmp = Float64(t / i);
	elseif (y <= 1.32e+94)
		tmp = Float64(z / a);
	else
		tmp = x;
	end
	return tmp
end
function tmp_2 = code(x, y, z, t, a, b, c, i)
	tmp = 0.0;
	if (y <= -4.4e-8)
		tmp = x;
	elseif (y <= 42.0)
		tmp = t / i;
	elseif (y <= 1.32e+94)
		tmp = z / a;
	else
		tmp = x;
	end
	tmp_2 = tmp;
end
code[x_, y_, z_, t_, a_, b_, c_, i_] := If[LessEqual[y, -4.4e-8], x, If[LessEqual[y, 42.0], N[(t / i), $MachinePrecision], If[LessEqual[y, 1.32e+94], N[(z / a), $MachinePrecision], x]]]
\begin{array}{l}

\\
\begin{array}{l}
\mathbf{if}\;y \leq -4.4 \cdot 10^{-8}:\\
\;\;\;\;x\\

\mathbf{elif}\;y \leq 42:\\
\;\;\;\;\frac{t}{i}\\

\mathbf{elif}\;y \leq 1.32 \cdot 10^{+94}:\\
\;\;\;\;\frac{z}{a}\\

\mathbf{else}:\\
\;\;\;\;x\\


\end{array}
\end{array}
Derivation
  1. Split input into 3 regimes
  2. if y < -4.3999999999999997e-8 or 1.32000000000000003e94 < y

    1. Initial program 9.4%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Taylor expanded in y around inf 53.3%

      \[\leadsto \color{blue}{x} \]

    if -4.3999999999999997e-8 < y < 42

    1. Initial program 99.7%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Taylor expanded in y around 0 52.8%

      \[\leadsto \color{blue}{\frac{t}{i}} \]

    if 42 < y < 1.32000000000000003e94

    1. Initial program 55.1%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Step-by-step derivation
      1. *-commutative55.1%

        \[\leadsto \frac{\left(\left(\color{blue}{y \cdot \left(x \cdot y + z\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
      2. distribute-rgt-in55.1%

        \[\leadsto \frac{\left(\left(\color{blue}{\left(\left(x \cdot y\right) \cdot y + z \cdot y\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    4. Applied egg-rr55.1%

      \[\leadsto \frac{\left(\left(\color{blue}{\left(\left(x \cdot y\right) \cdot y + z \cdot y\right)} + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    5. Taylor expanded in y around 0 51.2%

      \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\color{blue}{y \cdot \left(c + y \cdot \left(b + a \cdot y\right)\right)} + i} \]
    6. Step-by-step derivation
      1. *-commutative51.2%

        \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{y \cdot \left(c + y \cdot \left(b + \color{blue}{y \cdot a}\right)\right) + i} \]
    7. Simplified51.2%

      \[\leadsto \frac{\left(\left(\left(\left(x \cdot y\right) \cdot y + z \cdot y\right) + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\color{blue}{y \cdot \left(c + y \cdot \left(b + y \cdot a\right)\right)} + i} \]
    8. Taylor expanded in y around inf 22.9%

      \[\leadsto \color{blue}{y \cdot \left(\left(\frac{x}{a} + \frac{z}{a \cdot y}\right) - \frac{b \cdot x}{{a}^{2} \cdot y}\right)} \]
    9. Step-by-step derivation
      1. associate--l+22.9%

        \[\leadsto y \cdot \color{blue}{\left(\frac{x}{a} + \left(\frac{z}{a \cdot y} - \frac{b \cdot x}{{a}^{2} \cdot y}\right)\right)} \]
      2. associate-/r*26.8%

        \[\leadsto y \cdot \left(\frac{x}{a} + \left(\color{blue}{\frac{\frac{z}{a}}{y}} - \frac{b \cdot x}{{a}^{2} \cdot y}\right)\right) \]
      3. associate-/r*26.8%

        \[\leadsto y \cdot \left(\frac{x}{a} + \left(\frac{\frac{z}{a}}{y} - \color{blue}{\frac{\frac{b \cdot x}{{a}^{2}}}{y}}\right)\right) \]
      4. div-sub26.8%

        \[\leadsto y \cdot \left(\frac{x}{a} + \color{blue}{\frac{\frac{z}{a} - \frac{b \cdot x}{{a}^{2}}}{y}}\right) \]
      5. associate-/l*35.1%

        \[\leadsto y \cdot \left(\frac{x}{a} + \frac{\frac{z}{a} - \color{blue}{b \cdot \frac{x}{{a}^{2}}}}{y}\right) \]
    10. Simplified35.1%

      \[\leadsto \color{blue}{y \cdot \left(\frac{x}{a} + \frac{\frac{z}{a} - b \cdot \frac{x}{{a}^{2}}}{y}\right)} \]
    11. Taylor expanded in x around 0 23.6%

      \[\leadsto \color{blue}{\frac{z}{a}} \]
  3. Recombined 3 regimes into one program.
  4. Final simplification50.2%

    \[\leadsto \begin{array}{l} \mathbf{if}\;y \leq -4.4 \cdot 10^{-8}:\\ \;\;\;\;x\\ \mathbf{elif}\;y \leq 42:\\ \;\;\;\;\frac{t}{i}\\ \mathbf{elif}\;y \leq 1.32 \cdot 10^{+94}:\\ \;\;\;\;\frac{z}{a}\\ \mathbf{else}:\\ \;\;\;\;x\\ \end{array} \]
  5. Add Preprocessing

Alternative 17: 49.8% accurate, 2.5× speedup?

\[\begin{array}{l} \\ \begin{array}{l} \mathbf{if}\;y \leq -4.2 \cdot 10^{-7}:\\ \;\;\;\;x\\ \mathbf{elif}\;y \leq 1.58:\\ \;\;\;\;\frac{t}{i}\\ \mathbf{else}:\\ \;\;\;\;x\\ \end{array} \end{array} \]
(FPCore (x y z t a b c i)
 :precision binary64
 (if (<= y -4.2e-7) x (if (<= y 1.58) (/ t i) x)))
double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	double tmp;
	if (y <= -4.2e-7) {
		tmp = x;
	} else if (y <= 1.58) {
		tmp = t / i;
	} else {
		tmp = x;
	}
	return tmp;
}
real(8) function code(x, y, z, t, a, b, c, i)
    real(8), intent (in) :: x
    real(8), intent (in) :: y
    real(8), intent (in) :: z
    real(8), intent (in) :: t
    real(8), intent (in) :: a
    real(8), intent (in) :: b
    real(8), intent (in) :: c
    real(8), intent (in) :: i
    real(8) :: tmp
    if (y <= (-4.2d-7)) then
        tmp = x
    else if (y <= 1.58d0) then
        tmp = t / i
    else
        tmp = x
    end if
    code = tmp
end function
public static double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	double tmp;
	if (y <= -4.2e-7) {
		tmp = x;
	} else if (y <= 1.58) {
		tmp = t / i;
	} else {
		tmp = x;
	}
	return tmp;
}
def code(x, y, z, t, a, b, c, i):
	tmp = 0
	if y <= -4.2e-7:
		tmp = x
	elif y <= 1.58:
		tmp = t / i
	else:
		tmp = x
	return tmp
function code(x, y, z, t, a, b, c, i)
	tmp = 0.0
	if (y <= -4.2e-7)
		tmp = x;
	elseif (y <= 1.58)
		tmp = Float64(t / i);
	else
		tmp = x;
	end
	return tmp
end
function tmp_2 = code(x, y, z, t, a, b, c, i)
	tmp = 0.0;
	if (y <= -4.2e-7)
		tmp = x;
	elseif (y <= 1.58)
		tmp = t / i;
	else
		tmp = x;
	end
	tmp_2 = tmp;
end
code[x_, y_, z_, t_, a_, b_, c_, i_] := If[LessEqual[y, -4.2e-7], x, If[LessEqual[y, 1.58], N[(t / i), $MachinePrecision], x]]
\begin{array}{l}

\\
\begin{array}{l}
\mathbf{if}\;y \leq -4.2 \cdot 10^{-7}:\\
\;\;\;\;x\\

\mathbf{elif}\;y \leq 1.58:\\
\;\;\;\;\frac{t}{i}\\

\mathbf{else}:\\
\;\;\;\;x\\


\end{array}
\end{array}
Derivation
  1. Split input into 2 regimes
  2. if y < -4.2e-7 or 1.5800000000000001 < y

    1. Initial program 19.0%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Taylor expanded in y around inf 43.2%

      \[\leadsto \color{blue}{x} \]

    if -4.2e-7 < y < 1.5800000000000001

    1. Initial program 99.7%

      \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
    2. Add Preprocessing
    3. Taylor expanded in y around 0 53.2%

      \[\leadsto \color{blue}{\frac{t}{i}} \]
  3. Recombined 2 regimes into one program.
  4. Final simplification48.4%

    \[\leadsto \begin{array}{l} \mathbf{if}\;y \leq -4.2 \cdot 10^{-7}:\\ \;\;\;\;x\\ \mathbf{elif}\;y \leq 1.58:\\ \;\;\;\;\frac{t}{i}\\ \mathbf{else}:\\ \;\;\;\;x\\ \end{array} \]
  5. Add Preprocessing

Alternative 18: 25.2% accurate, 33.0× speedup?

\[\begin{array}{l} \\ x \end{array} \]
(FPCore (x y z t a b c i) :precision binary64 x)
double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	return x;
}
real(8) function code(x, y, z, t, a, b, c, i)
    real(8), intent (in) :: x
    real(8), intent (in) :: y
    real(8), intent (in) :: z
    real(8), intent (in) :: t
    real(8), intent (in) :: a
    real(8), intent (in) :: b
    real(8), intent (in) :: c
    real(8), intent (in) :: i
    code = x
end function
public static double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	return x;
}
def code(x, y, z, t, a, b, c, i):
	return x
function code(x, y, z, t, a, b, c, i)
	return x
end
function tmp = code(x, y, z, t, a, b, c, i)
	tmp = x;
end
code[x_, y_, z_, t_, a_, b_, c_, i_] := x
\begin{array}{l}

\\
x
\end{array}
Derivation
  1. Initial program 60.6%

    \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \]
  2. Add Preprocessing
  3. Taylor expanded in y around inf 22.4%

    \[\leadsto \color{blue}{x} \]
  4. Final simplification22.4%

    \[\leadsto x \]
  5. Add Preprocessing

Reproduce

?
herbie shell --seed 2024054 
(FPCore (x y z t a b c i)
  :name "Numeric.SpecFunctions:logGamma from math-functions-0.1.5.2"
  :precision binary64
  (/ (+ (* (+ (* (+ (* (+ (* x y) z) y) 27464.7644705) y) 230661.510616) y) t) (+ (* (+ (* (+ (* (+ y a) y) b) y) c) y) i)))