jeff quadratic root 1

Percentage Accurate: 71.9% → 90.8%
Time: 17.7s
Alternatives: 13
Speedup: 1.1×

Specification

?
\[\begin{array}{l} \\ \begin{array}{l} t_0 := \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}\\ \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - t\_0}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + t\_0}\\ \end{array} \end{array} \]
(FPCore (a b c)
 :precision binary64
 (let* ((t_0 (sqrt (- (* b b) (* (* 4.0 a) c)))))
   (if (>= b 0.0) (/ (- (- b) t_0) (* 2.0 a)) (/ (* 2.0 c) (+ (- b) t_0)))))
double code(double a, double b, double c) {
	double t_0 = sqrt(((b * b) - ((4.0 * a) * c)));
	double tmp;
	if (b >= 0.0) {
		tmp = (-b - t_0) / (2.0 * a);
	} else {
		tmp = (2.0 * c) / (-b + t_0);
	}
	return tmp;
}
real(8) function code(a, b, c)
    real(8), intent (in) :: a
    real(8), intent (in) :: b
    real(8), intent (in) :: c
    real(8) :: t_0
    real(8) :: tmp
    t_0 = sqrt(((b * b) - ((4.0d0 * a) * c)))
    if (b >= 0.0d0) then
        tmp = (-b - t_0) / (2.0d0 * a)
    else
        tmp = (2.0d0 * c) / (-b + t_0)
    end if
    code = tmp
end function
public static double code(double a, double b, double c) {
	double t_0 = Math.sqrt(((b * b) - ((4.0 * a) * c)));
	double tmp;
	if (b >= 0.0) {
		tmp = (-b - t_0) / (2.0 * a);
	} else {
		tmp = (2.0 * c) / (-b + t_0);
	}
	return tmp;
}
def code(a, b, c):
	t_0 = math.sqrt(((b * b) - ((4.0 * a) * c)))
	tmp = 0
	if b >= 0.0:
		tmp = (-b - t_0) / (2.0 * a)
	else:
		tmp = (2.0 * c) / (-b + t_0)
	return tmp
function code(a, b, c)
	t_0 = sqrt(Float64(Float64(b * b) - Float64(Float64(4.0 * a) * c)))
	tmp = 0.0
	if (b >= 0.0)
		tmp = Float64(Float64(Float64(-b) - t_0) / Float64(2.0 * a));
	else
		tmp = Float64(Float64(2.0 * c) / Float64(Float64(-b) + t_0));
	end
	return tmp
end
function tmp_2 = code(a, b, c)
	t_0 = sqrt(((b * b) - ((4.0 * a) * c)));
	tmp = 0.0;
	if (b >= 0.0)
		tmp = (-b - t_0) / (2.0 * a);
	else
		tmp = (2.0 * c) / (-b + t_0);
	end
	tmp_2 = tmp;
end
code[a_, b_, c_] := Block[{t$95$0 = N[Sqrt[N[(N[(b * b), $MachinePrecision] - N[(N[(4.0 * a), $MachinePrecision] * c), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]}, If[GreaterEqual[b, 0.0], N[(N[((-b) - t$95$0), $MachinePrecision] / N[(2.0 * a), $MachinePrecision]), $MachinePrecision], N[(N[(2.0 * c), $MachinePrecision] / N[((-b) + t$95$0), $MachinePrecision]), $MachinePrecision]]]
\begin{array}{l}

\\
\begin{array}{l}
t_0 := \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}\\
\mathbf{if}\;b \geq 0:\\
\;\;\;\;\frac{\left(-b\right) - t\_0}{2 \cdot a}\\

\mathbf{else}:\\
\;\;\;\;\frac{2 \cdot c}{\left(-b\right) + t\_0}\\


\end{array}
\end{array}

Sampling outcomes in binary64 precision:

Local Percentage Accuracy vs ?

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

Accuracy vs Speed?

Herbie found 13 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: 71.9% accurate, 1.0× speedup?

\[\begin{array}{l} \\ \begin{array}{l} t_0 := \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}\\ \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - t\_0}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + t\_0}\\ \end{array} \end{array} \]
(FPCore (a b c)
 :precision binary64
 (let* ((t_0 (sqrt (- (* b b) (* (* 4.0 a) c)))))
   (if (>= b 0.0) (/ (- (- b) t_0) (* 2.0 a)) (/ (* 2.0 c) (+ (- b) t_0)))))
double code(double a, double b, double c) {
	double t_0 = sqrt(((b * b) - ((4.0 * a) * c)));
	double tmp;
	if (b >= 0.0) {
		tmp = (-b - t_0) / (2.0 * a);
	} else {
		tmp = (2.0 * c) / (-b + t_0);
	}
	return tmp;
}
real(8) function code(a, b, c)
    real(8), intent (in) :: a
    real(8), intent (in) :: b
    real(8), intent (in) :: c
    real(8) :: t_0
    real(8) :: tmp
    t_0 = sqrt(((b * b) - ((4.0d0 * a) * c)))
    if (b >= 0.0d0) then
        tmp = (-b - t_0) / (2.0d0 * a)
    else
        tmp = (2.0d0 * c) / (-b + t_0)
    end if
    code = tmp
end function
public static double code(double a, double b, double c) {
	double t_0 = Math.sqrt(((b * b) - ((4.0 * a) * c)));
	double tmp;
	if (b >= 0.0) {
		tmp = (-b - t_0) / (2.0 * a);
	} else {
		tmp = (2.0 * c) / (-b + t_0);
	}
	return tmp;
}
def code(a, b, c):
	t_0 = math.sqrt(((b * b) - ((4.0 * a) * c)))
	tmp = 0
	if b >= 0.0:
		tmp = (-b - t_0) / (2.0 * a)
	else:
		tmp = (2.0 * c) / (-b + t_0)
	return tmp
function code(a, b, c)
	t_0 = sqrt(Float64(Float64(b * b) - Float64(Float64(4.0 * a) * c)))
	tmp = 0.0
	if (b >= 0.0)
		tmp = Float64(Float64(Float64(-b) - t_0) / Float64(2.0 * a));
	else
		tmp = Float64(Float64(2.0 * c) / Float64(Float64(-b) + t_0));
	end
	return tmp
end
function tmp_2 = code(a, b, c)
	t_0 = sqrt(((b * b) - ((4.0 * a) * c)));
	tmp = 0.0;
	if (b >= 0.0)
		tmp = (-b - t_0) / (2.0 * a);
	else
		tmp = (2.0 * c) / (-b + t_0);
	end
	tmp_2 = tmp;
end
code[a_, b_, c_] := Block[{t$95$0 = N[Sqrt[N[(N[(b * b), $MachinePrecision] - N[(N[(4.0 * a), $MachinePrecision] * c), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]}, If[GreaterEqual[b, 0.0], N[(N[((-b) - t$95$0), $MachinePrecision] / N[(2.0 * a), $MachinePrecision]), $MachinePrecision], N[(N[(2.0 * c), $MachinePrecision] / N[((-b) + t$95$0), $MachinePrecision]), $MachinePrecision]]]
\begin{array}{l}

\\
\begin{array}{l}
t_0 := \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}\\
\mathbf{if}\;b \geq 0:\\
\;\;\;\;\frac{\left(-b\right) - t\_0}{2 \cdot a}\\

\mathbf{else}:\\
\;\;\;\;\frac{2 \cdot c}{\left(-b\right) + t\_0}\\


\end{array}
\end{array}

Alternative 1: 90.8% accurate, 0.7× speedup?

\[\begin{array}{l} \\ \begin{array}{l} t_0 := \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}\\ t_1 := \frac{\left(-b\right) - t\_0}{a \cdot 2}\\ \mathbf{if}\;b \leq -1 \cdot 10^{+139}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;t\_1\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot 2}{\left|b\right| \cdot \sqrt{\mathsf{fma}\left(\frac{c}{b \cdot b}, a \cdot -4, 1\right)} - b}\\ \end{array}\\ \mathbf{elif}\;b \leq 1.55 \cdot 10^{+90}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;t\_1\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot 2}{t\_0 - b}\\ \end{array}\\ \mathbf{elif}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - b}{a \cdot 2}\\ \mathbf{else}:\\ \;\;\;\;-\frac{c}{b + b}\\ \end{array} \end{array} \]
(FPCore (a b c)
 :precision binary64
 (let* ((t_0 (sqrt (- (* b b) (* (* 4.0 a) c))))
        (t_1 (/ (- (- b) t_0) (* a 2.0))))
   (if (<= b -1e+139)
     (if (>= b 0.0)
       t_1
       (/
        (* c 2.0)
        (- (* (fabs b) (sqrt (fma (/ c (* b b)) (* a -4.0) 1.0))) b)))
     (if (<= b 1.55e+90)
       (if (>= b 0.0) t_1 (/ (* c 2.0) (- t_0 b)))
       (if (>= b 0.0) (/ (- (- b) b) (* a 2.0)) (- (/ c (+ b b))))))))
double code(double a, double b, double c) {
	double t_0 = sqrt(((b * b) - ((4.0 * a) * c)));
	double t_1 = (-b - t_0) / (a * 2.0);
	double tmp_1;
	if (b <= -1e+139) {
		double tmp_2;
		if (b >= 0.0) {
			tmp_2 = t_1;
		} else {
			tmp_2 = (c * 2.0) / ((fabs(b) * sqrt(fma((c / (b * b)), (a * -4.0), 1.0))) - b);
		}
		tmp_1 = tmp_2;
	} else if (b <= 1.55e+90) {
		double tmp_3;
		if (b >= 0.0) {
			tmp_3 = t_1;
		} else {
			tmp_3 = (c * 2.0) / (t_0 - b);
		}
		tmp_1 = tmp_3;
	} else if (b >= 0.0) {
		tmp_1 = (-b - b) / (a * 2.0);
	} else {
		tmp_1 = -(c / (b + b));
	}
	return tmp_1;
}
function code(a, b, c)
	t_0 = sqrt(Float64(Float64(b * b) - Float64(Float64(4.0 * a) * c)))
	t_1 = Float64(Float64(Float64(-b) - t_0) / Float64(a * 2.0))
	tmp_1 = 0.0
	if (b <= -1e+139)
		tmp_2 = 0.0
		if (b >= 0.0)
			tmp_2 = t_1;
		else
			tmp_2 = Float64(Float64(c * 2.0) / Float64(Float64(abs(b) * sqrt(fma(Float64(c / Float64(b * b)), Float64(a * -4.0), 1.0))) - b));
		end
		tmp_1 = tmp_2;
	elseif (b <= 1.55e+90)
		tmp_3 = 0.0
		if (b >= 0.0)
			tmp_3 = t_1;
		else
			tmp_3 = Float64(Float64(c * 2.0) / Float64(t_0 - b));
		end
		tmp_1 = tmp_3;
	elseif (b >= 0.0)
		tmp_1 = Float64(Float64(Float64(-b) - b) / Float64(a * 2.0));
	else
		tmp_1 = Float64(-Float64(c / Float64(b + b)));
	end
	return tmp_1
end
code[a_, b_, c_] := Block[{t$95$0 = N[Sqrt[N[(N[(b * b), $MachinePrecision] - N[(N[(4.0 * a), $MachinePrecision] * c), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]}, Block[{t$95$1 = N[(N[((-b) - t$95$0), $MachinePrecision] / N[(a * 2.0), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[b, -1e+139], If[GreaterEqual[b, 0.0], t$95$1, N[(N[(c * 2.0), $MachinePrecision] / N[(N[(N[Abs[b], $MachinePrecision] * N[Sqrt[N[(N[(c / N[(b * b), $MachinePrecision]), $MachinePrecision] * N[(a * -4.0), $MachinePrecision] + 1.0), $MachinePrecision]], $MachinePrecision]), $MachinePrecision] - b), $MachinePrecision]), $MachinePrecision]], If[LessEqual[b, 1.55e+90], If[GreaterEqual[b, 0.0], t$95$1, N[(N[(c * 2.0), $MachinePrecision] / N[(t$95$0 - b), $MachinePrecision]), $MachinePrecision]], If[GreaterEqual[b, 0.0], N[(N[((-b) - b), $MachinePrecision] / N[(a * 2.0), $MachinePrecision]), $MachinePrecision], (-N[(c / N[(b + b), $MachinePrecision]), $MachinePrecision])]]]]]
\begin{array}{l}

\\
\begin{array}{l}
t_0 := \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}\\
t_1 := \frac{\left(-b\right) - t\_0}{a \cdot 2}\\
\mathbf{if}\;b \leq -1 \cdot 10^{+139}:\\
\;\;\;\;\begin{array}{l}
\mathbf{if}\;b \geq 0:\\
\;\;\;\;t\_1\\

\mathbf{else}:\\
\;\;\;\;\frac{c \cdot 2}{\left|b\right| \cdot \sqrt{\mathsf{fma}\left(\frac{c}{b \cdot b}, a \cdot -4, 1\right)} - b}\\


\end{array}\\

\mathbf{elif}\;b \leq 1.55 \cdot 10^{+90}:\\
\;\;\;\;\begin{array}{l}
\mathbf{if}\;b \geq 0:\\
\;\;\;\;t\_1\\

\mathbf{else}:\\
\;\;\;\;\frac{c \cdot 2}{t\_0 - b}\\


\end{array}\\

\mathbf{elif}\;b \geq 0:\\
\;\;\;\;\frac{\left(-b\right) - b}{a \cdot 2}\\

\mathbf{else}:\\
\;\;\;\;-\frac{c}{b + b}\\


\end{array}
\end{array}
Derivation
  1. Split input into 3 regimes
  2. if b < -1.00000000000000003e139

    1. Initial program 45.2%

      \[\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array} \]
    2. Add Preprocessing
    3. Taylor expanded in b around inf

      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2} \cdot a}\\ \end{array} \]
    4. Step-by-step derivation
      1. *-lowering-*.f64N/A

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2} \cdot a}\\ \end{array} \]
      2. unpow2N/A

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \end{array} \]
      3. *-lowering-*.f64N/A

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \end{array} \]
      4. +-commutativeN/A

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \end{array} \]
      5. *-commutativeN/A

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \end{array} \]
      6. associate-/l*N/A

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \end{array} \]
      7. associate-*l*N/A

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \end{array} \]
      8. accelerator-lowering-fma.f64N/A

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \end{array} \]
      9. *-lowering-*.f64N/A

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \end{array} \]
      10. /-lowering-/.f64N/A

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \end{array} \]
      11. unpow2N/A

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \end{array} \]
      12. *-lowering-*.f6445.4

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{\left(b \cdot b\right) \cdot \mathsf{fma}\left(a, \frac{c}{b \cdot b} \cdot -4, 1\right)}}\\ \end{array} \]
    5. Simplified45.4%

      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right)} + \sqrt{\left(b \cdot b\right) \cdot \mathsf{fma}\left(a, \frac{c}{b \cdot b} \cdot -4, 1\right)}}\\ \end{array} \]
    6. Step-by-step derivation
      1. +-commutativeN/A

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}}\\ \end{array} \]
      2. unsub-negN/A

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}}\\ \end{array} \]
      3. --lowering--.f64N/A

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}}\\ \end{array} \]
      4. sqrt-prodN/A

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}}{2 \cdot a}\\ \end{array} \]
      5. *-lowering-*.f64N/A

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}}{2 \cdot a}\\ \end{array} \]
      6. rem-sqrt-squareN/A

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right)} - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \end{array} \]
      7. fabs-lowering-fabs.f64N/A

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right)} - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \end{array} \]
      8. sqrt-lowering-sqrt.f64N/A

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{\sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}}{2 \cdot a}\\ \end{array} \]
      9. *-commutativeN/A

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\color{blue}{b \cdot b} - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \end{array} \]
      10. associate-*l*N/A

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\color{blue}{b \cdot b} - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \end{array} \]
      11. *-commutativeN/A

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot \color{blue}{b} - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \end{array} \]
      12. accelerator-lowering-fma.f64N/A

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\color{blue}{b \cdot b - \left(4 \cdot a\right) \cdot c}}}{2 \cdot a}\\ \end{array} \]
      13. /-lowering-/.f64N/A

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\color{blue}{b \cdot b} - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \end{array} \]
      14. *-lowering-*.f64N/A

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot \color{blue}{b} - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \end{array} \]
      15. *-lowering-*.f6497.8

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left|b\right| \cdot \sqrt{\mathsf{fma}\left(\frac{c}{b \cdot b}, a \cdot -4, 1\right)} - b}\\ \end{array} \]
    7. Applied egg-rr97.8%

      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{2 \cdot c}{\left|b\right| \cdot \sqrt{\mathsf{fma}\left(\frac{c}{b \cdot b}, a \cdot -4, 1\right)} - b}}\\ \end{array} \]

    if -1.00000000000000003e139 < b < 1.54999999999999994e90

    1. Initial program 87.9%

      \[\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array} \]
    2. Add Preprocessing

    if 1.54999999999999994e90 < b

    1. Initial program 60.3%

      \[\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array} \]
    2. Add Preprocessing
    3. Taylor expanded in b around -inf

      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
    4. Step-by-step derivation
      1. mul-1-negN/A

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
      2. neg-lowering-neg.f6460.3

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
    5. Simplified60.3%

      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
    6. Taylor expanded in b around inf

      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
    7. Step-by-step derivation
      1. Simplified98.4%

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \color{blue}{b}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \left(-b\right)}\\ \end{array} \]
      2. Step-by-step derivation
        1. clear-numN/A

          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
        2. sub-negN/A

          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
        3. associate-/r*N/A

          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
        4. sub-negN/A

          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right)} - b}{2 \cdot a}\\ \end{array} \]
        5. flip-+N/A

          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right)} - b}{2 \cdot a}\\ \end{array} \]
        6. +-inversesN/A

          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
        7. associate-/l/N/A

          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
        8. metadata-evalN/A

          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \end{array} \]
        9. +-inversesN/A

          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \end{array} \]
        10. flip-+N/A

          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
        11. sub-negN/A

          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
        12. clear-numN/A

          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
        13. frac-2negN/A

          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
        14. sub-negN/A

          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
        15. flip-+N/A

          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
        16. +-inversesN/A

          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \end{array} \]
      3. Applied egg-rr98.4%

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{-c}{b + b}\\ \end{array} \]
    8. Recombined 3 regimes into one program.
    9. Final simplification91.8%

      \[\leadsto \begin{array}{l} \mathbf{if}\;b \leq -1 \cdot 10^{+139}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{a \cdot 2}\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot 2}{\left|b\right| \cdot \sqrt{\mathsf{fma}\left(\frac{c}{b \cdot b}, a \cdot -4, 1\right)} - b}\\ \end{array}\\ \mathbf{elif}\;b \leq 1.55 \cdot 10^{+90}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{a \cdot 2}\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot 2}{\sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c} - b}\\ \end{array}\\ \mathbf{elif}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - b}{a \cdot 2}\\ \mathbf{else}:\\ \;\;\;\;-\frac{c}{b + b}\\ \end{array} \]
    10. Add Preprocessing

    Alternative 2: 90.6% accurate, 0.8× speedup?

    \[\begin{array}{l} \\ \begin{array}{l} t_0 := \sqrt{\mathsf{fma}\left(a, c \cdot -4, b \cdot b\right)}\\ t_1 := \left(-b\right) - b\\ t_2 := \frac{t\_1}{a \cdot 2}\\ \mathbf{if}\;b \leq -2 \cdot 10^{+153}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;t\_2\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot -2}{b + b}\\ \end{array}\\ \mathbf{elif}\;b \leq -5 \cdot 10^{-311}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot 2}{t\_0 - b}\\ \end{array}\\ \mathbf{elif}\;b \leq 1.55 \cdot 10^{+90}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{0.5}{a} \cdot \left(\left(-b\right) - t\_0\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot 2}{t\_1}\\ \end{array}\\ \mathbf{elif}\;b \geq 0:\\ \;\;\;\;t\_2\\ \mathbf{else}:\\ \;\;\;\;-\frac{c}{b + b}\\ \end{array} \end{array} \]
    (FPCore (a b c)
     :precision binary64
     (let* ((t_0 (sqrt (fma a (* c -4.0) (* b b))))
            (t_1 (- (- b) b))
            (t_2 (/ t_1 (* a 2.0))))
       (if (<= b -2e+153)
         (if (>= b 0.0) t_2 (/ (* c -2.0) (+ b b)))
         (if (<= b -5e-311)
           (if (>= b 0.0)
             (* b (+ (/ c (* b b)) (/ -1.0 a)))
             (/ (* c 2.0) (- t_0 b)))
           (if (<= b 1.55e+90)
             (if (>= b 0.0) (* (/ 0.5 a) (- (- b) t_0)) (/ (* c 2.0) t_1))
             (if (>= b 0.0) t_2 (- (/ c (+ b b)))))))))
    double code(double a, double b, double c) {
    	double t_0 = sqrt(fma(a, (c * -4.0), (b * b)));
    	double t_1 = -b - b;
    	double t_2 = t_1 / (a * 2.0);
    	double tmp_1;
    	if (b <= -2e+153) {
    		double tmp_2;
    		if (b >= 0.0) {
    			tmp_2 = t_2;
    		} else {
    			tmp_2 = (c * -2.0) / (b + b);
    		}
    		tmp_1 = tmp_2;
    	} else if (b <= -5e-311) {
    		double tmp_3;
    		if (b >= 0.0) {
    			tmp_3 = b * ((c / (b * b)) + (-1.0 / a));
    		} else {
    			tmp_3 = (c * 2.0) / (t_0 - b);
    		}
    		tmp_1 = tmp_3;
    	} else if (b <= 1.55e+90) {
    		double tmp_4;
    		if (b >= 0.0) {
    			tmp_4 = (0.5 / a) * (-b - t_0);
    		} else {
    			tmp_4 = (c * 2.0) / t_1;
    		}
    		tmp_1 = tmp_4;
    	} else if (b >= 0.0) {
    		tmp_1 = t_2;
    	} else {
    		tmp_1 = -(c / (b + b));
    	}
    	return tmp_1;
    }
    
    function code(a, b, c)
    	t_0 = sqrt(fma(a, Float64(c * -4.0), Float64(b * b)))
    	t_1 = Float64(Float64(-b) - b)
    	t_2 = Float64(t_1 / Float64(a * 2.0))
    	tmp_1 = 0.0
    	if (b <= -2e+153)
    		tmp_2 = 0.0
    		if (b >= 0.0)
    			tmp_2 = t_2;
    		else
    			tmp_2 = Float64(Float64(c * -2.0) / Float64(b + b));
    		end
    		tmp_1 = tmp_2;
    	elseif (b <= -5e-311)
    		tmp_3 = 0.0
    		if (b >= 0.0)
    			tmp_3 = Float64(b * Float64(Float64(c / Float64(b * b)) + Float64(-1.0 / a)));
    		else
    			tmp_3 = Float64(Float64(c * 2.0) / Float64(t_0 - b));
    		end
    		tmp_1 = tmp_3;
    	elseif (b <= 1.55e+90)
    		tmp_4 = 0.0
    		if (b >= 0.0)
    			tmp_4 = Float64(Float64(0.5 / a) * Float64(Float64(-b) - t_0));
    		else
    			tmp_4 = Float64(Float64(c * 2.0) / t_1);
    		end
    		tmp_1 = tmp_4;
    	elseif (b >= 0.0)
    		tmp_1 = t_2;
    	else
    		tmp_1 = Float64(-Float64(c / Float64(b + b)));
    	end
    	return tmp_1
    end
    
    code[a_, b_, c_] := Block[{t$95$0 = N[Sqrt[N[(a * N[(c * -4.0), $MachinePrecision] + N[(b * b), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]}, Block[{t$95$1 = N[((-b) - b), $MachinePrecision]}, Block[{t$95$2 = N[(t$95$1 / N[(a * 2.0), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[b, -2e+153], If[GreaterEqual[b, 0.0], t$95$2, N[(N[(c * -2.0), $MachinePrecision] / N[(b + b), $MachinePrecision]), $MachinePrecision]], If[LessEqual[b, -5e-311], If[GreaterEqual[b, 0.0], N[(b * N[(N[(c / N[(b * b), $MachinePrecision]), $MachinePrecision] + N[(-1.0 / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(N[(c * 2.0), $MachinePrecision] / N[(t$95$0 - b), $MachinePrecision]), $MachinePrecision]], If[LessEqual[b, 1.55e+90], If[GreaterEqual[b, 0.0], N[(N[(0.5 / a), $MachinePrecision] * N[((-b) - t$95$0), $MachinePrecision]), $MachinePrecision], N[(N[(c * 2.0), $MachinePrecision] / t$95$1), $MachinePrecision]], If[GreaterEqual[b, 0.0], t$95$2, (-N[(c / N[(b + b), $MachinePrecision]), $MachinePrecision])]]]]]]]
    
    \begin{array}{l}
    
    \\
    \begin{array}{l}
    t_0 := \sqrt{\mathsf{fma}\left(a, c \cdot -4, b \cdot b\right)}\\
    t_1 := \left(-b\right) - b\\
    t_2 := \frac{t\_1}{a \cdot 2}\\
    \mathbf{if}\;b \leq -2 \cdot 10^{+153}:\\
    \;\;\;\;\begin{array}{l}
    \mathbf{if}\;b \geq 0:\\
    \;\;\;\;t\_2\\
    
    \mathbf{else}:\\
    \;\;\;\;\frac{c \cdot -2}{b + b}\\
    
    
    \end{array}\\
    
    \mathbf{elif}\;b \leq -5 \cdot 10^{-311}:\\
    \;\;\;\;\begin{array}{l}
    \mathbf{if}\;b \geq 0:\\
    \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\
    
    \mathbf{else}:\\
    \;\;\;\;\frac{c \cdot 2}{t\_0 - b}\\
    
    
    \end{array}\\
    
    \mathbf{elif}\;b \leq 1.55 \cdot 10^{+90}:\\
    \;\;\;\;\begin{array}{l}
    \mathbf{if}\;b \geq 0:\\
    \;\;\;\;\frac{0.5}{a} \cdot \left(\left(-b\right) - t\_0\right)\\
    
    \mathbf{else}:\\
    \;\;\;\;\frac{c \cdot 2}{t\_1}\\
    
    
    \end{array}\\
    
    \mathbf{elif}\;b \geq 0:\\
    \;\;\;\;t\_2\\
    
    \mathbf{else}:\\
    \;\;\;\;-\frac{c}{b + b}\\
    
    
    \end{array}
    \end{array}
    
    Derivation
    1. Split input into 4 regimes
    2. if b < -2e153

      1. Initial program 42.2%

        \[\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array} \]
      2. Add Preprocessing
      3. Taylor expanded in b around -inf

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
      4. Step-by-step derivation
        1. mul-1-negN/A

          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
        2. neg-lowering-neg.f6497.7

          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
      5. Simplified97.7%

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
      6. Taylor expanded in b around inf

        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
      7. Step-by-step derivation
        1. Simplified97.7%

          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \color{blue}{b}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \left(-b\right)}\\ \end{array} \]
        2. Step-by-step derivation
          1. frac-2negN/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
          2. flip-+N/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
          3. +-inversesN/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \end{array} \]
          4. distribute-neg-frac2N/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
          5. metadata-evalN/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{\color{blue}{2 \cdot a}}\\ \end{array} \]
          6. +-inversesN/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{\color{blue}{2 \cdot a}}\\ \end{array} \]
          7. flip-+N/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
          8. sub-negN/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
          9. /-lowering-/.f64N/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
          10. *-commutativeN/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
          11. distribute-rgt-neg-inN/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
          12. *-lowering-*.f64N/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
          13. metadata-evalN/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
          14. sub-negN/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
          15. flip-+N/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
          16. +-inversesN/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{\color{blue}{2 \cdot a}}\\ \end{array} \]
          17. metadata-evalN/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{\color{blue}{2 \cdot a}}\\ \end{array} \]
          18. distribute-neg-frac2N/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
        3. Applied egg-rr97.7%

          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot -2}{b + b}\\ \end{array} \]

        if -2e153 < b < -5.00000000000023e-311

        1. Initial program 83.2%

          \[\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array} \]
        2. Add Preprocessing
        3. Taylor expanded in b around inf

          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{b \cdot \left(\frac{c}{{b}^{2}} - \frac{1}{a}\right)}\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{{b}^{2}} - \frac{1}{a}\right)\\ \end{array} \]
        4. Step-by-step derivation
          1. *-lowering-*.f64N/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{b \cdot \left(\frac{c}{{b}^{2}} - \frac{1}{a}\right)}\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{{b}^{2}} - \frac{1}{a}\right)\\ \end{array} \]
          2. sub-negN/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \color{blue}{\left(\frac{c}{{b}^{2}} + \left(\mathsf{neg}\left(\frac{1}{a}\right)\right)\right)}\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{{b}^{2}} + \left(\mathsf{neg}\left(\frac{1}{a}\right)\right)\right)\\ \end{array} \]
          3. +-lowering-+.f64N/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \color{blue}{\left(\frac{c}{{b}^{2}} + \left(\mathsf{neg}\left(\frac{1}{a}\right)\right)\right)}\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{{b}^{2}} + \left(\mathsf{neg}\left(\frac{1}{a}\right)\right)\right)\\ \end{array} \]
          4. /-lowering-/.f64N/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\color{blue}{\frac{c}{{b}^{2}}} + \left(\mathsf{neg}\left(\frac{1}{a}\right)\right)\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{{b}^{2}} + \left(\mathsf{neg}\left(\frac{1}{a}\right)\right)\right)\\ \end{array} \]
          5. unpow2N/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{\color{blue}{b \cdot b}} + \left(\mathsf{neg}\left(\frac{1}{a}\right)\right)\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \left(\mathsf{neg}\left(\frac{1}{a}\right)\right)\right)\\ \end{array} \]
          6. *-lowering-*.f64N/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{\color{blue}{b \cdot b}} + \left(\mathsf{neg}\left(\frac{1}{a}\right)\right)\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \left(\mathsf{neg}\left(\frac{1}{a}\right)\right)\right)\\ \end{array} \]
          7. distribute-neg-fracN/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \color{blue}{\frac{\mathsf{neg}\left(1\right)}{a}}\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{\mathsf{neg}\left(1\right)}{a}\right)\\ \end{array} \]
          8. metadata-evalN/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{\color{blue}{-1}}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \end{array} \]
          9. /-lowering-/.f6483.2

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \color{blue}{\frac{-1}{a}}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array} \]
        5. Simplified83.2%

          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array} \]
        6. Step-by-step derivation
          1. +-commutativeN/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)}\\ \end{array} \]
          2. unsub-negN/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)}\\ \end{array} \]
          3. --lowering--.f64N/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)}\\ \end{array} \]
          4. sqrt-lowering-sqrt.f64N/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{b} \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \end{array} \]
          5. associate-*l*N/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \end{array} \]
          6. cancel-sign-sub-invN/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \end{array} \]
          7. metadata-evalN/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \end{array} \]
          8. *-commutativeN/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \end{array} \]
          9. associate-*l*N/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \end{array} \]
          10. *-commutativeN/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \end{array} \]
          11. +-commutativeN/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \end{array} \]
          12. accelerator-lowering-fma.f64N/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \end{array} \]
          13. *-commutativeN/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \end{array} \]
          14. *-lowering-*.f64N/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \end{array} \]
          15. *-lowering-*.f6483.2

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\sqrt{\mathsf{fma}\left(a, c \cdot -4, b \cdot b\right)} - b}\\ \end{array} \]
        7. Applied egg-rr83.2%

          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{2 \cdot c}{\sqrt{\mathsf{fma}\left(a, c \cdot -4, b \cdot b\right)} - b}}\\ \end{array} \]

        if -5.00000000000023e-311 < b < 1.54999999999999994e90

        1. Initial program 92.4%

          \[\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array} \]
        2. Add Preprocessing
        3. Taylor expanded in b around -inf

          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
        4. Step-by-step derivation
          1. mul-1-negN/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
          2. neg-lowering-neg.f6492.4

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
        5. Simplified92.4%

          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
        6. Step-by-step derivation
          1. clear-numN/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{\frac{1}{\frac{2 \cdot a}{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}}}\\ \mathbf{else}:\\ \;\;\;\;\frac{1}{\frac{2 \cdot a}{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}}\\ \end{array} \]
          2. metadata-evalN/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\color{blue}{\mathsf{neg}\left(-1\right)}}{\frac{2 \cdot a}{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}}\\ \mathbf{else}:\\ \;\;\;\;\frac{\mathsf{neg}\left(-1\right)}{\frac{2 \cdot a}{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}}\\ \end{array} \]
          3. associate-/r/N/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{\frac{\mathsf{neg}\left(-1\right)}{2 \cdot a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{\mathsf{neg}\left(-1\right)}{2 \cdot a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}\right)\\ \end{array} \]
          4. associate-/r*N/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{\frac{\frac{\mathsf{neg}\left(-1\right)}{2}}{a}} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{\mathsf{neg}\left(-1\right)}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}\right)\\ \end{array} \]
          5. metadata-evalN/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\frac{\color{blue}{1}}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}\right)\\ \end{array} \]
          6. metadata-evalN/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\color{blue}{\frac{1}{2}}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}\right)\\ \end{array} \]
          7. *-lowering-*.f64N/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}\right)\\ \end{array} \]
          8. /-lowering-/.f64N/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{\frac{\frac{1}{2}}{a}} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}\right)\\ \end{array} \]
          9. --lowering--.f64N/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \color{blue}{\left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}\right)\\ \end{array} \]
          10. neg-lowering-neg.f64N/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\color{blue}{\left(\mathsf{neg}\left(b\right)\right)} - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}\right)\\ \end{array} \]
          11. sqrt-lowering-sqrt.f64N/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{\sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}\right)\\ \end{array} \]
          12. associate-*l*N/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \color{blue}{4 \cdot \left(a \cdot c\right)}}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - 4 \cdot \left(a \cdot c\right)}\right)\\ \end{array} \]
          13. cancel-sign-sub-invN/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\color{blue}{b \cdot b + \left(\mathsf{neg}\left(4\right)\right) \cdot \left(a \cdot c\right)}}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b + \left(\mathsf{neg}\left(4\right)\right) \cdot \left(a \cdot c\right)}\right)\\ \end{array} \]
          14. metadata-evalN/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b + \color{blue}{-4} \cdot \left(a \cdot c\right)}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b + -4 \cdot \left(a \cdot c\right)}\right)\\ \end{array} \]
          15. *-commutativeN/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b + -4 \cdot \color{blue}{\left(c \cdot a\right)}}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b + -4 \cdot \left(c \cdot a\right)}\right)\\ \end{array} \]
          16. associate-*l*N/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b + \color{blue}{\left(-4 \cdot c\right) \cdot a}}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b + \left(-4 \cdot c\right) \cdot a}\right)\\ \end{array} \]
          17. *-commutativeN/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b + \color{blue}{a \cdot \left(-4 \cdot c\right)}}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b + a \cdot \left(-4 \cdot c\right)}\right)\\ \end{array} \]
          18. +-commutativeN/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\color{blue}{a \cdot \left(-4 \cdot c\right) + b \cdot b}}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{a \cdot \left(-4 \cdot c\right) + b \cdot b}\right)\\ \end{array} \]
          19. accelerator-lowering-fma.f64N/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\color{blue}{\mathsf{fma}\left(a, -4 \cdot c, b \cdot b\right)}}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\mathsf{fma}\left(a, -4 \cdot c, b \cdot b\right)}\right)\\ \end{array} \]
          20. *-commutativeN/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\mathsf{fma}\left(a, \color{blue}{c \cdot -4}, b \cdot b\right)}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\mathsf{fma}\left(a, c \cdot -4, b \cdot b\right)}\right)\\ \end{array} \]
          21. *-lowering-*.f64N/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\mathsf{fma}\left(a, \color{blue}{c \cdot -4}, b \cdot b\right)}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\mathsf{fma}\left(a, c \cdot -4, b \cdot b\right)}\right)\\ \end{array} \]
          22. *-lowering-*.f6492.3

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{0.5}{a} \cdot \left(\left(-b\right) - \sqrt{\mathsf{fma}\left(a, c \cdot -4, \color{blue}{b \cdot b}\right)}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \left(-b\right)}\\ \end{array} \]
        7. Applied egg-rr92.3%

          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{\frac{0.5}{a} \cdot \left(\left(-b\right) - \sqrt{\mathsf{fma}\left(a, c \cdot -4, b \cdot b\right)}\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \left(-b\right)}\\ \end{array} \]

        if 1.54999999999999994e90 < b

        1. Initial program 60.3%

          \[\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array} \]
        2. Add Preprocessing
        3. Taylor expanded in b around -inf

          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
        4. Step-by-step derivation
          1. mul-1-negN/A

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
          2. neg-lowering-neg.f6460.3

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
        5. Simplified60.3%

          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
        6. Taylor expanded in b around inf

          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
        7. Step-by-step derivation
          1. Simplified98.4%

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \color{blue}{b}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \left(-b\right)}\\ \end{array} \]
          2. Step-by-step derivation
            1. clear-numN/A

              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
            2. sub-negN/A

              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
            3. associate-/r*N/A

              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
            4. sub-negN/A

              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right)} - b}{2 \cdot a}\\ \end{array} \]
            5. flip-+N/A

              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right)} - b}{2 \cdot a}\\ \end{array} \]
            6. +-inversesN/A

              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
            7. associate-/l/N/A

              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
            8. metadata-evalN/A

              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \end{array} \]
            9. +-inversesN/A

              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \end{array} \]
            10. flip-+N/A

              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
            11. sub-negN/A

              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
            12. clear-numN/A

              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
            13. frac-2negN/A

              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
            14. sub-negN/A

              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
            15. flip-+N/A

              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
            16. +-inversesN/A

              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \end{array} \]
          3. Applied egg-rr98.4%

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{-c}{b + b}\\ \end{array} \]
        8. Recombined 4 regimes into one program.
        9. Final simplification91.4%

          \[\leadsto \begin{array}{l} \mathbf{if}\;b \leq -2 \cdot 10^{+153}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - b}{a \cdot 2}\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot -2}{b + b}\\ \end{array}\\ \mathbf{elif}\;b \leq -5 \cdot 10^{-311}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot 2}{\sqrt{\mathsf{fma}\left(a, c \cdot -4, b \cdot b\right)} - b}\\ \end{array}\\ \mathbf{elif}\;b \leq 1.55 \cdot 10^{+90}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{0.5}{a} \cdot \left(\left(-b\right) - \sqrt{\mathsf{fma}\left(a, c \cdot -4, b \cdot b\right)}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot 2}{\left(-b\right) - b}\\ \end{array}\\ \mathbf{elif}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - b}{a \cdot 2}\\ \mathbf{else}:\\ \;\;\;\;-\frac{c}{b + b}\\ \end{array} \]
        10. Add Preprocessing

        Alternative 3: 90.7% accurate, 0.8× speedup?

        \[\begin{array}{l} \\ \begin{array}{l} t_0 := \frac{\left(-b\right) - b}{a \cdot 2}\\ t_1 := \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}\\ \mathbf{if}\;b \leq -3.3 \cdot 10^{+153}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;t\_0\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot -2}{b + b}\\ \end{array}\\ \mathbf{elif}\;b \leq 1.55 \cdot 10^{+90}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - t\_1}{a \cdot 2}\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot 2}{t\_1 - b}\\ \end{array}\\ \mathbf{elif}\;b \geq 0:\\ \;\;\;\;t\_0\\ \mathbf{else}:\\ \;\;\;\;-\frac{c}{b + b}\\ \end{array} \end{array} \]
        (FPCore (a b c)
         :precision binary64
         (let* ((t_0 (/ (- (- b) b) (* a 2.0)))
                (t_1 (sqrt (- (* b b) (* (* 4.0 a) c)))))
           (if (<= b -3.3e+153)
             (if (>= b 0.0) t_0 (/ (* c -2.0) (+ b b)))
             (if (<= b 1.55e+90)
               (if (>= b 0.0) (/ (- (- b) t_1) (* a 2.0)) (/ (* c 2.0) (- t_1 b)))
               (if (>= b 0.0) t_0 (- (/ c (+ b b))))))))
        double code(double a, double b, double c) {
        	double t_0 = (-b - b) / (a * 2.0);
        	double t_1 = sqrt(((b * b) - ((4.0 * a) * c)));
        	double tmp_1;
        	if (b <= -3.3e+153) {
        		double tmp_2;
        		if (b >= 0.0) {
        			tmp_2 = t_0;
        		} else {
        			tmp_2 = (c * -2.0) / (b + b);
        		}
        		tmp_1 = tmp_2;
        	} else if (b <= 1.55e+90) {
        		double tmp_3;
        		if (b >= 0.0) {
        			tmp_3 = (-b - t_1) / (a * 2.0);
        		} else {
        			tmp_3 = (c * 2.0) / (t_1 - b);
        		}
        		tmp_1 = tmp_3;
        	} else if (b >= 0.0) {
        		tmp_1 = t_0;
        	} else {
        		tmp_1 = -(c / (b + b));
        	}
        	return tmp_1;
        }
        
        real(8) function code(a, b, c)
            real(8), intent (in) :: a
            real(8), intent (in) :: b
            real(8), intent (in) :: c
            real(8) :: t_0
            real(8) :: t_1
            real(8) :: tmp
            real(8) :: tmp_1
            real(8) :: tmp_2
            real(8) :: tmp_3
            t_0 = (-b - b) / (a * 2.0d0)
            t_1 = sqrt(((b * b) - ((4.0d0 * a) * c)))
            if (b <= (-3.3d+153)) then
                if (b >= 0.0d0) then
                    tmp_2 = t_0
                else
                    tmp_2 = (c * (-2.0d0)) / (b + b)
                end if
                tmp_1 = tmp_2
            else if (b <= 1.55d+90) then
                if (b >= 0.0d0) then
                    tmp_3 = (-b - t_1) / (a * 2.0d0)
                else
                    tmp_3 = (c * 2.0d0) / (t_1 - b)
                end if
                tmp_1 = tmp_3
            else if (b >= 0.0d0) then
                tmp_1 = t_0
            else
                tmp_1 = -(c / (b + b))
            end if
            code = tmp_1
        end function
        
        public static double code(double a, double b, double c) {
        	double t_0 = (-b - b) / (a * 2.0);
        	double t_1 = Math.sqrt(((b * b) - ((4.0 * a) * c)));
        	double tmp_1;
        	if (b <= -3.3e+153) {
        		double tmp_2;
        		if (b >= 0.0) {
        			tmp_2 = t_0;
        		} else {
        			tmp_2 = (c * -2.0) / (b + b);
        		}
        		tmp_1 = tmp_2;
        	} else if (b <= 1.55e+90) {
        		double tmp_3;
        		if (b >= 0.0) {
        			tmp_3 = (-b - t_1) / (a * 2.0);
        		} else {
        			tmp_3 = (c * 2.0) / (t_1 - b);
        		}
        		tmp_1 = tmp_3;
        	} else if (b >= 0.0) {
        		tmp_1 = t_0;
        	} else {
        		tmp_1 = -(c / (b + b));
        	}
        	return tmp_1;
        }
        
        def code(a, b, c):
        	t_0 = (-b - b) / (a * 2.0)
        	t_1 = math.sqrt(((b * b) - ((4.0 * a) * c)))
        	tmp_1 = 0
        	if b <= -3.3e+153:
        		tmp_2 = 0
        		if b >= 0.0:
        			tmp_2 = t_0
        		else:
        			tmp_2 = (c * -2.0) / (b + b)
        		tmp_1 = tmp_2
        	elif b <= 1.55e+90:
        		tmp_3 = 0
        		if b >= 0.0:
        			tmp_3 = (-b - t_1) / (a * 2.0)
        		else:
        			tmp_3 = (c * 2.0) / (t_1 - b)
        		tmp_1 = tmp_3
        	elif b >= 0.0:
        		tmp_1 = t_0
        	else:
        		tmp_1 = -(c / (b + b))
        	return tmp_1
        
        function code(a, b, c)
        	t_0 = Float64(Float64(Float64(-b) - b) / Float64(a * 2.0))
        	t_1 = sqrt(Float64(Float64(b * b) - Float64(Float64(4.0 * a) * c)))
        	tmp_1 = 0.0
        	if (b <= -3.3e+153)
        		tmp_2 = 0.0
        		if (b >= 0.0)
        			tmp_2 = t_0;
        		else
        			tmp_2 = Float64(Float64(c * -2.0) / Float64(b + b));
        		end
        		tmp_1 = tmp_2;
        	elseif (b <= 1.55e+90)
        		tmp_3 = 0.0
        		if (b >= 0.0)
        			tmp_3 = Float64(Float64(Float64(-b) - t_1) / Float64(a * 2.0));
        		else
        			tmp_3 = Float64(Float64(c * 2.0) / Float64(t_1 - b));
        		end
        		tmp_1 = tmp_3;
        	elseif (b >= 0.0)
        		tmp_1 = t_0;
        	else
        		tmp_1 = Float64(-Float64(c / Float64(b + b)));
        	end
        	return tmp_1
        end
        
        function tmp_5 = code(a, b, c)
        	t_0 = (-b - b) / (a * 2.0);
        	t_1 = sqrt(((b * b) - ((4.0 * a) * c)));
        	tmp_2 = 0.0;
        	if (b <= -3.3e+153)
        		tmp_3 = 0.0;
        		if (b >= 0.0)
        			tmp_3 = t_0;
        		else
        			tmp_3 = (c * -2.0) / (b + b);
        		end
        		tmp_2 = tmp_3;
        	elseif (b <= 1.55e+90)
        		tmp_4 = 0.0;
        		if (b >= 0.0)
        			tmp_4 = (-b - t_1) / (a * 2.0);
        		else
        			tmp_4 = (c * 2.0) / (t_1 - b);
        		end
        		tmp_2 = tmp_4;
        	elseif (b >= 0.0)
        		tmp_2 = t_0;
        	else
        		tmp_2 = -(c / (b + b));
        	end
        	tmp_5 = tmp_2;
        end
        
        code[a_, b_, c_] := Block[{t$95$0 = N[(N[((-b) - b), $MachinePrecision] / N[(a * 2.0), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$1 = N[Sqrt[N[(N[(b * b), $MachinePrecision] - N[(N[(4.0 * a), $MachinePrecision] * c), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]}, If[LessEqual[b, -3.3e+153], If[GreaterEqual[b, 0.0], t$95$0, N[(N[(c * -2.0), $MachinePrecision] / N[(b + b), $MachinePrecision]), $MachinePrecision]], If[LessEqual[b, 1.55e+90], If[GreaterEqual[b, 0.0], N[(N[((-b) - t$95$1), $MachinePrecision] / N[(a * 2.0), $MachinePrecision]), $MachinePrecision], N[(N[(c * 2.0), $MachinePrecision] / N[(t$95$1 - b), $MachinePrecision]), $MachinePrecision]], If[GreaterEqual[b, 0.0], t$95$0, (-N[(c / N[(b + b), $MachinePrecision]), $MachinePrecision])]]]]]
        
        \begin{array}{l}
        
        \\
        \begin{array}{l}
        t_0 := \frac{\left(-b\right) - b}{a \cdot 2}\\
        t_1 := \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}\\
        \mathbf{if}\;b \leq -3.3 \cdot 10^{+153}:\\
        \;\;\;\;\begin{array}{l}
        \mathbf{if}\;b \geq 0:\\
        \;\;\;\;t\_0\\
        
        \mathbf{else}:\\
        \;\;\;\;\frac{c \cdot -2}{b + b}\\
        
        
        \end{array}\\
        
        \mathbf{elif}\;b \leq 1.55 \cdot 10^{+90}:\\
        \;\;\;\;\begin{array}{l}
        \mathbf{if}\;b \geq 0:\\
        \;\;\;\;\frac{\left(-b\right) - t\_1}{a \cdot 2}\\
        
        \mathbf{else}:\\
        \;\;\;\;\frac{c \cdot 2}{t\_1 - b}\\
        
        
        \end{array}\\
        
        \mathbf{elif}\;b \geq 0:\\
        \;\;\;\;t\_0\\
        
        \mathbf{else}:\\
        \;\;\;\;-\frac{c}{b + b}\\
        
        
        \end{array}
        \end{array}
        
        Derivation
        1. Split input into 3 regimes
        2. if b < -3.29999999999999994e153

          1. Initial program 42.2%

            \[\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array} \]
          2. Add Preprocessing
          3. Taylor expanded in b around -inf

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
          4. Step-by-step derivation
            1. mul-1-negN/A

              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
            2. neg-lowering-neg.f6497.7

              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
          5. Simplified97.7%

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
          6. Taylor expanded in b around inf

            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
          7. Step-by-step derivation
            1. Simplified97.7%

              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \color{blue}{b}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \left(-b\right)}\\ \end{array} \]
            2. Step-by-step derivation
              1. frac-2negN/A

                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
              2. flip-+N/A

                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
              3. +-inversesN/A

                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \end{array} \]
              4. distribute-neg-frac2N/A

                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
              5. metadata-evalN/A

                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{\color{blue}{2 \cdot a}}\\ \end{array} \]
              6. +-inversesN/A

                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{\color{blue}{2 \cdot a}}\\ \end{array} \]
              7. flip-+N/A

                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
              8. sub-negN/A

                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
              9. /-lowering-/.f64N/A

                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
              10. *-commutativeN/A

                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
              11. distribute-rgt-neg-inN/A

                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
              12. *-lowering-*.f64N/A

                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
              13. metadata-evalN/A

                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
              14. sub-negN/A

                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
              15. flip-+N/A

                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
              16. +-inversesN/A

                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{\color{blue}{2 \cdot a}}\\ \end{array} \]
              17. metadata-evalN/A

                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{\color{blue}{2 \cdot a}}\\ \end{array} \]
              18. distribute-neg-frac2N/A

                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
            3. Applied egg-rr97.7%

              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot -2}{b + b}\\ \end{array} \]

            if -3.29999999999999994e153 < b < 1.54999999999999994e90

            1. Initial program 87.6%

              \[\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array} \]
            2. Add Preprocessing

            if 1.54999999999999994e90 < b

            1. Initial program 60.3%

              \[\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array} \]
            2. Add Preprocessing
            3. Taylor expanded in b around -inf

              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
            4. Step-by-step derivation
              1. mul-1-negN/A

                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
              2. neg-lowering-neg.f6460.3

                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
            5. Simplified60.3%

              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
            6. Taylor expanded in b around inf

              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
            7. Step-by-step derivation
              1. Simplified98.4%

                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \color{blue}{b}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \left(-b\right)}\\ \end{array} \]
              2. Step-by-step derivation
                1. clear-numN/A

                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                2. sub-negN/A

                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
                3. associate-/r*N/A

                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
                4. sub-negN/A

                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right)} - b}{2 \cdot a}\\ \end{array} \]
                5. flip-+N/A

                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right)} - b}{2 \cdot a}\\ \end{array} \]
                6. +-inversesN/A

                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                7. associate-/l/N/A

                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
                8. metadata-evalN/A

                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \end{array} \]
                9. +-inversesN/A

                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \end{array} \]
                10. flip-+N/A

                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
                11. sub-negN/A

                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
                12. clear-numN/A

                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                13. frac-2negN/A

                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                14. sub-negN/A

                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
                15. flip-+N/A

                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
                16. +-inversesN/A

                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \end{array} \]
              3. Applied egg-rr98.4%

                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{-c}{b + b}\\ \end{array} \]
            8. Recombined 3 regimes into one program.
            9. Final simplification91.4%

              \[\leadsto \begin{array}{l} \mathbf{if}\;b \leq -3.3 \cdot 10^{+153}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - b}{a \cdot 2}\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot -2}{b + b}\\ \end{array}\\ \mathbf{elif}\;b \leq 1.55 \cdot 10^{+90}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{a \cdot 2}\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot 2}{\sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c} - b}\\ \end{array}\\ \mathbf{elif}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - b}{a \cdot 2}\\ \mathbf{else}:\\ \;\;\;\;-\frac{c}{b + b}\\ \end{array} \]
            10. Add Preprocessing

            Alternative 4: 86.3% accurate, 0.8× speedup?

            \[\begin{array}{l} \\ \begin{array}{l} t_0 := \left(-b\right) - b\\ t_1 := \frac{c \cdot 2}{t\_0}\\ \mathbf{if}\;b \leq -2 \cdot 10^{+153}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{t\_0}{a \cdot 2}\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot -2}{b + b}\\ \end{array}\\ \mathbf{elif}\;b \leq -5 \cdot 10^{-311}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot 2}{\sqrt{\mathsf{fma}\left(a, c \cdot -4, b \cdot b\right)} - b}\\ \end{array}\\ \mathbf{elif}\;b \leq 2.6 \cdot 10^{-44}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{0.5}{a} \cdot \left(\left(-b\right) - \sqrt{a \cdot \left(c \cdot -4\right)}\right)\\ \mathbf{else}:\\ \;\;\;\;t\_1\\ \end{array}\\ \mathbf{elif}\;b \geq 0:\\ \;\;\;\;\frac{c}{b} - \frac{b}{a}\\ \mathbf{else}:\\ \;\;\;\;t\_1\\ \end{array} \end{array} \]
            (FPCore (a b c)
             :precision binary64
             (let* ((t_0 (- (- b) b)) (t_1 (/ (* c 2.0) t_0)))
               (if (<= b -2e+153)
                 (if (>= b 0.0) (/ t_0 (* a 2.0)) (/ (* c -2.0) (+ b b)))
                 (if (<= b -5e-311)
                   (if (>= b 0.0)
                     (* b (+ (/ c (* b b)) (/ -1.0 a)))
                     (/ (* c 2.0) (- (sqrt (fma a (* c -4.0) (* b b))) b)))
                   (if (<= b 2.6e-44)
                     (if (>= b 0.0) (* (/ 0.5 a) (- (- b) (sqrt (* a (* c -4.0))))) t_1)
                     (if (>= b 0.0) (- (/ c b) (/ b a)) t_1))))))
            double code(double a, double b, double c) {
            	double t_0 = -b - b;
            	double t_1 = (c * 2.0) / t_0;
            	double tmp_1;
            	if (b <= -2e+153) {
            		double tmp_2;
            		if (b >= 0.0) {
            			tmp_2 = t_0 / (a * 2.0);
            		} else {
            			tmp_2 = (c * -2.0) / (b + b);
            		}
            		tmp_1 = tmp_2;
            	} else if (b <= -5e-311) {
            		double tmp_3;
            		if (b >= 0.0) {
            			tmp_3 = b * ((c / (b * b)) + (-1.0 / a));
            		} else {
            			tmp_3 = (c * 2.0) / (sqrt(fma(a, (c * -4.0), (b * b))) - b);
            		}
            		tmp_1 = tmp_3;
            	} else if (b <= 2.6e-44) {
            		double tmp_4;
            		if (b >= 0.0) {
            			tmp_4 = (0.5 / a) * (-b - sqrt((a * (c * -4.0))));
            		} else {
            			tmp_4 = t_1;
            		}
            		tmp_1 = tmp_4;
            	} else if (b >= 0.0) {
            		tmp_1 = (c / b) - (b / a);
            	} else {
            		tmp_1 = t_1;
            	}
            	return tmp_1;
            }
            
            function code(a, b, c)
            	t_0 = Float64(Float64(-b) - b)
            	t_1 = Float64(Float64(c * 2.0) / t_0)
            	tmp_1 = 0.0
            	if (b <= -2e+153)
            		tmp_2 = 0.0
            		if (b >= 0.0)
            			tmp_2 = Float64(t_0 / Float64(a * 2.0));
            		else
            			tmp_2 = Float64(Float64(c * -2.0) / Float64(b + b));
            		end
            		tmp_1 = tmp_2;
            	elseif (b <= -5e-311)
            		tmp_3 = 0.0
            		if (b >= 0.0)
            			tmp_3 = Float64(b * Float64(Float64(c / Float64(b * b)) + Float64(-1.0 / a)));
            		else
            			tmp_3 = Float64(Float64(c * 2.0) / Float64(sqrt(fma(a, Float64(c * -4.0), Float64(b * b))) - b));
            		end
            		tmp_1 = tmp_3;
            	elseif (b <= 2.6e-44)
            		tmp_4 = 0.0
            		if (b >= 0.0)
            			tmp_4 = Float64(Float64(0.5 / a) * Float64(Float64(-b) - sqrt(Float64(a * Float64(c * -4.0)))));
            		else
            			tmp_4 = t_1;
            		end
            		tmp_1 = tmp_4;
            	elseif (b >= 0.0)
            		tmp_1 = Float64(Float64(c / b) - Float64(b / a));
            	else
            		tmp_1 = t_1;
            	end
            	return tmp_1
            end
            
            code[a_, b_, c_] := Block[{t$95$0 = N[((-b) - b), $MachinePrecision]}, Block[{t$95$1 = N[(N[(c * 2.0), $MachinePrecision] / t$95$0), $MachinePrecision]}, If[LessEqual[b, -2e+153], If[GreaterEqual[b, 0.0], N[(t$95$0 / N[(a * 2.0), $MachinePrecision]), $MachinePrecision], N[(N[(c * -2.0), $MachinePrecision] / N[(b + b), $MachinePrecision]), $MachinePrecision]], If[LessEqual[b, -5e-311], If[GreaterEqual[b, 0.0], N[(b * N[(N[(c / N[(b * b), $MachinePrecision]), $MachinePrecision] + N[(-1.0 / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(N[(c * 2.0), $MachinePrecision] / N[(N[Sqrt[N[(a * N[(c * -4.0), $MachinePrecision] + N[(b * b), $MachinePrecision]), $MachinePrecision]], $MachinePrecision] - b), $MachinePrecision]), $MachinePrecision]], If[LessEqual[b, 2.6e-44], If[GreaterEqual[b, 0.0], N[(N[(0.5 / a), $MachinePrecision] * N[((-b) - N[Sqrt[N[(a * N[(c * -4.0), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision], t$95$1], If[GreaterEqual[b, 0.0], N[(N[(c / b), $MachinePrecision] - N[(b / a), $MachinePrecision]), $MachinePrecision], t$95$1]]]]]]
            
            \begin{array}{l}
            
            \\
            \begin{array}{l}
            t_0 := \left(-b\right) - b\\
            t_1 := \frac{c \cdot 2}{t\_0}\\
            \mathbf{if}\;b \leq -2 \cdot 10^{+153}:\\
            \;\;\;\;\begin{array}{l}
            \mathbf{if}\;b \geq 0:\\
            \;\;\;\;\frac{t\_0}{a \cdot 2}\\
            
            \mathbf{else}:\\
            \;\;\;\;\frac{c \cdot -2}{b + b}\\
            
            
            \end{array}\\
            
            \mathbf{elif}\;b \leq -5 \cdot 10^{-311}:\\
            \;\;\;\;\begin{array}{l}
            \mathbf{if}\;b \geq 0:\\
            \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\
            
            \mathbf{else}:\\
            \;\;\;\;\frac{c \cdot 2}{\sqrt{\mathsf{fma}\left(a, c \cdot -4, b \cdot b\right)} - b}\\
            
            
            \end{array}\\
            
            \mathbf{elif}\;b \leq 2.6 \cdot 10^{-44}:\\
            \;\;\;\;\begin{array}{l}
            \mathbf{if}\;b \geq 0:\\
            \;\;\;\;\frac{0.5}{a} \cdot \left(\left(-b\right) - \sqrt{a \cdot \left(c \cdot -4\right)}\right)\\
            
            \mathbf{else}:\\
            \;\;\;\;t\_1\\
            
            
            \end{array}\\
            
            \mathbf{elif}\;b \geq 0:\\
            \;\;\;\;\frac{c}{b} - \frac{b}{a}\\
            
            \mathbf{else}:\\
            \;\;\;\;t\_1\\
            
            
            \end{array}
            \end{array}
            
            Derivation
            1. Split input into 4 regimes
            2. if b < -2e153

              1. Initial program 42.2%

                \[\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array} \]
              2. Add Preprocessing
              3. Taylor expanded in b around -inf

                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
              4. Step-by-step derivation
                1. mul-1-negN/A

                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                2. neg-lowering-neg.f6497.7

                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
              5. Simplified97.7%

                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
              6. Taylor expanded in b around inf

                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
              7. Step-by-step derivation
                1. Simplified97.7%

                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \color{blue}{b}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \left(-b\right)}\\ \end{array} \]
                2. Step-by-step derivation
                  1. frac-2negN/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                  2. flip-+N/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
                  3. +-inversesN/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \end{array} \]
                  4. distribute-neg-frac2N/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
                  5. metadata-evalN/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                  6. +-inversesN/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                  7. flip-+N/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
                  8. sub-negN/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
                  9. /-lowering-/.f64N/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                  10. *-commutativeN/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                  11. distribute-rgt-neg-inN/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                  12. *-lowering-*.f64N/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                  13. metadata-evalN/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                  14. sub-negN/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
                  15. flip-+N/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
                  16. +-inversesN/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                  17. metadata-evalN/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                  18. distribute-neg-frac2N/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
                3. Applied egg-rr97.7%

                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot -2}{b + b}\\ \end{array} \]

                if -2e153 < b < -5.00000000000023e-311

                1. Initial program 83.2%

                  \[\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array} \]
                2. Add Preprocessing
                3. Taylor expanded in b around inf

                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{b \cdot \left(\frac{c}{{b}^{2}} - \frac{1}{a}\right)}\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{{b}^{2}} - \frac{1}{a}\right)\\ \end{array} \]
                4. Step-by-step derivation
                  1. *-lowering-*.f64N/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{b \cdot \left(\frac{c}{{b}^{2}} - \frac{1}{a}\right)}\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{{b}^{2}} - \frac{1}{a}\right)\\ \end{array} \]
                  2. sub-negN/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \color{blue}{\left(\frac{c}{{b}^{2}} + \left(\mathsf{neg}\left(\frac{1}{a}\right)\right)\right)}\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{{b}^{2}} + \left(\mathsf{neg}\left(\frac{1}{a}\right)\right)\right)\\ \end{array} \]
                  3. +-lowering-+.f64N/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \color{blue}{\left(\frac{c}{{b}^{2}} + \left(\mathsf{neg}\left(\frac{1}{a}\right)\right)\right)}\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{{b}^{2}} + \left(\mathsf{neg}\left(\frac{1}{a}\right)\right)\right)\\ \end{array} \]
                  4. /-lowering-/.f64N/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\color{blue}{\frac{c}{{b}^{2}}} + \left(\mathsf{neg}\left(\frac{1}{a}\right)\right)\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{{b}^{2}} + \left(\mathsf{neg}\left(\frac{1}{a}\right)\right)\right)\\ \end{array} \]
                  5. unpow2N/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{\color{blue}{b \cdot b}} + \left(\mathsf{neg}\left(\frac{1}{a}\right)\right)\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \left(\mathsf{neg}\left(\frac{1}{a}\right)\right)\right)\\ \end{array} \]
                  6. *-lowering-*.f64N/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{\color{blue}{b \cdot b}} + \left(\mathsf{neg}\left(\frac{1}{a}\right)\right)\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \left(\mathsf{neg}\left(\frac{1}{a}\right)\right)\right)\\ \end{array} \]
                  7. distribute-neg-fracN/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \color{blue}{\frac{\mathsf{neg}\left(1\right)}{a}}\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{\mathsf{neg}\left(1\right)}{a}\right)\\ \end{array} \]
                  8. metadata-evalN/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{\color{blue}{-1}}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \end{array} \]
                  9. /-lowering-/.f6483.2

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \color{blue}{\frac{-1}{a}}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array} \]
                5. Simplified83.2%

                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array} \]
                6. Step-by-step derivation
                  1. +-commutativeN/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)}\\ \end{array} \]
                  2. unsub-negN/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)}\\ \end{array} \]
                  3. --lowering--.f64N/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)}\\ \end{array} \]
                  4. sqrt-lowering-sqrt.f64N/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{b} \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \end{array} \]
                  5. associate-*l*N/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \end{array} \]
                  6. cancel-sign-sub-invN/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \end{array} \]
                  7. metadata-evalN/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \end{array} \]
                  8. *-commutativeN/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \end{array} \]
                  9. associate-*l*N/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \end{array} \]
                  10. *-commutativeN/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \end{array} \]
                  11. +-commutativeN/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \end{array} \]
                  12. accelerator-lowering-fma.f64N/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \end{array} \]
                  13. *-commutativeN/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \end{array} \]
                  14. *-lowering-*.f64N/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \end{array} \]
                  15. *-lowering-*.f6483.2

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\sqrt{\mathsf{fma}\left(a, c \cdot -4, b \cdot b\right)} - b}\\ \end{array} \]
                7. Applied egg-rr83.2%

                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{2 \cdot c}{\sqrt{\mathsf{fma}\left(a, c \cdot -4, b \cdot b\right)} - b}}\\ \end{array} \]

                if -5.00000000000023e-311 < b < 2.5999999999999998e-44

                1. Initial program 89.6%

                  \[\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array} \]
                2. Add Preprocessing
                3. Taylor expanded in b around -inf

                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                4. Step-by-step derivation
                  1. mul-1-negN/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                  2. neg-lowering-neg.f6489.6

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
                5. Simplified89.6%

                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
                6. Taylor expanded in b around 0

                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\color{blue}{-4 \cdot \left(a \cdot c\right)}}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{-4 \cdot \left(a \cdot c\right)}}{2 \cdot a}\\ \end{array} \]
                7. Step-by-step derivation
                  1. *-commutativeN/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\color{blue}{\left(a \cdot c\right) \cdot -4}}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\left(a \cdot c\right) \cdot -4}}{2 \cdot a}\\ \end{array} \]
                  2. *-lowering-*.f64N/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\color{blue}{\left(a \cdot c\right) \cdot -4}}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\left(a \cdot c\right) \cdot -4}}{2 \cdot a}\\ \end{array} \]
                  3. *-lowering-*.f6475.8

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{\color{blue}{\left(a \cdot c\right)} \cdot -4}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \left(-b\right)}\\ \end{array} \]
                8. Simplified75.8%

                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{\color{blue}{\left(a \cdot c\right) \cdot -4}}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \left(-b\right)}\\ \end{array} \]
                9. Step-by-step derivation
                  1. clear-numN/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{\frac{1}{\frac{2 \cdot a}{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\left(a \cdot c\right) \cdot -4}}}}\\ \mathbf{else}:\\ \;\;\;\;\frac{1}{\frac{2 \cdot a}{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\left(a \cdot c\right) \cdot -4}}}\\ \end{array} \]
                  2. associate-/r/N/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{\frac{1}{2 \cdot a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\left(a \cdot c\right) \cdot -4}\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{1}{2 \cdot a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\left(a \cdot c\right) \cdot -4}\right)\\ \end{array} \]
                  3. *-lowering-*.f64N/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{\frac{1}{2 \cdot a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\left(a \cdot c\right) \cdot -4}\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{1}{2 \cdot a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\left(a \cdot c\right) \cdot -4}\right)\\ \end{array} \]
                  4. associate-/r*N/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{\frac{\frac{1}{2}}{a}} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\left(a \cdot c\right) \cdot -4}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\left(a \cdot c\right) \cdot -4}\right)\\ \end{array} \]
                  5. metadata-evalN/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\color{blue}{\frac{1}{2}}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\left(a \cdot c\right) \cdot -4}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\left(a \cdot c\right) \cdot -4}\right)\\ \end{array} \]
                  6. /-lowering-/.f64N/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{\frac{\frac{1}{2}}{a}} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\left(a \cdot c\right) \cdot -4}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\left(a \cdot c\right) \cdot -4}\right)\\ \end{array} \]
                  7. --lowering--.f64N/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \color{blue}{\left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\left(a \cdot c\right) \cdot -4}\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\left(a \cdot c\right) \cdot -4}\right)\\ \end{array} \]
                  8. neg-lowering-neg.f64N/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\color{blue}{\left(\mathsf{neg}\left(b\right)\right)} - \sqrt{\left(a \cdot c\right) \cdot -4}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\left(a \cdot c\right) \cdot -4}\right)\\ \end{array} \]
                  9. associate-*l*N/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\color{blue}{a \cdot \left(c \cdot -4\right)}}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{a \cdot \left(c \cdot -4\right)}\right)\\ \end{array} \]
                  10. *-commutativeN/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{a \cdot \color{blue}{\left(-4 \cdot c\right)}}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{a \cdot \left(-4 \cdot c\right)}\right)\\ \end{array} \]
                  11. sqrt-lowering-sqrt.f64N/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{\sqrt{a \cdot \left(-4 \cdot c\right)}}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{a \cdot \left(-4 \cdot c\right)}\right)\\ \end{array} \]
                  12. *-commutativeN/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{a \cdot \color{blue}{\left(c \cdot -4\right)}}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{a \cdot \left(c \cdot -4\right)}\right)\\ \end{array} \]
                  13. *-lowering-*.f64N/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\color{blue}{a \cdot \left(c \cdot -4\right)}}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{a \cdot \left(c \cdot -4\right)}\right)\\ \end{array} \]
                  14. *-lowering-*.f6475.9

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{0.5}{a} \cdot \left(\left(-b\right) - \sqrt{a \cdot \color{blue}{\left(c \cdot -4\right)}}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \left(-b\right)}\\ \end{array} \]
                10. Applied egg-rr75.9%

                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{\frac{0.5}{a} \cdot \left(\left(-b\right) - \sqrt{a \cdot \left(c \cdot -4\right)}\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \left(-b\right)}\\ \end{array} \]

                if 2.5999999999999998e-44 < b

                1. Initial program 73.7%

                  \[\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array} \]
                2. Add Preprocessing
                3. Taylor expanded in b around -inf

                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                4. Step-by-step derivation
                  1. mul-1-negN/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                  2. neg-lowering-neg.f6473.7

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
                5. Simplified73.7%

                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
                6. Taylor expanded in c around 0

                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{-1 \cdot \frac{b}{a} + \frac{c}{b}}\\ \mathbf{else}:\\ \;\;\;\;-1 \cdot \frac{b}{a} + \frac{c}{b}\\ \end{array} \]
                7. Step-by-step derivation
                  1. +-commutativeN/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{\frac{c}{b} + -1 \cdot \frac{b}{a}}\\ \mathbf{else}:\\ \;\;\;\;\frac{c}{b} + -1 \cdot \frac{b}{a}\\ \end{array} \]
                  2. mul-1-negN/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{c}{b} + \color{blue}{\left(\mathsf{neg}\left(\frac{b}{a}\right)\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{c}{b} + \left(\mathsf{neg}\left(\frac{b}{a}\right)\right)\\ \end{array} \]
                  3. unsub-negN/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{\frac{c}{b} - \frac{b}{a}}\\ \mathbf{else}:\\ \;\;\;\;\frac{c}{b} - \frac{b}{a}\\ \end{array} \]
                  4. --lowering--.f64N/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{\frac{c}{b} - \frac{b}{a}}\\ \mathbf{else}:\\ \;\;\;\;\frac{c}{b} - \frac{b}{a}\\ \end{array} \]
                  5. /-lowering-/.f64N/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{\frac{c}{b}} - \frac{b}{a}\\ \mathbf{else}:\\ \;\;\;\;\frac{c}{b} - \frac{b}{a}\\ \end{array} \]
                  6. /-lowering-/.f6489.7

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{c}{b} - \color{blue}{\frac{b}{a}}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \left(-b\right)}\\ \end{array} \]
                8. Simplified89.7%

                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{\frac{c}{b} - \frac{b}{a}}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \left(-b\right)}\\ \end{array} \]
              8. Recombined 4 regimes into one program.
              9. Final simplification86.2%

                \[\leadsto \begin{array}{l} \mathbf{if}\;b \leq -2 \cdot 10^{+153}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - b}{a \cdot 2}\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot -2}{b + b}\\ \end{array}\\ \mathbf{elif}\;b \leq -5 \cdot 10^{-311}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot 2}{\sqrt{\mathsf{fma}\left(a, c \cdot -4, b \cdot b\right)} - b}\\ \end{array}\\ \mathbf{elif}\;b \leq 2.6 \cdot 10^{-44}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{0.5}{a} \cdot \left(\left(-b\right) - \sqrt{a \cdot \left(c \cdot -4\right)}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot 2}{\left(-b\right) - b}\\ \end{array}\\ \mathbf{elif}\;b \geq 0:\\ \;\;\;\;\frac{c}{b} - \frac{b}{a}\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot 2}{\left(-b\right) - b}\\ \end{array} \]
              10. Add Preprocessing

              Alternative 5: 81.5% accurate, 0.8× speedup?

              \[\begin{array}{l} \\ \begin{array}{l} t_0 := \left(-b\right) - b\\ t_1 := \frac{c \cdot 2}{t\_0}\\ \mathbf{if}\;b \leq -4.2 \cdot 10^{-83}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{t\_0}{a \cdot 2}\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot -2}{b + b}\\ \end{array}\\ \mathbf{elif}\;b \leq -5 \cdot 10^{-311}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot 2}{\sqrt{-4 \cdot \left(a \cdot c\right)} - b}\\ \end{array}\\ \mathbf{elif}\;b \leq 8.8 \cdot 10^{-48}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{0.5}{a} \cdot \left(\left(-b\right) - \sqrt{a \cdot \left(c \cdot -4\right)}\right)\\ \mathbf{else}:\\ \;\;\;\;t\_1\\ \end{array}\\ \mathbf{elif}\;b \geq 0:\\ \;\;\;\;\frac{c}{b} - \frac{b}{a}\\ \mathbf{else}:\\ \;\;\;\;t\_1\\ \end{array} \end{array} \]
              (FPCore (a b c)
               :precision binary64
               (let* ((t_0 (- (- b) b)) (t_1 (/ (* c 2.0) t_0)))
                 (if (<= b -4.2e-83)
                   (if (>= b 0.0) (/ t_0 (* a 2.0)) (/ (* c -2.0) (+ b b)))
                   (if (<= b -5e-311)
                     (if (>= b 0.0)
                       (* b (+ (/ c (* b b)) (/ -1.0 a)))
                       (/ (* c 2.0) (- (sqrt (* -4.0 (* a c))) b)))
                     (if (<= b 8.8e-48)
                       (if (>= b 0.0) (* (/ 0.5 a) (- (- b) (sqrt (* a (* c -4.0))))) t_1)
                       (if (>= b 0.0) (- (/ c b) (/ b a)) t_1))))))
              double code(double a, double b, double c) {
              	double t_0 = -b - b;
              	double t_1 = (c * 2.0) / t_0;
              	double tmp_1;
              	if (b <= -4.2e-83) {
              		double tmp_2;
              		if (b >= 0.0) {
              			tmp_2 = t_0 / (a * 2.0);
              		} else {
              			tmp_2 = (c * -2.0) / (b + b);
              		}
              		tmp_1 = tmp_2;
              	} else if (b <= -5e-311) {
              		double tmp_3;
              		if (b >= 0.0) {
              			tmp_3 = b * ((c / (b * b)) + (-1.0 / a));
              		} else {
              			tmp_3 = (c * 2.0) / (sqrt((-4.0 * (a * c))) - b);
              		}
              		tmp_1 = tmp_3;
              	} else if (b <= 8.8e-48) {
              		double tmp_4;
              		if (b >= 0.0) {
              			tmp_4 = (0.5 / a) * (-b - sqrt((a * (c * -4.0))));
              		} else {
              			tmp_4 = t_1;
              		}
              		tmp_1 = tmp_4;
              	} else if (b >= 0.0) {
              		tmp_1 = (c / b) - (b / a);
              	} else {
              		tmp_1 = t_1;
              	}
              	return tmp_1;
              }
              
              real(8) function code(a, b, c)
                  real(8), intent (in) :: a
                  real(8), intent (in) :: b
                  real(8), intent (in) :: c
                  real(8) :: t_0
                  real(8) :: t_1
                  real(8) :: tmp
                  real(8) :: tmp_1
                  real(8) :: tmp_2
                  real(8) :: tmp_3
                  real(8) :: tmp_4
                  t_0 = -b - b
                  t_1 = (c * 2.0d0) / t_0
                  if (b <= (-4.2d-83)) then
                      if (b >= 0.0d0) then
                          tmp_2 = t_0 / (a * 2.0d0)
                      else
                          tmp_2 = (c * (-2.0d0)) / (b + b)
                      end if
                      tmp_1 = tmp_2
                  else if (b <= (-5d-311)) then
                      if (b >= 0.0d0) then
                          tmp_3 = b * ((c / (b * b)) + ((-1.0d0) / a))
                      else
                          tmp_3 = (c * 2.0d0) / (sqrt(((-4.0d0) * (a * c))) - b)
                      end if
                      tmp_1 = tmp_3
                  else if (b <= 8.8d-48) then
                      if (b >= 0.0d0) then
                          tmp_4 = (0.5d0 / a) * (-b - sqrt((a * (c * (-4.0d0)))))
                      else
                          tmp_4 = t_1
                      end if
                      tmp_1 = tmp_4
                  else if (b >= 0.0d0) then
                      tmp_1 = (c / b) - (b / a)
                  else
                      tmp_1 = t_1
                  end if
                  code = tmp_1
              end function
              
              public static double code(double a, double b, double c) {
              	double t_0 = -b - b;
              	double t_1 = (c * 2.0) / t_0;
              	double tmp_1;
              	if (b <= -4.2e-83) {
              		double tmp_2;
              		if (b >= 0.0) {
              			tmp_2 = t_0 / (a * 2.0);
              		} else {
              			tmp_2 = (c * -2.0) / (b + b);
              		}
              		tmp_1 = tmp_2;
              	} else if (b <= -5e-311) {
              		double tmp_3;
              		if (b >= 0.0) {
              			tmp_3 = b * ((c / (b * b)) + (-1.0 / a));
              		} else {
              			tmp_3 = (c * 2.0) / (Math.sqrt((-4.0 * (a * c))) - b);
              		}
              		tmp_1 = tmp_3;
              	} else if (b <= 8.8e-48) {
              		double tmp_4;
              		if (b >= 0.0) {
              			tmp_4 = (0.5 / a) * (-b - Math.sqrt((a * (c * -4.0))));
              		} else {
              			tmp_4 = t_1;
              		}
              		tmp_1 = tmp_4;
              	} else if (b >= 0.0) {
              		tmp_1 = (c / b) - (b / a);
              	} else {
              		tmp_1 = t_1;
              	}
              	return tmp_1;
              }
              
              def code(a, b, c):
              	t_0 = -b - b
              	t_1 = (c * 2.0) / t_0
              	tmp_1 = 0
              	if b <= -4.2e-83:
              		tmp_2 = 0
              		if b >= 0.0:
              			tmp_2 = t_0 / (a * 2.0)
              		else:
              			tmp_2 = (c * -2.0) / (b + b)
              		tmp_1 = tmp_2
              	elif b <= -5e-311:
              		tmp_3 = 0
              		if b >= 0.0:
              			tmp_3 = b * ((c / (b * b)) + (-1.0 / a))
              		else:
              			tmp_3 = (c * 2.0) / (math.sqrt((-4.0 * (a * c))) - b)
              		tmp_1 = tmp_3
              	elif b <= 8.8e-48:
              		tmp_4 = 0
              		if b >= 0.0:
              			tmp_4 = (0.5 / a) * (-b - math.sqrt((a * (c * -4.0))))
              		else:
              			tmp_4 = t_1
              		tmp_1 = tmp_4
              	elif b >= 0.0:
              		tmp_1 = (c / b) - (b / a)
              	else:
              		tmp_1 = t_1
              	return tmp_1
              
              function code(a, b, c)
              	t_0 = Float64(Float64(-b) - b)
              	t_1 = Float64(Float64(c * 2.0) / t_0)
              	tmp_1 = 0.0
              	if (b <= -4.2e-83)
              		tmp_2 = 0.0
              		if (b >= 0.0)
              			tmp_2 = Float64(t_0 / Float64(a * 2.0));
              		else
              			tmp_2 = Float64(Float64(c * -2.0) / Float64(b + b));
              		end
              		tmp_1 = tmp_2;
              	elseif (b <= -5e-311)
              		tmp_3 = 0.0
              		if (b >= 0.0)
              			tmp_3 = Float64(b * Float64(Float64(c / Float64(b * b)) + Float64(-1.0 / a)));
              		else
              			tmp_3 = Float64(Float64(c * 2.0) / Float64(sqrt(Float64(-4.0 * Float64(a * c))) - b));
              		end
              		tmp_1 = tmp_3;
              	elseif (b <= 8.8e-48)
              		tmp_4 = 0.0
              		if (b >= 0.0)
              			tmp_4 = Float64(Float64(0.5 / a) * Float64(Float64(-b) - sqrt(Float64(a * Float64(c * -4.0)))));
              		else
              			tmp_4 = t_1;
              		end
              		tmp_1 = tmp_4;
              	elseif (b >= 0.0)
              		tmp_1 = Float64(Float64(c / b) - Float64(b / a));
              	else
              		tmp_1 = t_1;
              	end
              	return tmp_1
              end
              
              function tmp_6 = code(a, b, c)
              	t_0 = -b - b;
              	t_1 = (c * 2.0) / t_0;
              	tmp_2 = 0.0;
              	if (b <= -4.2e-83)
              		tmp_3 = 0.0;
              		if (b >= 0.0)
              			tmp_3 = t_0 / (a * 2.0);
              		else
              			tmp_3 = (c * -2.0) / (b + b);
              		end
              		tmp_2 = tmp_3;
              	elseif (b <= -5e-311)
              		tmp_4 = 0.0;
              		if (b >= 0.0)
              			tmp_4 = b * ((c / (b * b)) + (-1.0 / a));
              		else
              			tmp_4 = (c * 2.0) / (sqrt((-4.0 * (a * c))) - b);
              		end
              		tmp_2 = tmp_4;
              	elseif (b <= 8.8e-48)
              		tmp_5 = 0.0;
              		if (b >= 0.0)
              			tmp_5 = (0.5 / a) * (-b - sqrt((a * (c * -4.0))));
              		else
              			tmp_5 = t_1;
              		end
              		tmp_2 = tmp_5;
              	elseif (b >= 0.0)
              		tmp_2 = (c / b) - (b / a);
              	else
              		tmp_2 = t_1;
              	end
              	tmp_6 = tmp_2;
              end
              
              code[a_, b_, c_] := Block[{t$95$0 = N[((-b) - b), $MachinePrecision]}, Block[{t$95$1 = N[(N[(c * 2.0), $MachinePrecision] / t$95$0), $MachinePrecision]}, If[LessEqual[b, -4.2e-83], If[GreaterEqual[b, 0.0], N[(t$95$0 / N[(a * 2.0), $MachinePrecision]), $MachinePrecision], N[(N[(c * -2.0), $MachinePrecision] / N[(b + b), $MachinePrecision]), $MachinePrecision]], If[LessEqual[b, -5e-311], If[GreaterEqual[b, 0.0], N[(b * N[(N[(c / N[(b * b), $MachinePrecision]), $MachinePrecision] + N[(-1.0 / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(N[(c * 2.0), $MachinePrecision] / N[(N[Sqrt[N[(-4.0 * N[(a * c), $MachinePrecision]), $MachinePrecision]], $MachinePrecision] - b), $MachinePrecision]), $MachinePrecision]], If[LessEqual[b, 8.8e-48], If[GreaterEqual[b, 0.0], N[(N[(0.5 / a), $MachinePrecision] * N[((-b) - N[Sqrt[N[(a * N[(c * -4.0), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision], t$95$1], If[GreaterEqual[b, 0.0], N[(N[(c / b), $MachinePrecision] - N[(b / a), $MachinePrecision]), $MachinePrecision], t$95$1]]]]]]
              
              \begin{array}{l}
              
              \\
              \begin{array}{l}
              t_0 := \left(-b\right) - b\\
              t_1 := \frac{c \cdot 2}{t\_0}\\
              \mathbf{if}\;b \leq -4.2 \cdot 10^{-83}:\\
              \;\;\;\;\begin{array}{l}
              \mathbf{if}\;b \geq 0:\\
              \;\;\;\;\frac{t\_0}{a \cdot 2}\\
              
              \mathbf{else}:\\
              \;\;\;\;\frac{c \cdot -2}{b + b}\\
              
              
              \end{array}\\
              
              \mathbf{elif}\;b \leq -5 \cdot 10^{-311}:\\
              \;\;\;\;\begin{array}{l}
              \mathbf{if}\;b \geq 0:\\
              \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\
              
              \mathbf{else}:\\
              \;\;\;\;\frac{c \cdot 2}{\sqrt{-4 \cdot \left(a \cdot c\right)} - b}\\
              
              
              \end{array}\\
              
              \mathbf{elif}\;b \leq 8.8 \cdot 10^{-48}:\\
              \;\;\;\;\begin{array}{l}
              \mathbf{if}\;b \geq 0:\\
              \;\;\;\;\frac{0.5}{a} \cdot \left(\left(-b\right) - \sqrt{a \cdot \left(c \cdot -4\right)}\right)\\
              
              \mathbf{else}:\\
              \;\;\;\;t\_1\\
              
              
              \end{array}\\
              
              \mathbf{elif}\;b \geq 0:\\
              \;\;\;\;\frac{c}{b} - \frac{b}{a}\\
              
              \mathbf{else}:\\
              \;\;\;\;t\_1\\
              
              
              \end{array}
              \end{array}
              
              Derivation
              1. Split input into 4 regimes
              2. if b < -4.1999999999999998e-83

                1. Initial program 71.5%

                  \[\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array} \]
                2. Add Preprocessing
                3. Taylor expanded in b around -inf

                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                4. Step-by-step derivation
                  1. mul-1-negN/A

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                  2. neg-lowering-neg.f6487.1

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
                5. Simplified87.1%

                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
                6. Taylor expanded in b around inf

                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                7. Step-by-step derivation
                  1. Simplified87.1%

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \color{blue}{b}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \left(-b\right)}\\ \end{array} \]
                  2. Step-by-step derivation
                    1. frac-2negN/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                    2. flip-+N/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
                    3. +-inversesN/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \end{array} \]
                    4. distribute-neg-frac2N/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
                    5. metadata-evalN/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                    6. +-inversesN/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                    7. flip-+N/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
                    8. sub-negN/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
                    9. /-lowering-/.f64N/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                    10. *-commutativeN/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                    11. distribute-rgt-neg-inN/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                    12. *-lowering-*.f64N/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                    13. metadata-evalN/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                    14. sub-negN/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
                    15. flip-+N/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
                    16. +-inversesN/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                    17. metadata-evalN/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                    18. distribute-neg-frac2N/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
                  3. Applied egg-rr87.1%

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot -2}{b + b}\\ \end{array} \]

                  if -4.1999999999999998e-83 < b < -5.00000000000023e-311

                  1. Initial program 66.6%

                    \[\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array} \]
                  2. Add Preprocessing
                  3. Taylor expanded in b around inf

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{b \cdot \left(\frac{c}{{b}^{2}} - \frac{1}{a}\right)}\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{{b}^{2}} - \frac{1}{a}\right)\\ \end{array} \]
                  4. Step-by-step derivation
                    1. *-lowering-*.f64N/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{b \cdot \left(\frac{c}{{b}^{2}} - \frac{1}{a}\right)}\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{{b}^{2}} - \frac{1}{a}\right)\\ \end{array} \]
                    2. sub-negN/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \color{blue}{\left(\frac{c}{{b}^{2}} + \left(\mathsf{neg}\left(\frac{1}{a}\right)\right)\right)}\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{{b}^{2}} + \left(\mathsf{neg}\left(\frac{1}{a}\right)\right)\right)\\ \end{array} \]
                    3. +-lowering-+.f64N/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \color{blue}{\left(\frac{c}{{b}^{2}} + \left(\mathsf{neg}\left(\frac{1}{a}\right)\right)\right)}\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{{b}^{2}} + \left(\mathsf{neg}\left(\frac{1}{a}\right)\right)\right)\\ \end{array} \]
                    4. /-lowering-/.f64N/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\color{blue}{\frac{c}{{b}^{2}}} + \left(\mathsf{neg}\left(\frac{1}{a}\right)\right)\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{{b}^{2}} + \left(\mathsf{neg}\left(\frac{1}{a}\right)\right)\right)\\ \end{array} \]
                    5. unpow2N/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{\color{blue}{b \cdot b}} + \left(\mathsf{neg}\left(\frac{1}{a}\right)\right)\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \left(\mathsf{neg}\left(\frac{1}{a}\right)\right)\right)\\ \end{array} \]
                    6. *-lowering-*.f64N/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{\color{blue}{b \cdot b}} + \left(\mathsf{neg}\left(\frac{1}{a}\right)\right)\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \left(\mathsf{neg}\left(\frac{1}{a}\right)\right)\right)\\ \end{array} \]
                    7. distribute-neg-fracN/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \color{blue}{\frac{\mathsf{neg}\left(1\right)}{a}}\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{\mathsf{neg}\left(1\right)}{a}\right)\\ \end{array} \]
                    8. metadata-evalN/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{\color{blue}{-1}}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \end{array} \]
                    9. /-lowering-/.f6466.6

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \color{blue}{\frac{-1}{a}}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array} \]
                  5. Simplified66.6%

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array} \]
                  6. Taylor expanded in b around 0

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\color{blue}{\frac{c}{b \cdot b}} + \frac{-1}{a}\right)\\ \end{array} \]
                  7. Step-by-step derivation
                    1. *-commutativeN/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\color{blue}{\frac{c}{b \cdot b}} + \frac{-1}{a}\right)\\ \end{array} \]
                    2. *-lowering-*.f64N/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\color{blue}{\frac{c}{b \cdot b}} + \frac{-1}{a}\right)\\ \end{array} \]
                    3. *-lowering-*.f6464.1

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-\color{blue}{b}\right) + \sqrt{\left(a \cdot c\right) \cdot -4}}\\ \end{array} \]
                  8. Simplified64.1%

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right)} + \sqrt{\left(a \cdot c\right) \cdot -4}}\\ \end{array} \]

                  if -5.00000000000023e-311 < b < 8.8000000000000005e-48

                  1. Initial program 89.6%

                    \[\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array} \]
                  2. Add Preprocessing
                  3. Taylor expanded in b around -inf

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                  4. Step-by-step derivation
                    1. mul-1-negN/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                    2. neg-lowering-neg.f6489.6

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
                  5. Simplified89.6%

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
                  6. Taylor expanded in b around 0

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\color{blue}{-4 \cdot \left(a \cdot c\right)}}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{-4 \cdot \left(a \cdot c\right)}}{2 \cdot a}\\ \end{array} \]
                  7. Step-by-step derivation
                    1. *-commutativeN/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\color{blue}{\left(a \cdot c\right) \cdot -4}}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\left(a \cdot c\right) \cdot -4}}{2 \cdot a}\\ \end{array} \]
                    2. *-lowering-*.f64N/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\color{blue}{\left(a \cdot c\right) \cdot -4}}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\left(a \cdot c\right) \cdot -4}}{2 \cdot a}\\ \end{array} \]
                    3. *-lowering-*.f6475.8

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{\color{blue}{\left(a \cdot c\right)} \cdot -4}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \left(-b\right)}\\ \end{array} \]
                  8. Simplified75.8%

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{\color{blue}{\left(a \cdot c\right) \cdot -4}}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \left(-b\right)}\\ \end{array} \]
                  9. Step-by-step derivation
                    1. clear-numN/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{\frac{1}{\frac{2 \cdot a}{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\left(a \cdot c\right) \cdot -4}}}}\\ \mathbf{else}:\\ \;\;\;\;\frac{1}{\frac{2 \cdot a}{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\left(a \cdot c\right) \cdot -4}}}\\ \end{array} \]
                    2. associate-/r/N/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{\frac{1}{2 \cdot a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\left(a \cdot c\right) \cdot -4}\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{1}{2 \cdot a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\left(a \cdot c\right) \cdot -4}\right)\\ \end{array} \]
                    3. *-lowering-*.f64N/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{\frac{1}{2 \cdot a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\left(a \cdot c\right) \cdot -4}\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{1}{2 \cdot a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\left(a \cdot c\right) \cdot -4}\right)\\ \end{array} \]
                    4. associate-/r*N/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{\frac{\frac{1}{2}}{a}} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\left(a \cdot c\right) \cdot -4}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\left(a \cdot c\right) \cdot -4}\right)\\ \end{array} \]
                    5. metadata-evalN/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\color{blue}{\frac{1}{2}}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\left(a \cdot c\right) \cdot -4}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\left(a \cdot c\right) \cdot -4}\right)\\ \end{array} \]
                    6. /-lowering-/.f64N/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{\frac{\frac{1}{2}}{a}} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\left(a \cdot c\right) \cdot -4}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\left(a \cdot c\right) \cdot -4}\right)\\ \end{array} \]
                    7. --lowering--.f64N/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \color{blue}{\left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\left(a \cdot c\right) \cdot -4}\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\left(a \cdot c\right) \cdot -4}\right)\\ \end{array} \]
                    8. neg-lowering-neg.f64N/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\color{blue}{\left(\mathsf{neg}\left(b\right)\right)} - \sqrt{\left(a \cdot c\right) \cdot -4}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\left(a \cdot c\right) \cdot -4}\right)\\ \end{array} \]
                    9. associate-*l*N/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\color{blue}{a \cdot \left(c \cdot -4\right)}}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{a \cdot \left(c \cdot -4\right)}\right)\\ \end{array} \]
                    10. *-commutativeN/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{a \cdot \color{blue}{\left(-4 \cdot c\right)}}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{a \cdot \left(-4 \cdot c\right)}\right)\\ \end{array} \]
                    11. sqrt-lowering-sqrt.f64N/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{\sqrt{a \cdot \left(-4 \cdot c\right)}}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{a \cdot \left(-4 \cdot c\right)}\right)\\ \end{array} \]
                    12. *-commutativeN/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{a \cdot \color{blue}{\left(c \cdot -4\right)}}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{a \cdot \left(c \cdot -4\right)}\right)\\ \end{array} \]
                    13. *-lowering-*.f64N/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\color{blue}{a \cdot \left(c \cdot -4\right)}}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{2}}{a} \cdot \left(\left(\mathsf{neg}\left(b\right)\right) - \sqrt{a \cdot \left(c \cdot -4\right)}\right)\\ \end{array} \]
                    14. *-lowering-*.f6475.9

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{0.5}{a} \cdot \left(\left(-b\right) - \sqrt{a \cdot \color{blue}{\left(c \cdot -4\right)}}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \left(-b\right)}\\ \end{array} \]
                  10. Applied egg-rr75.9%

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{\frac{0.5}{a} \cdot \left(\left(-b\right) - \sqrt{a \cdot \left(c \cdot -4\right)}\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \left(-b\right)}\\ \end{array} \]

                  if 8.8000000000000005e-48 < b

                  1. Initial program 73.7%

                    \[\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array} \]
                  2. Add Preprocessing
                  3. Taylor expanded in b around -inf

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                  4. Step-by-step derivation
                    1. mul-1-negN/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                    2. neg-lowering-neg.f6473.7

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
                  5. Simplified73.7%

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
                  6. Taylor expanded in c around 0

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{-1 \cdot \frac{b}{a} + \frac{c}{b}}\\ \mathbf{else}:\\ \;\;\;\;-1 \cdot \frac{b}{a} + \frac{c}{b}\\ \end{array} \]
                  7. Step-by-step derivation
                    1. +-commutativeN/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{\frac{c}{b} + -1 \cdot \frac{b}{a}}\\ \mathbf{else}:\\ \;\;\;\;\frac{c}{b} + -1 \cdot \frac{b}{a}\\ \end{array} \]
                    2. mul-1-negN/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{c}{b} + \color{blue}{\left(\mathsf{neg}\left(\frac{b}{a}\right)\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{c}{b} + \left(\mathsf{neg}\left(\frac{b}{a}\right)\right)\\ \end{array} \]
                    3. unsub-negN/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{\frac{c}{b} - \frac{b}{a}}\\ \mathbf{else}:\\ \;\;\;\;\frac{c}{b} - \frac{b}{a}\\ \end{array} \]
                    4. --lowering--.f64N/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{\frac{c}{b} - \frac{b}{a}}\\ \mathbf{else}:\\ \;\;\;\;\frac{c}{b} - \frac{b}{a}\\ \end{array} \]
                    5. /-lowering-/.f64N/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{\frac{c}{b}} - \frac{b}{a}\\ \mathbf{else}:\\ \;\;\;\;\frac{c}{b} - \frac{b}{a}\\ \end{array} \]
                    6. /-lowering-/.f6489.7

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{c}{b} - \color{blue}{\frac{b}{a}}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \left(-b\right)}\\ \end{array} \]
                  8. Simplified89.7%

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{\frac{c}{b} - \frac{b}{a}}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \left(-b\right)}\\ \end{array} \]
                8. Recombined 4 regimes into one program.
                9. Final simplification82.6%

                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \leq -4.2 \cdot 10^{-83}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - b}{a \cdot 2}\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot -2}{b + b}\\ \end{array}\\ \mathbf{elif}\;b \leq -5 \cdot 10^{-311}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot 2}{\sqrt{-4 \cdot \left(a \cdot c\right)} - b}\\ \end{array}\\ \mathbf{elif}\;b \leq 8.8 \cdot 10^{-48}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{0.5}{a} \cdot \left(\left(-b\right) - \sqrt{a \cdot \left(c \cdot -4\right)}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot 2}{\left(-b\right) - b}\\ \end{array}\\ \mathbf{elif}\;b \geq 0:\\ \;\;\;\;\frac{c}{b} - \frac{b}{a}\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot 2}{\left(-b\right) - b}\\ \end{array} \]
                10. Add Preprocessing

                Alternative 6: 90.6% accurate, 0.8× speedup?

                \[\begin{array}{l} \\ \begin{array}{l} t_0 := \frac{\left(-b\right) - b}{a \cdot 2}\\ \mathbf{if}\;b \leq -1 \cdot 10^{+154}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;t\_0\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot -2}{b + b}\\ \end{array}\\ \mathbf{elif}\;b \leq 1.55 \cdot 10^{+90}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{0.5}{a} \cdot \left(\left(-b\right) - \sqrt{\mathsf{fma}\left(a, c \cdot -4, b \cdot b\right)}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot 2}{\sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c} - b}\\ \end{array}\\ \mathbf{elif}\;b \geq 0:\\ \;\;\;\;t\_0\\ \mathbf{else}:\\ \;\;\;\;-\frac{c}{b + b}\\ \end{array} \end{array} \]
                (FPCore (a b c)
                 :precision binary64
                 (let* ((t_0 (/ (- (- b) b) (* a 2.0))))
                   (if (<= b -1e+154)
                     (if (>= b 0.0) t_0 (/ (* c -2.0) (+ b b)))
                     (if (<= b 1.55e+90)
                       (if (>= b 0.0)
                         (* (/ 0.5 a) (- (- b) (sqrt (fma a (* c -4.0) (* b b)))))
                         (/ (* c 2.0) (- (sqrt (- (* b b) (* (* 4.0 a) c))) b)))
                       (if (>= b 0.0) t_0 (- (/ c (+ b b))))))))
                double code(double a, double b, double c) {
                	double t_0 = (-b - b) / (a * 2.0);
                	double tmp_1;
                	if (b <= -1e+154) {
                		double tmp_2;
                		if (b >= 0.0) {
                			tmp_2 = t_0;
                		} else {
                			tmp_2 = (c * -2.0) / (b + b);
                		}
                		tmp_1 = tmp_2;
                	} else if (b <= 1.55e+90) {
                		double tmp_3;
                		if (b >= 0.0) {
                			tmp_3 = (0.5 / a) * (-b - sqrt(fma(a, (c * -4.0), (b * b))));
                		} else {
                			tmp_3 = (c * 2.0) / (sqrt(((b * b) - ((4.0 * a) * c))) - b);
                		}
                		tmp_1 = tmp_3;
                	} else if (b >= 0.0) {
                		tmp_1 = t_0;
                	} else {
                		tmp_1 = -(c / (b + b));
                	}
                	return tmp_1;
                }
                
                function code(a, b, c)
                	t_0 = Float64(Float64(Float64(-b) - b) / Float64(a * 2.0))
                	tmp_1 = 0.0
                	if (b <= -1e+154)
                		tmp_2 = 0.0
                		if (b >= 0.0)
                			tmp_2 = t_0;
                		else
                			tmp_2 = Float64(Float64(c * -2.0) / Float64(b + b));
                		end
                		tmp_1 = tmp_2;
                	elseif (b <= 1.55e+90)
                		tmp_3 = 0.0
                		if (b >= 0.0)
                			tmp_3 = Float64(Float64(0.5 / a) * Float64(Float64(-b) - sqrt(fma(a, Float64(c * -4.0), Float64(b * b)))));
                		else
                			tmp_3 = Float64(Float64(c * 2.0) / Float64(sqrt(Float64(Float64(b * b) - Float64(Float64(4.0 * a) * c))) - b));
                		end
                		tmp_1 = tmp_3;
                	elseif (b >= 0.0)
                		tmp_1 = t_0;
                	else
                		tmp_1 = Float64(-Float64(c / Float64(b + b)));
                	end
                	return tmp_1
                end
                
                code[a_, b_, c_] := Block[{t$95$0 = N[(N[((-b) - b), $MachinePrecision] / N[(a * 2.0), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[b, -1e+154], If[GreaterEqual[b, 0.0], t$95$0, N[(N[(c * -2.0), $MachinePrecision] / N[(b + b), $MachinePrecision]), $MachinePrecision]], If[LessEqual[b, 1.55e+90], If[GreaterEqual[b, 0.0], N[(N[(0.5 / a), $MachinePrecision] * N[((-b) - N[Sqrt[N[(a * N[(c * -4.0), $MachinePrecision] + N[(b * b), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(N[(c * 2.0), $MachinePrecision] / N[(N[Sqrt[N[(N[(b * b), $MachinePrecision] - N[(N[(4.0 * a), $MachinePrecision] * c), $MachinePrecision]), $MachinePrecision]], $MachinePrecision] - b), $MachinePrecision]), $MachinePrecision]], If[GreaterEqual[b, 0.0], t$95$0, (-N[(c / N[(b + b), $MachinePrecision]), $MachinePrecision])]]]]
                
                \begin{array}{l}
                
                \\
                \begin{array}{l}
                t_0 := \frac{\left(-b\right) - b}{a \cdot 2}\\
                \mathbf{if}\;b \leq -1 \cdot 10^{+154}:\\
                \;\;\;\;\begin{array}{l}
                \mathbf{if}\;b \geq 0:\\
                \;\;\;\;t\_0\\
                
                \mathbf{else}:\\
                \;\;\;\;\frac{c \cdot -2}{b + b}\\
                
                
                \end{array}\\
                
                \mathbf{elif}\;b \leq 1.55 \cdot 10^{+90}:\\
                \;\;\;\;\begin{array}{l}
                \mathbf{if}\;b \geq 0:\\
                \;\;\;\;\frac{0.5}{a} \cdot \left(\left(-b\right) - \sqrt{\mathsf{fma}\left(a, c \cdot -4, b \cdot b\right)}\right)\\
                
                \mathbf{else}:\\
                \;\;\;\;\frac{c \cdot 2}{\sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c} - b}\\
                
                
                \end{array}\\
                
                \mathbf{elif}\;b \geq 0:\\
                \;\;\;\;t\_0\\
                
                \mathbf{else}:\\
                \;\;\;\;-\frac{c}{b + b}\\
                
                
                \end{array}
                \end{array}
                
                Derivation
                1. Split input into 3 regimes
                2. if b < -1.00000000000000004e154

                  1. Initial program 42.2%

                    \[\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array} \]
                  2. Add Preprocessing
                  3. Taylor expanded in b around -inf

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                  4. Step-by-step derivation
                    1. mul-1-negN/A

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                    2. neg-lowering-neg.f6497.7

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
                  5. Simplified97.7%

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
                  6. Taylor expanded in b around inf

                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                  7. Step-by-step derivation
                    1. Simplified97.7%

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \color{blue}{b}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \left(-b\right)}\\ \end{array} \]
                    2. Step-by-step derivation
                      1. frac-2negN/A

                        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                      2. flip-+N/A

                        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
                      3. +-inversesN/A

                        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \end{array} \]
                      4. distribute-neg-frac2N/A

                        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
                      5. metadata-evalN/A

                        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                      6. +-inversesN/A

                        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                      7. flip-+N/A

                        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
                      8. sub-negN/A

                        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
                      9. /-lowering-/.f64N/A

                        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                      10. *-commutativeN/A

                        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                      11. distribute-rgt-neg-inN/A

                        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                      12. *-lowering-*.f64N/A

                        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                      13. metadata-evalN/A

                        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                      14. sub-negN/A

                        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
                      15. flip-+N/A

                        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
                      16. +-inversesN/A

                        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                      17. metadata-evalN/A

                        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                      18. distribute-neg-frac2N/A

                        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
                    3. Applied egg-rr97.7%

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot -2}{b + b}\\ \end{array} \]

                    if -1.00000000000000004e154 < b < 1.54999999999999994e90

                    1. Initial program 87.6%

                      \[\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array} \]
                    2. Add Preprocessing
                    3. Applied egg-rr87.5%

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{\left(b + \sqrt{\mathsf{fma}\left(a, -4 \cdot c, b \cdot b\right)}\right) \cdot \left(-\frac{0.5}{a}\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array} \]

                    if 1.54999999999999994e90 < b

                    1. Initial program 60.3%

                      \[\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array} \]
                    2. Add Preprocessing
                    3. Taylor expanded in b around -inf

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                    4. Step-by-step derivation
                      1. mul-1-negN/A

                        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                      2. neg-lowering-neg.f6460.3

                        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
                    5. Simplified60.3%

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
                    6. Taylor expanded in b around inf

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                    7. Step-by-step derivation
                      1. Simplified98.4%

                        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \color{blue}{b}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \left(-b\right)}\\ \end{array} \]
                      2. Step-by-step derivation
                        1. clear-numN/A

                          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                        2. sub-negN/A

                          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
                        3. associate-/r*N/A

                          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
                        4. sub-negN/A

                          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right)} - b}{2 \cdot a}\\ \end{array} \]
                        5. flip-+N/A

                          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right)} - b}{2 \cdot a}\\ \end{array} \]
                        6. +-inversesN/A

                          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                        7. associate-/l/N/A

                          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
                        8. metadata-evalN/A

                          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \end{array} \]
                        9. +-inversesN/A

                          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \end{array} \]
                        10. flip-+N/A

                          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
                        11. sub-negN/A

                          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
                        12. clear-numN/A

                          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                        13. frac-2negN/A

                          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                        14. sub-negN/A

                          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
                        15. flip-+N/A

                          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
                        16. +-inversesN/A

                          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \end{array} \]
                      3. Applied egg-rr98.4%

                        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{-c}{b + b}\\ \end{array} \]
                    8. Recombined 3 regimes into one program.
                    9. Final simplification91.4%

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \leq -1 \cdot 10^{+154}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - b}{a \cdot 2}\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot -2}{b + b}\\ \end{array}\\ \mathbf{elif}\;b \leq 1.55 \cdot 10^{+90}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{0.5}{a} \cdot \left(\left(-b\right) - \sqrt{\mathsf{fma}\left(a, c \cdot -4, b \cdot b\right)}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot 2}{\sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c} - b}\\ \end{array}\\ \mathbf{elif}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - b}{a \cdot 2}\\ \mathbf{else}:\\ \;\;\;\;-\frac{c}{b + b}\\ \end{array} \]
                    10. Add Preprocessing

                    Alternative 7: 90.6% accurate, 0.8× speedup?

                    \[\begin{array}{l} \\ \begin{array}{l} t_0 := \frac{\left(-b\right) - b}{a \cdot 2}\\ \mathbf{if}\;b \leq -1 \cdot 10^{+153}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;t\_0\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot -2}{b + b}\\ \end{array}\\ \mathbf{elif}\;b \leq 1.55 \cdot 10^{+90}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{\mathsf{fma}\left(c \cdot -4, a, b \cdot b\right)}}{a \cdot 2}\\ \mathbf{else}:\\ \;\;\;\;c \cdot \frac{2}{\sqrt{\mathsf{fma}\left(a, c \cdot -4, b \cdot b\right)} - b}\\ \end{array}\\ \mathbf{elif}\;b \geq 0:\\ \;\;\;\;t\_0\\ \mathbf{else}:\\ \;\;\;\;-\frac{c}{b + b}\\ \end{array} \end{array} \]
                    (FPCore (a b c)
                     :precision binary64
                     (let* ((t_0 (/ (- (- b) b) (* a 2.0))))
                       (if (<= b -1e+153)
                         (if (>= b 0.0) t_0 (/ (* c -2.0) (+ b b)))
                         (if (<= b 1.55e+90)
                           (if (>= b 0.0)
                             (/ (- (- b) (sqrt (fma (* c -4.0) a (* b b)))) (* a 2.0))
                             (* c (/ 2.0 (- (sqrt (fma a (* c -4.0) (* b b))) b))))
                           (if (>= b 0.0) t_0 (- (/ c (+ b b))))))))
                    double code(double a, double b, double c) {
                    	double t_0 = (-b - b) / (a * 2.0);
                    	double tmp_1;
                    	if (b <= -1e+153) {
                    		double tmp_2;
                    		if (b >= 0.0) {
                    			tmp_2 = t_0;
                    		} else {
                    			tmp_2 = (c * -2.0) / (b + b);
                    		}
                    		tmp_1 = tmp_2;
                    	} else if (b <= 1.55e+90) {
                    		double tmp_3;
                    		if (b >= 0.0) {
                    			tmp_3 = (-b - sqrt(fma((c * -4.0), a, (b * b)))) / (a * 2.0);
                    		} else {
                    			tmp_3 = c * (2.0 / (sqrt(fma(a, (c * -4.0), (b * b))) - b));
                    		}
                    		tmp_1 = tmp_3;
                    	} else if (b >= 0.0) {
                    		tmp_1 = t_0;
                    	} else {
                    		tmp_1 = -(c / (b + b));
                    	}
                    	return tmp_1;
                    }
                    
                    function code(a, b, c)
                    	t_0 = Float64(Float64(Float64(-b) - b) / Float64(a * 2.0))
                    	tmp_1 = 0.0
                    	if (b <= -1e+153)
                    		tmp_2 = 0.0
                    		if (b >= 0.0)
                    			tmp_2 = t_0;
                    		else
                    			tmp_2 = Float64(Float64(c * -2.0) / Float64(b + b));
                    		end
                    		tmp_1 = tmp_2;
                    	elseif (b <= 1.55e+90)
                    		tmp_3 = 0.0
                    		if (b >= 0.0)
                    			tmp_3 = Float64(Float64(Float64(-b) - sqrt(fma(Float64(c * -4.0), a, Float64(b * b)))) / Float64(a * 2.0));
                    		else
                    			tmp_3 = Float64(c * Float64(2.0 / Float64(sqrt(fma(a, Float64(c * -4.0), Float64(b * b))) - b)));
                    		end
                    		tmp_1 = tmp_3;
                    	elseif (b >= 0.0)
                    		tmp_1 = t_0;
                    	else
                    		tmp_1 = Float64(-Float64(c / Float64(b + b)));
                    	end
                    	return tmp_1
                    end
                    
                    code[a_, b_, c_] := Block[{t$95$0 = N[(N[((-b) - b), $MachinePrecision] / N[(a * 2.0), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[b, -1e+153], If[GreaterEqual[b, 0.0], t$95$0, N[(N[(c * -2.0), $MachinePrecision] / N[(b + b), $MachinePrecision]), $MachinePrecision]], If[LessEqual[b, 1.55e+90], If[GreaterEqual[b, 0.0], N[(N[((-b) - N[Sqrt[N[(N[(c * -4.0), $MachinePrecision] * a + N[(b * b), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]), $MachinePrecision] / N[(a * 2.0), $MachinePrecision]), $MachinePrecision], N[(c * N[(2.0 / N[(N[Sqrt[N[(a * N[(c * -4.0), $MachinePrecision] + N[(b * b), $MachinePrecision]), $MachinePrecision]], $MachinePrecision] - b), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]], If[GreaterEqual[b, 0.0], t$95$0, (-N[(c / N[(b + b), $MachinePrecision]), $MachinePrecision])]]]]
                    
                    \begin{array}{l}
                    
                    \\
                    \begin{array}{l}
                    t_0 := \frac{\left(-b\right) - b}{a \cdot 2}\\
                    \mathbf{if}\;b \leq -1 \cdot 10^{+153}:\\
                    \;\;\;\;\begin{array}{l}
                    \mathbf{if}\;b \geq 0:\\
                    \;\;\;\;t\_0\\
                    
                    \mathbf{else}:\\
                    \;\;\;\;\frac{c \cdot -2}{b + b}\\
                    
                    
                    \end{array}\\
                    
                    \mathbf{elif}\;b \leq 1.55 \cdot 10^{+90}:\\
                    \;\;\;\;\begin{array}{l}
                    \mathbf{if}\;b \geq 0:\\
                    \;\;\;\;\frac{\left(-b\right) - \sqrt{\mathsf{fma}\left(c \cdot -4, a, b \cdot b\right)}}{a \cdot 2}\\
                    
                    \mathbf{else}:\\
                    \;\;\;\;c \cdot \frac{2}{\sqrt{\mathsf{fma}\left(a, c \cdot -4, b \cdot b\right)} - b}\\
                    
                    
                    \end{array}\\
                    
                    \mathbf{elif}\;b \geq 0:\\
                    \;\;\;\;t\_0\\
                    
                    \mathbf{else}:\\
                    \;\;\;\;-\frac{c}{b + b}\\
                    
                    
                    \end{array}
                    \end{array}
                    
                    Derivation
                    1. Split input into 3 regimes
                    2. if b < -1e153

                      1. Initial program 42.2%

                        \[\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array} \]
                      2. Add Preprocessing
                      3. Taylor expanded in b around -inf

                        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                      4. Step-by-step derivation
                        1. mul-1-negN/A

                          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                        2. neg-lowering-neg.f6497.7

                          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
                      5. Simplified97.7%

                        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
                      6. Taylor expanded in b around inf

                        \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                      7. Step-by-step derivation
                        1. Simplified97.7%

                          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \color{blue}{b}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \left(-b\right)}\\ \end{array} \]
                        2. Step-by-step derivation
                          1. frac-2negN/A

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                          2. flip-+N/A

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
                          3. +-inversesN/A

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \end{array} \]
                          4. distribute-neg-frac2N/A

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
                          5. metadata-evalN/A

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                          6. +-inversesN/A

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                          7. flip-+N/A

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
                          8. sub-negN/A

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
                          9. /-lowering-/.f64N/A

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                          10. *-commutativeN/A

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                          11. distribute-rgt-neg-inN/A

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                          12. *-lowering-*.f64N/A

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                          13. metadata-evalN/A

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                          14. sub-negN/A

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
                          15. flip-+N/A

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
                          16. +-inversesN/A

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                          17. metadata-evalN/A

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                          18. distribute-neg-frac2N/A

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
                        3. Applied egg-rr97.7%

                          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot -2}{b + b}\\ \end{array} \]

                        if -1e153 < b < 1.54999999999999994e90

                        1. Initial program 87.6%

                          \[\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array} \]
                        2. Add Preprocessing
                        3. Applied egg-rr87.5%

                          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\left(-c\right) \cdot \frac{2}{b - \sqrt{\mathsf{fma}\left(a, -4 \cdot c, b \cdot b\right)}}\\ \end{array} \]
                        4. Step-by-step derivation
                          1. associate-*l*N/A

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \color{blue}{4 \cdot \left(a \cdot c\right)}}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - 4 \cdot \left(a \cdot c\right)}}{2 \cdot a}\\ \end{array} \]
                          2. cancel-sign-sub-invN/A

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\color{blue}{b \cdot b + \left(\mathsf{neg}\left(4\right)\right) \cdot \left(a \cdot c\right)}}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b + \left(\mathsf{neg}\left(4\right)\right) \cdot \left(a \cdot c\right)}}{2 \cdot a}\\ \end{array} \]
                          3. metadata-evalN/A

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b + \color{blue}{-4} \cdot \left(a \cdot c\right)}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b + -4 \cdot \left(a \cdot c\right)}}{2 \cdot a}\\ \end{array} \]
                          4. *-commutativeN/A

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b + \color{blue}{\left(a \cdot c\right) \cdot -4}}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b + \left(a \cdot c\right) \cdot -4}}{2 \cdot a}\\ \end{array} \]
                          5. associate-*l*N/A

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b + \color{blue}{a \cdot \left(c \cdot -4\right)}}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b + a \cdot \left(c \cdot -4\right)}}{2 \cdot a}\\ \end{array} \]
                          6. *-commutativeN/A

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b + a \cdot \color{blue}{\left(-4 \cdot c\right)}}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b + a \cdot \left(-4 \cdot c\right)}}{2 \cdot a}\\ \end{array} \]
                          7. +-commutativeN/A

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\color{blue}{a \cdot \left(-4 \cdot c\right) + b \cdot b}}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{a \cdot \left(-4 \cdot c\right) + b \cdot b}}{2 \cdot a}\\ \end{array} \]
                          8. *-commutativeN/A

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{a \cdot \color{blue}{\left(c \cdot -4\right)} + b \cdot b}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{a \cdot \left(c \cdot -4\right) + b \cdot b}}{2 \cdot a}\\ \end{array} \]
                          9. *-commutativeN/A

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\color{blue}{\left(c \cdot -4\right) \cdot a} + b \cdot b}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\left(c \cdot -4\right) \cdot a + b \cdot b}}{2 \cdot a}\\ \end{array} \]
                          10. accelerator-lowering-fma.f64N/A

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\color{blue}{\mathsf{fma}\left(c \cdot -4, a, b \cdot b\right)}}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\mathsf{fma}\left(c \cdot -4, a, b \cdot b\right)}}{2 \cdot a}\\ \end{array} \]
                          11. *-lowering-*.f64N/A

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\mathsf{fma}\left(\color{blue}{c \cdot -4}, a, b \cdot b\right)}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{\mathsf{fma}\left(c \cdot -4, a, b \cdot b\right)}}{2 \cdot a}\\ \end{array} \]
                          12. *-lowering-*.f6487.5

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{\mathsf{fma}\left(c \cdot -4, a, \color{blue}{b \cdot b}\right)}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\left(-c\right) \cdot \frac{2}{b - \sqrt{\mathsf{fma}\left(a, -4 \cdot c, b \cdot b\right)}}\\ \end{array} \]
                        5. Applied egg-rr87.5%

                          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{\color{blue}{\mathsf{fma}\left(c \cdot -4, a, b \cdot b\right)}}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\left(-c\right) \cdot \frac{2}{b - \sqrt{\mathsf{fma}\left(a, -4 \cdot c, b \cdot b\right)}}\\ \end{array} \]

                        if 1.54999999999999994e90 < b

                        1. Initial program 60.3%

                          \[\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array} \]
                        2. Add Preprocessing
                        3. Taylor expanded in b around -inf

                          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                        4. Step-by-step derivation
                          1. mul-1-negN/A

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                          2. neg-lowering-neg.f6460.3

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
                        5. Simplified60.3%

                          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
                        6. Taylor expanded in b around inf

                          \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                        7. Step-by-step derivation
                          1. Simplified98.4%

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \color{blue}{b}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \left(-b\right)}\\ \end{array} \]
                          2. Step-by-step derivation
                            1. clear-numN/A

                              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                            2. sub-negN/A

                              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
                            3. associate-/r*N/A

                              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
                            4. sub-negN/A

                              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right)} - b}{2 \cdot a}\\ \end{array} \]
                            5. flip-+N/A

                              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right)} - b}{2 \cdot a}\\ \end{array} \]
                            6. +-inversesN/A

                              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                            7. associate-/l/N/A

                              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
                            8. metadata-evalN/A

                              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \end{array} \]
                            9. +-inversesN/A

                              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \end{array} \]
                            10. flip-+N/A

                              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
                            11. sub-negN/A

                              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
                            12. clear-numN/A

                              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                            13. frac-2negN/A

                              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                            14. sub-negN/A

                              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
                            15. flip-+N/A

                              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
                            16. +-inversesN/A

                              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \end{array} \]
                          3. Applied egg-rr98.4%

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{-c}{b + b}\\ \end{array} \]
                        8. Recombined 3 regimes into one program.
                        9. Final simplification91.3%

                          \[\leadsto \begin{array}{l} \mathbf{if}\;b \leq -1 \cdot 10^{+153}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - b}{a \cdot 2}\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot -2}{b + b}\\ \end{array}\\ \mathbf{elif}\;b \leq 1.55 \cdot 10^{+90}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{\mathsf{fma}\left(c \cdot -4, a, b \cdot b\right)}}{a \cdot 2}\\ \mathbf{else}:\\ \;\;\;\;c \cdot \frac{2}{\sqrt{\mathsf{fma}\left(a, c \cdot -4, b \cdot b\right)} - b}\\ \end{array}\\ \mathbf{elif}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - b}{a \cdot 2}\\ \mathbf{else}:\\ \;\;\;\;-\frac{c}{b + b}\\ \end{array} \]
                        10. Add Preprocessing

                        Alternative 8: 74.1% accurate, 1.1× speedup?

                        \[\begin{array}{l} \\ \begin{array}{l} \mathbf{if}\;b \leq -1.22 \cdot 10^{-82}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - b}{a \cdot 2}\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot -2}{b + b}\\ \end{array}\\ \mathbf{elif}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot 2}{\sqrt{-4 \cdot \left(a \cdot c\right)} - b}\\ \end{array} \end{array} \]
                        (FPCore (a b c)
                         :precision binary64
                         (if (<= b -1.22e-82)
                           (if (>= b 0.0) (/ (- (- b) b) (* a 2.0)) (/ (* c -2.0) (+ b b)))
                           (if (>= b 0.0)
                             (* b (+ (/ c (* b b)) (/ -1.0 a)))
                             (/ (* c 2.0) (- (sqrt (* -4.0 (* a c))) b)))))
                        double code(double a, double b, double c) {
                        	double tmp_1;
                        	if (b <= -1.22e-82) {
                        		double tmp_2;
                        		if (b >= 0.0) {
                        			tmp_2 = (-b - b) / (a * 2.0);
                        		} else {
                        			tmp_2 = (c * -2.0) / (b + b);
                        		}
                        		tmp_1 = tmp_2;
                        	} else if (b >= 0.0) {
                        		tmp_1 = b * ((c / (b * b)) + (-1.0 / a));
                        	} else {
                        		tmp_1 = (c * 2.0) / (sqrt((-4.0 * (a * c))) - b);
                        	}
                        	return tmp_1;
                        }
                        
                        real(8) function code(a, b, c)
                            real(8), intent (in) :: a
                            real(8), intent (in) :: b
                            real(8), intent (in) :: c
                            real(8) :: tmp
                            real(8) :: tmp_1
                            real(8) :: tmp_2
                            if (b <= (-1.22d-82)) then
                                if (b >= 0.0d0) then
                                    tmp_2 = (-b - b) / (a * 2.0d0)
                                else
                                    tmp_2 = (c * (-2.0d0)) / (b + b)
                                end if
                                tmp_1 = tmp_2
                            else if (b >= 0.0d0) then
                                tmp_1 = b * ((c / (b * b)) + ((-1.0d0) / a))
                            else
                                tmp_1 = (c * 2.0d0) / (sqrt(((-4.0d0) * (a * c))) - b)
                            end if
                            code = tmp_1
                        end function
                        
                        public static double code(double a, double b, double c) {
                        	double tmp_1;
                        	if (b <= -1.22e-82) {
                        		double tmp_2;
                        		if (b >= 0.0) {
                        			tmp_2 = (-b - b) / (a * 2.0);
                        		} else {
                        			tmp_2 = (c * -2.0) / (b + b);
                        		}
                        		tmp_1 = tmp_2;
                        	} else if (b >= 0.0) {
                        		tmp_1 = b * ((c / (b * b)) + (-1.0 / a));
                        	} else {
                        		tmp_1 = (c * 2.0) / (Math.sqrt((-4.0 * (a * c))) - b);
                        	}
                        	return tmp_1;
                        }
                        
                        def code(a, b, c):
                        	tmp_1 = 0
                        	if b <= -1.22e-82:
                        		tmp_2 = 0
                        		if b >= 0.0:
                        			tmp_2 = (-b - b) / (a * 2.0)
                        		else:
                        			tmp_2 = (c * -2.0) / (b + b)
                        		tmp_1 = tmp_2
                        	elif b >= 0.0:
                        		tmp_1 = b * ((c / (b * b)) + (-1.0 / a))
                        	else:
                        		tmp_1 = (c * 2.0) / (math.sqrt((-4.0 * (a * c))) - b)
                        	return tmp_1
                        
                        function code(a, b, c)
                        	tmp_1 = 0.0
                        	if (b <= -1.22e-82)
                        		tmp_2 = 0.0
                        		if (b >= 0.0)
                        			tmp_2 = Float64(Float64(Float64(-b) - b) / Float64(a * 2.0));
                        		else
                        			tmp_2 = Float64(Float64(c * -2.0) / Float64(b + b));
                        		end
                        		tmp_1 = tmp_2;
                        	elseif (b >= 0.0)
                        		tmp_1 = Float64(b * Float64(Float64(c / Float64(b * b)) + Float64(-1.0 / a)));
                        	else
                        		tmp_1 = Float64(Float64(c * 2.0) / Float64(sqrt(Float64(-4.0 * Float64(a * c))) - b));
                        	end
                        	return tmp_1
                        end
                        
                        function tmp_4 = code(a, b, c)
                        	tmp_2 = 0.0;
                        	if (b <= -1.22e-82)
                        		tmp_3 = 0.0;
                        		if (b >= 0.0)
                        			tmp_3 = (-b - b) / (a * 2.0);
                        		else
                        			tmp_3 = (c * -2.0) / (b + b);
                        		end
                        		tmp_2 = tmp_3;
                        	elseif (b >= 0.0)
                        		tmp_2 = b * ((c / (b * b)) + (-1.0 / a));
                        	else
                        		tmp_2 = (c * 2.0) / (sqrt((-4.0 * (a * c))) - b);
                        	end
                        	tmp_4 = tmp_2;
                        end
                        
                        code[a_, b_, c_] := If[LessEqual[b, -1.22e-82], If[GreaterEqual[b, 0.0], N[(N[((-b) - b), $MachinePrecision] / N[(a * 2.0), $MachinePrecision]), $MachinePrecision], N[(N[(c * -2.0), $MachinePrecision] / N[(b + b), $MachinePrecision]), $MachinePrecision]], If[GreaterEqual[b, 0.0], N[(b * N[(N[(c / N[(b * b), $MachinePrecision]), $MachinePrecision] + N[(-1.0 / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(N[(c * 2.0), $MachinePrecision] / N[(N[Sqrt[N[(-4.0 * N[(a * c), $MachinePrecision]), $MachinePrecision]], $MachinePrecision] - b), $MachinePrecision]), $MachinePrecision]]]
                        
                        \begin{array}{l}
                        
                        \\
                        \begin{array}{l}
                        \mathbf{if}\;b \leq -1.22 \cdot 10^{-82}:\\
                        \;\;\;\;\begin{array}{l}
                        \mathbf{if}\;b \geq 0:\\
                        \;\;\;\;\frac{\left(-b\right) - b}{a \cdot 2}\\
                        
                        \mathbf{else}:\\
                        \;\;\;\;\frac{c \cdot -2}{b + b}\\
                        
                        
                        \end{array}\\
                        
                        \mathbf{elif}\;b \geq 0:\\
                        \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\
                        
                        \mathbf{else}:\\
                        \;\;\;\;\frac{c \cdot 2}{\sqrt{-4 \cdot \left(a \cdot c\right)} - b}\\
                        
                        
                        \end{array}
                        \end{array}
                        
                        Derivation
                        1. Split input into 2 regimes
                        2. if b < -1.22000000000000001e-82

                          1. Initial program 71.5%

                            \[\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array} \]
                          2. Add Preprocessing
                          3. Taylor expanded in b around -inf

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                          4. Step-by-step derivation
                            1. mul-1-negN/A

                              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                            2. neg-lowering-neg.f6487.1

                              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
                          5. Simplified87.1%

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
                          6. Taylor expanded in b around inf

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                          7. Step-by-step derivation
                            1. Simplified87.1%

                              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \color{blue}{b}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \left(-b\right)}\\ \end{array} \]
                            2. Step-by-step derivation
                              1. frac-2negN/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                              2. flip-+N/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
                              3. +-inversesN/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \end{array} \]
                              4. distribute-neg-frac2N/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
                              5. metadata-evalN/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                              6. +-inversesN/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                              7. flip-+N/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
                              8. sub-negN/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
                              9. /-lowering-/.f64N/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                              10. *-commutativeN/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                              11. distribute-rgt-neg-inN/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                              12. *-lowering-*.f64N/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                              13. metadata-evalN/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                              14. sub-negN/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
                              15. flip-+N/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
                              16. +-inversesN/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                              17. metadata-evalN/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                              18. distribute-neg-frac2N/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
                            3. Applied egg-rr87.1%

                              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot -2}{b + b}\\ \end{array} \]

                            if -1.22000000000000001e-82 < b

                            1. Initial program 76.6%

                              \[\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array} \]
                            2. Add Preprocessing
                            3. Taylor expanded in b around inf

                              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{b \cdot \left(\frac{c}{{b}^{2}} - \frac{1}{a}\right)}\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{{b}^{2}} - \frac{1}{a}\right)\\ \end{array} \]
                            4. Step-by-step derivation
                              1. *-lowering-*.f64N/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{b \cdot \left(\frac{c}{{b}^{2}} - \frac{1}{a}\right)}\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{{b}^{2}} - \frac{1}{a}\right)\\ \end{array} \]
                              2. sub-negN/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \color{blue}{\left(\frac{c}{{b}^{2}} + \left(\mathsf{neg}\left(\frac{1}{a}\right)\right)\right)}\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{{b}^{2}} + \left(\mathsf{neg}\left(\frac{1}{a}\right)\right)\right)\\ \end{array} \]
                              3. +-lowering-+.f64N/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \color{blue}{\left(\frac{c}{{b}^{2}} + \left(\mathsf{neg}\left(\frac{1}{a}\right)\right)\right)}\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{{b}^{2}} + \left(\mathsf{neg}\left(\frac{1}{a}\right)\right)\right)\\ \end{array} \]
                              4. /-lowering-/.f64N/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\color{blue}{\frac{c}{{b}^{2}}} + \left(\mathsf{neg}\left(\frac{1}{a}\right)\right)\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{{b}^{2}} + \left(\mathsf{neg}\left(\frac{1}{a}\right)\right)\right)\\ \end{array} \]
                              5. unpow2N/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{\color{blue}{b \cdot b}} + \left(\mathsf{neg}\left(\frac{1}{a}\right)\right)\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \left(\mathsf{neg}\left(\frac{1}{a}\right)\right)\right)\\ \end{array} \]
                              6. *-lowering-*.f64N/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{\color{blue}{b \cdot b}} + \left(\mathsf{neg}\left(\frac{1}{a}\right)\right)\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \left(\mathsf{neg}\left(\frac{1}{a}\right)\right)\right)\\ \end{array} \]
                              7. distribute-neg-fracN/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \color{blue}{\frac{\mathsf{neg}\left(1\right)}{a}}\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{\mathsf{neg}\left(1\right)}{a}\right)\\ \end{array} \]
                              8. metadata-evalN/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{\color{blue}{-1}}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \end{array} \]
                              9. /-lowering-/.f6464.6

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \color{blue}{\frac{-1}{a}}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array} \]
                            5. Simplified64.6%

                              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array} \]
                            6. Taylor expanded in b around 0

                              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\color{blue}{\frac{c}{b \cdot b}} + \frac{-1}{a}\right)\\ \end{array} \]
                            7. Step-by-step derivation
                              1. *-commutativeN/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\color{blue}{\frac{c}{b \cdot b}} + \frac{-1}{a}\right)\\ \end{array} \]
                              2. *-lowering-*.f64N/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;b \cdot \left(\color{blue}{\frac{c}{b \cdot b}} + \frac{-1}{a}\right)\\ \end{array} \]
                              3. *-lowering-*.f6464.0

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-\color{blue}{b}\right) + \sqrt{\left(a \cdot c\right) \cdot -4}}\\ \end{array} \]
                            8. Simplified64.0%

                              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right)} + \sqrt{\left(a \cdot c\right) \cdot -4}}\\ \end{array} \]
                          8. Recombined 2 regimes into one program.
                          9. Final simplification72.0%

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \leq -1.22 \cdot 10^{-82}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - b}{a \cdot 2}\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot -2}{b + b}\\ \end{array}\\ \mathbf{elif}\;b \geq 0:\\ \;\;\;\;b \cdot \left(\frac{c}{b \cdot b} + \frac{-1}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot 2}{\sqrt{-4 \cdot \left(a \cdot c\right)} - b}\\ \end{array} \]
                          10. Add Preprocessing

                          Alternative 9: 68.1% accurate, 1.7× speedup?

                          \[\begin{array}{l} \\ \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{c}{b} - \frac{b}{a}\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot 2}{\left(-b\right) - b}\\ \end{array} \end{array} \]
                          (FPCore (a b c)
                           :precision binary64
                           (if (>= b 0.0) (- (/ c b) (/ b a)) (/ (* c 2.0) (- (- b) b))))
                          double code(double a, double b, double c) {
                          	double tmp;
                          	if (b >= 0.0) {
                          		tmp = (c / b) - (b / a);
                          	} else {
                          		tmp = (c * 2.0) / (-b - b);
                          	}
                          	return tmp;
                          }
                          
                          real(8) function code(a, b, c)
                              real(8), intent (in) :: a
                              real(8), intent (in) :: b
                              real(8), intent (in) :: c
                              real(8) :: tmp
                              if (b >= 0.0d0) then
                                  tmp = (c / b) - (b / a)
                              else
                                  tmp = (c * 2.0d0) / (-b - b)
                              end if
                              code = tmp
                          end function
                          
                          public static double code(double a, double b, double c) {
                          	double tmp;
                          	if (b >= 0.0) {
                          		tmp = (c / b) - (b / a);
                          	} else {
                          		tmp = (c * 2.0) / (-b - b);
                          	}
                          	return tmp;
                          }
                          
                          def code(a, b, c):
                          	tmp = 0
                          	if b >= 0.0:
                          		tmp = (c / b) - (b / a)
                          	else:
                          		tmp = (c * 2.0) / (-b - b)
                          	return tmp
                          
                          function code(a, b, c)
                          	tmp = 0.0
                          	if (b >= 0.0)
                          		tmp = Float64(Float64(c / b) - Float64(b / a));
                          	else
                          		tmp = Float64(Float64(c * 2.0) / Float64(Float64(-b) - b));
                          	end
                          	return tmp
                          end
                          
                          function tmp_2 = code(a, b, c)
                          	tmp = 0.0;
                          	if (b >= 0.0)
                          		tmp = (c / b) - (b / a);
                          	else
                          		tmp = (c * 2.0) / (-b - b);
                          	end
                          	tmp_2 = tmp;
                          end
                          
                          code[a_, b_, c_] := If[GreaterEqual[b, 0.0], N[(N[(c / b), $MachinePrecision] - N[(b / a), $MachinePrecision]), $MachinePrecision], N[(N[(c * 2.0), $MachinePrecision] / N[((-b) - b), $MachinePrecision]), $MachinePrecision]]
                          
                          \begin{array}{l}
                          
                          \\
                          \begin{array}{l}
                          \mathbf{if}\;b \geq 0:\\
                          \;\;\;\;\frac{c}{b} - \frac{b}{a}\\
                          
                          \mathbf{else}:\\
                          \;\;\;\;\frac{c \cdot 2}{\left(-b\right) - b}\\
                          
                          
                          \end{array}
                          \end{array}
                          
                          Derivation
                          1. Initial program 74.8%

                            \[\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array} \]
                          2. Add Preprocessing
                          3. Taylor expanded in b around -inf

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                          4. Step-by-step derivation
                            1. mul-1-negN/A

                              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                            2. neg-lowering-neg.f6473.2

                              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
                          5. Simplified73.2%

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
                          6. Taylor expanded in c around 0

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{-1 \cdot \frac{b}{a} + \frac{c}{b}}\\ \mathbf{else}:\\ \;\;\;\;-1 \cdot \frac{b}{a} + \frac{c}{b}\\ \end{array} \]
                          7. Step-by-step derivation
                            1. +-commutativeN/A

                              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{\frac{c}{b} + -1 \cdot \frac{b}{a}}\\ \mathbf{else}:\\ \;\;\;\;\frac{c}{b} + -1 \cdot \frac{b}{a}\\ \end{array} \]
                            2. mul-1-negN/A

                              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{c}{b} + \color{blue}{\left(\mathsf{neg}\left(\frac{b}{a}\right)\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{c}{b} + \left(\mathsf{neg}\left(\frac{b}{a}\right)\right)\\ \end{array} \]
                            3. unsub-negN/A

                              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{\frac{c}{b} - \frac{b}{a}}\\ \mathbf{else}:\\ \;\;\;\;\frac{c}{b} - \frac{b}{a}\\ \end{array} \]
                            4. --lowering--.f64N/A

                              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{\frac{c}{b} - \frac{b}{a}}\\ \mathbf{else}:\\ \;\;\;\;\frac{c}{b} - \frac{b}{a}\\ \end{array} \]
                            5. /-lowering-/.f64N/A

                              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{\frac{c}{b}} - \frac{b}{a}\\ \mathbf{else}:\\ \;\;\;\;\frac{c}{b} - \frac{b}{a}\\ \end{array} \]
                            6. /-lowering-/.f6465.9

                              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{c}{b} - \color{blue}{\frac{b}{a}}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \left(-b\right)}\\ \end{array} \]
                          8. Simplified65.9%

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{\frac{c}{b} - \frac{b}{a}}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \left(-b\right)}\\ \end{array} \]
                          9. Final simplification65.9%

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{c}{b} - \frac{b}{a}\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot 2}{\left(-b\right) - b}\\ \end{array} \]
                          10. Add Preprocessing

                          Alternative 10: 67.9% accurate, 2.0× speedup?

                          \[\begin{array}{l} \\ \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - b}{a \cdot 2}\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot -2}{b + b}\\ \end{array} \end{array} \]
                          (FPCore (a b c)
                           :precision binary64
                           (if (>= b 0.0) (/ (- (- b) b) (* a 2.0)) (/ (* c -2.0) (+ b b))))
                          double code(double a, double b, double c) {
                          	double tmp;
                          	if (b >= 0.0) {
                          		tmp = (-b - b) / (a * 2.0);
                          	} else {
                          		tmp = (c * -2.0) / (b + b);
                          	}
                          	return tmp;
                          }
                          
                          real(8) function code(a, b, c)
                              real(8), intent (in) :: a
                              real(8), intent (in) :: b
                              real(8), intent (in) :: c
                              real(8) :: tmp
                              if (b >= 0.0d0) then
                                  tmp = (-b - b) / (a * 2.0d0)
                              else
                                  tmp = (c * (-2.0d0)) / (b + b)
                              end if
                              code = tmp
                          end function
                          
                          public static double code(double a, double b, double c) {
                          	double tmp;
                          	if (b >= 0.0) {
                          		tmp = (-b - b) / (a * 2.0);
                          	} else {
                          		tmp = (c * -2.0) / (b + b);
                          	}
                          	return tmp;
                          }
                          
                          def code(a, b, c):
                          	tmp = 0
                          	if b >= 0.0:
                          		tmp = (-b - b) / (a * 2.0)
                          	else:
                          		tmp = (c * -2.0) / (b + b)
                          	return tmp
                          
                          function code(a, b, c)
                          	tmp = 0.0
                          	if (b >= 0.0)
                          		tmp = Float64(Float64(Float64(-b) - b) / Float64(a * 2.0));
                          	else
                          		tmp = Float64(Float64(c * -2.0) / Float64(b + b));
                          	end
                          	return tmp
                          end
                          
                          function tmp_2 = code(a, b, c)
                          	tmp = 0.0;
                          	if (b >= 0.0)
                          		tmp = (-b - b) / (a * 2.0);
                          	else
                          		tmp = (c * -2.0) / (b + b);
                          	end
                          	tmp_2 = tmp;
                          end
                          
                          code[a_, b_, c_] := If[GreaterEqual[b, 0.0], N[(N[((-b) - b), $MachinePrecision] / N[(a * 2.0), $MachinePrecision]), $MachinePrecision], N[(N[(c * -2.0), $MachinePrecision] / N[(b + b), $MachinePrecision]), $MachinePrecision]]
                          
                          \begin{array}{l}
                          
                          \\
                          \begin{array}{l}
                          \mathbf{if}\;b \geq 0:\\
                          \;\;\;\;\frac{\left(-b\right) - b}{a \cdot 2}\\
                          
                          \mathbf{else}:\\
                          \;\;\;\;\frac{c \cdot -2}{b + b}\\
                          
                          
                          \end{array}
                          \end{array}
                          
                          Derivation
                          1. Initial program 74.8%

                            \[\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array} \]
                          2. Add Preprocessing
                          3. Taylor expanded in b around -inf

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                          4. Step-by-step derivation
                            1. mul-1-negN/A

                              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                            2. neg-lowering-neg.f6473.2

                              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
                          5. Simplified73.2%

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
                          6. Taylor expanded in b around inf

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                          7. Step-by-step derivation
                            1. Simplified65.6%

                              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \color{blue}{b}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \left(-b\right)}\\ \end{array} \]
                            2. Step-by-step derivation
                              1. frac-2negN/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                              2. flip-+N/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
                              3. +-inversesN/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \end{array} \]
                              4. distribute-neg-frac2N/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
                              5. metadata-evalN/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                              6. +-inversesN/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                              7. flip-+N/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
                              8. sub-negN/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
                              9. /-lowering-/.f64N/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                              10. *-commutativeN/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                              11. distribute-rgt-neg-inN/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                              12. *-lowering-*.f64N/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                              13. metadata-evalN/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                              14. sub-negN/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
                              15. flip-+N/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
                              16. +-inversesN/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                              17. metadata-evalN/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                              18. distribute-neg-frac2N/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
                            3. Applied egg-rr65.6%

                              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot -2}{b + b}\\ \end{array} \]
                            4. Final simplification65.6%

                              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - b}{a \cdot 2}\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot -2}{b + b}\\ \end{array} \]
                            5. Add Preprocessing

                            Alternative 11: 47.8% accurate, 2.0× speedup?

                            \[\begin{array}{l} \\ \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - b}{a \cdot 2}\\ \mathbf{else}:\\ \;\;\;\;-\frac{c}{b + b}\\ \end{array} \end{array} \]
                            (FPCore (a b c)
                             :precision binary64
                             (if (>= b 0.0) (/ (- (- b) b) (* a 2.0)) (- (/ c (+ b b)))))
                            double code(double a, double b, double c) {
                            	double tmp;
                            	if (b >= 0.0) {
                            		tmp = (-b - b) / (a * 2.0);
                            	} else {
                            		tmp = -(c / (b + b));
                            	}
                            	return tmp;
                            }
                            
                            real(8) function code(a, b, c)
                                real(8), intent (in) :: a
                                real(8), intent (in) :: b
                                real(8), intent (in) :: c
                                real(8) :: tmp
                                if (b >= 0.0d0) then
                                    tmp = (-b - b) / (a * 2.0d0)
                                else
                                    tmp = -(c / (b + b))
                                end if
                                code = tmp
                            end function
                            
                            public static double code(double a, double b, double c) {
                            	double tmp;
                            	if (b >= 0.0) {
                            		tmp = (-b - b) / (a * 2.0);
                            	} else {
                            		tmp = -(c / (b + b));
                            	}
                            	return tmp;
                            }
                            
                            def code(a, b, c):
                            	tmp = 0
                            	if b >= 0.0:
                            		tmp = (-b - b) / (a * 2.0)
                            	else:
                            		tmp = -(c / (b + b))
                            	return tmp
                            
                            function code(a, b, c)
                            	tmp = 0.0
                            	if (b >= 0.0)
                            		tmp = Float64(Float64(Float64(-b) - b) / Float64(a * 2.0));
                            	else
                            		tmp = Float64(-Float64(c / Float64(b + b)));
                            	end
                            	return tmp
                            end
                            
                            function tmp_2 = code(a, b, c)
                            	tmp = 0.0;
                            	if (b >= 0.0)
                            		tmp = (-b - b) / (a * 2.0);
                            	else
                            		tmp = -(c / (b + b));
                            	end
                            	tmp_2 = tmp;
                            end
                            
                            code[a_, b_, c_] := If[GreaterEqual[b, 0.0], N[(N[((-b) - b), $MachinePrecision] / N[(a * 2.0), $MachinePrecision]), $MachinePrecision], (-N[(c / N[(b + b), $MachinePrecision]), $MachinePrecision])]
                            
                            \begin{array}{l}
                            
                            \\
                            \begin{array}{l}
                            \mathbf{if}\;b \geq 0:\\
                            \;\;\;\;\frac{\left(-b\right) - b}{a \cdot 2}\\
                            
                            \mathbf{else}:\\
                            \;\;\;\;-\frac{c}{b + b}\\
                            
                            
                            \end{array}
                            \end{array}
                            
                            Derivation
                            1. Initial program 74.8%

                              \[\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array} \]
                            2. Add Preprocessing
                            3. Taylor expanded in b around -inf

                              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                            4. Step-by-step derivation
                              1. mul-1-negN/A

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                              2. neg-lowering-neg.f6473.2

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
                            5. Simplified73.2%

                              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
                            6. Taylor expanded in b around inf

                              \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                            7. Step-by-step derivation
                              1. Simplified65.6%

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \color{blue}{b}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \left(-b\right)}\\ \end{array} \]
                              2. Step-by-step derivation
                                1. clear-numN/A

                                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                                2. sub-negN/A

                                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
                                3. associate-/r*N/A

                                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}}\\ \end{array} \]
                                4. sub-negN/A

                                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right)} - b}{2 \cdot a}\\ \end{array} \]
                                5. flip-+N/A

                                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right)} - b}{2 \cdot a}\\ \end{array} \]
                                6. +-inversesN/A

                                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                                7. associate-/l/N/A

                                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
                                8. metadata-evalN/A

                                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \end{array} \]
                                9. +-inversesN/A

                                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \end{array} \]
                                10. flip-+N/A

                                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
                                11. sub-negN/A

                                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
                                12. clear-numN/A

                                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                                13. frac-2negN/A

                                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                                14. sub-negN/A

                                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
                                15. flip-+N/A

                                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
                                16. +-inversesN/A

                                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \end{array} \]
                              3. Applied egg-rr46.9%

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{-c}{b + b}\\ \end{array} \]
                              4. Final simplification46.9%

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - b}{a \cdot 2}\\ \mathbf{else}:\\ \;\;\;\;-\frac{c}{b + b}\\ \end{array} \]
                              5. Add Preprocessing

                              Alternative 12: 36.3% accurate, 2.0× speedup?

                              \[\begin{array}{l} \\ \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - b}{a \cdot 2}\\ \mathbf{else}:\\ \;\;\;\;\left(b + b\right) \cdot \left(c \cdot -2\right)\\ \end{array} \end{array} \]
                              (FPCore (a b c)
                               :precision binary64
                               (if (>= b 0.0) (/ (- (- b) b) (* a 2.0)) (* (+ b b) (* c -2.0))))
                              double code(double a, double b, double c) {
                              	double tmp;
                              	if (b >= 0.0) {
                              		tmp = (-b - b) / (a * 2.0);
                              	} else {
                              		tmp = (b + b) * (c * -2.0);
                              	}
                              	return tmp;
                              }
                              
                              real(8) function code(a, b, c)
                                  real(8), intent (in) :: a
                                  real(8), intent (in) :: b
                                  real(8), intent (in) :: c
                                  real(8) :: tmp
                                  if (b >= 0.0d0) then
                                      tmp = (-b - b) / (a * 2.0d0)
                                  else
                                      tmp = (b + b) * (c * (-2.0d0))
                                  end if
                                  code = tmp
                              end function
                              
                              public static double code(double a, double b, double c) {
                              	double tmp;
                              	if (b >= 0.0) {
                              		tmp = (-b - b) / (a * 2.0);
                              	} else {
                              		tmp = (b + b) * (c * -2.0);
                              	}
                              	return tmp;
                              }
                              
                              def code(a, b, c):
                              	tmp = 0
                              	if b >= 0.0:
                              		tmp = (-b - b) / (a * 2.0)
                              	else:
                              		tmp = (b + b) * (c * -2.0)
                              	return tmp
                              
                              function code(a, b, c)
                              	tmp = 0.0
                              	if (b >= 0.0)
                              		tmp = Float64(Float64(Float64(-b) - b) / Float64(a * 2.0));
                              	else
                              		tmp = Float64(Float64(b + b) * Float64(c * -2.0));
                              	end
                              	return tmp
                              end
                              
                              function tmp_2 = code(a, b, c)
                              	tmp = 0.0;
                              	if (b >= 0.0)
                              		tmp = (-b - b) / (a * 2.0);
                              	else
                              		tmp = (b + b) * (c * -2.0);
                              	end
                              	tmp_2 = tmp;
                              end
                              
                              code[a_, b_, c_] := If[GreaterEqual[b, 0.0], N[(N[((-b) - b), $MachinePrecision] / N[(a * 2.0), $MachinePrecision]), $MachinePrecision], N[(N[(b + b), $MachinePrecision] * N[(c * -2.0), $MachinePrecision]), $MachinePrecision]]
                              
                              \begin{array}{l}
                              
                              \\
                              \begin{array}{l}
                              \mathbf{if}\;b \geq 0:\\
                              \;\;\;\;\frac{\left(-b\right) - b}{a \cdot 2}\\
                              
                              \mathbf{else}:\\
                              \;\;\;\;\left(b + b\right) \cdot \left(c \cdot -2\right)\\
                              
                              
                              \end{array}
                              \end{array}
                              
                              Derivation
                              1. Initial program 74.8%

                                \[\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array} \]
                              2. Add Preprocessing
                              3. Taylor expanded in b around -inf

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                              4. Step-by-step derivation
                                1. mul-1-negN/A

                                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                                2. neg-lowering-neg.f6473.2

                                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
                              5. Simplified73.2%

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
                              6. Taylor expanded in b around inf

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                              7. Step-by-step derivation
                                1. Simplified65.6%

                                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \color{blue}{b}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \left(-b\right)}\\ \end{array} \]
                                2. Step-by-step derivation
                                  1. frac-2negN/A

                                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                                  2. sub-negN/A

                                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
                                  3. div-invN/A

                                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                                  4. sub-negN/A

                                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{\color{blue}{2} \cdot a}\\ \end{array} \]
                                  5. flip-+N/A

                                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{\color{blue}{2} \cdot a}\\ \end{array} \]
                                  6. +-inversesN/A

                                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                                  7. distribute-neg-frac2N/A

                                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                                  8. metadata-evalN/A

                                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot \color{blue}{a}}\\ \end{array} \]
                                  9. sqr-negN/A

                                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                                  10. sqr-negN/A

                                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                                  11. +-inversesN/A

                                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{\color{blue}{2} \cdot a}\\ \end{array} \]
                                  12. +-inversesN/A

                                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{\color{blue}{2} \cdot a}\\ \end{array} \]
                                  13. +-inversesN/A

                                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot \color{blue}{a}}\\ \end{array} \]
                                  14. sqr-negN/A

                                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                                  15. sqr-negN/A

                                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                                3. Applied egg-rr35.4%

                                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\left(c \cdot -2\right) \cdot \left(b + b\right)\\ \end{array} \]
                                4. Final simplification35.4%

                                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - b}{a \cdot 2}\\ \mathbf{else}:\\ \;\;\;\;\left(b + b\right) \cdot \left(c \cdot -2\right)\\ \end{array} \]
                                5. Add Preprocessing

                                Alternative 13: 36.3% accurate, 2.8× speedup?

                                \[\begin{array}{l} \\ \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{b}{-a}\\ \mathbf{else}:\\ \;\;\;\;-2 \cdot \left(b \cdot c\right)\\ \end{array} \end{array} \]
                                (FPCore (a b c)
                                 :precision binary64
                                 (if (>= b 0.0) (/ b (- a)) (* -2.0 (* b c))))
                                double code(double a, double b, double c) {
                                	double tmp;
                                	if (b >= 0.0) {
                                		tmp = b / -a;
                                	} else {
                                		tmp = -2.0 * (b * c);
                                	}
                                	return tmp;
                                }
                                
                                real(8) function code(a, b, c)
                                    real(8), intent (in) :: a
                                    real(8), intent (in) :: b
                                    real(8), intent (in) :: c
                                    real(8) :: tmp
                                    if (b >= 0.0d0) then
                                        tmp = b / -a
                                    else
                                        tmp = (-2.0d0) * (b * c)
                                    end if
                                    code = tmp
                                end function
                                
                                public static double code(double a, double b, double c) {
                                	double tmp;
                                	if (b >= 0.0) {
                                		tmp = b / -a;
                                	} else {
                                		tmp = -2.0 * (b * c);
                                	}
                                	return tmp;
                                }
                                
                                def code(a, b, c):
                                	tmp = 0
                                	if b >= 0.0:
                                		tmp = b / -a
                                	else:
                                		tmp = -2.0 * (b * c)
                                	return tmp
                                
                                function code(a, b, c)
                                	tmp = 0.0
                                	if (b >= 0.0)
                                		tmp = Float64(b / Float64(-a));
                                	else
                                		tmp = Float64(-2.0 * Float64(b * c));
                                	end
                                	return tmp
                                end
                                
                                function tmp_2 = code(a, b, c)
                                	tmp = 0.0;
                                	if (b >= 0.0)
                                		tmp = b / -a;
                                	else
                                		tmp = -2.0 * (b * c);
                                	end
                                	tmp_2 = tmp;
                                end
                                
                                code[a_, b_, c_] := If[GreaterEqual[b, 0.0], N[(b / (-a)), $MachinePrecision], N[(-2.0 * N[(b * c), $MachinePrecision]), $MachinePrecision]]
                                
                                \begin{array}{l}
                                
                                \\
                                \begin{array}{l}
                                \mathbf{if}\;b \geq 0:\\
                                \;\;\;\;\frac{b}{-a}\\
                                
                                \mathbf{else}:\\
                                \;\;\;\;-2 \cdot \left(b \cdot c\right)\\
                                
                                
                                \end{array}
                                \end{array}
                                
                                Derivation
                                1. Initial program 74.8%

                                  \[\begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array} \]
                                2. Add Preprocessing
                                3. Taylor expanded in b around -inf

                                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                                4. Step-by-step derivation
                                  1. mul-1-negN/A

                                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\color{blue}{2 \cdot a}}\\ \end{array} \]
                                  2. neg-lowering-neg.f6473.2

                                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
                                5. Simplified73.2%

                                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{\left(-b\right) + \left(-b\right)}}\\ \end{array} \]
                                6. Taylor expanded in b around inf

                                  \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - \color{blue}{b}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                                7. Step-by-step derivation
                                  1. Simplified65.6%

                                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - \color{blue}{b}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \left(-b\right)}\\ \end{array} \]
                                  2. Step-by-step derivation
                                    1. frac-2negN/A

                                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                                    2. sub-negN/A

                                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{\left(\mathsf{neg}\left(b\right)\right) - b}}{2 \cdot a}\\ \end{array} \]
                                    3. distribute-frac-negN/A

                                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                                    4. sub-negN/A

                                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                                    5. flip-+N/A

                                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                                    6. +-inversesN/A

                                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                                    7. distribute-neg-frac2N/A

                                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                                    8. metadata-evalN/A

                                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                                    9. +-inversesN/A

                                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                                    10. flip-+N/A

                                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                                    11. sub-negN/A

                                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                                    12. neg-lowering-neg.f64N/A

                                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                                    13. clear-numN/A

                                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                                    14. associate-/r*N/A

                                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\mathsf{neg}\left(b\right)\right) - b}{2 \cdot a}\\ \end{array} \]
                                  3. Applied egg-rr35.4%

                                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{\left(-b\right) - b}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;-c \cdot \left(b + b\right)\\ \end{array} \]
                                  4. Taylor expanded in b around 0

                                    \[\leadsto \color{blue}{\begin{array}{l} \color{blue}{\mathbf{if}\;b \geq 0:\\ \;\;\;\;-1 \cdot \frac{b}{a}\\ \mathbf{else}:\\ \;\;\;\;-1 \cdot \frac{b}{a}\\ } \end{array}} \]
                                  5. Step-by-step derivation
                                    1. >=-lowering->=.f64N/A

                                      \[\leadsto \begin{array}{l} \mathbf{if}\;\color{blue}{b \geq 0}:\\ \;\;\;\;-1 \cdot \frac{b}{a}\\ \mathbf{else}:\\ \;\;\;\;-1 \cdot \frac{b}{a}\\ \end{array} \]
                                    2. mul-1-negN/A

                                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{\mathsf{neg}\left(\frac{b}{a}\right)}\\ \mathbf{else}:\\ \;\;\;\;\mathsf{neg}\left(\frac{b}{a}\right)\\ \end{array} \]
                                    3. distribute-neg-frac2N/A

                                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{\frac{b}{\mathsf{neg}\left(a\right)}}\\ \mathbf{else}:\\ \;\;\;\;\frac{b}{\mathsf{neg}\left(a\right)}\\ \end{array} \]
                                    4. mul-1-negN/A

                                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{b}{\color{blue}{-1 \cdot a}}\\ \mathbf{else}:\\ \;\;\;\;\frac{b}{-1 \cdot a}\\ \end{array} \]
                                    5. /-lowering-/.f64N/A

                                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\color{blue}{\frac{b}{-1 \cdot a}}\\ \mathbf{else}:\\ \;\;\;\;\frac{b}{-1 \cdot a}\\ \end{array} \]
                                    6. mul-1-negN/A

                                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{b}{\color{blue}{\mathsf{neg}\left(a\right)}}\\ \mathbf{else}:\\ \;\;\;\;\frac{b}{\mathsf{neg}\left(a\right)}\\ \end{array} \]
                                    7. neg-lowering-neg.f64N/A

                                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{b}{\color{blue}{\mathsf{neg}\left(a\right)}}\\ \mathbf{else}:\\ \;\;\;\;\frac{b}{\mathsf{neg}\left(a\right)}\\ \end{array} \]
                                    8. distribute-lft-neg-inN/A

                                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{b}{\mathsf{neg}\left(a\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{b}{\mathsf{neg}\left(a\right)}\\ \end{array} \]
                                    9. metadata-evalN/A

                                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{b}{\mathsf{neg}\left(a\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{b}{\mathsf{neg}\left(a\right)}\\ \end{array} \]
                                    10. *-commutativeN/A

                                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{b}{\mathsf{neg}\left(a\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{b}{\mathsf{neg}\left(a\right)}\\ \end{array} \]
                                    11. *-lowering-*.f64N/A

                                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{b}{\mathsf{neg}\left(a\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{b}{\mathsf{neg}\left(a\right)}\\ \end{array} \]
                                    12. *-commutativeN/A

                                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{b}{\mathsf{neg}\left(a\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{b}{\mathsf{neg}\left(a\right)}\\ \end{array} \]
                                    13. *-lowering-*.f6435.4

                                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{b}{-a}\\ \mathbf{else}:\\ \;\;\;\;\left(c \cdot b\right) \cdot -2\\ \end{array} \]
                                  6. Simplified35.4%

                                    \[\leadsto \color{blue}{\begin{array}{l} \color{blue}{\mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{b}{-a}\\ \mathbf{else}:\\ \;\;\;\;\left(c \cdot b\right) \cdot -2\\ } \end{array}} \]
                                  7. Final simplification35.4%

                                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \geq 0:\\ \;\;\;\;\frac{b}{-a}\\ \mathbf{else}:\\ \;\;\;\;-2 \cdot \left(b \cdot c\right)\\ \end{array} \]
                                  8. Add Preprocessing

                                  Reproduce

                                  ?
                                  herbie shell --seed 2024205 
                                  (FPCore (a b c)
                                    :name "jeff quadratic root 1"
                                    :precision binary64
                                    (if (>= b 0.0) (/ (- (- b) (sqrt (- (* b b) (* (* 4.0 a) c)))) (* 2.0 a)) (/ (* 2.0 c) (+ (- b) (sqrt (- (* b b) (* (* 4.0 a) c)))))))