Numeric.SpecFunctions:incompleteBetaWorker from math-functions-0.1.5.2, A

Percentage Accurate: 98.5% → 98.5%
Time: 19.0s
Alternatives: 25
Speedup: 1.0×

Specification

?
\[\begin{array}{l} \\ \frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \end{array} \]
(FPCore (x y z t a b)
 :precision binary64
 (/ (* x (exp (- (+ (* y (log z)) (* (- t 1.0) (log a))) b))) y))
double code(double x, double y, double z, double t, double a, double b) {
	return (x * exp((((y * log(z)) + ((t - 1.0) * log(a))) - b))) / y;
}
real(8) function code(x, y, z, t, a, b)
    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
    code = (x * exp((((y * log(z)) + ((t - 1.0d0) * log(a))) - b))) / y
end function
public static double code(double x, double y, double z, double t, double a, double b) {
	return (x * Math.exp((((y * Math.log(z)) + ((t - 1.0) * Math.log(a))) - b))) / y;
}
def code(x, y, z, t, a, b):
	return (x * math.exp((((y * math.log(z)) + ((t - 1.0) * math.log(a))) - b))) / y
function code(x, y, z, t, a, b)
	return Float64(Float64(x * exp(Float64(Float64(Float64(y * log(z)) + Float64(Float64(t - 1.0) * log(a))) - b))) / y)
end
function tmp = code(x, y, z, t, a, b)
	tmp = (x * exp((((y * log(z)) + ((t - 1.0) * log(a))) - b))) / y;
end
code[x_, y_, z_, t_, a_, b_] := N[(N[(x * N[Exp[N[(N[(N[(y * N[Log[z], $MachinePrecision]), $MachinePrecision] + N[(N[(t - 1.0), $MachinePrecision] * N[Log[a], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - b), $MachinePrecision]], $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision]
\begin{array}{l}

\\
\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y}
\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 25 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: 98.5% accurate, 1.0× speedup?

\[\begin{array}{l} \\ \frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \end{array} \]
(FPCore (x y z t a b)
 :precision binary64
 (/ (* x (exp (- (+ (* y (log z)) (* (- t 1.0) (log a))) b))) y))
double code(double x, double y, double z, double t, double a, double b) {
	return (x * exp((((y * log(z)) + ((t - 1.0) * log(a))) - b))) / y;
}
real(8) function code(x, y, z, t, a, b)
    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
    code = (x * exp((((y * log(z)) + ((t - 1.0d0) * log(a))) - b))) / y
end function
public static double code(double x, double y, double z, double t, double a, double b) {
	return (x * Math.exp((((y * Math.log(z)) + ((t - 1.0) * Math.log(a))) - b))) / y;
}
def code(x, y, z, t, a, b):
	return (x * math.exp((((y * math.log(z)) + ((t - 1.0) * math.log(a))) - b))) / y
function code(x, y, z, t, a, b)
	return Float64(Float64(x * exp(Float64(Float64(Float64(y * log(z)) + Float64(Float64(t - 1.0) * log(a))) - b))) / y)
end
function tmp = code(x, y, z, t, a, b)
	tmp = (x * exp((((y * log(z)) + ((t - 1.0) * log(a))) - b))) / y;
end
code[x_, y_, z_, t_, a_, b_] := N[(N[(x * N[Exp[N[(N[(N[(y * N[Log[z], $MachinePrecision]), $MachinePrecision] + N[(N[(t - 1.0), $MachinePrecision] * N[Log[a], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - b), $MachinePrecision]], $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision]
\begin{array}{l}

\\
\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y}
\end{array}

Alternative 1: 98.5% accurate, 1.0× speedup?

\[\begin{array}{l} \\ \frac{x \cdot e^{\left(y \cdot \log z + \log a \cdot \left(t + -1\right)\right) - b}}{y} \end{array} \]
(FPCore (x y z t a b)
 :precision binary64
 (/ (* x (exp (- (+ (* y (log z)) (* (log a) (+ t -1.0))) b))) y))
double code(double x, double y, double z, double t, double a, double b) {
	return (x * exp((((y * log(z)) + (log(a) * (t + -1.0))) - b))) / y;
}
real(8) function code(x, y, z, t, a, b)
    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
    code = (x * exp((((y * log(z)) + (log(a) * (t + (-1.0d0)))) - b))) / y
end function
public static double code(double x, double y, double z, double t, double a, double b) {
	return (x * Math.exp((((y * Math.log(z)) + (Math.log(a) * (t + -1.0))) - b))) / y;
}
def code(x, y, z, t, a, b):
	return (x * math.exp((((y * math.log(z)) + (math.log(a) * (t + -1.0))) - b))) / y
function code(x, y, z, t, a, b)
	return Float64(Float64(x * exp(Float64(Float64(Float64(y * log(z)) + Float64(log(a) * Float64(t + -1.0))) - b))) / y)
end
function tmp = code(x, y, z, t, a, b)
	tmp = (x * exp((((y * log(z)) + (log(a) * (t + -1.0))) - b))) / y;
end
code[x_, y_, z_, t_, a_, b_] := N[(N[(x * N[Exp[N[(N[(N[(y * N[Log[z], $MachinePrecision]), $MachinePrecision] + N[(N[Log[a], $MachinePrecision] * N[(t + -1.0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - b), $MachinePrecision]], $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision]
\begin{array}{l}

\\
\frac{x \cdot e^{\left(y \cdot \log z + \log a \cdot \left(t + -1\right)\right) - b}}{y}
\end{array}
Derivation
  1. Initial program 97.6%

    \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
  2. Add Preprocessing
  3. Final simplification97.6%

    \[\leadsto \frac{x \cdot e^{\left(y \cdot \log z + \log a \cdot \left(t + -1\right)\right) - b}}{y} \]
  4. Add Preprocessing

Alternative 2: 88.4% accurate, 1.4× speedup?

\[\begin{array}{l} \\ \begin{array}{l} t_1 := \frac{\frac{x \cdot {z}^{y}}{a}}{y}\\ \mathbf{if}\;y \leq -3.6 \cdot 10^{+196}:\\ \;\;\;\;t\_1\\ \mathbf{elif}\;y \leq 1.8 \cdot 10^{+67}:\\ \;\;\;\;\frac{x \cdot e^{\log a \cdot \left(t + -1\right) - b}}{y}\\ \mathbf{else}:\\ \;\;\;\;t\_1\\ \end{array} \end{array} \]
(FPCore (x y z t a b)
 :precision binary64
 (let* ((t_1 (/ (/ (* x (pow z y)) a) y)))
   (if (<= y -3.6e+196)
     t_1
     (if (<= y 1.8e+67) (/ (* x (exp (- (* (log a) (+ t -1.0)) b))) y) t_1))))
double code(double x, double y, double z, double t, double a, double b) {
	double t_1 = ((x * pow(z, y)) / a) / y;
	double tmp;
	if (y <= -3.6e+196) {
		tmp = t_1;
	} else if (y <= 1.8e+67) {
		tmp = (x * exp(((log(a) * (t + -1.0)) - b))) / y;
	} else {
		tmp = t_1;
	}
	return tmp;
}
real(8) function code(x, y, z, t, a, b)
    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) :: t_1
    real(8) :: tmp
    t_1 = ((x * (z ** y)) / a) / y
    if (y <= (-3.6d+196)) then
        tmp = t_1
    else if (y <= 1.8d+67) then
        tmp = (x * exp(((log(a) * (t + (-1.0d0))) - b))) / y
    else
        tmp = t_1
    end if
    code = tmp
end function
public static double code(double x, double y, double z, double t, double a, double b) {
	double t_1 = ((x * Math.pow(z, y)) / a) / y;
	double tmp;
	if (y <= -3.6e+196) {
		tmp = t_1;
	} else if (y <= 1.8e+67) {
		tmp = (x * Math.exp(((Math.log(a) * (t + -1.0)) - b))) / y;
	} else {
		tmp = t_1;
	}
	return tmp;
}
def code(x, y, z, t, a, b):
	t_1 = ((x * math.pow(z, y)) / a) / y
	tmp = 0
	if y <= -3.6e+196:
		tmp = t_1
	elif y <= 1.8e+67:
		tmp = (x * math.exp(((math.log(a) * (t + -1.0)) - b))) / y
	else:
		tmp = t_1
	return tmp
function code(x, y, z, t, a, b)
	t_1 = Float64(Float64(Float64(x * (z ^ y)) / a) / y)
	tmp = 0.0
	if (y <= -3.6e+196)
		tmp = t_1;
	elseif (y <= 1.8e+67)
		tmp = Float64(Float64(x * exp(Float64(Float64(log(a) * Float64(t + -1.0)) - b))) / y);
	else
		tmp = t_1;
	end
	return tmp
end
function tmp_2 = code(x, y, z, t, a, b)
	t_1 = ((x * (z ^ y)) / a) / y;
	tmp = 0.0;
	if (y <= -3.6e+196)
		tmp = t_1;
	elseif (y <= 1.8e+67)
		tmp = (x * exp(((log(a) * (t + -1.0)) - b))) / y;
	else
		tmp = t_1;
	end
	tmp_2 = tmp;
end
code[x_, y_, z_, t_, a_, b_] := Block[{t$95$1 = N[(N[(N[(x * N[Power[z, y], $MachinePrecision]), $MachinePrecision] / a), $MachinePrecision] / y), $MachinePrecision]}, If[LessEqual[y, -3.6e+196], t$95$1, If[LessEqual[y, 1.8e+67], N[(N[(x * N[Exp[N[(N[(N[Log[a], $MachinePrecision] * N[(t + -1.0), $MachinePrecision]), $MachinePrecision] - b), $MachinePrecision]], $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision], t$95$1]]]
\begin{array}{l}

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

\mathbf{elif}\;y \leq 1.8 \cdot 10^{+67}:\\
\;\;\;\;\frac{x \cdot e^{\log a \cdot \left(t + -1\right) - b}}{y}\\

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


\end{array}
\end{array}
Derivation
  1. Split input into 2 regimes
  2. if y < -3.60000000000000007e196 or 1.7999999999999999e67 < y

    1. Initial program 100.0%

      \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
    2. Add Preprocessing
    3. Step-by-step derivation
      1. clear-numN/A

        \[\leadsto \frac{1}{\color{blue}{\frac{y}{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}}} \]
      2. associate-/r*N/A

        \[\leadsto \frac{1}{\frac{\frac{y}{x}}{\color{blue}{e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}}} \]
      3. exp-diffN/A

        \[\leadsto \frac{1}{\frac{\frac{y}{x}}{\frac{e^{y \cdot \log z + \left(t - 1\right) \cdot \log a}}{\color{blue}{e^{b}}}}} \]
      4. prod-expN/A

        \[\leadsto \frac{1}{\frac{\frac{y}{x}}{\frac{e^{y \cdot \log z} \cdot e^{\left(t - 1\right) \cdot \log a}}{e^{\color{blue}{b}}}}} \]
      5. *-commutativeN/A

        \[\leadsto \frac{1}{\frac{\frac{y}{x}}{\frac{e^{\log z \cdot y} \cdot e^{\left(t - 1\right) \cdot \log a}}{e^{b}}}} \]
      6. pow-to-expN/A

        \[\leadsto \frac{1}{\frac{\frac{y}{x}}{\frac{{z}^{y} \cdot e^{\left(t - 1\right) \cdot \log a}}{e^{b}}}} \]
      7. sub-negN/A

        \[\leadsto \frac{1}{\frac{\frac{y}{x}}{\frac{{z}^{y} \cdot e^{\left(t + \left(\mathsf{neg}\left(1\right)\right)\right) \cdot \log a}}{e^{b}}}} \]
      8. metadata-evalN/A

        \[\leadsto \frac{1}{\frac{\frac{y}{x}}{\frac{{z}^{y} \cdot e^{\left(t + -1\right) \cdot \log a}}{e^{b}}}} \]
      9. *-commutativeN/A

        \[\leadsto \frac{1}{\frac{\frac{y}{x}}{\frac{{z}^{y} \cdot e^{\log a \cdot \left(t + -1\right)}}{e^{b}}}} \]
      10. pow-to-expN/A

        \[\leadsto \frac{1}{\frac{\frac{y}{x}}{\frac{{z}^{y} \cdot {a}^{\left(t + -1\right)}}{e^{b}}}} \]
      11. clear-numN/A

        \[\leadsto \frac{\frac{{z}^{y} \cdot {a}^{\left(t + -1\right)}}{e^{b}}}{\color{blue}{\frac{y}{x}}} \]
      12. /-lowering-/.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\left(\frac{{z}^{y} \cdot {a}^{\left(t + -1\right)}}{e^{b}}\right), \color{blue}{\left(\frac{y}{x}\right)}\right) \]
    4. Applied egg-rr50.0%

      \[\leadsto \color{blue}{\frac{\frac{{a}^{\left(t + -1\right)}}{\frac{e^{b}}{{z}^{y}}}}{\frac{y}{x}}} \]
    5. Taylor expanded in t around 0

      \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(\frac{{z}^{y}}{a \cdot e^{b}}\right)}, \mathsf{/.f64}\left(y, x\right)\right) \]
    6. Step-by-step derivation
      1. /-lowering-/.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(\left({z}^{y}\right), \left(a \cdot e^{b}\right)\right), \mathsf{/.f64}\left(\color{blue}{y}, x\right)\right) \]
      2. pow-lowering-pow.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(\mathsf{pow.f64}\left(z, y\right), \left(a \cdot e^{b}\right)\right), \mathsf{/.f64}\left(y, x\right)\right) \]
      3. *-lowering-*.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(\mathsf{pow.f64}\left(z, y\right), \mathsf{*.f64}\left(a, \left(e^{b}\right)\right)\right), \mathsf{/.f64}\left(y, x\right)\right) \]
      4. exp-lowering-exp.f6461.6%

        \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(\mathsf{pow.f64}\left(z, y\right), \mathsf{*.f64}\left(a, \mathsf{exp.f64}\left(b\right)\right)\right), \mathsf{/.f64}\left(y, x\right)\right) \]
    7. Simplified61.6%

      \[\leadsto \frac{\color{blue}{\frac{{z}^{y}}{a \cdot e^{b}}}}{\frac{y}{x}} \]
    8. Taylor expanded in b around 0

      \[\leadsto \color{blue}{\frac{x \cdot {z}^{y}}{a \cdot y}} \]
    9. Step-by-step derivation
      1. associate-/r*N/A

        \[\leadsto \frac{\frac{x \cdot {z}^{y}}{a}}{\color{blue}{y}} \]
      2. /-lowering-/.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\left(\frac{x \cdot {z}^{y}}{a}\right), \color{blue}{y}\right) \]
      3. /-lowering-/.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(\left(x \cdot {z}^{y}\right), a\right), y\right) \]
      4. *-lowering-*.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left({z}^{y}\right)\right), a\right), y\right) \]
      5. pow-lowering-pow.f6493.7%

        \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(z, y\right)\right), a\right), y\right) \]
    10. Simplified93.7%

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

    if -3.60000000000000007e196 < y < 1.7999999999999999e67

    1. Initial program 96.6%

      \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
    2. Add Preprocessing
    3. Taylor expanded in y around 0

      \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(\log a \cdot \left(t - 1\right) - b\right)}\right)\right), y\right) \]
    4. Step-by-step derivation
      1. --lowering--.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\left(\log a \cdot \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
      2. *-lowering-*.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\log a, \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
      3. log-lowering-log.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
      4. sub-negN/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right), b\right)\right)\right), y\right) \]
      5. metadata-evalN/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + -1\right)\right), b\right)\right)\right), y\right) \]
      6. +-lowering-+.f6493.1%

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \mathsf{+.f64}\left(t, -1\right)\right), b\right)\right)\right), y\right) \]
    5. Simplified93.1%

      \[\leadsto \frac{x \cdot e^{\color{blue}{\log a \cdot \left(t + -1\right) - b}}}{y} \]
  3. Recombined 2 regimes into one program.
  4. Add Preprocessing

Alternative 3: 80.7% accurate, 1.4× speedup?

\[\begin{array}{l} \\ \begin{array}{l} t_1 := \frac{\frac{x \cdot {z}^{y}}{a}}{y}\\ \mathbf{if}\;y \leq -2.2 \cdot 10^{+106}:\\ \;\;\;\;t\_1\\ \mathbf{elif}\;y \leq 11:\\ \;\;\;\;\frac{\frac{x}{y \cdot e^{b}} \cdot {a}^{t}}{a}\\ \mathbf{else}:\\ \;\;\;\;t\_1\\ \end{array} \end{array} \]
(FPCore (x y z t a b)
 :precision binary64
 (let* ((t_1 (/ (/ (* x (pow z y)) a) y)))
   (if (<= y -2.2e+106)
     t_1
     (if (<= y 11.0) (/ (* (/ x (* y (exp b))) (pow a t)) a) t_1))))
double code(double x, double y, double z, double t, double a, double b) {
	double t_1 = ((x * pow(z, y)) / a) / y;
	double tmp;
	if (y <= -2.2e+106) {
		tmp = t_1;
	} else if (y <= 11.0) {
		tmp = ((x / (y * exp(b))) * pow(a, t)) / a;
	} else {
		tmp = t_1;
	}
	return tmp;
}
real(8) function code(x, y, z, t, a, b)
    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) :: t_1
    real(8) :: tmp
    t_1 = ((x * (z ** y)) / a) / y
    if (y <= (-2.2d+106)) then
        tmp = t_1
    else if (y <= 11.0d0) then
        tmp = ((x / (y * exp(b))) * (a ** t)) / 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 t_1 = ((x * Math.pow(z, y)) / a) / y;
	double tmp;
	if (y <= -2.2e+106) {
		tmp = t_1;
	} else if (y <= 11.0) {
		tmp = ((x / (y * Math.exp(b))) * Math.pow(a, t)) / a;
	} else {
		tmp = t_1;
	}
	return tmp;
}
def code(x, y, z, t, a, b):
	t_1 = ((x * math.pow(z, y)) / a) / y
	tmp = 0
	if y <= -2.2e+106:
		tmp = t_1
	elif y <= 11.0:
		tmp = ((x / (y * math.exp(b))) * math.pow(a, t)) / a
	else:
		tmp = t_1
	return tmp
function code(x, y, z, t, a, b)
	t_1 = Float64(Float64(Float64(x * (z ^ y)) / a) / y)
	tmp = 0.0
	if (y <= -2.2e+106)
		tmp = t_1;
	elseif (y <= 11.0)
		tmp = Float64(Float64(Float64(x / Float64(y * exp(b))) * (a ^ t)) / a);
	else
		tmp = t_1;
	end
	return tmp
end
function tmp_2 = code(x, y, z, t, a, b)
	t_1 = ((x * (z ^ y)) / a) / y;
	tmp = 0.0;
	if (y <= -2.2e+106)
		tmp = t_1;
	elseif (y <= 11.0)
		tmp = ((x / (y * exp(b))) * (a ^ t)) / a;
	else
		tmp = t_1;
	end
	tmp_2 = tmp;
end
code[x_, y_, z_, t_, a_, b_] := Block[{t$95$1 = N[(N[(N[(x * N[Power[z, y], $MachinePrecision]), $MachinePrecision] / a), $MachinePrecision] / y), $MachinePrecision]}, If[LessEqual[y, -2.2e+106], t$95$1, If[LessEqual[y, 11.0], N[(N[(N[(x / N[(y * N[Exp[b], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * N[Power[a, t], $MachinePrecision]), $MachinePrecision] / a), $MachinePrecision], t$95$1]]]
\begin{array}{l}

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

\mathbf{elif}\;y \leq 11:\\
\;\;\;\;\frac{\frac{x}{y \cdot e^{b}} \cdot {a}^{t}}{a}\\

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


\end{array}
\end{array}
Derivation
  1. Split input into 2 regimes
  2. if y < -2.19999999999999992e106 or 11 < y

    1. Initial program 100.0%

      \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
    2. Add Preprocessing
    3. Step-by-step derivation
      1. clear-numN/A

        \[\leadsto \frac{1}{\color{blue}{\frac{y}{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}}} \]
      2. associate-/r*N/A

        \[\leadsto \frac{1}{\frac{\frac{y}{x}}{\color{blue}{e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}}} \]
      3. exp-diffN/A

        \[\leadsto \frac{1}{\frac{\frac{y}{x}}{\frac{e^{y \cdot \log z + \left(t - 1\right) \cdot \log a}}{\color{blue}{e^{b}}}}} \]
      4. prod-expN/A

        \[\leadsto \frac{1}{\frac{\frac{y}{x}}{\frac{e^{y \cdot \log z} \cdot e^{\left(t - 1\right) \cdot \log a}}{e^{\color{blue}{b}}}}} \]
      5. *-commutativeN/A

        \[\leadsto \frac{1}{\frac{\frac{y}{x}}{\frac{e^{\log z \cdot y} \cdot e^{\left(t - 1\right) \cdot \log a}}{e^{b}}}} \]
      6. pow-to-expN/A

        \[\leadsto \frac{1}{\frac{\frac{y}{x}}{\frac{{z}^{y} \cdot e^{\left(t - 1\right) \cdot \log a}}{e^{b}}}} \]
      7. sub-negN/A

        \[\leadsto \frac{1}{\frac{\frac{y}{x}}{\frac{{z}^{y} \cdot e^{\left(t + \left(\mathsf{neg}\left(1\right)\right)\right) \cdot \log a}}{e^{b}}}} \]
      8. metadata-evalN/A

        \[\leadsto \frac{1}{\frac{\frac{y}{x}}{\frac{{z}^{y} \cdot e^{\left(t + -1\right) \cdot \log a}}{e^{b}}}} \]
      9. *-commutativeN/A

        \[\leadsto \frac{1}{\frac{\frac{y}{x}}{\frac{{z}^{y} \cdot e^{\log a \cdot \left(t + -1\right)}}{e^{b}}}} \]
      10. pow-to-expN/A

        \[\leadsto \frac{1}{\frac{\frac{y}{x}}{\frac{{z}^{y} \cdot {a}^{\left(t + -1\right)}}{e^{b}}}} \]
      11. clear-numN/A

        \[\leadsto \frac{\frac{{z}^{y} \cdot {a}^{\left(t + -1\right)}}{e^{b}}}{\color{blue}{\frac{y}{x}}} \]
      12. /-lowering-/.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\left(\frac{{z}^{y} \cdot {a}^{\left(t + -1\right)}}{e^{b}}\right), \color{blue}{\left(\frac{y}{x}\right)}\right) \]
    4. Applied egg-rr47.1%

      \[\leadsto \color{blue}{\frac{\frac{{a}^{\left(t + -1\right)}}{\frac{e^{b}}{{z}^{y}}}}{\frac{y}{x}}} \]
    5. Taylor expanded in t around 0

      \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(\frac{{z}^{y}}{a \cdot e^{b}}\right)}, \mathsf{/.f64}\left(y, x\right)\right) \]
    6. Step-by-step derivation
      1. /-lowering-/.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(\left({z}^{y}\right), \left(a \cdot e^{b}\right)\right), \mathsf{/.f64}\left(\color{blue}{y}, x\right)\right) \]
      2. pow-lowering-pow.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(\mathsf{pow.f64}\left(z, y\right), \left(a \cdot e^{b}\right)\right), \mathsf{/.f64}\left(y, x\right)\right) \]
      3. *-lowering-*.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(\mathsf{pow.f64}\left(z, y\right), \mathsf{*.f64}\left(a, \left(e^{b}\right)\right)\right), \mathsf{/.f64}\left(y, x\right)\right) \]
      4. exp-lowering-exp.f6458.9%

        \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(\mathsf{pow.f64}\left(z, y\right), \mathsf{*.f64}\left(a, \mathsf{exp.f64}\left(b\right)\right)\right), \mathsf{/.f64}\left(y, x\right)\right) \]
    7. Simplified58.9%

      \[\leadsto \frac{\color{blue}{\frac{{z}^{y}}{a \cdot e^{b}}}}{\frac{y}{x}} \]
    8. Taylor expanded in b around 0

      \[\leadsto \color{blue}{\frac{x \cdot {z}^{y}}{a \cdot y}} \]
    9. Step-by-step derivation
      1. associate-/r*N/A

        \[\leadsto \frac{\frac{x \cdot {z}^{y}}{a}}{\color{blue}{y}} \]
      2. /-lowering-/.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\left(\frac{x \cdot {z}^{y}}{a}\right), \color{blue}{y}\right) \]
      3. /-lowering-/.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(\left(x \cdot {z}^{y}\right), a\right), y\right) \]
      4. *-lowering-*.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left({z}^{y}\right)\right), a\right), y\right) \]
      5. pow-lowering-pow.f6486.5%

        \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(z, y\right)\right), a\right), y\right) \]
    10. Simplified86.5%

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

    if -2.19999999999999992e106 < y < 11

    1. Initial program 96.0%

      \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
    2. Add Preprocessing
    3. Taylor expanded in y around 0

      \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(\log a \cdot \left(t - 1\right) - b\right)}\right)\right), y\right) \]
    4. Step-by-step derivation
      1. --lowering--.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\left(\log a \cdot \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
      2. *-lowering-*.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\log a, \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
      3. log-lowering-log.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
      4. sub-negN/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right), b\right)\right)\right), y\right) \]
      5. metadata-evalN/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + -1\right)\right), b\right)\right)\right), y\right) \]
      6. +-lowering-+.f6494.6%

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \mathsf{+.f64}\left(t, -1\right)\right), b\right)\right)\right), y\right) \]
    5. Simplified94.6%

      \[\leadsto \frac{x \cdot e^{\color{blue}{\log a \cdot \left(t + -1\right) - b}}}{y} \]
    6. Step-by-step derivation
      1. associate-*l/N/A

        \[\leadsto \frac{x}{y} \cdot \color{blue}{e^{\log a \cdot \left(t + -1\right) - b}} \]
      2. exp-diffN/A

        \[\leadsto \frac{x}{y} \cdot \frac{e^{\log a \cdot \left(t + -1\right)}}{\color{blue}{e^{b}}} \]
      3. pow-to-expN/A

        \[\leadsto \frac{x}{y} \cdot \frac{{a}^{\left(t + -1\right)}}{e^{\color{blue}{b}}} \]
      4. clear-numN/A

        \[\leadsto \frac{x}{y} \cdot \frac{1}{\color{blue}{\frac{e^{b}}{{a}^{\left(t + -1\right)}}}} \]
      5. div-invN/A

        \[\leadsto \frac{\frac{x}{y}}{\color{blue}{\frac{e^{b}}{{a}^{\left(t + -1\right)}}}} \]
      6. associate-/r/N/A

        \[\leadsto \frac{\frac{x}{y}}{e^{b}} \cdot \color{blue}{{a}^{\left(t + -1\right)}} \]
      7. unpow-prod-upN/A

        \[\leadsto \frac{\frac{x}{y}}{e^{b}} \cdot \left({a}^{t} \cdot \color{blue}{{a}^{-1}}\right) \]
      8. associate-*r*N/A

        \[\leadsto \left(\frac{\frac{x}{y}}{e^{b}} \cdot {a}^{t}\right) \cdot \color{blue}{{a}^{-1}} \]
      9. unpow-1N/A

        \[\leadsto \left(\frac{\frac{x}{y}}{e^{b}} \cdot {a}^{t}\right) \cdot \frac{1}{\color{blue}{a}} \]
      10. un-div-invN/A

        \[\leadsto \frac{\frac{\frac{x}{y}}{e^{b}} \cdot {a}^{t}}{\color{blue}{a}} \]
      11. /-lowering-/.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\left(\frac{\frac{x}{y}}{e^{b}} \cdot {a}^{t}\right), \color{blue}{a}\right) \]
    7. Applied egg-rr87.6%

      \[\leadsto \color{blue}{\frac{\frac{x}{y \cdot e^{b}} \cdot {a}^{t}}{a}} \]
  3. Recombined 2 regimes into one program.
  4. Add Preprocessing

Alternative 4: 57.9% accurate, 2.6× speedup?

\[\begin{array}{l} \\ \begin{array}{l} t_1 := \frac{\frac{x}{e^{b}}}{y}\\ \mathbf{if}\;b \leq -3.3 \cdot 10^{+14}:\\ \;\;\;\;t\_1\\ \mathbf{elif}\;b \leq 4.6 \cdot 10^{-260}:\\ \;\;\;\;\frac{\frac{1}{y}}{\frac{\frac{\frac{-18}{x} - \frac{\frac{18}{x} + \frac{-18}{x \cdot b}}{b}}{b} - \frac{6}{x}}{b \cdot \left(b \cdot b\right)}}\\ \mathbf{elif}\;b \leq 29000:\\ \;\;\;\;\frac{\frac{x}{y}}{a}\\ \mathbf{else}:\\ \;\;\;\;t\_1\\ \end{array} \end{array} \]
(FPCore (x y z t a b)
 :precision binary64
 (let* ((t_1 (/ (/ x (exp b)) y)))
   (if (<= b -3.3e+14)
     t_1
     (if (<= b 4.6e-260)
       (/
        (/ 1.0 y)
        (/
         (-
          (/ (- (/ -18.0 x) (/ (+ (/ 18.0 x) (/ -18.0 (* x b))) b)) b)
          (/ 6.0 x))
         (* b (* b b))))
       (if (<= b 29000.0) (/ (/ x y) a) t_1)))))
double code(double x, double y, double z, double t, double a, double b) {
	double t_1 = (x / exp(b)) / y;
	double tmp;
	if (b <= -3.3e+14) {
		tmp = t_1;
	} else if (b <= 4.6e-260) {
		tmp = (1.0 / y) / (((((-18.0 / x) - (((18.0 / x) + (-18.0 / (x * b))) / b)) / b) - (6.0 / x)) / (b * (b * b)));
	} else if (b <= 29000.0) {
		tmp = (x / y) / a;
	} else {
		tmp = t_1;
	}
	return tmp;
}
real(8) function code(x, y, z, t, a, b)
    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) :: t_1
    real(8) :: tmp
    t_1 = (x / exp(b)) / y
    if (b <= (-3.3d+14)) then
        tmp = t_1
    else if (b <= 4.6d-260) then
        tmp = (1.0d0 / y) / ((((((-18.0d0) / x) - (((18.0d0 / x) + ((-18.0d0) / (x * b))) / b)) / b) - (6.0d0 / x)) / (b * (b * b)))
    else if (b <= 29000.0d0) 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 t_1 = (x / Math.exp(b)) / y;
	double tmp;
	if (b <= -3.3e+14) {
		tmp = t_1;
	} else if (b <= 4.6e-260) {
		tmp = (1.0 / y) / (((((-18.0 / x) - (((18.0 / x) + (-18.0 / (x * b))) / b)) / b) - (6.0 / x)) / (b * (b * b)));
	} else if (b <= 29000.0) {
		tmp = (x / y) / a;
	} else {
		tmp = t_1;
	}
	return tmp;
}
def code(x, y, z, t, a, b):
	t_1 = (x / math.exp(b)) / y
	tmp = 0
	if b <= -3.3e+14:
		tmp = t_1
	elif b <= 4.6e-260:
		tmp = (1.0 / y) / (((((-18.0 / x) - (((18.0 / x) + (-18.0 / (x * b))) / b)) / b) - (6.0 / x)) / (b * (b * b)))
	elif b <= 29000.0:
		tmp = (x / y) / a
	else:
		tmp = t_1
	return tmp
function code(x, y, z, t, a, b)
	t_1 = Float64(Float64(x / exp(b)) / y)
	tmp = 0.0
	if (b <= -3.3e+14)
		tmp = t_1;
	elseif (b <= 4.6e-260)
		tmp = Float64(Float64(1.0 / y) / Float64(Float64(Float64(Float64(Float64(-18.0 / x) - Float64(Float64(Float64(18.0 / x) + Float64(-18.0 / Float64(x * b))) / b)) / b) - Float64(6.0 / x)) / Float64(b * Float64(b * b))));
	elseif (b <= 29000.0)
		tmp = Float64(Float64(x / y) / a);
	else
		tmp = t_1;
	end
	return tmp
end
function tmp_2 = code(x, y, z, t, a, b)
	t_1 = (x / exp(b)) / y;
	tmp = 0.0;
	if (b <= -3.3e+14)
		tmp = t_1;
	elseif (b <= 4.6e-260)
		tmp = (1.0 / y) / (((((-18.0 / x) - (((18.0 / x) + (-18.0 / (x * b))) / b)) / b) - (6.0 / x)) / (b * (b * b)));
	elseif (b <= 29000.0)
		tmp = (x / y) / a;
	else
		tmp = t_1;
	end
	tmp_2 = tmp;
end
code[x_, y_, z_, t_, a_, b_] := Block[{t$95$1 = N[(N[(x / N[Exp[b], $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision]}, If[LessEqual[b, -3.3e+14], t$95$1, If[LessEqual[b, 4.6e-260], N[(N[(1.0 / y), $MachinePrecision] / N[(N[(N[(N[(N[(-18.0 / x), $MachinePrecision] - N[(N[(N[(18.0 / x), $MachinePrecision] + N[(-18.0 / N[(x * b), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / b), $MachinePrecision]), $MachinePrecision] / b), $MachinePrecision] - N[(6.0 / x), $MachinePrecision]), $MachinePrecision] / N[(b * N[(b * b), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[b, 29000.0], N[(N[(x / y), $MachinePrecision] / a), $MachinePrecision], t$95$1]]]]
\begin{array}{l}

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

\mathbf{elif}\;b \leq 4.6 \cdot 10^{-260}:\\
\;\;\;\;\frac{\frac{1}{y}}{\frac{\frac{\frac{-18}{x} - \frac{\frac{18}{x} + \frac{-18}{x \cdot b}}{b}}{b} - \frac{6}{x}}{b \cdot \left(b \cdot b\right)}}\\

\mathbf{elif}\;b \leq 29000:\\
\;\;\;\;\frac{\frac{x}{y}}{a}\\

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


\end{array}
\end{array}
Derivation
  1. Split input into 3 regimes
  2. if b < -3.3e14 or 29000 < b

    1. Initial program 100.0%

      \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
    2. Add Preprocessing
    3. Taylor expanded in b around inf

      \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(-1 \cdot b\right)}\right)\right), y\right) \]
    4. Step-by-step derivation
      1. mul-1-negN/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(\mathsf{neg}\left(b\right)\right)\right)\right), y\right) \]
      2. neg-sub0N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(0 - b\right)\right)\right), y\right) \]
      3. --lowering--.f6486.3%

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(0, b\right)\right)\right), y\right) \]
    5. Simplified86.3%

      \[\leadsto \frac{x \cdot e^{\color{blue}{0 - b}}}{y} \]
    6. Step-by-step derivation
      1. /-lowering-/.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\left(x \cdot e^{0 - b}\right), \color{blue}{y}\right) \]
      2. sub0-negN/A

        \[\leadsto \mathsf{/.f64}\left(\left(x \cdot e^{\mathsf{neg}\left(b\right)}\right), y\right) \]
      3. exp-negN/A

        \[\leadsto \mathsf{/.f64}\left(\left(x \cdot \frac{1}{e^{b}}\right), y\right) \]
      4. div-invN/A

        \[\leadsto \mathsf{/.f64}\left(\left(\frac{x}{e^{b}}\right), y\right) \]
      5. /-lowering-/.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(x, \left(e^{b}\right)\right), y\right) \]
      6. exp-lowering-exp.f6486.3%

        \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(x, \mathsf{exp.f64}\left(b\right)\right), y\right) \]
    7. Applied egg-rr86.3%

      \[\leadsto \color{blue}{\frac{\frac{x}{e^{b}}}{y}} \]

    if -3.3e14 < b < 4.6e-260

    1. Initial program 97.5%

      \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
    2. Add Preprocessing
    3. Taylor expanded in b around inf

      \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(-1 \cdot b\right)}\right)\right), y\right) \]
    4. Step-by-step derivation
      1. mul-1-negN/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(\mathsf{neg}\left(b\right)\right)\right)\right), y\right) \]
      2. neg-sub0N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(0 - b\right)\right)\right), y\right) \]
      3. --lowering--.f6420.6%

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(0, b\right)\right)\right), y\right) \]
    5. Simplified20.6%

      \[\leadsto \frac{x \cdot e^{\color{blue}{0 - b}}}{y} \]
    6. Taylor expanded in b around 0

      \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(x + b \cdot \left(-1 \cdot x + b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right)\right)}, y\right) \]
    7. Step-by-step derivation
      1. +-lowering-+.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \left(b \cdot \left(-1 \cdot x + b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right)\right)\right), y\right) \]
      2. *-lowering-*.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \left(-1 \cdot x + b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right)\right)\right), y\right) \]
      3. +-commutativeN/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \left(b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right) + -1 \cdot x\right)\right)\right), y\right) \]
      4. mul-1-negN/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \left(b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right) + \left(\mathsf{neg}\left(x\right)\right)\right)\right)\right), y\right) \]
      5. unsub-negN/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \left(b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right) - x\right)\right)\right), y\right) \]
      6. --lowering--.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\left(b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right), x\right)\right)\right), y\right) \]
      7. *-lowering-*.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right), x\right)\right)\right), y\right) \]
      8. associate-*r*N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \left(\left(\frac{-1}{6} \cdot b\right) \cdot x + \frac{1}{2} \cdot x\right)\right), x\right)\right)\right), y\right) \]
      9. distribute-rgt-outN/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \left(x \cdot \left(\frac{-1}{6} \cdot b + \frac{1}{2}\right)\right)\right), x\right)\right)\right), y\right) \]
      10. +-commutativeN/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \left(x \cdot \left(\frac{1}{2} + \frac{-1}{6} \cdot b\right)\right)\right), x\right)\right)\right), y\right) \]
      11. *-lowering-*.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(x, \left(\frac{1}{2} + \frac{-1}{6} \cdot b\right)\right)\right), x\right)\right)\right), y\right) \]
      12. +-lowering-+.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(x, \mathsf{+.f64}\left(\frac{1}{2}, \left(\frac{-1}{6} \cdot b\right)\right)\right)\right), x\right)\right)\right), y\right) \]
      13. *-commutativeN/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(x, \mathsf{+.f64}\left(\frac{1}{2}, \left(b \cdot \frac{-1}{6}\right)\right)\right)\right), x\right)\right)\right), y\right) \]
      14. *-lowering-*.f6420.6%

        \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(x, \mathsf{+.f64}\left(\frac{1}{2}, \mathsf{*.f64}\left(b, \frac{-1}{6}\right)\right)\right)\right), x\right)\right)\right), y\right) \]
    8. Simplified20.6%

      \[\leadsto \frac{\color{blue}{x + b \cdot \left(b \cdot \left(x \cdot \left(0.5 + b \cdot -0.16666666666666666\right)\right) - x\right)}}{y} \]
    9. Step-by-step derivation
      1. clear-numN/A

        \[\leadsto \frac{1}{\color{blue}{\frac{y}{x + b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)}}} \]
      2. associate-/r/N/A

        \[\leadsto \frac{1}{y} \cdot \color{blue}{\left(x + b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right)} \]
      3. flip3-+N/A

        \[\leadsto \frac{1}{y} \cdot \frac{{x}^{3} + {\left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right)}^{3}}{\color{blue}{x \cdot x + \left(\left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) \cdot \left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) - x \cdot \left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right)\right)}} \]
      4. clear-numN/A

        \[\leadsto \frac{1}{y} \cdot \frac{1}{\color{blue}{\frac{x \cdot x + \left(\left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) \cdot \left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) - x \cdot \left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right)\right)}{{x}^{3} + {\left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right)}^{3}}}} \]
      5. un-div-invN/A

        \[\leadsto \frac{\frac{1}{y}}{\color{blue}{\frac{x \cdot x + \left(\left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) \cdot \left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) - x \cdot \left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right)\right)}{{x}^{3} + {\left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right)}^{3}}}} \]
      6. /-lowering-/.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\left(\frac{1}{y}\right), \color{blue}{\left(\frac{x \cdot x + \left(\left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) \cdot \left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) - x \cdot \left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right)\right)}{{x}^{3} + {\left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right)}^{3}}\right)}\right) \]
    10. Applied egg-rr20.6%

      \[\leadsto \color{blue}{\frac{\frac{1}{y}}{\frac{1}{x + b \cdot \left(x \cdot \left(\left(0.5 + b \cdot -0.16666666666666666\right) \cdot b\right) - x\right)}}} \]
    11. Taylor expanded in b around -inf

      \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, y\right), \color{blue}{\left(-1 \cdot \frac{-1 \cdot \frac{-1 \cdot \frac{18 \cdot \frac{1}{x} - 18 \cdot \frac{1}{b \cdot x}}{b} - 18 \cdot \frac{1}{x}}{b} + 6 \cdot \frac{1}{x}}{{b}^{3}}\right)}\right) \]
    12. Simplified43.4%

      \[\leadsto \frac{\frac{1}{y}}{\color{blue}{\frac{\frac{6}{x} - \frac{\frac{\frac{18}{x} + \frac{-18}{x \cdot b}}{0 - b} + \frac{-18}{x}}{b}}{-b \cdot \left(b \cdot b\right)}}} \]

    if 4.6e-260 < b < 29000

    1. Initial program 92.1%

      \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
    2. Add Preprocessing
    3. Taylor expanded in y around 0

      \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(\log a \cdot \left(t - 1\right) - b\right)}\right)\right), y\right) \]
    4. Step-by-step derivation
      1. --lowering--.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\left(\log a \cdot \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
      2. *-lowering-*.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\log a, \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
      3. log-lowering-log.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
      4. sub-negN/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right), b\right)\right)\right), y\right) \]
      5. metadata-evalN/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + -1\right)\right), b\right)\right)\right), y\right) \]
      6. +-lowering-+.f6473.4%

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \mathsf{+.f64}\left(t, -1\right)\right), b\right)\right)\right), y\right) \]
    5. Simplified73.4%

      \[\leadsto \frac{x \cdot e^{\color{blue}{\log a \cdot \left(t + -1\right) - b}}}{y} \]
    6. Taylor expanded in b around 0

      \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(x \cdot e^{\log a \cdot \left(t - 1\right)}\right)}, y\right) \]
    7. Step-by-step derivation
      1. *-lowering-*.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(e^{\log a \cdot \left(t - 1\right)}\right)\right), y\right) \]
      2. exp-to-powN/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left({a}^{\left(t - 1\right)}\right)\right), y\right) \]
      3. pow-lowering-pow.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t - 1\right)\right)\right), y\right) \]
      4. sub-negN/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right)\right), y\right) \]
      5. metadata-evalN/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + -1\right)\right)\right), y\right) \]
      6. +-lowering-+.f6474.0%

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \mathsf{+.f64}\left(t, -1\right)\right)\right), y\right) \]
    8. Simplified74.0%

      \[\leadsto \frac{\color{blue}{x \cdot {a}^{\left(t + -1\right)}}}{y} \]
    9. Taylor expanded in t around 0

      \[\leadsto \color{blue}{\frac{x}{a \cdot y}} \]
    10. Step-by-step derivation
      1. *-commutativeN/A

        \[\leadsto \frac{x}{y \cdot \color{blue}{a}} \]
      2. associate-/r*N/A

        \[\leadsto \frac{\frac{x}{y}}{\color{blue}{a}} \]
      3. /-lowering-/.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\left(\frac{x}{y}\right), \color{blue}{a}\right) \]
      4. /-lowering-/.f6450.6%

        \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(x, y\right), a\right) \]
    11. Simplified50.6%

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

    \[\leadsto \begin{array}{l} \mathbf{if}\;b \leq -3.3 \cdot 10^{+14}:\\ \;\;\;\;\frac{\frac{x}{e^{b}}}{y}\\ \mathbf{elif}\;b \leq 4.6 \cdot 10^{-260}:\\ \;\;\;\;\frac{\frac{1}{y}}{\frac{\frac{\frac{-18}{x} - \frac{\frac{18}{x} + \frac{-18}{x \cdot b}}{b}}{b} - \frac{6}{x}}{b \cdot \left(b \cdot b\right)}}\\ \mathbf{elif}\;b \leq 29000:\\ \;\;\;\;\frac{\frac{x}{y}}{a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{x}{e^{b}}}{y}\\ \end{array} \]
  5. Add Preprocessing

Alternative 5: 71.4% accurate, 2.7× speedup?

\[\begin{array}{l} \\ \begin{array}{l} t_1 := \frac{\frac{x \cdot {z}^{y}}{a}}{y}\\ \mathbf{if}\;y \leq -2.7 \cdot 10^{+196}:\\ \;\;\;\;t\_1\\ \mathbf{elif}\;y \leq 4.2 \cdot 10^{+65}:\\ \;\;\;\;\frac{x}{y \cdot \left(a \cdot e^{b}\right)}\\ \mathbf{else}:\\ \;\;\;\;t\_1\\ \end{array} \end{array} \]
(FPCore (x y z t a b)
 :precision binary64
 (let* ((t_1 (/ (/ (* x (pow z y)) a) y)))
   (if (<= y -2.7e+196)
     t_1
     (if (<= y 4.2e+65) (/ x (* y (* a (exp b)))) t_1))))
double code(double x, double y, double z, double t, double a, double b) {
	double t_1 = ((x * pow(z, y)) / a) / y;
	double tmp;
	if (y <= -2.7e+196) {
		tmp = t_1;
	} else if (y <= 4.2e+65) {
		tmp = x / (y * (a * exp(b)));
	} else {
		tmp = t_1;
	}
	return tmp;
}
real(8) function code(x, y, z, t, a, b)
    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) :: t_1
    real(8) :: tmp
    t_1 = ((x * (z ** y)) / a) / y
    if (y <= (-2.7d+196)) then
        tmp = t_1
    else if (y <= 4.2d+65) then
        tmp = x / (y * (a * exp(b)))
    else
        tmp = t_1
    end if
    code = tmp
end function
public static double code(double x, double y, double z, double t, double a, double b) {
	double t_1 = ((x * Math.pow(z, y)) / a) / y;
	double tmp;
	if (y <= -2.7e+196) {
		tmp = t_1;
	} else if (y <= 4.2e+65) {
		tmp = x / (y * (a * Math.exp(b)));
	} else {
		tmp = t_1;
	}
	return tmp;
}
def code(x, y, z, t, a, b):
	t_1 = ((x * math.pow(z, y)) / a) / y
	tmp = 0
	if y <= -2.7e+196:
		tmp = t_1
	elif y <= 4.2e+65:
		tmp = x / (y * (a * math.exp(b)))
	else:
		tmp = t_1
	return tmp
function code(x, y, z, t, a, b)
	t_1 = Float64(Float64(Float64(x * (z ^ y)) / a) / y)
	tmp = 0.0
	if (y <= -2.7e+196)
		tmp = t_1;
	elseif (y <= 4.2e+65)
		tmp = Float64(x / Float64(y * Float64(a * exp(b))));
	else
		tmp = t_1;
	end
	return tmp
end
function tmp_2 = code(x, y, z, t, a, b)
	t_1 = ((x * (z ^ y)) / a) / y;
	tmp = 0.0;
	if (y <= -2.7e+196)
		tmp = t_1;
	elseif (y <= 4.2e+65)
		tmp = x / (y * (a * exp(b)));
	else
		tmp = t_1;
	end
	tmp_2 = tmp;
end
code[x_, y_, z_, t_, a_, b_] := Block[{t$95$1 = N[(N[(N[(x * N[Power[z, y], $MachinePrecision]), $MachinePrecision] / a), $MachinePrecision] / y), $MachinePrecision]}, If[LessEqual[y, -2.7e+196], t$95$1, If[LessEqual[y, 4.2e+65], N[(x / N[(y * N[(a * N[Exp[b], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], t$95$1]]]
\begin{array}{l}

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

\mathbf{elif}\;y \leq 4.2 \cdot 10^{+65}:\\
\;\;\;\;\frac{x}{y \cdot \left(a \cdot e^{b}\right)}\\

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


\end{array}
\end{array}
Derivation
  1. Split input into 2 regimes
  2. if y < -2.69999999999999995e196 or 4.19999999999999983e65 < y

    1. Initial program 100.0%

      \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
    2. Add Preprocessing
    3. Step-by-step derivation
      1. clear-numN/A

        \[\leadsto \frac{1}{\color{blue}{\frac{y}{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}}} \]
      2. associate-/r*N/A

        \[\leadsto \frac{1}{\frac{\frac{y}{x}}{\color{blue}{e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}}} \]
      3. exp-diffN/A

        \[\leadsto \frac{1}{\frac{\frac{y}{x}}{\frac{e^{y \cdot \log z + \left(t - 1\right) \cdot \log a}}{\color{blue}{e^{b}}}}} \]
      4. prod-expN/A

        \[\leadsto \frac{1}{\frac{\frac{y}{x}}{\frac{e^{y \cdot \log z} \cdot e^{\left(t - 1\right) \cdot \log a}}{e^{\color{blue}{b}}}}} \]
      5. *-commutativeN/A

        \[\leadsto \frac{1}{\frac{\frac{y}{x}}{\frac{e^{\log z \cdot y} \cdot e^{\left(t - 1\right) \cdot \log a}}{e^{b}}}} \]
      6. pow-to-expN/A

        \[\leadsto \frac{1}{\frac{\frac{y}{x}}{\frac{{z}^{y} \cdot e^{\left(t - 1\right) \cdot \log a}}{e^{b}}}} \]
      7. sub-negN/A

        \[\leadsto \frac{1}{\frac{\frac{y}{x}}{\frac{{z}^{y} \cdot e^{\left(t + \left(\mathsf{neg}\left(1\right)\right)\right) \cdot \log a}}{e^{b}}}} \]
      8. metadata-evalN/A

        \[\leadsto \frac{1}{\frac{\frac{y}{x}}{\frac{{z}^{y} \cdot e^{\left(t + -1\right) \cdot \log a}}{e^{b}}}} \]
      9. *-commutativeN/A

        \[\leadsto \frac{1}{\frac{\frac{y}{x}}{\frac{{z}^{y} \cdot e^{\log a \cdot \left(t + -1\right)}}{e^{b}}}} \]
      10. pow-to-expN/A

        \[\leadsto \frac{1}{\frac{\frac{y}{x}}{\frac{{z}^{y} \cdot {a}^{\left(t + -1\right)}}{e^{b}}}} \]
      11. clear-numN/A

        \[\leadsto \frac{\frac{{z}^{y} \cdot {a}^{\left(t + -1\right)}}{e^{b}}}{\color{blue}{\frac{y}{x}}} \]
      12. /-lowering-/.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\left(\frac{{z}^{y} \cdot {a}^{\left(t + -1\right)}}{e^{b}}\right), \color{blue}{\left(\frac{y}{x}\right)}\right) \]
    4. Applied egg-rr50.0%

      \[\leadsto \color{blue}{\frac{\frac{{a}^{\left(t + -1\right)}}{\frac{e^{b}}{{z}^{y}}}}{\frac{y}{x}}} \]
    5. Taylor expanded in t around 0

      \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(\frac{{z}^{y}}{a \cdot e^{b}}\right)}, \mathsf{/.f64}\left(y, x\right)\right) \]
    6. Step-by-step derivation
      1. /-lowering-/.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(\left({z}^{y}\right), \left(a \cdot e^{b}\right)\right), \mathsf{/.f64}\left(\color{blue}{y}, x\right)\right) \]
      2. pow-lowering-pow.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(\mathsf{pow.f64}\left(z, y\right), \left(a \cdot e^{b}\right)\right), \mathsf{/.f64}\left(y, x\right)\right) \]
      3. *-lowering-*.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(\mathsf{pow.f64}\left(z, y\right), \mathsf{*.f64}\left(a, \left(e^{b}\right)\right)\right), \mathsf{/.f64}\left(y, x\right)\right) \]
      4. exp-lowering-exp.f6461.6%

        \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(\mathsf{pow.f64}\left(z, y\right), \mathsf{*.f64}\left(a, \mathsf{exp.f64}\left(b\right)\right)\right), \mathsf{/.f64}\left(y, x\right)\right) \]
    7. Simplified61.6%

      \[\leadsto \frac{\color{blue}{\frac{{z}^{y}}{a \cdot e^{b}}}}{\frac{y}{x}} \]
    8. Taylor expanded in b around 0

      \[\leadsto \color{blue}{\frac{x \cdot {z}^{y}}{a \cdot y}} \]
    9. Step-by-step derivation
      1. associate-/r*N/A

        \[\leadsto \frac{\frac{x \cdot {z}^{y}}{a}}{\color{blue}{y}} \]
      2. /-lowering-/.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\left(\frac{x \cdot {z}^{y}}{a}\right), \color{blue}{y}\right) \]
      3. /-lowering-/.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(\left(x \cdot {z}^{y}\right), a\right), y\right) \]
      4. *-lowering-*.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left({z}^{y}\right)\right), a\right), y\right) \]
      5. pow-lowering-pow.f6493.7%

        \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(z, y\right)\right), a\right), y\right) \]
    10. Simplified93.7%

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

    if -2.69999999999999995e196 < y < 4.19999999999999983e65

    1. Initial program 96.6%

      \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
    2. Add Preprocessing
    3. Taylor expanded in y around 0

      \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(\log a \cdot \left(t - 1\right) - b\right)}\right)\right), y\right) \]
    4. Step-by-step derivation
      1. --lowering--.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\left(\log a \cdot \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
      2. *-lowering-*.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\log a, \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
      3. log-lowering-log.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
      4. sub-negN/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right), b\right)\right)\right), y\right) \]
      5. metadata-evalN/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + -1\right)\right), b\right)\right)\right), y\right) \]
      6. +-lowering-+.f6493.1%

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \mathsf{+.f64}\left(t, -1\right)\right), b\right)\right)\right), y\right) \]
    5. Simplified93.1%

      \[\leadsto \frac{x \cdot e^{\color{blue}{\log a \cdot \left(t + -1\right) - b}}}{y} \]
    6. Step-by-step derivation
      1. exp-diffN/A

        \[\leadsto \mathsf{/.f64}\left(\left(x \cdot \frac{e^{\log a \cdot \left(t + -1\right)}}{e^{b}}\right), y\right) \]
      2. pow-to-expN/A

        \[\leadsto \mathsf{/.f64}\left(\left(x \cdot \frac{{a}^{\left(t + -1\right)}}{e^{b}}\right), y\right) \]
      3. unpow-prod-upN/A

        \[\leadsto \mathsf{/.f64}\left(\left(x \cdot \frac{{a}^{t} \cdot {a}^{-1}}{e^{b}}\right), y\right) \]
      4. associate-/l*N/A

        \[\leadsto \mathsf{/.f64}\left(\left(x \cdot \left({a}^{t} \cdot \frac{{a}^{-1}}{e^{b}}\right)\right), y\right) \]
      5. associate-*r*N/A

        \[\leadsto \mathsf{/.f64}\left(\left(\left(x \cdot {a}^{t}\right) \cdot \frac{{a}^{-1}}{e^{b}}\right), y\right) \]
      6. *-lowering-*.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(\left(x \cdot {a}^{t}\right), \left(\frac{{a}^{-1}}{e^{b}}\right)\right), y\right) \]
      7. *-lowering-*.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(\mathsf{*.f64}\left(x, \left({a}^{t}\right)\right), \left(\frac{{a}^{-1}}{e^{b}}\right)\right), y\right) \]
      8. pow-lowering-pow.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, t\right)\right), \left(\frac{{a}^{-1}}{e^{b}}\right)\right), y\right) \]
      9. /-lowering-/.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, t\right)\right), \mathsf{/.f64}\left(\left({a}^{-1}\right), \left(e^{b}\right)\right)\right), y\right) \]
      10. unpow-1N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, t\right)\right), \mathsf{/.f64}\left(\left(\frac{1}{a}\right), \left(e^{b}\right)\right)\right), y\right) \]
      11. metadata-evalN/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, t\right)\right), \mathsf{/.f64}\left(\left(\frac{-1 \cdot -1}{a}\right), \left(e^{b}\right)\right)\right), y\right) \]
      12. /-lowering-/.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, t\right)\right), \mathsf{/.f64}\left(\mathsf{/.f64}\left(\left(-1 \cdot -1\right), a\right), \left(e^{b}\right)\right)\right), y\right) \]
      13. metadata-evalN/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, t\right)\right), \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, a\right), \left(e^{b}\right)\right)\right), y\right) \]
      14. exp-lowering-exp.f6484.3%

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, t\right)\right), \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, a\right), \mathsf{exp.f64}\left(b\right)\right)\right), y\right) \]
    7. Applied egg-rr84.3%

      \[\leadsto \frac{\color{blue}{\left(x \cdot {a}^{t}\right) \cdot \frac{\frac{1}{a}}{e^{b}}}}{y} \]
    8. Taylor expanded in t around 0

      \[\leadsto \color{blue}{\frac{x}{a \cdot \left(y \cdot e^{b}\right)}} \]
    9. Step-by-step derivation
      1. /-lowering-/.f64N/A

        \[\leadsto \mathsf{/.f64}\left(x, \color{blue}{\left(a \cdot \left(y \cdot e^{b}\right)\right)}\right) \]
      2. *-commutativeN/A

        \[\leadsto \mathsf{/.f64}\left(x, \left(\left(y \cdot e^{b}\right) \cdot \color{blue}{a}\right)\right) \]
      3. associate-*l*N/A

        \[\leadsto \mathsf{/.f64}\left(x, \left(y \cdot \color{blue}{\left(e^{b} \cdot a\right)}\right)\right) \]
      4. *-commutativeN/A

        \[\leadsto \mathsf{/.f64}\left(x, \left(y \cdot \left(a \cdot \color{blue}{e^{b}}\right)\right)\right) \]
      5. *-lowering-*.f64N/A

        \[\leadsto \mathsf{/.f64}\left(x, \mathsf{*.f64}\left(y, \color{blue}{\left(a \cdot e^{b}\right)}\right)\right) \]
      6. *-lowering-*.f64N/A

        \[\leadsto \mathsf{/.f64}\left(x, \mathsf{*.f64}\left(y, \mathsf{*.f64}\left(a, \color{blue}{\left(e^{b}\right)}\right)\right)\right) \]
      7. exp-lowering-exp.f6476.4%

        \[\leadsto \mathsf{/.f64}\left(x, \mathsf{*.f64}\left(y, \mathsf{*.f64}\left(a, \mathsf{exp.f64}\left(b\right)\right)\right)\right) \]
    10. Simplified76.4%

      \[\leadsto \color{blue}{\frac{x}{y \cdot \left(a \cdot e^{b}\right)}} \]
  3. Recombined 2 regimes into one program.
  4. Add Preprocessing

Alternative 6: 76.2% accurate, 2.7× speedup?

\[\begin{array}{l} \\ \begin{array}{l} t_1 := \frac{\frac{x}{e^{b}}}{y}\\ \mathbf{if}\;b \leq -4.2 \cdot 10^{+14}:\\ \;\;\;\;t\_1\\ \mathbf{elif}\;b \leq 72000000:\\ \;\;\;\;\frac{x \cdot {a}^{\left(t + -1\right)}}{y}\\ \mathbf{else}:\\ \;\;\;\;t\_1\\ \end{array} \end{array} \]
(FPCore (x y z t a b)
 :precision binary64
 (let* ((t_1 (/ (/ x (exp b)) y)))
   (if (<= b -4.2e+14)
     t_1
     (if (<= b 72000000.0) (/ (* x (pow a (+ t -1.0))) y) t_1))))
double code(double x, double y, double z, double t, double a, double b) {
	double t_1 = (x / exp(b)) / y;
	double tmp;
	if (b <= -4.2e+14) {
		tmp = t_1;
	} else if (b <= 72000000.0) {
		tmp = (x * pow(a, (t + -1.0))) / y;
	} else {
		tmp = t_1;
	}
	return tmp;
}
real(8) function code(x, y, z, t, a, b)
    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) :: t_1
    real(8) :: tmp
    t_1 = (x / exp(b)) / y
    if (b <= (-4.2d+14)) then
        tmp = t_1
    else if (b <= 72000000.0d0) then
        tmp = (x * (a ** (t + (-1.0d0)))) / y
    else
        tmp = t_1
    end if
    code = tmp
end function
public static double code(double x, double y, double z, double t, double a, double b) {
	double t_1 = (x / Math.exp(b)) / y;
	double tmp;
	if (b <= -4.2e+14) {
		tmp = t_1;
	} else if (b <= 72000000.0) {
		tmp = (x * Math.pow(a, (t + -1.0))) / y;
	} else {
		tmp = t_1;
	}
	return tmp;
}
def code(x, y, z, t, a, b):
	t_1 = (x / math.exp(b)) / y
	tmp = 0
	if b <= -4.2e+14:
		tmp = t_1
	elif b <= 72000000.0:
		tmp = (x * math.pow(a, (t + -1.0))) / y
	else:
		tmp = t_1
	return tmp
function code(x, y, z, t, a, b)
	t_1 = Float64(Float64(x / exp(b)) / y)
	tmp = 0.0
	if (b <= -4.2e+14)
		tmp = t_1;
	elseif (b <= 72000000.0)
		tmp = Float64(Float64(x * (a ^ Float64(t + -1.0))) / y);
	else
		tmp = t_1;
	end
	return tmp
end
function tmp_2 = code(x, y, z, t, a, b)
	t_1 = (x / exp(b)) / y;
	tmp = 0.0;
	if (b <= -4.2e+14)
		tmp = t_1;
	elseif (b <= 72000000.0)
		tmp = (x * (a ^ (t + -1.0))) / y;
	else
		tmp = t_1;
	end
	tmp_2 = tmp;
end
code[x_, y_, z_, t_, a_, b_] := Block[{t$95$1 = N[(N[(x / N[Exp[b], $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision]}, If[LessEqual[b, -4.2e+14], t$95$1, If[LessEqual[b, 72000000.0], N[(N[(x * N[Power[a, N[(t + -1.0), $MachinePrecision]], $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision], t$95$1]]]
\begin{array}{l}

\\
\begin{array}{l}
t_1 := \frac{\frac{x}{e^{b}}}{y}\\
\mathbf{if}\;b \leq -4.2 \cdot 10^{+14}:\\
\;\;\;\;t\_1\\

\mathbf{elif}\;b \leq 72000000:\\
\;\;\;\;\frac{x \cdot {a}^{\left(t + -1\right)}}{y}\\

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


\end{array}
\end{array}
Derivation
  1. Split input into 2 regimes
  2. if b < -4.2e14 or 7.2e7 < b

    1. Initial program 100.0%

      \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
    2. Add Preprocessing
    3. Taylor expanded in b around inf

      \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(-1 \cdot b\right)}\right)\right), y\right) \]
    4. Step-by-step derivation
      1. mul-1-negN/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(\mathsf{neg}\left(b\right)\right)\right)\right), y\right) \]
      2. neg-sub0N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(0 - b\right)\right)\right), y\right) \]
      3. --lowering--.f6486.3%

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(0, b\right)\right)\right), y\right) \]
    5. Simplified86.3%

      \[\leadsto \frac{x \cdot e^{\color{blue}{0 - b}}}{y} \]
    6. Step-by-step derivation
      1. /-lowering-/.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\left(x \cdot e^{0 - b}\right), \color{blue}{y}\right) \]
      2. sub0-negN/A

        \[\leadsto \mathsf{/.f64}\left(\left(x \cdot e^{\mathsf{neg}\left(b\right)}\right), y\right) \]
      3. exp-negN/A

        \[\leadsto \mathsf{/.f64}\left(\left(x \cdot \frac{1}{e^{b}}\right), y\right) \]
      4. div-invN/A

        \[\leadsto \mathsf{/.f64}\left(\left(\frac{x}{e^{b}}\right), y\right) \]
      5. /-lowering-/.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(x, \left(e^{b}\right)\right), y\right) \]
      6. exp-lowering-exp.f6486.3%

        \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(x, \mathsf{exp.f64}\left(b\right)\right), y\right) \]
    7. Applied egg-rr86.3%

      \[\leadsto \color{blue}{\frac{\frac{x}{e^{b}}}{y}} \]

    if -4.2e14 < b < 7.2e7

    1. Initial program 95.2%

      \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
    2. Add Preprocessing
    3. Taylor expanded in y around 0

      \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(\log a \cdot \left(t - 1\right) - b\right)}\right)\right), y\right) \]
    4. Step-by-step derivation
      1. --lowering--.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\left(\log a \cdot \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
      2. *-lowering-*.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\log a, \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
      3. log-lowering-log.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
      4. sub-negN/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right), b\right)\right)\right), y\right) \]
      5. metadata-evalN/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + -1\right)\right), b\right)\right)\right), y\right) \]
      6. +-lowering-+.f6470.3%

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \mathsf{+.f64}\left(t, -1\right)\right), b\right)\right)\right), y\right) \]
    5. Simplified70.3%

      \[\leadsto \frac{x \cdot e^{\color{blue}{\log a \cdot \left(t + -1\right) - b}}}{y} \]
    6. Taylor expanded in b around 0

      \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(x \cdot e^{\log a \cdot \left(t - 1\right)}\right)}, y\right) \]
    7. Step-by-step derivation
      1. *-lowering-*.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(e^{\log a \cdot \left(t - 1\right)}\right)\right), y\right) \]
      2. exp-to-powN/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left({a}^{\left(t - 1\right)}\right)\right), y\right) \]
      3. pow-lowering-pow.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t - 1\right)\right)\right), y\right) \]
      4. sub-negN/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right)\right), y\right) \]
      5. metadata-evalN/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + -1\right)\right)\right), y\right) \]
      6. +-lowering-+.f6471.7%

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \mathsf{+.f64}\left(t, -1\right)\right)\right), y\right) \]
    8. Simplified71.7%

      \[\leadsto \frac{\color{blue}{x \cdot {a}^{\left(t + -1\right)}}}{y} \]
  3. Recombined 2 regimes into one program.
  4. Add Preprocessing

Alternative 7: 74.0% accurate, 2.7× speedup?

\[\begin{array}{l} \\ \begin{array}{l} t_1 := \frac{\frac{x}{e^{b}}}{y}\\ \mathbf{if}\;b \leq -6 \cdot 10^{+14}:\\ \;\;\;\;t\_1\\ \mathbf{elif}\;b \leq 31000:\\ \;\;\;\;{a}^{\left(t + -1\right)} \cdot \frac{x}{y}\\ \mathbf{else}:\\ \;\;\;\;t\_1\\ \end{array} \end{array} \]
(FPCore (x y z t a b)
 :precision binary64
 (let* ((t_1 (/ (/ x (exp b)) y)))
   (if (<= b -6e+14)
     t_1
     (if (<= b 31000.0) (* (pow a (+ t -1.0)) (/ x y)) t_1))))
double code(double x, double y, double z, double t, double a, double b) {
	double t_1 = (x / exp(b)) / y;
	double tmp;
	if (b <= -6e+14) {
		tmp = t_1;
	} else if (b <= 31000.0) {
		tmp = pow(a, (t + -1.0)) * (x / y);
	} else {
		tmp = t_1;
	}
	return tmp;
}
real(8) function code(x, y, z, t, a, b)
    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) :: t_1
    real(8) :: tmp
    t_1 = (x / exp(b)) / y
    if (b <= (-6d+14)) then
        tmp = t_1
    else if (b <= 31000.0d0) then
        tmp = (a ** (t + (-1.0d0))) * (x / y)
    else
        tmp = t_1
    end if
    code = tmp
end function
public static double code(double x, double y, double z, double t, double a, double b) {
	double t_1 = (x / Math.exp(b)) / y;
	double tmp;
	if (b <= -6e+14) {
		tmp = t_1;
	} else if (b <= 31000.0) {
		tmp = Math.pow(a, (t + -1.0)) * (x / y);
	} else {
		tmp = t_1;
	}
	return tmp;
}
def code(x, y, z, t, a, b):
	t_1 = (x / math.exp(b)) / y
	tmp = 0
	if b <= -6e+14:
		tmp = t_1
	elif b <= 31000.0:
		tmp = math.pow(a, (t + -1.0)) * (x / y)
	else:
		tmp = t_1
	return tmp
function code(x, y, z, t, a, b)
	t_1 = Float64(Float64(x / exp(b)) / y)
	tmp = 0.0
	if (b <= -6e+14)
		tmp = t_1;
	elseif (b <= 31000.0)
		tmp = Float64((a ^ Float64(t + -1.0)) * Float64(x / y));
	else
		tmp = t_1;
	end
	return tmp
end
function tmp_2 = code(x, y, z, t, a, b)
	t_1 = (x / exp(b)) / y;
	tmp = 0.0;
	if (b <= -6e+14)
		tmp = t_1;
	elseif (b <= 31000.0)
		tmp = (a ^ (t + -1.0)) * (x / y);
	else
		tmp = t_1;
	end
	tmp_2 = tmp;
end
code[x_, y_, z_, t_, a_, b_] := Block[{t$95$1 = N[(N[(x / N[Exp[b], $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision]}, If[LessEqual[b, -6e+14], t$95$1, If[LessEqual[b, 31000.0], N[(N[Power[a, N[(t + -1.0), $MachinePrecision]], $MachinePrecision] * N[(x / y), $MachinePrecision]), $MachinePrecision], t$95$1]]]
\begin{array}{l}

\\
\begin{array}{l}
t_1 := \frac{\frac{x}{e^{b}}}{y}\\
\mathbf{if}\;b \leq -6 \cdot 10^{+14}:\\
\;\;\;\;t\_1\\

\mathbf{elif}\;b \leq 31000:\\
\;\;\;\;{a}^{\left(t + -1\right)} \cdot \frac{x}{y}\\

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


\end{array}
\end{array}
Derivation
  1. Split input into 2 regimes
  2. if b < -6e14 or 31000 < b

    1. Initial program 100.0%

      \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
    2. Add Preprocessing
    3. Taylor expanded in b around inf

      \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(-1 \cdot b\right)}\right)\right), y\right) \]
    4. Step-by-step derivation
      1. mul-1-negN/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(\mathsf{neg}\left(b\right)\right)\right)\right), y\right) \]
      2. neg-sub0N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(0 - b\right)\right)\right), y\right) \]
      3. --lowering--.f6486.3%

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(0, b\right)\right)\right), y\right) \]
    5. Simplified86.3%

      \[\leadsto \frac{x \cdot e^{\color{blue}{0 - b}}}{y} \]
    6. Step-by-step derivation
      1. /-lowering-/.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\left(x \cdot e^{0 - b}\right), \color{blue}{y}\right) \]
      2. sub0-negN/A

        \[\leadsto \mathsf{/.f64}\left(\left(x \cdot e^{\mathsf{neg}\left(b\right)}\right), y\right) \]
      3. exp-negN/A

        \[\leadsto \mathsf{/.f64}\left(\left(x \cdot \frac{1}{e^{b}}\right), y\right) \]
      4. div-invN/A

        \[\leadsto \mathsf{/.f64}\left(\left(\frac{x}{e^{b}}\right), y\right) \]
      5. /-lowering-/.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(x, \left(e^{b}\right)\right), y\right) \]
      6. exp-lowering-exp.f6486.3%

        \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(x, \mathsf{exp.f64}\left(b\right)\right), y\right) \]
    7. Applied egg-rr86.3%

      \[\leadsto \color{blue}{\frac{\frac{x}{e^{b}}}{y}} \]

    if -6e14 < b < 31000

    1. Initial program 95.2%

      \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
    2. Add Preprocessing
    3. Taylor expanded in y around 0

      \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(\log a \cdot \left(t - 1\right) - b\right)}\right)\right), y\right) \]
    4. Step-by-step derivation
      1. --lowering--.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\left(\log a \cdot \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
      2. *-lowering-*.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\log a, \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
      3. log-lowering-log.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
      4. sub-negN/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right), b\right)\right)\right), y\right) \]
      5. metadata-evalN/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + -1\right)\right), b\right)\right)\right), y\right) \]
      6. +-lowering-+.f6470.3%

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \mathsf{+.f64}\left(t, -1\right)\right), b\right)\right)\right), y\right) \]
    5. Simplified70.3%

      \[\leadsto \frac{x \cdot e^{\color{blue}{\log a \cdot \left(t + -1\right) - b}}}{y} \]
    6. Taylor expanded in b around 0

      \[\leadsto \color{blue}{\frac{x \cdot e^{\log a \cdot \left(t - 1\right)}}{y}} \]
    7. Step-by-step derivation
      1. *-commutativeN/A

        \[\leadsto \frac{e^{\log a \cdot \left(t - 1\right)} \cdot x}{y} \]
      2. associate-/l*N/A

        \[\leadsto e^{\log a \cdot \left(t - 1\right)} \cdot \color{blue}{\frac{x}{y}} \]
      3. *-lowering-*.f64N/A

        \[\leadsto \mathsf{*.f64}\left(\left(e^{\log a \cdot \left(t - 1\right)}\right), \color{blue}{\left(\frac{x}{y}\right)}\right) \]
      4. exp-to-powN/A

        \[\leadsto \mathsf{*.f64}\left(\left({a}^{\left(t - 1\right)}\right), \left(\frac{\color{blue}{x}}{y}\right)\right) \]
      5. pow-lowering-pow.f64N/A

        \[\leadsto \mathsf{*.f64}\left(\mathsf{pow.f64}\left(a, \left(t - 1\right)\right), \left(\frac{\color{blue}{x}}{y}\right)\right) \]
      6. sub-negN/A

        \[\leadsto \mathsf{*.f64}\left(\mathsf{pow.f64}\left(a, \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right), \left(\frac{x}{y}\right)\right) \]
      7. metadata-evalN/A

        \[\leadsto \mathsf{*.f64}\left(\mathsf{pow.f64}\left(a, \left(t + -1\right)\right), \left(\frac{x}{y}\right)\right) \]
      8. +-lowering-+.f64N/A

        \[\leadsto \mathsf{*.f64}\left(\mathsf{pow.f64}\left(a, \mathsf{+.f64}\left(t, -1\right)\right), \left(\frac{x}{y}\right)\right) \]
      9. /-lowering-/.f6469.5%

        \[\leadsto \mathsf{*.f64}\left(\mathsf{pow.f64}\left(a, \mathsf{+.f64}\left(t, -1\right)\right), \mathsf{/.f64}\left(x, \color{blue}{y}\right)\right) \]
    8. Simplified69.5%

      \[\leadsto \color{blue}{{a}^{\left(t + -1\right)} \cdot \frac{x}{y}} \]
  3. Recombined 2 regimes into one program.
  4. Add Preprocessing

Alternative 8: 67.2% accurate, 2.7× speedup?

\[\begin{array}{l} \\ \begin{array}{l} t_1 := \frac{x}{y} \cdot \frac{{z}^{y}}{a}\\ \mathbf{if}\;y \leq -4.2 \cdot 10^{+215}:\\ \;\;\;\;t\_1\\ \mathbf{elif}\;y \leq 2.4 \cdot 10^{+65}:\\ \;\;\;\;\frac{x}{y \cdot \left(a \cdot e^{b}\right)}\\ \mathbf{else}:\\ \;\;\;\;t\_1\\ \end{array} \end{array} \]
(FPCore (x y z t a b)
 :precision binary64
 (let* ((t_1 (* (/ x y) (/ (pow z y) a))))
   (if (<= y -4.2e+215)
     t_1
     (if (<= y 2.4e+65) (/ x (* y (* a (exp b)))) t_1))))
double code(double x, double y, double z, double t, double a, double b) {
	double t_1 = (x / y) * (pow(z, y) / a);
	double tmp;
	if (y <= -4.2e+215) {
		tmp = t_1;
	} else if (y <= 2.4e+65) {
		tmp = x / (y * (a * exp(b)));
	} else {
		tmp = t_1;
	}
	return tmp;
}
real(8) function code(x, y, z, t, a, b)
    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) :: t_1
    real(8) :: tmp
    t_1 = (x / y) * ((z ** y) / a)
    if (y <= (-4.2d+215)) then
        tmp = t_1
    else if (y <= 2.4d+65) then
        tmp = x / (y * (a * exp(b)))
    else
        tmp = t_1
    end if
    code = tmp
end function
public static double code(double x, double y, double z, double t, double a, double b) {
	double t_1 = (x / y) * (Math.pow(z, y) / a);
	double tmp;
	if (y <= -4.2e+215) {
		tmp = t_1;
	} else if (y <= 2.4e+65) {
		tmp = x / (y * (a * Math.exp(b)));
	} else {
		tmp = t_1;
	}
	return tmp;
}
def code(x, y, z, t, a, b):
	t_1 = (x / y) * (math.pow(z, y) / a)
	tmp = 0
	if y <= -4.2e+215:
		tmp = t_1
	elif y <= 2.4e+65:
		tmp = x / (y * (a * math.exp(b)))
	else:
		tmp = t_1
	return tmp
function code(x, y, z, t, a, b)
	t_1 = Float64(Float64(x / y) * Float64((z ^ y) / a))
	tmp = 0.0
	if (y <= -4.2e+215)
		tmp = t_1;
	elseif (y <= 2.4e+65)
		tmp = Float64(x / Float64(y * Float64(a * exp(b))));
	else
		tmp = t_1;
	end
	return tmp
end
function tmp_2 = code(x, y, z, t, a, b)
	t_1 = (x / y) * ((z ^ y) / a);
	tmp = 0.0;
	if (y <= -4.2e+215)
		tmp = t_1;
	elseif (y <= 2.4e+65)
		tmp = x / (y * (a * exp(b)));
	else
		tmp = t_1;
	end
	tmp_2 = tmp;
end
code[x_, y_, z_, t_, a_, b_] := Block[{t$95$1 = N[(N[(x / y), $MachinePrecision] * N[(N[Power[z, y], $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[y, -4.2e+215], t$95$1, If[LessEqual[y, 2.4e+65], N[(x / N[(y * N[(a * N[Exp[b], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], t$95$1]]]
\begin{array}{l}

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

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

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


\end{array}
\end{array}
Derivation
  1. Split input into 2 regimes
  2. if y < -4.2000000000000003e215 or 2.4000000000000002e65 < y

    1. Initial program 100.0%

      \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
    2. Add Preprocessing
    3. Taylor expanded in b around 0

      \[\leadsto \color{blue}{\frac{x \cdot e^{y \cdot \log z + \log a \cdot \left(t - 1\right)}}{y}} \]
    4. Step-by-step derivation
      1. *-commutativeN/A

        \[\leadsto \frac{e^{y \cdot \log z + \log a \cdot \left(t - 1\right)} \cdot x}{y} \]
      2. associate-/l*N/A

        \[\leadsto e^{y \cdot \log z + \log a \cdot \left(t - 1\right)} \cdot \color{blue}{\frac{x}{y}} \]
      3. *-lowering-*.f64N/A

        \[\leadsto \mathsf{*.f64}\left(\left(e^{y \cdot \log z + \log a \cdot \left(t - 1\right)}\right), \color{blue}{\left(\frac{x}{y}\right)}\right) \]
      4. +-commutativeN/A

        \[\leadsto \mathsf{*.f64}\left(\left(e^{\log a \cdot \left(t - 1\right) + y \cdot \log z}\right), \left(\frac{x}{y}\right)\right) \]
      5. exp-sumN/A

        \[\leadsto \mathsf{*.f64}\left(\left(e^{\log a \cdot \left(t - 1\right)} \cdot e^{y \cdot \log z}\right), \left(\frac{\color{blue}{x}}{y}\right)\right) \]
      6. *-commutativeN/A

        \[\leadsto \mathsf{*.f64}\left(\left(e^{\log a \cdot \left(t - 1\right)} \cdot e^{\log z \cdot y}\right), \left(\frac{x}{y}\right)\right) \]
      7. exp-to-powN/A

        \[\leadsto \mathsf{*.f64}\left(\left(e^{\log a \cdot \left(t - 1\right)} \cdot {z}^{y}\right), \left(\frac{x}{y}\right)\right) \]
      8. *-lowering-*.f64N/A

        \[\leadsto \mathsf{*.f64}\left(\mathsf{*.f64}\left(\left(e^{\log a \cdot \left(t - 1\right)}\right), \left({z}^{y}\right)\right), \left(\frac{\color{blue}{x}}{y}\right)\right) \]
      9. exp-to-powN/A

        \[\leadsto \mathsf{*.f64}\left(\mathsf{*.f64}\left(\left({a}^{\left(t - 1\right)}\right), \left({z}^{y}\right)\right), \left(\frac{x}{y}\right)\right) \]
      10. pow-lowering-pow.f64N/A

        \[\leadsto \mathsf{*.f64}\left(\mathsf{*.f64}\left(\mathsf{pow.f64}\left(a, \left(t - 1\right)\right), \left({z}^{y}\right)\right), \left(\frac{x}{y}\right)\right) \]
      11. sub-negN/A

        \[\leadsto \mathsf{*.f64}\left(\mathsf{*.f64}\left(\mathsf{pow.f64}\left(a, \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right), \left({z}^{y}\right)\right), \left(\frac{x}{y}\right)\right) \]
      12. metadata-evalN/A

        \[\leadsto \mathsf{*.f64}\left(\mathsf{*.f64}\left(\mathsf{pow.f64}\left(a, \left(t + -1\right)\right), \left({z}^{y}\right)\right), \left(\frac{x}{y}\right)\right) \]
      13. +-lowering-+.f64N/A

        \[\leadsto \mathsf{*.f64}\left(\mathsf{*.f64}\left(\mathsf{pow.f64}\left(a, \mathsf{+.f64}\left(t, -1\right)\right), \left({z}^{y}\right)\right), \left(\frac{x}{y}\right)\right) \]
      14. pow-lowering-pow.f64N/A

        \[\leadsto \mathsf{*.f64}\left(\mathsf{*.f64}\left(\mathsf{pow.f64}\left(a, \mathsf{+.f64}\left(t, -1\right)\right), \mathsf{pow.f64}\left(z, y\right)\right), \left(\frac{x}{y}\right)\right) \]
      15. /-lowering-/.f6460.5%

        \[\leadsto \mathsf{*.f64}\left(\mathsf{*.f64}\left(\mathsf{pow.f64}\left(a, \mathsf{+.f64}\left(t, -1\right)\right), \mathsf{pow.f64}\left(z, y\right)\right), \mathsf{/.f64}\left(x, \color{blue}{y}\right)\right) \]
    5. Simplified60.5%

      \[\leadsto \color{blue}{\left({a}^{\left(t + -1\right)} \cdot {z}^{y}\right) \cdot \frac{x}{y}} \]
    6. Taylor expanded in t around 0

      \[\leadsto \mathsf{*.f64}\left(\color{blue}{\left(\frac{{z}^{y}}{a}\right)}, \mathsf{/.f64}\left(x, y\right)\right) \]
    7. Step-by-step derivation
      1. /-lowering-/.f64N/A

        \[\leadsto \mathsf{*.f64}\left(\mathsf{/.f64}\left(\left({z}^{y}\right), a\right), \mathsf{/.f64}\left(\color{blue}{x}, y\right)\right) \]
      2. pow-lowering-pow.f6479.0%

        \[\leadsto \mathsf{*.f64}\left(\mathsf{/.f64}\left(\mathsf{pow.f64}\left(z, y\right), a\right), \mathsf{/.f64}\left(x, y\right)\right) \]
    8. Simplified79.0%

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

    if -4.2000000000000003e215 < y < 2.4000000000000002e65

    1. Initial program 96.6%

      \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
    2. Add Preprocessing
    3. Taylor expanded in y around 0

      \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(\log a \cdot \left(t - 1\right) - b\right)}\right)\right), y\right) \]
    4. Step-by-step derivation
      1. --lowering--.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\left(\log a \cdot \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
      2. *-lowering-*.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\log a, \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
      3. log-lowering-log.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
      4. sub-negN/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right), b\right)\right)\right), y\right) \]
      5. metadata-evalN/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + -1\right)\right), b\right)\right)\right), y\right) \]
      6. +-lowering-+.f6492.6%

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \mathsf{+.f64}\left(t, -1\right)\right), b\right)\right)\right), y\right) \]
    5. Simplified92.6%

      \[\leadsto \frac{x \cdot e^{\color{blue}{\log a \cdot \left(t + -1\right) - b}}}{y} \]
    6. Step-by-step derivation
      1. exp-diffN/A

        \[\leadsto \mathsf{/.f64}\left(\left(x \cdot \frac{e^{\log a \cdot \left(t + -1\right)}}{e^{b}}\right), y\right) \]
      2. pow-to-expN/A

        \[\leadsto \mathsf{/.f64}\left(\left(x \cdot \frac{{a}^{\left(t + -1\right)}}{e^{b}}\right), y\right) \]
      3. unpow-prod-upN/A

        \[\leadsto \mathsf{/.f64}\left(\left(x \cdot \frac{{a}^{t} \cdot {a}^{-1}}{e^{b}}\right), y\right) \]
      4. associate-/l*N/A

        \[\leadsto \mathsf{/.f64}\left(\left(x \cdot \left({a}^{t} \cdot \frac{{a}^{-1}}{e^{b}}\right)\right), y\right) \]
      5. associate-*r*N/A

        \[\leadsto \mathsf{/.f64}\left(\left(\left(x \cdot {a}^{t}\right) \cdot \frac{{a}^{-1}}{e^{b}}\right), y\right) \]
      6. *-lowering-*.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(\left(x \cdot {a}^{t}\right), \left(\frac{{a}^{-1}}{e^{b}}\right)\right), y\right) \]
      7. *-lowering-*.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(\mathsf{*.f64}\left(x, \left({a}^{t}\right)\right), \left(\frac{{a}^{-1}}{e^{b}}\right)\right), y\right) \]
      8. pow-lowering-pow.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, t\right)\right), \left(\frac{{a}^{-1}}{e^{b}}\right)\right), y\right) \]
      9. /-lowering-/.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, t\right)\right), \mathsf{/.f64}\left(\left({a}^{-1}\right), \left(e^{b}\right)\right)\right), y\right) \]
      10. unpow-1N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, t\right)\right), \mathsf{/.f64}\left(\left(\frac{1}{a}\right), \left(e^{b}\right)\right)\right), y\right) \]
      11. metadata-evalN/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, t\right)\right), \mathsf{/.f64}\left(\left(\frac{-1 \cdot -1}{a}\right), \left(e^{b}\right)\right)\right), y\right) \]
      12. /-lowering-/.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, t\right)\right), \mathsf{/.f64}\left(\mathsf{/.f64}\left(\left(-1 \cdot -1\right), a\right), \left(e^{b}\right)\right)\right), y\right) \]
      13. metadata-evalN/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, t\right)\right), \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, a\right), \left(e^{b}\right)\right)\right), y\right) \]
      14. exp-lowering-exp.f6483.9%

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, t\right)\right), \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, a\right), \mathsf{exp.f64}\left(b\right)\right)\right), y\right) \]
    7. Applied egg-rr83.9%

      \[\leadsto \frac{\color{blue}{\left(x \cdot {a}^{t}\right) \cdot \frac{\frac{1}{a}}{e^{b}}}}{y} \]
    8. Taylor expanded in t around 0

      \[\leadsto \color{blue}{\frac{x}{a \cdot \left(y \cdot e^{b}\right)}} \]
    9. Step-by-step derivation
      1. /-lowering-/.f64N/A

        \[\leadsto \mathsf{/.f64}\left(x, \color{blue}{\left(a \cdot \left(y \cdot e^{b}\right)\right)}\right) \]
      2. *-commutativeN/A

        \[\leadsto \mathsf{/.f64}\left(x, \left(\left(y \cdot e^{b}\right) \cdot \color{blue}{a}\right)\right) \]
      3. associate-*l*N/A

        \[\leadsto \mathsf{/.f64}\left(x, \left(y \cdot \color{blue}{\left(e^{b} \cdot a\right)}\right)\right) \]
      4. *-commutativeN/A

        \[\leadsto \mathsf{/.f64}\left(x, \left(y \cdot \left(a \cdot \color{blue}{e^{b}}\right)\right)\right) \]
      5. *-lowering-*.f64N/A

        \[\leadsto \mathsf{/.f64}\left(x, \mathsf{*.f64}\left(y, \color{blue}{\left(a \cdot e^{b}\right)}\right)\right) \]
      6. *-lowering-*.f64N/A

        \[\leadsto \mathsf{/.f64}\left(x, \mathsf{*.f64}\left(y, \mathsf{*.f64}\left(a, \color{blue}{\left(e^{b}\right)}\right)\right)\right) \]
      7. exp-lowering-exp.f6476.1%

        \[\leadsto \mathsf{/.f64}\left(x, \mathsf{*.f64}\left(y, \mathsf{*.f64}\left(a, \mathsf{exp.f64}\left(b\right)\right)\right)\right) \]
    10. Simplified76.1%

      \[\leadsto \color{blue}{\frac{x}{y \cdot \left(a \cdot e^{b}\right)}} \]
  3. Recombined 2 regimes into one program.
  4. Final simplification77.0%

    \[\leadsto \begin{array}{l} \mathbf{if}\;y \leq -4.2 \cdot 10^{+215}:\\ \;\;\;\;\frac{x}{y} \cdot \frac{{z}^{y}}{a}\\ \mathbf{elif}\;y \leq 2.4 \cdot 10^{+65}:\\ \;\;\;\;\frac{x}{y \cdot \left(a \cdot e^{b}\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{x}{y} \cdot \frac{{z}^{y}}{a}\\ \end{array} \]
  5. Add Preprocessing

Alternative 9: 76.1% accurate, 2.7× speedup?

\[\begin{array}{l} \\ \begin{array}{l} t_1 := \frac{x \cdot {a}^{t}}{y}\\ \mathbf{if}\;t \leq -35000000:\\ \;\;\;\;t\_1\\ \mathbf{elif}\;t \leq 6.2:\\ \;\;\;\;\frac{x}{y \cdot \left(a \cdot e^{b}\right)}\\ \mathbf{else}:\\ \;\;\;\;t\_1\\ \end{array} \end{array} \]
(FPCore (x y z t a b)
 :precision binary64
 (let* ((t_1 (/ (* x (pow a t)) y)))
   (if (<= t -35000000.0) t_1 (if (<= t 6.2) (/ x (* y (* a (exp b)))) t_1))))
double code(double x, double y, double z, double t, double a, double b) {
	double t_1 = (x * pow(a, t)) / y;
	double tmp;
	if (t <= -35000000.0) {
		tmp = t_1;
	} else if (t <= 6.2) {
		tmp = x / (y * (a * exp(b)));
	} else {
		tmp = t_1;
	}
	return tmp;
}
real(8) function code(x, y, z, t, a, b)
    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) :: t_1
    real(8) :: tmp
    t_1 = (x * (a ** t)) / y
    if (t <= (-35000000.0d0)) then
        tmp = t_1
    else if (t <= 6.2d0) then
        tmp = x / (y * (a * exp(b)))
    else
        tmp = t_1
    end if
    code = tmp
end function
public static double code(double x, double y, double z, double t, double a, double b) {
	double t_1 = (x * Math.pow(a, t)) / y;
	double tmp;
	if (t <= -35000000.0) {
		tmp = t_1;
	} else if (t <= 6.2) {
		tmp = x / (y * (a * Math.exp(b)));
	} else {
		tmp = t_1;
	}
	return tmp;
}
def code(x, y, z, t, a, b):
	t_1 = (x * math.pow(a, t)) / y
	tmp = 0
	if t <= -35000000.0:
		tmp = t_1
	elif t <= 6.2:
		tmp = x / (y * (a * math.exp(b)))
	else:
		tmp = t_1
	return tmp
function code(x, y, z, t, a, b)
	t_1 = Float64(Float64(x * (a ^ t)) / y)
	tmp = 0.0
	if (t <= -35000000.0)
		tmp = t_1;
	elseif (t <= 6.2)
		tmp = Float64(x / Float64(y * Float64(a * exp(b))));
	else
		tmp = t_1;
	end
	return tmp
end
function tmp_2 = code(x, y, z, t, a, b)
	t_1 = (x * (a ^ t)) / y;
	tmp = 0.0;
	if (t <= -35000000.0)
		tmp = t_1;
	elseif (t <= 6.2)
		tmp = x / (y * (a * exp(b)));
	else
		tmp = t_1;
	end
	tmp_2 = tmp;
end
code[x_, y_, z_, t_, a_, b_] := Block[{t$95$1 = N[(N[(x * N[Power[a, t], $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision]}, If[LessEqual[t, -35000000.0], t$95$1, If[LessEqual[t, 6.2], N[(x / N[(y * N[(a * N[Exp[b], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], t$95$1]]]
\begin{array}{l}

\\
\begin{array}{l}
t_1 := \frac{x \cdot {a}^{t}}{y}\\
\mathbf{if}\;t \leq -35000000:\\
\;\;\;\;t\_1\\

\mathbf{elif}\;t \leq 6.2:\\
\;\;\;\;\frac{x}{y \cdot \left(a \cdot e^{b}\right)}\\

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


\end{array}
\end{array}
Derivation
  1. Split input into 2 regimes
  2. if t < -3.5e7 or 6.20000000000000018 < t

    1. Initial program 100.0%

      \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
    2. Add Preprocessing
    3. Taylor expanded in y around 0

      \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(\log a \cdot \left(t - 1\right) - b\right)}\right)\right), y\right) \]
    4. Step-by-step derivation
      1. --lowering--.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\left(\log a \cdot \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
      2. *-lowering-*.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\log a, \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
      3. log-lowering-log.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
      4. sub-negN/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right), b\right)\right)\right), y\right) \]
      5. metadata-evalN/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + -1\right)\right), b\right)\right)\right), y\right) \]
      6. +-lowering-+.f6486.2%

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \mathsf{+.f64}\left(t, -1\right)\right), b\right)\right)\right), y\right) \]
    5. Simplified86.2%

      \[\leadsto \frac{x \cdot e^{\color{blue}{\log a \cdot \left(t + -1\right) - b}}}{y} \]
    6. Taylor expanded in b around 0

      \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(x \cdot e^{\log a \cdot \left(t - 1\right)}\right)}, y\right) \]
    7. Step-by-step derivation
      1. *-lowering-*.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(e^{\log a \cdot \left(t - 1\right)}\right)\right), y\right) \]
      2. exp-to-powN/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left({a}^{\left(t - 1\right)}\right)\right), y\right) \]
      3. pow-lowering-pow.f64N/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t - 1\right)\right)\right), y\right) \]
      4. sub-negN/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right)\right), y\right) \]
      5. metadata-evalN/A

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + -1\right)\right)\right), y\right) \]
      6. +-lowering-+.f6476.7%

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \mathsf{+.f64}\left(t, -1\right)\right)\right), y\right) \]
    8. Simplified76.7%

      \[\leadsto \frac{\color{blue}{x \cdot {a}^{\left(t + -1\right)}}}{y} \]
    9. Taylor expanded in t around inf

      \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \color{blue}{t}\right)\right), y\right) \]
    10. Step-by-step derivation
      1. Simplified76.7%

        \[\leadsto \frac{x \cdot {a}^{\color{blue}{t}}}{y} \]

      if -3.5e7 < t < 6.20000000000000018

      1. Initial program 95.7%

        \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
      2. Add Preprocessing
      3. Taylor expanded in y around 0

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(\log a \cdot \left(t - 1\right) - b\right)}\right)\right), y\right) \]
      4. Step-by-step derivation
        1. --lowering--.f64N/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\left(\log a \cdot \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
        2. *-lowering-*.f64N/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\log a, \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
        3. log-lowering-log.f64N/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
        4. sub-negN/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right), b\right)\right)\right), y\right) \]
        5. metadata-evalN/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + -1\right)\right), b\right)\right)\right), y\right) \]
        6. +-lowering-+.f6472.8%

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \mathsf{+.f64}\left(t, -1\right)\right), b\right)\right)\right), y\right) \]
      5. Simplified72.8%

        \[\leadsto \frac{x \cdot e^{\color{blue}{\log a \cdot \left(t + -1\right) - b}}}{y} \]
      6. Step-by-step derivation
        1. exp-diffN/A

          \[\leadsto \mathsf{/.f64}\left(\left(x \cdot \frac{e^{\log a \cdot \left(t + -1\right)}}{e^{b}}\right), y\right) \]
        2. pow-to-expN/A

          \[\leadsto \mathsf{/.f64}\left(\left(x \cdot \frac{{a}^{\left(t + -1\right)}}{e^{b}}\right), y\right) \]
        3. unpow-prod-upN/A

          \[\leadsto \mathsf{/.f64}\left(\left(x \cdot \frac{{a}^{t} \cdot {a}^{-1}}{e^{b}}\right), y\right) \]
        4. associate-/l*N/A

          \[\leadsto \mathsf{/.f64}\left(\left(x \cdot \left({a}^{t} \cdot \frac{{a}^{-1}}{e^{b}}\right)\right), y\right) \]
        5. associate-*r*N/A

          \[\leadsto \mathsf{/.f64}\left(\left(\left(x \cdot {a}^{t}\right) \cdot \frac{{a}^{-1}}{e^{b}}\right), y\right) \]
        6. *-lowering-*.f64N/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(\left(x \cdot {a}^{t}\right), \left(\frac{{a}^{-1}}{e^{b}}\right)\right), y\right) \]
        7. *-lowering-*.f64N/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(\mathsf{*.f64}\left(x, \left({a}^{t}\right)\right), \left(\frac{{a}^{-1}}{e^{b}}\right)\right), y\right) \]
        8. pow-lowering-pow.f64N/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, t\right)\right), \left(\frac{{a}^{-1}}{e^{b}}\right)\right), y\right) \]
        9. /-lowering-/.f64N/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, t\right)\right), \mathsf{/.f64}\left(\left({a}^{-1}\right), \left(e^{b}\right)\right)\right), y\right) \]
        10. unpow-1N/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, t\right)\right), \mathsf{/.f64}\left(\left(\frac{1}{a}\right), \left(e^{b}\right)\right)\right), y\right) \]
        11. metadata-evalN/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, t\right)\right), \mathsf{/.f64}\left(\left(\frac{-1 \cdot -1}{a}\right), \left(e^{b}\right)\right)\right), y\right) \]
        12. /-lowering-/.f64N/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, t\right)\right), \mathsf{/.f64}\left(\mathsf{/.f64}\left(\left(-1 \cdot -1\right), a\right), \left(e^{b}\right)\right)\right), y\right) \]
        13. metadata-evalN/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, t\right)\right), \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, a\right), \left(e^{b}\right)\right)\right), y\right) \]
        14. exp-lowering-exp.f6473.0%

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, t\right)\right), \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, a\right), \mathsf{exp.f64}\left(b\right)\right)\right), y\right) \]
      7. Applied egg-rr73.0%

        \[\leadsto \frac{\color{blue}{\left(x \cdot {a}^{t}\right) \cdot \frac{\frac{1}{a}}{e^{b}}}}{y} \]
      8. Taylor expanded in t around 0

        \[\leadsto \color{blue}{\frac{x}{a \cdot \left(y \cdot e^{b}\right)}} \]
      9. Step-by-step derivation
        1. /-lowering-/.f64N/A

          \[\leadsto \mathsf{/.f64}\left(x, \color{blue}{\left(a \cdot \left(y \cdot e^{b}\right)\right)}\right) \]
        2. *-commutativeN/A

          \[\leadsto \mathsf{/.f64}\left(x, \left(\left(y \cdot e^{b}\right) \cdot \color{blue}{a}\right)\right) \]
        3. associate-*l*N/A

          \[\leadsto \mathsf{/.f64}\left(x, \left(y \cdot \color{blue}{\left(e^{b} \cdot a\right)}\right)\right) \]
        4. *-commutativeN/A

          \[\leadsto \mathsf{/.f64}\left(x, \left(y \cdot \left(a \cdot \color{blue}{e^{b}}\right)\right)\right) \]
        5. *-lowering-*.f64N/A

          \[\leadsto \mathsf{/.f64}\left(x, \mathsf{*.f64}\left(y, \color{blue}{\left(a \cdot e^{b}\right)}\right)\right) \]
        6. *-lowering-*.f64N/A

          \[\leadsto \mathsf{/.f64}\left(x, \mathsf{*.f64}\left(y, \mathsf{*.f64}\left(a, \color{blue}{\left(e^{b}\right)}\right)\right)\right) \]
        7. exp-lowering-exp.f6473.1%

          \[\leadsto \mathsf{/.f64}\left(x, \mathsf{*.f64}\left(y, \mathsf{*.f64}\left(a, \mathsf{exp.f64}\left(b\right)\right)\right)\right) \]
      10. Simplified73.1%

        \[\leadsto \color{blue}{\frac{x}{y \cdot \left(a \cdot e^{b}\right)}} \]
    11. Recombined 2 regimes into one program.
    12. Add Preprocessing

    Alternative 10: 65.2% accurate, 2.7× speedup?

    \[\begin{array}{l} \\ \begin{array}{l} t_1 := \frac{\frac{x}{e^{b}}}{y}\\ \mathbf{if}\;b \leq -1 \cdot 10^{+15}:\\ \;\;\;\;t\_1\\ \mathbf{elif}\;b \leq 1.65 \cdot 10^{-36}:\\ \;\;\;\;\frac{x \cdot {a}^{t}}{y}\\ \mathbf{else}:\\ \;\;\;\;t\_1\\ \end{array} \end{array} \]
    (FPCore (x y z t a b)
     :precision binary64
     (let* ((t_1 (/ (/ x (exp b)) y)))
       (if (<= b -1e+15) t_1 (if (<= b 1.65e-36) (/ (* x (pow a t)) y) t_1))))
    double code(double x, double y, double z, double t, double a, double b) {
    	double t_1 = (x / exp(b)) / y;
    	double tmp;
    	if (b <= -1e+15) {
    		tmp = t_1;
    	} else if (b <= 1.65e-36) {
    		tmp = (x * pow(a, t)) / y;
    	} else {
    		tmp = t_1;
    	}
    	return tmp;
    }
    
    real(8) function code(x, y, z, t, a, b)
        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) :: t_1
        real(8) :: tmp
        t_1 = (x / exp(b)) / y
        if (b <= (-1d+15)) then
            tmp = t_1
        else if (b <= 1.65d-36) then
            tmp = (x * (a ** t)) / y
        else
            tmp = t_1
        end if
        code = tmp
    end function
    
    public static double code(double x, double y, double z, double t, double a, double b) {
    	double t_1 = (x / Math.exp(b)) / y;
    	double tmp;
    	if (b <= -1e+15) {
    		tmp = t_1;
    	} else if (b <= 1.65e-36) {
    		tmp = (x * Math.pow(a, t)) / y;
    	} else {
    		tmp = t_1;
    	}
    	return tmp;
    }
    
    def code(x, y, z, t, a, b):
    	t_1 = (x / math.exp(b)) / y
    	tmp = 0
    	if b <= -1e+15:
    		tmp = t_1
    	elif b <= 1.65e-36:
    		tmp = (x * math.pow(a, t)) / y
    	else:
    		tmp = t_1
    	return tmp
    
    function code(x, y, z, t, a, b)
    	t_1 = Float64(Float64(x / exp(b)) / y)
    	tmp = 0.0
    	if (b <= -1e+15)
    		tmp = t_1;
    	elseif (b <= 1.65e-36)
    		tmp = Float64(Float64(x * (a ^ t)) / y);
    	else
    		tmp = t_1;
    	end
    	return tmp
    end
    
    function tmp_2 = code(x, y, z, t, a, b)
    	t_1 = (x / exp(b)) / y;
    	tmp = 0.0;
    	if (b <= -1e+15)
    		tmp = t_1;
    	elseif (b <= 1.65e-36)
    		tmp = (x * (a ^ t)) / y;
    	else
    		tmp = t_1;
    	end
    	tmp_2 = tmp;
    end
    
    code[x_, y_, z_, t_, a_, b_] := Block[{t$95$1 = N[(N[(x / N[Exp[b], $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision]}, If[LessEqual[b, -1e+15], t$95$1, If[LessEqual[b, 1.65e-36], N[(N[(x * N[Power[a, t], $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision], t$95$1]]]
    
    \begin{array}{l}
    
    \\
    \begin{array}{l}
    t_1 := \frac{\frac{x}{e^{b}}}{y}\\
    \mathbf{if}\;b \leq -1 \cdot 10^{+15}:\\
    \;\;\;\;t\_1\\
    
    \mathbf{elif}\;b \leq 1.65 \cdot 10^{-36}:\\
    \;\;\;\;\frac{x \cdot {a}^{t}}{y}\\
    
    \mathbf{else}:\\
    \;\;\;\;t\_1\\
    
    
    \end{array}
    \end{array}
    
    Derivation
    1. Split input into 2 regimes
    2. if b < -1e15 or 1.64999999999999995e-36 < b

      1. Initial program 100.0%

        \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
      2. Add Preprocessing
      3. Taylor expanded in b around inf

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(-1 \cdot b\right)}\right)\right), y\right) \]
      4. Step-by-step derivation
        1. mul-1-negN/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(\mathsf{neg}\left(b\right)\right)\right)\right), y\right) \]
        2. neg-sub0N/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(0 - b\right)\right)\right), y\right) \]
        3. --lowering--.f6485.2%

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(0, b\right)\right)\right), y\right) \]
      5. Simplified85.2%

        \[\leadsto \frac{x \cdot e^{\color{blue}{0 - b}}}{y} \]
      6. Step-by-step derivation
        1. /-lowering-/.f64N/A

          \[\leadsto \mathsf{/.f64}\left(\left(x \cdot e^{0 - b}\right), \color{blue}{y}\right) \]
        2. sub0-negN/A

          \[\leadsto \mathsf{/.f64}\left(\left(x \cdot e^{\mathsf{neg}\left(b\right)}\right), y\right) \]
        3. exp-negN/A

          \[\leadsto \mathsf{/.f64}\left(\left(x \cdot \frac{1}{e^{b}}\right), y\right) \]
        4. div-invN/A

          \[\leadsto \mathsf{/.f64}\left(\left(\frac{x}{e^{b}}\right), y\right) \]
        5. /-lowering-/.f64N/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(x, \left(e^{b}\right)\right), y\right) \]
        6. exp-lowering-exp.f6485.2%

          \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(x, \mathsf{exp.f64}\left(b\right)\right), y\right) \]
      7. Applied egg-rr85.2%

        \[\leadsto \color{blue}{\frac{\frac{x}{e^{b}}}{y}} \]

      if -1e15 < b < 1.64999999999999995e-36

      1. Initial program 95.0%

        \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
      2. Add Preprocessing
      3. Taylor expanded in y around 0

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(\log a \cdot \left(t - 1\right) - b\right)}\right)\right), y\right) \]
      4. Step-by-step derivation
        1. --lowering--.f64N/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\left(\log a \cdot \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
        2. *-lowering-*.f64N/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\log a, \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
        3. log-lowering-log.f64N/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
        4. sub-negN/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right), b\right)\right)\right), y\right) \]
        5. metadata-evalN/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + -1\right)\right), b\right)\right)\right), y\right) \]
        6. +-lowering-+.f6470.2%

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \mathsf{+.f64}\left(t, -1\right)\right), b\right)\right)\right), y\right) \]
      5. Simplified70.2%

        \[\leadsto \frac{x \cdot e^{\color{blue}{\log a \cdot \left(t + -1\right) - b}}}{y} \]
      6. Taylor expanded in b around 0

        \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(x \cdot e^{\log a \cdot \left(t - 1\right)}\right)}, y\right) \]
      7. Step-by-step derivation
        1. *-lowering-*.f64N/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(e^{\log a \cdot \left(t - 1\right)}\right)\right), y\right) \]
        2. exp-to-powN/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left({a}^{\left(t - 1\right)}\right)\right), y\right) \]
        3. pow-lowering-pow.f64N/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t - 1\right)\right)\right), y\right) \]
        4. sub-negN/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right)\right), y\right) \]
        5. metadata-evalN/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + -1\right)\right)\right), y\right) \]
        6. +-lowering-+.f6471.6%

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \mathsf{+.f64}\left(t, -1\right)\right)\right), y\right) \]
      8. Simplified71.6%

        \[\leadsto \frac{\color{blue}{x \cdot {a}^{\left(t + -1\right)}}}{y} \]
      9. Taylor expanded in t around inf

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \color{blue}{t}\right)\right), y\right) \]
      10. Step-by-step derivation
        1. Simplified53.2%

          \[\leadsto \frac{x \cdot {a}^{\color{blue}{t}}}{y} \]
      11. Recombined 2 regimes into one program.
      12. Add Preprocessing

      Alternative 11: 51.6% accurate, 7.5× speedup?

      \[\begin{array}{l} \\ \begin{array}{l} t_1 := x \cdot \left(b \cdot b\right)\\ \mathbf{if}\;b \leq -8.2 \cdot 10^{-133}:\\ \;\;\;\;\frac{\frac{1}{y}}{\frac{\frac{18}{b \cdot t\_1} - \left(\frac{6}{x} + \left(\frac{18}{x \cdot b} + \frac{18}{t\_1}\right)\right)}{b \cdot \left(b \cdot b\right)}}\\ \mathbf{elif}\;b \leq -2.6 \cdot 10^{-238}:\\ \;\;\;\;\frac{\frac{x}{a}}{y}\\ \mathbf{elif}\;b \leq 6.6 \cdot 10^{-255}:\\ \;\;\;\;\frac{x \cdot \left(b \cdot \left(b \cdot 0.5\right)\right)}{y}\\ \mathbf{elif}\;b \leq 105000000000:\\ \;\;\;\;\frac{\frac{x}{y}}{a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{\frac{1 + b \cdot \left(1 + b \cdot \left(0.5 + b \cdot 0.16666666666666666\right)\right)}{x}}}{y}\\ \end{array} \end{array} \]
      (FPCore (x y z t a b)
       :precision binary64
       (let* ((t_1 (* x (* b b))))
         (if (<= b -8.2e-133)
           (/
            (/ 1.0 y)
            (/
             (- (/ 18.0 (* b t_1)) (+ (/ 6.0 x) (+ (/ 18.0 (* x b)) (/ 18.0 t_1))))
             (* b (* b b))))
           (if (<= b -2.6e-238)
             (/ (/ x a) y)
             (if (<= b 6.6e-255)
               (/ (* x (* b (* b 0.5))) y)
               (if (<= b 105000000000.0)
                 (/ (/ x y) a)
                 (/
                  (/
                   1.0
                   (/
                    (+ 1.0 (* b (+ 1.0 (* b (+ 0.5 (* b 0.16666666666666666))))))
                    x))
                  y)))))))
      double code(double x, double y, double z, double t, double a, double b) {
      	double t_1 = x * (b * b);
      	double tmp;
      	if (b <= -8.2e-133) {
      		tmp = (1.0 / y) / (((18.0 / (b * t_1)) - ((6.0 / x) + ((18.0 / (x * b)) + (18.0 / t_1)))) / (b * (b * b)));
      	} else if (b <= -2.6e-238) {
      		tmp = (x / a) / y;
      	} else if (b <= 6.6e-255) {
      		tmp = (x * (b * (b * 0.5))) / y;
      	} else if (b <= 105000000000.0) {
      		tmp = (x / y) / a;
      	} else {
      		tmp = (1.0 / ((1.0 + (b * (1.0 + (b * (0.5 + (b * 0.16666666666666666)))))) / x)) / y;
      	}
      	return tmp;
      }
      
      real(8) function code(x, y, z, t, a, b)
          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) :: t_1
          real(8) :: tmp
          t_1 = x * (b * b)
          if (b <= (-8.2d-133)) then
              tmp = (1.0d0 / y) / (((18.0d0 / (b * t_1)) - ((6.0d0 / x) + ((18.0d0 / (x * b)) + (18.0d0 / t_1)))) / (b * (b * b)))
          else if (b <= (-2.6d-238)) then
              tmp = (x / a) / y
          else if (b <= 6.6d-255) then
              tmp = (x * (b * (b * 0.5d0))) / y
          else if (b <= 105000000000.0d0) then
              tmp = (x / y) / a
          else
              tmp = (1.0d0 / ((1.0d0 + (b * (1.0d0 + (b * (0.5d0 + (b * 0.16666666666666666d0)))))) / x)) / y
          end if
          code = tmp
      end function
      
      public static double code(double x, double y, double z, double t, double a, double b) {
      	double t_1 = x * (b * b);
      	double tmp;
      	if (b <= -8.2e-133) {
      		tmp = (1.0 / y) / (((18.0 / (b * t_1)) - ((6.0 / x) + ((18.0 / (x * b)) + (18.0 / t_1)))) / (b * (b * b)));
      	} else if (b <= -2.6e-238) {
      		tmp = (x / a) / y;
      	} else if (b <= 6.6e-255) {
      		tmp = (x * (b * (b * 0.5))) / y;
      	} else if (b <= 105000000000.0) {
      		tmp = (x / y) / a;
      	} else {
      		tmp = (1.0 / ((1.0 + (b * (1.0 + (b * (0.5 + (b * 0.16666666666666666)))))) / x)) / y;
      	}
      	return tmp;
      }
      
      def code(x, y, z, t, a, b):
      	t_1 = x * (b * b)
      	tmp = 0
      	if b <= -8.2e-133:
      		tmp = (1.0 / y) / (((18.0 / (b * t_1)) - ((6.0 / x) + ((18.0 / (x * b)) + (18.0 / t_1)))) / (b * (b * b)))
      	elif b <= -2.6e-238:
      		tmp = (x / a) / y
      	elif b <= 6.6e-255:
      		tmp = (x * (b * (b * 0.5))) / y
      	elif b <= 105000000000.0:
      		tmp = (x / y) / a
      	else:
      		tmp = (1.0 / ((1.0 + (b * (1.0 + (b * (0.5 + (b * 0.16666666666666666)))))) / x)) / y
      	return tmp
      
      function code(x, y, z, t, a, b)
      	t_1 = Float64(x * Float64(b * b))
      	tmp = 0.0
      	if (b <= -8.2e-133)
      		tmp = Float64(Float64(1.0 / y) / Float64(Float64(Float64(18.0 / Float64(b * t_1)) - Float64(Float64(6.0 / x) + Float64(Float64(18.0 / Float64(x * b)) + Float64(18.0 / t_1)))) / Float64(b * Float64(b * b))));
      	elseif (b <= -2.6e-238)
      		tmp = Float64(Float64(x / a) / y);
      	elseif (b <= 6.6e-255)
      		tmp = Float64(Float64(x * Float64(b * Float64(b * 0.5))) / y);
      	elseif (b <= 105000000000.0)
      		tmp = Float64(Float64(x / y) / a);
      	else
      		tmp = Float64(Float64(1.0 / Float64(Float64(1.0 + Float64(b * Float64(1.0 + Float64(b * Float64(0.5 + Float64(b * 0.16666666666666666)))))) / x)) / y);
      	end
      	return tmp
      end
      
      function tmp_2 = code(x, y, z, t, a, b)
      	t_1 = x * (b * b);
      	tmp = 0.0;
      	if (b <= -8.2e-133)
      		tmp = (1.0 / y) / (((18.0 / (b * t_1)) - ((6.0 / x) + ((18.0 / (x * b)) + (18.0 / t_1)))) / (b * (b * b)));
      	elseif (b <= -2.6e-238)
      		tmp = (x / a) / y;
      	elseif (b <= 6.6e-255)
      		tmp = (x * (b * (b * 0.5))) / y;
      	elseif (b <= 105000000000.0)
      		tmp = (x / y) / a;
      	else
      		tmp = (1.0 / ((1.0 + (b * (1.0 + (b * (0.5 + (b * 0.16666666666666666)))))) / x)) / y;
      	end
      	tmp_2 = tmp;
      end
      
      code[x_, y_, z_, t_, a_, b_] := Block[{t$95$1 = N[(x * N[(b * b), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[b, -8.2e-133], N[(N[(1.0 / y), $MachinePrecision] / N[(N[(N[(18.0 / N[(b * t$95$1), $MachinePrecision]), $MachinePrecision] - N[(N[(6.0 / x), $MachinePrecision] + N[(N[(18.0 / N[(x * b), $MachinePrecision]), $MachinePrecision] + N[(18.0 / t$95$1), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / N[(b * N[(b * b), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[b, -2.6e-238], N[(N[(x / a), $MachinePrecision] / y), $MachinePrecision], If[LessEqual[b, 6.6e-255], N[(N[(x * N[(b * N[(b * 0.5), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision], If[LessEqual[b, 105000000000.0], N[(N[(x / y), $MachinePrecision] / a), $MachinePrecision], N[(N[(1.0 / N[(N[(1.0 + N[(b * N[(1.0 + N[(b * N[(0.5 + N[(b * 0.16666666666666666), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / x), $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision]]]]]]
      
      \begin{array}{l}
      
      \\
      \begin{array}{l}
      t_1 := x \cdot \left(b \cdot b\right)\\
      \mathbf{if}\;b \leq -8.2 \cdot 10^{-133}:\\
      \;\;\;\;\frac{\frac{1}{y}}{\frac{\frac{18}{b \cdot t\_1} - \left(\frac{6}{x} + \left(\frac{18}{x \cdot b} + \frac{18}{t\_1}\right)\right)}{b \cdot \left(b \cdot b\right)}}\\
      
      \mathbf{elif}\;b \leq -2.6 \cdot 10^{-238}:\\
      \;\;\;\;\frac{\frac{x}{a}}{y}\\
      
      \mathbf{elif}\;b \leq 6.6 \cdot 10^{-255}:\\
      \;\;\;\;\frac{x \cdot \left(b \cdot \left(b \cdot 0.5\right)\right)}{y}\\
      
      \mathbf{elif}\;b \leq 105000000000:\\
      \;\;\;\;\frac{\frac{x}{y}}{a}\\
      
      \mathbf{else}:\\
      \;\;\;\;\frac{\frac{1}{\frac{1 + b \cdot \left(1 + b \cdot \left(0.5 + b \cdot 0.16666666666666666\right)\right)}{x}}}{y}\\
      
      
      \end{array}
      \end{array}
      
      Derivation
      1. Split input into 5 regimes
      2. if b < -8.20000000000000045e-133

        1. Initial program 99.7%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in b around inf

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(-1 \cdot b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. mul-1-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(\mathsf{neg}\left(b\right)\right)\right)\right), y\right) \]
          2. neg-sub0N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(0 - b\right)\right)\right), y\right) \]
          3. --lowering--.f6467.9%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(0, b\right)\right)\right), y\right) \]
        5. Simplified67.9%

          \[\leadsto \frac{x \cdot e^{\color{blue}{0 - b}}}{y} \]
        6. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(x + b \cdot \left(-1 \cdot x + b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right)\right)}, y\right) \]
        7. Step-by-step derivation
          1. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \left(b \cdot \left(-1 \cdot x + b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right)\right)\right), y\right) \]
          2. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \left(-1 \cdot x + b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right)\right)\right), y\right) \]
          3. +-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \left(b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right) + -1 \cdot x\right)\right)\right), y\right) \]
          4. mul-1-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \left(b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right) + \left(\mathsf{neg}\left(x\right)\right)\right)\right)\right), y\right) \]
          5. unsub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \left(b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right) - x\right)\right)\right), y\right) \]
          6. --lowering--.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\left(b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right), x\right)\right)\right), y\right) \]
          7. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right), x\right)\right)\right), y\right) \]
          8. associate-*r*N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \left(\left(\frac{-1}{6} \cdot b\right) \cdot x + \frac{1}{2} \cdot x\right)\right), x\right)\right)\right), y\right) \]
          9. distribute-rgt-outN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \left(x \cdot \left(\frac{-1}{6} \cdot b + \frac{1}{2}\right)\right)\right), x\right)\right)\right), y\right) \]
          10. +-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \left(x \cdot \left(\frac{1}{2} + \frac{-1}{6} \cdot b\right)\right)\right), x\right)\right)\right), y\right) \]
          11. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(x, \left(\frac{1}{2} + \frac{-1}{6} \cdot b\right)\right)\right), x\right)\right)\right), y\right) \]
          12. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(x, \mathsf{+.f64}\left(\frac{1}{2}, \left(\frac{-1}{6} \cdot b\right)\right)\right)\right), x\right)\right)\right), y\right) \]
          13. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(x, \mathsf{+.f64}\left(\frac{1}{2}, \left(b \cdot \frac{-1}{6}\right)\right)\right)\right), x\right)\right)\right), y\right) \]
          14. *-lowering-*.f6459.6%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(x, \mathsf{+.f64}\left(\frac{1}{2}, \mathsf{*.f64}\left(b, \frac{-1}{6}\right)\right)\right)\right), x\right)\right)\right), y\right) \]
        8. Simplified59.6%

          \[\leadsto \frac{\color{blue}{x + b \cdot \left(b \cdot \left(x \cdot \left(0.5 + b \cdot -0.16666666666666666\right)\right) - x\right)}}{y} \]
        9. Step-by-step derivation
          1. clear-numN/A

            \[\leadsto \frac{1}{\color{blue}{\frac{y}{x + b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)}}} \]
          2. associate-/r/N/A

            \[\leadsto \frac{1}{y} \cdot \color{blue}{\left(x + b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right)} \]
          3. flip3-+N/A

            \[\leadsto \frac{1}{y} \cdot \frac{{x}^{3} + {\left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right)}^{3}}{\color{blue}{x \cdot x + \left(\left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) \cdot \left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) - x \cdot \left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right)\right)}} \]
          4. clear-numN/A

            \[\leadsto \frac{1}{y} \cdot \frac{1}{\color{blue}{\frac{x \cdot x + \left(\left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) \cdot \left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) - x \cdot \left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right)\right)}{{x}^{3} + {\left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right)}^{3}}}} \]
          5. un-div-invN/A

            \[\leadsto \frac{\frac{1}{y}}{\color{blue}{\frac{x \cdot x + \left(\left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) \cdot \left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) - x \cdot \left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right)\right)}{{x}^{3} + {\left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right)}^{3}}}} \]
          6. /-lowering-/.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{1}{y}\right), \color{blue}{\left(\frac{x \cdot x + \left(\left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) \cdot \left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) - x \cdot \left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right)\right)}{{x}^{3} + {\left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right)}^{3}}\right)}\right) \]
        10. Applied egg-rr59.6%

          \[\leadsto \color{blue}{\frac{\frac{1}{y}}{\frac{1}{x + b \cdot \left(x \cdot \left(\left(0.5 + b \cdot -0.16666666666666666\right) \cdot b\right) - x\right)}}} \]
        11. Taylor expanded in b around inf

          \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, y\right), \color{blue}{\left(\frac{18 \cdot \frac{1}{{b}^{3} \cdot x} - \left(6 \cdot \frac{1}{x} + \left(18 \cdot \frac{1}{{b}^{2} \cdot x} + \frac{18}{b \cdot x}\right)\right)}{{b}^{3}}\right)}\right) \]
        12. Step-by-step derivation
          1. /-lowering-/.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, y\right), \mathsf{/.f64}\left(\left(18 \cdot \frac{1}{{b}^{3} \cdot x} - \left(6 \cdot \frac{1}{x} + \left(18 \cdot \frac{1}{{b}^{2} \cdot x} + \frac{18}{b \cdot x}\right)\right)\right), \color{blue}{\left({b}^{3}\right)}\right)\right) \]
        13. Simplified68.2%

          \[\leadsto \frac{\frac{1}{y}}{\color{blue}{\frac{\frac{18}{b \cdot \left(x \cdot \left(b \cdot b\right)\right)} - \left(\frac{6}{x} + \left(\frac{18}{x \cdot b} + \frac{18}{x \cdot \left(b \cdot b\right)}\right)\right)}{b \cdot \left(b \cdot b\right)}}} \]

        if -8.20000000000000045e-133 < b < -2.6000000000000001e-238

        1. Initial program 97.7%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in y around 0

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(\log a \cdot \left(t - 1\right) - b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. --lowering--.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\left(\log a \cdot \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          2. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\log a, \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          3. log-lowering-log.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          4. sub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right), b\right)\right)\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + -1\right)\right), b\right)\right)\right), y\right) \]
          6. +-lowering-+.f6479.0%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \mathsf{+.f64}\left(t, -1\right)\right), b\right)\right)\right), y\right) \]
        5. Simplified79.0%

          \[\leadsto \frac{x \cdot e^{\color{blue}{\log a \cdot \left(t + -1\right) - b}}}{y} \]
        6. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(x \cdot e^{\log a \cdot \left(t - 1\right)}\right)}, y\right) \]
        7. Step-by-step derivation
          1. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(e^{\log a \cdot \left(t - 1\right)}\right)\right), y\right) \]
          2. exp-to-powN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left({a}^{\left(t - 1\right)}\right)\right), y\right) \]
          3. pow-lowering-pow.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t - 1\right)\right)\right), y\right) \]
          4. sub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right)\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + -1\right)\right)\right), y\right) \]
          6. +-lowering-+.f6481.3%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \mathsf{+.f64}\left(t, -1\right)\right)\right), y\right) \]
        8. Simplified81.3%

          \[\leadsto \frac{\color{blue}{x \cdot {a}^{\left(t + -1\right)}}}{y} \]
        9. Taylor expanded in t around 0

          \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(\frac{x}{a}\right)}, y\right) \]
        10. Step-by-step derivation
          1. /-lowering-/.f6463.0%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(x, a\right), y\right) \]
        11. Simplified63.0%

          \[\leadsto \frac{\color{blue}{\frac{x}{a}}}{y} \]

        if -2.6000000000000001e-238 < b < 6.59999999999999976e-255

        1. Initial program 94.4%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in b around inf

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(-1 \cdot b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. mul-1-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(\mathsf{neg}\left(b\right)\right)\right)\right), y\right) \]
          2. neg-sub0N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(0 - b\right)\right)\right), y\right) \]
          3. --lowering--.f6413.5%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(0, b\right)\right)\right), y\right) \]
        5. Simplified13.5%

          \[\leadsto \frac{x \cdot e^{\color{blue}{0 - b}}}{y} \]
        6. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \color{blue}{\left(1 + b \cdot \left(\frac{1}{2} \cdot b - 1\right)\right)}\right), y\right) \]
        7. Step-by-step derivation
          1. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \left(b \cdot \left(\frac{1}{2} \cdot b - 1\right)\right)\right)\right), y\right) \]
          2. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \left(\frac{1}{2} \cdot b - 1\right)\right)\right)\right), y\right) \]
          3. sub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \left(\frac{1}{2} \cdot b + \left(\mathsf{neg}\left(1\right)\right)\right)\right)\right)\right), y\right) \]
          4. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \left(\frac{1}{2} \cdot b + -1\right)\right)\right)\right), y\right) \]
          5. +-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \left(-1 + \frac{1}{2} \cdot b\right)\right)\right)\right), y\right) \]
          6. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(-1, \left(\frac{1}{2} \cdot b\right)\right)\right)\right)\right), y\right) \]
          7. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(-1, \left(b \cdot \frac{1}{2}\right)\right)\right)\right)\right), y\right) \]
          8. *-lowering-*.f6413.5%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(-1, \mathsf{*.f64}\left(b, \frac{1}{2}\right)\right)\right)\right)\right), y\right) \]
        8. Simplified13.5%

          \[\leadsto \frac{x \cdot \color{blue}{\left(1 + b \cdot \left(-1 + b \cdot 0.5\right)\right)}}{y} \]
        9. Taylor expanded in b around inf

          \[\leadsto \color{blue}{\frac{1}{2} \cdot \frac{{b}^{2} \cdot x}{y}} \]
        10. Step-by-step derivation
          1. associate-*r/N/A

            \[\leadsto \frac{\frac{1}{2} \cdot \left({b}^{2} \cdot x\right)}{\color{blue}{y}} \]
          2. *-commutativeN/A

            \[\leadsto \frac{\left({b}^{2} \cdot x\right) \cdot \frac{1}{2}}{y} \]
          3. associate-*r*N/A

            \[\leadsto \frac{{b}^{2} \cdot \left(x \cdot \frac{1}{2}\right)}{y} \]
          4. *-commutativeN/A

            \[\leadsto \frac{{b}^{2} \cdot \left(\frac{1}{2} \cdot x\right)}{y} \]
          5. /-lowering-/.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\left({b}^{2} \cdot \left(\frac{1}{2} \cdot x\right)\right), \color{blue}{y}\right) \]
          6. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\left({b}^{2} \cdot \left(x \cdot \frac{1}{2}\right)\right), y\right) \]
          7. associate-*r*N/A

            \[\leadsto \mathsf{/.f64}\left(\left(\left({b}^{2} \cdot x\right) \cdot \frac{1}{2}\right), y\right) \]
          8. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\left(x \cdot {b}^{2}\right) \cdot \frac{1}{2}\right), y\right) \]
          9. associate-*l*N/A

            \[\leadsto \mathsf{/.f64}\left(\left(x \cdot \left({b}^{2} \cdot \frac{1}{2}\right)\right), y\right) \]
          10. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\left(x \cdot \left(\frac{1}{2} \cdot {b}^{2}\right)\right), y\right) \]
          11. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(\frac{1}{2} \cdot {b}^{2}\right)\right), y\right) \]
          12. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left({b}^{2} \cdot \frac{1}{2}\right)\right), y\right) \]
          13. unpow2N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(\left(b \cdot b\right) \cdot \frac{1}{2}\right)\right), y\right) \]
          14. associate-*r*N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(b \cdot \left(b \cdot \frac{1}{2}\right)\right)\right), y\right) \]
          15. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(b \cdot \left(\frac{1}{2} \cdot b\right)\right)\right), y\right) \]
          16. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{*.f64}\left(b, \left(\frac{1}{2} \cdot b\right)\right)\right), y\right) \]
          17. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{*.f64}\left(b, \left(b \cdot \frac{1}{2}\right)\right)\right), y\right) \]
          18. *-lowering-*.f6464.0%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{*.f64}\left(b, \frac{1}{2}\right)\right)\right), y\right) \]
        11. Simplified64.0%

          \[\leadsto \color{blue}{\frac{x \cdot \left(b \cdot \left(b \cdot 0.5\right)\right)}{y}} \]

        if 6.59999999999999976e-255 < b < 1.05e11

        1. Initial program 92.1%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in y around 0

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(\log a \cdot \left(t - 1\right) - b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. --lowering--.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\left(\log a \cdot \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          2. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\log a, \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          3. log-lowering-log.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          4. sub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right), b\right)\right)\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + -1\right)\right), b\right)\right)\right), y\right) \]
          6. +-lowering-+.f6473.4%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \mathsf{+.f64}\left(t, -1\right)\right), b\right)\right)\right), y\right) \]
        5. Simplified73.4%

          \[\leadsto \frac{x \cdot e^{\color{blue}{\log a \cdot \left(t + -1\right) - b}}}{y} \]
        6. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(x \cdot e^{\log a \cdot \left(t - 1\right)}\right)}, y\right) \]
        7. Step-by-step derivation
          1. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(e^{\log a \cdot \left(t - 1\right)}\right)\right), y\right) \]
          2. exp-to-powN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left({a}^{\left(t - 1\right)}\right)\right), y\right) \]
          3. pow-lowering-pow.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t - 1\right)\right)\right), y\right) \]
          4. sub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right)\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + -1\right)\right)\right), y\right) \]
          6. +-lowering-+.f6474.0%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \mathsf{+.f64}\left(t, -1\right)\right)\right), y\right) \]
        8. Simplified74.0%

          \[\leadsto \frac{\color{blue}{x \cdot {a}^{\left(t + -1\right)}}}{y} \]
        9. Taylor expanded in t around 0

          \[\leadsto \color{blue}{\frac{x}{a \cdot y}} \]
        10. Step-by-step derivation
          1. *-commutativeN/A

            \[\leadsto \frac{x}{y \cdot \color{blue}{a}} \]
          2. associate-/r*N/A

            \[\leadsto \frac{\frac{x}{y}}{\color{blue}{a}} \]
          3. /-lowering-/.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{x}{y}\right), \color{blue}{a}\right) \]
          4. /-lowering-/.f6450.6%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(x, y\right), a\right) \]
        11. Simplified50.6%

          \[\leadsto \color{blue}{\frac{\frac{x}{y}}{a}} \]

        if 1.05e11 < b

        1. Initial program 100.0%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in b around inf

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(-1 \cdot b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. mul-1-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(\mathsf{neg}\left(b\right)\right)\right)\right), y\right) \]
          2. neg-sub0N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(0 - b\right)\right)\right), y\right) \]
          3. --lowering--.f6482.0%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(0, b\right)\right)\right), y\right) \]
        5. Simplified82.0%

          \[\leadsto \frac{x \cdot e^{\color{blue}{0 - b}}}{y} \]
        6. Step-by-step derivation
          1. sub0-negN/A

            \[\leadsto \mathsf{/.f64}\left(\left(x \cdot e^{\mathsf{neg}\left(b\right)}\right), y\right) \]
          2. exp-negN/A

            \[\leadsto \mathsf{/.f64}\left(\left(x \cdot \frac{1}{e^{b}}\right), y\right) \]
          3. div-invN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{x}{e^{b}}\right), y\right) \]
          4. clear-numN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{1}{\frac{e^{b}}{x}}\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{-1 \cdot -1}{\frac{e^{b}}{x}}\right), y\right) \]
          6. /-lowering-/.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(\left(-1 \cdot -1\right), \left(\frac{e^{b}}{x}\right)\right), y\right) \]
          7. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \left(\frac{e^{b}}{x}\right)\right), y\right) \]
          8. /-lowering-/.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\left(e^{b}\right), x\right)\right), y\right) \]
          9. exp-lowering-exp.f6482.0%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{exp.f64}\left(b\right), x\right)\right), y\right) \]
        7. Applied egg-rr82.0%

          \[\leadsto \frac{\color{blue}{\frac{1}{\frac{e^{b}}{x}}}}{y} \]
        8. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\color{blue}{\left(1 + b \cdot \left(1 + b \cdot \left(\frac{1}{2} + \frac{1}{6} \cdot b\right)\right)\right)}, x\right)\right), y\right) \]
        9. Step-by-step derivation
          1. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \left(b \cdot \left(1 + b \cdot \left(\frac{1}{2} + \frac{1}{6} \cdot b\right)\right)\right)\right), x\right)\right), y\right) \]
          2. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \left(1 + b \cdot \left(\frac{1}{2} + \frac{1}{6} \cdot b\right)\right)\right)\right), x\right)\right), y\right) \]
          3. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(1, \left(b \cdot \left(\frac{1}{2} + \frac{1}{6} \cdot b\right)\right)\right)\right)\right), x\right)\right), y\right) \]
          4. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \left(\frac{1}{2} + \frac{1}{6} \cdot b\right)\right)\right)\right)\right), x\right)\right), y\right) \]
          5. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(\frac{1}{2}, \left(\frac{1}{6} \cdot b\right)\right)\right)\right)\right)\right), x\right)\right), y\right) \]
          6. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(\frac{1}{2}, \left(b \cdot \frac{1}{6}\right)\right)\right)\right)\right)\right), x\right)\right), y\right) \]
          7. *-lowering-*.f6473.9%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(\frac{1}{2}, \mathsf{*.f64}\left(b, \frac{1}{6}\right)\right)\right)\right)\right)\right), x\right)\right), y\right) \]
        10. Simplified73.9%

          \[\leadsto \frac{\frac{1}{\frac{\color{blue}{1 + b \cdot \left(1 + b \cdot \left(0.5 + b \cdot 0.16666666666666666\right)\right)}}{x}}}{y} \]
      3. Recombined 5 regimes into one program.
      4. Add Preprocessing

      Alternative 12: 51.2% accurate, 8.1× speedup?

      \[\begin{array}{l} \\ \begin{array}{l} \mathbf{if}\;b \leq -4 \cdot 10^{-133}:\\ \;\;\;\;\frac{\frac{-1}{y}}{\frac{\frac{6}{x} + \left(\frac{18}{x \cdot b} + \frac{18}{x \cdot \left(b \cdot b\right)}\right)}{b \cdot \left(b \cdot b\right)}}\\ \mathbf{elif}\;b \leq -9.5 \cdot 10^{-236}:\\ \;\;\;\;\frac{\frac{x}{a}}{y}\\ \mathbf{elif}\;b \leq 1.6 \cdot 10^{-260}:\\ \;\;\;\;\frac{x \cdot \left(b \cdot \left(b \cdot 0.5\right)\right)}{y}\\ \mathbf{elif}\;b \leq 75000000000000:\\ \;\;\;\;\frac{\frac{x}{y}}{a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{\frac{1 + b \cdot \left(1 + b \cdot \left(0.5 + b \cdot 0.16666666666666666\right)\right)}{x}}}{y}\\ \end{array} \end{array} \]
      (FPCore (x y z t a b)
       :precision binary64
       (if (<= b -4e-133)
         (/
          (/ -1.0 y)
          (/
           (+ (/ 6.0 x) (+ (/ 18.0 (* x b)) (/ 18.0 (* x (* b b)))))
           (* b (* b b))))
         (if (<= b -9.5e-236)
           (/ (/ x a) y)
           (if (<= b 1.6e-260)
             (/ (* x (* b (* b 0.5))) y)
             (if (<= b 75000000000000.0)
               (/ (/ x y) a)
               (/
                (/
                 1.0
                 (/ (+ 1.0 (* b (+ 1.0 (* b (+ 0.5 (* b 0.16666666666666666)))))) x))
                y))))))
      double code(double x, double y, double z, double t, double a, double b) {
      	double tmp;
      	if (b <= -4e-133) {
      		tmp = (-1.0 / y) / (((6.0 / x) + ((18.0 / (x * b)) + (18.0 / (x * (b * b))))) / (b * (b * b)));
      	} else if (b <= -9.5e-236) {
      		tmp = (x / a) / y;
      	} else if (b <= 1.6e-260) {
      		tmp = (x * (b * (b * 0.5))) / y;
      	} else if (b <= 75000000000000.0) {
      		tmp = (x / y) / a;
      	} else {
      		tmp = (1.0 / ((1.0 + (b * (1.0 + (b * (0.5 + (b * 0.16666666666666666)))))) / x)) / y;
      	}
      	return tmp;
      }
      
      real(8) function code(x, y, z, t, a, b)
          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) :: tmp
          if (b <= (-4d-133)) then
              tmp = ((-1.0d0) / y) / (((6.0d0 / x) + ((18.0d0 / (x * b)) + (18.0d0 / (x * (b * b))))) / (b * (b * b)))
          else if (b <= (-9.5d-236)) then
              tmp = (x / a) / y
          else if (b <= 1.6d-260) then
              tmp = (x * (b * (b * 0.5d0))) / y
          else if (b <= 75000000000000.0d0) then
              tmp = (x / y) / a
          else
              tmp = (1.0d0 / ((1.0d0 + (b * (1.0d0 + (b * (0.5d0 + (b * 0.16666666666666666d0)))))) / x)) / y
          end if
          code = tmp
      end function
      
      public static double code(double x, double y, double z, double t, double a, double b) {
      	double tmp;
      	if (b <= -4e-133) {
      		tmp = (-1.0 / y) / (((6.0 / x) + ((18.0 / (x * b)) + (18.0 / (x * (b * b))))) / (b * (b * b)));
      	} else if (b <= -9.5e-236) {
      		tmp = (x / a) / y;
      	} else if (b <= 1.6e-260) {
      		tmp = (x * (b * (b * 0.5))) / y;
      	} else if (b <= 75000000000000.0) {
      		tmp = (x / y) / a;
      	} else {
      		tmp = (1.0 / ((1.0 + (b * (1.0 + (b * (0.5 + (b * 0.16666666666666666)))))) / x)) / y;
      	}
      	return tmp;
      }
      
      def code(x, y, z, t, a, b):
      	tmp = 0
      	if b <= -4e-133:
      		tmp = (-1.0 / y) / (((6.0 / x) + ((18.0 / (x * b)) + (18.0 / (x * (b * b))))) / (b * (b * b)))
      	elif b <= -9.5e-236:
      		tmp = (x / a) / y
      	elif b <= 1.6e-260:
      		tmp = (x * (b * (b * 0.5))) / y
      	elif b <= 75000000000000.0:
      		tmp = (x / y) / a
      	else:
      		tmp = (1.0 / ((1.0 + (b * (1.0 + (b * (0.5 + (b * 0.16666666666666666)))))) / x)) / y
      	return tmp
      
      function code(x, y, z, t, a, b)
      	tmp = 0.0
      	if (b <= -4e-133)
      		tmp = Float64(Float64(-1.0 / y) / Float64(Float64(Float64(6.0 / x) + Float64(Float64(18.0 / Float64(x * b)) + Float64(18.0 / Float64(x * Float64(b * b))))) / Float64(b * Float64(b * b))));
      	elseif (b <= -9.5e-236)
      		tmp = Float64(Float64(x / a) / y);
      	elseif (b <= 1.6e-260)
      		tmp = Float64(Float64(x * Float64(b * Float64(b * 0.5))) / y);
      	elseif (b <= 75000000000000.0)
      		tmp = Float64(Float64(x / y) / a);
      	else
      		tmp = Float64(Float64(1.0 / Float64(Float64(1.0 + Float64(b * Float64(1.0 + Float64(b * Float64(0.5 + Float64(b * 0.16666666666666666)))))) / x)) / y);
      	end
      	return tmp
      end
      
      function tmp_2 = code(x, y, z, t, a, b)
      	tmp = 0.0;
      	if (b <= -4e-133)
      		tmp = (-1.0 / y) / (((6.0 / x) + ((18.0 / (x * b)) + (18.0 / (x * (b * b))))) / (b * (b * b)));
      	elseif (b <= -9.5e-236)
      		tmp = (x / a) / y;
      	elseif (b <= 1.6e-260)
      		tmp = (x * (b * (b * 0.5))) / y;
      	elseif (b <= 75000000000000.0)
      		tmp = (x / y) / a;
      	else
      		tmp = (1.0 / ((1.0 + (b * (1.0 + (b * (0.5 + (b * 0.16666666666666666)))))) / x)) / y;
      	end
      	tmp_2 = tmp;
      end
      
      code[x_, y_, z_, t_, a_, b_] := If[LessEqual[b, -4e-133], N[(N[(-1.0 / y), $MachinePrecision] / N[(N[(N[(6.0 / x), $MachinePrecision] + N[(N[(18.0 / N[(x * b), $MachinePrecision]), $MachinePrecision] + N[(18.0 / N[(x * N[(b * b), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / N[(b * N[(b * b), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[b, -9.5e-236], N[(N[(x / a), $MachinePrecision] / y), $MachinePrecision], If[LessEqual[b, 1.6e-260], N[(N[(x * N[(b * N[(b * 0.5), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision], If[LessEqual[b, 75000000000000.0], N[(N[(x / y), $MachinePrecision] / a), $MachinePrecision], N[(N[(1.0 / N[(N[(1.0 + N[(b * N[(1.0 + N[(b * N[(0.5 + N[(b * 0.16666666666666666), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / x), $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision]]]]]
      
      \begin{array}{l}
      
      \\
      \begin{array}{l}
      \mathbf{if}\;b \leq -4 \cdot 10^{-133}:\\
      \;\;\;\;\frac{\frac{-1}{y}}{\frac{\frac{6}{x} + \left(\frac{18}{x \cdot b} + \frac{18}{x \cdot \left(b \cdot b\right)}\right)}{b \cdot \left(b \cdot b\right)}}\\
      
      \mathbf{elif}\;b \leq -9.5 \cdot 10^{-236}:\\
      \;\;\;\;\frac{\frac{x}{a}}{y}\\
      
      \mathbf{elif}\;b \leq 1.6 \cdot 10^{-260}:\\
      \;\;\;\;\frac{x \cdot \left(b \cdot \left(b \cdot 0.5\right)\right)}{y}\\
      
      \mathbf{elif}\;b \leq 75000000000000:\\
      \;\;\;\;\frac{\frac{x}{y}}{a}\\
      
      \mathbf{else}:\\
      \;\;\;\;\frac{\frac{1}{\frac{1 + b \cdot \left(1 + b \cdot \left(0.5 + b \cdot 0.16666666666666666\right)\right)}{x}}}{y}\\
      
      
      \end{array}
      \end{array}
      
      Derivation
      1. Split input into 5 regimes
      2. if b < -4.0000000000000003e-133

        1. Initial program 99.7%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in b around inf

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(-1 \cdot b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. mul-1-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(\mathsf{neg}\left(b\right)\right)\right)\right), y\right) \]
          2. neg-sub0N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(0 - b\right)\right)\right), y\right) \]
          3. --lowering--.f6467.9%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(0, b\right)\right)\right), y\right) \]
        5. Simplified67.9%

          \[\leadsto \frac{x \cdot e^{\color{blue}{0 - b}}}{y} \]
        6. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(x + b \cdot \left(-1 \cdot x + b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right)\right)}, y\right) \]
        7. Step-by-step derivation
          1. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \left(b \cdot \left(-1 \cdot x + b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right)\right)\right), y\right) \]
          2. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \left(-1 \cdot x + b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right)\right)\right), y\right) \]
          3. +-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \left(b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right) + -1 \cdot x\right)\right)\right), y\right) \]
          4. mul-1-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \left(b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right) + \left(\mathsf{neg}\left(x\right)\right)\right)\right)\right), y\right) \]
          5. unsub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \left(b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right) - x\right)\right)\right), y\right) \]
          6. --lowering--.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\left(b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right), x\right)\right)\right), y\right) \]
          7. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right), x\right)\right)\right), y\right) \]
          8. associate-*r*N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \left(\left(\frac{-1}{6} \cdot b\right) \cdot x + \frac{1}{2} \cdot x\right)\right), x\right)\right)\right), y\right) \]
          9. distribute-rgt-outN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \left(x \cdot \left(\frac{-1}{6} \cdot b + \frac{1}{2}\right)\right)\right), x\right)\right)\right), y\right) \]
          10. +-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \left(x \cdot \left(\frac{1}{2} + \frac{-1}{6} \cdot b\right)\right)\right), x\right)\right)\right), y\right) \]
          11. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(x, \left(\frac{1}{2} + \frac{-1}{6} \cdot b\right)\right)\right), x\right)\right)\right), y\right) \]
          12. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(x, \mathsf{+.f64}\left(\frac{1}{2}, \left(\frac{-1}{6} \cdot b\right)\right)\right)\right), x\right)\right)\right), y\right) \]
          13. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(x, \mathsf{+.f64}\left(\frac{1}{2}, \left(b \cdot \frac{-1}{6}\right)\right)\right)\right), x\right)\right)\right), y\right) \]
          14. *-lowering-*.f6459.6%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(x, \mathsf{+.f64}\left(\frac{1}{2}, \mathsf{*.f64}\left(b, \frac{-1}{6}\right)\right)\right)\right), x\right)\right)\right), y\right) \]
        8. Simplified59.6%

          \[\leadsto \frac{\color{blue}{x + b \cdot \left(b \cdot \left(x \cdot \left(0.5 + b \cdot -0.16666666666666666\right)\right) - x\right)}}{y} \]
        9. Step-by-step derivation
          1. clear-numN/A

            \[\leadsto \frac{1}{\color{blue}{\frac{y}{x + b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)}}} \]
          2. associate-/r/N/A

            \[\leadsto \frac{1}{y} \cdot \color{blue}{\left(x + b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right)} \]
          3. flip3-+N/A

            \[\leadsto \frac{1}{y} \cdot \frac{{x}^{3} + {\left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right)}^{3}}{\color{blue}{x \cdot x + \left(\left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) \cdot \left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) - x \cdot \left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right)\right)}} \]
          4. clear-numN/A

            \[\leadsto \frac{1}{y} \cdot \frac{1}{\color{blue}{\frac{x \cdot x + \left(\left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) \cdot \left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) - x \cdot \left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right)\right)}{{x}^{3} + {\left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right)}^{3}}}} \]
          5. un-div-invN/A

            \[\leadsto \frac{\frac{1}{y}}{\color{blue}{\frac{x \cdot x + \left(\left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) \cdot \left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) - x \cdot \left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right)\right)}{{x}^{3} + {\left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right)}^{3}}}} \]
          6. /-lowering-/.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{1}{y}\right), \color{blue}{\left(\frac{x \cdot x + \left(\left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) \cdot \left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) - x \cdot \left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right)\right)}{{x}^{3} + {\left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right)}^{3}}\right)}\right) \]
        10. Applied egg-rr59.6%

          \[\leadsto \color{blue}{\frac{\frac{1}{y}}{\frac{1}{x + b \cdot \left(x \cdot \left(\left(0.5 + b \cdot -0.16666666666666666\right) \cdot b\right) - x\right)}}} \]
        11. Taylor expanded in b around -inf

          \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, y\right), \color{blue}{\left(-1 \cdot \frac{6 \cdot \frac{1}{x} + \left(\frac{18}{b \cdot x} + \frac{18}{{b}^{2} \cdot x}\right)}{{b}^{3}}\right)}\right) \]
        12. Step-by-step derivation
          1. mul-1-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, y\right), \left(\mathsf{neg}\left(\frac{6 \cdot \frac{1}{x} + \left(\frac{18}{b \cdot x} + \frac{18}{{b}^{2} \cdot x}\right)}{{b}^{3}}\right)\right)\right) \]
          2. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, y\right), \left(\mathsf{neg}\left(\frac{6 \cdot \frac{1}{x} + \left(\frac{18 \cdot 1}{b \cdot x} + \frac{18}{{b}^{2} \cdot x}\right)}{{b}^{3}}\right)\right)\right) \]
          3. associate-*r/N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, y\right), \left(\mathsf{neg}\left(\frac{6 \cdot \frac{1}{x} + \left(18 \cdot \frac{1}{b \cdot x} + \frac{18}{{b}^{2} \cdot x}\right)}{{b}^{3}}\right)\right)\right) \]
          4. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, y\right), \left(\mathsf{neg}\left(\frac{6 \cdot \frac{1}{x} + \left(18 \cdot \frac{1}{b \cdot x} + \frac{18 \cdot 1}{{b}^{2} \cdot x}\right)}{{b}^{3}}\right)\right)\right) \]
          5. associate-*r/N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, y\right), \left(\mathsf{neg}\left(\frac{6 \cdot \frac{1}{x} + \left(18 \cdot \frac{1}{b \cdot x} + 18 \cdot \frac{1}{{b}^{2} \cdot x}\right)}{{b}^{3}}\right)\right)\right) \]
          6. +-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, y\right), \left(\mathsf{neg}\left(\frac{6 \cdot \frac{1}{x} + \left(18 \cdot \frac{1}{{b}^{2} \cdot x} + 18 \cdot \frac{1}{b \cdot x}\right)}{{b}^{3}}\right)\right)\right) \]
          7. associate-*r/N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, y\right), \left(\mathsf{neg}\left(\frac{6 \cdot \frac{1}{x} + \left(18 \cdot \frac{1}{{b}^{2} \cdot x} + \frac{18 \cdot 1}{b \cdot x}\right)}{{b}^{3}}\right)\right)\right) \]
          8. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, y\right), \left(\mathsf{neg}\left(\frac{6 \cdot \frac{1}{x} + \left(18 \cdot \frac{1}{{b}^{2} \cdot x} + \frac{18}{b \cdot x}\right)}{{b}^{3}}\right)\right)\right) \]
          9. distribute-neg-frac2N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, y\right), \left(\frac{6 \cdot \frac{1}{x} + \left(18 \cdot \frac{1}{{b}^{2} \cdot x} + \frac{18}{b \cdot x}\right)}{\color{blue}{\mathsf{neg}\left({b}^{3}\right)}}\right)\right) \]
          10. mul-1-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, y\right), \left(\frac{6 \cdot \frac{1}{x} + \left(18 \cdot \frac{1}{{b}^{2} \cdot x} + \frac{18}{b \cdot x}\right)}{-1 \cdot \color{blue}{{b}^{3}}}\right)\right) \]
        13. Simplified67.7%

          \[\leadsto \frac{\frac{1}{y}}{\color{blue}{\frac{\frac{6}{x} + \left(\frac{18}{x \cdot b} + \frac{18}{x \cdot \left(b \cdot b\right)}\right)}{-b \cdot \left(b \cdot b\right)}}} \]

        if -4.0000000000000003e-133 < b < -9.50000000000000065e-236

        1. Initial program 97.7%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in y around 0

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(\log a \cdot \left(t - 1\right) - b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. --lowering--.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\left(\log a \cdot \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          2. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\log a, \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          3. log-lowering-log.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          4. sub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right), b\right)\right)\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + -1\right)\right), b\right)\right)\right), y\right) \]
          6. +-lowering-+.f6479.0%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \mathsf{+.f64}\left(t, -1\right)\right), b\right)\right)\right), y\right) \]
        5. Simplified79.0%

          \[\leadsto \frac{x \cdot e^{\color{blue}{\log a \cdot \left(t + -1\right) - b}}}{y} \]
        6. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(x \cdot e^{\log a \cdot \left(t - 1\right)}\right)}, y\right) \]
        7. Step-by-step derivation
          1. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(e^{\log a \cdot \left(t - 1\right)}\right)\right), y\right) \]
          2. exp-to-powN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left({a}^{\left(t - 1\right)}\right)\right), y\right) \]
          3. pow-lowering-pow.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t - 1\right)\right)\right), y\right) \]
          4. sub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right)\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + -1\right)\right)\right), y\right) \]
          6. +-lowering-+.f6481.3%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \mathsf{+.f64}\left(t, -1\right)\right)\right), y\right) \]
        8. Simplified81.3%

          \[\leadsto \frac{\color{blue}{x \cdot {a}^{\left(t + -1\right)}}}{y} \]
        9. Taylor expanded in t around 0

          \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(\frac{x}{a}\right)}, y\right) \]
        10. Step-by-step derivation
          1. /-lowering-/.f6463.0%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(x, a\right), y\right) \]
        11. Simplified63.0%

          \[\leadsto \frac{\color{blue}{\frac{x}{a}}}{y} \]

        if -9.50000000000000065e-236 < b < 1.59999999999999997e-260

        1. Initial program 94.4%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in b around inf

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(-1 \cdot b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. mul-1-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(\mathsf{neg}\left(b\right)\right)\right)\right), y\right) \]
          2. neg-sub0N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(0 - b\right)\right)\right), y\right) \]
          3. --lowering--.f6413.5%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(0, b\right)\right)\right), y\right) \]
        5. Simplified13.5%

          \[\leadsto \frac{x \cdot e^{\color{blue}{0 - b}}}{y} \]
        6. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \color{blue}{\left(1 + b \cdot \left(\frac{1}{2} \cdot b - 1\right)\right)}\right), y\right) \]
        7. Step-by-step derivation
          1. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \left(b \cdot \left(\frac{1}{2} \cdot b - 1\right)\right)\right)\right), y\right) \]
          2. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \left(\frac{1}{2} \cdot b - 1\right)\right)\right)\right), y\right) \]
          3. sub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \left(\frac{1}{2} \cdot b + \left(\mathsf{neg}\left(1\right)\right)\right)\right)\right)\right), y\right) \]
          4. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \left(\frac{1}{2} \cdot b + -1\right)\right)\right)\right), y\right) \]
          5. +-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \left(-1 + \frac{1}{2} \cdot b\right)\right)\right)\right), y\right) \]
          6. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(-1, \left(\frac{1}{2} \cdot b\right)\right)\right)\right)\right), y\right) \]
          7. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(-1, \left(b \cdot \frac{1}{2}\right)\right)\right)\right)\right), y\right) \]
          8. *-lowering-*.f6413.5%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(-1, \mathsf{*.f64}\left(b, \frac{1}{2}\right)\right)\right)\right)\right), y\right) \]
        8. Simplified13.5%

          \[\leadsto \frac{x \cdot \color{blue}{\left(1 + b \cdot \left(-1 + b \cdot 0.5\right)\right)}}{y} \]
        9. Taylor expanded in b around inf

          \[\leadsto \color{blue}{\frac{1}{2} \cdot \frac{{b}^{2} \cdot x}{y}} \]
        10. Step-by-step derivation
          1. associate-*r/N/A

            \[\leadsto \frac{\frac{1}{2} \cdot \left({b}^{2} \cdot x\right)}{\color{blue}{y}} \]
          2. *-commutativeN/A

            \[\leadsto \frac{\left({b}^{2} \cdot x\right) \cdot \frac{1}{2}}{y} \]
          3. associate-*r*N/A

            \[\leadsto \frac{{b}^{2} \cdot \left(x \cdot \frac{1}{2}\right)}{y} \]
          4. *-commutativeN/A

            \[\leadsto \frac{{b}^{2} \cdot \left(\frac{1}{2} \cdot x\right)}{y} \]
          5. /-lowering-/.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\left({b}^{2} \cdot \left(\frac{1}{2} \cdot x\right)\right), \color{blue}{y}\right) \]
          6. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\left({b}^{2} \cdot \left(x \cdot \frac{1}{2}\right)\right), y\right) \]
          7. associate-*r*N/A

            \[\leadsto \mathsf{/.f64}\left(\left(\left({b}^{2} \cdot x\right) \cdot \frac{1}{2}\right), y\right) \]
          8. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\left(x \cdot {b}^{2}\right) \cdot \frac{1}{2}\right), y\right) \]
          9. associate-*l*N/A

            \[\leadsto \mathsf{/.f64}\left(\left(x \cdot \left({b}^{2} \cdot \frac{1}{2}\right)\right), y\right) \]
          10. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\left(x \cdot \left(\frac{1}{2} \cdot {b}^{2}\right)\right), y\right) \]
          11. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(\frac{1}{2} \cdot {b}^{2}\right)\right), y\right) \]
          12. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left({b}^{2} \cdot \frac{1}{2}\right)\right), y\right) \]
          13. unpow2N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(\left(b \cdot b\right) \cdot \frac{1}{2}\right)\right), y\right) \]
          14. associate-*r*N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(b \cdot \left(b \cdot \frac{1}{2}\right)\right)\right), y\right) \]
          15. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(b \cdot \left(\frac{1}{2} \cdot b\right)\right)\right), y\right) \]
          16. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{*.f64}\left(b, \left(\frac{1}{2} \cdot b\right)\right)\right), y\right) \]
          17. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{*.f64}\left(b, \left(b \cdot \frac{1}{2}\right)\right)\right), y\right) \]
          18. *-lowering-*.f6464.0%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{*.f64}\left(b, \frac{1}{2}\right)\right)\right), y\right) \]
        11. Simplified64.0%

          \[\leadsto \color{blue}{\frac{x \cdot \left(b \cdot \left(b \cdot 0.5\right)\right)}{y}} \]

        if 1.59999999999999997e-260 < b < 7.5e13

        1. Initial program 92.1%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in y around 0

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(\log a \cdot \left(t - 1\right) - b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. --lowering--.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\left(\log a \cdot \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          2. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\log a, \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          3. log-lowering-log.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          4. sub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right), b\right)\right)\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + -1\right)\right), b\right)\right)\right), y\right) \]
          6. +-lowering-+.f6473.4%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \mathsf{+.f64}\left(t, -1\right)\right), b\right)\right)\right), y\right) \]
        5. Simplified73.4%

          \[\leadsto \frac{x \cdot e^{\color{blue}{\log a \cdot \left(t + -1\right) - b}}}{y} \]
        6. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(x \cdot e^{\log a \cdot \left(t - 1\right)}\right)}, y\right) \]
        7. Step-by-step derivation
          1. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(e^{\log a \cdot \left(t - 1\right)}\right)\right), y\right) \]
          2. exp-to-powN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left({a}^{\left(t - 1\right)}\right)\right), y\right) \]
          3. pow-lowering-pow.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t - 1\right)\right)\right), y\right) \]
          4. sub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right)\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + -1\right)\right)\right), y\right) \]
          6. +-lowering-+.f6474.0%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \mathsf{+.f64}\left(t, -1\right)\right)\right), y\right) \]
        8. Simplified74.0%

          \[\leadsto \frac{\color{blue}{x \cdot {a}^{\left(t + -1\right)}}}{y} \]
        9. Taylor expanded in t around 0

          \[\leadsto \color{blue}{\frac{x}{a \cdot y}} \]
        10. Step-by-step derivation
          1. *-commutativeN/A

            \[\leadsto \frac{x}{y \cdot \color{blue}{a}} \]
          2. associate-/r*N/A

            \[\leadsto \frac{\frac{x}{y}}{\color{blue}{a}} \]
          3. /-lowering-/.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{x}{y}\right), \color{blue}{a}\right) \]
          4. /-lowering-/.f6450.6%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(x, y\right), a\right) \]
        11. Simplified50.6%

          \[\leadsto \color{blue}{\frac{\frac{x}{y}}{a}} \]

        if 7.5e13 < b

        1. Initial program 100.0%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in b around inf

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(-1 \cdot b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. mul-1-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(\mathsf{neg}\left(b\right)\right)\right)\right), y\right) \]
          2. neg-sub0N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(0 - b\right)\right)\right), y\right) \]
          3. --lowering--.f6482.0%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(0, b\right)\right)\right), y\right) \]
        5. Simplified82.0%

          \[\leadsto \frac{x \cdot e^{\color{blue}{0 - b}}}{y} \]
        6. Step-by-step derivation
          1. sub0-negN/A

            \[\leadsto \mathsf{/.f64}\left(\left(x \cdot e^{\mathsf{neg}\left(b\right)}\right), y\right) \]
          2. exp-negN/A

            \[\leadsto \mathsf{/.f64}\left(\left(x \cdot \frac{1}{e^{b}}\right), y\right) \]
          3. div-invN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{x}{e^{b}}\right), y\right) \]
          4. clear-numN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{1}{\frac{e^{b}}{x}}\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{-1 \cdot -1}{\frac{e^{b}}{x}}\right), y\right) \]
          6. /-lowering-/.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(\left(-1 \cdot -1\right), \left(\frac{e^{b}}{x}\right)\right), y\right) \]
          7. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \left(\frac{e^{b}}{x}\right)\right), y\right) \]
          8. /-lowering-/.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\left(e^{b}\right), x\right)\right), y\right) \]
          9. exp-lowering-exp.f6482.0%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{exp.f64}\left(b\right), x\right)\right), y\right) \]
        7. Applied egg-rr82.0%

          \[\leadsto \frac{\color{blue}{\frac{1}{\frac{e^{b}}{x}}}}{y} \]
        8. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\color{blue}{\left(1 + b \cdot \left(1 + b \cdot \left(\frac{1}{2} + \frac{1}{6} \cdot b\right)\right)\right)}, x\right)\right), y\right) \]
        9. Step-by-step derivation
          1. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \left(b \cdot \left(1 + b \cdot \left(\frac{1}{2} + \frac{1}{6} \cdot b\right)\right)\right)\right), x\right)\right), y\right) \]
          2. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \left(1 + b \cdot \left(\frac{1}{2} + \frac{1}{6} \cdot b\right)\right)\right)\right), x\right)\right), y\right) \]
          3. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(1, \left(b \cdot \left(\frac{1}{2} + \frac{1}{6} \cdot b\right)\right)\right)\right)\right), x\right)\right), y\right) \]
          4. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \left(\frac{1}{2} + \frac{1}{6} \cdot b\right)\right)\right)\right)\right), x\right)\right), y\right) \]
          5. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(\frac{1}{2}, \left(\frac{1}{6} \cdot b\right)\right)\right)\right)\right)\right), x\right)\right), y\right) \]
          6. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(\frac{1}{2}, \left(b \cdot \frac{1}{6}\right)\right)\right)\right)\right)\right), x\right)\right), y\right) \]
          7. *-lowering-*.f6473.9%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(\frac{1}{2}, \mathsf{*.f64}\left(b, \frac{1}{6}\right)\right)\right)\right)\right)\right), x\right)\right), y\right) \]
        10. Simplified73.9%

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

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \leq -4 \cdot 10^{-133}:\\ \;\;\;\;\frac{\frac{-1}{y}}{\frac{\frac{6}{x} + \left(\frac{18}{x \cdot b} + \frac{18}{x \cdot \left(b \cdot b\right)}\right)}{b \cdot \left(b \cdot b\right)}}\\ \mathbf{elif}\;b \leq -9.5 \cdot 10^{-236}:\\ \;\;\;\;\frac{\frac{x}{a}}{y}\\ \mathbf{elif}\;b \leq 1.6 \cdot 10^{-260}:\\ \;\;\;\;\frac{x \cdot \left(b \cdot \left(b \cdot 0.5\right)\right)}{y}\\ \mathbf{elif}\;b \leq 75000000000000:\\ \;\;\;\;\frac{\frac{x}{y}}{a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{\frac{1 + b \cdot \left(1 + b \cdot \left(0.5 + b \cdot 0.16666666666666666\right)\right)}{x}}}{y}\\ \end{array} \]
      5. Add Preprocessing

      Alternative 13: 53.5% accurate, 8.1× speedup?

      \[\begin{array}{l} \\ \begin{array}{l} \mathbf{if}\;b \leq -80000000000000:\\ \;\;\;\;x \cdot \frac{1 + b \cdot \left(-1 + b \cdot \left(0.5 + b \cdot -0.16666666666666666\right)\right)}{y}\\ \mathbf{elif}\;b \leq -4.4 \cdot 10^{-237}:\\ \;\;\;\;\frac{\frac{x}{a}}{y}\\ \mathbf{elif}\;b \leq 1.16 \cdot 10^{-260}:\\ \;\;\;\;\frac{x \cdot \left(b \cdot \left(b \cdot 0.5\right)\right)}{y}\\ \mathbf{elif}\;b \leq 3.7 \cdot 10^{+14}:\\ \;\;\;\;\frac{\frac{x}{y}}{a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{\frac{1 + b \cdot \left(1 + b \cdot \left(0.5 + b \cdot 0.16666666666666666\right)\right)}{x}}}{y}\\ \end{array} \end{array} \]
      (FPCore (x y z t a b)
       :precision binary64
       (if (<= b -80000000000000.0)
         (* x (/ (+ 1.0 (* b (+ -1.0 (* b (+ 0.5 (* b -0.16666666666666666)))))) y))
         (if (<= b -4.4e-237)
           (/ (/ x a) y)
           (if (<= b 1.16e-260)
             (/ (* x (* b (* b 0.5))) y)
             (if (<= b 3.7e+14)
               (/ (/ x y) a)
               (/
                (/
                 1.0
                 (/ (+ 1.0 (* b (+ 1.0 (* b (+ 0.5 (* b 0.16666666666666666)))))) x))
                y))))))
      double code(double x, double y, double z, double t, double a, double b) {
      	double tmp;
      	if (b <= -80000000000000.0) {
      		tmp = x * ((1.0 + (b * (-1.0 + (b * (0.5 + (b * -0.16666666666666666)))))) / y);
      	} else if (b <= -4.4e-237) {
      		tmp = (x / a) / y;
      	} else if (b <= 1.16e-260) {
      		tmp = (x * (b * (b * 0.5))) / y;
      	} else if (b <= 3.7e+14) {
      		tmp = (x / y) / a;
      	} else {
      		tmp = (1.0 / ((1.0 + (b * (1.0 + (b * (0.5 + (b * 0.16666666666666666)))))) / x)) / y;
      	}
      	return tmp;
      }
      
      real(8) function code(x, y, z, t, a, b)
          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) :: tmp
          if (b <= (-80000000000000.0d0)) then
              tmp = x * ((1.0d0 + (b * ((-1.0d0) + (b * (0.5d0 + (b * (-0.16666666666666666d0))))))) / y)
          else if (b <= (-4.4d-237)) then
              tmp = (x / a) / y
          else if (b <= 1.16d-260) then
              tmp = (x * (b * (b * 0.5d0))) / y
          else if (b <= 3.7d+14) then
              tmp = (x / y) / a
          else
              tmp = (1.0d0 / ((1.0d0 + (b * (1.0d0 + (b * (0.5d0 + (b * 0.16666666666666666d0)))))) / x)) / y
          end if
          code = tmp
      end function
      
      public static double code(double x, double y, double z, double t, double a, double b) {
      	double tmp;
      	if (b <= -80000000000000.0) {
      		tmp = x * ((1.0 + (b * (-1.0 + (b * (0.5 + (b * -0.16666666666666666)))))) / y);
      	} else if (b <= -4.4e-237) {
      		tmp = (x / a) / y;
      	} else if (b <= 1.16e-260) {
      		tmp = (x * (b * (b * 0.5))) / y;
      	} else if (b <= 3.7e+14) {
      		tmp = (x / y) / a;
      	} else {
      		tmp = (1.0 / ((1.0 + (b * (1.0 + (b * (0.5 + (b * 0.16666666666666666)))))) / x)) / y;
      	}
      	return tmp;
      }
      
      def code(x, y, z, t, a, b):
      	tmp = 0
      	if b <= -80000000000000.0:
      		tmp = x * ((1.0 + (b * (-1.0 + (b * (0.5 + (b * -0.16666666666666666)))))) / y)
      	elif b <= -4.4e-237:
      		tmp = (x / a) / y
      	elif b <= 1.16e-260:
      		tmp = (x * (b * (b * 0.5))) / y
      	elif b <= 3.7e+14:
      		tmp = (x / y) / a
      	else:
      		tmp = (1.0 / ((1.0 + (b * (1.0 + (b * (0.5 + (b * 0.16666666666666666)))))) / x)) / y
      	return tmp
      
      function code(x, y, z, t, a, b)
      	tmp = 0.0
      	if (b <= -80000000000000.0)
      		tmp = Float64(x * Float64(Float64(1.0 + Float64(b * Float64(-1.0 + Float64(b * Float64(0.5 + Float64(b * -0.16666666666666666)))))) / y));
      	elseif (b <= -4.4e-237)
      		tmp = Float64(Float64(x / a) / y);
      	elseif (b <= 1.16e-260)
      		tmp = Float64(Float64(x * Float64(b * Float64(b * 0.5))) / y);
      	elseif (b <= 3.7e+14)
      		tmp = Float64(Float64(x / y) / a);
      	else
      		tmp = Float64(Float64(1.0 / Float64(Float64(1.0 + Float64(b * Float64(1.0 + Float64(b * Float64(0.5 + Float64(b * 0.16666666666666666)))))) / x)) / y);
      	end
      	return tmp
      end
      
      function tmp_2 = code(x, y, z, t, a, b)
      	tmp = 0.0;
      	if (b <= -80000000000000.0)
      		tmp = x * ((1.0 + (b * (-1.0 + (b * (0.5 + (b * -0.16666666666666666)))))) / y);
      	elseif (b <= -4.4e-237)
      		tmp = (x / a) / y;
      	elseif (b <= 1.16e-260)
      		tmp = (x * (b * (b * 0.5))) / y;
      	elseif (b <= 3.7e+14)
      		tmp = (x / y) / a;
      	else
      		tmp = (1.0 / ((1.0 + (b * (1.0 + (b * (0.5 + (b * 0.16666666666666666)))))) / x)) / y;
      	end
      	tmp_2 = tmp;
      end
      
      code[x_, y_, z_, t_, a_, b_] := If[LessEqual[b, -80000000000000.0], N[(x * N[(N[(1.0 + N[(b * N[(-1.0 + N[(b * N[(0.5 + N[(b * -0.16666666666666666), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision]), $MachinePrecision], If[LessEqual[b, -4.4e-237], N[(N[(x / a), $MachinePrecision] / y), $MachinePrecision], If[LessEqual[b, 1.16e-260], N[(N[(x * N[(b * N[(b * 0.5), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision], If[LessEqual[b, 3.7e+14], N[(N[(x / y), $MachinePrecision] / a), $MachinePrecision], N[(N[(1.0 / N[(N[(1.0 + N[(b * N[(1.0 + N[(b * N[(0.5 + N[(b * 0.16666666666666666), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / x), $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision]]]]]
      
      \begin{array}{l}
      
      \\
      \begin{array}{l}
      \mathbf{if}\;b \leq -80000000000000:\\
      \;\;\;\;x \cdot \frac{1 + b \cdot \left(-1 + b \cdot \left(0.5 + b \cdot -0.16666666666666666\right)\right)}{y}\\
      
      \mathbf{elif}\;b \leq -4.4 \cdot 10^{-237}:\\
      \;\;\;\;\frac{\frac{x}{a}}{y}\\
      
      \mathbf{elif}\;b \leq 1.16 \cdot 10^{-260}:\\
      \;\;\;\;\frac{x \cdot \left(b \cdot \left(b \cdot 0.5\right)\right)}{y}\\
      
      \mathbf{elif}\;b \leq 3.7 \cdot 10^{+14}:\\
      \;\;\;\;\frac{\frac{x}{y}}{a}\\
      
      \mathbf{else}:\\
      \;\;\;\;\frac{\frac{1}{\frac{1 + b \cdot \left(1 + b \cdot \left(0.5 + b \cdot 0.16666666666666666\right)\right)}{x}}}{y}\\
      
      
      \end{array}
      \end{array}
      
      Derivation
      1. Split input into 5 regimes
      2. if b < -8e13

        1. Initial program 100.0%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in b around inf

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(-1 \cdot b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. mul-1-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(\mathsf{neg}\left(b\right)\right)\right)\right), y\right) \]
          2. neg-sub0N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(0 - b\right)\right)\right), y\right) \]
          3. --lowering--.f6488.8%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(0, b\right)\right)\right), y\right) \]
        5. Simplified88.8%

          \[\leadsto \frac{x \cdot e^{\color{blue}{0 - b}}}{y} \]
        6. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(x + b \cdot \left(-1 \cdot x + b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right)\right)}, y\right) \]
        7. Step-by-step derivation
          1. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \left(b \cdot \left(-1 \cdot x + b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right)\right)\right), y\right) \]
          2. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \left(-1 \cdot x + b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right)\right)\right), y\right) \]
          3. +-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \left(b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right) + -1 \cdot x\right)\right)\right), y\right) \]
          4. mul-1-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \left(b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right) + \left(\mathsf{neg}\left(x\right)\right)\right)\right)\right), y\right) \]
          5. unsub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \left(b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right) - x\right)\right)\right), y\right) \]
          6. --lowering--.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\left(b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right), x\right)\right)\right), y\right) \]
          7. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right), x\right)\right)\right), y\right) \]
          8. associate-*r*N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \left(\left(\frac{-1}{6} \cdot b\right) \cdot x + \frac{1}{2} \cdot x\right)\right), x\right)\right)\right), y\right) \]
          9. distribute-rgt-outN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \left(x \cdot \left(\frac{-1}{6} \cdot b + \frac{1}{2}\right)\right)\right), x\right)\right)\right), y\right) \]
          10. +-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \left(x \cdot \left(\frac{1}{2} + \frac{-1}{6} \cdot b\right)\right)\right), x\right)\right)\right), y\right) \]
          11. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(x, \left(\frac{1}{2} + \frac{-1}{6} \cdot b\right)\right)\right), x\right)\right)\right), y\right) \]
          12. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(x, \mathsf{+.f64}\left(\frac{1}{2}, \left(\frac{-1}{6} \cdot b\right)\right)\right)\right), x\right)\right)\right), y\right) \]
          13. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(x, \mathsf{+.f64}\left(\frac{1}{2}, \left(b \cdot \frac{-1}{6}\right)\right)\right)\right), x\right)\right)\right), y\right) \]
          14. *-lowering-*.f6476.6%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(x, \mathsf{+.f64}\left(\frac{1}{2}, \mathsf{*.f64}\left(b, \frac{-1}{6}\right)\right)\right)\right), x\right)\right)\right), y\right) \]
        8. Simplified76.6%

          \[\leadsto \frac{\color{blue}{x + b \cdot \left(b \cdot \left(x \cdot \left(0.5 + b \cdot -0.16666666666666666\right)\right) - x\right)}}{y} \]
        9. Taylor expanded in x around 0

          \[\leadsto \color{blue}{\frac{x \cdot \left(1 + b \cdot \left(b \cdot \left(\frac{1}{2} + \frac{-1}{6} \cdot b\right) - 1\right)\right)}{y}} \]
        10. Step-by-step derivation
          1. associate-/l*N/A

            \[\leadsto x \cdot \color{blue}{\frac{1 + b \cdot \left(b \cdot \left(\frac{1}{2} + \frac{-1}{6} \cdot b\right) - 1\right)}{y}} \]
          2. *-lowering-*.f64N/A

            \[\leadsto \mathsf{*.f64}\left(x, \color{blue}{\left(\frac{1 + b \cdot \left(b \cdot \left(\frac{1}{2} + \frac{-1}{6} \cdot b\right) - 1\right)}{y}\right)}\right) \]
          3. /-lowering-/.f64N/A

            \[\leadsto \mathsf{*.f64}\left(x, \mathsf{/.f64}\left(\left(1 + b \cdot \left(b \cdot \left(\frac{1}{2} + \frac{-1}{6} \cdot b\right) - 1\right)\right), \color{blue}{y}\right)\right) \]
          4. +-lowering-+.f64N/A

            \[\leadsto \mathsf{*.f64}\left(x, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \left(b \cdot \left(b \cdot \left(\frac{1}{2} + \frac{-1}{6} \cdot b\right) - 1\right)\right)\right), y\right)\right) \]
          5. *-lowering-*.f64N/A

            \[\leadsto \mathsf{*.f64}\left(x, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \left(b \cdot \left(\frac{1}{2} + \frac{-1}{6} \cdot b\right) - 1\right)\right)\right), y\right)\right) \]
          6. sub-negN/A

            \[\leadsto \mathsf{*.f64}\left(x, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \left(b \cdot \left(\frac{1}{2} + \frac{-1}{6} \cdot b\right) + \left(\mathsf{neg}\left(1\right)\right)\right)\right)\right), y\right)\right) \]
          7. metadata-evalN/A

            \[\leadsto \mathsf{*.f64}\left(x, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \left(b \cdot \left(\frac{1}{2} + \frac{-1}{6} \cdot b\right) + -1\right)\right)\right), y\right)\right) \]
          8. +-commutativeN/A

            \[\leadsto \mathsf{*.f64}\left(x, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \left(-1 + b \cdot \left(\frac{1}{2} + \frac{-1}{6} \cdot b\right)\right)\right)\right), y\right)\right) \]
          9. +-lowering-+.f64N/A

            \[\leadsto \mathsf{*.f64}\left(x, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(-1, \left(b \cdot \left(\frac{1}{2} + \frac{-1}{6} \cdot b\right)\right)\right)\right)\right), y\right)\right) \]
          10. *-lowering-*.f64N/A

            \[\leadsto \mathsf{*.f64}\left(x, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(-1, \mathsf{*.f64}\left(b, \left(\frac{1}{2} + \frac{-1}{6} \cdot b\right)\right)\right)\right)\right), y\right)\right) \]
          11. +-lowering-+.f64N/A

            \[\leadsto \mathsf{*.f64}\left(x, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(-1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(\frac{1}{2}, \left(\frac{-1}{6} \cdot b\right)\right)\right)\right)\right)\right), y\right)\right) \]
          12. *-commutativeN/A

            \[\leadsto \mathsf{*.f64}\left(x, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(-1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(\frac{1}{2}, \left(b \cdot \frac{-1}{6}\right)\right)\right)\right)\right)\right), y\right)\right) \]
          13. *-lowering-*.f6483.3%

            \[\leadsto \mathsf{*.f64}\left(x, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(-1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(\frac{1}{2}, \mathsf{*.f64}\left(b, \frac{-1}{6}\right)\right)\right)\right)\right)\right), y\right)\right) \]
        11. Simplified83.3%

          \[\leadsto \color{blue}{x \cdot \frac{1 + b \cdot \left(-1 + b \cdot \left(0.5 + b \cdot -0.16666666666666666\right)\right)}{y}} \]

        if -8e13 < b < -4.39999999999999996e-237

        1. Initial program 98.5%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in y around 0

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(\log a \cdot \left(t - 1\right) - b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. --lowering--.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\left(\log a \cdot \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          2. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\log a, \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          3. log-lowering-log.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          4. sub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right), b\right)\right)\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + -1\right)\right), b\right)\right)\right), y\right) \]
          6. +-lowering-+.f6472.8%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \mathsf{+.f64}\left(t, -1\right)\right), b\right)\right)\right), y\right) \]
        5. Simplified72.8%

          \[\leadsto \frac{x \cdot e^{\color{blue}{\log a \cdot \left(t + -1\right) - b}}}{y} \]
        6. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(x \cdot e^{\log a \cdot \left(t - 1\right)}\right)}, y\right) \]
        7. Step-by-step derivation
          1. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(e^{\log a \cdot \left(t - 1\right)}\right)\right), y\right) \]
          2. exp-to-powN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left({a}^{\left(t - 1\right)}\right)\right), y\right) \]
          3. pow-lowering-pow.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t - 1\right)\right)\right), y\right) \]
          4. sub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right)\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + -1\right)\right)\right), y\right) \]
          6. +-lowering-+.f6475.5%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \mathsf{+.f64}\left(t, -1\right)\right)\right), y\right) \]
        8. Simplified75.5%

          \[\leadsto \frac{\color{blue}{x \cdot {a}^{\left(t + -1\right)}}}{y} \]
        9. Taylor expanded in t around 0

          \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(\frac{x}{a}\right)}, y\right) \]
        10. Step-by-step derivation
          1. /-lowering-/.f6443.8%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(x, a\right), y\right) \]
        11. Simplified43.8%

          \[\leadsto \frac{\color{blue}{\frac{x}{a}}}{y} \]

        if -4.39999999999999996e-237 < b < 1.15999999999999994e-260

        1. Initial program 94.4%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in b around inf

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(-1 \cdot b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. mul-1-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(\mathsf{neg}\left(b\right)\right)\right)\right), y\right) \]
          2. neg-sub0N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(0 - b\right)\right)\right), y\right) \]
          3. --lowering--.f6413.5%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(0, b\right)\right)\right), y\right) \]
        5. Simplified13.5%

          \[\leadsto \frac{x \cdot e^{\color{blue}{0 - b}}}{y} \]
        6. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \color{blue}{\left(1 + b \cdot \left(\frac{1}{2} \cdot b - 1\right)\right)}\right), y\right) \]
        7. Step-by-step derivation
          1. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \left(b \cdot \left(\frac{1}{2} \cdot b - 1\right)\right)\right)\right), y\right) \]
          2. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \left(\frac{1}{2} \cdot b - 1\right)\right)\right)\right), y\right) \]
          3. sub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \left(\frac{1}{2} \cdot b + \left(\mathsf{neg}\left(1\right)\right)\right)\right)\right)\right), y\right) \]
          4. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \left(\frac{1}{2} \cdot b + -1\right)\right)\right)\right), y\right) \]
          5. +-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \left(-1 + \frac{1}{2} \cdot b\right)\right)\right)\right), y\right) \]
          6. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(-1, \left(\frac{1}{2} \cdot b\right)\right)\right)\right)\right), y\right) \]
          7. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(-1, \left(b \cdot \frac{1}{2}\right)\right)\right)\right)\right), y\right) \]
          8. *-lowering-*.f6413.5%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(-1, \mathsf{*.f64}\left(b, \frac{1}{2}\right)\right)\right)\right)\right), y\right) \]
        8. Simplified13.5%

          \[\leadsto \frac{x \cdot \color{blue}{\left(1 + b \cdot \left(-1 + b \cdot 0.5\right)\right)}}{y} \]
        9. Taylor expanded in b around inf

          \[\leadsto \color{blue}{\frac{1}{2} \cdot \frac{{b}^{2} \cdot x}{y}} \]
        10. Step-by-step derivation
          1. associate-*r/N/A

            \[\leadsto \frac{\frac{1}{2} \cdot \left({b}^{2} \cdot x\right)}{\color{blue}{y}} \]
          2. *-commutativeN/A

            \[\leadsto \frac{\left({b}^{2} \cdot x\right) \cdot \frac{1}{2}}{y} \]
          3. associate-*r*N/A

            \[\leadsto \frac{{b}^{2} \cdot \left(x \cdot \frac{1}{2}\right)}{y} \]
          4. *-commutativeN/A

            \[\leadsto \frac{{b}^{2} \cdot \left(\frac{1}{2} \cdot x\right)}{y} \]
          5. /-lowering-/.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\left({b}^{2} \cdot \left(\frac{1}{2} \cdot x\right)\right), \color{blue}{y}\right) \]
          6. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\left({b}^{2} \cdot \left(x \cdot \frac{1}{2}\right)\right), y\right) \]
          7. associate-*r*N/A

            \[\leadsto \mathsf{/.f64}\left(\left(\left({b}^{2} \cdot x\right) \cdot \frac{1}{2}\right), y\right) \]
          8. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\left(x \cdot {b}^{2}\right) \cdot \frac{1}{2}\right), y\right) \]
          9. associate-*l*N/A

            \[\leadsto \mathsf{/.f64}\left(\left(x \cdot \left({b}^{2} \cdot \frac{1}{2}\right)\right), y\right) \]
          10. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\left(x \cdot \left(\frac{1}{2} \cdot {b}^{2}\right)\right), y\right) \]
          11. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(\frac{1}{2} \cdot {b}^{2}\right)\right), y\right) \]
          12. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left({b}^{2} \cdot \frac{1}{2}\right)\right), y\right) \]
          13. unpow2N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(\left(b \cdot b\right) \cdot \frac{1}{2}\right)\right), y\right) \]
          14. associate-*r*N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(b \cdot \left(b \cdot \frac{1}{2}\right)\right)\right), y\right) \]
          15. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(b \cdot \left(\frac{1}{2} \cdot b\right)\right)\right), y\right) \]
          16. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{*.f64}\left(b, \left(\frac{1}{2} \cdot b\right)\right)\right), y\right) \]
          17. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{*.f64}\left(b, \left(b \cdot \frac{1}{2}\right)\right)\right), y\right) \]
          18. *-lowering-*.f6464.0%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{*.f64}\left(b, \frac{1}{2}\right)\right)\right), y\right) \]
        11. Simplified64.0%

          \[\leadsto \color{blue}{\frac{x \cdot \left(b \cdot \left(b \cdot 0.5\right)\right)}{y}} \]

        if 1.15999999999999994e-260 < b < 3.7e14

        1. Initial program 92.1%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in y around 0

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(\log a \cdot \left(t - 1\right) - b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. --lowering--.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\left(\log a \cdot \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          2. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\log a, \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          3. log-lowering-log.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          4. sub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right), b\right)\right)\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + -1\right)\right), b\right)\right)\right), y\right) \]
          6. +-lowering-+.f6473.4%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \mathsf{+.f64}\left(t, -1\right)\right), b\right)\right)\right), y\right) \]
        5. Simplified73.4%

          \[\leadsto \frac{x \cdot e^{\color{blue}{\log a \cdot \left(t + -1\right) - b}}}{y} \]
        6. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(x \cdot e^{\log a \cdot \left(t - 1\right)}\right)}, y\right) \]
        7. Step-by-step derivation
          1. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(e^{\log a \cdot \left(t - 1\right)}\right)\right), y\right) \]
          2. exp-to-powN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left({a}^{\left(t - 1\right)}\right)\right), y\right) \]
          3. pow-lowering-pow.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t - 1\right)\right)\right), y\right) \]
          4. sub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right)\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + -1\right)\right)\right), y\right) \]
          6. +-lowering-+.f6474.0%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \mathsf{+.f64}\left(t, -1\right)\right)\right), y\right) \]
        8. Simplified74.0%

          \[\leadsto \frac{\color{blue}{x \cdot {a}^{\left(t + -1\right)}}}{y} \]
        9. Taylor expanded in t around 0

          \[\leadsto \color{blue}{\frac{x}{a \cdot y}} \]
        10. Step-by-step derivation
          1. *-commutativeN/A

            \[\leadsto \frac{x}{y \cdot \color{blue}{a}} \]
          2. associate-/r*N/A

            \[\leadsto \frac{\frac{x}{y}}{\color{blue}{a}} \]
          3. /-lowering-/.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{x}{y}\right), \color{blue}{a}\right) \]
          4. /-lowering-/.f6450.6%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(x, y\right), a\right) \]
        11. Simplified50.6%

          \[\leadsto \color{blue}{\frac{\frac{x}{y}}{a}} \]

        if 3.7e14 < b

        1. Initial program 100.0%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in b around inf

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(-1 \cdot b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. mul-1-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(\mathsf{neg}\left(b\right)\right)\right)\right), y\right) \]
          2. neg-sub0N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(0 - b\right)\right)\right), y\right) \]
          3. --lowering--.f6482.0%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(0, b\right)\right)\right), y\right) \]
        5. Simplified82.0%

          \[\leadsto \frac{x \cdot e^{\color{blue}{0 - b}}}{y} \]
        6. Step-by-step derivation
          1. sub0-negN/A

            \[\leadsto \mathsf{/.f64}\left(\left(x \cdot e^{\mathsf{neg}\left(b\right)}\right), y\right) \]
          2. exp-negN/A

            \[\leadsto \mathsf{/.f64}\left(\left(x \cdot \frac{1}{e^{b}}\right), y\right) \]
          3. div-invN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{x}{e^{b}}\right), y\right) \]
          4. clear-numN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{1}{\frac{e^{b}}{x}}\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{-1 \cdot -1}{\frac{e^{b}}{x}}\right), y\right) \]
          6. /-lowering-/.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(\left(-1 \cdot -1\right), \left(\frac{e^{b}}{x}\right)\right), y\right) \]
          7. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \left(\frac{e^{b}}{x}\right)\right), y\right) \]
          8. /-lowering-/.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\left(e^{b}\right), x\right)\right), y\right) \]
          9. exp-lowering-exp.f6482.0%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{exp.f64}\left(b\right), x\right)\right), y\right) \]
        7. Applied egg-rr82.0%

          \[\leadsto \frac{\color{blue}{\frac{1}{\frac{e^{b}}{x}}}}{y} \]
        8. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\color{blue}{\left(1 + b \cdot \left(1 + b \cdot \left(\frac{1}{2} + \frac{1}{6} \cdot b\right)\right)\right)}, x\right)\right), y\right) \]
        9. Step-by-step derivation
          1. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \left(b \cdot \left(1 + b \cdot \left(\frac{1}{2} + \frac{1}{6} \cdot b\right)\right)\right)\right), x\right)\right), y\right) \]
          2. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \left(1 + b \cdot \left(\frac{1}{2} + \frac{1}{6} \cdot b\right)\right)\right)\right), x\right)\right), y\right) \]
          3. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(1, \left(b \cdot \left(\frac{1}{2} + \frac{1}{6} \cdot b\right)\right)\right)\right)\right), x\right)\right), y\right) \]
          4. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \left(\frac{1}{2} + \frac{1}{6} \cdot b\right)\right)\right)\right)\right), x\right)\right), y\right) \]
          5. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(\frac{1}{2}, \left(\frac{1}{6} \cdot b\right)\right)\right)\right)\right)\right), x\right)\right), y\right) \]
          6. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(\frac{1}{2}, \left(b \cdot \frac{1}{6}\right)\right)\right)\right)\right)\right), x\right)\right), y\right) \]
          7. *-lowering-*.f6473.9%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(\frac{1}{2}, \mathsf{*.f64}\left(b, \frac{1}{6}\right)\right)\right)\right)\right)\right), x\right)\right), y\right) \]
        10. Simplified73.9%

          \[\leadsto \frac{\frac{1}{\frac{\color{blue}{1 + b \cdot \left(1 + b \cdot \left(0.5 + b \cdot 0.16666666666666666\right)\right)}}{x}}}{y} \]
      3. Recombined 5 regimes into one program.
      4. Add Preprocessing

      Alternative 14: 51.9% accurate, 9.0× speedup?

      \[\begin{array}{l} \\ \begin{array}{l} \mathbf{if}\;b \leq -13500000000000:\\ \;\;\;\;x \cdot \frac{1 + b \cdot \left(-1 + b \cdot \left(0.5 + b \cdot -0.16666666666666666\right)\right)}{y}\\ \mathbf{elif}\;b \leq -2.7 \cdot 10^{-236}:\\ \;\;\;\;\frac{\frac{x}{a}}{y}\\ \mathbf{elif}\;b \leq 3.8 \cdot 10^{-255}:\\ \;\;\;\;\frac{x \cdot \left(b \cdot \left(b \cdot 0.5\right)\right)}{y}\\ \mathbf{elif}\;b \leq 1.25 \cdot 10^{+26}:\\ \;\;\;\;\frac{\frac{x}{y}}{a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{\frac{1 + b \cdot \left(1 + b \cdot 0.5\right)}{x}}}{y}\\ \end{array} \end{array} \]
      (FPCore (x y z t a b)
       :precision binary64
       (if (<= b -13500000000000.0)
         (* x (/ (+ 1.0 (* b (+ -1.0 (* b (+ 0.5 (* b -0.16666666666666666)))))) y))
         (if (<= b -2.7e-236)
           (/ (/ x a) y)
           (if (<= b 3.8e-255)
             (/ (* x (* b (* b 0.5))) y)
             (if (<= b 1.25e+26)
               (/ (/ x y) a)
               (/ (/ 1.0 (/ (+ 1.0 (* b (+ 1.0 (* b 0.5)))) x)) y))))))
      double code(double x, double y, double z, double t, double a, double b) {
      	double tmp;
      	if (b <= -13500000000000.0) {
      		tmp = x * ((1.0 + (b * (-1.0 + (b * (0.5 + (b * -0.16666666666666666)))))) / y);
      	} else if (b <= -2.7e-236) {
      		tmp = (x / a) / y;
      	} else if (b <= 3.8e-255) {
      		tmp = (x * (b * (b * 0.5))) / y;
      	} else if (b <= 1.25e+26) {
      		tmp = (x / y) / a;
      	} else {
      		tmp = (1.0 / ((1.0 + (b * (1.0 + (b * 0.5)))) / x)) / y;
      	}
      	return tmp;
      }
      
      real(8) function code(x, y, z, t, a, b)
          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) :: tmp
          if (b <= (-13500000000000.0d0)) then
              tmp = x * ((1.0d0 + (b * ((-1.0d0) + (b * (0.5d0 + (b * (-0.16666666666666666d0))))))) / y)
          else if (b <= (-2.7d-236)) then
              tmp = (x / a) / y
          else if (b <= 3.8d-255) then
              tmp = (x * (b * (b * 0.5d0))) / y
          else if (b <= 1.25d+26) then
              tmp = (x / y) / a
          else
              tmp = (1.0d0 / ((1.0d0 + (b * (1.0d0 + (b * 0.5d0)))) / x)) / y
          end if
          code = tmp
      end function
      
      public static double code(double x, double y, double z, double t, double a, double b) {
      	double tmp;
      	if (b <= -13500000000000.0) {
      		tmp = x * ((1.0 + (b * (-1.0 + (b * (0.5 + (b * -0.16666666666666666)))))) / y);
      	} else if (b <= -2.7e-236) {
      		tmp = (x / a) / y;
      	} else if (b <= 3.8e-255) {
      		tmp = (x * (b * (b * 0.5))) / y;
      	} else if (b <= 1.25e+26) {
      		tmp = (x / y) / a;
      	} else {
      		tmp = (1.0 / ((1.0 + (b * (1.0 + (b * 0.5)))) / x)) / y;
      	}
      	return tmp;
      }
      
      def code(x, y, z, t, a, b):
      	tmp = 0
      	if b <= -13500000000000.0:
      		tmp = x * ((1.0 + (b * (-1.0 + (b * (0.5 + (b * -0.16666666666666666)))))) / y)
      	elif b <= -2.7e-236:
      		tmp = (x / a) / y
      	elif b <= 3.8e-255:
      		tmp = (x * (b * (b * 0.5))) / y
      	elif b <= 1.25e+26:
      		tmp = (x / y) / a
      	else:
      		tmp = (1.0 / ((1.0 + (b * (1.0 + (b * 0.5)))) / x)) / y
      	return tmp
      
      function code(x, y, z, t, a, b)
      	tmp = 0.0
      	if (b <= -13500000000000.0)
      		tmp = Float64(x * Float64(Float64(1.0 + Float64(b * Float64(-1.0 + Float64(b * Float64(0.5 + Float64(b * -0.16666666666666666)))))) / y));
      	elseif (b <= -2.7e-236)
      		tmp = Float64(Float64(x / a) / y);
      	elseif (b <= 3.8e-255)
      		tmp = Float64(Float64(x * Float64(b * Float64(b * 0.5))) / y);
      	elseif (b <= 1.25e+26)
      		tmp = Float64(Float64(x / y) / a);
      	else
      		tmp = Float64(Float64(1.0 / Float64(Float64(1.0 + Float64(b * Float64(1.0 + Float64(b * 0.5)))) / x)) / y);
      	end
      	return tmp
      end
      
      function tmp_2 = code(x, y, z, t, a, b)
      	tmp = 0.0;
      	if (b <= -13500000000000.0)
      		tmp = x * ((1.0 + (b * (-1.0 + (b * (0.5 + (b * -0.16666666666666666)))))) / y);
      	elseif (b <= -2.7e-236)
      		tmp = (x / a) / y;
      	elseif (b <= 3.8e-255)
      		tmp = (x * (b * (b * 0.5))) / y;
      	elseif (b <= 1.25e+26)
      		tmp = (x / y) / a;
      	else
      		tmp = (1.0 / ((1.0 + (b * (1.0 + (b * 0.5)))) / x)) / y;
      	end
      	tmp_2 = tmp;
      end
      
      code[x_, y_, z_, t_, a_, b_] := If[LessEqual[b, -13500000000000.0], N[(x * N[(N[(1.0 + N[(b * N[(-1.0 + N[(b * N[(0.5 + N[(b * -0.16666666666666666), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision]), $MachinePrecision], If[LessEqual[b, -2.7e-236], N[(N[(x / a), $MachinePrecision] / y), $MachinePrecision], If[LessEqual[b, 3.8e-255], N[(N[(x * N[(b * N[(b * 0.5), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision], If[LessEqual[b, 1.25e+26], N[(N[(x / y), $MachinePrecision] / a), $MachinePrecision], N[(N[(1.0 / N[(N[(1.0 + N[(b * N[(1.0 + N[(b * 0.5), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / x), $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision]]]]]
      
      \begin{array}{l}
      
      \\
      \begin{array}{l}
      \mathbf{if}\;b \leq -13500000000000:\\
      \;\;\;\;x \cdot \frac{1 + b \cdot \left(-1 + b \cdot \left(0.5 + b \cdot -0.16666666666666666\right)\right)}{y}\\
      
      \mathbf{elif}\;b \leq -2.7 \cdot 10^{-236}:\\
      \;\;\;\;\frac{\frac{x}{a}}{y}\\
      
      \mathbf{elif}\;b \leq 3.8 \cdot 10^{-255}:\\
      \;\;\;\;\frac{x \cdot \left(b \cdot \left(b \cdot 0.5\right)\right)}{y}\\
      
      \mathbf{elif}\;b \leq 1.25 \cdot 10^{+26}:\\
      \;\;\;\;\frac{\frac{x}{y}}{a}\\
      
      \mathbf{else}:\\
      \;\;\;\;\frac{\frac{1}{\frac{1 + b \cdot \left(1 + b \cdot 0.5\right)}{x}}}{y}\\
      
      
      \end{array}
      \end{array}
      
      Derivation
      1. Split input into 5 regimes
      2. if b < -1.35e13

        1. Initial program 100.0%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in b around inf

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(-1 \cdot b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. mul-1-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(\mathsf{neg}\left(b\right)\right)\right)\right), y\right) \]
          2. neg-sub0N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(0 - b\right)\right)\right), y\right) \]
          3. --lowering--.f6488.8%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(0, b\right)\right)\right), y\right) \]
        5. Simplified88.8%

          \[\leadsto \frac{x \cdot e^{\color{blue}{0 - b}}}{y} \]
        6. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(x + b \cdot \left(-1 \cdot x + b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right)\right)}, y\right) \]
        7. Step-by-step derivation
          1. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \left(b \cdot \left(-1 \cdot x + b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right)\right)\right), y\right) \]
          2. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \left(-1 \cdot x + b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right)\right)\right), y\right) \]
          3. +-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \left(b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right) + -1 \cdot x\right)\right)\right), y\right) \]
          4. mul-1-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \left(b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right) + \left(\mathsf{neg}\left(x\right)\right)\right)\right)\right), y\right) \]
          5. unsub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \left(b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right) - x\right)\right)\right), y\right) \]
          6. --lowering--.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\left(b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right), x\right)\right)\right), y\right) \]
          7. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right), x\right)\right)\right), y\right) \]
          8. associate-*r*N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \left(\left(\frac{-1}{6} \cdot b\right) \cdot x + \frac{1}{2} \cdot x\right)\right), x\right)\right)\right), y\right) \]
          9. distribute-rgt-outN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \left(x \cdot \left(\frac{-1}{6} \cdot b + \frac{1}{2}\right)\right)\right), x\right)\right)\right), y\right) \]
          10. +-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \left(x \cdot \left(\frac{1}{2} + \frac{-1}{6} \cdot b\right)\right)\right), x\right)\right)\right), y\right) \]
          11. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(x, \left(\frac{1}{2} + \frac{-1}{6} \cdot b\right)\right)\right), x\right)\right)\right), y\right) \]
          12. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(x, \mathsf{+.f64}\left(\frac{1}{2}, \left(\frac{-1}{6} \cdot b\right)\right)\right)\right), x\right)\right)\right), y\right) \]
          13. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(x, \mathsf{+.f64}\left(\frac{1}{2}, \left(b \cdot \frac{-1}{6}\right)\right)\right)\right), x\right)\right)\right), y\right) \]
          14. *-lowering-*.f6476.6%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(x, \mathsf{+.f64}\left(\frac{1}{2}, \mathsf{*.f64}\left(b, \frac{-1}{6}\right)\right)\right)\right), x\right)\right)\right), y\right) \]
        8. Simplified76.6%

          \[\leadsto \frac{\color{blue}{x + b \cdot \left(b \cdot \left(x \cdot \left(0.5 + b \cdot -0.16666666666666666\right)\right) - x\right)}}{y} \]
        9. Taylor expanded in x around 0

          \[\leadsto \color{blue}{\frac{x \cdot \left(1 + b \cdot \left(b \cdot \left(\frac{1}{2} + \frac{-1}{6} \cdot b\right) - 1\right)\right)}{y}} \]
        10. Step-by-step derivation
          1. associate-/l*N/A

            \[\leadsto x \cdot \color{blue}{\frac{1 + b \cdot \left(b \cdot \left(\frac{1}{2} + \frac{-1}{6} \cdot b\right) - 1\right)}{y}} \]
          2. *-lowering-*.f64N/A

            \[\leadsto \mathsf{*.f64}\left(x, \color{blue}{\left(\frac{1 + b \cdot \left(b \cdot \left(\frac{1}{2} + \frac{-1}{6} \cdot b\right) - 1\right)}{y}\right)}\right) \]
          3. /-lowering-/.f64N/A

            \[\leadsto \mathsf{*.f64}\left(x, \mathsf{/.f64}\left(\left(1 + b \cdot \left(b \cdot \left(\frac{1}{2} + \frac{-1}{6} \cdot b\right) - 1\right)\right), \color{blue}{y}\right)\right) \]
          4. +-lowering-+.f64N/A

            \[\leadsto \mathsf{*.f64}\left(x, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \left(b \cdot \left(b \cdot \left(\frac{1}{2} + \frac{-1}{6} \cdot b\right) - 1\right)\right)\right), y\right)\right) \]
          5. *-lowering-*.f64N/A

            \[\leadsto \mathsf{*.f64}\left(x, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \left(b \cdot \left(\frac{1}{2} + \frac{-1}{6} \cdot b\right) - 1\right)\right)\right), y\right)\right) \]
          6. sub-negN/A

            \[\leadsto \mathsf{*.f64}\left(x, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \left(b \cdot \left(\frac{1}{2} + \frac{-1}{6} \cdot b\right) + \left(\mathsf{neg}\left(1\right)\right)\right)\right)\right), y\right)\right) \]
          7. metadata-evalN/A

            \[\leadsto \mathsf{*.f64}\left(x, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \left(b \cdot \left(\frac{1}{2} + \frac{-1}{6} \cdot b\right) + -1\right)\right)\right), y\right)\right) \]
          8. +-commutativeN/A

            \[\leadsto \mathsf{*.f64}\left(x, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \left(-1 + b \cdot \left(\frac{1}{2} + \frac{-1}{6} \cdot b\right)\right)\right)\right), y\right)\right) \]
          9. +-lowering-+.f64N/A

            \[\leadsto \mathsf{*.f64}\left(x, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(-1, \left(b \cdot \left(\frac{1}{2} + \frac{-1}{6} \cdot b\right)\right)\right)\right)\right), y\right)\right) \]
          10. *-lowering-*.f64N/A

            \[\leadsto \mathsf{*.f64}\left(x, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(-1, \mathsf{*.f64}\left(b, \left(\frac{1}{2} + \frac{-1}{6} \cdot b\right)\right)\right)\right)\right), y\right)\right) \]
          11. +-lowering-+.f64N/A

            \[\leadsto \mathsf{*.f64}\left(x, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(-1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(\frac{1}{2}, \left(\frac{-1}{6} \cdot b\right)\right)\right)\right)\right)\right), y\right)\right) \]
          12. *-commutativeN/A

            \[\leadsto \mathsf{*.f64}\left(x, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(-1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(\frac{1}{2}, \left(b \cdot \frac{-1}{6}\right)\right)\right)\right)\right)\right), y\right)\right) \]
          13. *-lowering-*.f6483.3%

            \[\leadsto \mathsf{*.f64}\left(x, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(-1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(\frac{1}{2}, \mathsf{*.f64}\left(b, \frac{-1}{6}\right)\right)\right)\right)\right)\right), y\right)\right) \]
        11. Simplified83.3%

          \[\leadsto \color{blue}{x \cdot \frac{1 + b \cdot \left(-1 + b \cdot \left(0.5 + b \cdot -0.16666666666666666\right)\right)}{y}} \]

        if -1.35e13 < b < -2.7e-236

        1. Initial program 98.5%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in y around 0

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(\log a \cdot \left(t - 1\right) - b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. --lowering--.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\left(\log a \cdot \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          2. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\log a, \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          3. log-lowering-log.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          4. sub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right), b\right)\right)\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + -1\right)\right), b\right)\right)\right), y\right) \]
          6. +-lowering-+.f6472.8%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \mathsf{+.f64}\left(t, -1\right)\right), b\right)\right)\right), y\right) \]
        5. Simplified72.8%

          \[\leadsto \frac{x \cdot e^{\color{blue}{\log a \cdot \left(t + -1\right) - b}}}{y} \]
        6. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(x \cdot e^{\log a \cdot \left(t - 1\right)}\right)}, y\right) \]
        7. Step-by-step derivation
          1. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(e^{\log a \cdot \left(t - 1\right)}\right)\right), y\right) \]
          2. exp-to-powN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left({a}^{\left(t - 1\right)}\right)\right), y\right) \]
          3. pow-lowering-pow.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t - 1\right)\right)\right), y\right) \]
          4. sub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right)\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + -1\right)\right)\right), y\right) \]
          6. +-lowering-+.f6475.5%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \mathsf{+.f64}\left(t, -1\right)\right)\right), y\right) \]
        8. Simplified75.5%

          \[\leadsto \frac{\color{blue}{x \cdot {a}^{\left(t + -1\right)}}}{y} \]
        9. Taylor expanded in t around 0

          \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(\frac{x}{a}\right)}, y\right) \]
        10. Step-by-step derivation
          1. /-lowering-/.f6443.8%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(x, a\right), y\right) \]
        11. Simplified43.8%

          \[\leadsto \frac{\color{blue}{\frac{x}{a}}}{y} \]

        if -2.7e-236 < b < 3.8e-255

        1. Initial program 94.4%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in b around inf

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(-1 \cdot b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. mul-1-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(\mathsf{neg}\left(b\right)\right)\right)\right), y\right) \]
          2. neg-sub0N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(0 - b\right)\right)\right), y\right) \]
          3. --lowering--.f6413.5%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(0, b\right)\right)\right), y\right) \]
        5. Simplified13.5%

          \[\leadsto \frac{x \cdot e^{\color{blue}{0 - b}}}{y} \]
        6. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \color{blue}{\left(1 + b \cdot \left(\frac{1}{2} \cdot b - 1\right)\right)}\right), y\right) \]
        7. Step-by-step derivation
          1. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \left(b \cdot \left(\frac{1}{2} \cdot b - 1\right)\right)\right)\right), y\right) \]
          2. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \left(\frac{1}{2} \cdot b - 1\right)\right)\right)\right), y\right) \]
          3. sub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \left(\frac{1}{2} \cdot b + \left(\mathsf{neg}\left(1\right)\right)\right)\right)\right)\right), y\right) \]
          4. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \left(\frac{1}{2} \cdot b + -1\right)\right)\right)\right), y\right) \]
          5. +-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \left(-1 + \frac{1}{2} \cdot b\right)\right)\right)\right), y\right) \]
          6. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(-1, \left(\frac{1}{2} \cdot b\right)\right)\right)\right)\right), y\right) \]
          7. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(-1, \left(b \cdot \frac{1}{2}\right)\right)\right)\right)\right), y\right) \]
          8. *-lowering-*.f6413.5%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(-1, \mathsf{*.f64}\left(b, \frac{1}{2}\right)\right)\right)\right)\right), y\right) \]
        8. Simplified13.5%

          \[\leadsto \frac{x \cdot \color{blue}{\left(1 + b \cdot \left(-1 + b \cdot 0.5\right)\right)}}{y} \]
        9. Taylor expanded in b around inf

          \[\leadsto \color{blue}{\frac{1}{2} \cdot \frac{{b}^{2} \cdot x}{y}} \]
        10. Step-by-step derivation
          1. associate-*r/N/A

            \[\leadsto \frac{\frac{1}{2} \cdot \left({b}^{2} \cdot x\right)}{\color{blue}{y}} \]
          2. *-commutativeN/A

            \[\leadsto \frac{\left({b}^{2} \cdot x\right) \cdot \frac{1}{2}}{y} \]
          3. associate-*r*N/A

            \[\leadsto \frac{{b}^{2} \cdot \left(x \cdot \frac{1}{2}\right)}{y} \]
          4. *-commutativeN/A

            \[\leadsto \frac{{b}^{2} \cdot \left(\frac{1}{2} \cdot x\right)}{y} \]
          5. /-lowering-/.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\left({b}^{2} \cdot \left(\frac{1}{2} \cdot x\right)\right), \color{blue}{y}\right) \]
          6. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\left({b}^{2} \cdot \left(x \cdot \frac{1}{2}\right)\right), y\right) \]
          7. associate-*r*N/A

            \[\leadsto \mathsf{/.f64}\left(\left(\left({b}^{2} \cdot x\right) \cdot \frac{1}{2}\right), y\right) \]
          8. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\left(x \cdot {b}^{2}\right) \cdot \frac{1}{2}\right), y\right) \]
          9. associate-*l*N/A

            \[\leadsto \mathsf{/.f64}\left(\left(x \cdot \left({b}^{2} \cdot \frac{1}{2}\right)\right), y\right) \]
          10. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\left(x \cdot \left(\frac{1}{2} \cdot {b}^{2}\right)\right), y\right) \]
          11. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(\frac{1}{2} \cdot {b}^{2}\right)\right), y\right) \]
          12. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left({b}^{2} \cdot \frac{1}{2}\right)\right), y\right) \]
          13. unpow2N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(\left(b \cdot b\right) \cdot \frac{1}{2}\right)\right), y\right) \]
          14. associate-*r*N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(b \cdot \left(b \cdot \frac{1}{2}\right)\right)\right), y\right) \]
          15. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(b \cdot \left(\frac{1}{2} \cdot b\right)\right)\right), y\right) \]
          16. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{*.f64}\left(b, \left(\frac{1}{2} \cdot b\right)\right)\right), y\right) \]
          17. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{*.f64}\left(b, \left(b \cdot \frac{1}{2}\right)\right)\right), y\right) \]
          18. *-lowering-*.f6464.0%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{*.f64}\left(b, \frac{1}{2}\right)\right)\right), y\right) \]
        11. Simplified64.0%

          \[\leadsto \color{blue}{\frac{x \cdot \left(b \cdot \left(b \cdot 0.5\right)\right)}{y}} \]

        if 3.8e-255 < b < 1.25e26

        1. Initial program 92.4%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in y around 0

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(\log a \cdot \left(t - 1\right) - b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. --lowering--.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\left(\log a \cdot \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          2. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\log a, \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          3. log-lowering-log.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          4. sub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right), b\right)\right)\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + -1\right)\right), b\right)\right)\right), y\right) \]
          6. +-lowering-+.f6474.3%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \mathsf{+.f64}\left(t, -1\right)\right), b\right)\right)\right), y\right) \]
        5. Simplified74.3%

          \[\leadsto \frac{x \cdot e^{\color{blue}{\log a \cdot \left(t + -1\right) - b}}}{y} \]
        6. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(x \cdot e^{\log a \cdot \left(t - 1\right)}\right)}, y\right) \]
        7. Step-by-step derivation
          1. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(e^{\log a \cdot \left(t - 1\right)}\right)\right), y\right) \]
          2. exp-to-powN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left({a}^{\left(t - 1\right)}\right)\right), y\right) \]
          3. pow-lowering-pow.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t - 1\right)\right)\right), y\right) \]
          4. sub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right)\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + -1\right)\right)\right), y\right) \]
          6. +-lowering-+.f6473.2%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \mathsf{+.f64}\left(t, -1\right)\right)\right), y\right) \]
        8. Simplified73.2%

          \[\leadsto \frac{\color{blue}{x \cdot {a}^{\left(t + -1\right)}}}{y} \]
        9. Taylor expanded in t around 0

          \[\leadsto \color{blue}{\frac{x}{a \cdot y}} \]
        10. Step-by-step derivation
          1. *-commutativeN/A

            \[\leadsto \frac{x}{y \cdot \color{blue}{a}} \]
          2. associate-/r*N/A

            \[\leadsto \frac{\frac{x}{y}}{\color{blue}{a}} \]
          3. /-lowering-/.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{x}{y}\right), \color{blue}{a}\right) \]
          4. /-lowering-/.f6450.6%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(x, y\right), a\right) \]
        11. Simplified50.6%

          \[\leadsto \color{blue}{\frac{\frac{x}{y}}{a}} \]

        if 1.25e26 < b

        1. Initial program 100.0%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in b around inf

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(-1 \cdot b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. mul-1-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(\mathsf{neg}\left(b\right)\right)\right)\right), y\right) \]
          2. neg-sub0N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(0 - b\right)\right)\right), y\right) \]
          3. --lowering--.f6481.3%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(0, b\right)\right)\right), y\right) \]
        5. Simplified81.3%

          \[\leadsto \frac{x \cdot e^{\color{blue}{0 - b}}}{y} \]
        6. Step-by-step derivation
          1. sub0-negN/A

            \[\leadsto \mathsf{/.f64}\left(\left(x \cdot e^{\mathsf{neg}\left(b\right)}\right), y\right) \]
          2. exp-negN/A

            \[\leadsto \mathsf{/.f64}\left(\left(x \cdot \frac{1}{e^{b}}\right), y\right) \]
          3. div-invN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{x}{e^{b}}\right), y\right) \]
          4. clear-numN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{1}{\frac{e^{b}}{x}}\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{-1 \cdot -1}{\frac{e^{b}}{x}}\right), y\right) \]
          6. /-lowering-/.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(\left(-1 \cdot -1\right), \left(\frac{e^{b}}{x}\right)\right), y\right) \]
          7. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \left(\frac{e^{b}}{x}\right)\right), y\right) \]
          8. /-lowering-/.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\left(e^{b}\right), x\right)\right), y\right) \]
          9. exp-lowering-exp.f6481.3%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{exp.f64}\left(b\right), x\right)\right), y\right) \]
        7. Applied egg-rr81.3%

          \[\leadsto \frac{\color{blue}{\frac{1}{\frac{e^{b}}{x}}}}{y} \]
        8. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\color{blue}{\left(1 + b \cdot \left(1 + \frac{1}{2} \cdot b\right)\right)}, x\right)\right), y\right) \]
        9. Step-by-step derivation
          1. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \left(b \cdot \left(1 + \frac{1}{2} \cdot b\right)\right)\right), x\right)\right), y\right) \]
          2. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \left(1 + \frac{1}{2} \cdot b\right)\right)\right), x\right)\right), y\right) \]
          3. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(1, \left(\frac{1}{2} \cdot b\right)\right)\right)\right), x\right)\right), y\right) \]
          4. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(1, \left(b \cdot \frac{1}{2}\right)\right)\right)\right), x\right)\right), y\right) \]
          5. *-lowering-*.f6461.7%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \frac{1}{2}\right)\right)\right)\right), x\right)\right), y\right) \]
        10. Simplified61.7%

          \[\leadsto \frac{\frac{1}{\frac{\color{blue}{1 + b \cdot \left(1 + b \cdot 0.5\right)}}{x}}}{y} \]
      3. Recombined 5 regimes into one program.
      4. Add Preprocessing

      Alternative 15: 43.5% accurate, 10.8× speedup?

      \[\begin{array}{l} \\ \begin{array}{l} t_1 := \frac{x \cdot \left(b \cdot \left(b \cdot 0.5\right)\right)}{y}\\ \mathbf{if}\;b \leq -6.5 \cdot 10^{+20}:\\ \;\;\;\;t\_1\\ \mathbf{elif}\;b \leq -8.6 \cdot 10^{-239}:\\ \;\;\;\;\frac{\frac{x}{a}}{y}\\ \mathbf{elif}\;b \leq 3.6 \cdot 10^{-255}:\\ \;\;\;\;t\_1\\ \mathbf{elif}\;b \leq 8.1 \cdot 10^{+31}:\\ \;\;\;\;\frac{\frac{x}{y}}{a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{\frac{1 + b}{x}}}{y}\\ \end{array} \end{array} \]
      (FPCore (x y z t a b)
       :precision binary64
       (let* ((t_1 (/ (* x (* b (* b 0.5))) y)))
         (if (<= b -6.5e+20)
           t_1
           (if (<= b -8.6e-239)
             (/ (/ x a) y)
             (if (<= b 3.6e-255)
               t_1
               (if (<= b 8.1e+31) (/ (/ x y) a) (/ (/ 1.0 (/ (+ 1.0 b) x)) y)))))))
      double code(double x, double y, double z, double t, double a, double b) {
      	double t_1 = (x * (b * (b * 0.5))) / y;
      	double tmp;
      	if (b <= -6.5e+20) {
      		tmp = t_1;
      	} else if (b <= -8.6e-239) {
      		tmp = (x / a) / y;
      	} else if (b <= 3.6e-255) {
      		tmp = t_1;
      	} else if (b <= 8.1e+31) {
      		tmp = (x / y) / a;
      	} else {
      		tmp = (1.0 / ((1.0 + b) / x)) / y;
      	}
      	return tmp;
      }
      
      real(8) function code(x, y, z, t, a, b)
          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) :: t_1
          real(8) :: tmp
          t_1 = (x * (b * (b * 0.5d0))) / y
          if (b <= (-6.5d+20)) then
              tmp = t_1
          else if (b <= (-8.6d-239)) then
              tmp = (x / a) / y
          else if (b <= 3.6d-255) then
              tmp = t_1
          else if (b <= 8.1d+31) then
              tmp = (x / y) / a
          else
              tmp = (1.0d0 / ((1.0d0 + b) / x)) / y
          end if
          code = tmp
      end function
      
      public static double code(double x, double y, double z, double t, double a, double b) {
      	double t_1 = (x * (b * (b * 0.5))) / y;
      	double tmp;
      	if (b <= -6.5e+20) {
      		tmp = t_1;
      	} else if (b <= -8.6e-239) {
      		tmp = (x / a) / y;
      	} else if (b <= 3.6e-255) {
      		tmp = t_1;
      	} else if (b <= 8.1e+31) {
      		tmp = (x / y) / a;
      	} else {
      		tmp = (1.0 / ((1.0 + b) / x)) / y;
      	}
      	return tmp;
      }
      
      def code(x, y, z, t, a, b):
      	t_1 = (x * (b * (b * 0.5))) / y
      	tmp = 0
      	if b <= -6.5e+20:
      		tmp = t_1
      	elif b <= -8.6e-239:
      		tmp = (x / a) / y
      	elif b <= 3.6e-255:
      		tmp = t_1
      	elif b <= 8.1e+31:
      		tmp = (x / y) / a
      	else:
      		tmp = (1.0 / ((1.0 + b) / x)) / y
      	return tmp
      
      function code(x, y, z, t, a, b)
      	t_1 = Float64(Float64(x * Float64(b * Float64(b * 0.5))) / y)
      	tmp = 0.0
      	if (b <= -6.5e+20)
      		tmp = t_1;
      	elseif (b <= -8.6e-239)
      		tmp = Float64(Float64(x / a) / y);
      	elseif (b <= 3.6e-255)
      		tmp = t_1;
      	elseif (b <= 8.1e+31)
      		tmp = Float64(Float64(x / y) / a);
      	else
      		tmp = Float64(Float64(1.0 / Float64(Float64(1.0 + b) / x)) / y);
      	end
      	return tmp
      end
      
      function tmp_2 = code(x, y, z, t, a, b)
      	t_1 = (x * (b * (b * 0.5))) / y;
      	tmp = 0.0;
      	if (b <= -6.5e+20)
      		tmp = t_1;
      	elseif (b <= -8.6e-239)
      		tmp = (x / a) / y;
      	elseif (b <= 3.6e-255)
      		tmp = t_1;
      	elseif (b <= 8.1e+31)
      		tmp = (x / y) / a;
      	else
      		tmp = (1.0 / ((1.0 + b) / x)) / y;
      	end
      	tmp_2 = tmp;
      end
      
      code[x_, y_, z_, t_, a_, b_] := Block[{t$95$1 = N[(N[(x * N[(b * N[(b * 0.5), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision]}, If[LessEqual[b, -6.5e+20], t$95$1, If[LessEqual[b, -8.6e-239], N[(N[(x / a), $MachinePrecision] / y), $MachinePrecision], If[LessEqual[b, 3.6e-255], t$95$1, If[LessEqual[b, 8.1e+31], N[(N[(x / y), $MachinePrecision] / a), $MachinePrecision], N[(N[(1.0 / N[(N[(1.0 + b), $MachinePrecision] / x), $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision]]]]]]
      
      \begin{array}{l}
      
      \\
      \begin{array}{l}
      t_1 := \frac{x \cdot \left(b \cdot \left(b \cdot 0.5\right)\right)}{y}\\
      \mathbf{if}\;b \leq -6.5 \cdot 10^{+20}:\\
      \;\;\;\;t\_1\\
      
      \mathbf{elif}\;b \leq -8.6 \cdot 10^{-239}:\\
      \;\;\;\;\frac{\frac{x}{a}}{y}\\
      
      \mathbf{elif}\;b \leq 3.6 \cdot 10^{-255}:\\
      \;\;\;\;t\_1\\
      
      \mathbf{elif}\;b \leq 8.1 \cdot 10^{+31}:\\
      \;\;\;\;\frac{\frac{x}{y}}{a}\\
      
      \mathbf{else}:\\
      \;\;\;\;\frac{\frac{1}{\frac{1 + b}{x}}}{y}\\
      
      
      \end{array}
      \end{array}
      
      Derivation
      1. Split input into 4 regimes
      2. if b < -6.5e20 or -8.6000000000000001e-239 < b < 3.6000000000000002e-255

        1. Initial program 98.8%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in b around inf

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(-1 \cdot b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. mul-1-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(\mathsf{neg}\left(b\right)\right)\right)\right), y\right) \]
          2. neg-sub0N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(0 - b\right)\right)\right), y\right) \]
          3. --lowering--.f6473.2%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(0, b\right)\right)\right), y\right) \]
        5. Simplified73.2%

          \[\leadsto \frac{x \cdot e^{\color{blue}{0 - b}}}{y} \]
        6. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \color{blue}{\left(1 + b \cdot \left(\frac{1}{2} \cdot b - 1\right)\right)}\right), y\right) \]
        7. Step-by-step derivation
          1. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \left(b \cdot \left(\frac{1}{2} \cdot b - 1\right)\right)\right)\right), y\right) \]
          2. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \left(\frac{1}{2} \cdot b - 1\right)\right)\right)\right), y\right) \]
          3. sub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \left(\frac{1}{2} \cdot b + \left(\mathsf{neg}\left(1\right)\right)\right)\right)\right)\right), y\right) \]
          4. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \left(\frac{1}{2} \cdot b + -1\right)\right)\right)\right), y\right) \]
          5. +-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \left(-1 + \frac{1}{2} \cdot b\right)\right)\right)\right), y\right) \]
          6. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(-1, \left(\frac{1}{2} \cdot b\right)\right)\right)\right)\right), y\right) \]
          7. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(-1, \left(b \cdot \frac{1}{2}\right)\right)\right)\right)\right), y\right) \]
          8. *-lowering-*.f6463.3%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(-1, \mathsf{*.f64}\left(b, \frac{1}{2}\right)\right)\right)\right)\right), y\right) \]
        8. Simplified63.3%

          \[\leadsto \frac{x \cdot \color{blue}{\left(1 + b \cdot \left(-1 + b \cdot 0.5\right)\right)}}{y} \]
        9. Taylor expanded in b around inf

          \[\leadsto \color{blue}{\frac{1}{2} \cdot \frac{{b}^{2} \cdot x}{y}} \]
        10. Step-by-step derivation
          1. associate-*r/N/A

            \[\leadsto \frac{\frac{1}{2} \cdot \left({b}^{2} \cdot x\right)}{\color{blue}{y}} \]
          2. *-commutativeN/A

            \[\leadsto \frac{\left({b}^{2} \cdot x\right) \cdot \frac{1}{2}}{y} \]
          3. associate-*r*N/A

            \[\leadsto \frac{{b}^{2} \cdot \left(x \cdot \frac{1}{2}\right)}{y} \]
          4. *-commutativeN/A

            \[\leadsto \frac{{b}^{2} \cdot \left(\frac{1}{2} \cdot x\right)}{y} \]
          5. /-lowering-/.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\left({b}^{2} \cdot \left(\frac{1}{2} \cdot x\right)\right), \color{blue}{y}\right) \]
          6. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\left({b}^{2} \cdot \left(x \cdot \frac{1}{2}\right)\right), y\right) \]
          7. associate-*r*N/A

            \[\leadsto \mathsf{/.f64}\left(\left(\left({b}^{2} \cdot x\right) \cdot \frac{1}{2}\right), y\right) \]
          8. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\left(x \cdot {b}^{2}\right) \cdot \frac{1}{2}\right), y\right) \]
          9. associate-*l*N/A

            \[\leadsto \mathsf{/.f64}\left(\left(x \cdot \left({b}^{2} \cdot \frac{1}{2}\right)\right), y\right) \]
          10. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\left(x \cdot \left(\frac{1}{2} \cdot {b}^{2}\right)\right), y\right) \]
          11. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(\frac{1}{2} \cdot {b}^{2}\right)\right), y\right) \]
          12. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left({b}^{2} \cdot \frac{1}{2}\right)\right), y\right) \]
          13. unpow2N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(\left(b \cdot b\right) \cdot \frac{1}{2}\right)\right), y\right) \]
          14. associate-*r*N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(b \cdot \left(b \cdot \frac{1}{2}\right)\right)\right), y\right) \]
          15. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(b \cdot \left(\frac{1}{2} \cdot b\right)\right)\right), y\right) \]
          16. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{*.f64}\left(b, \left(\frac{1}{2} \cdot b\right)\right)\right), y\right) \]
          17. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{*.f64}\left(b, \left(b \cdot \frac{1}{2}\right)\right)\right), y\right) \]
          18. *-lowering-*.f6474.4%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{*.f64}\left(b, \frac{1}{2}\right)\right)\right), y\right) \]
        11. Simplified74.4%

          \[\leadsto \color{blue}{\frac{x \cdot \left(b \cdot \left(b \cdot 0.5\right)\right)}{y}} \]

        if -6.5e20 < b < -8.6000000000000001e-239

        1. Initial program 98.6%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in y around 0

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(\log a \cdot \left(t - 1\right) - b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. --lowering--.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\left(\log a \cdot \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          2. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\log a, \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          3. log-lowering-log.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          4. sub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right), b\right)\right)\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + -1\right)\right), b\right)\right)\right), y\right) \]
          6. +-lowering-+.f6472.0%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \mathsf{+.f64}\left(t, -1\right)\right), b\right)\right)\right), y\right) \]
        5. Simplified72.0%

          \[\leadsto \frac{x \cdot e^{\color{blue}{\log a \cdot \left(t + -1\right) - b}}}{y} \]
        6. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(x \cdot e^{\log a \cdot \left(t - 1\right)}\right)}, y\right) \]
        7. Step-by-step derivation
          1. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(e^{\log a \cdot \left(t - 1\right)}\right)\right), y\right) \]
          2. exp-to-powN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left({a}^{\left(t - 1\right)}\right)\right), y\right) \]
          3. pow-lowering-pow.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t - 1\right)\right)\right), y\right) \]
          4. sub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right)\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + -1\right)\right)\right), y\right) \]
          6. +-lowering-+.f6472.9%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \mathsf{+.f64}\left(t, -1\right)\right)\right), y\right) \]
        8. Simplified72.9%

          \[\leadsto \frac{\color{blue}{x \cdot {a}^{\left(t + -1\right)}}}{y} \]
        9. Taylor expanded in t around 0

          \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(\frac{x}{a}\right)}, y\right) \]
        10. Step-by-step derivation
          1. /-lowering-/.f6442.3%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(x, a\right), y\right) \]
        11. Simplified42.3%

          \[\leadsto \frac{\color{blue}{\frac{x}{a}}}{y} \]

        if 3.6000000000000002e-255 < b < 8.1e31

        1. Initial program 92.4%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in y around 0

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(\log a \cdot \left(t - 1\right) - b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. --lowering--.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\left(\log a \cdot \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          2. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\log a, \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          3. log-lowering-log.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          4. sub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right), b\right)\right)\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + -1\right)\right), b\right)\right)\right), y\right) \]
          6. +-lowering-+.f6474.3%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \mathsf{+.f64}\left(t, -1\right)\right), b\right)\right)\right), y\right) \]
        5. Simplified74.3%

          \[\leadsto \frac{x \cdot e^{\color{blue}{\log a \cdot \left(t + -1\right) - b}}}{y} \]
        6. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(x \cdot e^{\log a \cdot \left(t - 1\right)}\right)}, y\right) \]
        7. Step-by-step derivation
          1. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(e^{\log a \cdot \left(t - 1\right)}\right)\right), y\right) \]
          2. exp-to-powN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left({a}^{\left(t - 1\right)}\right)\right), y\right) \]
          3. pow-lowering-pow.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t - 1\right)\right)\right), y\right) \]
          4. sub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right)\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + -1\right)\right)\right), y\right) \]
          6. +-lowering-+.f6473.2%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \mathsf{+.f64}\left(t, -1\right)\right)\right), y\right) \]
        8. Simplified73.2%

          \[\leadsto \frac{\color{blue}{x \cdot {a}^{\left(t + -1\right)}}}{y} \]
        9. Taylor expanded in t around 0

          \[\leadsto \color{blue}{\frac{x}{a \cdot y}} \]
        10. Step-by-step derivation
          1. *-commutativeN/A

            \[\leadsto \frac{x}{y \cdot \color{blue}{a}} \]
          2. associate-/r*N/A

            \[\leadsto \frac{\frac{x}{y}}{\color{blue}{a}} \]
          3. /-lowering-/.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{x}{y}\right), \color{blue}{a}\right) \]
          4. /-lowering-/.f6450.6%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(x, y\right), a\right) \]
        11. Simplified50.6%

          \[\leadsto \color{blue}{\frac{\frac{x}{y}}{a}} \]

        if 8.1e31 < b

        1. Initial program 100.0%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in b around inf

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(-1 \cdot b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. mul-1-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(\mathsf{neg}\left(b\right)\right)\right)\right), y\right) \]
          2. neg-sub0N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(0 - b\right)\right)\right), y\right) \]
          3. --lowering--.f6481.3%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(0, b\right)\right)\right), y\right) \]
        5. Simplified81.3%

          \[\leadsto \frac{x \cdot e^{\color{blue}{0 - b}}}{y} \]
        6. Step-by-step derivation
          1. sub0-negN/A

            \[\leadsto \mathsf{/.f64}\left(\left(x \cdot e^{\mathsf{neg}\left(b\right)}\right), y\right) \]
          2. exp-negN/A

            \[\leadsto \mathsf{/.f64}\left(\left(x \cdot \frac{1}{e^{b}}\right), y\right) \]
          3. div-invN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{x}{e^{b}}\right), y\right) \]
          4. clear-numN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{1}{\frac{e^{b}}{x}}\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{-1 \cdot -1}{\frac{e^{b}}{x}}\right), y\right) \]
          6. /-lowering-/.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(\left(-1 \cdot -1\right), \left(\frac{e^{b}}{x}\right)\right), y\right) \]
          7. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \left(\frac{e^{b}}{x}\right)\right), y\right) \]
          8. /-lowering-/.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\left(e^{b}\right), x\right)\right), y\right) \]
          9. exp-lowering-exp.f6481.3%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{exp.f64}\left(b\right), x\right)\right), y\right) \]
        7. Applied egg-rr81.3%

          \[\leadsto \frac{\color{blue}{\frac{1}{\frac{e^{b}}{x}}}}{y} \]
        8. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\color{blue}{\left(1 + b\right)}, x\right)\right), y\right) \]
        9. Step-by-step derivation
          1. +-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\left(b + 1\right), x\right)\right), y\right) \]
          2. +-lowering-+.f6430.0%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{+.f64}\left(b, 1\right), x\right)\right), y\right) \]
        10. Simplified30.0%

          \[\leadsto \frac{\frac{1}{\frac{\color{blue}{b + 1}}{x}}}{y} \]
      3. Recombined 4 regimes into one program.
      4. Final simplification52.2%

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \leq -6.5 \cdot 10^{+20}:\\ \;\;\;\;\frac{x \cdot \left(b \cdot \left(b \cdot 0.5\right)\right)}{y}\\ \mathbf{elif}\;b \leq -8.6 \cdot 10^{-239}:\\ \;\;\;\;\frac{\frac{x}{a}}{y}\\ \mathbf{elif}\;b \leq 3.6 \cdot 10^{-255}:\\ \;\;\;\;\frac{x \cdot \left(b \cdot \left(b \cdot 0.5\right)\right)}{y}\\ \mathbf{elif}\;b \leq 8.1 \cdot 10^{+31}:\\ \;\;\;\;\frac{\frac{x}{y}}{a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{\frac{1 + b}{x}}}{y}\\ \end{array} \]
      5. Add Preprocessing

      Alternative 16: 49.9% accurate, 12.6× speedup?

      \[\begin{array}{l} \\ \begin{array}{l} \mathbf{if}\;b \leq 1.02 \cdot 10^{-260}:\\ \;\;\;\;\frac{x \cdot \left(b \cdot \left(\left(b \cdot b\right) \cdot -0.16666666666666666\right)\right)}{y}\\ \mathbf{elif}\;b \leq 7.8 \cdot 10^{+29}:\\ \;\;\;\;\frac{\frac{x}{y}}{a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{\frac{1 + b \cdot \left(1 + b \cdot 0.5\right)}{x}}}{y}\\ \end{array} \end{array} \]
      (FPCore (x y z t a b)
       :precision binary64
       (if (<= b 1.02e-260)
         (/ (* x (* b (* (* b b) -0.16666666666666666))) y)
         (if (<= b 7.8e+29)
           (/ (/ x y) a)
           (/ (/ 1.0 (/ (+ 1.0 (* b (+ 1.0 (* b 0.5)))) x)) y))))
      double code(double x, double y, double z, double t, double a, double b) {
      	double tmp;
      	if (b <= 1.02e-260) {
      		tmp = (x * (b * ((b * b) * -0.16666666666666666))) / y;
      	} else if (b <= 7.8e+29) {
      		tmp = (x / y) / a;
      	} else {
      		tmp = (1.0 / ((1.0 + (b * (1.0 + (b * 0.5)))) / x)) / y;
      	}
      	return tmp;
      }
      
      real(8) function code(x, y, z, t, a, b)
          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) :: tmp
          if (b <= 1.02d-260) then
              tmp = (x * (b * ((b * b) * (-0.16666666666666666d0)))) / y
          else if (b <= 7.8d+29) then
              tmp = (x / y) / a
          else
              tmp = (1.0d0 / ((1.0d0 + (b * (1.0d0 + (b * 0.5d0)))) / x)) / y
          end if
          code = tmp
      end function
      
      public static double code(double x, double y, double z, double t, double a, double b) {
      	double tmp;
      	if (b <= 1.02e-260) {
      		tmp = (x * (b * ((b * b) * -0.16666666666666666))) / y;
      	} else if (b <= 7.8e+29) {
      		tmp = (x / y) / a;
      	} else {
      		tmp = (1.0 / ((1.0 + (b * (1.0 + (b * 0.5)))) / x)) / y;
      	}
      	return tmp;
      }
      
      def code(x, y, z, t, a, b):
      	tmp = 0
      	if b <= 1.02e-260:
      		tmp = (x * (b * ((b * b) * -0.16666666666666666))) / y
      	elif b <= 7.8e+29:
      		tmp = (x / y) / a
      	else:
      		tmp = (1.0 / ((1.0 + (b * (1.0 + (b * 0.5)))) / x)) / y
      	return tmp
      
      function code(x, y, z, t, a, b)
      	tmp = 0.0
      	if (b <= 1.02e-260)
      		tmp = Float64(Float64(x * Float64(b * Float64(Float64(b * b) * -0.16666666666666666))) / y);
      	elseif (b <= 7.8e+29)
      		tmp = Float64(Float64(x / y) / a);
      	else
      		tmp = Float64(Float64(1.0 / Float64(Float64(1.0 + Float64(b * Float64(1.0 + Float64(b * 0.5)))) / x)) / y);
      	end
      	return tmp
      end
      
      function tmp_2 = code(x, y, z, t, a, b)
      	tmp = 0.0;
      	if (b <= 1.02e-260)
      		tmp = (x * (b * ((b * b) * -0.16666666666666666))) / y;
      	elseif (b <= 7.8e+29)
      		tmp = (x / y) / a;
      	else
      		tmp = (1.0 / ((1.0 + (b * (1.0 + (b * 0.5)))) / x)) / y;
      	end
      	tmp_2 = tmp;
      end
      
      code[x_, y_, z_, t_, a_, b_] := If[LessEqual[b, 1.02e-260], N[(N[(x * N[(b * N[(N[(b * b), $MachinePrecision] * -0.16666666666666666), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision], If[LessEqual[b, 7.8e+29], N[(N[(x / y), $MachinePrecision] / a), $MachinePrecision], N[(N[(1.0 / N[(N[(1.0 + N[(b * N[(1.0 + N[(b * 0.5), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / x), $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision]]]
      
      \begin{array}{l}
      
      \\
      \begin{array}{l}
      \mathbf{if}\;b \leq 1.02 \cdot 10^{-260}:\\
      \;\;\;\;\frac{x \cdot \left(b \cdot \left(\left(b \cdot b\right) \cdot -0.16666666666666666\right)\right)}{y}\\
      
      \mathbf{elif}\;b \leq 7.8 \cdot 10^{+29}:\\
      \;\;\;\;\frac{\frac{x}{y}}{a}\\
      
      \mathbf{else}:\\
      \;\;\;\;\frac{\frac{1}{\frac{1 + b \cdot \left(1 + b \cdot 0.5\right)}{x}}}{y}\\
      
      
      \end{array}
      \end{array}
      
      Derivation
      1. Split input into 3 regimes
      2. if b < 1.01999999999999991e-260

        1. Initial program 98.7%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in b around inf

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(-1 \cdot b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. mul-1-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(\mathsf{neg}\left(b\right)\right)\right)\right), y\right) \]
          2. neg-sub0N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(0 - b\right)\right)\right), y\right) \]
          3. --lowering--.f6454.3%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(0, b\right)\right)\right), y\right) \]
        5. Simplified54.3%

          \[\leadsto \frac{x \cdot e^{\color{blue}{0 - b}}}{y} \]
        6. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(x + b \cdot \left(-1 \cdot x + b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right)\right)}, y\right) \]
        7. Step-by-step derivation
          1. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \left(b \cdot \left(-1 \cdot x + b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right)\right)\right), y\right) \]
          2. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \left(-1 \cdot x + b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right)\right)\right), y\right) \]
          3. +-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \left(b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right) + -1 \cdot x\right)\right)\right), y\right) \]
          4. mul-1-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \left(b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right) + \left(\mathsf{neg}\left(x\right)\right)\right)\right)\right), y\right) \]
          5. unsub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \left(b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right) - x\right)\right)\right), y\right) \]
          6. --lowering--.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\left(b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right), x\right)\right)\right), y\right) \]
          7. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right), x\right)\right)\right), y\right) \]
          8. associate-*r*N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \left(\left(\frac{-1}{6} \cdot b\right) \cdot x + \frac{1}{2} \cdot x\right)\right), x\right)\right)\right), y\right) \]
          9. distribute-rgt-outN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \left(x \cdot \left(\frac{-1}{6} \cdot b + \frac{1}{2}\right)\right)\right), x\right)\right)\right), y\right) \]
          10. +-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \left(x \cdot \left(\frac{1}{2} + \frac{-1}{6} \cdot b\right)\right)\right), x\right)\right)\right), y\right) \]
          11. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(x, \left(\frac{1}{2} + \frac{-1}{6} \cdot b\right)\right)\right), x\right)\right)\right), y\right) \]
          12. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(x, \mathsf{+.f64}\left(\frac{1}{2}, \left(\frac{-1}{6} \cdot b\right)\right)\right)\right), x\right)\right)\right), y\right) \]
          13. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(x, \mathsf{+.f64}\left(\frac{1}{2}, \left(b \cdot \frac{-1}{6}\right)\right)\right)\right), x\right)\right)\right), y\right) \]
          14. *-lowering-*.f6448.4%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(x, \mathsf{+.f64}\left(\frac{1}{2}, \mathsf{*.f64}\left(b, \frac{-1}{6}\right)\right)\right)\right), x\right)\right)\right), y\right) \]
        8. Simplified48.4%

          \[\leadsto \frac{\color{blue}{x + b \cdot \left(b \cdot \left(x \cdot \left(0.5 + b \cdot -0.16666666666666666\right)\right) - x\right)}}{y} \]
        9. Step-by-step derivation
          1. +-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right) + x\right), y\right) \]
          2. flip-+N/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{\left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) \cdot \left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) - x \cdot x}{b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right) - x}\right), y\right) \]
          3. div-invN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\left(\left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) \cdot \left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) - x \cdot x\right) \cdot \frac{1}{b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right) - x}\right), y\right) \]
          4. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(\left(\left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) \cdot \left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) - x \cdot x\right), \left(\frac{1}{b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right) - x}\right)\right), y\right) \]
        10. Applied egg-rr12.2%

          \[\leadsto \frac{\color{blue}{\left(\left(b \cdot b\right) \cdot \left(\left(x \cdot \left(\left(0.5 + b \cdot -0.16666666666666666\right) \cdot b\right) - x\right) \cdot \left(x \cdot \left(\left(0.5 + b \cdot -0.16666666666666666\right) \cdot b\right) - x\right)\right) - x \cdot x\right) \cdot \frac{1}{b \cdot \left(x \cdot \left(\left(0.5 + b \cdot -0.16666666666666666\right) \cdot b\right) - x\right) - x}}}{y} \]
        11. Taylor expanded in b around inf

          \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(\frac{-1}{6} \cdot \left({b}^{3} \cdot x\right)\right)}, y\right) \]
        12. Step-by-step derivation
          1. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{-1}{6} \cdot \left(x \cdot {b}^{3}\right)\right), y\right) \]
          2. associate-*r*N/A

            \[\leadsto \mathsf{/.f64}\left(\left(\left(\frac{-1}{6} \cdot x\right) \cdot {b}^{3}\right), y\right) \]
          3. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\left(x \cdot \frac{-1}{6}\right) \cdot {b}^{3}\right), y\right) \]
          4. associate-*l*N/A

            \[\leadsto \mathsf{/.f64}\left(\left(x \cdot \left(\frac{-1}{6} \cdot {b}^{3}\right)\right), y\right) \]
          5. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(\frac{-1}{6} \cdot {b}^{3}\right)\right), y\right) \]
          6. unpow3N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(\frac{-1}{6} \cdot \left(\left(b \cdot b\right) \cdot b\right)\right)\right), y\right) \]
          7. unpow2N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(\frac{-1}{6} \cdot \left({b}^{2} \cdot b\right)\right)\right), y\right) \]
          8. associate-*r*N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(\left(\frac{-1}{6} \cdot {b}^{2}\right) \cdot b\right)\right), y\right) \]
          9. unpow2N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(\left(\frac{-1}{6} \cdot \left(b \cdot b\right)\right) \cdot b\right)\right), y\right) \]
          10. associate-*r*N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(\left(\left(\frac{-1}{6} \cdot b\right) \cdot b\right) \cdot b\right)\right), y\right) \]
          11. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(\left(\left(b \cdot \frac{-1}{6}\right) \cdot b\right) \cdot b\right)\right), y\right) \]
          12. associate-*r*N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(\left(b \cdot \left(\frac{-1}{6} \cdot b\right)\right) \cdot b\right)\right), y\right) \]
          13. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{*.f64}\left(\left(b \cdot \left(\frac{-1}{6} \cdot b\right)\right), b\right)\right), y\right) \]
          14. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{*.f64}\left(\left(b \cdot \left(b \cdot \frac{-1}{6}\right)\right), b\right)\right), y\right) \]
          15. associate-*r*N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{*.f64}\left(\left(\left(b \cdot b\right) \cdot \frac{-1}{6}\right), b\right)\right), y\right) \]
          16. unpow2N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{*.f64}\left(\left({b}^{2} \cdot \frac{-1}{6}\right), b\right)\right), y\right) \]
          17. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{*.f64}\left(\mathsf{*.f64}\left(\left({b}^{2}\right), \frac{-1}{6}\right), b\right)\right), y\right) \]
          18. unpow2N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{*.f64}\left(\mathsf{*.f64}\left(\left(b \cdot b\right), \frac{-1}{6}\right), b\right)\right), y\right) \]
          19. *-lowering-*.f6459.7%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{*.f64}\left(\mathsf{*.f64}\left(\mathsf{*.f64}\left(b, b\right), \frac{-1}{6}\right), b\right)\right), y\right) \]
        13. Simplified59.7%

          \[\leadsto \frac{\color{blue}{x \cdot \left(\left(\left(b \cdot b\right) \cdot -0.16666666666666666\right) \cdot b\right)}}{y} \]

        if 1.01999999999999991e-260 < b < 7.79999999999999937e29

        1. Initial program 92.4%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in y around 0

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(\log a \cdot \left(t - 1\right) - b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. --lowering--.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\left(\log a \cdot \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          2. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\log a, \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          3. log-lowering-log.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          4. sub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right), b\right)\right)\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + -1\right)\right), b\right)\right)\right), y\right) \]
          6. +-lowering-+.f6474.3%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \mathsf{+.f64}\left(t, -1\right)\right), b\right)\right)\right), y\right) \]
        5. Simplified74.3%

          \[\leadsto \frac{x \cdot e^{\color{blue}{\log a \cdot \left(t + -1\right) - b}}}{y} \]
        6. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(x \cdot e^{\log a \cdot \left(t - 1\right)}\right)}, y\right) \]
        7. Step-by-step derivation
          1. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(e^{\log a \cdot \left(t - 1\right)}\right)\right), y\right) \]
          2. exp-to-powN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left({a}^{\left(t - 1\right)}\right)\right), y\right) \]
          3. pow-lowering-pow.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t - 1\right)\right)\right), y\right) \]
          4. sub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right)\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + -1\right)\right)\right), y\right) \]
          6. +-lowering-+.f6473.2%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \mathsf{+.f64}\left(t, -1\right)\right)\right), y\right) \]
        8. Simplified73.2%

          \[\leadsto \frac{\color{blue}{x \cdot {a}^{\left(t + -1\right)}}}{y} \]
        9. Taylor expanded in t around 0

          \[\leadsto \color{blue}{\frac{x}{a \cdot y}} \]
        10. Step-by-step derivation
          1. *-commutativeN/A

            \[\leadsto \frac{x}{y \cdot \color{blue}{a}} \]
          2. associate-/r*N/A

            \[\leadsto \frac{\frac{x}{y}}{\color{blue}{a}} \]
          3. /-lowering-/.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{x}{y}\right), \color{blue}{a}\right) \]
          4. /-lowering-/.f6450.6%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(x, y\right), a\right) \]
        11. Simplified50.6%

          \[\leadsto \color{blue}{\frac{\frac{x}{y}}{a}} \]

        if 7.79999999999999937e29 < b

        1. Initial program 100.0%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in b around inf

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(-1 \cdot b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. mul-1-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(\mathsf{neg}\left(b\right)\right)\right)\right), y\right) \]
          2. neg-sub0N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(0 - b\right)\right)\right), y\right) \]
          3. --lowering--.f6481.3%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(0, b\right)\right)\right), y\right) \]
        5. Simplified81.3%

          \[\leadsto \frac{x \cdot e^{\color{blue}{0 - b}}}{y} \]
        6. Step-by-step derivation
          1. sub0-negN/A

            \[\leadsto \mathsf{/.f64}\left(\left(x \cdot e^{\mathsf{neg}\left(b\right)}\right), y\right) \]
          2. exp-negN/A

            \[\leadsto \mathsf{/.f64}\left(\left(x \cdot \frac{1}{e^{b}}\right), y\right) \]
          3. div-invN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{x}{e^{b}}\right), y\right) \]
          4. clear-numN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{1}{\frac{e^{b}}{x}}\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{-1 \cdot -1}{\frac{e^{b}}{x}}\right), y\right) \]
          6. /-lowering-/.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(\left(-1 \cdot -1\right), \left(\frac{e^{b}}{x}\right)\right), y\right) \]
          7. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \left(\frac{e^{b}}{x}\right)\right), y\right) \]
          8. /-lowering-/.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\left(e^{b}\right), x\right)\right), y\right) \]
          9. exp-lowering-exp.f6481.3%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{exp.f64}\left(b\right), x\right)\right), y\right) \]
        7. Applied egg-rr81.3%

          \[\leadsto \frac{\color{blue}{\frac{1}{\frac{e^{b}}{x}}}}{y} \]
        8. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\color{blue}{\left(1 + b \cdot \left(1 + \frac{1}{2} \cdot b\right)\right)}, x\right)\right), y\right) \]
        9. Step-by-step derivation
          1. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \left(b \cdot \left(1 + \frac{1}{2} \cdot b\right)\right)\right), x\right)\right), y\right) \]
          2. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \left(1 + \frac{1}{2} \cdot b\right)\right)\right), x\right)\right), y\right) \]
          3. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(1, \left(\frac{1}{2} \cdot b\right)\right)\right)\right), x\right)\right), y\right) \]
          4. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(1, \left(b \cdot \frac{1}{2}\right)\right)\right)\right), x\right)\right), y\right) \]
          5. *-lowering-*.f6461.7%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \frac{1}{2}\right)\right)\right)\right), x\right)\right), y\right) \]
        10. Simplified61.7%

          \[\leadsto \frac{\frac{1}{\frac{\color{blue}{1 + b \cdot \left(1 + b \cdot 0.5\right)}}{x}}}{y} \]
      3. Recombined 3 regimes into one program.
      4. Final simplification58.2%

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \leq 1.02 \cdot 10^{-260}:\\ \;\;\;\;\frac{x \cdot \left(b \cdot \left(\left(b \cdot b\right) \cdot -0.16666666666666666\right)\right)}{y}\\ \mathbf{elif}\;b \leq 7.8 \cdot 10^{+29}:\\ \;\;\;\;\frac{\frac{x}{y}}{a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{\frac{1 + b \cdot \left(1 + b \cdot 0.5\right)}{x}}}{y}\\ \end{array} \]
      5. Add Preprocessing

      Alternative 17: 40.2% accurate, 13.1× speedup?

      \[\begin{array}{l} \\ \begin{array}{l} t_1 := \frac{x \cdot \left(b \cdot \left(b \cdot 0.5\right)\right)}{y}\\ \mathbf{if}\;b \leq -1.5 \cdot 10^{+24}:\\ \;\;\;\;t\_1\\ \mathbf{elif}\;b \leq -3.6 \cdot 10^{-231}:\\ \;\;\;\;\frac{\frac{x}{a}}{y}\\ \mathbf{elif}\;b \leq 6.6 \cdot 10^{-256}:\\ \;\;\;\;t\_1\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{x}{y}}{a}\\ \end{array} \end{array} \]
      (FPCore (x y z t a b)
       :precision binary64
       (let* ((t_1 (/ (* x (* b (* b 0.5))) y)))
         (if (<= b -1.5e+24)
           t_1
           (if (<= b -3.6e-231)
             (/ (/ x a) y)
             (if (<= b 6.6e-256) t_1 (/ (/ x y) a))))))
      double code(double x, double y, double z, double t, double a, double b) {
      	double t_1 = (x * (b * (b * 0.5))) / y;
      	double tmp;
      	if (b <= -1.5e+24) {
      		tmp = t_1;
      	} else if (b <= -3.6e-231) {
      		tmp = (x / a) / y;
      	} else if (b <= 6.6e-256) {
      		tmp = t_1;
      	} else {
      		tmp = (x / y) / a;
      	}
      	return tmp;
      }
      
      real(8) function code(x, y, z, t, a, b)
          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) :: t_1
          real(8) :: tmp
          t_1 = (x * (b * (b * 0.5d0))) / y
          if (b <= (-1.5d+24)) then
              tmp = t_1
          else if (b <= (-3.6d-231)) then
              tmp = (x / a) / y
          else if (b <= 6.6d-256) then
              tmp = t_1
          else
              tmp = (x / y) / a
          end if
          code = tmp
      end function
      
      public static double code(double x, double y, double z, double t, double a, double b) {
      	double t_1 = (x * (b * (b * 0.5))) / y;
      	double tmp;
      	if (b <= -1.5e+24) {
      		tmp = t_1;
      	} else if (b <= -3.6e-231) {
      		tmp = (x / a) / y;
      	} else if (b <= 6.6e-256) {
      		tmp = t_1;
      	} else {
      		tmp = (x / y) / a;
      	}
      	return tmp;
      }
      
      def code(x, y, z, t, a, b):
      	t_1 = (x * (b * (b * 0.5))) / y
      	tmp = 0
      	if b <= -1.5e+24:
      		tmp = t_1
      	elif b <= -3.6e-231:
      		tmp = (x / a) / y
      	elif b <= 6.6e-256:
      		tmp = t_1
      	else:
      		tmp = (x / y) / a
      	return tmp
      
      function code(x, y, z, t, a, b)
      	t_1 = Float64(Float64(x * Float64(b * Float64(b * 0.5))) / y)
      	tmp = 0.0
      	if (b <= -1.5e+24)
      		tmp = t_1;
      	elseif (b <= -3.6e-231)
      		tmp = Float64(Float64(x / a) / y);
      	elseif (b <= 6.6e-256)
      		tmp = t_1;
      	else
      		tmp = Float64(Float64(x / y) / a);
      	end
      	return tmp
      end
      
      function tmp_2 = code(x, y, z, t, a, b)
      	t_1 = (x * (b * (b * 0.5))) / y;
      	tmp = 0.0;
      	if (b <= -1.5e+24)
      		tmp = t_1;
      	elseif (b <= -3.6e-231)
      		tmp = (x / a) / y;
      	elseif (b <= 6.6e-256)
      		tmp = t_1;
      	else
      		tmp = (x / y) / a;
      	end
      	tmp_2 = tmp;
      end
      
      code[x_, y_, z_, t_, a_, b_] := Block[{t$95$1 = N[(N[(x * N[(b * N[(b * 0.5), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision]}, If[LessEqual[b, -1.5e+24], t$95$1, If[LessEqual[b, -3.6e-231], N[(N[(x / a), $MachinePrecision] / y), $MachinePrecision], If[LessEqual[b, 6.6e-256], t$95$1, N[(N[(x / y), $MachinePrecision] / a), $MachinePrecision]]]]]
      
      \begin{array}{l}
      
      \\
      \begin{array}{l}
      t_1 := \frac{x \cdot \left(b \cdot \left(b \cdot 0.5\right)\right)}{y}\\
      \mathbf{if}\;b \leq -1.5 \cdot 10^{+24}:\\
      \;\;\;\;t\_1\\
      
      \mathbf{elif}\;b \leq -3.6 \cdot 10^{-231}:\\
      \;\;\;\;\frac{\frac{x}{a}}{y}\\
      
      \mathbf{elif}\;b \leq 6.6 \cdot 10^{-256}:\\
      \;\;\;\;t\_1\\
      
      \mathbf{else}:\\
      \;\;\;\;\frac{\frac{x}{y}}{a}\\
      
      
      \end{array}
      \end{array}
      
      Derivation
      1. Split input into 3 regimes
      2. if b < -1.49999999999999997e24 or -3.59999999999999973e-231 < b < 6.6e-256

        1. Initial program 98.8%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in b around inf

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(-1 \cdot b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. mul-1-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(\mathsf{neg}\left(b\right)\right)\right)\right), y\right) \]
          2. neg-sub0N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(0 - b\right)\right)\right), y\right) \]
          3. --lowering--.f6473.2%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(0, b\right)\right)\right), y\right) \]
        5. Simplified73.2%

          \[\leadsto \frac{x \cdot e^{\color{blue}{0 - b}}}{y} \]
        6. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \color{blue}{\left(1 + b \cdot \left(\frac{1}{2} \cdot b - 1\right)\right)}\right), y\right) \]
        7. Step-by-step derivation
          1. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \left(b \cdot \left(\frac{1}{2} \cdot b - 1\right)\right)\right)\right), y\right) \]
          2. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \left(\frac{1}{2} \cdot b - 1\right)\right)\right)\right), y\right) \]
          3. sub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \left(\frac{1}{2} \cdot b + \left(\mathsf{neg}\left(1\right)\right)\right)\right)\right)\right), y\right) \]
          4. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \left(\frac{1}{2} \cdot b + -1\right)\right)\right)\right), y\right) \]
          5. +-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \left(-1 + \frac{1}{2} \cdot b\right)\right)\right)\right), y\right) \]
          6. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(-1, \left(\frac{1}{2} \cdot b\right)\right)\right)\right)\right), y\right) \]
          7. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(-1, \left(b \cdot \frac{1}{2}\right)\right)\right)\right)\right), y\right) \]
          8. *-lowering-*.f6463.3%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{+.f64}\left(1, \mathsf{*.f64}\left(b, \mathsf{+.f64}\left(-1, \mathsf{*.f64}\left(b, \frac{1}{2}\right)\right)\right)\right)\right), y\right) \]
        8. Simplified63.3%

          \[\leadsto \frac{x \cdot \color{blue}{\left(1 + b \cdot \left(-1 + b \cdot 0.5\right)\right)}}{y} \]
        9. Taylor expanded in b around inf

          \[\leadsto \color{blue}{\frac{1}{2} \cdot \frac{{b}^{2} \cdot x}{y}} \]
        10. Step-by-step derivation
          1. associate-*r/N/A

            \[\leadsto \frac{\frac{1}{2} \cdot \left({b}^{2} \cdot x\right)}{\color{blue}{y}} \]
          2. *-commutativeN/A

            \[\leadsto \frac{\left({b}^{2} \cdot x\right) \cdot \frac{1}{2}}{y} \]
          3. associate-*r*N/A

            \[\leadsto \frac{{b}^{2} \cdot \left(x \cdot \frac{1}{2}\right)}{y} \]
          4. *-commutativeN/A

            \[\leadsto \frac{{b}^{2} \cdot \left(\frac{1}{2} \cdot x\right)}{y} \]
          5. /-lowering-/.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\left({b}^{2} \cdot \left(\frac{1}{2} \cdot x\right)\right), \color{blue}{y}\right) \]
          6. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\left({b}^{2} \cdot \left(x \cdot \frac{1}{2}\right)\right), y\right) \]
          7. associate-*r*N/A

            \[\leadsto \mathsf{/.f64}\left(\left(\left({b}^{2} \cdot x\right) \cdot \frac{1}{2}\right), y\right) \]
          8. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\left(x \cdot {b}^{2}\right) \cdot \frac{1}{2}\right), y\right) \]
          9. associate-*l*N/A

            \[\leadsto \mathsf{/.f64}\left(\left(x \cdot \left({b}^{2} \cdot \frac{1}{2}\right)\right), y\right) \]
          10. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\left(x \cdot \left(\frac{1}{2} \cdot {b}^{2}\right)\right), y\right) \]
          11. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(\frac{1}{2} \cdot {b}^{2}\right)\right), y\right) \]
          12. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left({b}^{2} \cdot \frac{1}{2}\right)\right), y\right) \]
          13. unpow2N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(\left(b \cdot b\right) \cdot \frac{1}{2}\right)\right), y\right) \]
          14. associate-*r*N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(b \cdot \left(b \cdot \frac{1}{2}\right)\right)\right), y\right) \]
          15. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(b \cdot \left(\frac{1}{2} \cdot b\right)\right)\right), y\right) \]
          16. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{*.f64}\left(b, \left(\frac{1}{2} \cdot b\right)\right)\right), y\right) \]
          17. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{*.f64}\left(b, \left(b \cdot \frac{1}{2}\right)\right)\right), y\right) \]
          18. *-lowering-*.f6474.4%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{*.f64}\left(b, \frac{1}{2}\right)\right)\right), y\right) \]
        11. Simplified74.4%

          \[\leadsto \color{blue}{\frac{x \cdot \left(b \cdot \left(b \cdot 0.5\right)\right)}{y}} \]

        if -1.49999999999999997e24 < b < -3.59999999999999973e-231

        1. Initial program 98.6%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in y around 0

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(\log a \cdot \left(t - 1\right) - b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. --lowering--.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\left(\log a \cdot \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          2. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\log a, \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          3. log-lowering-log.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          4. sub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right), b\right)\right)\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + -1\right)\right), b\right)\right)\right), y\right) \]
          6. +-lowering-+.f6472.0%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \mathsf{+.f64}\left(t, -1\right)\right), b\right)\right)\right), y\right) \]
        5. Simplified72.0%

          \[\leadsto \frac{x \cdot e^{\color{blue}{\log a \cdot \left(t + -1\right) - b}}}{y} \]
        6. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(x \cdot e^{\log a \cdot \left(t - 1\right)}\right)}, y\right) \]
        7. Step-by-step derivation
          1. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(e^{\log a \cdot \left(t - 1\right)}\right)\right), y\right) \]
          2. exp-to-powN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left({a}^{\left(t - 1\right)}\right)\right), y\right) \]
          3. pow-lowering-pow.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t - 1\right)\right)\right), y\right) \]
          4. sub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right)\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + -1\right)\right)\right), y\right) \]
          6. +-lowering-+.f6472.9%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \mathsf{+.f64}\left(t, -1\right)\right)\right), y\right) \]
        8. Simplified72.9%

          \[\leadsto \frac{\color{blue}{x \cdot {a}^{\left(t + -1\right)}}}{y} \]
        9. Taylor expanded in t around 0

          \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(\frac{x}{a}\right)}, y\right) \]
        10. Step-by-step derivation
          1. /-lowering-/.f6442.3%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(x, a\right), y\right) \]
        11. Simplified42.3%

          \[\leadsto \frac{\color{blue}{\frac{x}{a}}}{y} \]

        if 6.6e-256 < b

        1. Initial program 96.3%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in y around 0

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(\log a \cdot \left(t - 1\right) - b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. --lowering--.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\left(\log a \cdot \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          2. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\log a, \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          3. log-lowering-log.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          4. sub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right), b\right)\right)\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + -1\right)\right), b\right)\right)\right), y\right) \]
          6. +-lowering-+.f6479.6%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \mathsf{+.f64}\left(t, -1\right)\right), b\right)\right)\right), y\right) \]
        5. Simplified79.6%

          \[\leadsto \frac{x \cdot e^{\color{blue}{\log a \cdot \left(t + -1\right) - b}}}{y} \]
        6. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(x \cdot e^{\log a \cdot \left(t - 1\right)}\right)}, y\right) \]
        7. Step-by-step derivation
          1. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(e^{\log a \cdot \left(t - 1\right)}\right)\right), y\right) \]
          2. exp-to-powN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left({a}^{\left(t - 1\right)}\right)\right), y\right) \]
          3. pow-lowering-pow.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t - 1\right)\right)\right), y\right) \]
          4. sub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right)\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + -1\right)\right)\right), y\right) \]
          6. +-lowering-+.f6456.0%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \mathsf{+.f64}\left(t, -1\right)\right)\right), y\right) \]
        8. Simplified56.0%

          \[\leadsto \frac{\color{blue}{x \cdot {a}^{\left(t + -1\right)}}}{y} \]
        9. Taylor expanded in t around 0

          \[\leadsto \color{blue}{\frac{x}{a \cdot y}} \]
        10. Step-by-step derivation
          1. *-commutativeN/A

            \[\leadsto \frac{x}{y \cdot \color{blue}{a}} \]
          2. associate-/r*N/A

            \[\leadsto \frac{\frac{x}{y}}{\color{blue}{a}} \]
          3. /-lowering-/.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{x}{y}\right), \color{blue}{a}\right) \]
          4. /-lowering-/.f6430.5%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(x, y\right), a\right) \]
        11. Simplified30.5%

          \[\leadsto \color{blue}{\frac{\frac{x}{y}}{a}} \]
      3. Recombined 3 regimes into one program.
      4. Add Preprocessing

      Alternative 18: 43.2% accurate, 16.6× speedup?

      \[\begin{array}{l} \\ \begin{array}{l} \mathbf{if}\;b \leq 2.2 \cdot 10^{-259}:\\ \;\;\;\;\frac{x \cdot \left(b \cdot \left(\left(b \cdot b\right) \cdot -0.16666666666666666\right)\right)}{y}\\ \mathbf{elif}\;b \leq 5.5 \cdot 10^{+38}:\\ \;\;\;\;\frac{\frac{x}{y}}{a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{\frac{1 + b}{x}}}{y}\\ \end{array} \end{array} \]
      (FPCore (x y z t a b)
       :precision binary64
       (if (<= b 2.2e-259)
         (/ (* x (* b (* (* b b) -0.16666666666666666))) y)
         (if (<= b 5.5e+38) (/ (/ x y) a) (/ (/ 1.0 (/ (+ 1.0 b) x)) y))))
      double code(double x, double y, double z, double t, double a, double b) {
      	double tmp;
      	if (b <= 2.2e-259) {
      		tmp = (x * (b * ((b * b) * -0.16666666666666666))) / y;
      	} else if (b <= 5.5e+38) {
      		tmp = (x / y) / a;
      	} else {
      		tmp = (1.0 / ((1.0 + b) / x)) / y;
      	}
      	return tmp;
      }
      
      real(8) function code(x, y, z, t, a, b)
          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) :: tmp
          if (b <= 2.2d-259) then
              tmp = (x * (b * ((b * b) * (-0.16666666666666666d0)))) / y
          else if (b <= 5.5d+38) then
              tmp = (x / y) / a
          else
              tmp = (1.0d0 / ((1.0d0 + b) / x)) / y
          end if
          code = tmp
      end function
      
      public static double code(double x, double y, double z, double t, double a, double b) {
      	double tmp;
      	if (b <= 2.2e-259) {
      		tmp = (x * (b * ((b * b) * -0.16666666666666666))) / y;
      	} else if (b <= 5.5e+38) {
      		tmp = (x / y) / a;
      	} else {
      		tmp = (1.0 / ((1.0 + b) / x)) / y;
      	}
      	return tmp;
      }
      
      def code(x, y, z, t, a, b):
      	tmp = 0
      	if b <= 2.2e-259:
      		tmp = (x * (b * ((b * b) * -0.16666666666666666))) / y
      	elif b <= 5.5e+38:
      		tmp = (x / y) / a
      	else:
      		tmp = (1.0 / ((1.0 + b) / x)) / y
      	return tmp
      
      function code(x, y, z, t, a, b)
      	tmp = 0.0
      	if (b <= 2.2e-259)
      		tmp = Float64(Float64(x * Float64(b * Float64(Float64(b * b) * -0.16666666666666666))) / y);
      	elseif (b <= 5.5e+38)
      		tmp = Float64(Float64(x / y) / a);
      	else
      		tmp = Float64(Float64(1.0 / Float64(Float64(1.0 + b) / x)) / y);
      	end
      	return tmp
      end
      
      function tmp_2 = code(x, y, z, t, a, b)
      	tmp = 0.0;
      	if (b <= 2.2e-259)
      		tmp = (x * (b * ((b * b) * -0.16666666666666666))) / y;
      	elseif (b <= 5.5e+38)
      		tmp = (x / y) / a;
      	else
      		tmp = (1.0 / ((1.0 + b) / x)) / y;
      	end
      	tmp_2 = tmp;
      end
      
      code[x_, y_, z_, t_, a_, b_] := If[LessEqual[b, 2.2e-259], N[(N[(x * N[(b * N[(N[(b * b), $MachinePrecision] * -0.16666666666666666), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision], If[LessEqual[b, 5.5e+38], N[(N[(x / y), $MachinePrecision] / a), $MachinePrecision], N[(N[(1.0 / N[(N[(1.0 + b), $MachinePrecision] / x), $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision]]]
      
      \begin{array}{l}
      
      \\
      \begin{array}{l}
      \mathbf{if}\;b \leq 2.2 \cdot 10^{-259}:\\
      \;\;\;\;\frac{x \cdot \left(b \cdot \left(\left(b \cdot b\right) \cdot -0.16666666666666666\right)\right)}{y}\\
      
      \mathbf{elif}\;b \leq 5.5 \cdot 10^{+38}:\\
      \;\;\;\;\frac{\frac{x}{y}}{a}\\
      
      \mathbf{else}:\\
      \;\;\;\;\frac{\frac{1}{\frac{1 + b}{x}}}{y}\\
      
      
      \end{array}
      \end{array}
      
      Derivation
      1. Split input into 3 regimes
      2. if b < 2.2000000000000001e-259

        1. Initial program 98.7%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in b around inf

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(-1 \cdot b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. mul-1-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(\mathsf{neg}\left(b\right)\right)\right)\right), y\right) \]
          2. neg-sub0N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(0 - b\right)\right)\right), y\right) \]
          3. --lowering--.f6454.3%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(0, b\right)\right)\right), y\right) \]
        5. Simplified54.3%

          \[\leadsto \frac{x \cdot e^{\color{blue}{0 - b}}}{y} \]
        6. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(x + b \cdot \left(-1 \cdot x + b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right)\right)}, y\right) \]
        7. Step-by-step derivation
          1. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \left(b \cdot \left(-1 \cdot x + b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right)\right)\right), y\right) \]
          2. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \left(-1 \cdot x + b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right)\right)\right), y\right) \]
          3. +-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \left(b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right) + -1 \cdot x\right)\right)\right), y\right) \]
          4. mul-1-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \left(b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right) + \left(\mathsf{neg}\left(x\right)\right)\right)\right)\right), y\right) \]
          5. unsub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \left(b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right) - x\right)\right)\right), y\right) \]
          6. --lowering--.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\left(b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right), x\right)\right)\right), y\right) \]
          7. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right), x\right)\right)\right), y\right) \]
          8. associate-*r*N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \left(\left(\frac{-1}{6} \cdot b\right) \cdot x + \frac{1}{2} \cdot x\right)\right), x\right)\right)\right), y\right) \]
          9. distribute-rgt-outN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \left(x \cdot \left(\frac{-1}{6} \cdot b + \frac{1}{2}\right)\right)\right), x\right)\right)\right), y\right) \]
          10. +-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \left(x \cdot \left(\frac{1}{2} + \frac{-1}{6} \cdot b\right)\right)\right), x\right)\right)\right), y\right) \]
          11. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(x, \left(\frac{1}{2} + \frac{-1}{6} \cdot b\right)\right)\right), x\right)\right)\right), y\right) \]
          12. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(x, \mathsf{+.f64}\left(\frac{1}{2}, \left(\frac{-1}{6} \cdot b\right)\right)\right)\right), x\right)\right)\right), y\right) \]
          13. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(x, \mathsf{+.f64}\left(\frac{1}{2}, \left(b \cdot \frac{-1}{6}\right)\right)\right)\right), x\right)\right)\right), y\right) \]
          14. *-lowering-*.f6448.4%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(x, \mathsf{+.f64}\left(\frac{1}{2}, \mathsf{*.f64}\left(b, \frac{-1}{6}\right)\right)\right)\right), x\right)\right)\right), y\right) \]
        8. Simplified48.4%

          \[\leadsto \frac{\color{blue}{x + b \cdot \left(b \cdot \left(x \cdot \left(0.5 + b \cdot -0.16666666666666666\right)\right) - x\right)}}{y} \]
        9. Step-by-step derivation
          1. +-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right) + x\right), y\right) \]
          2. flip-+N/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{\left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) \cdot \left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) - x \cdot x}{b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right) - x}\right), y\right) \]
          3. div-invN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\left(\left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) \cdot \left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) - x \cdot x\right) \cdot \frac{1}{b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right) - x}\right), y\right) \]
          4. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(\left(\left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) \cdot \left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) - x \cdot x\right), \left(\frac{1}{b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right) - x}\right)\right), y\right) \]
        10. Applied egg-rr12.2%

          \[\leadsto \frac{\color{blue}{\left(\left(b \cdot b\right) \cdot \left(\left(x \cdot \left(\left(0.5 + b \cdot -0.16666666666666666\right) \cdot b\right) - x\right) \cdot \left(x \cdot \left(\left(0.5 + b \cdot -0.16666666666666666\right) \cdot b\right) - x\right)\right) - x \cdot x\right) \cdot \frac{1}{b \cdot \left(x \cdot \left(\left(0.5 + b \cdot -0.16666666666666666\right) \cdot b\right) - x\right) - x}}}{y} \]
        11. Taylor expanded in b around inf

          \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(\frac{-1}{6} \cdot \left({b}^{3} \cdot x\right)\right)}, y\right) \]
        12. Step-by-step derivation
          1. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{-1}{6} \cdot \left(x \cdot {b}^{3}\right)\right), y\right) \]
          2. associate-*r*N/A

            \[\leadsto \mathsf{/.f64}\left(\left(\left(\frac{-1}{6} \cdot x\right) \cdot {b}^{3}\right), y\right) \]
          3. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\left(x \cdot \frac{-1}{6}\right) \cdot {b}^{3}\right), y\right) \]
          4. associate-*l*N/A

            \[\leadsto \mathsf{/.f64}\left(\left(x \cdot \left(\frac{-1}{6} \cdot {b}^{3}\right)\right), y\right) \]
          5. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(\frac{-1}{6} \cdot {b}^{3}\right)\right), y\right) \]
          6. unpow3N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(\frac{-1}{6} \cdot \left(\left(b \cdot b\right) \cdot b\right)\right)\right), y\right) \]
          7. unpow2N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(\frac{-1}{6} \cdot \left({b}^{2} \cdot b\right)\right)\right), y\right) \]
          8. associate-*r*N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(\left(\frac{-1}{6} \cdot {b}^{2}\right) \cdot b\right)\right), y\right) \]
          9. unpow2N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(\left(\frac{-1}{6} \cdot \left(b \cdot b\right)\right) \cdot b\right)\right), y\right) \]
          10. associate-*r*N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(\left(\left(\frac{-1}{6} \cdot b\right) \cdot b\right) \cdot b\right)\right), y\right) \]
          11. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(\left(\left(b \cdot \frac{-1}{6}\right) \cdot b\right) \cdot b\right)\right), y\right) \]
          12. associate-*r*N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(\left(b \cdot \left(\frac{-1}{6} \cdot b\right)\right) \cdot b\right)\right), y\right) \]
          13. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{*.f64}\left(\left(b \cdot \left(\frac{-1}{6} \cdot b\right)\right), b\right)\right), y\right) \]
          14. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{*.f64}\left(\left(b \cdot \left(b \cdot \frac{-1}{6}\right)\right), b\right)\right), y\right) \]
          15. associate-*r*N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{*.f64}\left(\left(\left(b \cdot b\right) \cdot \frac{-1}{6}\right), b\right)\right), y\right) \]
          16. unpow2N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{*.f64}\left(\left({b}^{2} \cdot \frac{-1}{6}\right), b\right)\right), y\right) \]
          17. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{*.f64}\left(\mathsf{*.f64}\left(\left({b}^{2}\right), \frac{-1}{6}\right), b\right)\right), y\right) \]
          18. unpow2N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{*.f64}\left(\mathsf{*.f64}\left(\left(b \cdot b\right), \frac{-1}{6}\right), b\right)\right), y\right) \]
          19. *-lowering-*.f6459.7%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{*.f64}\left(\mathsf{*.f64}\left(\mathsf{*.f64}\left(b, b\right), \frac{-1}{6}\right), b\right)\right), y\right) \]
        13. Simplified59.7%

          \[\leadsto \frac{\color{blue}{x \cdot \left(\left(\left(b \cdot b\right) \cdot -0.16666666666666666\right) \cdot b\right)}}{y} \]

        if 2.2000000000000001e-259 < b < 5.5000000000000003e38

        1. Initial program 92.4%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in y around 0

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(\log a \cdot \left(t - 1\right) - b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. --lowering--.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\left(\log a \cdot \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          2. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\log a, \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          3. log-lowering-log.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          4. sub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right), b\right)\right)\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + -1\right)\right), b\right)\right)\right), y\right) \]
          6. +-lowering-+.f6474.3%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \mathsf{+.f64}\left(t, -1\right)\right), b\right)\right)\right), y\right) \]
        5. Simplified74.3%

          \[\leadsto \frac{x \cdot e^{\color{blue}{\log a \cdot \left(t + -1\right) - b}}}{y} \]
        6. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(x \cdot e^{\log a \cdot \left(t - 1\right)}\right)}, y\right) \]
        7. Step-by-step derivation
          1. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(e^{\log a \cdot \left(t - 1\right)}\right)\right), y\right) \]
          2. exp-to-powN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left({a}^{\left(t - 1\right)}\right)\right), y\right) \]
          3. pow-lowering-pow.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t - 1\right)\right)\right), y\right) \]
          4. sub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right)\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + -1\right)\right)\right), y\right) \]
          6. +-lowering-+.f6473.2%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \mathsf{+.f64}\left(t, -1\right)\right)\right), y\right) \]
        8. Simplified73.2%

          \[\leadsto \frac{\color{blue}{x \cdot {a}^{\left(t + -1\right)}}}{y} \]
        9. Taylor expanded in t around 0

          \[\leadsto \color{blue}{\frac{x}{a \cdot y}} \]
        10. Step-by-step derivation
          1. *-commutativeN/A

            \[\leadsto \frac{x}{y \cdot \color{blue}{a}} \]
          2. associate-/r*N/A

            \[\leadsto \frac{\frac{x}{y}}{\color{blue}{a}} \]
          3. /-lowering-/.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{x}{y}\right), \color{blue}{a}\right) \]
          4. /-lowering-/.f6450.6%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(x, y\right), a\right) \]
        11. Simplified50.6%

          \[\leadsto \color{blue}{\frac{\frac{x}{y}}{a}} \]

        if 5.5000000000000003e38 < b

        1. Initial program 100.0%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in b around inf

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(-1 \cdot b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. mul-1-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(\mathsf{neg}\left(b\right)\right)\right)\right), y\right) \]
          2. neg-sub0N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(0 - b\right)\right)\right), y\right) \]
          3. --lowering--.f6481.3%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(0, b\right)\right)\right), y\right) \]
        5. Simplified81.3%

          \[\leadsto \frac{x \cdot e^{\color{blue}{0 - b}}}{y} \]
        6. Step-by-step derivation
          1. sub0-negN/A

            \[\leadsto \mathsf{/.f64}\left(\left(x \cdot e^{\mathsf{neg}\left(b\right)}\right), y\right) \]
          2. exp-negN/A

            \[\leadsto \mathsf{/.f64}\left(\left(x \cdot \frac{1}{e^{b}}\right), y\right) \]
          3. div-invN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{x}{e^{b}}\right), y\right) \]
          4. clear-numN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{1}{\frac{e^{b}}{x}}\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{-1 \cdot -1}{\frac{e^{b}}{x}}\right), y\right) \]
          6. /-lowering-/.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(\left(-1 \cdot -1\right), \left(\frac{e^{b}}{x}\right)\right), y\right) \]
          7. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \left(\frac{e^{b}}{x}\right)\right), y\right) \]
          8. /-lowering-/.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\left(e^{b}\right), x\right)\right), y\right) \]
          9. exp-lowering-exp.f6481.3%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{exp.f64}\left(b\right), x\right)\right), y\right) \]
        7. Applied egg-rr81.3%

          \[\leadsto \frac{\color{blue}{\frac{1}{\frac{e^{b}}{x}}}}{y} \]
        8. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\color{blue}{\left(1 + b\right)}, x\right)\right), y\right) \]
        9. Step-by-step derivation
          1. +-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\left(b + 1\right), x\right)\right), y\right) \]
          2. +-lowering-+.f6430.0%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{+.f64}\left(b, 1\right), x\right)\right), y\right) \]
        10. Simplified30.0%

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

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \leq 2.2 \cdot 10^{-259}:\\ \;\;\;\;\frac{x \cdot \left(b \cdot \left(\left(b \cdot b\right) \cdot -0.16666666666666666\right)\right)}{y}\\ \mathbf{elif}\;b \leq 5.5 \cdot 10^{+38}:\\ \;\;\;\;\frac{\frac{x}{y}}{a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{\frac{1 + b}{x}}}{y}\\ \end{array} \]
      5. Add Preprocessing

      Alternative 19: 42.0% accurate, 16.6× speedup?

      \[\begin{array}{l} \\ \begin{array}{l} \mathbf{if}\;b \leq 1.7 \cdot 10^{-260}:\\ \;\;\;\;\frac{b \cdot \left(b \cdot \left(x \cdot \left(b \cdot -0.16666666666666666\right)\right)\right)}{y}\\ \mathbf{elif}\;b \leq 2.1 \cdot 10^{+33}:\\ \;\;\;\;\frac{\frac{x}{y}}{a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{\frac{1 + b}{x}}}{y}\\ \end{array} \end{array} \]
      (FPCore (x y z t a b)
       :precision binary64
       (if (<= b 1.7e-260)
         (/ (* b (* b (* x (* b -0.16666666666666666)))) y)
         (if (<= b 2.1e+33) (/ (/ x y) a) (/ (/ 1.0 (/ (+ 1.0 b) x)) y))))
      double code(double x, double y, double z, double t, double a, double b) {
      	double tmp;
      	if (b <= 1.7e-260) {
      		tmp = (b * (b * (x * (b * -0.16666666666666666)))) / y;
      	} else if (b <= 2.1e+33) {
      		tmp = (x / y) / a;
      	} else {
      		tmp = (1.0 / ((1.0 + b) / x)) / y;
      	}
      	return tmp;
      }
      
      real(8) function code(x, y, z, t, a, b)
          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) :: tmp
          if (b <= 1.7d-260) then
              tmp = (b * (b * (x * (b * (-0.16666666666666666d0))))) / y
          else if (b <= 2.1d+33) then
              tmp = (x / y) / a
          else
              tmp = (1.0d0 / ((1.0d0 + b) / x)) / y
          end if
          code = tmp
      end function
      
      public static double code(double x, double y, double z, double t, double a, double b) {
      	double tmp;
      	if (b <= 1.7e-260) {
      		tmp = (b * (b * (x * (b * -0.16666666666666666)))) / y;
      	} else if (b <= 2.1e+33) {
      		tmp = (x / y) / a;
      	} else {
      		tmp = (1.0 / ((1.0 + b) / x)) / y;
      	}
      	return tmp;
      }
      
      def code(x, y, z, t, a, b):
      	tmp = 0
      	if b <= 1.7e-260:
      		tmp = (b * (b * (x * (b * -0.16666666666666666)))) / y
      	elif b <= 2.1e+33:
      		tmp = (x / y) / a
      	else:
      		tmp = (1.0 / ((1.0 + b) / x)) / y
      	return tmp
      
      function code(x, y, z, t, a, b)
      	tmp = 0.0
      	if (b <= 1.7e-260)
      		tmp = Float64(Float64(b * Float64(b * Float64(x * Float64(b * -0.16666666666666666)))) / y);
      	elseif (b <= 2.1e+33)
      		tmp = Float64(Float64(x / y) / a);
      	else
      		tmp = Float64(Float64(1.0 / Float64(Float64(1.0 + b) / x)) / y);
      	end
      	return tmp
      end
      
      function tmp_2 = code(x, y, z, t, a, b)
      	tmp = 0.0;
      	if (b <= 1.7e-260)
      		tmp = (b * (b * (x * (b * -0.16666666666666666)))) / y;
      	elseif (b <= 2.1e+33)
      		tmp = (x / y) / a;
      	else
      		tmp = (1.0 / ((1.0 + b) / x)) / y;
      	end
      	tmp_2 = tmp;
      end
      
      code[x_, y_, z_, t_, a_, b_] := If[LessEqual[b, 1.7e-260], N[(N[(b * N[(b * N[(x * N[(b * -0.16666666666666666), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision], If[LessEqual[b, 2.1e+33], N[(N[(x / y), $MachinePrecision] / a), $MachinePrecision], N[(N[(1.0 / N[(N[(1.0 + b), $MachinePrecision] / x), $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision]]]
      
      \begin{array}{l}
      
      \\
      \begin{array}{l}
      \mathbf{if}\;b \leq 1.7 \cdot 10^{-260}:\\
      \;\;\;\;\frac{b \cdot \left(b \cdot \left(x \cdot \left(b \cdot -0.16666666666666666\right)\right)\right)}{y}\\
      
      \mathbf{elif}\;b \leq 2.1 \cdot 10^{+33}:\\
      \;\;\;\;\frac{\frac{x}{y}}{a}\\
      
      \mathbf{else}:\\
      \;\;\;\;\frac{\frac{1}{\frac{1 + b}{x}}}{y}\\
      
      
      \end{array}
      \end{array}
      
      Derivation
      1. Split input into 3 regimes
      2. if b < 1.6999999999999999e-260

        1. Initial program 98.7%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in b around inf

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(-1 \cdot b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. mul-1-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(\mathsf{neg}\left(b\right)\right)\right)\right), y\right) \]
          2. neg-sub0N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(0 - b\right)\right)\right), y\right) \]
          3. --lowering--.f6454.3%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(0, b\right)\right)\right), y\right) \]
        5. Simplified54.3%

          \[\leadsto \frac{x \cdot e^{\color{blue}{0 - b}}}{y} \]
        6. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(x + b \cdot \left(-1 \cdot x + b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right)\right)}, y\right) \]
        7. Step-by-step derivation
          1. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \left(b \cdot \left(-1 \cdot x + b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right)\right)\right), y\right) \]
          2. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \left(-1 \cdot x + b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right)\right)\right), y\right) \]
          3. +-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \left(b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right) + -1 \cdot x\right)\right)\right), y\right) \]
          4. mul-1-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \left(b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right) + \left(\mathsf{neg}\left(x\right)\right)\right)\right)\right), y\right) \]
          5. unsub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \left(b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right) - x\right)\right)\right), y\right) \]
          6. --lowering--.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\left(b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right), x\right)\right)\right), y\right) \]
          7. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right), x\right)\right)\right), y\right) \]
          8. associate-*r*N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \left(\left(\frac{-1}{6} \cdot b\right) \cdot x + \frac{1}{2} \cdot x\right)\right), x\right)\right)\right), y\right) \]
          9. distribute-rgt-outN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \left(x \cdot \left(\frac{-1}{6} \cdot b + \frac{1}{2}\right)\right)\right), x\right)\right)\right), y\right) \]
          10. +-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \left(x \cdot \left(\frac{1}{2} + \frac{-1}{6} \cdot b\right)\right)\right), x\right)\right)\right), y\right) \]
          11. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(x, \left(\frac{1}{2} + \frac{-1}{6} \cdot b\right)\right)\right), x\right)\right)\right), y\right) \]
          12. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(x, \mathsf{+.f64}\left(\frac{1}{2}, \left(\frac{-1}{6} \cdot b\right)\right)\right)\right), x\right)\right)\right), y\right) \]
          13. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(x, \mathsf{+.f64}\left(\frac{1}{2}, \left(b \cdot \frac{-1}{6}\right)\right)\right)\right), x\right)\right)\right), y\right) \]
          14. *-lowering-*.f6448.4%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(x, \mathsf{+.f64}\left(\frac{1}{2}, \mathsf{*.f64}\left(b, \frac{-1}{6}\right)\right)\right)\right), x\right)\right)\right), y\right) \]
        8. Simplified48.4%

          \[\leadsto \frac{\color{blue}{x + b \cdot \left(b \cdot \left(x \cdot \left(0.5 + b \cdot -0.16666666666666666\right)\right) - x\right)}}{y} \]
        9. Taylor expanded in b around inf

          \[\leadsto \color{blue}{\frac{-1}{6} \cdot \frac{{b}^{3} \cdot x}{y}} \]
        10. Step-by-step derivation
          1. associate-*r/N/A

            \[\leadsto \frac{\frac{-1}{6} \cdot \left({b}^{3} \cdot x\right)}{\color{blue}{y}} \]
          2. *-commutativeN/A

            \[\leadsto \frac{\frac{-1}{6} \cdot \left(x \cdot {b}^{3}\right)}{y} \]
          3. associate-*r*N/A

            \[\leadsto \frac{\left(\frac{-1}{6} \cdot x\right) \cdot {b}^{3}}{y} \]
          4. /-lowering-/.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\left(\left(\frac{-1}{6} \cdot x\right) \cdot {b}^{3}\right), \color{blue}{y}\right) \]
          5. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\left({b}^{3} \cdot \left(\frac{-1}{6} \cdot x\right)\right), y\right) \]
          6. cube-multN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\left(b \cdot \left(b \cdot b\right)\right) \cdot \left(\frac{-1}{6} \cdot x\right)\right), y\right) \]
          7. unpow2N/A

            \[\leadsto \mathsf{/.f64}\left(\left(\left(b \cdot {b}^{2}\right) \cdot \left(\frac{-1}{6} \cdot x\right)\right), y\right) \]
          8. associate-*l*N/A

            \[\leadsto \mathsf{/.f64}\left(\left(b \cdot \left({b}^{2} \cdot \left(\frac{-1}{6} \cdot x\right)\right)\right), y\right) \]
          9. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\left(b \cdot \left(\left(\frac{-1}{6} \cdot x\right) \cdot {b}^{2}\right)\right), y\right) \]
          10. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(b, \left(\left(\frac{-1}{6} \cdot x\right) \cdot {b}^{2}\right)\right), y\right) \]
          11. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(b, \left({b}^{2} \cdot \left(\frac{-1}{6} \cdot x\right)\right)\right), y\right) \]
          12. unpow2N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(b, \left(\left(b \cdot b\right) \cdot \left(\frac{-1}{6} \cdot x\right)\right)\right), y\right) \]
          13. associate-*l*N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(b, \left(b \cdot \left(b \cdot \left(\frac{-1}{6} \cdot x\right)\right)\right)\right), y\right) \]
          14. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(b, \left(b \cdot \left(b \cdot \left(x \cdot \frac{-1}{6}\right)\right)\right)\right), y\right) \]
          15. associate-*r*N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(b, \left(b \cdot \left(\left(b \cdot x\right) \cdot \frac{-1}{6}\right)\right)\right), y\right) \]
          16. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(b, \left(b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right)\right)\right)\right), y\right) \]
          17. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(b, \left(\frac{-1}{6} \cdot \left(b \cdot x\right)\right)\right)\right), y\right) \]
          18. associate-*r*N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(b, \left(\left(\frac{-1}{6} \cdot b\right) \cdot x\right)\right)\right), y\right) \]
          19. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(b, \left(x \cdot \left(\frac{-1}{6} \cdot b\right)\right)\right)\right), y\right) \]
          20. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(b, \mathsf{*.f64}\left(x, \left(\frac{-1}{6} \cdot b\right)\right)\right)\right), y\right) \]
          21. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(b, \mathsf{*.f64}\left(x, \left(b \cdot \frac{-1}{6}\right)\right)\right)\right), y\right) \]
          22. *-lowering-*.f6458.5%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(b, \mathsf{*.f64}\left(x, \mathsf{*.f64}\left(b, \frac{-1}{6}\right)\right)\right)\right), y\right) \]
        11. Simplified58.5%

          \[\leadsto \color{blue}{\frac{b \cdot \left(b \cdot \left(x \cdot \left(b \cdot -0.16666666666666666\right)\right)\right)}{y}} \]

        if 1.6999999999999999e-260 < b < 2.1000000000000001e33

        1. Initial program 92.4%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in y around 0

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(\log a \cdot \left(t - 1\right) - b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. --lowering--.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\left(\log a \cdot \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          2. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\log a, \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          3. log-lowering-log.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          4. sub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right), b\right)\right)\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + -1\right)\right), b\right)\right)\right), y\right) \]
          6. +-lowering-+.f6474.3%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \mathsf{+.f64}\left(t, -1\right)\right), b\right)\right)\right), y\right) \]
        5. Simplified74.3%

          \[\leadsto \frac{x \cdot e^{\color{blue}{\log a \cdot \left(t + -1\right) - b}}}{y} \]
        6. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(x \cdot e^{\log a \cdot \left(t - 1\right)}\right)}, y\right) \]
        7. Step-by-step derivation
          1. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(e^{\log a \cdot \left(t - 1\right)}\right)\right), y\right) \]
          2. exp-to-powN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left({a}^{\left(t - 1\right)}\right)\right), y\right) \]
          3. pow-lowering-pow.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t - 1\right)\right)\right), y\right) \]
          4. sub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right)\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + -1\right)\right)\right), y\right) \]
          6. +-lowering-+.f6473.2%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \mathsf{+.f64}\left(t, -1\right)\right)\right), y\right) \]
        8. Simplified73.2%

          \[\leadsto \frac{\color{blue}{x \cdot {a}^{\left(t + -1\right)}}}{y} \]
        9. Taylor expanded in t around 0

          \[\leadsto \color{blue}{\frac{x}{a \cdot y}} \]
        10. Step-by-step derivation
          1. *-commutativeN/A

            \[\leadsto \frac{x}{y \cdot \color{blue}{a}} \]
          2. associate-/r*N/A

            \[\leadsto \frac{\frac{x}{y}}{\color{blue}{a}} \]
          3. /-lowering-/.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{x}{y}\right), \color{blue}{a}\right) \]
          4. /-lowering-/.f6450.6%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(x, y\right), a\right) \]
        11. Simplified50.6%

          \[\leadsto \color{blue}{\frac{\frac{x}{y}}{a}} \]

        if 2.1000000000000001e33 < b

        1. Initial program 100.0%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in b around inf

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(-1 \cdot b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. mul-1-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(\mathsf{neg}\left(b\right)\right)\right)\right), y\right) \]
          2. neg-sub0N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(0 - b\right)\right)\right), y\right) \]
          3. --lowering--.f6481.3%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(0, b\right)\right)\right), y\right) \]
        5. Simplified81.3%

          \[\leadsto \frac{x \cdot e^{\color{blue}{0 - b}}}{y} \]
        6. Step-by-step derivation
          1. sub0-negN/A

            \[\leadsto \mathsf{/.f64}\left(\left(x \cdot e^{\mathsf{neg}\left(b\right)}\right), y\right) \]
          2. exp-negN/A

            \[\leadsto \mathsf{/.f64}\left(\left(x \cdot \frac{1}{e^{b}}\right), y\right) \]
          3. div-invN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{x}{e^{b}}\right), y\right) \]
          4. clear-numN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{1}{\frac{e^{b}}{x}}\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{-1 \cdot -1}{\frac{e^{b}}{x}}\right), y\right) \]
          6. /-lowering-/.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(\left(-1 \cdot -1\right), \left(\frac{e^{b}}{x}\right)\right), y\right) \]
          7. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \left(\frac{e^{b}}{x}\right)\right), y\right) \]
          8. /-lowering-/.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\left(e^{b}\right), x\right)\right), y\right) \]
          9. exp-lowering-exp.f6481.3%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{exp.f64}\left(b\right), x\right)\right), y\right) \]
        7. Applied egg-rr81.3%

          \[\leadsto \frac{\color{blue}{\frac{1}{\frac{e^{b}}{x}}}}{y} \]
        8. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\color{blue}{\left(1 + b\right)}, x\right)\right), y\right) \]
        9. Step-by-step derivation
          1. +-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\left(b + 1\right), x\right)\right), y\right) \]
          2. +-lowering-+.f6430.0%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{+.f64}\left(b, 1\right), x\right)\right), y\right) \]
        10. Simplified30.0%

          \[\leadsto \frac{\frac{1}{\frac{\color{blue}{b + 1}}{x}}}{y} \]
      3. Recombined 3 regimes into one program.
      4. Final simplification50.3%

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \leq 1.7 \cdot 10^{-260}:\\ \;\;\;\;\frac{b \cdot \left(b \cdot \left(x \cdot \left(b \cdot -0.16666666666666666\right)\right)\right)}{y}\\ \mathbf{elif}\;b \leq 2.1 \cdot 10^{+33}:\\ \;\;\;\;\frac{\frac{x}{y}}{a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{\frac{1 + b}{x}}}{y}\\ \end{array} \]
      5. Add Preprocessing

      Alternative 20: 41.9% accurate, 16.6× speedup?

      \[\begin{array}{l} \\ \begin{array}{l} \mathbf{if}\;b \leq 3.7 \cdot 10^{-257}:\\ \;\;\;\;\left(b \cdot b\right) \cdot \frac{b \cdot \left(x \cdot -0.16666666666666666\right)}{y}\\ \mathbf{elif}\;b \leq 5.5 \cdot 10^{+41}:\\ \;\;\;\;\frac{\frac{x}{y}}{a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{\frac{1 + b}{x}}}{y}\\ \end{array} \end{array} \]
      (FPCore (x y z t a b)
       :precision binary64
       (if (<= b 3.7e-257)
         (* (* b b) (/ (* b (* x -0.16666666666666666)) y))
         (if (<= b 5.5e+41) (/ (/ x y) a) (/ (/ 1.0 (/ (+ 1.0 b) x)) y))))
      double code(double x, double y, double z, double t, double a, double b) {
      	double tmp;
      	if (b <= 3.7e-257) {
      		tmp = (b * b) * ((b * (x * -0.16666666666666666)) / y);
      	} else if (b <= 5.5e+41) {
      		tmp = (x / y) / a;
      	} else {
      		tmp = (1.0 / ((1.0 + b) / x)) / y;
      	}
      	return tmp;
      }
      
      real(8) function code(x, y, z, t, a, b)
          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) :: tmp
          if (b <= 3.7d-257) then
              tmp = (b * b) * ((b * (x * (-0.16666666666666666d0))) / y)
          else if (b <= 5.5d+41) then
              tmp = (x / y) / a
          else
              tmp = (1.0d0 / ((1.0d0 + b) / x)) / y
          end if
          code = tmp
      end function
      
      public static double code(double x, double y, double z, double t, double a, double b) {
      	double tmp;
      	if (b <= 3.7e-257) {
      		tmp = (b * b) * ((b * (x * -0.16666666666666666)) / y);
      	} else if (b <= 5.5e+41) {
      		tmp = (x / y) / a;
      	} else {
      		tmp = (1.0 / ((1.0 + b) / x)) / y;
      	}
      	return tmp;
      }
      
      def code(x, y, z, t, a, b):
      	tmp = 0
      	if b <= 3.7e-257:
      		tmp = (b * b) * ((b * (x * -0.16666666666666666)) / y)
      	elif b <= 5.5e+41:
      		tmp = (x / y) / a
      	else:
      		tmp = (1.0 / ((1.0 + b) / x)) / y
      	return tmp
      
      function code(x, y, z, t, a, b)
      	tmp = 0.0
      	if (b <= 3.7e-257)
      		tmp = Float64(Float64(b * b) * Float64(Float64(b * Float64(x * -0.16666666666666666)) / y));
      	elseif (b <= 5.5e+41)
      		tmp = Float64(Float64(x / y) / a);
      	else
      		tmp = Float64(Float64(1.0 / Float64(Float64(1.0 + b) / x)) / y);
      	end
      	return tmp
      end
      
      function tmp_2 = code(x, y, z, t, a, b)
      	tmp = 0.0;
      	if (b <= 3.7e-257)
      		tmp = (b * b) * ((b * (x * -0.16666666666666666)) / y);
      	elseif (b <= 5.5e+41)
      		tmp = (x / y) / a;
      	else
      		tmp = (1.0 / ((1.0 + b) / x)) / y;
      	end
      	tmp_2 = tmp;
      end
      
      code[x_, y_, z_, t_, a_, b_] := If[LessEqual[b, 3.7e-257], N[(N[(b * b), $MachinePrecision] * N[(N[(b * N[(x * -0.16666666666666666), $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision]), $MachinePrecision], If[LessEqual[b, 5.5e+41], N[(N[(x / y), $MachinePrecision] / a), $MachinePrecision], N[(N[(1.0 / N[(N[(1.0 + b), $MachinePrecision] / x), $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision]]]
      
      \begin{array}{l}
      
      \\
      \begin{array}{l}
      \mathbf{if}\;b \leq 3.7 \cdot 10^{-257}:\\
      \;\;\;\;\left(b \cdot b\right) \cdot \frac{b \cdot \left(x \cdot -0.16666666666666666\right)}{y}\\
      
      \mathbf{elif}\;b \leq 5.5 \cdot 10^{+41}:\\
      \;\;\;\;\frac{\frac{x}{y}}{a}\\
      
      \mathbf{else}:\\
      \;\;\;\;\frac{\frac{1}{\frac{1 + b}{x}}}{y}\\
      
      
      \end{array}
      \end{array}
      
      Derivation
      1. Split input into 3 regimes
      2. if b < 3.69999999999999984e-257

        1. Initial program 98.7%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in b around inf

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(-1 \cdot b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. mul-1-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(\mathsf{neg}\left(b\right)\right)\right)\right), y\right) \]
          2. neg-sub0N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(0 - b\right)\right)\right), y\right) \]
          3. --lowering--.f6454.3%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(0, b\right)\right)\right), y\right) \]
        5. Simplified54.3%

          \[\leadsto \frac{x \cdot e^{\color{blue}{0 - b}}}{y} \]
        6. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(x + b \cdot \left(-1 \cdot x + b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right)\right)}, y\right) \]
        7. Step-by-step derivation
          1. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \left(b \cdot \left(-1 \cdot x + b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right)\right)\right), y\right) \]
          2. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \left(-1 \cdot x + b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right)\right)\right), y\right) \]
          3. +-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \left(b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right) + -1 \cdot x\right)\right)\right), y\right) \]
          4. mul-1-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \left(b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right) + \left(\mathsf{neg}\left(x\right)\right)\right)\right)\right), y\right) \]
          5. unsub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \left(b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right) - x\right)\right)\right), y\right) \]
          6. --lowering--.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\left(b \cdot \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right), x\right)\right)\right), y\right) \]
          7. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \left(\frac{-1}{6} \cdot \left(b \cdot x\right) + \frac{1}{2} \cdot x\right)\right), x\right)\right)\right), y\right) \]
          8. associate-*r*N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \left(\left(\frac{-1}{6} \cdot b\right) \cdot x + \frac{1}{2} \cdot x\right)\right), x\right)\right)\right), y\right) \]
          9. distribute-rgt-outN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \left(x \cdot \left(\frac{-1}{6} \cdot b + \frac{1}{2}\right)\right)\right), x\right)\right)\right), y\right) \]
          10. +-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \left(x \cdot \left(\frac{1}{2} + \frac{-1}{6} \cdot b\right)\right)\right), x\right)\right)\right), y\right) \]
          11. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(x, \left(\frac{1}{2} + \frac{-1}{6} \cdot b\right)\right)\right), x\right)\right)\right), y\right) \]
          12. +-lowering-+.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(x, \mathsf{+.f64}\left(\frac{1}{2}, \left(\frac{-1}{6} \cdot b\right)\right)\right)\right), x\right)\right)\right), y\right) \]
          13. *-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(x, \mathsf{+.f64}\left(\frac{1}{2}, \left(b \cdot \frac{-1}{6}\right)\right)\right)\right), x\right)\right)\right), y\right) \]
          14. *-lowering-*.f6448.4%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{+.f64}\left(x, \mathsf{*.f64}\left(b, \mathsf{\_.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(x, \mathsf{+.f64}\left(\frac{1}{2}, \mathsf{*.f64}\left(b, \frac{-1}{6}\right)\right)\right)\right), x\right)\right)\right), y\right) \]
        8. Simplified48.4%

          \[\leadsto \frac{\color{blue}{x + b \cdot \left(b \cdot \left(x \cdot \left(0.5 + b \cdot -0.16666666666666666\right)\right) - x\right)}}{y} \]
        9. Step-by-step derivation
          1. clear-numN/A

            \[\leadsto \frac{1}{\color{blue}{\frac{y}{x + b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)}}} \]
          2. associate-/r/N/A

            \[\leadsto \frac{1}{y} \cdot \color{blue}{\left(x + b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right)} \]
          3. flip3-+N/A

            \[\leadsto \frac{1}{y} \cdot \frac{{x}^{3} + {\left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right)}^{3}}{\color{blue}{x \cdot x + \left(\left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) \cdot \left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) - x \cdot \left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right)\right)}} \]
          4. clear-numN/A

            \[\leadsto \frac{1}{y} \cdot \frac{1}{\color{blue}{\frac{x \cdot x + \left(\left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) \cdot \left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) - x \cdot \left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right)\right)}{{x}^{3} + {\left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right)}^{3}}}} \]
          5. un-div-invN/A

            \[\leadsto \frac{\frac{1}{y}}{\color{blue}{\frac{x \cdot x + \left(\left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) \cdot \left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) - x \cdot \left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right)\right)}{{x}^{3} + {\left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right)}^{3}}}} \]
          6. /-lowering-/.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{1}{y}\right), \color{blue}{\left(\frac{x \cdot x + \left(\left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) \cdot \left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right) - x \cdot \left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right)\right)}{{x}^{3} + {\left(b \cdot \left(b \cdot \left(x \cdot \left(\frac{1}{2} + b \cdot \frac{-1}{6}\right)\right) - x\right)\right)}^{3}}\right)}\right) \]
        10. Applied egg-rr48.4%

          \[\leadsto \color{blue}{\frac{\frac{1}{y}}{\frac{1}{x + b \cdot \left(x \cdot \left(\left(0.5 + b \cdot -0.16666666666666666\right) \cdot b\right) - x\right)}}} \]
        11. Taylor expanded in b around inf

          \[\leadsto \color{blue}{\frac{-1}{6} \cdot \frac{{b}^{3} \cdot x}{y}} \]
        12. Step-by-step derivation
          1. *-commutativeN/A

            \[\leadsto \frac{{b}^{3} \cdot x}{y} \cdot \color{blue}{\frac{-1}{6}} \]
          2. associate-/l*N/A

            \[\leadsto \left({b}^{3} \cdot \frac{x}{y}\right) \cdot \frac{-1}{6} \]
          3. associate-*r*N/A

            \[\leadsto {b}^{3} \cdot \color{blue}{\left(\frac{x}{y} \cdot \frac{-1}{6}\right)} \]
          4. *-commutativeN/A

            \[\leadsto {b}^{3} \cdot \left(\frac{-1}{6} \cdot \color{blue}{\frac{x}{y}}\right) \]
          5. unpow3N/A

            \[\leadsto \left(\left(b \cdot b\right) \cdot b\right) \cdot \left(\color{blue}{\frac{-1}{6}} \cdot \frac{x}{y}\right) \]
          6. unpow2N/A

            \[\leadsto \left({b}^{2} \cdot b\right) \cdot \left(\frac{-1}{6} \cdot \frac{x}{y}\right) \]
          7. associate-*l*N/A

            \[\leadsto {b}^{2} \cdot \color{blue}{\left(b \cdot \left(\frac{-1}{6} \cdot \frac{x}{y}\right)\right)} \]
          8. *-commutativeN/A

            \[\leadsto {b}^{2} \cdot \left(b \cdot \left(\frac{x}{y} \cdot \color{blue}{\frac{-1}{6}}\right)\right) \]
          9. associate-*l*N/A

            \[\leadsto {b}^{2} \cdot \left(\left(b \cdot \frac{x}{y}\right) \cdot \color{blue}{\frac{-1}{6}}\right) \]
          10. associate-/l*N/A

            \[\leadsto {b}^{2} \cdot \left(\frac{b \cdot x}{y} \cdot \frac{-1}{6}\right) \]
          11. *-commutativeN/A

            \[\leadsto {b}^{2} \cdot \left(\frac{-1}{6} \cdot \color{blue}{\frac{b \cdot x}{y}}\right) \]
          12. *-lowering-*.f64N/A

            \[\leadsto \mathsf{*.f64}\left(\left({b}^{2}\right), \color{blue}{\left(\frac{-1}{6} \cdot \frac{b \cdot x}{y}\right)}\right) \]
          13. unpow2N/A

            \[\leadsto \mathsf{*.f64}\left(\left(b \cdot b\right), \left(\color{blue}{\frac{-1}{6}} \cdot \frac{b \cdot x}{y}\right)\right) \]
          14. *-lowering-*.f64N/A

            \[\leadsto \mathsf{*.f64}\left(\mathsf{*.f64}\left(b, b\right), \left(\color{blue}{\frac{-1}{6}} \cdot \frac{b \cdot x}{y}\right)\right) \]
          15. associate-*r/N/A

            \[\leadsto \mathsf{*.f64}\left(\mathsf{*.f64}\left(b, b\right), \left(\frac{\frac{-1}{6} \cdot \left(b \cdot x\right)}{\color{blue}{y}}\right)\right) \]
          16. /-lowering-/.f64N/A

            \[\leadsto \mathsf{*.f64}\left(\mathsf{*.f64}\left(b, b\right), \mathsf{/.f64}\left(\left(\frac{-1}{6} \cdot \left(b \cdot x\right)\right), \color{blue}{y}\right)\right) \]
          17. *-commutativeN/A

            \[\leadsto \mathsf{*.f64}\left(\mathsf{*.f64}\left(b, b\right), \mathsf{/.f64}\left(\left(\left(b \cdot x\right) \cdot \frac{-1}{6}\right), y\right)\right) \]
          18. associate-*l*N/A

            \[\leadsto \mathsf{*.f64}\left(\mathsf{*.f64}\left(b, b\right), \mathsf{/.f64}\left(\left(b \cdot \left(x \cdot \frac{-1}{6}\right)\right), y\right)\right) \]
          19. *-commutativeN/A

            \[\leadsto \mathsf{*.f64}\left(\mathsf{*.f64}\left(b, b\right), \mathsf{/.f64}\left(\left(b \cdot \left(\frac{-1}{6} \cdot x\right)\right), y\right)\right) \]
          20. *-lowering-*.f64N/A

            \[\leadsto \mathsf{*.f64}\left(\mathsf{*.f64}\left(b, b\right), \mathsf{/.f64}\left(\mathsf{*.f64}\left(b, \left(\frac{-1}{6} \cdot x\right)\right), y\right)\right) \]
          21. *-commutativeN/A

            \[\leadsto \mathsf{*.f64}\left(\mathsf{*.f64}\left(b, b\right), \mathsf{/.f64}\left(\mathsf{*.f64}\left(b, \left(x \cdot \frac{-1}{6}\right)\right), y\right)\right) \]
          22. *-lowering-*.f6458.4%

            \[\leadsto \mathsf{*.f64}\left(\mathsf{*.f64}\left(b, b\right), \mathsf{/.f64}\left(\mathsf{*.f64}\left(b, \mathsf{*.f64}\left(x, \frac{-1}{6}\right)\right), y\right)\right) \]
        13. Simplified58.4%

          \[\leadsto \color{blue}{\left(b \cdot b\right) \cdot \frac{b \cdot \left(x \cdot -0.16666666666666666\right)}{y}} \]

        if 3.69999999999999984e-257 < b < 5.5000000000000003e41

        1. Initial program 92.4%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in y around 0

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(\log a \cdot \left(t - 1\right) - b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. --lowering--.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\left(\log a \cdot \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          2. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\log a, \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          3. log-lowering-log.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          4. sub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right), b\right)\right)\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + -1\right)\right), b\right)\right)\right), y\right) \]
          6. +-lowering-+.f6474.3%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \mathsf{+.f64}\left(t, -1\right)\right), b\right)\right)\right), y\right) \]
        5. Simplified74.3%

          \[\leadsto \frac{x \cdot e^{\color{blue}{\log a \cdot \left(t + -1\right) - b}}}{y} \]
        6. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(x \cdot e^{\log a \cdot \left(t - 1\right)}\right)}, y\right) \]
        7. Step-by-step derivation
          1. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(e^{\log a \cdot \left(t - 1\right)}\right)\right), y\right) \]
          2. exp-to-powN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left({a}^{\left(t - 1\right)}\right)\right), y\right) \]
          3. pow-lowering-pow.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t - 1\right)\right)\right), y\right) \]
          4. sub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right)\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + -1\right)\right)\right), y\right) \]
          6. +-lowering-+.f6473.2%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \mathsf{+.f64}\left(t, -1\right)\right)\right), y\right) \]
        8. Simplified73.2%

          \[\leadsto \frac{\color{blue}{x \cdot {a}^{\left(t + -1\right)}}}{y} \]
        9. Taylor expanded in t around 0

          \[\leadsto \color{blue}{\frac{x}{a \cdot y}} \]
        10. Step-by-step derivation
          1. *-commutativeN/A

            \[\leadsto \frac{x}{y \cdot \color{blue}{a}} \]
          2. associate-/r*N/A

            \[\leadsto \frac{\frac{x}{y}}{\color{blue}{a}} \]
          3. /-lowering-/.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{x}{y}\right), \color{blue}{a}\right) \]
          4. /-lowering-/.f6450.6%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(x, y\right), a\right) \]
        11. Simplified50.6%

          \[\leadsto \color{blue}{\frac{\frac{x}{y}}{a}} \]

        if 5.5000000000000003e41 < b

        1. Initial program 100.0%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in b around inf

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(-1 \cdot b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. mul-1-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(\mathsf{neg}\left(b\right)\right)\right)\right), y\right) \]
          2. neg-sub0N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(0 - b\right)\right)\right), y\right) \]
          3. --lowering--.f6481.3%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(0, b\right)\right)\right), y\right) \]
        5. Simplified81.3%

          \[\leadsto \frac{x \cdot e^{\color{blue}{0 - b}}}{y} \]
        6. Step-by-step derivation
          1. sub0-negN/A

            \[\leadsto \mathsf{/.f64}\left(\left(x \cdot e^{\mathsf{neg}\left(b\right)}\right), y\right) \]
          2. exp-negN/A

            \[\leadsto \mathsf{/.f64}\left(\left(x \cdot \frac{1}{e^{b}}\right), y\right) \]
          3. div-invN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{x}{e^{b}}\right), y\right) \]
          4. clear-numN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{1}{\frac{e^{b}}{x}}\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{-1 \cdot -1}{\frac{e^{b}}{x}}\right), y\right) \]
          6. /-lowering-/.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(\left(-1 \cdot -1\right), \left(\frac{e^{b}}{x}\right)\right), y\right) \]
          7. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \left(\frac{e^{b}}{x}\right)\right), y\right) \]
          8. /-lowering-/.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\left(e^{b}\right), x\right)\right), y\right) \]
          9. exp-lowering-exp.f6481.3%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{exp.f64}\left(b\right), x\right)\right), y\right) \]
        7. Applied egg-rr81.3%

          \[\leadsto \frac{\color{blue}{\frac{1}{\frac{e^{b}}{x}}}}{y} \]
        8. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\color{blue}{\left(1 + b\right)}, x\right)\right), y\right) \]
        9. Step-by-step derivation
          1. +-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\left(b + 1\right), x\right)\right), y\right) \]
          2. +-lowering-+.f6430.0%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(1, \mathsf{/.f64}\left(\mathsf{+.f64}\left(b, 1\right), x\right)\right), y\right) \]
        10. Simplified30.0%

          \[\leadsto \frac{\frac{1}{\frac{\color{blue}{b + 1}}{x}}}{y} \]
      3. Recombined 3 regimes into one program.
      4. Final simplification50.3%

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \leq 3.7 \cdot 10^{-257}:\\ \;\;\;\;\left(b \cdot b\right) \cdot \frac{b \cdot \left(x \cdot -0.16666666666666666\right)}{y}\\ \mathbf{elif}\;b \leq 5.5 \cdot 10^{+41}:\\ \;\;\;\;\frac{\frac{x}{y}}{a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{\frac{1 + b}{x}}}{y}\\ \end{array} \]
      5. Add Preprocessing

      Alternative 21: 34.1% accurate, 26.2× speedup?

      \[\begin{array}{l} \\ \begin{array}{l} \mathbf{if}\;b \leq -1.1 \cdot 10^{+161}:\\ \;\;\;\;\frac{x \cdot \left(1 - b\right)}{y}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{x}{y}}{a}\\ \end{array} \end{array} \]
      (FPCore (x y z t a b)
       :precision binary64
       (if (<= b -1.1e+161) (/ (* x (- 1.0 b)) y) (/ (/ x y) a)))
      double code(double x, double y, double z, double t, double a, double b) {
      	double tmp;
      	if (b <= -1.1e+161) {
      		tmp = (x * (1.0 - b)) / y;
      	} else {
      		tmp = (x / y) / a;
      	}
      	return tmp;
      }
      
      real(8) function code(x, y, z, t, a, b)
          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) :: tmp
          if (b <= (-1.1d+161)) then
              tmp = (x * (1.0d0 - b)) / y
          else
              tmp = (x / y) / a
          end if
          code = tmp
      end function
      
      public static double code(double x, double y, double z, double t, double a, double b) {
      	double tmp;
      	if (b <= -1.1e+161) {
      		tmp = (x * (1.0 - b)) / y;
      	} else {
      		tmp = (x / y) / a;
      	}
      	return tmp;
      }
      
      def code(x, y, z, t, a, b):
      	tmp = 0
      	if b <= -1.1e+161:
      		tmp = (x * (1.0 - b)) / y
      	else:
      		tmp = (x / y) / a
      	return tmp
      
      function code(x, y, z, t, a, b)
      	tmp = 0.0
      	if (b <= -1.1e+161)
      		tmp = Float64(Float64(x * Float64(1.0 - b)) / y);
      	else
      		tmp = Float64(Float64(x / y) / a);
      	end
      	return tmp
      end
      
      function tmp_2 = code(x, y, z, t, a, b)
      	tmp = 0.0;
      	if (b <= -1.1e+161)
      		tmp = (x * (1.0 - b)) / y;
      	else
      		tmp = (x / y) / a;
      	end
      	tmp_2 = tmp;
      end
      
      code[x_, y_, z_, t_, a_, b_] := If[LessEqual[b, -1.1e+161], N[(N[(x * N[(1.0 - b), $MachinePrecision]), $MachinePrecision] / y), $MachinePrecision], N[(N[(x / y), $MachinePrecision] / a), $MachinePrecision]]
      
      \begin{array}{l}
      
      \\
      \begin{array}{l}
      \mathbf{if}\;b \leq -1.1 \cdot 10^{+161}:\\
      \;\;\;\;\frac{x \cdot \left(1 - b\right)}{y}\\
      
      \mathbf{else}:\\
      \;\;\;\;\frac{\frac{x}{y}}{a}\\
      
      
      \end{array}
      \end{array}
      
      Derivation
      1. Split input into 2 regimes
      2. if b < -1.1e161

        1. Initial program 100.0%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in b around inf

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(-1 \cdot b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. mul-1-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(\mathsf{neg}\left(b\right)\right)\right)\right), y\right) \]
          2. neg-sub0N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(0 - b\right)\right)\right), y\right) \]
          3. --lowering--.f6493.3%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(0, b\right)\right)\right), y\right) \]
        5. Simplified93.3%

          \[\leadsto \frac{x \cdot e^{\color{blue}{0 - b}}}{y} \]
        6. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(x + -1 \cdot \left(b \cdot x\right)\right)}, y\right) \]
        7. Step-by-step derivation
          1. associate-*r*N/A

            \[\leadsto \mathsf{/.f64}\left(\left(x + \left(-1 \cdot b\right) \cdot x\right), y\right) \]
          2. neg-mul-1N/A

            \[\leadsto \mathsf{/.f64}\left(\left(x + \left(\mathsf{neg}\left(b\right)\right) \cdot x\right), y\right) \]
          3. distribute-rgt1-inN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\left(\left(\mathsf{neg}\left(b\right)\right) + 1\right) \cdot x\right), y\right) \]
          4. +-commutativeN/A

            \[\leadsto \mathsf{/.f64}\left(\left(\left(1 + \left(\mathsf{neg}\left(b\right)\right)\right) \cdot x\right), y\right) \]
          5. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(\left(1 + \left(\mathsf{neg}\left(b\right)\right)\right), x\right), y\right) \]
          6. unsub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(\left(1 - b\right), x\right), y\right) \]
          7. --lowering--.f6451.9%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(\mathsf{\_.f64}\left(1, b\right), x\right), y\right) \]
        8. Simplified51.9%

          \[\leadsto \frac{\color{blue}{\left(1 - b\right) \cdot x}}{y} \]

        if -1.1e161 < b

        1. Initial program 97.1%

          \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
        2. Add Preprocessing
        3. Taylor expanded in y around 0

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(\log a \cdot \left(t - 1\right) - b\right)}\right)\right), y\right) \]
        4. Step-by-step derivation
          1. --lowering--.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\left(\log a \cdot \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          2. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\log a, \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          3. log-lowering-log.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
          4. sub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right), b\right)\right)\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + -1\right)\right), b\right)\right)\right), y\right) \]
          6. +-lowering-+.f6475.7%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \mathsf{+.f64}\left(t, -1\right)\right), b\right)\right)\right), y\right) \]
        5. Simplified75.7%

          \[\leadsto \frac{x \cdot e^{\color{blue}{\log a \cdot \left(t + -1\right) - b}}}{y} \]
        6. Taylor expanded in b around 0

          \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(x \cdot e^{\log a \cdot \left(t - 1\right)}\right)}, y\right) \]
        7. Step-by-step derivation
          1. *-lowering-*.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(e^{\log a \cdot \left(t - 1\right)}\right)\right), y\right) \]
          2. exp-to-powN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left({a}^{\left(t - 1\right)}\right)\right), y\right) \]
          3. pow-lowering-pow.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t - 1\right)\right)\right), y\right) \]
          4. sub-negN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right)\right), y\right) \]
          5. metadata-evalN/A

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + -1\right)\right)\right), y\right) \]
          6. +-lowering-+.f6457.8%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \mathsf{+.f64}\left(t, -1\right)\right)\right), y\right) \]
        8. Simplified57.8%

          \[\leadsto \frac{\color{blue}{x \cdot {a}^{\left(t + -1\right)}}}{y} \]
        9. Taylor expanded in t around 0

          \[\leadsto \color{blue}{\frac{x}{a \cdot y}} \]
        10. Step-by-step derivation
          1. *-commutativeN/A

            \[\leadsto \frac{x}{y \cdot \color{blue}{a}} \]
          2. associate-/r*N/A

            \[\leadsto \frac{\frac{x}{y}}{\color{blue}{a}} \]
          3. /-lowering-/.f64N/A

            \[\leadsto \mathsf{/.f64}\left(\left(\frac{x}{y}\right), \color{blue}{a}\right) \]
          4. /-lowering-/.f6433.1%

            \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(x, y\right), a\right) \]
        11. Simplified33.1%

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

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \leq -1.1 \cdot 10^{+161}:\\ \;\;\;\;\frac{x \cdot \left(1 - b\right)}{y}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{x}{y}}{a}\\ \end{array} \]
      5. Add Preprocessing

      Alternative 22: 31.3% accurate, 63.0× speedup?

      \[\begin{array}{l} \\ \frac{\frac{x}{y}}{a} \end{array} \]
      (FPCore (x y z t a b) :precision binary64 (/ (/ x y) a))
      double code(double x, double y, double z, double t, double a, double b) {
      	return (x / y) / a;
      }
      
      real(8) function code(x, y, z, t, a, b)
          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
          code = (x / y) / a
      end function
      
      public static double code(double x, double y, double z, double t, double a, double b) {
      	return (x / y) / a;
      }
      
      def code(x, y, z, t, a, b):
      	return (x / y) / a
      
      function code(x, y, z, t, a, b)
      	return Float64(Float64(x / y) / a)
      end
      
      function tmp = code(x, y, z, t, a, b)
      	tmp = (x / y) / a;
      end
      
      code[x_, y_, z_, t_, a_, b_] := N[(N[(x / y), $MachinePrecision] / a), $MachinePrecision]
      
      \begin{array}{l}
      
      \\
      \frac{\frac{x}{y}}{a}
      \end{array}
      
      Derivation
      1. Initial program 97.6%

        \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
      2. Add Preprocessing
      3. Taylor expanded in y around 0

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(\log a \cdot \left(t - 1\right) - b\right)}\right)\right), y\right) \]
      4. Step-by-step derivation
        1. --lowering--.f64N/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\left(\log a \cdot \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
        2. *-lowering-*.f64N/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\log a, \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
        3. log-lowering-log.f64N/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
        4. sub-negN/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right), b\right)\right)\right), y\right) \]
        5. metadata-evalN/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + -1\right)\right), b\right)\right)\right), y\right) \]
        6. +-lowering-+.f6478.7%

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \mathsf{+.f64}\left(t, -1\right)\right), b\right)\right)\right), y\right) \]
      5. Simplified78.7%

        \[\leadsto \frac{x \cdot e^{\color{blue}{\log a \cdot \left(t + -1\right) - b}}}{y} \]
      6. Taylor expanded in b around 0

        \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(x \cdot e^{\log a \cdot \left(t - 1\right)}\right)}, y\right) \]
      7. Step-by-step derivation
        1. *-lowering-*.f64N/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(e^{\log a \cdot \left(t - 1\right)}\right)\right), y\right) \]
        2. exp-to-powN/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left({a}^{\left(t - 1\right)}\right)\right), y\right) \]
        3. pow-lowering-pow.f64N/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t - 1\right)\right)\right), y\right) \]
        4. sub-negN/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right)\right), y\right) \]
        5. metadata-evalN/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + -1\right)\right)\right), y\right) \]
        6. +-lowering-+.f6452.5%

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \mathsf{+.f64}\left(t, -1\right)\right)\right), y\right) \]
      8. Simplified52.5%

        \[\leadsto \frac{\color{blue}{x \cdot {a}^{\left(t + -1\right)}}}{y} \]
      9. Taylor expanded in t around 0

        \[\leadsto \color{blue}{\frac{x}{a \cdot y}} \]
      10. Step-by-step derivation
        1. *-commutativeN/A

          \[\leadsto \frac{x}{y \cdot \color{blue}{a}} \]
        2. associate-/r*N/A

          \[\leadsto \frac{\frac{x}{y}}{\color{blue}{a}} \]
        3. /-lowering-/.f64N/A

          \[\leadsto \mathsf{/.f64}\left(\left(\frac{x}{y}\right), \color{blue}{a}\right) \]
        4. /-lowering-/.f6430.2%

          \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(x, y\right), a\right) \]
      11. Simplified30.2%

        \[\leadsto \color{blue}{\frac{\frac{x}{y}}{a}} \]
      12. Add Preprocessing

      Alternative 23: 31.3% accurate, 63.0× speedup?

      \[\begin{array}{l} \\ \frac{\frac{x}{a}}{y} \end{array} \]
      (FPCore (x y z t a b) :precision binary64 (/ (/ x a) y))
      double code(double x, double y, double z, double t, double a, double b) {
      	return (x / a) / y;
      }
      
      real(8) function code(x, y, z, t, a, b)
          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
          code = (x / a) / y
      end function
      
      public static double code(double x, double y, double z, double t, double a, double b) {
      	return (x / a) / y;
      }
      
      def code(x, y, z, t, a, b):
      	return (x / a) / y
      
      function code(x, y, z, t, a, b)
      	return Float64(Float64(x / a) / y)
      end
      
      function tmp = code(x, y, z, t, a, b)
      	tmp = (x / a) / y;
      end
      
      code[x_, y_, z_, t_, a_, b_] := N[(N[(x / a), $MachinePrecision] / y), $MachinePrecision]
      
      \begin{array}{l}
      
      \\
      \frac{\frac{x}{a}}{y}
      \end{array}
      
      Derivation
      1. Initial program 97.6%

        \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
      2. Add Preprocessing
      3. Taylor expanded in y around 0

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(\log a \cdot \left(t - 1\right) - b\right)}\right)\right), y\right) \]
      4. Step-by-step derivation
        1. --lowering--.f64N/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\left(\log a \cdot \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
        2. *-lowering-*.f64N/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\log a, \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
        3. log-lowering-log.f64N/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t - 1\right)\right), b\right)\right)\right), y\right) \]
        4. sub-negN/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right), b\right)\right)\right), y\right) \]
        5. metadata-evalN/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \left(t + -1\right)\right), b\right)\right)\right), y\right) \]
        6. +-lowering-+.f6478.7%

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(\mathsf{*.f64}\left(\mathsf{log.f64}\left(a\right), \mathsf{+.f64}\left(t, -1\right)\right), b\right)\right)\right), y\right) \]
      5. Simplified78.7%

        \[\leadsto \frac{x \cdot e^{\color{blue}{\log a \cdot \left(t + -1\right) - b}}}{y} \]
      6. Taylor expanded in b around 0

        \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(x \cdot e^{\log a \cdot \left(t - 1\right)}\right)}, y\right) \]
      7. Step-by-step derivation
        1. *-lowering-*.f64N/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left(e^{\log a \cdot \left(t - 1\right)}\right)\right), y\right) \]
        2. exp-to-powN/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \left({a}^{\left(t - 1\right)}\right)\right), y\right) \]
        3. pow-lowering-pow.f64N/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t - 1\right)\right)\right), y\right) \]
        4. sub-negN/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + \left(\mathsf{neg}\left(1\right)\right)\right)\right)\right), y\right) \]
        5. metadata-evalN/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \left(t + -1\right)\right)\right), y\right) \]
        6. +-lowering-+.f6452.5%

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{pow.f64}\left(a, \mathsf{+.f64}\left(t, -1\right)\right)\right), y\right) \]
      8. Simplified52.5%

        \[\leadsto \frac{\color{blue}{x \cdot {a}^{\left(t + -1\right)}}}{y} \]
      9. Taylor expanded in t around 0

        \[\leadsto \mathsf{/.f64}\left(\color{blue}{\left(\frac{x}{a}\right)}, y\right) \]
      10. Step-by-step derivation
        1. /-lowering-/.f6427.5%

          \[\leadsto \mathsf{/.f64}\left(\mathsf{/.f64}\left(x, a\right), y\right) \]
      11. Simplified27.5%

        \[\leadsto \frac{\color{blue}{\frac{x}{a}}}{y} \]
      12. Add Preprocessing

      Alternative 24: 17.1% accurate, 63.0× speedup?

      \[\begin{array}{l} \\ \frac{1}{\frac{y}{x}} \end{array} \]
      (FPCore (x y z t a b) :precision binary64 (/ 1.0 (/ y x)))
      double code(double x, double y, double z, double t, double a, double b) {
      	return 1.0 / (y / x);
      }
      
      real(8) function code(x, y, z, t, a, b)
          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
          code = 1.0d0 / (y / x)
      end function
      
      public static double code(double x, double y, double z, double t, double a, double b) {
      	return 1.0 / (y / x);
      }
      
      def code(x, y, z, t, a, b):
      	return 1.0 / (y / x)
      
      function code(x, y, z, t, a, b)
      	return Float64(1.0 / Float64(y / x))
      end
      
      function tmp = code(x, y, z, t, a, b)
      	tmp = 1.0 / (y / x);
      end
      
      code[x_, y_, z_, t_, a_, b_] := N[(1.0 / N[(y / x), $MachinePrecision]), $MachinePrecision]
      
      \begin{array}{l}
      
      \\
      \frac{1}{\frac{y}{x}}
      \end{array}
      
      Derivation
      1. Initial program 97.6%

        \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
      2. Add Preprocessing
      3. Taylor expanded in b around inf

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(-1 \cdot b\right)}\right)\right), y\right) \]
      4. Step-by-step derivation
        1. mul-1-negN/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(\mathsf{neg}\left(b\right)\right)\right)\right), y\right) \]
        2. neg-sub0N/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(0 - b\right)\right)\right), y\right) \]
        3. --lowering--.f6453.6%

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(0, b\right)\right)\right), y\right) \]
      5. Simplified53.6%

        \[\leadsto \frac{x \cdot e^{\color{blue}{0 - b}}}{y} \]
      6. Taylor expanded in b around 0

        \[\leadsto \color{blue}{\frac{x}{y}} \]
      7. Step-by-step derivation
        1. /-lowering-/.f6417.5%

          \[\leadsto \mathsf{/.f64}\left(x, \color{blue}{y}\right) \]
      8. Simplified17.5%

        \[\leadsto \color{blue}{\frac{x}{y}} \]
      9. Step-by-step derivation
        1. clear-numN/A

          \[\leadsto \frac{1}{\color{blue}{\frac{y}{x}}} \]
        2. /-lowering-/.f64N/A

          \[\leadsto \mathsf{/.f64}\left(1, \color{blue}{\left(\frac{y}{x}\right)}\right) \]
        3. /-lowering-/.f6417.9%

          \[\leadsto \mathsf{/.f64}\left(1, \mathsf{/.f64}\left(y, \color{blue}{x}\right)\right) \]
      10. Applied egg-rr17.9%

        \[\leadsto \color{blue}{\frac{1}{\frac{y}{x}}} \]
      11. Add Preprocessing

      Alternative 25: 16.8% accurate, 105.0× speedup?

      \[\begin{array}{l} \\ \frac{x}{y} \end{array} \]
      (FPCore (x y z t a b) :precision binary64 (/ x y))
      double code(double x, double y, double z, double t, double a, double b) {
      	return x / y;
      }
      
      real(8) function code(x, y, z, t, a, b)
          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
          code = x / y
      end function
      
      public static double code(double x, double y, double z, double t, double a, double b) {
      	return x / y;
      }
      
      def code(x, y, z, t, a, b):
      	return x / y
      
      function code(x, y, z, t, a, b)
      	return Float64(x / y)
      end
      
      function tmp = code(x, y, z, t, a, b)
      	tmp = x / y;
      end
      
      code[x_, y_, z_, t_, a_, b_] := N[(x / y), $MachinePrecision]
      
      \begin{array}{l}
      
      \\
      \frac{x}{y}
      \end{array}
      
      Derivation
      1. Initial program 97.6%

        \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y} \]
      2. Add Preprocessing
      3. Taylor expanded in b around inf

        \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\color{blue}{\left(-1 \cdot b\right)}\right)\right), y\right) \]
      4. Step-by-step derivation
        1. mul-1-negN/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(\mathsf{neg}\left(b\right)\right)\right)\right), y\right) \]
        2. neg-sub0N/A

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\left(0 - b\right)\right)\right), y\right) \]
        3. --lowering--.f6453.6%

          \[\leadsto \mathsf{/.f64}\left(\mathsf{*.f64}\left(x, \mathsf{exp.f64}\left(\mathsf{\_.f64}\left(0, b\right)\right)\right), y\right) \]
      5. Simplified53.6%

        \[\leadsto \frac{x \cdot e^{\color{blue}{0 - b}}}{y} \]
      6. Taylor expanded in b around 0

        \[\leadsto \color{blue}{\frac{x}{y}} \]
      7. Step-by-step derivation
        1. /-lowering-/.f6417.5%

          \[\leadsto \mathsf{/.f64}\left(x, \color{blue}{y}\right) \]
      8. Simplified17.5%

        \[\leadsto \color{blue}{\frac{x}{y}} \]
      9. Add Preprocessing

      Developer Target 1: 72.3% accurate, 1.0× speedup?

      \[\begin{array}{l} \\ \begin{array}{l} t_1 := {a}^{\left(t - 1\right)}\\ t_2 := \frac{x \cdot \frac{t\_1}{y}}{\left(b + 1\right) - y \cdot \log z}\\ \mathbf{if}\;t < -0.8845848504127471:\\ \;\;\;\;t\_2\\ \mathbf{elif}\;t < 852031.2288374073:\\ \;\;\;\;\frac{\frac{x}{y} \cdot t\_1}{e^{b - \log z \cdot y}}\\ \mathbf{else}:\\ \;\;\;\;t\_2\\ \end{array} \end{array} \]
      (FPCore (x y z t a b)
       :precision binary64
       (let* ((t_1 (pow a (- t 1.0)))
              (t_2 (/ (* x (/ t_1 y)) (- (+ b 1.0) (* y (log z))))))
         (if (< t -0.8845848504127471)
           t_2
           (if (< t 852031.2288374073)
             (/ (* (/ x y) t_1) (exp (- b (* (log z) y))))
             t_2))))
      double code(double x, double y, double z, double t, double a, double b) {
      	double t_1 = pow(a, (t - 1.0));
      	double t_2 = (x * (t_1 / y)) / ((b + 1.0) - (y * log(z)));
      	double tmp;
      	if (t < -0.8845848504127471) {
      		tmp = t_2;
      	} else if (t < 852031.2288374073) {
      		tmp = ((x / y) * t_1) / exp((b - (log(z) * y)));
      	} else {
      		tmp = t_2;
      	}
      	return tmp;
      }
      
      real(8) function code(x, y, z, t, a, b)
          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) :: t_1
          real(8) :: t_2
          real(8) :: tmp
          t_1 = a ** (t - 1.0d0)
          t_2 = (x * (t_1 / y)) / ((b + 1.0d0) - (y * log(z)))
          if (t < (-0.8845848504127471d0)) then
              tmp = t_2
          else if (t < 852031.2288374073d0) then
              tmp = ((x / y) * t_1) / exp((b - (log(z) * y)))
          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 t_1 = Math.pow(a, (t - 1.0));
      	double t_2 = (x * (t_1 / y)) / ((b + 1.0) - (y * Math.log(z)));
      	double tmp;
      	if (t < -0.8845848504127471) {
      		tmp = t_2;
      	} else if (t < 852031.2288374073) {
      		tmp = ((x / y) * t_1) / Math.exp((b - (Math.log(z) * y)));
      	} else {
      		tmp = t_2;
      	}
      	return tmp;
      }
      
      def code(x, y, z, t, a, b):
      	t_1 = math.pow(a, (t - 1.0))
      	t_2 = (x * (t_1 / y)) / ((b + 1.0) - (y * math.log(z)))
      	tmp = 0
      	if t < -0.8845848504127471:
      		tmp = t_2
      	elif t < 852031.2288374073:
      		tmp = ((x / y) * t_1) / math.exp((b - (math.log(z) * y)))
      	else:
      		tmp = t_2
      	return tmp
      
      function code(x, y, z, t, a, b)
      	t_1 = a ^ Float64(t - 1.0)
      	t_2 = Float64(Float64(x * Float64(t_1 / y)) / Float64(Float64(b + 1.0) - Float64(y * log(z))))
      	tmp = 0.0
      	if (t < -0.8845848504127471)
      		tmp = t_2;
      	elseif (t < 852031.2288374073)
      		tmp = Float64(Float64(Float64(x / y) * t_1) / exp(Float64(b - Float64(log(z) * y))));
      	else
      		tmp = t_2;
      	end
      	return tmp
      end
      
      function tmp_2 = code(x, y, z, t, a, b)
      	t_1 = a ^ (t - 1.0);
      	t_2 = (x * (t_1 / y)) / ((b + 1.0) - (y * log(z)));
      	tmp = 0.0;
      	if (t < -0.8845848504127471)
      		tmp = t_2;
      	elseif (t < 852031.2288374073)
      		tmp = ((x / y) * t_1) / exp((b - (log(z) * y)));
      	else
      		tmp = t_2;
      	end
      	tmp_2 = tmp;
      end
      
      code[x_, y_, z_, t_, a_, b_] := Block[{t$95$1 = N[Power[a, N[(t - 1.0), $MachinePrecision]], $MachinePrecision]}, Block[{t$95$2 = N[(N[(x * N[(t$95$1 / y), $MachinePrecision]), $MachinePrecision] / N[(N[(b + 1.0), $MachinePrecision] - N[(y * N[Log[z], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[Less[t, -0.8845848504127471], t$95$2, If[Less[t, 852031.2288374073], N[(N[(N[(x / y), $MachinePrecision] * t$95$1), $MachinePrecision] / N[Exp[N[(b - N[(N[Log[z], $MachinePrecision] * y), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]), $MachinePrecision], t$95$2]]]]
      
      \begin{array}{l}
      
      \\
      \begin{array}{l}
      t_1 := {a}^{\left(t - 1\right)}\\
      t_2 := \frac{x \cdot \frac{t\_1}{y}}{\left(b + 1\right) - y \cdot \log z}\\
      \mathbf{if}\;t < -0.8845848504127471:\\
      \;\;\;\;t\_2\\
      
      \mathbf{elif}\;t < 852031.2288374073:\\
      \;\;\;\;\frac{\frac{x}{y} \cdot t\_1}{e^{b - \log z \cdot y}}\\
      
      \mathbf{else}:\\
      \;\;\;\;t\_2\\
      
      
      \end{array}
      \end{array}
      

      Reproduce

      ?
      herbie shell --seed 2024158 
      (FPCore (x y z t a b)
        :name "Numeric.SpecFunctions:incompleteBetaWorker from math-functions-0.1.5.2, A"
        :precision binary64
      
        :alt
        (! :herbie-platform default (if (< t -8845848504127471/10000000000000000) (/ (* x (/ (pow a (- t 1)) y)) (- (+ b 1) (* y (log z)))) (if (< t 8520312288374073/10000000000) (/ (* (/ x y) (pow a (- t 1))) (exp (- b (* (log z) y)))) (/ (* x (/ (pow a (- t 1)) y)) (- (+ b 1) (* y (log z)))))))
      
        (/ (* x (exp (- (+ (* y (log z)) (* (- t 1.0) (log a))) b))) y))