Octave 3.8, jcobi/4

Percentage Accurate: 16.6% → 99.7%
Time: 11.4s
Alternatives: 12
Speedup: 75.4×

Specification

?
\[\left(\alpha > -1 \land \beta > -1\right) \land i > 1\]
\[\begin{array}{l} \\ \begin{array}{l} t_0 := i \cdot \left(\left(\alpha + \beta\right) + i\right)\\ t_1 := \left(\alpha + \beta\right) + 2 \cdot i\\ t_2 := t\_1 \cdot t\_1\\ \frac{\frac{t\_0 \cdot \left(\beta \cdot \alpha + t\_0\right)}{t\_2}}{t\_2 - 1} \end{array} \end{array} \]
(FPCore (alpha beta i)
 :precision binary64
 (let* ((t_0 (* i (+ (+ alpha beta) i)))
        (t_1 (+ (+ alpha beta) (* 2.0 i)))
        (t_2 (* t_1 t_1)))
   (/ (/ (* t_0 (+ (* beta alpha) t_0)) t_2) (- t_2 1.0))))
double code(double alpha, double beta, double i) {
	double t_0 = i * ((alpha + beta) + i);
	double t_1 = (alpha + beta) + (2.0 * i);
	double t_2 = t_1 * t_1;
	return ((t_0 * ((beta * alpha) + t_0)) / t_2) / (t_2 - 1.0);
}
module fmin_fmax_functions
    implicit none
    private
    public fmax
    public fmin

    interface fmax
        module procedure fmax88
        module procedure fmax44
        module procedure fmax84
        module procedure fmax48
    end interface
    interface fmin
        module procedure fmin88
        module procedure fmin44
        module procedure fmin84
        module procedure fmin48
    end interface
contains
    real(8) function fmax88(x, y) result (res)
        real(8), intent (in) :: x
        real(8), intent (in) :: y
        res = merge(y, merge(x, max(x, y), y /= y), x /= x)
    end function
    real(4) function fmax44(x, y) result (res)
        real(4), intent (in) :: x
        real(4), intent (in) :: y
        res = merge(y, merge(x, max(x, y), y /= y), x /= x)
    end function
    real(8) function fmax84(x, y) result(res)
        real(8), intent (in) :: x
        real(4), intent (in) :: y
        res = merge(dble(y), merge(x, max(x, dble(y)), y /= y), x /= x)
    end function
    real(8) function fmax48(x, y) result(res)
        real(4), intent (in) :: x
        real(8), intent (in) :: y
        res = merge(y, merge(dble(x), max(dble(x), y), y /= y), x /= x)
    end function
    real(8) function fmin88(x, y) result (res)
        real(8), intent (in) :: x
        real(8), intent (in) :: y
        res = merge(y, merge(x, min(x, y), y /= y), x /= x)
    end function
    real(4) function fmin44(x, y) result (res)
        real(4), intent (in) :: x
        real(4), intent (in) :: y
        res = merge(y, merge(x, min(x, y), y /= y), x /= x)
    end function
    real(8) function fmin84(x, y) result(res)
        real(8), intent (in) :: x
        real(4), intent (in) :: y
        res = merge(dble(y), merge(x, min(x, dble(y)), y /= y), x /= x)
    end function
    real(8) function fmin48(x, y) result(res)
        real(4), intent (in) :: x
        real(8), intent (in) :: y
        res = merge(y, merge(dble(x), min(dble(x), y), y /= y), x /= x)
    end function
end module

real(8) function code(alpha, beta, i)
use fmin_fmax_functions
    real(8), intent (in) :: alpha
    real(8), intent (in) :: beta
    real(8), intent (in) :: i
    real(8) :: t_0
    real(8) :: t_1
    real(8) :: t_2
    t_0 = i * ((alpha + beta) + i)
    t_1 = (alpha + beta) + (2.0d0 * i)
    t_2 = t_1 * t_1
    code = ((t_0 * ((beta * alpha) + t_0)) / t_2) / (t_2 - 1.0d0)
end function
public static double code(double alpha, double beta, double i) {
	double t_0 = i * ((alpha + beta) + i);
	double t_1 = (alpha + beta) + (2.0 * i);
	double t_2 = t_1 * t_1;
	return ((t_0 * ((beta * alpha) + t_0)) / t_2) / (t_2 - 1.0);
}
def code(alpha, beta, i):
	t_0 = i * ((alpha + beta) + i)
	t_1 = (alpha + beta) + (2.0 * i)
	t_2 = t_1 * t_1
	return ((t_0 * ((beta * alpha) + t_0)) / t_2) / (t_2 - 1.0)
function code(alpha, beta, i)
	t_0 = Float64(i * Float64(Float64(alpha + beta) + i))
	t_1 = Float64(Float64(alpha + beta) + Float64(2.0 * i))
	t_2 = Float64(t_1 * t_1)
	return Float64(Float64(Float64(t_0 * Float64(Float64(beta * alpha) + t_0)) / t_2) / Float64(t_2 - 1.0))
end
function tmp = code(alpha, beta, i)
	t_0 = i * ((alpha + beta) + i);
	t_1 = (alpha + beta) + (2.0 * i);
	t_2 = t_1 * t_1;
	tmp = ((t_0 * ((beta * alpha) + t_0)) / t_2) / (t_2 - 1.0);
end
code[alpha_, beta_, i_] := Block[{t$95$0 = N[(i * N[(N[(alpha + beta), $MachinePrecision] + i), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$1 = N[(N[(alpha + beta), $MachinePrecision] + N[(2.0 * i), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(t$95$1 * t$95$1), $MachinePrecision]}, N[(N[(N[(t$95$0 * N[(N[(beta * alpha), $MachinePrecision] + t$95$0), $MachinePrecision]), $MachinePrecision] / t$95$2), $MachinePrecision] / N[(t$95$2 - 1.0), $MachinePrecision]), $MachinePrecision]]]]
\begin{array}{l}

\\
\begin{array}{l}
t_0 := i \cdot \left(\left(\alpha + \beta\right) + i\right)\\
t_1 := \left(\alpha + \beta\right) + 2 \cdot i\\
t_2 := t\_1 \cdot t\_1\\
\frac{\frac{t\_0 \cdot \left(\beta \cdot \alpha + t\_0\right)}{t\_2}}{t\_2 - 1}
\end{array}
\end{array}

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 12 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: 16.6% accurate, 1.0× speedup?

\[\begin{array}{l} \\ \begin{array}{l} t_0 := i \cdot \left(\left(\alpha + \beta\right) + i\right)\\ t_1 := \left(\alpha + \beta\right) + 2 \cdot i\\ t_2 := t\_1 \cdot t\_1\\ \frac{\frac{t\_0 \cdot \left(\beta \cdot \alpha + t\_0\right)}{t\_2}}{t\_2 - 1} \end{array} \end{array} \]
(FPCore (alpha beta i)
 :precision binary64
 (let* ((t_0 (* i (+ (+ alpha beta) i)))
        (t_1 (+ (+ alpha beta) (* 2.0 i)))
        (t_2 (* t_1 t_1)))
   (/ (/ (* t_0 (+ (* beta alpha) t_0)) t_2) (- t_2 1.0))))
double code(double alpha, double beta, double i) {
	double t_0 = i * ((alpha + beta) + i);
	double t_1 = (alpha + beta) + (2.0 * i);
	double t_2 = t_1 * t_1;
	return ((t_0 * ((beta * alpha) + t_0)) / t_2) / (t_2 - 1.0);
}
module fmin_fmax_functions
    implicit none
    private
    public fmax
    public fmin

    interface fmax
        module procedure fmax88
        module procedure fmax44
        module procedure fmax84
        module procedure fmax48
    end interface
    interface fmin
        module procedure fmin88
        module procedure fmin44
        module procedure fmin84
        module procedure fmin48
    end interface
contains
    real(8) function fmax88(x, y) result (res)
        real(8), intent (in) :: x
        real(8), intent (in) :: y
        res = merge(y, merge(x, max(x, y), y /= y), x /= x)
    end function
    real(4) function fmax44(x, y) result (res)
        real(4), intent (in) :: x
        real(4), intent (in) :: y
        res = merge(y, merge(x, max(x, y), y /= y), x /= x)
    end function
    real(8) function fmax84(x, y) result(res)
        real(8), intent (in) :: x
        real(4), intent (in) :: y
        res = merge(dble(y), merge(x, max(x, dble(y)), y /= y), x /= x)
    end function
    real(8) function fmax48(x, y) result(res)
        real(4), intent (in) :: x
        real(8), intent (in) :: y
        res = merge(y, merge(dble(x), max(dble(x), y), y /= y), x /= x)
    end function
    real(8) function fmin88(x, y) result (res)
        real(8), intent (in) :: x
        real(8), intent (in) :: y
        res = merge(y, merge(x, min(x, y), y /= y), x /= x)
    end function
    real(4) function fmin44(x, y) result (res)
        real(4), intent (in) :: x
        real(4), intent (in) :: y
        res = merge(y, merge(x, min(x, y), y /= y), x /= x)
    end function
    real(8) function fmin84(x, y) result(res)
        real(8), intent (in) :: x
        real(4), intent (in) :: y
        res = merge(dble(y), merge(x, min(x, dble(y)), y /= y), x /= x)
    end function
    real(8) function fmin48(x, y) result(res)
        real(4), intent (in) :: x
        real(8), intent (in) :: y
        res = merge(y, merge(dble(x), min(dble(x), y), y /= y), x /= x)
    end function
end module

real(8) function code(alpha, beta, i)
use fmin_fmax_functions
    real(8), intent (in) :: alpha
    real(8), intent (in) :: beta
    real(8), intent (in) :: i
    real(8) :: t_0
    real(8) :: t_1
    real(8) :: t_2
    t_0 = i * ((alpha + beta) + i)
    t_1 = (alpha + beta) + (2.0d0 * i)
    t_2 = t_1 * t_1
    code = ((t_0 * ((beta * alpha) + t_0)) / t_2) / (t_2 - 1.0d0)
end function
public static double code(double alpha, double beta, double i) {
	double t_0 = i * ((alpha + beta) + i);
	double t_1 = (alpha + beta) + (2.0 * i);
	double t_2 = t_1 * t_1;
	return ((t_0 * ((beta * alpha) + t_0)) / t_2) / (t_2 - 1.0);
}
def code(alpha, beta, i):
	t_0 = i * ((alpha + beta) + i)
	t_1 = (alpha + beta) + (2.0 * i)
	t_2 = t_1 * t_1
	return ((t_0 * ((beta * alpha) + t_0)) / t_2) / (t_2 - 1.0)
function code(alpha, beta, i)
	t_0 = Float64(i * Float64(Float64(alpha + beta) + i))
	t_1 = Float64(Float64(alpha + beta) + Float64(2.0 * i))
	t_2 = Float64(t_1 * t_1)
	return Float64(Float64(Float64(t_0 * Float64(Float64(beta * alpha) + t_0)) / t_2) / Float64(t_2 - 1.0))
end
function tmp = code(alpha, beta, i)
	t_0 = i * ((alpha + beta) + i);
	t_1 = (alpha + beta) + (2.0 * i);
	t_2 = t_1 * t_1;
	tmp = ((t_0 * ((beta * alpha) + t_0)) / t_2) / (t_2 - 1.0);
end
code[alpha_, beta_, i_] := Block[{t$95$0 = N[(i * N[(N[(alpha + beta), $MachinePrecision] + i), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$1 = N[(N[(alpha + beta), $MachinePrecision] + N[(2.0 * i), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(t$95$1 * t$95$1), $MachinePrecision]}, N[(N[(N[(t$95$0 * N[(N[(beta * alpha), $MachinePrecision] + t$95$0), $MachinePrecision]), $MachinePrecision] / t$95$2), $MachinePrecision] / N[(t$95$2 - 1.0), $MachinePrecision]), $MachinePrecision]]]]
\begin{array}{l}

\\
\begin{array}{l}
t_0 := i \cdot \left(\left(\alpha + \beta\right) + i\right)\\
t_1 := \left(\alpha + \beta\right) + 2 \cdot i\\
t_2 := t\_1 \cdot t\_1\\
\frac{\frac{t\_0 \cdot \left(\beta \cdot \alpha + t\_0\right)}{t\_2}}{t\_2 - 1}
\end{array}
\end{array}

Alternative 1: 99.7% accurate, 0.9× speedup?

\[\begin{array}{l} \\ \begin{array}{l} t_0 := \left(\beta + \alpha\right) + i\\ t_1 := \mathsf{fma}\left(2, i, \beta + \alpha\right)\\ \frac{t\_0}{t\_1 - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{t\_0}{t\_1}, i, \frac{\alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \beta\right)}{t\_1}}{t\_1 - -1} \end{array} \end{array} \]
(FPCore (alpha beta i)
 :precision binary64
 (let* ((t_0 (+ (+ beta alpha) i)) (t_1 (fma 2.0 i (+ beta alpha))))
   (*
    (/ t_0 (- t_1 1.0))
    (/
     (*
      i
      (/
       (fma (/ t_0 t_1) i (* (/ alpha (fma 2.0 i (+ alpha beta))) beta))
       t_1))
     (- t_1 -1.0)))))
double code(double alpha, double beta, double i) {
	double t_0 = (beta + alpha) + i;
	double t_1 = fma(2.0, i, (beta + alpha));
	return (t_0 / (t_1 - 1.0)) * ((i * (fma((t_0 / t_1), i, ((alpha / fma(2.0, i, (alpha + beta))) * beta)) / t_1)) / (t_1 - -1.0));
}
function code(alpha, beta, i)
	t_0 = Float64(Float64(beta + alpha) + i)
	t_1 = fma(2.0, i, Float64(beta + alpha))
	return Float64(Float64(t_0 / Float64(t_1 - 1.0)) * Float64(Float64(i * Float64(fma(Float64(t_0 / t_1), i, Float64(Float64(alpha / fma(2.0, i, Float64(alpha + beta))) * beta)) / t_1)) / Float64(t_1 - -1.0)))
end
code[alpha_, beta_, i_] := Block[{t$95$0 = N[(N[(beta + alpha), $MachinePrecision] + i), $MachinePrecision]}, Block[{t$95$1 = N[(2.0 * i + N[(beta + alpha), $MachinePrecision]), $MachinePrecision]}, N[(N[(t$95$0 / N[(t$95$1 - 1.0), $MachinePrecision]), $MachinePrecision] * N[(N[(i * N[(N[(N[(t$95$0 / t$95$1), $MachinePrecision] * i + N[(N[(alpha / N[(2.0 * i + N[(alpha + beta), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * beta), $MachinePrecision]), $MachinePrecision] / t$95$1), $MachinePrecision]), $MachinePrecision] / N[(t$95$1 - -1.0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]
\begin{array}{l}

\\
\begin{array}{l}
t_0 := \left(\beta + \alpha\right) + i\\
t_1 := \mathsf{fma}\left(2, i, \beta + \alpha\right)\\
\frac{t\_0}{t\_1 - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{t\_0}{t\_1}, i, \frac{\alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \beta\right)}{t\_1}}{t\_1 - -1}
\end{array}
\end{array}
Derivation
  1. Initial program 16.6%

    \[\frac{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
  2. Step-by-step derivation
    1. lift-/.f64N/A

      \[\leadsto \color{blue}{\frac{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1}} \]
    2. lift-/.f64N/A

      \[\leadsto \frac{\color{blue}{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
    3. lift-*.f64N/A

      \[\leadsto \frac{\frac{\color{blue}{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
    4. associate-/l*N/A

      \[\leadsto \frac{\color{blue}{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \frac{\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
    5. lift--.f64N/A

      \[\leadsto \frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \frac{\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\color{blue}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1}} \]
  3. Applied rewrites38.3%

    \[\leadsto \color{blue}{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\left(\beta + \alpha\right) + i, i, \beta \cdot \alpha\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1}} \]
  4. Step-by-step derivation
    1. lift-/.f64N/A

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \color{blue}{\frac{\mathsf{fma}\left(\left(\beta + \alpha\right) + i, i, \beta \cdot \alpha\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
    2. lift-fma.f64N/A

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\color{blue}{\left(\left(\beta + \alpha\right) + i\right) \cdot i + \beta \cdot \alpha}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
    3. lift-*.f64N/A

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\color{blue}{\left(\left(\beta + \alpha\right) + i\right) \cdot i} + \beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
    4. div-addN/A

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \color{blue}{\left(\frac{\left(\left(\beta + \alpha\right) + i\right) \cdot i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)} + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
    5. lift-*.f64N/A

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \left(\frac{\color{blue}{\left(\left(\beta + \alpha\right) + i\right) \cdot i}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)} + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
    6. lift-*.f64N/A

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \left(\frac{\left(\left(\beta + \alpha\right) + i\right) \cdot i}{\color{blue}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}} + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
    7. times-fracN/A

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \left(\color{blue}{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot \frac{i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}} + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
    8. associate-*r/N/A

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \left(\color{blue}{\frac{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}} + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
    9. lift-*.f64N/A

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \left(\frac{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} + \frac{\beta \cdot \alpha}{\color{blue}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
    10. associate-/r*N/A

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \left(\frac{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} + \color{blue}{\frac{\frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
    11. div-add-revN/A

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \color{blue}{\frac{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot i + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
    12. lower-/.f64N/A

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \color{blue}{\frac{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot i + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
  5. Applied rewrites94.6%

    \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \color{blue}{\frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
  6. Step-by-step derivation
    1. lift-*.f64N/A

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \frac{\color{blue}{\beta \cdot \alpha}}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
    2. lift-/.f64N/A

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \color{blue}{\frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
    3. associate-/l*N/A

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \color{blue}{\beta \cdot \frac{\alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
    4. *-commutativeN/A

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \color{blue}{\frac{\alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot \beta}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
    5. lower-*.f64N/A

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \color{blue}{\frac{\alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot \beta}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
    6. lower-/.f6499.7

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \color{blue}{\frac{\alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}} \cdot \beta\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
    7. lift-+.f64N/A

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \frac{\alpha}{\mathsf{fma}\left(2, i, \color{blue}{\beta + \alpha}\right)} \cdot \beta\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
    8. +-commutativeN/A

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \frac{\alpha}{\mathsf{fma}\left(2, i, \color{blue}{\alpha + \beta}\right)} \cdot \beta\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
    9. lift-+.f6499.7

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \frac{\alpha}{\mathsf{fma}\left(2, i, \color{blue}{\alpha + \beta}\right)} \cdot \beta\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
  7. Applied rewrites99.7%

    \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \color{blue}{\frac{\alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \beta}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
  8. Add Preprocessing

Alternative 2: 91.4% accurate, 1.1× speedup?

\[\begin{array}{l} \\ \frac{\beta + i}{\mathsf{fma}\left(2, i, \beta\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\beta + i}{\mathsf{fma}\left(2, i, \beta\right)}, i, \frac{\alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \beta\right)}{\mathsf{fma}\left(2, i, \beta\right)}}{\mathsf{fma}\left(2, i, \beta\right) - -1} \end{array} \]
(FPCore (alpha beta i)
 :precision binary64
 (*
  (/ (+ beta i) (- (fma 2.0 i beta) 1.0))
  (/
   (*
    i
    (/
     (fma
      (/ (+ beta i) (fma 2.0 i beta))
      i
      (* (/ alpha (fma 2.0 i (+ alpha beta))) beta))
     (fma 2.0 i beta)))
   (- (fma 2.0 i beta) -1.0))))
double code(double alpha, double beta, double i) {
	return ((beta + i) / (fma(2.0, i, beta) - 1.0)) * ((i * (fma(((beta + i) / fma(2.0, i, beta)), i, ((alpha / fma(2.0, i, (alpha + beta))) * beta)) / fma(2.0, i, beta))) / (fma(2.0, i, beta) - -1.0));
}
function code(alpha, beta, i)
	return Float64(Float64(Float64(beta + i) / Float64(fma(2.0, i, beta) - 1.0)) * Float64(Float64(i * Float64(fma(Float64(Float64(beta + i) / fma(2.0, i, beta)), i, Float64(Float64(alpha / fma(2.0, i, Float64(alpha + beta))) * beta)) / fma(2.0, i, beta))) / Float64(fma(2.0, i, beta) - -1.0)))
end
code[alpha_, beta_, i_] := N[(N[(N[(beta + i), $MachinePrecision] / N[(N[(2.0 * i + beta), $MachinePrecision] - 1.0), $MachinePrecision]), $MachinePrecision] * N[(N[(i * N[(N[(N[(N[(beta + i), $MachinePrecision] / N[(2.0 * i + beta), $MachinePrecision]), $MachinePrecision] * i + N[(N[(alpha / N[(2.0 * i + N[(alpha + beta), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * beta), $MachinePrecision]), $MachinePrecision] / N[(2.0 * i + beta), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / N[(N[(2.0 * i + beta), $MachinePrecision] - -1.0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
\begin{array}{l}

\\
\frac{\beta + i}{\mathsf{fma}\left(2, i, \beta\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\beta + i}{\mathsf{fma}\left(2, i, \beta\right)}, i, \frac{\alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \beta\right)}{\mathsf{fma}\left(2, i, \beta\right)}}{\mathsf{fma}\left(2, i, \beta\right) - -1}
\end{array}
Derivation
  1. Initial program 16.6%

    \[\frac{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
  2. Step-by-step derivation
    1. lift-/.f64N/A

      \[\leadsto \color{blue}{\frac{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1}} \]
    2. lift-/.f64N/A

      \[\leadsto \frac{\color{blue}{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
    3. lift-*.f64N/A

      \[\leadsto \frac{\frac{\color{blue}{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
    4. associate-/l*N/A

      \[\leadsto \frac{\color{blue}{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \frac{\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
    5. lift--.f64N/A

      \[\leadsto \frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \frac{\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\color{blue}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1}} \]
  3. Applied rewrites38.3%

    \[\leadsto \color{blue}{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\left(\beta + \alpha\right) + i, i, \beta \cdot \alpha\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1}} \]
  4. Step-by-step derivation
    1. lift-/.f64N/A

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \color{blue}{\frac{\mathsf{fma}\left(\left(\beta + \alpha\right) + i, i, \beta \cdot \alpha\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
    2. lift-fma.f64N/A

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\color{blue}{\left(\left(\beta + \alpha\right) + i\right) \cdot i + \beta \cdot \alpha}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
    3. lift-*.f64N/A

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\color{blue}{\left(\left(\beta + \alpha\right) + i\right) \cdot i} + \beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
    4. div-addN/A

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \color{blue}{\left(\frac{\left(\left(\beta + \alpha\right) + i\right) \cdot i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)} + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
    5. lift-*.f64N/A

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \left(\frac{\color{blue}{\left(\left(\beta + \alpha\right) + i\right) \cdot i}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)} + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
    6. lift-*.f64N/A

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \left(\frac{\left(\left(\beta + \alpha\right) + i\right) \cdot i}{\color{blue}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}} + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
    7. times-fracN/A

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \left(\color{blue}{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot \frac{i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}} + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
    8. associate-*r/N/A

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \left(\color{blue}{\frac{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}} + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
    9. lift-*.f64N/A

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \left(\frac{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} + \frac{\beta \cdot \alpha}{\color{blue}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
    10. associate-/r*N/A

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \left(\frac{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} + \color{blue}{\frac{\frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
    11. div-add-revN/A

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \color{blue}{\frac{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot i + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
    12. lower-/.f64N/A

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \color{blue}{\frac{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot i + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
  5. Applied rewrites94.6%

    \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \color{blue}{\frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
  6. Step-by-step derivation
    1. lift-*.f64N/A

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \frac{\color{blue}{\beta \cdot \alpha}}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
    2. lift-/.f64N/A

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \color{blue}{\frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
    3. associate-/l*N/A

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \color{blue}{\beta \cdot \frac{\alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
    4. *-commutativeN/A

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \color{blue}{\frac{\alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot \beta}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
    5. lower-*.f64N/A

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \color{blue}{\frac{\alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot \beta}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
    6. lower-/.f6499.7

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \color{blue}{\frac{\alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}} \cdot \beta\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
    7. lift-+.f64N/A

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \frac{\alpha}{\mathsf{fma}\left(2, i, \color{blue}{\beta + \alpha}\right)} \cdot \beta\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
    8. +-commutativeN/A

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \frac{\alpha}{\mathsf{fma}\left(2, i, \color{blue}{\alpha + \beta}\right)} \cdot \beta\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
    9. lift-+.f6499.7

      \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \frac{\alpha}{\mathsf{fma}\left(2, i, \color{blue}{\alpha + \beta}\right)} \cdot \beta\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
  7. Applied rewrites99.7%

    \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \color{blue}{\frac{\alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \beta}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
  8. Taylor expanded in alpha around 0

    \[\leadsto \frac{\color{blue}{\beta} + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \frac{\alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \beta\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
  9. Step-by-step derivation
    1. Applied rewrites88.2%

      \[\leadsto \frac{\color{blue}{\beta} + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \frac{\alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \beta\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
    2. Taylor expanded in alpha around 0

      \[\leadsto \frac{\beta + i}{\mathsf{fma}\left(2, i, \color{blue}{\beta}\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \frac{\alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \beta\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
    3. Step-by-step derivation
      1. Applied rewrites90.7%

        \[\leadsto \frac{\beta + i}{\mathsf{fma}\left(2, i, \color{blue}{\beta}\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \frac{\alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \beta\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
      2. Taylor expanded in alpha around 0

        \[\leadsto \frac{\beta + i}{\mathsf{fma}\left(2, i, \beta\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\color{blue}{\beta} + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \frac{\alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \beta\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
      3. Step-by-step derivation
        1. Applied rewrites89.5%

          \[\leadsto \frac{\beta + i}{\mathsf{fma}\left(2, i, \beta\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\color{blue}{\beta} + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \frac{\alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \beta\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
        2. Taylor expanded in alpha around 0

          \[\leadsto \frac{\beta + i}{\mathsf{fma}\left(2, i, \beta\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\beta + i}{\mathsf{fma}\left(2, i, \color{blue}{\beta}\right)}, i, \frac{\alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \beta\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
        3. Step-by-step derivation
          1. Applied rewrites90.5%

            \[\leadsto \frac{\beta + i}{\mathsf{fma}\left(2, i, \beta\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\beta + i}{\mathsf{fma}\left(2, i, \color{blue}{\beta}\right)}, i, \frac{\alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \beta\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
          2. Taylor expanded in alpha around 0

            \[\leadsto \frac{\beta + i}{\mathsf{fma}\left(2, i, \beta\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\beta + i}{\mathsf{fma}\left(2, i, \beta\right)}, i, \frac{\alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \beta\right)}{\mathsf{fma}\left(2, i, \color{blue}{\beta}\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
          3. Step-by-step derivation
            1. Applied rewrites85.4%

              \[\leadsto \frac{\beta + i}{\mathsf{fma}\left(2, i, \beta\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\beta + i}{\mathsf{fma}\left(2, i, \beta\right)}, i, \frac{\alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \beta\right)}{\mathsf{fma}\left(2, i, \color{blue}{\beta}\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
            2. Taylor expanded in alpha around 0

              \[\leadsto \frac{\beta + i}{\mathsf{fma}\left(2, i, \beta\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\beta + i}{\mathsf{fma}\left(2, i, \beta\right)}, i, \frac{\alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \beta\right)}{\mathsf{fma}\left(2, i, \beta\right)}}{\mathsf{fma}\left(2, i, \color{blue}{\beta}\right) - -1} \]
            3. Step-by-step derivation
              1. Applied rewrites85.4%

                \[\leadsto \frac{\beta + i}{\mathsf{fma}\left(2, i, \beta\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\beta + i}{\mathsf{fma}\left(2, i, \beta\right)}, i, \frac{\alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \beta\right)}{\mathsf{fma}\left(2, i, \beta\right)}}{\mathsf{fma}\left(2, i, \color{blue}{\beta}\right) - -1} \]
              2. Add Preprocessing

              Alternative 3: 85.4% accurate, 1.1× speedup?

              \[\begin{array}{l} \\ \begin{array}{l} t_0 := \mathsf{fma}\left(2, i, \beta + \alpha\right)\\ \mathbf{if}\;\alpha \leq 1.15 \cdot 10^{+108}:\\ \;\;\;\;\frac{\beta + i}{\mathsf{fma}\left(2, i, \beta\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\beta + i}{\mathsf{fma}\left(2, i, \beta\right)}, i, \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta\right)}\right)}{\mathsf{fma}\left(2, i, \beta\right)}}{\mathsf{fma}\left(2, i, \beta\right) - -1}\\ \mathbf{else}:\\ \;\;\;\;1 \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{t\_0}, i, \frac{\alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \beta\right)}{t\_0}}{t\_0 - -1}\\ \end{array} \end{array} \]
              (FPCore (alpha beta i)
               :precision binary64
               (let* ((t_0 (fma 2.0 i (+ beta alpha))))
                 (if (<= alpha 1.15e+108)
                   (*
                    (/ (+ beta i) (- (fma 2.0 i beta) 1.0))
                    (/
                     (*
                      i
                      (/
                       (fma
                        (/ (+ beta i) (fma 2.0 i beta))
                        i
                        (/ (* beta alpha) (fma 2.0 i beta)))
                       (fma 2.0 i beta)))
                     (- (fma 2.0 i beta) -1.0)))
                   (*
                    1.0
                    (/
                     (*
                      i
                      (/
                       (fma
                        (/ (+ (+ beta alpha) i) t_0)
                        i
                        (* (/ alpha (fma 2.0 i (+ alpha beta))) beta))
                       t_0))
                     (- t_0 -1.0))))))
              double code(double alpha, double beta, double i) {
              	double t_0 = fma(2.0, i, (beta + alpha));
              	double tmp;
              	if (alpha <= 1.15e+108) {
              		tmp = ((beta + i) / (fma(2.0, i, beta) - 1.0)) * ((i * (fma(((beta + i) / fma(2.0, i, beta)), i, ((beta * alpha) / fma(2.0, i, beta))) / fma(2.0, i, beta))) / (fma(2.0, i, beta) - -1.0));
              	} else {
              		tmp = 1.0 * ((i * (fma((((beta + alpha) + i) / t_0), i, ((alpha / fma(2.0, i, (alpha + beta))) * beta)) / t_0)) / (t_0 - -1.0));
              	}
              	return tmp;
              }
              
              function code(alpha, beta, i)
              	t_0 = fma(2.0, i, Float64(beta + alpha))
              	tmp = 0.0
              	if (alpha <= 1.15e+108)
              		tmp = Float64(Float64(Float64(beta + i) / Float64(fma(2.0, i, beta) - 1.0)) * Float64(Float64(i * Float64(fma(Float64(Float64(beta + i) / fma(2.0, i, beta)), i, Float64(Float64(beta * alpha) / fma(2.0, i, beta))) / fma(2.0, i, beta))) / Float64(fma(2.0, i, beta) - -1.0)));
              	else
              		tmp = Float64(1.0 * Float64(Float64(i * Float64(fma(Float64(Float64(Float64(beta + alpha) + i) / t_0), i, Float64(Float64(alpha / fma(2.0, i, Float64(alpha + beta))) * beta)) / t_0)) / Float64(t_0 - -1.0)));
              	end
              	return tmp
              end
              
              code[alpha_, beta_, i_] := Block[{t$95$0 = N[(2.0 * i + N[(beta + alpha), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[alpha, 1.15e+108], N[(N[(N[(beta + i), $MachinePrecision] / N[(N[(2.0 * i + beta), $MachinePrecision] - 1.0), $MachinePrecision]), $MachinePrecision] * N[(N[(i * N[(N[(N[(N[(beta + i), $MachinePrecision] / N[(2.0 * i + beta), $MachinePrecision]), $MachinePrecision] * i + N[(N[(beta * alpha), $MachinePrecision] / N[(2.0 * i + beta), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / N[(2.0 * i + beta), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / N[(N[(2.0 * i + beta), $MachinePrecision] - -1.0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(1.0 * N[(N[(i * N[(N[(N[(N[(N[(beta + alpha), $MachinePrecision] + i), $MachinePrecision] / t$95$0), $MachinePrecision] * i + N[(N[(alpha / N[(2.0 * i + N[(alpha + beta), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * beta), $MachinePrecision]), $MachinePrecision] / t$95$0), $MachinePrecision]), $MachinePrecision] / N[(t$95$0 - -1.0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]
              
              \begin{array}{l}
              
              \\
              \begin{array}{l}
              t_0 := \mathsf{fma}\left(2, i, \beta + \alpha\right)\\
              \mathbf{if}\;\alpha \leq 1.15 \cdot 10^{+108}:\\
              \;\;\;\;\frac{\beta + i}{\mathsf{fma}\left(2, i, \beta\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\beta + i}{\mathsf{fma}\left(2, i, \beta\right)}, i, \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta\right)}\right)}{\mathsf{fma}\left(2, i, \beta\right)}}{\mathsf{fma}\left(2, i, \beta\right) - -1}\\
              
              \mathbf{else}:\\
              \;\;\;\;1 \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{t\_0}, i, \frac{\alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \beta\right)}{t\_0}}{t\_0 - -1}\\
              
              
              \end{array}
              \end{array}
              
              Derivation
              1. Split input into 2 regimes
              2. if alpha < 1.1499999999999999e108

                1. Initial program 16.6%

                  \[\frac{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                2. Step-by-step derivation
                  1. lift-/.f64N/A

                    \[\leadsto \color{blue}{\frac{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1}} \]
                  2. lift-/.f64N/A

                    \[\leadsto \frac{\color{blue}{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                  3. lift-*.f64N/A

                    \[\leadsto \frac{\frac{\color{blue}{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                  4. associate-/l*N/A

                    \[\leadsto \frac{\color{blue}{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \frac{\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                  5. lift--.f64N/A

                    \[\leadsto \frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \frac{\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\color{blue}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1}} \]
                3. Applied rewrites38.3%

                  \[\leadsto \color{blue}{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\left(\beta + \alpha\right) + i, i, \beta \cdot \alpha\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1}} \]
                4. Step-by-step derivation
                  1. lift-/.f64N/A

                    \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \color{blue}{\frac{\mathsf{fma}\left(\left(\beta + \alpha\right) + i, i, \beta \cdot \alpha\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                  2. lift-fma.f64N/A

                    \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\color{blue}{\left(\left(\beta + \alpha\right) + i\right) \cdot i + \beta \cdot \alpha}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                  3. lift-*.f64N/A

                    \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\color{blue}{\left(\left(\beta + \alpha\right) + i\right) \cdot i} + \beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                  4. div-addN/A

                    \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \color{blue}{\left(\frac{\left(\left(\beta + \alpha\right) + i\right) \cdot i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)} + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                  5. lift-*.f64N/A

                    \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \left(\frac{\color{blue}{\left(\left(\beta + \alpha\right) + i\right) \cdot i}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)} + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                  6. lift-*.f64N/A

                    \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \left(\frac{\left(\left(\beta + \alpha\right) + i\right) \cdot i}{\color{blue}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}} + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                  7. times-fracN/A

                    \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \left(\color{blue}{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot \frac{i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}} + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                  8. associate-*r/N/A

                    \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \left(\color{blue}{\frac{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}} + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                  9. lift-*.f64N/A

                    \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \left(\frac{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} + \frac{\beta \cdot \alpha}{\color{blue}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                  10. associate-/r*N/A

                    \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \left(\frac{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} + \color{blue}{\frac{\frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                  11. div-add-revN/A

                    \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \color{blue}{\frac{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot i + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                  12. lower-/.f64N/A

                    \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \color{blue}{\frac{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot i + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                5. Applied rewrites94.6%

                  \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \color{blue}{\frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                6. Taylor expanded in alpha around 0

                  \[\leadsto \frac{\color{blue}{\beta} + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                7. Step-by-step derivation
                  1. Applied rewrites84.7%

                    \[\leadsto \frac{\color{blue}{\beta} + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                  2. Taylor expanded in alpha around 0

                    \[\leadsto \frac{\beta + i}{\mathsf{fma}\left(2, i, \color{blue}{\beta}\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                  3. Step-by-step derivation
                    1. Applied rewrites86.3%

                      \[\leadsto \frac{\beta + i}{\mathsf{fma}\left(2, i, \color{blue}{\beta}\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                    2. Taylor expanded in alpha around 0

                      \[\leadsto \frac{\beta + i}{\mathsf{fma}\left(2, i, \beta\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\color{blue}{\beta} + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                    3. Step-by-step derivation
                      1. Applied rewrites85.2%

                        \[\leadsto \frac{\beta + i}{\mathsf{fma}\left(2, i, \beta\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\color{blue}{\beta} + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                      2. Taylor expanded in alpha around 0

                        \[\leadsto \frac{\beta + i}{\mathsf{fma}\left(2, i, \beta\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\beta + i}{\mathsf{fma}\left(2, i, \color{blue}{\beta}\right)}, i, \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                      3. Step-by-step derivation
                        1. Applied rewrites86.1%

                          \[\leadsto \frac{\beta + i}{\mathsf{fma}\left(2, i, \beta\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\beta + i}{\mathsf{fma}\left(2, i, \color{blue}{\beta}\right)}, i, \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                        2. Taylor expanded in alpha around 0

                          \[\leadsto \frac{\beta + i}{\mathsf{fma}\left(2, i, \beta\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\beta + i}{\mathsf{fma}\left(2, i, \beta\right)}, i, \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \color{blue}{\beta}\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                        3. Step-by-step derivation
                          1. Applied rewrites84.9%

                            \[\leadsto \frac{\beta + i}{\mathsf{fma}\left(2, i, \beta\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\beta + i}{\mathsf{fma}\left(2, i, \beta\right)}, i, \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \color{blue}{\beta}\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                          2. Taylor expanded in alpha around 0

                            \[\leadsto \frac{\beta + i}{\mathsf{fma}\left(2, i, \beta\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\beta + i}{\mathsf{fma}\left(2, i, \beta\right)}, i, \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta\right)}\right)}{\mathsf{fma}\left(2, i, \color{blue}{\beta}\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                          3. Step-by-step derivation
                            1. Applied rewrites82.2%

                              \[\leadsto \frac{\beta + i}{\mathsf{fma}\left(2, i, \beta\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\beta + i}{\mathsf{fma}\left(2, i, \beta\right)}, i, \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta\right)}\right)}{\mathsf{fma}\left(2, i, \color{blue}{\beta}\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                            2. Taylor expanded in alpha around 0

                              \[\leadsto \frac{\beta + i}{\mathsf{fma}\left(2, i, \beta\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\beta + i}{\mathsf{fma}\left(2, i, \beta\right)}, i, \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta\right)}\right)}{\mathsf{fma}\left(2, i, \beta\right)}}{\mathsf{fma}\left(2, i, \color{blue}{\beta}\right) - -1} \]
                            3. Step-by-step derivation
                              1. Applied rewrites82.3%

                                \[\leadsto \frac{\beta + i}{\mathsf{fma}\left(2, i, \beta\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\beta + i}{\mathsf{fma}\left(2, i, \beta\right)}, i, \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta\right)}\right)}{\mathsf{fma}\left(2, i, \beta\right)}}{\mathsf{fma}\left(2, i, \color{blue}{\beta}\right) - -1} \]

                              if 1.1499999999999999e108 < alpha

                              1. Initial program 16.6%

                                \[\frac{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                              2. Step-by-step derivation
                                1. lift-/.f64N/A

                                  \[\leadsto \color{blue}{\frac{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1}} \]
                                2. lift-/.f64N/A

                                  \[\leadsto \frac{\color{blue}{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                                3. lift-*.f64N/A

                                  \[\leadsto \frac{\frac{\color{blue}{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                                4. associate-/l*N/A

                                  \[\leadsto \frac{\color{blue}{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \frac{\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                                5. lift--.f64N/A

                                  \[\leadsto \frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \frac{\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\color{blue}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1}} \]
                              3. Applied rewrites38.3%

                                \[\leadsto \color{blue}{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\left(\beta + \alpha\right) + i, i, \beta \cdot \alpha\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1}} \]
                              4. Step-by-step derivation
                                1. lift-/.f64N/A

                                  \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \color{blue}{\frac{\mathsf{fma}\left(\left(\beta + \alpha\right) + i, i, \beta \cdot \alpha\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                2. lift-fma.f64N/A

                                  \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\color{blue}{\left(\left(\beta + \alpha\right) + i\right) \cdot i + \beta \cdot \alpha}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                3. lift-*.f64N/A

                                  \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\color{blue}{\left(\left(\beta + \alpha\right) + i\right) \cdot i} + \beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                4. div-addN/A

                                  \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \color{blue}{\left(\frac{\left(\left(\beta + \alpha\right) + i\right) \cdot i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)} + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                5. lift-*.f64N/A

                                  \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \left(\frac{\color{blue}{\left(\left(\beta + \alpha\right) + i\right) \cdot i}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)} + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                6. lift-*.f64N/A

                                  \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \left(\frac{\left(\left(\beta + \alpha\right) + i\right) \cdot i}{\color{blue}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}} + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                7. times-fracN/A

                                  \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \left(\color{blue}{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot \frac{i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}} + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                8. associate-*r/N/A

                                  \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \left(\color{blue}{\frac{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}} + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                9. lift-*.f64N/A

                                  \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \left(\frac{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} + \frac{\beta \cdot \alpha}{\color{blue}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                10. associate-/r*N/A

                                  \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \left(\frac{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} + \color{blue}{\frac{\frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                11. div-add-revN/A

                                  \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \color{blue}{\frac{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot i + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                12. lower-/.f64N/A

                                  \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \color{blue}{\frac{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot i + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                              5. Applied rewrites94.6%

                                \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \color{blue}{\frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                              6. Step-by-step derivation
                                1. lift-*.f64N/A

                                  \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \frac{\color{blue}{\beta \cdot \alpha}}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                2. lift-/.f64N/A

                                  \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \color{blue}{\frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                3. associate-/l*N/A

                                  \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \color{blue}{\beta \cdot \frac{\alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                4. *-commutativeN/A

                                  \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \color{blue}{\frac{\alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot \beta}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                5. lower-*.f64N/A

                                  \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \color{blue}{\frac{\alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot \beta}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                6. lower-/.f6499.7

                                  \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \color{blue}{\frac{\alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}} \cdot \beta\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                7. lift-+.f64N/A

                                  \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \frac{\alpha}{\mathsf{fma}\left(2, i, \color{blue}{\beta + \alpha}\right)} \cdot \beta\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                8. +-commutativeN/A

                                  \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \frac{\alpha}{\mathsf{fma}\left(2, i, \color{blue}{\alpha + \beta}\right)} \cdot \beta\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                9. lift-+.f6499.7

                                  \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \frac{\alpha}{\mathsf{fma}\left(2, i, \color{blue}{\alpha + \beta}\right)} \cdot \beta\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                              7. Applied rewrites99.7%

                                \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \color{blue}{\frac{\alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \beta}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                              8. Taylor expanded in alpha around inf

                                \[\leadsto \color{blue}{1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \frac{\alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \beta\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                              9. Step-by-step derivation
                                1. Applied rewrites41.7%

                                  \[\leadsto \color{blue}{1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \frac{\alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \beta\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                              10. Recombined 2 regimes into one program.
                              11. Add Preprocessing

                              Alternative 4: 80.7% accurate, 1.1× speedup?

                              \[\begin{array}{l} \\ \begin{array}{l} t_0 := \left(\beta + \alpha\right) + i\\ t_1 := \mathsf{fma}\left(2, i, \beta + \alpha\right)\\ t_2 := t\_1 - -1\\ \mathbf{if}\;\beta \leq 4.5 \cdot 10^{+125}:\\ \;\;\;\;\frac{t\_0}{t\_1 - 1} \cdot \frac{0.25 \cdot i}{t\_2}\\ \mathbf{else}:\\ \;\;\;\;1 \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{t\_0}{t\_1}, i, \frac{\alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \beta\right)}{t\_1}}{t\_2}\\ \end{array} \end{array} \]
                              (FPCore (alpha beta i)
                               :precision binary64
                               (let* ((t_0 (+ (+ beta alpha) i))
                                      (t_1 (fma 2.0 i (+ beta alpha)))
                                      (t_2 (- t_1 -1.0)))
                                 (if (<= beta 4.5e+125)
                                   (* (/ t_0 (- t_1 1.0)) (/ (* 0.25 i) t_2))
                                   (*
                                    1.0
                                    (/
                                     (*
                                      i
                                      (/
                                       (fma (/ t_0 t_1) i (* (/ alpha (fma 2.0 i (+ alpha beta))) beta))
                                       t_1))
                                     t_2)))))
                              double code(double alpha, double beta, double i) {
                              	double t_0 = (beta + alpha) + i;
                              	double t_1 = fma(2.0, i, (beta + alpha));
                              	double t_2 = t_1 - -1.0;
                              	double tmp;
                              	if (beta <= 4.5e+125) {
                              		tmp = (t_0 / (t_1 - 1.0)) * ((0.25 * i) / t_2);
                              	} else {
                              		tmp = 1.0 * ((i * (fma((t_0 / t_1), i, ((alpha / fma(2.0, i, (alpha + beta))) * beta)) / t_1)) / t_2);
                              	}
                              	return tmp;
                              }
                              
                              function code(alpha, beta, i)
                              	t_0 = Float64(Float64(beta + alpha) + i)
                              	t_1 = fma(2.0, i, Float64(beta + alpha))
                              	t_2 = Float64(t_1 - -1.0)
                              	tmp = 0.0
                              	if (beta <= 4.5e+125)
                              		tmp = Float64(Float64(t_0 / Float64(t_1 - 1.0)) * Float64(Float64(0.25 * i) / t_2));
                              	else
                              		tmp = Float64(1.0 * Float64(Float64(i * Float64(fma(Float64(t_0 / t_1), i, Float64(Float64(alpha / fma(2.0, i, Float64(alpha + beta))) * beta)) / t_1)) / t_2));
                              	end
                              	return tmp
                              end
                              
                              code[alpha_, beta_, i_] := Block[{t$95$0 = N[(N[(beta + alpha), $MachinePrecision] + i), $MachinePrecision]}, Block[{t$95$1 = N[(2.0 * i + N[(beta + alpha), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(t$95$1 - -1.0), $MachinePrecision]}, If[LessEqual[beta, 4.5e+125], N[(N[(t$95$0 / N[(t$95$1 - 1.0), $MachinePrecision]), $MachinePrecision] * N[(N[(0.25 * i), $MachinePrecision] / t$95$2), $MachinePrecision]), $MachinePrecision], N[(1.0 * N[(N[(i * N[(N[(N[(t$95$0 / t$95$1), $MachinePrecision] * i + N[(N[(alpha / N[(2.0 * i + N[(alpha + beta), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * beta), $MachinePrecision]), $MachinePrecision] / t$95$1), $MachinePrecision]), $MachinePrecision] / t$95$2), $MachinePrecision]), $MachinePrecision]]]]]
                              
                              \begin{array}{l}
                              
                              \\
                              \begin{array}{l}
                              t_0 := \left(\beta + \alpha\right) + i\\
                              t_1 := \mathsf{fma}\left(2, i, \beta + \alpha\right)\\
                              t_2 := t\_1 - -1\\
                              \mathbf{if}\;\beta \leq 4.5 \cdot 10^{+125}:\\
                              \;\;\;\;\frac{t\_0}{t\_1 - 1} \cdot \frac{0.25 \cdot i}{t\_2}\\
                              
                              \mathbf{else}:\\
                              \;\;\;\;1 \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{t\_0}{t\_1}, i, \frac{\alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \beta\right)}{t\_1}}{t\_2}\\
                              
                              
                              \end{array}
                              \end{array}
                              
                              Derivation
                              1. Split input into 2 regimes
                              2. if beta < 4.5e125

                                1. Initial program 16.6%

                                  \[\frac{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                                2. Step-by-step derivation
                                  1. lift-/.f64N/A

                                    \[\leadsto \color{blue}{\frac{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1}} \]
                                  2. lift-/.f64N/A

                                    \[\leadsto \frac{\color{blue}{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                                  3. lift-*.f64N/A

                                    \[\leadsto \frac{\frac{\color{blue}{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                                  4. associate-/l*N/A

                                    \[\leadsto \frac{\color{blue}{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \frac{\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                                  5. lift--.f64N/A

                                    \[\leadsto \frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \frac{\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\color{blue}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1}} \]
                                3. Applied rewrites38.3%

                                  \[\leadsto \color{blue}{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\left(\beta + \alpha\right) + i, i, \beta \cdot \alpha\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1}} \]
                                4. Taylor expanded in i around inf

                                  \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{\color{blue}{\frac{1}{4} \cdot i}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                5. Step-by-step derivation
                                  1. lower-*.f6471.6

                                    \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{0.25 \cdot \color{blue}{i}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                6. Applied rewrites71.6%

                                  \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{\color{blue}{0.25 \cdot i}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]

                                if 4.5e125 < beta

                                1. Initial program 16.6%

                                  \[\frac{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                                2. Step-by-step derivation
                                  1. lift-/.f64N/A

                                    \[\leadsto \color{blue}{\frac{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1}} \]
                                  2. lift-/.f64N/A

                                    \[\leadsto \frac{\color{blue}{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                                  3. lift-*.f64N/A

                                    \[\leadsto \frac{\frac{\color{blue}{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                                  4. associate-/l*N/A

                                    \[\leadsto \frac{\color{blue}{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \frac{\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                                  5. lift--.f64N/A

                                    \[\leadsto \frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \frac{\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\color{blue}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1}} \]
                                3. Applied rewrites38.3%

                                  \[\leadsto \color{blue}{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\left(\beta + \alpha\right) + i, i, \beta \cdot \alpha\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1}} \]
                                4. Step-by-step derivation
                                  1. lift-/.f64N/A

                                    \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \color{blue}{\frac{\mathsf{fma}\left(\left(\beta + \alpha\right) + i, i, \beta \cdot \alpha\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                  2. lift-fma.f64N/A

                                    \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\color{blue}{\left(\left(\beta + \alpha\right) + i\right) \cdot i + \beta \cdot \alpha}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                  3. lift-*.f64N/A

                                    \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\color{blue}{\left(\left(\beta + \alpha\right) + i\right) \cdot i} + \beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                  4. div-addN/A

                                    \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \color{blue}{\left(\frac{\left(\left(\beta + \alpha\right) + i\right) \cdot i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)} + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                  5. lift-*.f64N/A

                                    \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \left(\frac{\color{blue}{\left(\left(\beta + \alpha\right) + i\right) \cdot i}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)} + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                  6. lift-*.f64N/A

                                    \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \left(\frac{\left(\left(\beta + \alpha\right) + i\right) \cdot i}{\color{blue}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}} + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                  7. times-fracN/A

                                    \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \left(\color{blue}{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot \frac{i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}} + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                  8. associate-*r/N/A

                                    \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \left(\color{blue}{\frac{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}} + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                  9. lift-*.f64N/A

                                    \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \left(\frac{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} + \frac{\beta \cdot \alpha}{\color{blue}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                  10. associate-/r*N/A

                                    \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \left(\frac{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} + \color{blue}{\frac{\frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                  11. div-add-revN/A

                                    \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \color{blue}{\frac{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot i + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                  12. lower-/.f64N/A

                                    \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \color{blue}{\frac{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot i + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                5. Applied rewrites94.6%

                                  \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \color{blue}{\frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                6. Step-by-step derivation
                                  1. lift-*.f64N/A

                                    \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \frac{\color{blue}{\beta \cdot \alpha}}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                  2. lift-/.f64N/A

                                    \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \color{blue}{\frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                  3. associate-/l*N/A

                                    \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \color{blue}{\beta \cdot \frac{\alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                  4. *-commutativeN/A

                                    \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \color{blue}{\frac{\alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot \beta}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                  5. lower-*.f64N/A

                                    \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \color{blue}{\frac{\alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot \beta}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                  6. lower-/.f6499.7

                                    \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \color{blue}{\frac{\alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}} \cdot \beta\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                  7. lift-+.f64N/A

                                    \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \frac{\alpha}{\mathsf{fma}\left(2, i, \color{blue}{\beta + \alpha}\right)} \cdot \beta\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                  8. +-commutativeN/A

                                    \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \frac{\alpha}{\mathsf{fma}\left(2, i, \color{blue}{\alpha + \beta}\right)} \cdot \beta\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                  9. lift-+.f6499.7

                                    \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \frac{\alpha}{\mathsf{fma}\left(2, i, \color{blue}{\alpha + \beta}\right)} \cdot \beta\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                7. Applied rewrites99.7%

                                  \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \color{blue}{\frac{\alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \beta}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                8. Taylor expanded in alpha around inf

                                  \[\leadsto \color{blue}{1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \frac{\alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \beta\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                9. Step-by-step derivation
                                  1. Applied rewrites41.7%

                                    \[\leadsto \color{blue}{1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \frac{\alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \beta\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                10. Recombined 2 regimes into one program.
                                11. Add Preprocessing

                                Alternative 5: 80.3% accurate, 0.6× speedup?

                                \[\begin{array}{l} \\ \begin{array}{l} t_0 := \left(\alpha + \beta\right) + 2 \cdot i\\ t_1 := t\_0 \cdot t\_0\\ t_2 := i \cdot \left(\left(\alpha + \beta\right) + i\right)\\ \mathbf{if}\;\frac{\frac{t\_2 \cdot \left(\beta \cdot \alpha + t\_2\right)}{t\_1}}{t\_1 - 1} \leq \infty:\\ \;\;\;\;\frac{i \cdot \left(\beta + i\right)}{\mathsf{fma}\left(\mathsf{fma}\left(2, i, \beta\right), \mathsf{fma}\left(2, i, \beta\right), -1\right)} \cdot \frac{\left(\beta + i\right) \cdot i}{\mathsf{fma}\left(2, i, \beta\right) \cdot \mathsf{fma}\left(2, i, \beta\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{\mathsf{fma}\left(-0.125, \beta + \alpha, \mathsf{fma}\left(0.0625, i, \left(\beta + \alpha\right) \cdot 0.125\right)\right)}{i}\\ \end{array} \end{array} \]
                                (FPCore (alpha beta i)
                                 :precision binary64
                                 (let* ((t_0 (+ (+ alpha beta) (* 2.0 i)))
                                        (t_1 (* t_0 t_0))
                                        (t_2 (* i (+ (+ alpha beta) i))))
                                   (if (<= (/ (/ (* t_2 (+ (* beta alpha) t_2)) t_1) (- t_1 1.0)) INFINITY)
                                     (*
                                      (/ (* i (+ beta i)) (fma (fma 2.0 i beta) (fma 2.0 i beta) -1.0))
                                      (/ (* (+ beta i) i) (* (fma 2.0 i beta) (fma 2.0 i beta))))
                                     (/
                                      (fma -0.125 (+ beta alpha) (fma 0.0625 i (* (+ beta alpha) 0.125)))
                                      i))))
                                double code(double alpha, double beta, double i) {
                                	double t_0 = (alpha + beta) + (2.0 * i);
                                	double t_1 = t_0 * t_0;
                                	double t_2 = i * ((alpha + beta) + i);
                                	double tmp;
                                	if ((((t_2 * ((beta * alpha) + t_2)) / t_1) / (t_1 - 1.0)) <= ((double) INFINITY)) {
                                		tmp = ((i * (beta + i)) / fma(fma(2.0, i, beta), fma(2.0, i, beta), -1.0)) * (((beta + i) * i) / (fma(2.0, i, beta) * fma(2.0, i, beta)));
                                	} else {
                                		tmp = fma(-0.125, (beta + alpha), fma(0.0625, i, ((beta + alpha) * 0.125))) / i;
                                	}
                                	return tmp;
                                }
                                
                                function code(alpha, beta, i)
                                	t_0 = Float64(Float64(alpha + beta) + Float64(2.0 * i))
                                	t_1 = Float64(t_0 * t_0)
                                	t_2 = Float64(i * Float64(Float64(alpha + beta) + i))
                                	tmp = 0.0
                                	if (Float64(Float64(Float64(t_2 * Float64(Float64(beta * alpha) + t_2)) / t_1) / Float64(t_1 - 1.0)) <= Inf)
                                		tmp = Float64(Float64(Float64(i * Float64(beta + i)) / fma(fma(2.0, i, beta), fma(2.0, i, beta), -1.0)) * Float64(Float64(Float64(beta + i) * i) / Float64(fma(2.0, i, beta) * fma(2.0, i, beta))));
                                	else
                                		tmp = Float64(fma(-0.125, Float64(beta + alpha), fma(0.0625, i, Float64(Float64(beta + alpha) * 0.125))) / i);
                                	end
                                	return tmp
                                end
                                
                                code[alpha_, beta_, i_] := Block[{t$95$0 = N[(N[(alpha + beta), $MachinePrecision] + N[(2.0 * i), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$1 = N[(t$95$0 * t$95$0), $MachinePrecision]}, Block[{t$95$2 = N[(i * N[(N[(alpha + beta), $MachinePrecision] + i), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[N[(N[(N[(t$95$2 * N[(N[(beta * alpha), $MachinePrecision] + t$95$2), $MachinePrecision]), $MachinePrecision] / t$95$1), $MachinePrecision] / N[(t$95$1 - 1.0), $MachinePrecision]), $MachinePrecision], Infinity], N[(N[(N[(i * N[(beta + i), $MachinePrecision]), $MachinePrecision] / N[(N[(2.0 * i + beta), $MachinePrecision] * N[(2.0 * i + beta), $MachinePrecision] + -1.0), $MachinePrecision]), $MachinePrecision] * N[(N[(N[(beta + i), $MachinePrecision] * i), $MachinePrecision] / N[(N[(2.0 * i + beta), $MachinePrecision] * N[(2.0 * i + beta), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(N[(-0.125 * N[(beta + alpha), $MachinePrecision] + N[(0.0625 * i + N[(N[(beta + alpha), $MachinePrecision] * 0.125), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / i), $MachinePrecision]]]]]
                                
                                \begin{array}{l}
                                
                                \\
                                \begin{array}{l}
                                t_0 := \left(\alpha + \beta\right) + 2 \cdot i\\
                                t_1 := t\_0 \cdot t\_0\\
                                t_2 := i \cdot \left(\left(\alpha + \beta\right) + i\right)\\
                                \mathbf{if}\;\frac{\frac{t\_2 \cdot \left(\beta \cdot \alpha + t\_2\right)}{t\_1}}{t\_1 - 1} \leq \infty:\\
                                \;\;\;\;\frac{i \cdot \left(\beta + i\right)}{\mathsf{fma}\left(\mathsf{fma}\left(2, i, \beta\right), \mathsf{fma}\left(2, i, \beta\right), -1\right)} \cdot \frac{\left(\beta + i\right) \cdot i}{\mathsf{fma}\left(2, i, \beta\right) \cdot \mathsf{fma}\left(2, i, \beta\right)}\\
                                
                                \mathbf{else}:\\
                                \;\;\;\;\frac{\mathsf{fma}\left(-0.125, \beta + \alpha, \mathsf{fma}\left(0.0625, i, \left(\beta + \alpha\right) \cdot 0.125\right)\right)}{i}\\
                                
                                
                                \end{array}
                                \end{array}
                                
                                Derivation
                                1. Split input into 2 regimes
                                2. if (/.f64 (/.f64 (*.f64 (*.f64 i (+.f64 (+.f64 alpha beta) i)) (+.f64 (*.f64 beta alpha) (*.f64 i (+.f64 (+.f64 alpha beta) i)))) (*.f64 (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i)) (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i)))) (-.f64 (*.f64 (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i)) (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i))) #s(literal 1 binary64))) < +inf.0

                                  1. Initial program 16.6%

                                    \[\frac{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                                  2. Step-by-step derivation
                                    1. lift-/.f64N/A

                                      \[\leadsto \color{blue}{\frac{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1}} \]
                                    2. lift-/.f64N/A

                                      \[\leadsto \frac{\color{blue}{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                                    3. associate-/l/N/A

                                      \[\leadsto \color{blue}{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)\right) \cdot \left(\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1\right)}} \]
                                    4. lift-*.f64N/A

                                      \[\leadsto \frac{\color{blue}{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}}{\left(\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)\right) \cdot \left(\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1\right)} \]
                                    5. *-commutativeN/A

                                      \[\leadsto \frac{\color{blue}{\left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}}{\left(\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)\right) \cdot \left(\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1\right)} \]
                                    6. *-commutativeN/A

                                      \[\leadsto \frac{\left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\color{blue}{\left(\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1\right) \cdot \left(\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)\right)}} \]
                                  3. Applied rewrites38.3%

                                    \[\leadsto \color{blue}{\frac{\mathsf{fma}\left(\left(\beta + \alpha\right) + i, i, \beta \cdot \alpha\right)}{\mathsf{fma}\left(\mathsf{fma}\left(2, i, \beta + \alpha\right), \mathsf{fma}\left(2, i, \beta + \alpha\right), -1\right)} \cdot \frac{\left(\left(\beta + \alpha\right) + i\right) \cdot i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}} \]
                                  4. Taylor expanded in alpha around 0

                                    \[\leadsto \frac{\color{blue}{i \cdot \left(\beta + i\right)}}{\mathsf{fma}\left(\mathsf{fma}\left(2, i, \beta + \alpha\right), \mathsf{fma}\left(2, i, \beta + \alpha\right), -1\right)} \cdot \frac{\left(\left(\beta + \alpha\right) + i\right) \cdot i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)} \]
                                  5. Step-by-step derivation
                                    1. lower-*.f64N/A

                                      \[\leadsto \frac{i \cdot \color{blue}{\left(\beta + i\right)}}{\mathsf{fma}\left(\mathsf{fma}\left(2, i, \beta + \alpha\right), \mathsf{fma}\left(2, i, \beta + \alpha\right), -1\right)} \cdot \frac{\left(\left(\beta + \alpha\right) + i\right) \cdot i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)} \]
                                    2. lower-+.f6434.6

                                      \[\leadsto \frac{i \cdot \left(\beta + \color{blue}{i}\right)}{\mathsf{fma}\left(\mathsf{fma}\left(2, i, \beta + \alpha\right), \mathsf{fma}\left(2, i, \beta + \alpha\right), -1\right)} \cdot \frac{\left(\left(\beta + \alpha\right) + i\right) \cdot i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)} \]
                                  6. Applied rewrites34.6%

                                    \[\leadsto \frac{\color{blue}{i \cdot \left(\beta + i\right)}}{\mathsf{fma}\left(\mathsf{fma}\left(2, i, \beta + \alpha\right), \mathsf{fma}\left(2, i, \beta + \alpha\right), -1\right)} \cdot \frac{\left(\left(\beta + \alpha\right) + i\right) \cdot i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)} \]
                                  7. Taylor expanded in alpha around 0

                                    \[\leadsto \frac{i \cdot \left(\beta + i\right)}{\mathsf{fma}\left(\mathsf{fma}\left(2, i, \color{blue}{\beta}\right), \mathsf{fma}\left(2, i, \beta + \alpha\right), -1\right)} \cdot \frac{\left(\left(\beta + \alpha\right) + i\right) \cdot i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)} \]
                                  8. Step-by-step derivation
                                    1. Applied rewrites35.0%

                                      \[\leadsto \frac{i \cdot \left(\beta + i\right)}{\mathsf{fma}\left(\mathsf{fma}\left(2, i, \color{blue}{\beta}\right), \mathsf{fma}\left(2, i, \beta + \alpha\right), -1\right)} \cdot \frac{\left(\left(\beta + \alpha\right) + i\right) \cdot i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)} \]
                                    2. Taylor expanded in alpha around 0

                                      \[\leadsto \frac{i \cdot \left(\beta + i\right)}{\mathsf{fma}\left(\mathsf{fma}\left(2, i, \beta\right), \mathsf{fma}\left(2, i, \color{blue}{\beta}\right), -1\right)} \cdot \frac{\left(\left(\beta + \alpha\right) + i\right) \cdot i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)} \]
                                    3. Step-by-step derivation
                                      1. Applied rewrites34.8%

                                        \[\leadsto \frac{i \cdot \left(\beta + i\right)}{\mathsf{fma}\left(\mathsf{fma}\left(2, i, \beta\right), \mathsf{fma}\left(2, i, \color{blue}{\beta}\right), -1\right)} \cdot \frac{\left(\left(\beta + \alpha\right) + i\right) \cdot i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)} \]
                                      2. Taylor expanded in alpha around 0

                                        \[\leadsto \frac{i \cdot \left(\beta + i\right)}{\mathsf{fma}\left(\mathsf{fma}\left(2, i, \beta\right), \mathsf{fma}\left(2, i, \beta\right), -1\right)} \cdot \frac{\left(\color{blue}{\beta} + i\right) \cdot i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)} \]
                                      3. Step-by-step derivation
                                        1. Applied rewrites36.6%

                                          \[\leadsto \frac{i \cdot \left(\beta + i\right)}{\mathsf{fma}\left(\mathsf{fma}\left(2, i, \beta\right), \mathsf{fma}\left(2, i, \beta\right), -1\right)} \cdot \frac{\left(\color{blue}{\beta} + i\right) \cdot i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)} \]
                                        2. Taylor expanded in alpha around 0

                                          \[\leadsto \frac{i \cdot \left(\beta + i\right)}{\mathsf{fma}\left(\mathsf{fma}\left(2, i, \beta\right), \mathsf{fma}\left(2, i, \beta\right), -1\right)} \cdot \frac{\left(\beta + i\right) \cdot i}{\mathsf{fma}\left(2, i, \color{blue}{\beta}\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)} \]
                                        3. Step-by-step derivation
                                          1. Applied rewrites35.0%

                                            \[\leadsto \frac{i \cdot \left(\beta + i\right)}{\mathsf{fma}\left(\mathsf{fma}\left(2, i, \beta\right), \mathsf{fma}\left(2, i, \beta\right), -1\right)} \cdot \frac{\left(\beta + i\right) \cdot i}{\mathsf{fma}\left(2, i, \color{blue}{\beta}\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)} \]
                                          2. Taylor expanded in alpha around 0

                                            \[\leadsto \frac{i \cdot \left(\beta + i\right)}{\mathsf{fma}\left(\mathsf{fma}\left(2, i, \beta\right), \mathsf{fma}\left(2, i, \beta\right), -1\right)} \cdot \frac{\left(\beta + i\right) \cdot i}{\mathsf{fma}\left(2, i, \beta\right) \cdot \mathsf{fma}\left(2, i, \color{blue}{\beta}\right)} \]
                                          3. Step-by-step derivation
                                            1. Applied rewrites33.5%

                                              \[\leadsto \frac{i \cdot \left(\beta + i\right)}{\mathsf{fma}\left(\mathsf{fma}\left(2, i, \beta\right), \mathsf{fma}\left(2, i, \beta\right), -1\right)} \cdot \frac{\left(\beta + i\right) \cdot i}{\mathsf{fma}\left(2, i, \beta\right) \cdot \mathsf{fma}\left(2, i, \color{blue}{\beta}\right)} \]

                                            if +inf.0 < (/.f64 (/.f64 (*.f64 (*.f64 i (+.f64 (+.f64 alpha beta) i)) (+.f64 (*.f64 beta alpha) (*.f64 i (+.f64 (+.f64 alpha beta) i)))) (*.f64 (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i)) (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i)))) (-.f64 (*.f64 (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i)) (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i))) #s(literal 1 binary64)))

                                            1. Initial program 16.6%

                                              \[\frac{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                                            2. Taylor expanded in i around inf

                                              \[\leadsto \color{blue}{\left(\frac{1}{16} + \frac{1}{16} \cdot \frac{2 \cdot \alpha + 2 \cdot \beta}{i}\right) - \frac{1}{8} \cdot \frac{\alpha + \beta}{i}} \]
                                            3. Step-by-step derivation
                                              1. lower--.f64N/A

                                                \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{2 \cdot \alpha + 2 \cdot \beta}{i}\right) - \color{blue}{\frac{1}{8} \cdot \frac{\alpha + \beta}{i}} \]
                                              2. lower-+.f64N/A

                                                \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{2 \cdot \alpha + 2 \cdot \beta}{i}\right) - \color{blue}{\frac{1}{8}} \cdot \frac{\alpha + \beta}{i} \]
                                              3. lower-*.f64N/A

                                                \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{2 \cdot \alpha + 2 \cdot \beta}{i}\right) - \frac{1}{8} \cdot \frac{\alpha + \beta}{i} \]
                                              4. lower-/.f64N/A

                                                \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{2 \cdot \alpha + 2 \cdot \beta}{i}\right) - \frac{1}{8} \cdot \frac{\alpha + \beta}{i} \]
                                              5. lower-fma.f64N/A

                                                \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - \frac{1}{8} \cdot \frac{\alpha + \beta}{i} \]
                                              6. lower-*.f64N/A

                                                \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - \frac{1}{8} \cdot \frac{\alpha + \beta}{i} \]
                                              7. lower-*.f64N/A

                                                \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - \frac{1}{8} \cdot \color{blue}{\frac{\alpha + \beta}{i}} \]
                                              8. lower-/.f64N/A

                                                \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - \frac{1}{8} \cdot \frac{\alpha + \beta}{\color{blue}{i}} \]
                                              9. lower-+.f6477.0

                                                \[\leadsto \left(0.0625 + 0.0625 \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - 0.125 \cdot \frac{\alpha + \beta}{i} \]
                                            4. Applied rewrites77.0%

                                              \[\leadsto \color{blue}{\left(0.0625 + 0.0625 \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - 0.125 \cdot \frac{\alpha + \beta}{i}} \]
                                            5. Step-by-step derivation
                                              1. lift--.f64N/A

                                                \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - \color{blue}{\frac{1}{8} \cdot \frac{\alpha + \beta}{i}} \]
                                              2. lift-*.f64N/A

                                                \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - \frac{1}{8} \cdot \color{blue}{\frac{\alpha + \beta}{i}} \]
                                              3. fp-cancel-sub-sign-invN/A

                                                \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) + \color{blue}{\left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \frac{\alpha + \beta}{i}} \]
                                              4. +-commutativeN/A

                                                \[\leadsto \left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \frac{\alpha + \beta}{i} + \color{blue}{\left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right)} \]
                                              5. lift-/.f64N/A

                                                \[\leadsto \left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \frac{\alpha + \beta}{i} + \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) \]
                                              6. associate-*r/N/A

                                                \[\leadsto \frac{\left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \left(\alpha + \beta\right)}{i} + \left(\color{blue}{\frac{1}{16}} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) \]
                                              7. lift-+.f64N/A

                                                \[\leadsto \frac{\left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \left(\alpha + \beta\right)}{i} + \left(\frac{1}{16} + \color{blue}{\frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}}\right) \]
                                              8. lift-*.f64N/A

                                                \[\leadsto \frac{\left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \left(\alpha + \beta\right)}{i} + \left(\frac{1}{16} + \frac{1}{16} \cdot \color{blue}{\frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}}\right) \]
                                              9. lift-/.f64N/A

                                                \[\leadsto \frac{\left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \left(\alpha + \beta\right)}{i} + \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{\color{blue}{i}}\right) \]
                                              10. associate-*r/N/A

                                                \[\leadsto \frac{\left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \left(\alpha + \beta\right)}{i} + \left(\frac{1}{16} + \frac{\frac{1}{16} \cdot \mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{\color{blue}{i}}\right) \]
                                              11. add-to-fractionN/A

                                                \[\leadsto \frac{\left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \left(\alpha + \beta\right)}{i} + \frac{\frac{1}{16} \cdot i + \frac{1}{16} \cdot \mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{\color{blue}{i}} \]
                                              12. div-add-revN/A

                                                \[\leadsto \frac{\left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \left(\alpha + \beta\right) + \left(\frac{1}{16} \cdot i + \frac{1}{16} \cdot \mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)\right)}{\color{blue}{i}} \]
                                              13. lower-/.f64N/A

                                                \[\leadsto \frac{\left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \left(\alpha + \beta\right) + \left(\frac{1}{16} \cdot i + \frac{1}{16} \cdot \mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)\right)}{\color{blue}{i}} \]
                                            6. Applied rewrites77.0%

                                              \[\leadsto \frac{\mathsf{fma}\left(-0.125, \beta + \alpha, \mathsf{fma}\left(0.0625, i, \left(\beta + \alpha\right) \cdot 0.125\right)\right)}{\color{blue}{i}} \]
                                          4. Recombined 2 regimes into one program.
                                          5. Add Preprocessing

                                          Alternative 6: 79.7% accurate, 1.5× speedup?

                                          \[\begin{array}{l} \\ \begin{array}{l} t_0 := \mathsf{fma}\left(2, i, \beta + \alpha\right)\\ t_1 := t\_0 - -1\\ t_2 := \frac{\left(\beta + \alpha\right) + i}{t\_0 - 1}\\ \mathbf{if}\;\beta \leq 5.4 \cdot 10^{+187}:\\ \;\;\;\;t\_2 \cdot \frac{0.25 \cdot i}{t\_1}\\ \mathbf{else}:\\ \;\;\;\;t\_2 \cdot \frac{i \cdot \frac{\alpha + i}{\beta}}{t\_1}\\ \end{array} \end{array} \]
                                          (FPCore (alpha beta i)
                                           :precision binary64
                                           (let* ((t_0 (fma 2.0 i (+ beta alpha)))
                                                  (t_1 (- t_0 -1.0))
                                                  (t_2 (/ (+ (+ beta alpha) i) (- t_0 1.0))))
                                             (if (<= beta 5.4e+187)
                                               (* t_2 (/ (* 0.25 i) t_1))
                                               (* t_2 (/ (* i (/ (+ alpha i) beta)) t_1)))))
                                          double code(double alpha, double beta, double i) {
                                          	double t_0 = fma(2.0, i, (beta + alpha));
                                          	double t_1 = t_0 - -1.0;
                                          	double t_2 = ((beta + alpha) + i) / (t_0 - 1.0);
                                          	double tmp;
                                          	if (beta <= 5.4e+187) {
                                          		tmp = t_2 * ((0.25 * i) / t_1);
                                          	} else {
                                          		tmp = t_2 * ((i * ((alpha + i) / beta)) / t_1);
                                          	}
                                          	return tmp;
                                          }
                                          
                                          function code(alpha, beta, i)
                                          	t_0 = fma(2.0, i, Float64(beta + alpha))
                                          	t_1 = Float64(t_0 - -1.0)
                                          	t_2 = Float64(Float64(Float64(beta + alpha) + i) / Float64(t_0 - 1.0))
                                          	tmp = 0.0
                                          	if (beta <= 5.4e+187)
                                          		tmp = Float64(t_2 * Float64(Float64(0.25 * i) / t_1));
                                          	else
                                          		tmp = Float64(t_2 * Float64(Float64(i * Float64(Float64(alpha + i) / beta)) / t_1));
                                          	end
                                          	return tmp
                                          end
                                          
                                          code[alpha_, beta_, i_] := Block[{t$95$0 = N[(2.0 * i + N[(beta + alpha), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$1 = N[(t$95$0 - -1.0), $MachinePrecision]}, Block[{t$95$2 = N[(N[(N[(beta + alpha), $MachinePrecision] + i), $MachinePrecision] / N[(t$95$0 - 1.0), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[beta, 5.4e+187], N[(t$95$2 * N[(N[(0.25 * i), $MachinePrecision] / t$95$1), $MachinePrecision]), $MachinePrecision], N[(t$95$2 * N[(N[(i * N[(N[(alpha + i), $MachinePrecision] / beta), $MachinePrecision]), $MachinePrecision] / t$95$1), $MachinePrecision]), $MachinePrecision]]]]]
                                          
                                          \begin{array}{l}
                                          
                                          \\
                                          \begin{array}{l}
                                          t_0 := \mathsf{fma}\left(2, i, \beta + \alpha\right)\\
                                          t_1 := t\_0 - -1\\
                                          t_2 := \frac{\left(\beta + \alpha\right) + i}{t\_0 - 1}\\
                                          \mathbf{if}\;\beta \leq 5.4 \cdot 10^{+187}:\\
                                          \;\;\;\;t\_2 \cdot \frac{0.25 \cdot i}{t\_1}\\
                                          
                                          \mathbf{else}:\\
                                          \;\;\;\;t\_2 \cdot \frac{i \cdot \frac{\alpha + i}{\beta}}{t\_1}\\
                                          
                                          
                                          \end{array}
                                          \end{array}
                                          
                                          Derivation
                                          1. Split input into 2 regimes
                                          2. if beta < 5.40000000000000016e187

                                            1. Initial program 16.6%

                                              \[\frac{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                                            2. Step-by-step derivation
                                              1. lift-/.f64N/A

                                                \[\leadsto \color{blue}{\frac{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1}} \]
                                              2. lift-/.f64N/A

                                                \[\leadsto \frac{\color{blue}{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                                              3. lift-*.f64N/A

                                                \[\leadsto \frac{\frac{\color{blue}{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                                              4. associate-/l*N/A

                                                \[\leadsto \frac{\color{blue}{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \frac{\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                                              5. lift--.f64N/A

                                                \[\leadsto \frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \frac{\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\color{blue}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1}} \]
                                            3. Applied rewrites38.3%

                                              \[\leadsto \color{blue}{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\left(\beta + \alpha\right) + i, i, \beta \cdot \alpha\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1}} \]
                                            4. Taylor expanded in i around inf

                                              \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{\color{blue}{\frac{1}{4} \cdot i}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                            5. Step-by-step derivation
                                              1. lower-*.f6471.6

                                                \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{0.25 \cdot \color{blue}{i}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                            6. Applied rewrites71.6%

                                              \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{\color{blue}{0.25 \cdot i}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]

                                            if 5.40000000000000016e187 < beta

                                            1. Initial program 16.6%

                                              \[\frac{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                                            2. Step-by-step derivation
                                              1. lift-/.f64N/A

                                                \[\leadsto \color{blue}{\frac{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1}} \]
                                              2. lift-/.f64N/A

                                                \[\leadsto \frac{\color{blue}{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                                              3. lift-*.f64N/A

                                                \[\leadsto \frac{\frac{\color{blue}{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                                              4. associate-/l*N/A

                                                \[\leadsto \frac{\color{blue}{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \frac{\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                                              5. lift--.f64N/A

                                                \[\leadsto \frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \frac{\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\color{blue}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1}} \]
                                            3. Applied rewrites38.3%

                                              \[\leadsto \color{blue}{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\mathsf{fma}\left(\left(\beta + \alpha\right) + i, i, \beta \cdot \alpha\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1}} \]
                                            4. Step-by-step derivation
                                              1. lift-/.f64N/A

                                                \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \color{blue}{\frac{\mathsf{fma}\left(\left(\beta + \alpha\right) + i, i, \beta \cdot \alpha\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                              2. lift-fma.f64N/A

                                                \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\color{blue}{\left(\left(\beta + \alpha\right) + i\right) \cdot i + \beta \cdot \alpha}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                              3. lift-*.f64N/A

                                                \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\color{blue}{\left(\left(\beta + \alpha\right) + i\right) \cdot i} + \beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                              4. div-addN/A

                                                \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \color{blue}{\left(\frac{\left(\left(\beta + \alpha\right) + i\right) \cdot i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)} + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                              5. lift-*.f64N/A

                                                \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \left(\frac{\color{blue}{\left(\left(\beta + \alpha\right) + i\right) \cdot i}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)} + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                              6. lift-*.f64N/A

                                                \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \left(\frac{\left(\left(\beta + \alpha\right) + i\right) \cdot i}{\color{blue}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}} + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                              7. times-fracN/A

                                                \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \left(\color{blue}{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot \frac{i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}} + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                              8. associate-*r/N/A

                                                \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \left(\color{blue}{\frac{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}} + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                              9. lift-*.f64N/A

                                                \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \left(\frac{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} + \frac{\beta \cdot \alpha}{\color{blue}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \mathsf{fma}\left(2, i, \beta + \alpha\right)}}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                              10. associate-/r*N/A

                                                \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \left(\frac{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} + \color{blue}{\frac{\frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                              11. div-add-revN/A

                                                \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \color{blue}{\frac{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot i + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                              12. lower-/.f64N/A

                                                \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \color{blue}{\frac{\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot i + \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                            5. Applied rewrites94.6%

                                              \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \color{blue}{\frac{\mathsf{fma}\left(\frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, i, \frac{\beta \cdot \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}\right)}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                            6. Taylor expanded in beta around inf

                                              \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \color{blue}{\frac{\alpha + i}{\beta}}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                            7. Step-by-step derivation
                                              1. lower-/.f64N/A

                                                \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\alpha + i}{\color{blue}{\beta}}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                              2. lower-+.f6416.7

                                                \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \frac{\alpha + i}{\beta}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                            8. Applied rewrites16.7%

                                              \[\leadsto \frac{\left(\beta + \alpha\right) + i}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - 1} \cdot \frac{i \cdot \color{blue}{\frac{\alpha + i}{\beta}}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) - -1} \]
                                          3. Recombined 2 regimes into one program.
                                          4. Add Preprocessing

                                          Alternative 7: 78.9% accurate, 0.7× speedup?

                                          \[\begin{array}{l} \\ \begin{array}{l} t_0 := \left(\alpha + \beta\right) + 2 \cdot i\\ t_1 := t\_0 \cdot t\_0\\ t_2 := t\_1 - 1\\ t_3 := i \cdot \left(\left(\alpha + \beta\right) + i\right)\\ \mathbf{if}\;\frac{\frac{t\_3 \cdot \left(\beta \cdot \alpha + t\_3\right)}{t\_1}}{t\_2} \leq 2 \cdot 10^{-23}:\\ \;\;\;\;\frac{-1 \cdot \left(i \cdot \left(-1 \cdot i\right)\right)}{t\_2}\\ \mathbf{else}:\\ \;\;\;\;\frac{\mathsf{fma}\left(-0.125, \beta + \alpha, \mathsf{fma}\left(0.0625, i, \left(\beta + \alpha\right) \cdot 0.125\right)\right)}{i}\\ \end{array} \end{array} \]
                                          (FPCore (alpha beta i)
                                           :precision binary64
                                           (let* ((t_0 (+ (+ alpha beta) (* 2.0 i)))
                                                  (t_1 (* t_0 t_0))
                                                  (t_2 (- t_1 1.0))
                                                  (t_3 (* i (+ (+ alpha beta) i))))
                                             (if (<= (/ (/ (* t_3 (+ (* beta alpha) t_3)) t_1) t_2) 2e-23)
                                               (/ (* -1.0 (* i (* -1.0 i))) t_2)
                                               (/
                                                (fma -0.125 (+ beta alpha) (fma 0.0625 i (* (+ beta alpha) 0.125)))
                                                i))))
                                          double code(double alpha, double beta, double i) {
                                          	double t_0 = (alpha + beta) + (2.0 * i);
                                          	double t_1 = t_0 * t_0;
                                          	double t_2 = t_1 - 1.0;
                                          	double t_3 = i * ((alpha + beta) + i);
                                          	double tmp;
                                          	if ((((t_3 * ((beta * alpha) + t_3)) / t_1) / t_2) <= 2e-23) {
                                          		tmp = (-1.0 * (i * (-1.0 * i))) / t_2;
                                          	} else {
                                          		tmp = fma(-0.125, (beta + alpha), fma(0.0625, i, ((beta + alpha) * 0.125))) / i;
                                          	}
                                          	return tmp;
                                          }
                                          
                                          function code(alpha, beta, i)
                                          	t_0 = Float64(Float64(alpha + beta) + Float64(2.0 * i))
                                          	t_1 = Float64(t_0 * t_0)
                                          	t_2 = Float64(t_1 - 1.0)
                                          	t_3 = Float64(i * Float64(Float64(alpha + beta) + i))
                                          	tmp = 0.0
                                          	if (Float64(Float64(Float64(t_3 * Float64(Float64(beta * alpha) + t_3)) / t_1) / t_2) <= 2e-23)
                                          		tmp = Float64(Float64(-1.0 * Float64(i * Float64(-1.0 * i))) / t_2);
                                          	else
                                          		tmp = Float64(fma(-0.125, Float64(beta + alpha), fma(0.0625, i, Float64(Float64(beta + alpha) * 0.125))) / i);
                                          	end
                                          	return tmp
                                          end
                                          
                                          code[alpha_, beta_, i_] := Block[{t$95$0 = N[(N[(alpha + beta), $MachinePrecision] + N[(2.0 * i), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$1 = N[(t$95$0 * t$95$0), $MachinePrecision]}, Block[{t$95$2 = N[(t$95$1 - 1.0), $MachinePrecision]}, Block[{t$95$3 = N[(i * N[(N[(alpha + beta), $MachinePrecision] + i), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[N[(N[(N[(t$95$3 * N[(N[(beta * alpha), $MachinePrecision] + t$95$3), $MachinePrecision]), $MachinePrecision] / t$95$1), $MachinePrecision] / t$95$2), $MachinePrecision], 2e-23], N[(N[(-1.0 * N[(i * N[(-1.0 * i), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / t$95$2), $MachinePrecision], N[(N[(-0.125 * N[(beta + alpha), $MachinePrecision] + N[(0.0625 * i + N[(N[(beta + alpha), $MachinePrecision] * 0.125), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / i), $MachinePrecision]]]]]]
                                          
                                          \begin{array}{l}
                                          
                                          \\
                                          \begin{array}{l}
                                          t_0 := \left(\alpha + \beta\right) + 2 \cdot i\\
                                          t_1 := t\_0 \cdot t\_0\\
                                          t_2 := t\_1 - 1\\
                                          t_3 := i \cdot \left(\left(\alpha + \beta\right) + i\right)\\
                                          \mathbf{if}\;\frac{\frac{t\_3 \cdot \left(\beta \cdot \alpha + t\_3\right)}{t\_1}}{t\_2} \leq 2 \cdot 10^{-23}:\\
                                          \;\;\;\;\frac{-1 \cdot \left(i \cdot \left(-1 \cdot i\right)\right)}{t\_2}\\
                                          
                                          \mathbf{else}:\\
                                          \;\;\;\;\frac{\mathsf{fma}\left(-0.125, \beta + \alpha, \mathsf{fma}\left(0.0625, i, \left(\beta + \alpha\right) \cdot 0.125\right)\right)}{i}\\
                                          
                                          
                                          \end{array}
                                          \end{array}
                                          
                                          Derivation
                                          1. Split input into 2 regimes
                                          2. if (/.f64 (/.f64 (*.f64 (*.f64 i (+.f64 (+.f64 alpha beta) i)) (+.f64 (*.f64 beta alpha) (*.f64 i (+.f64 (+.f64 alpha beta) i)))) (*.f64 (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i)) (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i)))) (-.f64 (*.f64 (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i)) (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i))) #s(literal 1 binary64))) < 1.99999999999999992e-23

                                            1. Initial program 16.6%

                                              \[\frac{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                                            2. Taylor expanded in alpha around -inf

                                              \[\leadsto \frac{\color{blue}{-1 \cdot \left(i \cdot \left(-1 \cdot \beta + -1 \cdot i\right)\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                                            3. Step-by-step derivation
                                              1. lower-*.f64N/A

                                                \[\leadsto \frac{-1 \cdot \color{blue}{\left(i \cdot \left(-1 \cdot \beta + -1 \cdot i\right)\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                                              2. lower-*.f64N/A

                                                \[\leadsto \frac{-1 \cdot \left(i \cdot \color{blue}{\left(-1 \cdot \beta + -1 \cdot i\right)}\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                                              3. lower-fma.f64N/A

                                                \[\leadsto \frac{-1 \cdot \left(i \cdot \mathsf{fma}\left(-1, \color{blue}{\beta}, -1 \cdot i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                                              4. lower-*.f6413.6

                                                \[\leadsto \frac{-1 \cdot \left(i \cdot \mathsf{fma}\left(-1, \beta, -1 \cdot i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                                            4. Applied rewrites13.6%

                                              \[\leadsto \frac{\color{blue}{-1 \cdot \left(i \cdot \mathsf{fma}\left(-1, \beta, -1 \cdot i\right)\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                                            5. Taylor expanded in beta around 0

                                              \[\leadsto \frac{-1 \cdot \left(i \cdot \left(-1 \cdot \color{blue}{i}\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                                            6. Step-by-step derivation
                                              1. lower-*.f6417.8

                                                \[\leadsto \frac{-1 \cdot \left(i \cdot \left(-1 \cdot i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                                            7. Applied rewrites17.8%

                                              \[\leadsto \frac{-1 \cdot \left(i \cdot \left(-1 \cdot \color{blue}{i}\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]

                                            if 1.99999999999999992e-23 < (/.f64 (/.f64 (*.f64 (*.f64 i (+.f64 (+.f64 alpha beta) i)) (+.f64 (*.f64 beta alpha) (*.f64 i (+.f64 (+.f64 alpha beta) i)))) (*.f64 (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i)) (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i)))) (-.f64 (*.f64 (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i)) (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i))) #s(literal 1 binary64)))

                                            1. Initial program 16.6%

                                              \[\frac{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                                            2. Taylor expanded in i around inf

                                              \[\leadsto \color{blue}{\left(\frac{1}{16} + \frac{1}{16} \cdot \frac{2 \cdot \alpha + 2 \cdot \beta}{i}\right) - \frac{1}{8} \cdot \frac{\alpha + \beta}{i}} \]
                                            3. Step-by-step derivation
                                              1. lower--.f64N/A

                                                \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{2 \cdot \alpha + 2 \cdot \beta}{i}\right) - \color{blue}{\frac{1}{8} \cdot \frac{\alpha + \beta}{i}} \]
                                              2. lower-+.f64N/A

                                                \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{2 \cdot \alpha + 2 \cdot \beta}{i}\right) - \color{blue}{\frac{1}{8}} \cdot \frac{\alpha + \beta}{i} \]
                                              3. lower-*.f64N/A

                                                \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{2 \cdot \alpha + 2 \cdot \beta}{i}\right) - \frac{1}{8} \cdot \frac{\alpha + \beta}{i} \]
                                              4. lower-/.f64N/A

                                                \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{2 \cdot \alpha + 2 \cdot \beta}{i}\right) - \frac{1}{8} \cdot \frac{\alpha + \beta}{i} \]
                                              5. lower-fma.f64N/A

                                                \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - \frac{1}{8} \cdot \frac{\alpha + \beta}{i} \]
                                              6. lower-*.f64N/A

                                                \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - \frac{1}{8} \cdot \frac{\alpha + \beta}{i} \]
                                              7. lower-*.f64N/A

                                                \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - \frac{1}{8} \cdot \color{blue}{\frac{\alpha + \beta}{i}} \]
                                              8. lower-/.f64N/A

                                                \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - \frac{1}{8} \cdot \frac{\alpha + \beta}{\color{blue}{i}} \]
                                              9. lower-+.f6477.0

                                                \[\leadsto \left(0.0625 + 0.0625 \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - 0.125 \cdot \frac{\alpha + \beta}{i} \]
                                            4. Applied rewrites77.0%

                                              \[\leadsto \color{blue}{\left(0.0625 + 0.0625 \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - 0.125 \cdot \frac{\alpha + \beta}{i}} \]
                                            5. Step-by-step derivation
                                              1. lift--.f64N/A

                                                \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - \color{blue}{\frac{1}{8} \cdot \frac{\alpha + \beta}{i}} \]
                                              2. lift-*.f64N/A

                                                \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - \frac{1}{8} \cdot \color{blue}{\frac{\alpha + \beta}{i}} \]
                                              3. fp-cancel-sub-sign-invN/A

                                                \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) + \color{blue}{\left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \frac{\alpha + \beta}{i}} \]
                                              4. +-commutativeN/A

                                                \[\leadsto \left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \frac{\alpha + \beta}{i} + \color{blue}{\left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right)} \]
                                              5. lift-/.f64N/A

                                                \[\leadsto \left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \frac{\alpha + \beta}{i} + \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) \]
                                              6. associate-*r/N/A

                                                \[\leadsto \frac{\left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \left(\alpha + \beta\right)}{i} + \left(\color{blue}{\frac{1}{16}} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) \]
                                              7. lift-+.f64N/A

                                                \[\leadsto \frac{\left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \left(\alpha + \beta\right)}{i} + \left(\frac{1}{16} + \color{blue}{\frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}}\right) \]
                                              8. lift-*.f64N/A

                                                \[\leadsto \frac{\left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \left(\alpha + \beta\right)}{i} + \left(\frac{1}{16} + \frac{1}{16} \cdot \color{blue}{\frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}}\right) \]
                                              9. lift-/.f64N/A

                                                \[\leadsto \frac{\left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \left(\alpha + \beta\right)}{i} + \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{\color{blue}{i}}\right) \]
                                              10. associate-*r/N/A

                                                \[\leadsto \frac{\left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \left(\alpha + \beta\right)}{i} + \left(\frac{1}{16} + \frac{\frac{1}{16} \cdot \mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{\color{blue}{i}}\right) \]
                                              11. add-to-fractionN/A

                                                \[\leadsto \frac{\left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \left(\alpha + \beta\right)}{i} + \frac{\frac{1}{16} \cdot i + \frac{1}{16} \cdot \mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{\color{blue}{i}} \]
                                              12. div-add-revN/A

                                                \[\leadsto \frac{\left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \left(\alpha + \beta\right) + \left(\frac{1}{16} \cdot i + \frac{1}{16} \cdot \mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)\right)}{\color{blue}{i}} \]
                                              13. lower-/.f64N/A

                                                \[\leadsto \frac{\left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \left(\alpha + \beta\right) + \left(\frac{1}{16} \cdot i + \frac{1}{16} \cdot \mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)\right)}{\color{blue}{i}} \]
                                            6. Applied rewrites77.0%

                                              \[\leadsto \frac{\mathsf{fma}\left(-0.125, \beta + \alpha, \mathsf{fma}\left(0.0625, i, \left(\beta + \alpha\right) \cdot 0.125\right)\right)}{\color{blue}{i}} \]
                                          3. Recombined 2 regimes into one program.
                                          4. Add Preprocessing

                                          Alternative 8: 78.2% accurate, 0.7× speedup?

                                          \[\begin{array}{l} \\ \begin{array}{l} t_0 := \left(\alpha + \beta\right) + 2 \cdot i\\ t_1 := t\_0 \cdot t\_0\\ t_2 := i \cdot \left(\left(\alpha + \beta\right) + i\right)\\ \mathbf{if}\;\frac{\frac{t\_2 \cdot \left(\beta \cdot \alpha + t\_2\right)}{t\_1}}{t\_1 - 1} \leq 2 \cdot 10^{-23}:\\ \;\;\;\;\frac{i \cdot \left(\alpha + i\right)}{{\beta}^{2}}\\ \mathbf{else}:\\ \;\;\;\;\frac{\mathsf{fma}\left(-0.125, \beta + \alpha, \mathsf{fma}\left(0.0625, i, \left(\beta + \alpha\right) \cdot 0.125\right)\right)}{i}\\ \end{array} \end{array} \]
                                          (FPCore (alpha beta i)
                                           :precision binary64
                                           (let* ((t_0 (+ (+ alpha beta) (* 2.0 i)))
                                                  (t_1 (* t_0 t_0))
                                                  (t_2 (* i (+ (+ alpha beta) i))))
                                             (if (<= (/ (/ (* t_2 (+ (* beta alpha) t_2)) t_1) (- t_1 1.0)) 2e-23)
                                               (/ (* i (+ alpha i)) (pow beta 2.0))
                                               (/
                                                (fma -0.125 (+ beta alpha) (fma 0.0625 i (* (+ beta alpha) 0.125)))
                                                i))))
                                          double code(double alpha, double beta, double i) {
                                          	double t_0 = (alpha + beta) + (2.0 * i);
                                          	double t_1 = t_0 * t_0;
                                          	double t_2 = i * ((alpha + beta) + i);
                                          	double tmp;
                                          	if ((((t_2 * ((beta * alpha) + t_2)) / t_1) / (t_1 - 1.0)) <= 2e-23) {
                                          		tmp = (i * (alpha + i)) / pow(beta, 2.0);
                                          	} else {
                                          		tmp = fma(-0.125, (beta + alpha), fma(0.0625, i, ((beta + alpha) * 0.125))) / i;
                                          	}
                                          	return tmp;
                                          }
                                          
                                          function code(alpha, beta, i)
                                          	t_0 = Float64(Float64(alpha + beta) + Float64(2.0 * i))
                                          	t_1 = Float64(t_0 * t_0)
                                          	t_2 = Float64(i * Float64(Float64(alpha + beta) + i))
                                          	tmp = 0.0
                                          	if (Float64(Float64(Float64(t_2 * Float64(Float64(beta * alpha) + t_2)) / t_1) / Float64(t_1 - 1.0)) <= 2e-23)
                                          		tmp = Float64(Float64(i * Float64(alpha + i)) / (beta ^ 2.0));
                                          	else
                                          		tmp = Float64(fma(-0.125, Float64(beta + alpha), fma(0.0625, i, Float64(Float64(beta + alpha) * 0.125))) / i);
                                          	end
                                          	return tmp
                                          end
                                          
                                          code[alpha_, beta_, i_] := Block[{t$95$0 = N[(N[(alpha + beta), $MachinePrecision] + N[(2.0 * i), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$1 = N[(t$95$0 * t$95$0), $MachinePrecision]}, Block[{t$95$2 = N[(i * N[(N[(alpha + beta), $MachinePrecision] + i), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[N[(N[(N[(t$95$2 * N[(N[(beta * alpha), $MachinePrecision] + t$95$2), $MachinePrecision]), $MachinePrecision] / t$95$1), $MachinePrecision] / N[(t$95$1 - 1.0), $MachinePrecision]), $MachinePrecision], 2e-23], N[(N[(i * N[(alpha + i), $MachinePrecision]), $MachinePrecision] / N[Power[beta, 2.0], $MachinePrecision]), $MachinePrecision], N[(N[(-0.125 * N[(beta + alpha), $MachinePrecision] + N[(0.0625 * i + N[(N[(beta + alpha), $MachinePrecision] * 0.125), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / i), $MachinePrecision]]]]]
                                          
                                          \begin{array}{l}
                                          
                                          \\
                                          \begin{array}{l}
                                          t_0 := \left(\alpha + \beta\right) + 2 \cdot i\\
                                          t_1 := t\_0 \cdot t\_0\\
                                          t_2 := i \cdot \left(\left(\alpha + \beta\right) + i\right)\\
                                          \mathbf{if}\;\frac{\frac{t\_2 \cdot \left(\beta \cdot \alpha + t\_2\right)}{t\_1}}{t\_1 - 1} \leq 2 \cdot 10^{-23}:\\
                                          \;\;\;\;\frac{i \cdot \left(\alpha + i\right)}{{\beta}^{2}}\\
                                          
                                          \mathbf{else}:\\
                                          \;\;\;\;\frac{\mathsf{fma}\left(-0.125, \beta + \alpha, \mathsf{fma}\left(0.0625, i, \left(\beta + \alpha\right) \cdot 0.125\right)\right)}{i}\\
                                          
                                          
                                          \end{array}
                                          \end{array}
                                          
                                          Derivation
                                          1. Split input into 2 regimes
                                          2. if (/.f64 (/.f64 (*.f64 (*.f64 i (+.f64 (+.f64 alpha beta) i)) (+.f64 (*.f64 beta alpha) (*.f64 i (+.f64 (+.f64 alpha beta) i)))) (*.f64 (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i)) (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i)))) (-.f64 (*.f64 (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i)) (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i))) #s(literal 1 binary64))) < 1.99999999999999992e-23

                                            1. Initial program 16.6%

                                              \[\frac{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                                            2. Taylor expanded in beta around inf

                                              \[\leadsto \color{blue}{\frac{i \cdot \left(\alpha + i\right)}{{\beta}^{2}}} \]
                                            3. Step-by-step derivation
                                              1. lower-/.f64N/A

                                                \[\leadsto \frac{i \cdot \left(\alpha + i\right)}{\color{blue}{{\beta}^{2}}} \]
                                              2. lower-*.f64N/A

                                                \[\leadsto \frac{i \cdot \left(\alpha + i\right)}{{\color{blue}{\beta}}^{2}} \]
                                              3. lower-+.f64N/A

                                                \[\leadsto \frac{i \cdot \left(\alpha + i\right)}{{\beta}^{2}} \]
                                              4. lower-pow.f649.2

                                                \[\leadsto \frac{i \cdot \left(\alpha + i\right)}{{\beta}^{\color{blue}{2}}} \]
                                            4. Applied rewrites9.2%

                                              \[\leadsto \color{blue}{\frac{i \cdot \left(\alpha + i\right)}{{\beta}^{2}}} \]

                                            if 1.99999999999999992e-23 < (/.f64 (/.f64 (*.f64 (*.f64 i (+.f64 (+.f64 alpha beta) i)) (+.f64 (*.f64 beta alpha) (*.f64 i (+.f64 (+.f64 alpha beta) i)))) (*.f64 (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i)) (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i)))) (-.f64 (*.f64 (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i)) (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i))) #s(literal 1 binary64)))

                                            1. Initial program 16.6%

                                              \[\frac{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                                            2. Taylor expanded in i around inf

                                              \[\leadsto \color{blue}{\left(\frac{1}{16} + \frac{1}{16} \cdot \frac{2 \cdot \alpha + 2 \cdot \beta}{i}\right) - \frac{1}{8} \cdot \frac{\alpha + \beta}{i}} \]
                                            3. Step-by-step derivation
                                              1. lower--.f64N/A

                                                \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{2 \cdot \alpha + 2 \cdot \beta}{i}\right) - \color{blue}{\frac{1}{8} \cdot \frac{\alpha + \beta}{i}} \]
                                              2. lower-+.f64N/A

                                                \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{2 \cdot \alpha + 2 \cdot \beta}{i}\right) - \color{blue}{\frac{1}{8}} \cdot \frac{\alpha + \beta}{i} \]
                                              3. lower-*.f64N/A

                                                \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{2 \cdot \alpha + 2 \cdot \beta}{i}\right) - \frac{1}{8} \cdot \frac{\alpha + \beta}{i} \]
                                              4. lower-/.f64N/A

                                                \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{2 \cdot \alpha + 2 \cdot \beta}{i}\right) - \frac{1}{8} \cdot \frac{\alpha + \beta}{i} \]
                                              5. lower-fma.f64N/A

                                                \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - \frac{1}{8} \cdot \frac{\alpha + \beta}{i} \]
                                              6. lower-*.f64N/A

                                                \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - \frac{1}{8} \cdot \frac{\alpha + \beta}{i} \]
                                              7. lower-*.f64N/A

                                                \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - \frac{1}{8} \cdot \color{blue}{\frac{\alpha + \beta}{i}} \]
                                              8. lower-/.f64N/A

                                                \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - \frac{1}{8} \cdot \frac{\alpha + \beta}{\color{blue}{i}} \]
                                              9. lower-+.f6477.0

                                                \[\leadsto \left(0.0625 + 0.0625 \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - 0.125 \cdot \frac{\alpha + \beta}{i} \]
                                            4. Applied rewrites77.0%

                                              \[\leadsto \color{blue}{\left(0.0625 + 0.0625 \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - 0.125 \cdot \frac{\alpha + \beta}{i}} \]
                                            5. Step-by-step derivation
                                              1. lift--.f64N/A

                                                \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - \color{blue}{\frac{1}{8} \cdot \frac{\alpha + \beta}{i}} \]
                                              2. lift-*.f64N/A

                                                \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - \frac{1}{8} \cdot \color{blue}{\frac{\alpha + \beta}{i}} \]
                                              3. fp-cancel-sub-sign-invN/A

                                                \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) + \color{blue}{\left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \frac{\alpha + \beta}{i}} \]
                                              4. +-commutativeN/A

                                                \[\leadsto \left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \frac{\alpha + \beta}{i} + \color{blue}{\left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right)} \]
                                              5. lift-/.f64N/A

                                                \[\leadsto \left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \frac{\alpha + \beta}{i} + \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) \]
                                              6. associate-*r/N/A

                                                \[\leadsto \frac{\left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \left(\alpha + \beta\right)}{i} + \left(\color{blue}{\frac{1}{16}} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) \]
                                              7. lift-+.f64N/A

                                                \[\leadsto \frac{\left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \left(\alpha + \beta\right)}{i} + \left(\frac{1}{16} + \color{blue}{\frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}}\right) \]
                                              8. lift-*.f64N/A

                                                \[\leadsto \frac{\left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \left(\alpha + \beta\right)}{i} + \left(\frac{1}{16} + \frac{1}{16} \cdot \color{blue}{\frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}}\right) \]
                                              9. lift-/.f64N/A

                                                \[\leadsto \frac{\left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \left(\alpha + \beta\right)}{i} + \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{\color{blue}{i}}\right) \]
                                              10. associate-*r/N/A

                                                \[\leadsto \frac{\left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \left(\alpha + \beta\right)}{i} + \left(\frac{1}{16} + \frac{\frac{1}{16} \cdot \mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{\color{blue}{i}}\right) \]
                                              11. add-to-fractionN/A

                                                \[\leadsto \frac{\left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \left(\alpha + \beta\right)}{i} + \frac{\frac{1}{16} \cdot i + \frac{1}{16} \cdot \mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{\color{blue}{i}} \]
                                              12. div-add-revN/A

                                                \[\leadsto \frac{\left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \left(\alpha + \beta\right) + \left(\frac{1}{16} \cdot i + \frac{1}{16} \cdot \mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)\right)}{\color{blue}{i}} \]
                                              13. lower-/.f64N/A

                                                \[\leadsto \frac{\left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \left(\alpha + \beta\right) + \left(\frac{1}{16} \cdot i + \frac{1}{16} \cdot \mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)\right)}{\color{blue}{i}} \]
                                            6. Applied rewrites77.0%

                                              \[\leadsto \frac{\mathsf{fma}\left(-0.125, \beta + \alpha, \mathsf{fma}\left(0.0625, i, \left(\beta + \alpha\right) \cdot 0.125\right)\right)}{\color{blue}{i}} \]
                                          3. Recombined 2 regimes into one program.
                                          4. Add Preprocessing

                                          Alternative 9: 77.0% accurate, 3.3× speedup?

                                          \[\begin{array}{l} \\ \frac{\mathsf{fma}\left(-0.125, \beta + \alpha, \mathsf{fma}\left(0.0625, i, \left(\beta + \alpha\right) \cdot 0.125\right)\right)}{i} \end{array} \]
                                          (FPCore (alpha beta i)
                                           :precision binary64
                                           (/ (fma -0.125 (+ beta alpha) (fma 0.0625 i (* (+ beta alpha) 0.125))) i))
                                          double code(double alpha, double beta, double i) {
                                          	return fma(-0.125, (beta + alpha), fma(0.0625, i, ((beta + alpha) * 0.125))) / i;
                                          }
                                          
                                          function code(alpha, beta, i)
                                          	return Float64(fma(-0.125, Float64(beta + alpha), fma(0.0625, i, Float64(Float64(beta + alpha) * 0.125))) / i)
                                          end
                                          
                                          code[alpha_, beta_, i_] := N[(N[(-0.125 * N[(beta + alpha), $MachinePrecision] + N[(0.0625 * i + N[(N[(beta + alpha), $MachinePrecision] * 0.125), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / i), $MachinePrecision]
                                          
                                          \begin{array}{l}
                                          
                                          \\
                                          \frac{\mathsf{fma}\left(-0.125, \beta + \alpha, \mathsf{fma}\left(0.0625, i, \left(\beta + \alpha\right) \cdot 0.125\right)\right)}{i}
                                          \end{array}
                                          
                                          Derivation
                                          1. Initial program 16.6%

                                            \[\frac{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                                          2. Taylor expanded in i around inf

                                            \[\leadsto \color{blue}{\left(\frac{1}{16} + \frac{1}{16} \cdot \frac{2 \cdot \alpha + 2 \cdot \beta}{i}\right) - \frac{1}{8} \cdot \frac{\alpha + \beta}{i}} \]
                                          3. Step-by-step derivation
                                            1. lower--.f64N/A

                                              \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{2 \cdot \alpha + 2 \cdot \beta}{i}\right) - \color{blue}{\frac{1}{8} \cdot \frac{\alpha + \beta}{i}} \]
                                            2. lower-+.f64N/A

                                              \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{2 \cdot \alpha + 2 \cdot \beta}{i}\right) - \color{blue}{\frac{1}{8}} \cdot \frac{\alpha + \beta}{i} \]
                                            3. lower-*.f64N/A

                                              \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{2 \cdot \alpha + 2 \cdot \beta}{i}\right) - \frac{1}{8} \cdot \frac{\alpha + \beta}{i} \]
                                            4. lower-/.f64N/A

                                              \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{2 \cdot \alpha + 2 \cdot \beta}{i}\right) - \frac{1}{8} \cdot \frac{\alpha + \beta}{i} \]
                                            5. lower-fma.f64N/A

                                              \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - \frac{1}{8} \cdot \frac{\alpha + \beta}{i} \]
                                            6. lower-*.f64N/A

                                              \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - \frac{1}{8} \cdot \frac{\alpha + \beta}{i} \]
                                            7. lower-*.f64N/A

                                              \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - \frac{1}{8} \cdot \color{blue}{\frac{\alpha + \beta}{i}} \]
                                            8. lower-/.f64N/A

                                              \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - \frac{1}{8} \cdot \frac{\alpha + \beta}{\color{blue}{i}} \]
                                            9. lower-+.f6477.0

                                              \[\leadsto \left(0.0625 + 0.0625 \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - 0.125 \cdot \frac{\alpha + \beta}{i} \]
                                          4. Applied rewrites77.0%

                                            \[\leadsto \color{blue}{\left(0.0625 + 0.0625 \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - 0.125 \cdot \frac{\alpha + \beta}{i}} \]
                                          5. Step-by-step derivation
                                            1. lift--.f64N/A

                                              \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - \color{blue}{\frac{1}{8} \cdot \frac{\alpha + \beta}{i}} \]
                                            2. lift-*.f64N/A

                                              \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - \frac{1}{8} \cdot \color{blue}{\frac{\alpha + \beta}{i}} \]
                                            3. fp-cancel-sub-sign-invN/A

                                              \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) + \color{blue}{\left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \frac{\alpha + \beta}{i}} \]
                                            4. +-commutativeN/A

                                              \[\leadsto \left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \frac{\alpha + \beta}{i} + \color{blue}{\left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right)} \]
                                            5. lift-/.f64N/A

                                              \[\leadsto \left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \frac{\alpha + \beta}{i} + \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) \]
                                            6. associate-*r/N/A

                                              \[\leadsto \frac{\left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \left(\alpha + \beta\right)}{i} + \left(\color{blue}{\frac{1}{16}} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) \]
                                            7. lift-+.f64N/A

                                              \[\leadsto \frac{\left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \left(\alpha + \beta\right)}{i} + \left(\frac{1}{16} + \color{blue}{\frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}}\right) \]
                                            8. lift-*.f64N/A

                                              \[\leadsto \frac{\left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \left(\alpha + \beta\right)}{i} + \left(\frac{1}{16} + \frac{1}{16} \cdot \color{blue}{\frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}}\right) \]
                                            9. lift-/.f64N/A

                                              \[\leadsto \frac{\left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \left(\alpha + \beta\right)}{i} + \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{\color{blue}{i}}\right) \]
                                            10. associate-*r/N/A

                                              \[\leadsto \frac{\left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \left(\alpha + \beta\right)}{i} + \left(\frac{1}{16} + \frac{\frac{1}{16} \cdot \mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{\color{blue}{i}}\right) \]
                                            11. add-to-fractionN/A

                                              \[\leadsto \frac{\left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \left(\alpha + \beta\right)}{i} + \frac{\frac{1}{16} \cdot i + \frac{1}{16} \cdot \mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{\color{blue}{i}} \]
                                            12. div-add-revN/A

                                              \[\leadsto \frac{\left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \left(\alpha + \beta\right) + \left(\frac{1}{16} \cdot i + \frac{1}{16} \cdot \mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)\right)}{\color{blue}{i}} \]
                                            13. lower-/.f64N/A

                                              \[\leadsto \frac{\left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \left(\alpha + \beta\right) + \left(\frac{1}{16} \cdot i + \frac{1}{16} \cdot \mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)\right)}{\color{blue}{i}} \]
                                          6. Applied rewrites77.0%

                                            \[\leadsto \frac{\mathsf{fma}\left(-0.125, \beta + \alpha, \mathsf{fma}\left(0.0625, i, \left(\beta + \alpha\right) \cdot 0.125\right)\right)}{\color{blue}{i}} \]
                                          7. Add Preprocessing

                                          Alternative 10: 73.3% accurate, 3.5× speedup?

                                          \[\begin{array}{l} \\ \left(0.0625 + 0.125 \cdot \frac{\beta}{i}\right) - 0.125 \cdot \frac{\alpha + \beta}{i} \end{array} \]
                                          (FPCore (alpha beta i)
                                           :precision binary64
                                           (- (+ 0.0625 (* 0.125 (/ beta i))) (* 0.125 (/ (+ alpha beta) i))))
                                          double code(double alpha, double beta, double i) {
                                          	return (0.0625 + (0.125 * (beta / i))) - (0.125 * ((alpha + beta) / i));
                                          }
                                          
                                          module fmin_fmax_functions
                                              implicit none
                                              private
                                              public fmax
                                              public fmin
                                          
                                              interface fmax
                                                  module procedure fmax88
                                                  module procedure fmax44
                                                  module procedure fmax84
                                                  module procedure fmax48
                                              end interface
                                              interface fmin
                                                  module procedure fmin88
                                                  module procedure fmin44
                                                  module procedure fmin84
                                                  module procedure fmin48
                                              end interface
                                          contains
                                              real(8) function fmax88(x, y) result (res)
                                                  real(8), intent (in) :: x
                                                  real(8), intent (in) :: y
                                                  res = merge(y, merge(x, max(x, y), y /= y), x /= x)
                                              end function
                                              real(4) function fmax44(x, y) result (res)
                                                  real(4), intent (in) :: x
                                                  real(4), intent (in) :: y
                                                  res = merge(y, merge(x, max(x, y), y /= y), x /= x)
                                              end function
                                              real(8) function fmax84(x, y) result(res)
                                                  real(8), intent (in) :: x
                                                  real(4), intent (in) :: y
                                                  res = merge(dble(y), merge(x, max(x, dble(y)), y /= y), x /= x)
                                              end function
                                              real(8) function fmax48(x, y) result(res)
                                                  real(4), intent (in) :: x
                                                  real(8), intent (in) :: y
                                                  res = merge(y, merge(dble(x), max(dble(x), y), y /= y), x /= x)
                                              end function
                                              real(8) function fmin88(x, y) result (res)
                                                  real(8), intent (in) :: x
                                                  real(8), intent (in) :: y
                                                  res = merge(y, merge(x, min(x, y), y /= y), x /= x)
                                              end function
                                              real(4) function fmin44(x, y) result (res)
                                                  real(4), intent (in) :: x
                                                  real(4), intent (in) :: y
                                                  res = merge(y, merge(x, min(x, y), y /= y), x /= x)
                                              end function
                                              real(8) function fmin84(x, y) result(res)
                                                  real(8), intent (in) :: x
                                                  real(4), intent (in) :: y
                                                  res = merge(dble(y), merge(x, min(x, dble(y)), y /= y), x /= x)
                                              end function
                                              real(8) function fmin48(x, y) result(res)
                                                  real(4), intent (in) :: x
                                                  real(8), intent (in) :: y
                                                  res = merge(y, merge(dble(x), min(dble(x), y), y /= y), x /= x)
                                              end function
                                          end module
                                          
                                          real(8) function code(alpha, beta, i)
                                          use fmin_fmax_functions
                                              real(8), intent (in) :: alpha
                                              real(8), intent (in) :: beta
                                              real(8), intent (in) :: i
                                              code = (0.0625d0 + (0.125d0 * (beta / i))) - (0.125d0 * ((alpha + beta) / i))
                                          end function
                                          
                                          public static double code(double alpha, double beta, double i) {
                                          	return (0.0625 + (0.125 * (beta / i))) - (0.125 * ((alpha + beta) / i));
                                          }
                                          
                                          def code(alpha, beta, i):
                                          	return (0.0625 + (0.125 * (beta / i))) - (0.125 * ((alpha + beta) / i))
                                          
                                          function code(alpha, beta, i)
                                          	return Float64(Float64(0.0625 + Float64(0.125 * Float64(beta / i))) - Float64(0.125 * Float64(Float64(alpha + beta) / i)))
                                          end
                                          
                                          function tmp = code(alpha, beta, i)
                                          	tmp = (0.0625 + (0.125 * (beta / i))) - (0.125 * ((alpha + beta) / i));
                                          end
                                          
                                          code[alpha_, beta_, i_] := N[(N[(0.0625 + N[(0.125 * N[(beta / i), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - N[(0.125 * N[(N[(alpha + beta), $MachinePrecision] / i), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
                                          
                                          \begin{array}{l}
                                          
                                          \\
                                          \left(0.0625 + 0.125 \cdot \frac{\beta}{i}\right) - 0.125 \cdot \frac{\alpha + \beta}{i}
                                          \end{array}
                                          
                                          Derivation
                                          1. Initial program 16.6%

                                            \[\frac{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                                          2. Taylor expanded in i around inf

                                            \[\leadsto \color{blue}{\left(\frac{1}{16} + \frac{1}{16} \cdot \frac{2 \cdot \alpha + 2 \cdot \beta}{i}\right) - \frac{1}{8} \cdot \frac{\alpha + \beta}{i}} \]
                                          3. Step-by-step derivation
                                            1. lower--.f64N/A

                                              \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{2 \cdot \alpha + 2 \cdot \beta}{i}\right) - \color{blue}{\frac{1}{8} \cdot \frac{\alpha + \beta}{i}} \]
                                            2. lower-+.f64N/A

                                              \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{2 \cdot \alpha + 2 \cdot \beta}{i}\right) - \color{blue}{\frac{1}{8}} \cdot \frac{\alpha + \beta}{i} \]
                                            3. lower-*.f64N/A

                                              \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{2 \cdot \alpha + 2 \cdot \beta}{i}\right) - \frac{1}{8} \cdot \frac{\alpha + \beta}{i} \]
                                            4. lower-/.f64N/A

                                              \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{2 \cdot \alpha + 2 \cdot \beta}{i}\right) - \frac{1}{8} \cdot \frac{\alpha + \beta}{i} \]
                                            5. lower-fma.f64N/A

                                              \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - \frac{1}{8} \cdot \frac{\alpha + \beta}{i} \]
                                            6. lower-*.f64N/A

                                              \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - \frac{1}{8} \cdot \frac{\alpha + \beta}{i} \]
                                            7. lower-*.f64N/A

                                              \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - \frac{1}{8} \cdot \color{blue}{\frac{\alpha + \beta}{i}} \]
                                            8. lower-/.f64N/A

                                              \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - \frac{1}{8} \cdot \frac{\alpha + \beta}{\color{blue}{i}} \]
                                            9. lower-+.f6477.0

                                              \[\leadsto \left(0.0625 + 0.0625 \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - 0.125 \cdot \frac{\alpha + \beta}{i} \]
                                          4. Applied rewrites77.0%

                                            \[\leadsto \color{blue}{\left(0.0625 + 0.0625 \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - 0.125 \cdot \frac{\alpha + \beta}{i}} \]
                                          5. Taylor expanded in alpha around 0

                                            \[\leadsto \left(\frac{1}{16} + \frac{1}{8} \cdot \frac{\beta}{i}\right) - \frac{1}{8} \cdot \frac{\alpha + \beta}{i} \]
                                          6. Step-by-step derivation
                                            1. lower-*.f64N/A

                                              \[\leadsto \left(\frac{1}{16} + \frac{1}{8} \cdot \frac{\beta}{i}\right) - \frac{1}{8} \cdot \frac{\alpha + \beta}{i} \]
                                            2. lower-/.f6473.3

                                              \[\leadsto \left(0.0625 + 0.125 \cdot \frac{\beta}{i}\right) - 0.125 \cdot \frac{\alpha + \beta}{i} \]
                                          7. Applied rewrites73.3%

                                            \[\leadsto \left(0.0625 + 0.125 \cdot \frac{\beta}{i}\right) - 0.125 \cdot \frac{\alpha + \beta}{i} \]
                                          8. Add Preprocessing

                                          Alternative 11: 72.6% accurate, 3.4× speedup?

                                          \[\begin{array}{l} \\ \begin{array}{l} \mathbf{if}\;\beta \leq 4.2 \cdot 10^{+237}:\\ \;\;\;\;0.0625\\ \mathbf{else}:\\ \;\;\;\;\mathsf{fma}\left(\frac{\alpha + \beta}{i}, -0.125, 0.125 \cdot \frac{\beta}{i}\right)\\ \end{array} \end{array} \]
                                          (FPCore (alpha beta i)
                                           :precision binary64
                                           (if (<= beta 4.2e+237)
                                             0.0625
                                             (fma (/ (+ alpha beta) i) -0.125 (* 0.125 (/ beta i)))))
                                          double code(double alpha, double beta, double i) {
                                          	double tmp;
                                          	if (beta <= 4.2e+237) {
                                          		tmp = 0.0625;
                                          	} else {
                                          		tmp = fma(((alpha + beta) / i), -0.125, (0.125 * (beta / i)));
                                          	}
                                          	return tmp;
                                          }
                                          
                                          function code(alpha, beta, i)
                                          	tmp = 0.0
                                          	if (beta <= 4.2e+237)
                                          		tmp = 0.0625;
                                          	else
                                          		tmp = fma(Float64(Float64(alpha + beta) / i), -0.125, Float64(0.125 * Float64(beta / i)));
                                          	end
                                          	return tmp
                                          end
                                          
                                          code[alpha_, beta_, i_] := If[LessEqual[beta, 4.2e+237], 0.0625, N[(N[(N[(alpha + beta), $MachinePrecision] / i), $MachinePrecision] * -0.125 + N[(0.125 * N[(beta / i), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]
                                          
                                          \begin{array}{l}
                                          
                                          \\
                                          \begin{array}{l}
                                          \mathbf{if}\;\beta \leq 4.2 \cdot 10^{+237}:\\
                                          \;\;\;\;0.0625\\
                                          
                                          \mathbf{else}:\\
                                          \;\;\;\;\mathsf{fma}\left(\frac{\alpha + \beta}{i}, -0.125, 0.125 \cdot \frac{\beta}{i}\right)\\
                                          
                                          
                                          \end{array}
                                          \end{array}
                                          
                                          Derivation
                                          1. Split input into 2 regimes
                                          2. if beta < 4.20000000000000029e237

                                            1. Initial program 16.6%

                                              \[\frac{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                                            2. Taylor expanded in i around inf

                                              \[\leadsto \color{blue}{\frac{1}{16}} \]
                                            3. Step-by-step derivation
                                              1. Applied rewrites70.7%

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

                                              if 4.20000000000000029e237 < beta

                                              1. Initial program 16.6%

                                                \[\frac{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                                              2. Taylor expanded in i around inf

                                                \[\leadsto \color{blue}{\left(\frac{1}{16} + \frac{1}{16} \cdot \frac{2 \cdot \alpha + 2 \cdot \beta}{i}\right) - \frac{1}{8} \cdot \frac{\alpha + \beta}{i}} \]
                                              3. Step-by-step derivation
                                                1. lower--.f64N/A

                                                  \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{2 \cdot \alpha + 2 \cdot \beta}{i}\right) - \color{blue}{\frac{1}{8} \cdot \frac{\alpha + \beta}{i}} \]
                                                2. lower-+.f64N/A

                                                  \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{2 \cdot \alpha + 2 \cdot \beta}{i}\right) - \color{blue}{\frac{1}{8}} \cdot \frac{\alpha + \beta}{i} \]
                                                3. lower-*.f64N/A

                                                  \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{2 \cdot \alpha + 2 \cdot \beta}{i}\right) - \frac{1}{8} \cdot \frac{\alpha + \beta}{i} \]
                                                4. lower-/.f64N/A

                                                  \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{2 \cdot \alpha + 2 \cdot \beta}{i}\right) - \frac{1}{8} \cdot \frac{\alpha + \beta}{i} \]
                                                5. lower-fma.f64N/A

                                                  \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - \frac{1}{8} \cdot \frac{\alpha + \beta}{i} \]
                                                6. lower-*.f64N/A

                                                  \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - \frac{1}{8} \cdot \frac{\alpha + \beta}{i} \]
                                                7. lower-*.f64N/A

                                                  \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - \frac{1}{8} \cdot \color{blue}{\frac{\alpha + \beta}{i}} \]
                                                8. lower-/.f64N/A

                                                  \[\leadsto \left(\frac{1}{16} + \frac{1}{16} \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - \frac{1}{8} \cdot \frac{\alpha + \beta}{\color{blue}{i}} \]
                                                9. lower-+.f6477.0

                                                  \[\leadsto \left(0.0625 + 0.0625 \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - 0.125 \cdot \frac{\alpha + \beta}{i} \]
                                              4. Applied rewrites77.0%

                                                \[\leadsto \color{blue}{\left(0.0625 + 0.0625 \cdot \frac{\mathsf{fma}\left(2, \alpha, 2 \cdot \beta\right)}{i}\right) - 0.125 \cdot \frac{\alpha + \beta}{i}} \]
                                              5. Taylor expanded in alpha around inf

                                                \[\leadsto \frac{1}{8} \cdot \frac{\alpha}{i} - \color{blue}{\frac{1}{8}} \cdot \frac{\alpha + \beta}{i} \]
                                              6. Step-by-step derivation
                                                1. lower-*.f64N/A

                                                  \[\leadsto \frac{1}{8} \cdot \frac{\alpha}{i} - \frac{1}{8} \cdot \frac{\alpha + \beta}{i} \]
                                                2. lower-/.f645.9

                                                  \[\leadsto 0.125 \cdot \frac{\alpha}{i} - 0.125 \cdot \frac{\alpha + \beta}{i} \]
                                              7. Applied rewrites5.9%

                                                \[\leadsto 0.125 \cdot \frac{\alpha}{i} - \color{blue}{0.125} \cdot \frac{\alpha + \beta}{i} \]
                                              8. Step-by-step derivation
                                                1. lift--.f64N/A

                                                  \[\leadsto \frac{1}{8} \cdot \frac{\alpha}{i} - \color{blue}{\frac{1}{8} \cdot \frac{\alpha + \beta}{i}} \]
                                                2. lift-*.f64N/A

                                                  \[\leadsto \frac{1}{8} \cdot \frac{\alpha}{i} - \frac{1}{8} \cdot \color{blue}{\frac{\alpha + \beta}{i}} \]
                                                3. fp-cancel-sub-sign-invN/A

                                                  \[\leadsto \frac{1}{8} \cdot \frac{\alpha}{i} + \color{blue}{\left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \frac{\alpha + \beta}{i}} \]
                                                4. +-commutativeN/A

                                                  \[\leadsto \left(\mathsf{neg}\left(\frac{1}{8}\right)\right) \cdot \frac{\alpha + \beta}{i} + \color{blue}{\frac{1}{8} \cdot \frac{\alpha}{i}} \]
                                                5. *-commutativeN/A

                                                  \[\leadsto \frac{\alpha + \beta}{i} \cdot \left(\mathsf{neg}\left(\frac{1}{8}\right)\right) + \color{blue}{\frac{1}{8}} \cdot \frac{\alpha}{i} \]
                                                6. lower-fma.f64N/A

                                                  \[\leadsto \mathsf{fma}\left(\frac{\alpha + \beta}{i}, \color{blue}{\mathsf{neg}\left(\frac{1}{8}\right)}, \frac{1}{8} \cdot \frac{\alpha}{i}\right) \]
                                                7. metadata-eval5.9

                                                  \[\leadsto \mathsf{fma}\left(\frac{\alpha + \beta}{i}, -0.125, 0.125 \cdot \frac{\alpha}{i}\right) \]
                                                8. lift-*.f64N/A

                                                  \[\leadsto \mathsf{fma}\left(\frac{\alpha + \beta}{i}, \frac{-1}{8}, \frac{1}{8} \cdot \frac{\alpha}{i}\right) \]
                                                9. *-commutativeN/A

                                                  \[\leadsto \mathsf{fma}\left(\frac{\alpha + \beta}{i}, \frac{-1}{8}, \frac{\alpha}{i} \cdot \frac{1}{8}\right) \]
                                                10. lower-*.f645.9

                                                  \[\leadsto \mathsf{fma}\left(\frac{\alpha + \beta}{i}, -0.125, \frac{\alpha}{i} \cdot 0.125\right) \]
                                              9. Applied rewrites5.9%

                                                \[\leadsto \mathsf{fma}\left(\frac{\alpha + \beta}{i}, \color{blue}{-0.125}, \frac{\alpha}{i} \cdot 0.125\right) \]
                                              10. Taylor expanded in beta around inf

                                                \[\leadsto \mathsf{fma}\left(\frac{\alpha + \beta}{i}, \frac{-1}{8}, \frac{1}{8} \cdot \frac{\beta}{i}\right) \]
                                              11. Step-by-step derivation
                                                1. lower-*.f64N/A

                                                  \[\leadsto \mathsf{fma}\left(\frac{\alpha + \beta}{i}, \frac{-1}{8}, \frac{1}{8} \cdot \frac{\beta}{i}\right) \]
                                                2. lower-/.f646.5

                                                  \[\leadsto \mathsf{fma}\left(\frac{\alpha + \beta}{i}, -0.125, 0.125 \cdot \frac{\beta}{i}\right) \]
                                              12. Applied rewrites6.5%

                                                \[\leadsto \mathsf{fma}\left(\frac{\alpha + \beta}{i}, -0.125, 0.125 \cdot \frac{\beta}{i}\right) \]
                                            4. Recombined 2 regimes into one program.
                                            5. Add Preprocessing

                                            Alternative 12: 70.7% accurate, 75.4× speedup?

                                            \[\begin{array}{l} \\ 0.0625 \end{array} \]
                                            (FPCore (alpha beta i) :precision binary64 0.0625)
                                            double code(double alpha, double beta, double i) {
                                            	return 0.0625;
                                            }
                                            
                                            module fmin_fmax_functions
                                                implicit none
                                                private
                                                public fmax
                                                public fmin
                                            
                                                interface fmax
                                                    module procedure fmax88
                                                    module procedure fmax44
                                                    module procedure fmax84
                                                    module procedure fmax48
                                                end interface
                                                interface fmin
                                                    module procedure fmin88
                                                    module procedure fmin44
                                                    module procedure fmin84
                                                    module procedure fmin48
                                                end interface
                                            contains
                                                real(8) function fmax88(x, y) result (res)
                                                    real(8), intent (in) :: x
                                                    real(8), intent (in) :: y
                                                    res = merge(y, merge(x, max(x, y), y /= y), x /= x)
                                                end function
                                                real(4) function fmax44(x, y) result (res)
                                                    real(4), intent (in) :: x
                                                    real(4), intent (in) :: y
                                                    res = merge(y, merge(x, max(x, y), y /= y), x /= x)
                                                end function
                                                real(8) function fmax84(x, y) result(res)
                                                    real(8), intent (in) :: x
                                                    real(4), intent (in) :: y
                                                    res = merge(dble(y), merge(x, max(x, dble(y)), y /= y), x /= x)
                                                end function
                                                real(8) function fmax48(x, y) result(res)
                                                    real(4), intent (in) :: x
                                                    real(8), intent (in) :: y
                                                    res = merge(y, merge(dble(x), max(dble(x), y), y /= y), x /= x)
                                                end function
                                                real(8) function fmin88(x, y) result (res)
                                                    real(8), intent (in) :: x
                                                    real(8), intent (in) :: y
                                                    res = merge(y, merge(x, min(x, y), y /= y), x /= x)
                                                end function
                                                real(4) function fmin44(x, y) result (res)
                                                    real(4), intent (in) :: x
                                                    real(4), intent (in) :: y
                                                    res = merge(y, merge(x, min(x, y), y /= y), x /= x)
                                                end function
                                                real(8) function fmin84(x, y) result(res)
                                                    real(8), intent (in) :: x
                                                    real(4), intent (in) :: y
                                                    res = merge(dble(y), merge(x, min(x, dble(y)), y /= y), x /= x)
                                                end function
                                                real(8) function fmin48(x, y) result(res)
                                                    real(4), intent (in) :: x
                                                    real(8), intent (in) :: y
                                                    res = merge(y, merge(dble(x), min(dble(x), y), y /= y), x /= x)
                                                end function
                                            end module
                                            
                                            real(8) function code(alpha, beta, i)
                                            use fmin_fmax_functions
                                                real(8), intent (in) :: alpha
                                                real(8), intent (in) :: beta
                                                real(8), intent (in) :: i
                                                code = 0.0625d0
                                            end function
                                            
                                            public static double code(double alpha, double beta, double i) {
                                            	return 0.0625;
                                            }
                                            
                                            def code(alpha, beta, i):
                                            	return 0.0625
                                            
                                            function code(alpha, beta, i)
                                            	return 0.0625
                                            end
                                            
                                            function tmp = code(alpha, beta, i)
                                            	tmp = 0.0625;
                                            end
                                            
                                            code[alpha_, beta_, i_] := 0.0625
                                            
                                            \begin{array}{l}
                                            
                                            \\
                                            0.0625
                                            \end{array}
                                            
                                            Derivation
                                            1. Initial program 16.6%

                                              \[\frac{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1} \]
                                            2. Taylor expanded in i around inf

                                              \[\leadsto \color{blue}{\frac{1}{16}} \]
                                            3. Step-by-step derivation
                                              1. Applied rewrites70.7%

                                                \[\leadsto \color{blue}{0.0625} \]
                                              2. Add Preprocessing

                                              Reproduce

                                              ?
                                              herbie shell --seed 2025150 
                                              (FPCore (alpha beta i)
                                                :name "Octave 3.8, jcobi/4"
                                                :precision binary64
                                                :pre (and (and (> alpha -1.0) (> beta -1.0)) (> i 1.0))
                                                (/ (/ (* (* i (+ (+ alpha beta) i)) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) (* (+ (+ alpha beta) (* 2.0 i)) (+ (+ alpha beta) (* 2.0 i)))) (- (* (+ (+ alpha beta) (* 2.0 i)) (+ (+ alpha beta) (* 2.0 i))) 1.0)))