Average Error: 52.3 → 31.1
Time: 45.2s
Precision: binary64
Cost: 21132
\[ \begin{array}{c}[A, C] = \mathsf{sort}([A, C])\\ \end{array} \]
\[\frac{-\sqrt{\left(2 \cdot \left(\left({B}^{2} - \left(4 \cdot A\right) \cdot C\right) \cdot F\right)\right) \cdot \left(\left(A + C\right) - \sqrt{{\left(A - C\right)}^{2} + {B}^{2}}\right)}}{{B}^{2} - \left(4 \cdot A\right) \cdot C} \]
\[\begin{array}{l} t_0 := -\sqrt{\frac{A - \left(\mathsf{hypot}\left(B, A - C\right) - C\right)}{\mathsf{fma}\left(A, C \cdot -4, B \cdot B\right)} \cdot \left(F \cdot 2\right)}\\ t_1 := \mathsf{fma}\left(B, B, A \cdot \left(C \cdot -4\right)\right)\\ \mathbf{if}\;B \leq -6 \cdot 10^{+116}:\\ \;\;\;\;\frac{\sqrt{-F}}{\sqrt{-B}} \cdot \left(-\sqrt{2}\right)\\ \mathbf{elif}\;B \leq -2.2 \cdot 10^{-103}:\\ \;\;\;\;t_0\\ \mathbf{elif}\;B \leq 2.9 \cdot 10^{-75}:\\ \;\;\;\;\frac{-\sqrt{t_1 \cdot \left(2 \cdot \left(F \cdot \left(A + A\right)\right)\right)}}{t_1}\\ \mathbf{elif}\;B \leq 2.55 \cdot 10^{+107}:\\ \;\;\;\;t_0\\ \mathbf{else}:\\ \;\;\;\;\frac{-1}{B} \cdot \left(\sqrt{2} \cdot \sqrt{F \cdot \left(A - \mathsf{hypot}\left(A, B\right)\right)}\right)\\ \end{array} \]
(FPCore (A B C F)
 :precision binary64
 (/
  (-
   (sqrt
    (*
     (* 2.0 (* (- (pow B 2.0) (* (* 4.0 A) C)) F))
     (- (+ A C) (sqrt (+ (pow (- A C) 2.0) (pow B 2.0)))))))
  (- (pow B 2.0) (* (* 4.0 A) C))))
(FPCore (A B C F)
 :precision binary64
 (let* ((t_0
         (-
          (sqrt
           (*
            (/ (- A (- (hypot B (- A C)) C)) (fma A (* C -4.0) (* B B)))
            (* F 2.0)))))
        (t_1 (fma B B (* A (* C -4.0)))))
   (if (<= B -6e+116)
     (* (/ (sqrt (- F)) (sqrt (- B))) (- (sqrt 2.0)))
     (if (<= B -2.2e-103)
       t_0
       (if (<= B 2.9e-75)
         (/ (- (sqrt (* t_1 (* 2.0 (* F (+ A A)))))) t_1)
         (if (<= B 2.55e+107)
           t_0
           (* (/ -1.0 B) (* (sqrt 2.0) (sqrt (* F (- A (hypot A B))))))))))))
double code(double A, double B, double C, double F) {
	return -sqrt(((2.0 * ((pow(B, 2.0) - ((4.0 * A) * C)) * F)) * ((A + C) - sqrt((pow((A - C), 2.0) + pow(B, 2.0)))))) / (pow(B, 2.0) - ((4.0 * A) * C));
}
double code(double A, double B, double C, double F) {
	double t_0 = -sqrt((((A - (hypot(B, (A - C)) - C)) / fma(A, (C * -4.0), (B * B))) * (F * 2.0)));
	double t_1 = fma(B, B, (A * (C * -4.0)));
	double tmp;
	if (B <= -6e+116) {
		tmp = (sqrt(-F) / sqrt(-B)) * -sqrt(2.0);
	} else if (B <= -2.2e-103) {
		tmp = t_0;
	} else if (B <= 2.9e-75) {
		tmp = -sqrt((t_1 * (2.0 * (F * (A + A))))) / t_1;
	} else if (B <= 2.55e+107) {
		tmp = t_0;
	} else {
		tmp = (-1.0 / B) * (sqrt(2.0) * sqrt((F * (A - hypot(A, B)))));
	}
	return tmp;
}
function code(A, B, C, F)
	return Float64(Float64(-sqrt(Float64(Float64(2.0 * Float64(Float64((B ^ 2.0) - Float64(Float64(4.0 * A) * C)) * F)) * Float64(Float64(A + C) - sqrt(Float64((Float64(A - C) ^ 2.0) + (B ^ 2.0))))))) / Float64((B ^ 2.0) - Float64(Float64(4.0 * A) * C)))
end
function code(A, B, C, F)
	t_0 = Float64(-sqrt(Float64(Float64(Float64(A - Float64(hypot(B, Float64(A - C)) - C)) / fma(A, Float64(C * -4.0), Float64(B * B))) * Float64(F * 2.0))))
	t_1 = fma(B, B, Float64(A * Float64(C * -4.0)))
	tmp = 0.0
	if (B <= -6e+116)
		tmp = Float64(Float64(sqrt(Float64(-F)) / sqrt(Float64(-B))) * Float64(-sqrt(2.0)));
	elseif (B <= -2.2e-103)
		tmp = t_0;
	elseif (B <= 2.9e-75)
		tmp = Float64(Float64(-sqrt(Float64(t_1 * Float64(2.0 * Float64(F * Float64(A + A)))))) / t_1);
	elseif (B <= 2.55e+107)
		tmp = t_0;
	else
		tmp = Float64(Float64(-1.0 / B) * Float64(sqrt(2.0) * sqrt(Float64(F * Float64(A - hypot(A, B))))));
	end
	return tmp
end
code[A_, B_, C_, F_] := N[((-N[Sqrt[N[(N[(2.0 * N[(N[(N[Power[B, 2.0], $MachinePrecision] - N[(N[(4.0 * A), $MachinePrecision] * C), $MachinePrecision]), $MachinePrecision] * F), $MachinePrecision]), $MachinePrecision] * N[(N[(A + C), $MachinePrecision] - N[Sqrt[N[(N[Power[N[(A - C), $MachinePrecision], 2.0], $MachinePrecision] + N[Power[B, 2.0], $MachinePrecision]), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]) / N[(N[Power[B, 2.0], $MachinePrecision] - N[(N[(4.0 * A), $MachinePrecision] * C), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
code[A_, B_, C_, F_] := Block[{t$95$0 = (-N[Sqrt[N[(N[(N[(A - N[(N[Sqrt[B ^ 2 + N[(A - C), $MachinePrecision] ^ 2], $MachinePrecision] - C), $MachinePrecision]), $MachinePrecision] / N[(A * N[(C * -4.0), $MachinePrecision] + N[(B * B), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * N[(F * 2.0), $MachinePrecision]), $MachinePrecision]], $MachinePrecision])}, Block[{t$95$1 = N[(B * B + N[(A * N[(C * -4.0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[B, -6e+116], N[(N[(N[Sqrt[(-F)], $MachinePrecision] / N[Sqrt[(-B)], $MachinePrecision]), $MachinePrecision] * (-N[Sqrt[2.0], $MachinePrecision])), $MachinePrecision], If[LessEqual[B, -2.2e-103], t$95$0, If[LessEqual[B, 2.9e-75], N[((-N[Sqrt[N[(t$95$1 * N[(2.0 * N[(F * N[(A + A), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]) / t$95$1), $MachinePrecision], If[LessEqual[B, 2.55e+107], t$95$0, N[(N[(-1.0 / B), $MachinePrecision] * N[(N[Sqrt[2.0], $MachinePrecision] * N[Sqrt[N[(F * N[(A - N[Sqrt[A ^ 2 + B ^ 2], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]
\frac{-\sqrt{\left(2 \cdot \left(\left({B}^{2} - \left(4 \cdot A\right) \cdot C\right) \cdot F\right)\right) \cdot \left(\left(A + C\right) - \sqrt{{\left(A - C\right)}^{2} + {B}^{2}}\right)}}{{B}^{2} - \left(4 \cdot A\right) \cdot C}
\begin{array}{l}
t_0 := -\sqrt{\frac{A - \left(\mathsf{hypot}\left(B, A - C\right) - C\right)}{\mathsf{fma}\left(A, C \cdot -4, B \cdot B\right)} \cdot \left(F \cdot 2\right)}\\
t_1 := \mathsf{fma}\left(B, B, A \cdot \left(C \cdot -4\right)\right)\\
\mathbf{if}\;B \leq -6 \cdot 10^{+116}:\\
\;\;\;\;\frac{\sqrt{-F}}{\sqrt{-B}} \cdot \left(-\sqrt{2}\right)\\

\mathbf{elif}\;B \leq -2.2 \cdot 10^{-103}:\\
\;\;\;\;t_0\\

\mathbf{elif}\;B \leq 2.9 \cdot 10^{-75}:\\
\;\;\;\;\frac{-\sqrt{t_1 \cdot \left(2 \cdot \left(F \cdot \left(A + A\right)\right)\right)}}{t_1}\\

\mathbf{elif}\;B \leq 2.55 \cdot 10^{+107}:\\
\;\;\;\;t_0\\

\mathbf{else}:\\
\;\;\;\;\frac{-1}{B} \cdot \left(\sqrt{2} \cdot \sqrt{F \cdot \left(A - \mathsf{hypot}\left(A, B\right)\right)}\right)\\


\end{array}

Error

Derivation

  1. Split input into 4 regimes
  2. if B < -5.9999999999999997e116

    1. Initial program 61.5

      \[\frac{-\sqrt{\left(2 \cdot \left(\left({B}^{2} - \left(4 \cdot A\right) \cdot C\right) \cdot F\right)\right) \cdot \left(\left(A + C\right) - \sqrt{{\left(A - C\right)}^{2} + {B}^{2}}\right)}}{{B}^{2} - \left(4 \cdot A\right) \cdot C} \]
    2. Simplified61.1

      \[\leadsto \color{blue}{\frac{-\sqrt{\mathsf{fma}\left(B, B, A \cdot \left(-4 \cdot C\right)\right) \cdot \left(2 \cdot \left(F \cdot \left(A + \left(C - \mathsf{hypot}\left(B, A - C\right)\right)\right)\right)\right)}}{\mathsf{fma}\left(B, B, A \cdot \left(-4 \cdot C\right)\right)}} \]
      Proof
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (fma.f64 B B (*.f64 A (*.f64 -4 C))) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (hypot.f64 B (-.f64 A C))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (fma.f64 B B (*.f64 A (*.f64 (Rewrite<= metadata-eval (neg.f64 4)) C))) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (hypot.f64 B (-.f64 A C))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (fma.f64 B B (Rewrite<= associate-*l*_binary64 (*.f64 (*.f64 A (neg.f64 4)) C))) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (hypot.f64 B (-.f64 A C))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (fma.f64 B B (*.f64 (Rewrite<= distribute-rgt-neg-in_binary64 (neg.f64 (*.f64 A 4))) C)) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (hypot.f64 B (-.f64 A C))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (fma.f64 B B (*.f64 (neg.f64 (Rewrite<= *-commutative_binary64 (*.f64 4 A))) C)) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (hypot.f64 B (-.f64 A C))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (fma.f64 B B (Rewrite=> distribute-lft-neg-out_binary64 (neg.f64 (*.f64 (*.f64 4 A) C)))) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (hypot.f64 B (-.f64 A C))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (Rewrite<= fma-neg_binary64 (-.f64 (*.f64 B B) (*.f64 (*.f64 4 A) C))) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (hypot.f64 B (-.f64 A C))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 (Rewrite<= unpow2_binary64 (pow.f64 B 2)) (*.f64 (*.f64 4 A) C)) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (hypot.f64 B (-.f64 A C))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (Rewrite<= hypot-def_binary64 (sqrt.f64 (+.f64 (*.f64 B B) (*.f64 (-.f64 A C) (-.f64 A C)))))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 33 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (sqrt.f64 (+.f64 (Rewrite<= unpow2_binary64 (pow.f64 B 2)) (*.f64 (-.f64 A C) (-.f64 A C))))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (sqrt.f64 (+.f64 (pow.f64 B 2) (Rewrite<= unpow2_binary64 (pow.f64 (-.f64 A C) 2))))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (sqrt.f64 (Rewrite<= +-commutative_binary64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) (*.f64 2 (*.f64 F (+.f64 A (Rewrite=> sub-neg_binary64 (+.f64 C (neg.f64 (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) (*.f64 2 (*.f64 F (Rewrite<= associate-+l+_binary64 (+.f64 (+.f64 A C) (neg.f64 (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 13 points increase in error, 5 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) (*.f64 2 (*.f64 F (Rewrite<= sub-neg_binary64 (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (Rewrite<= associate-*l*_binary64 (*.f64 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) 2) (*.f64 F (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (Rewrite<= *-commutative_binary64 (*.f64 2 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))) (*.f64 F (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (Rewrite<= associate-*l*_binary64 (*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C))) F) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 12 points increase in error, 3 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (Rewrite<= associate-*r*_binary64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F))) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (Rewrite<= --rgt-identity_binary64 (-.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))) 0))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (Rewrite<= sub0-neg_binary64 (-.f64 0 (-.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))) 0))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (-.f64 0 (-.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))) 0)) (fma.f64 B B (*.f64 A (*.f64 (Rewrite<= metadata-eval (neg.f64 4)) C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (-.f64 0 (-.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))) 0)) (fma.f64 B B (Rewrite<= associate-*l*_binary64 (*.f64 (*.f64 A (neg.f64 4)) C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (-.f64 0 (-.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))) 0)) (fma.f64 B B (*.f64 (Rewrite<= distribute-rgt-neg-in_binary64 (neg.f64 (*.f64 A 4))) C))): 0 points increase in error, 0 points decrease in error
      (/.f64 (-.f64 0 (-.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))) 0)) (fma.f64 B B (*.f64 (neg.f64 (Rewrite<= *-commutative_binary64 (*.f64 4 A))) C))): 0 points increase in error, 0 points decrease in error
      (/.f64 (-.f64 0 (-.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))) 0)) (fma.f64 B B (Rewrite=> distribute-lft-neg-out_binary64 (neg.f64 (*.f64 (*.f64 4 A) C))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (-.f64 0 (-.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))) 0)) (Rewrite<= fma-neg_binary64 (-.f64 (*.f64 B B) (*.f64 (*.f64 4 A) C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (-.f64 0 (-.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))) 0)) (-.f64 (Rewrite<= unpow2_binary64 (pow.f64 B 2)) (*.f64 (*.f64 4 A) C))): 0 points increase in error, 0 points decrease in error
      (Rewrite=> div-sub_binary64 (-.f64 (/.f64 0 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C))) (/.f64 (-.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))) 0) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C))))): 0 points increase in error, 0 points decrease in error
      (-.f64 (/.f64 0 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C))) (/.f64 (Rewrite=> --rgt-identity_binary64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))): 0 points increase in error, 0 points decrease in error
      (Rewrite<= div-sub_binary64 (/.f64 (-.f64 0 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (Rewrite<= neg-sub0_binary64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C))): 0 points increase in error, 0 points decrease in error
    3. Taylor expanded in B around inf 61.1

      \[\leadsto \frac{-\sqrt{\mathsf{fma}\left(B, B, A \cdot \left(-4 \cdot C\right)\right) \cdot \left(2 \cdot \left(F \cdot \left(A + \left(C - \mathsf{hypot}\left(B, A - C\right)\right)\right)\right)\right)}}{\color{blue}{{B}^{2}}} \]
    4. Simplified61.1

      \[\leadsto \frac{-\sqrt{\mathsf{fma}\left(B, B, A \cdot \left(-4 \cdot C\right)\right) \cdot \left(2 \cdot \left(F \cdot \left(A + \left(C - \mathsf{hypot}\left(B, A - C\right)\right)\right)\right)\right)}}{\color{blue}{B \cdot B}} \]
      Proof
      (*.f64 B B): 0 points increase in error, 0 points decrease in error
      (Rewrite<= unpow2_binary64 (pow.f64 B 2)): 0 points increase in error, 0 points decrease in error
    5. Taylor expanded in B around -inf 61.6

      \[\leadsto \frac{-\sqrt{\mathsf{fma}\left(B, B, A \cdot \left(-4 \cdot C\right)\right) \cdot \left(2 \cdot \left(F \cdot \left(A + \color{blue}{B}\right)\right)\right)}}{B \cdot B} \]
    6. Taylor expanded in A around 0 32.1

      \[\leadsto \color{blue}{-1 \cdot \left(\sqrt{2} \cdot \sqrt{\frac{F}{B}}\right)} \]
    7. Simplified32.1

      \[\leadsto \color{blue}{\sqrt{\frac{F}{B}} \cdot \left(-\sqrt{2}\right)} \]
      Proof
      (*.f64 (sqrt.f64 (/.f64 F B)) (neg.f64 (sqrt.f64 2))): 0 points increase in error, 0 points decrease in error
      (Rewrite<= distribute-rgt-neg-in_binary64 (neg.f64 (*.f64 (sqrt.f64 (/.f64 F B)) (sqrt.f64 2)))): 0 points increase in error, 0 points decrease in error
      (neg.f64 (Rewrite<= *-commutative_binary64 (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 F B))))): 0 points increase in error, 0 points decrease in error
      (Rewrite<= mul-1-neg_binary64 (*.f64 -1 (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 F B))))): 0 points increase in error, 0 points decrease in error
    8. Applied egg-rr17.4

      \[\leadsto \color{blue}{\frac{\sqrt{-F}}{\sqrt{-B}}} \cdot \left(-\sqrt{2}\right) \]

    if -5.9999999999999997e116 < B < -2.1999999999999999e-103 or 2.9000000000000002e-75 < B < 2.5500000000000001e107

    1. Initial program 43.6

      \[\frac{-\sqrt{\left(2 \cdot \left(\left({B}^{2} - \left(4 \cdot A\right) \cdot C\right) \cdot F\right)\right) \cdot \left(\left(A + C\right) - \sqrt{{\left(A - C\right)}^{2} + {B}^{2}}\right)}}{{B}^{2} - \left(4 \cdot A\right) \cdot C} \]
    2. Simplified38.2

      \[\leadsto \color{blue}{\frac{-\sqrt{\mathsf{fma}\left(B, B, A \cdot \left(-4 \cdot C\right)\right) \cdot \left(2 \cdot \left(F \cdot \left(A + \left(C - \mathsf{hypot}\left(B, A - C\right)\right)\right)\right)\right)}}{\mathsf{fma}\left(B, B, A \cdot \left(-4 \cdot C\right)\right)}} \]
      Proof
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (fma.f64 B B (*.f64 A (*.f64 -4 C))) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (hypot.f64 B (-.f64 A C))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (fma.f64 B B (*.f64 A (*.f64 (Rewrite<= metadata-eval (neg.f64 4)) C))) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (hypot.f64 B (-.f64 A C))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (fma.f64 B B (Rewrite<= associate-*l*_binary64 (*.f64 (*.f64 A (neg.f64 4)) C))) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (hypot.f64 B (-.f64 A C))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (fma.f64 B B (*.f64 (Rewrite<= distribute-rgt-neg-in_binary64 (neg.f64 (*.f64 A 4))) C)) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (hypot.f64 B (-.f64 A C))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (fma.f64 B B (*.f64 (neg.f64 (Rewrite<= *-commutative_binary64 (*.f64 4 A))) C)) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (hypot.f64 B (-.f64 A C))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (fma.f64 B B (Rewrite=> distribute-lft-neg-out_binary64 (neg.f64 (*.f64 (*.f64 4 A) C)))) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (hypot.f64 B (-.f64 A C))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (Rewrite<= fma-neg_binary64 (-.f64 (*.f64 B B) (*.f64 (*.f64 4 A) C))) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (hypot.f64 B (-.f64 A C))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 (Rewrite<= unpow2_binary64 (pow.f64 B 2)) (*.f64 (*.f64 4 A) C)) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (hypot.f64 B (-.f64 A C))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (Rewrite<= hypot-def_binary64 (sqrt.f64 (+.f64 (*.f64 B B) (*.f64 (-.f64 A C) (-.f64 A C)))))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 33 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (sqrt.f64 (+.f64 (Rewrite<= unpow2_binary64 (pow.f64 B 2)) (*.f64 (-.f64 A C) (-.f64 A C))))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (sqrt.f64 (+.f64 (pow.f64 B 2) (Rewrite<= unpow2_binary64 (pow.f64 (-.f64 A C) 2))))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (sqrt.f64 (Rewrite<= +-commutative_binary64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) (*.f64 2 (*.f64 F (+.f64 A (Rewrite=> sub-neg_binary64 (+.f64 C (neg.f64 (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) (*.f64 2 (*.f64 F (Rewrite<= associate-+l+_binary64 (+.f64 (+.f64 A C) (neg.f64 (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 13 points increase in error, 5 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) (*.f64 2 (*.f64 F (Rewrite<= sub-neg_binary64 (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (Rewrite<= associate-*l*_binary64 (*.f64 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) 2) (*.f64 F (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (Rewrite<= *-commutative_binary64 (*.f64 2 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))) (*.f64 F (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (Rewrite<= associate-*l*_binary64 (*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C))) F) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 12 points increase in error, 3 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (Rewrite<= associate-*r*_binary64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F))) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (Rewrite<= --rgt-identity_binary64 (-.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))) 0))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (Rewrite<= sub0-neg_binary64 (-.f64 0 (-.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))) 0))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (-.f64 0 (-.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))) 0)) (fma.f64 B B (*.f64 A (*.f64 (Rewrite<= metadata-eval (neg.f64 4)) C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (-.f64 0 (-.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))) 0)) (fma.f64 B B (Rewrite<= associate-*l*_binary64 (*.f64 (*.f64 A (neg.f64 4)) C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (-.f64 0 (-.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))) 0)) (fma.f64 B B (*.f64 (Rewrite<= distribute-rgt-neg-in_binary64 (neg.f64 (*.f64 A 4))) C))): 0 points increase in error, 0 points decrease in error
      (/.f64 (-.f64 0 (-.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))) 0)) (fma.f64 B B (*.f64 (neg.f64 (Rewrite<= *-commutative_binary64 (*.f64 4 A))) C))): 0 points increase in error, 0 points decrease in error
      (/.f64 (-.f64 0 (-.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))) 0)) (fma.f64 B B (Rewrite=> distribute-lft-neg-out_binary64 (neg.f64 (*.f64 (*.f64 4 A) C))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (-.f64 0 (-.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))) 0)) (Rewrite<= fma-neg_binary64 (-.f64 (*.f64 B B) (*.f64 (*.f64 4 A) C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (-.f64 0 (-.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))) 0)) (-.f64 (Rewrite<= unpow2_binary64 (pow.f64 B 2)) (*.f64 (*.f64 4 A) C))): 0 points increase in error, 0 points decrease in error
      (Rewrite=> div-sub_binary64 (-.f64 (/.f64 0 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C))) (/.f64 (-.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))) 0) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C))))): 0 points increase in error, 0 points decrease in error
      (-.f64 (/.f64 0 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C))) (/.f64 (Rewrite=> --rgt-identity_binary64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))): 0 points increase in error, 0 points decrease in error
      (Rewrite<= div-sub_binary64 (/.f64 (-.f64 0 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (Rewrite<= neg-sub0_binary64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C))): 0 points increase in error, 0 points decrease in error
    3. Applied egg-rr44.9

      \[\leadsto \frac{-\color{blue}{\mathsf{hypot}\left(B, \sqrt{A \cdot \left(-4 \cdot C\right)}\right) \cdot \sqrt{\left(C - \left(\mathsf{hypot}\left(B, A - C\right) - A\right)\right) \cdot \left(2 \cdot F\right)}}}{\mathsf{fma}\left(B, B, A \cdot \left(-4 \cdot C\right)\right)} \]
    4. Simplified44.0

      \[\leadsto \frac{-\color{blue}{\mathsf{hypot}\left(B, \sqrt{A \cdot \left(C \cdot -4\right)}\right) \cdot \sqrt{\left(\left(C - \mathsf{hypot}\left(B, A - C\right)\right) + A\right) \cdot \left(2 \cdot F\right)}}}{\mathsf{fma}\left(B, B, A \cdot \left(-4 \cdot C\right)\right)} \]
      Proof
      (*.f64 (hypot.f64 B (sqrt.f64 (*.f64 A (*.f64 C -4)))) (sqrt.f64 (*.f64 (+.f64 (-.f64 C (hypot.f64 B (-.f64 A C))) A) (*.f64 2 F)))): 0 points increase in error, 0 points decrease in error
      (*.f64 (hypot.f64 B (sqrt.f64 (*.f64 A (Rewrite<= *-commutative_binary64 (*.f64 -4 C))))) (sqrt.f64 (*.f64 (+.f64 (-.f64 C (hypot.f64 B (-.f64 A C))) A) (*.f64 2 F)))): 0 points increase in error, 0 points decrease in error
      (*.f64 (hypot.f64 B (sqrt.f64 (*.f64 A (*.f64 -4 C)))) (sqrt.f64 (*.f64 (Rewrite<= associate--r-_binary64 (-.f64 C (-.f64 (hypot.f64 B (-.f64 A C)) A))) (*.f64 2 F)))): 0 points increase in error, 28 points decrease in error
    5. Applied egg-rr44.8

      \[\leadsto \color{blue}{\frac{\mathsf{hypot}\left(B, \sqrt{C \cdot \left(A \cdot -4\right)}\right)}{\mathsf{hypot}\left(B, \sqrt{C \cdot \left(A \cdot -4\right)}\right)} \cdot \frac{-\sqrt{\left(C - \left(\mathsf{hypot}\left(B, A - C\right) - A\right)\right) \cdot \left(2 \cdot F\right)}}{\mathsf{hypot}\left(B, \sqrt{C \cdot \left(A \cdot -4\right)}\right)}} \]
    6. Simplified43.8

      \[\leadsto \color{blue}{-\frac{\sqrt{2 \cdot \left(F \cdot \left(A + \left(C - \mathsf{hypot}\left(B, A - C\right)\right)\right)\right)}}{\mathsf{hypot}\left(B, \sqrt{A \cdot \left(C \cdot -4\right)}\right)}} \]
      Proof
      (neg.f64 (/.f64 (sqrt.f64 (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (hypot.f64 B (-.f64 A C))))))) (hypot.f64 B (sqrt.f64 (*.f64 A (*.f64 C -4)))))): 0 points increase in error, 0 points decrease in error
      (neg.f64 (/.f64 (sqrt.f64 (*.f64 2 (*.f64 F (Rewrite<= +-commutative_binary64 (+.f64 (-.f64 C (hypot.f64 B (-.f64 A C))) A))))) (hypot.f64 B (sqrt.f64 (*.f64 A (*.f64 C -4)))))): 0 points increase in error, 0 points decrease in error
      (neg.f64 (/.f64 (sqrt.f64 (*.f64 2 (*.f64 F (Rewrite<= associate--r-_binary64 (-.f64 C (-.f64 (hypot.f64 B (-.f64 A C)) A)))))) (hypot.f64 B (sqrt.f64 (*.f64 A (*.f64 C -4)))))): 26 points increase in error, 3 points decrease in error
      (neg.f64 (/.f64 (sqrt.f64 (Rewrite<= associate-*l*_binary64 (*.f64 (*.f64 2 F) (-.f64 C (-.f64 (hypot.f64 B (-.f64 A C)) A))))) (hypot.f64 B (sqrt.f64 (*.f64 A (*.f64 C -4)))))): 0 points increase in error, 1 points decrease in error
      (neg.f64 (/.f64 (sqrt.f64 (Rewrite<= *-commutative_binary64 (*.f64 (-.f64 C (-.f64 (hypot.f64 B (-.f64 A C)) A)) (*.f64 2 F)))) (hypot.f64 B (sqrt.f64 (*.f64 A (*.f64 C -4)))))): 0 points increase in error, 0 points decrease in error
      (neg.f64 (/.f64 (sqrt.f64 (*.f64 (-.f64 C (-.f64 (hypot.f64 B (-.f64 A C)) A)) (*.f64 2 F))) (hypot.f64 B (sqrt.f64 (Rewrite<= associate-*l*_binary64 (*.f64 (*.f64 A C) -4)))))): 0 points increase in error, 0 points decrease in error
      (neg.f64 (/.f64 (sqrt.f64 (*.f64 (-.f64 C (-.f64 (hypot.f64 B (-.f64 A C)) A)) (*.f64 2 F))) (hypot.f64 B (sqrt.f64 (*.f64 (Rewrite=> *-commutative_binary64 (*.f64 C A)) -4))))): 0 points increase in error, 0 points decrease in error
      (neg.f64 (/.f64 (sqrt.f64 (*.f64 (-.f64 C (-.f64 (hypot.f64 B (-.f64 A C)) A)) (*.f64 2 F))) (hypot.f64 B (sqrt.f64 (Rewrite<= associate-*r*_binary64 (*.f64 C (*.f64 A -4))))))): 0 points increase in error, 0 points decrease in error
      (Rewrite<= distribute-frac-neg_binary64 (/.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 C (-.f64 (hypot.f64 B (-.f64 A C)) A)) (*.f64 2 F)))) (hypot.f64 B (sqrt.f64 (*.f64 C (*.f64 A -4)))))): 0 points increase in error, 0 points decrease in error
      (Rewrite<= *-lft-identity_binary64 (*.f64 1 (/.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 C (-.f64 (hypot.f64 B (-.f64 A C)) A)) (*.f64 2 F)))) (hypot.f64 B (sqrt.f64 (*.f64 C (*.f64 A -4))))))): 0 points increase in error, 0 points decrease in error
      (*.f64 (Rewrite<= *-inverses_binary64 (/.f64 (hypot.f64 B (sqrt.f64 (*.f64 C (*.f64 A -4)))) (hypot.f64 B (sqrt.f64 (*.f64 C (*.f64 A -4)))))) (/.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 C (-.f64 (hypot.f64 B (-.f64 A C)) A)) (*.f64 2 F)))) (hypot.f64 B (sqrt.f64 (*.f64 C (*.f64 A -4)))))): 7 points increase in error, 0 points decrease in error
    7. Applied egg-rr50.5

      \[\leadsto -\color{blue}{\left(e^{\mathsf{log1p}\left(\sqrt{\frac{\left(C - \left(\mathsf{hypot}\left(B, A - C\right) - A\right)\right) \cdot \left(2 \cdot F\right)}{\mathsf{fma}\left(A, C \cdot -4, B \cdot B\right)}}\right)} - 1\right)} \]
    8. Simplified33.1

      \[\leadsto -\color{blue}{\sqrt{\frac{A + \left(C - \mathsf{hypot}\left(B, A - C\right)\right)}{\mathsf{fma}\left(A, C \cdot -4, B \cdot B\right)} \cdot \left(2 \cdot F\right)}} \]
      Proof
      (sqrt.f64 (*.f64 (/.f64 (+.f64 A (-.f64 C (hypot.f64 B (-.f64 A C)))) (fma.f64 A (*.f64 C -4) (*.f64 B B))) (*.f64 2 F))): 0 points increase in error, 0 points decrease in error
      (sqrt.f64 (*.f64 (/.f64 (Rewrite<= +-commutative_binary64 (+.f64 (-.f64 C (hypot.f64 B (-.f64 A C))) A)) (fma.f64 A (*.f64 C -4) (*.f64 B B))) (*.f64 2 F))): 0 points increase in error, 0 points decrease in error
      (sqrt.f64 (*.f64 (/.f64 (Rewrite<= associate--r-_binary64 (-.f64 C (-.f64 (hypot.f64 B (-.f64 A C)) A))) (fma.f64 A (*.f64 C -4) (*.f64 B B))) (*.f64 2 F))): 17 points increase in error, 26 points decrease in error
      (sqrt.f64 (Rewrite<= associate-/r/_binary64 (/.f64 (-.f64 C (-.f64 (hypot.f64 B (-.f64 A C)) A)) (/.f64 (fma.f64 A (*.f64 C -4) (*.f64 B B)) (*.f64 2 F))))): 15 points increase in error, 18 points decrease in error
      (sqrt.f64 (Rewrite<= associate-/l*_binary64 (/.f64 (*.f64 (-.f64 C (-.f64 (hypot.f64 B (-.f64 A C)) A)) (*.f64 2 F)) (fma.f64 A (*.f64 C -4) (*.f64 B B))))): 65 points increase in error, 20 points decrease in error
      (Rewrite<= expm1-log1p_binary64 (expm1.f64 (log1p.f64 (sqrt.f64 (/.f64 (*.f64 (-.f64 C (-.f64 (hypot.f64 B (-.f64 A C)) A)) (*.f64 2 F)) (fma.f64 A (*.f64 C -4) (*.f64 B B))))))): 19 points increase in error, 14 points decrease in error
      (Rewrite<= expm1-def_binary64 (-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (/.f64 (*.f64 (-.f64 C (-.f64 (hypot.f64 B (-.f64 A C)) A)) (*.f64 2 F)) (fma.f64 A (*.f64 C -4) (*.f64 B B)))))) 1)): 17 points increase in error, 27 points decrease in error

    if -2.1999999999999999e-103 < B < 2.9000000000000002e-75

    1. Initial program 52.6

      \[\frac{-\sqrt{\left(2 \cdot \left(\left({B}^{2} - \left(4 \cdot A\right) \cdot C\right) \cdot F\right)\right) \cdot \left(\left(A + C\right) - \sqrt{{\left(A - C\right)}^{2} + {B}^{2}}\right)}}{{B}^{2} - \left(4 \cdot A\right) \cdot C} \]
    2. Simplified46.0

      \[\leadsto \color{blue}{\frac{-\sqrt{\mathsf{fma}\left(B, B, A \cdot \left(-4 \cdot C\right)\right) \cdot \left(2 \cdot \left(F \cdot \left(A + \left(C - \mathsf{hypot}\left(B, A - C\right)\right)\right)\right)\right)}}{\mathsf{fma}\left(B, B, A \cdot \left(-4 \cdot C\right)\right)}} \]
      Proof
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (fma.f64 B B (*.f64 A (*.f64 -4 C))) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (hypot.f64 B (-.f64 A C))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (fma.f64 B B (*.f64 A (*.f64 (Rewrite<= metadata-eval (neg.f64 4)) C))) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (hypot.f64 B (-.f64 A C))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (fma.f64 B B (Rewrite<= associate-*l*_binary64 (*.f64 (*.f64 A (neg.f64 4)) C))) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (hypot.f64 B (-.f64 A C))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (fma.f64 B B (*.f64 (Rewrite<= distribute-rgt-neg-in_binary64 (neg.f64 (*.f64 A 4))) C)) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (hypot.f64 B (-.f64 A C))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (fma.f64 B B (*.f64 (neg.f64 (Rewrite<= *-commutative_binary64 (*.f64 4 A))) C)) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (hypot.f64 B (-.f64 A C))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (fma.f64 B B (Rewrite=> distribute-lft-neg-out_binary64 (neg.f64 (*.f64 (*.f64 4 A) C)))) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (hypot.f64 B (-.f64 A C))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (Rewrite<= fma-neg_binary64 (-.f64 (*.f64 B B) (*.f64 (*.f64 4 A) C))) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (hypot.f64 B (-.f64 A C))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 (Rewrite<= unpow2_binary64 (pow.f64 B 2)) (*.f64 (*.f64 4 A) C)) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (hypot.f64 B (-.f64 A C))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (Rewrite<= hypot-def_binary64 (sqrt.f64 (+.f64 (*.f64 B B) (*.f64 (-.f64 A C) (-.f64 A C)))))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 33 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (sqrt.f64 (+.f64 (Rewrite<= unpow2_binary64 (pow.f64 B 2)) (*.f64 (-.f64 A C) (-.f64 A C))))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (sqrt.f64 (+.f64 (pow.f64 B 2) (Rewrite<= unpow2_binary64 (pow.f64 (-.f64 A C) 2))))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (sqrt.f64 (Rewrite<= +-commutative_binary64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) (*.f64 2 (*.f64 F (+.f64 A (Rewrite=> sub-neg_binary64 (+.f64 C (neg.f64 (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) (*.f64 2 (*.f64 F (Rewrite<= associate-+l+_binary64 (+.f64 (+.f64 A C) (neg.f64 (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 13 points increase in error, 5 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) (*.f64 2 (*.f64 F (Rewrite<= sub-neg_binary64 (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (Rewrite<= associate-*l*_binary64 (*.f64 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) 2) (*.f64 F (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (Rewrite<= *-commutative_binary64 (*.f64 2 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))) (*.f64 F (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (Rewrite<= associate-*l*_binary64 (*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C))) F) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 12 points increase in error, 3 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (Rewrite<= associate-*r*_binary64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F))) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (Rewrite<= --rgt-identity_binary64 (-.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))) 0))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (Rewrite<= sub0-neg_binary64 (-.f64 0 (-.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))) 0))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (-.f64 0 (-.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))) 0)) (fma.f64 B B (*.f64 A (*.f64 (Rewrite<= metadata-eval (neg.f64 4)) C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (-.f64 0 (-.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))) 0)) (fma.f64 B B (Rewrite<= associate-*l*_binary64 (*.f64 (*.f64 A (neg.f64 4)) C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (-.f64 0 (-.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))) 0)) (fma.f64 B B (*.f64 (Rewrite<= distribute-rgt-neg-in_binary64 (neg.f64 (*.f64 A 4))) C))): 0 points increase in error, 0 points decrease in error
      (/.f64 (-.f64 0 (-.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))) 0)) (fma.f64 B B (*.f64 (neg.f64 (Rewrite<= *-commutative_binary64 (*.f64 4 A))) C))): 0 points increase in error, 0 points decrease in error
      (/.f64 (-.f64 0 (-.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))) 0)) (fma.f64 B B (Rewrite=> distribute-lft-neg-out_binary64 (neg.f64 (*.f64 (*.f64 4 A) C))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (-.f64 0 (-.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))) 0)) (Rewrite<= fma-neg_binary64 (-.f64 (*.f64 B B) (*.f64 (*.f64 4 A) C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (-.f64 0 (-.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))) 0)) (-.f64 (Rewrite<= unpow2_binary64 (pow.f64 B 2)) (*.f64 (*.f64 4 A) C))): 0 points increase in error, 0 points decrease in error
      (Rewrite=> div-sub_binary64 (-.f64 (/.f64 0 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C))) (/.f64 (-.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))) 0) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C))))): 0 points increase in error, 0 points decrease in error
      (-.f64 (/.f64 0 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C))) (/.f64 (Rewrite=> --rgt-identity_binary64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))): 0 points increase in error, 0 points decrease in error
      (Rewrite<= div-sub_binary64 (/.f64 (-.f64 0 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (Rewrite<= neg-sub0_binary64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C))): 0 points increase in error, 0 points decrease in error
    3. Taylor expanded in C around inf 35.5

      \[\leadsto \frac{-\sqrt{\mathsf{fma}\left(B, B, A \cdot \left(-4 \cdot C\right)\right) \cdot \left(2 \cdot \left(F \cdot \left(A + \color{blue}{A}\right)\right)\right)}}{\mathsf{fma}\left(B, B, A \cdot \left(-4 \cdot C\right)\right)} \]

    if 2.5500000000000001e107 < B

    1. Initial program 61.0

      \[\frac{-\sqrt{\left(2 \cdot \left(\left({B}^{2} - \left(4 \cdot A\right) \cdot C\right) \cdot F\right)\right) \cdot \left(\left(A + C\right) - \sqrt{{\left(A - C\right)}^{2} + {B}^{2}}\right)}}{{B}^{2} - \left(4 \cdot A\right) \cdot C} \]
    2. Simplified60.6

      \[\leadsto \color{blue}{\frac{-\sqrt{\mathsf{fma}\left(B, B, A \cdot \left(-4 \cdot C\right)\right) \cdot \left(2 \cdot \left(F \cdot \left(A + \left(C - \mathsf{hypot}\left(B, A - C\right)\right)\right)\right)\right)}}{\mathsf{fma}\left(B, B, A \cdot \left(-4 \cdot C\right)\right)}} \]
      Proof
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (fma.f64 B B (*.f64 A (*.f64 -4 C))) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (hypot.f64 B (-.f64 A C))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (fma.f64 B B (*.f64 A (*.f64 (Rewrite<= metadata-eval (neg.f64 4)) C))) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (hypot.f64 B (-.f64 A C))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (fma.f64 B B (Rewrite<= associate-*l*_binary64 (*.f64 (*.f64 A (neg.f64 4)) C))) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (hypot.f64 B (-.f64 A C))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (fma.f64 B B (*.f64 (Rewrite<= distribute-rgt-neg-in_binary64 (neg.f64 (*.f64 A 4))) C)) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (hypot.f64 B (-.f64 A C))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (fma.f64 B B (*.f64 (neg.f64 (Rewrite<= *-commutative_binary64 (*.f64 4 A))) C)) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (hypot.f64 B (-.f64 A C))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (fma.f64 B B (Rewrite=> distribute-lft-neg-out_binary64 (neg.f64 (*.f64 (*.f64 4 A) C)))) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (hypot.f64 B (-.f64 A C))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (Rewrite<= fma-neg_binary64 (-.f64 (*.f64 B B) (*.f64 (*.f64 4 A) C))) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (hypot.f64 B (-.f64 A C))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 (Rewrite<= unpow2_binary64 (pow.f64 B 2)) (*.f64 (*.f64 4 A) C)) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (hypot.f64 B (-.f64 A C))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (Rewrite<= hypot-def_binary64 (sqrt.f64 (+.f64 (*.f64 B B) (*.f64 (-.f64 A C) (-.f64 A C)))))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 33 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (sqrt.f64 (+.f64 (Rewrite<= unpow2_binary64 (pow.f64 B 2)) (*.f64 (-.f64 A C) (-.f64 A C))))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (sqrt.f64 (+.f64 (pow.f64 B 2) (Rewrite<= unpow2_binary64 (pow.f64 (-.f64 A C) 2))))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) (*.f64 2 (*.f64 F (+.f64 A (-.f64 C (sqrt.f64 (Rewrite<= +-commutative_binary64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) (*.f64 2 (*.f64 F (+.f64 A (Rewrite=> sub-neg_binary64 (+.f64 C (neg.f64 (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) (*.f64 2 (*.f64 F (Rewrite<= associate-+l+_binary64 (+.f64 (+.f64 A C) (neg.f64 (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 13 points increase in error, 5 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) (*.f64 2 (*.f64 F (Rewrite<= sub-neg_binary64 (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (Rewrite<= associate-*l*_binary64 (*.f64 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) 2) (*.f64 F (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (Rewrite<= *-commutative_binary64 (*.f64 2 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))) (*.f64 F (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (Rewrite<= associate-*l*_binary64 (*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C))) F) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 12 points increase in error, 3 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (Rewrite<= associate-*r*_binary64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F))) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (Rewrite<= --rgt-identity_binary64 (-.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))) 0))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (Rewrite<= sub0-neg_binary64 (-.f64 0 (-.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))) 0))) (fma.f64 B B (*.f64 A (*.f64 -4 C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (-.f64 0 (-.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))) 0)) (fma.f64 B B (*.f64 A (*.f64 (Rewrite<= metadata-eval (neg.f64 4)) C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (-.f64 0 (-.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))) 0)) (fma.f64 B B (Rewrite<= associate-*l*_binary64 (*.f64 (*.f64 A (neg.f64 4)) C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (-.f64 0 (-.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))) 0)) (fma.f64 B B (*.f64 (Rewrite<= distribute-rgt-neg-in_binary64 (neg.f64 (*.f64 A 4))) C))): 0 points increase in error, 0 points decrease in error
      (/.f64 (-.f64 0 (-.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))) 0)) (fma.f64 B B (*.f64 (neg.f64 (Rewrite<= *-commutative_binary64 (*.f64 4 A))) C))): 0 points increase in error, 0 points decrease in error
      (/.f64 (-.f64 0 (-.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))) 0)) (fma.f64 B B (Rewrite=> distribute-lft-neg-out_binary64 (neg.f64 (*.f64 (*.f64 4 A) C))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (-.f64 0 (-.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))) 0)) (Rewrite<= fma-neg_binary64 (-.f64 (*.f64 B B) (*.f64 (*.f64 4 A) C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (-.f64 0 (-.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))) 0)) (-.f64 (Rewrite<= unpow2_binary64 (pow.f64 B 2)) (*.f64 (*.f64 4 A) C))): 0 points increase in error, 0 points decrease in error
      (Rewrite=> div-sub_binary64 (-.f64 (/.f64 0 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C))) (/.f64 (-.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))) 0) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C))))): 0 points increase in error, 0 points decrease in error
      (-.f64 (/.f64 0 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C))) (/.f64 (Rewrite=> --rgt-identity_binary64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))): 0 points increase in error, 0 points decrease in error
      (Rewrite<= div-sub_binary64 (/.f64 (-.f64 0 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))): 0 points increase in error, 0 points decrease in error
      (/.f64 (Rewrite<= neg-sub0_binary64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C))): 0 points increase in error, 0 points decrease in error
    3. Taylor expanded in B around inf 60.6

      \[\leadsto \frac{-\sqrt{\mathsf{fma}\left(B, B, A \cdot \left(-4 \cdot C\right)\right) \cdot \left(2 \cdot \left(F \cdot \left(A + \left(C - \mathsf{hypot}\left(B, A - C\right)\right)\right)\right)\right)}}{\color{blue}{{B}^{2}}} \]
    4. Simplified60.6

      \[\leadsto \frac{-\sqrt{\mathsf{fma}\left(B, B, A \cdot \left(-4 \cdot C\right)\right) \cdot \left(2 \cdot \left(F \cdot \left(A + \left(C - \mathsf{hypot}\left(B, A - C\right)\right)\right)\right)\right)}}{\color{blue}{B \cdot B}} \]
      Proof
      (*.f64 B B): 0 points increase in error, 0 points decrease in error
      (Rewrite<= unpow2_binary64 (pow.f64 B 2)): 0 points increase in error, 0 points decrease in error
    5. Applied egg-rr60.6

      \[\leadsto \color{blue}{\frac{-1}{B} \cdot \frac{\sqrt{\mathsf{fma}\left(B, B, A \cdot \left(-4 \cdot C\right)\right) \cdot \left(\left(\left(A + C\right) - \mathsf{hypot}\left(B, A - C\right)\right) \cdot \left(2 \cdot F\right)\right)}}{B}} \]
    6. Taylor expanded in C around 0 57.3

      \[\leadsto \frac{-1}{B} \cdot \color{blue}{\left(\sqrt{\left(A - \sqrt{{B}^{2} + {A}^{2}}\right) \cdot F} \cdot \sqrt{2}\right)} \]
    7. Simplified30.4

      \[\leadsto \frac{-1}{B} \cdot \color{blue}{\left(\sqrt{2} \cdot \sqrt{F \cdot \left(A - \mathsf{hypot}\left(A, B\right)\right)}\right)} \]
      Proof
      (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 F (-.f64 A (hypot.f64 A B))))): 0 points increase in error, 0 points decrease in error
      (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 F (-.f64 A (Rewrite<= hypot-def_binary64 (sqrt.f64 (+.f64 (*.f64 A A) (*.f64 B B)))))))): 63 points increase in error, 6 points decrease in error
      (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 F (-.f64 A (sqrt.f64 (+.f64 (Rewrite<= unpow2_binary64 (pow.f64 A 2)) (*.f64 B B))))))): 0 points increase in error, 0 points decrease in error
      (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 F (-.f64 A (sqrt.f64 (+.f64 (pow.f64 A 2) (Rewrite<= unpow2_binary64 (pow.f64 B 2)))))))): 0 points increase in error, 0 points decrease in error
      (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 F (-.f64 A (sqrt.f64 (Rewrite<= +-commutative_binary64 (+.f64 (pow.f64 B 2) (pow.f64 A 2)))))))): 0 points increase in error, 0 points decrease in error
      (*.f64 (sqrt.f64 2) (sqrt.f64 (Rewrite<= *-commutative_binary64 (*.f64 (-.f64 A (sqrt.f64 (+.f64 (pow.f64 B 2) (pow.f64 A 2)))) F)))): 0 points increase in error, 0 points decrease in error
      (Rewrite<= *-commutative_binary64 (*.f64 (sqrt.f64 (*.f64 (-.f64 A (sqrt.f64 (+.f64 (pow.f64 B 2) (pow.f64 A 2)))) F)) (sqrt.f64 2))): 0 points increase in error, 0 points decrease in error
  3. Recombined 4 regimes into one program.
  4. Final simplification31.1

    \[\leadsto \begin{array}{l} \mathbf{if}\;B \leq -6 \cdot 10^{+116}:\\ \;\;\;\;\frac{\sqrt{-F}}{\sqrt{-B}} \cdot \left(-\sqrt{2}\right)\\ \mathbf{elif}\;B \leq -2.2 \cdot 10^{-103}:\\ \;\;\;\;-\sqrt{\frac{A - \left(\mathsf{hypot}\left(B, A - C\right) - C\right)}{\mathsf{fma}\left(A, C \cdot -4, B \cdot B\right)} \cdot \left(F \cdot 2\right)}\\ \mathbf{elif}\;B \leq 2.9 \cdot 10^{-75}:\\ \;\;\;\;\frac{-\sqrt{\mathsf{fma}\left(B, B, A \cdot \left(C \cdot -4\right)\right) \cdot \left(2 \cdot \left(F \cdot \left(A + A\right)\right)\right)}}{\mathsf{fma}\left(B, B, A \cdot \left(C \cdot -4\right)\right)}\\ \mathbf{elif}\;B \leq 2.55 \cdot 10^{+107}:\\ \;\;\;\;-\sqrt{\frac{A - \left(\mathsf{hypot}\left(B, A - C\right) - C\right)}{\mathsf{fma}\left(A, C \cdot -4, B \cdot B\right)} \cdot \left(F \cdot 2\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{-1}{B} \cdot \left(\sqrt{2} \cdot \sqrt{F \cdot \left(A - \mathsf{hypot}\left(A, B\right)\right)}\right)\\ \end{array} \]

Alternatives

Alternative 1
Error32.6
Cost21072
\[\begin{array}{l} t_0 := -\sqrt{\frac{A - \left(\mathsf{hypot}\left(B, A - C\right) - C\right)}{\mathsf{fma}\left(A, C \cdot -4, B \cdot B\right)} \cdot \left(F \cdot 2\right)}\\ \mathbf{if}\;B \leq -5.6 \cdot 10^{+119}:\\ \;\;\;\;\frac{\sqrt{-F}}{\sqrt{-B}} \cdot \left(-\sqrt{2}\right)\\ \mathbf{elif}\;B \leq -1.7 \cdot 10^{-66}:\\ \;\;\;\;t_0\\ \mathbf{elif}\;B \leq 1.5 \cdot 10^{-62}:\\ \;\;\;\;-\sqrt{\frac{-F}{C}}\\ \mathbf{elif}\;B \leq 1.95 \cdot 10^{+107}:\\ \;\;\;\;t_0\\ \mathbf{else}:\\ \;\;\;\;\frac{-1}{B} \cdot \left(\sqrt{2} \cdot \sqrt{F \cdot \left(A - \mathsf{hypot}\left(A, B\right)\right)}\right)\\ \end{array} \]
Alternative 2
Error35.6
Cost20496
\[\begin{array}{l} t_0 := -\sqrt{\frac{-F}{C}}\\ t_1 := B \cdot B + -4 \cdot \left(A \cdot C\right)\\ \mathbf{if}\;B \leq -3.5 \cdot 10^{-33}:\\ \;\;\;\;\frac{\sqrt{-F}}{\sqrt{-B}} \cdot \left(-\sqrt{2}\right)\\ \mathbf{elif}\;B \leq 6.2 \cdot 10^{-150}:\\ \;\;\;\;t_0\\ \mathbf{elif}\;B \leq 4 \cdot 10^{+14}:\\ \;\;\;\;\frac{-\sqrt{\left(\mathsf{hypot}\left(A, B\right) - \left(A + C\right)\right) \cdot \left(\left(F \cdot t_1\right) \cdot -2\right)}}{t_1}\\ \mathbf{elif}\;B \leq 2.2 \cdot 10^{+71}:\\ \;\;\;\;t_0\\ \mathbf{else}:\\ \;\;\;\;\frac{-1}{B} \cdot \left(\sqrt{2} \cdot \sqrt{F \cdot \left(A - \mathsf{hypot}\left(A, B\right)\right)}\right)\\ \end{array} \]
Alternative 3
Error35.5
Cost20432
\[\begin{array}{l} t_0 := -\sqrt{\frac{-F}{C}}\\ t_1 := B \cdot B + -4 \cdot \left(A \cdot C\right)\\ t_2 := -\sqrt{2}\\ \mathbf{if}\;B \leq -3.4 \cdot 10^{-34}:\\ \;\;\;\;\frac{\sqrt{-F}}{\sqrt{-B}} \cdot t_2\\ \mathbf{elif}\;B \leq 4.4 \cdot 10^{-150}:\\ \;\;\;\;t_0\\ \mathbf{elif}\;B \leq 4 \cdot 10^{+23}:\\ \;\;\;\;\frac{-\sqrt{\left(\mathsf{hypot}\left(A, B\right) - \left(A + C\right)\right) \cdot \left(\left(F \cdot t_1\right) \cdot -2\right)}}{t_1}\\ \mathbf{elif}\;B \leq 1.5 \cdot 10^{+71}:\\ \;\;\;\;t_0\\ \mathbf{else}:\\ \;\;\;\;\sqrt{F \cdot \left(A - \mathsf{hypot}\left(A, B\right)\right)} \cdot \frac{t_2}{B}\\ \end{array} \]
Alternative 4
Error36.2
Cost19844
\[\begin{array}{l} t_0 := -\sqrt{\frac{-F}{C}}\\ t_1 := B \cdot B + -4 \cdot \left(A \cdot C\right)\\ \mathbf{if}\;B \leq -3.6 \cdot 10^{-33}:\\ \;\;\;\;\frac{\sqrt{-F}}{\sqrt{-B}} \cdot \left(-\sqrt{2}\right)\\ \mathbf{elif}\;B \leq 6.2 \cdot 10^{-150}:\\ \;\;\;\;t_0\\ \mathbf{elif}\;B \leq 4.2 \cdot 10^{+14}:\\ \;\;\;\;\frac{-\sqrt{\left(\mathsf{hypot}\left(A, B\right) - \left(A + C\right)\right) \cdot \left(\left(F \cdot t_1\right) \cdot -2\right)}}{t_1}\\ \mathbf{elif}\;B \leq 4.2 \cdot 10^{+25}:\\ \;\;\;\;t_0\\ \mathbf{elif}\;B \leq 1.8 \cdot 10^{+125}:\\ \;\;\;\;-\sqrt{\left(F \cdot 2\right) \cdot \frac{A - \mathsf{hypot}\left(B, A\right)}{B \cdot B}}\\ \mathbf{elif}\;B \leq 2.4 \cdot 10^{+186}:\\ \;\;\;\;t_0\\ \mathbf{else}:\\ \;\;\;\;-\sqrt{\mathsf{fma}\left(2, \frac{F}{B} \cdot \frac{A + C}{B}, \frac{F}{B} \cdot -2\right)}\\ \end{array} \]
Alternative 5
Error37.3
Cost15312
\[\begin{array}{l} t_0 := B \cdot B + -4 \cdot \left(A \cdot C\right)\\ t_1 := -\sqrt{\frac{-F}{C}}\\ t_2 := -\sqrt{\left(F \cdot 2\right) \cdot \frac{A - \mathsf{hypot}\left(B, A\right)}{B \cdot B}}\\ t_3 := \frac{F}{B} \cdot \frac{A + C}{B}\\ \mathbf{if}\;B \leq -2.2 \cdot 10^{+155}:\\ \;\;\;\;-\sqrt{2 \cdot \left(\frac{F}{B} + t_3\right)}\\ \mathbf{elif}\;B \leq -2.5 \cdot 10^{-36}:\\ \;\;\;\;t_2\\ \mathbf{elif}\;B \leq 6.2 \cdot 10^{-150}:\\ \;\;\;\;t_1\\ \mathbf{elif}\;B \leq 7.5 \cdot 10^{+19}:\\ \;\;\;\;\frac{-\sqrt{\left(\mathsf{hypot}\left(A, B\right) - \left(A + C\right)\right) \cdot \left(\left(F \cdot t_0\right) \cdot -2\right)}}{t_0}\\ \mathbf{elif}\;B \leq 4 \cdot 10^{+25}:\\ \;\;\;\;t_1\\ \mathbf{elif}\;B \leq 1.8 \cdot 10^{+125}:\\ \;\;\;\;t_2\\ \mathbf{elif}\;B \leq 2.4 \cdot 10^{+186}:\\ \;\;\;\;t_1\\ \mathbf{else}:\\ \;\;\;\;-\sqrt{\mathsf{fma}\left(2, t_3, \frac{F}{B} \cdot -2\right)}\\ \end{array} \]
Alternative 6
Error37.2
Cost14484
\[\begin{array}{l} t_0 := -\sqrt{\frac{-F}{C}}\\ t_1 := -\sqrt{\left(F \cdot 2\right) \cdot \frac{A - \mathsf{hypot}\left(B, A\right)}{B \cdot B}}\\ t_2 := \frac{F}{B} \cdot \frac{A + C}{B}\\ \mathbf{if}\;B \leq -2.2 \cdot 10^{+155}:\\ \;\;\;\;-\sqrt{2 \cdot \left(\frac{F}{B} + t_2\right)}\\ \mathbf{elif}\;B \leq -1.1 \cdot 10^{-33}:\\ \;\;\;\;t_1\\ \mathbf{elif}\;B \leq 8.4 \cdot 10^{-15}:\\ \;\;\;\;t_0\\ \mathbf{elif}\;B \leq 5.8 \cdot 10^{+124}:\\ \;\;\;\;t_1\\ \mathbf{elif}\;B \leq 2.4 \cdot 10^{+186}:\\ \;\;\;\;t_0\\ \mathbf{else}:\\ \;\;\;\;-\sqrt{\mathsf{fma}\left(2, t_2, \frac{F}{B} \cdot -2\right)}\\ \end{array} \]
Alternative 7
Error37.3
Cost14160
\[\begin{array}{l} t_0 := -\sqrt{\frac{-F}{C}}\\ t_1 := -\sqrt{\left(F \cdot 2\right) \cdot \frac{A - \mathsf{hypot}\left(B, A\right)}{B \cdot B}}\\ \mathbf{if}\;B \leq -2.2 \cdot 10^{+155}:\\ \;\;\;\;-\sqrt{2 \cdot \left(\frac{F}{B} + \frac{F}{B} \cdot \frac{A + C}{B}\right)}\\ \mathbf{elif}\;B \leq -3.6 \cdot 10^{-33}:\\ \;\;\;\;t_1\\ \mathbf{elif}\;B \leq 1.92 \cdot 10^{-16}:\\ \;\;\;\;t_0\\ \mathbf{elif}\;B \leq 1.8 \cdot 10^{+125}:\\ \;\;\;\;t_1\\ \mathbf{elif}\;B \leq 2.4 \cdot 10^{+186}:\\ \;\;\;\;t_0\\ \mathbf{else}:\\ \;\;\;\;-\sqrt{\left(F \cdot 2\right) \cdot \frac{-1}{B}}\\ \end{array} \]
Alternative 8
Error42.5
Cost13896
\[\begin{array}{l} t_0 := B \cdot B + -4 \cdot \left(A \cdot C\right)\\ t_1 := F \cdot t_0\\ t_2 := \frac{B \cdot B}{A}\\ t_3 := -\frac{\sqrt{\left(2 \cdot t_1\right) \cdot \left(\left(A + C\right) + \left(\left(A + \left(t_2 + t_2 \cdot \frac{C}{A}\right) \cdot 0.5\right) - C\right)\right)}}{t_0}\\ \mathbf{if}\;C \leq -9 \cdot 10^{-116}:\\ \;\;\;\;\frac{-\sqrt{\left(\left(C - A\right) - \left(A + C\right)\right) \cdot \left(t_1 \cdot -2\right)}}{t_0}\\ \mathbf{elif}\;C \leq -8 \cdot 10^{-203}:\\ \;\;\;\;-\sqrt{\frac{F \cdot \left(\mathsf{hypot}\left(C, B\right) - C\right)}{B} \cdot \frac{-2}{B}}\\ \mathbf{elif}\;C \leq 9 \cdot 10^{-298}:\\ \;\;\;\;t_3\\ \mathbf{elif}\;C \leq 2.05 \cdot 10^{-257}:\\ \;\;\;\;-\sqrt{\left(F \cdot 2\right) \cdot \left(\frac{A}{B \cdot B} - \left(\frac{1}{B} - \frac{C}{B \cdot B}\right)\right)}\\ \mathbf{elif}\;C \leq 2.9 \cdot 10^{-253}:\\ \;\;\;\;t_3\\ \mathbf{else}:\\ \;\;\;\;-\sqrt{\frac{-F}{C}}\\ \end{array} \]
Alternative 9
Error42.7
Cost10260
\[\begin{array}{l} t_0 := \frac{B \cdot B}{A}\\ t_1 := B \cdot B + -4 \cdot \left(A \cdot C\right)\\ t_2 := F \cdot t_1\\ t_3 := -\frac{\sqrt{\left(2 \cdot t_2\right) \cdot \left(\left(A + C\right) + \left(\left(A + \left(t_0 + t_0 \cdot \frac{C}{A}\right) \cdot 0.5\right) - C\right)\right)}}{t_1}\\ \mathbf{if}\;C \leq -8.8 \cdot 10^{-116}:\\ \;\;\;\;\frac{-\sqrt{\left(\left(C - A\right) - \left(A + C\right)\right) \cdot \left(t_2 \cdot -2\right)}}{t_1}\\ \mathbf{elif}\;C \leq -9.8 \cdot 10^{-213}:\\ \;\;\;\;-\sqrt{2 \cdot \left(\frac{F}{B} + \frac{F}{B} \cdot \frac{A + C}{B}\right)}\\ \mathbf{elif}\;C \leq 2.7 \cdot 10^{-297}:\\ \;\;\;\;t_3\\ \mathbf{elif}\;C \leq 1.45 \cdot 10^{-257}:\\ \;\;\;\;-\sqrt{\left(F \cdot 2\right) \cdot \left(\frac{A}{B \cdot B} - \left(\frac{1}{B} - \frac{C}{B \cdot B}\right)\right)}\\ \mathbf{elif}\;C \leq 1.32 \cdot 10^{-253}:\\ \;\;\;\;t_3\\ \mathbf{else}:\\ \;\;\;\;-\sqrt{\frac{-F}{C}}\\ \end{array} \]
Alternative 10
Error42.7
Cost8980
\[\begin{array}{l} t_0 := B \cdot B + -4 \cdot \left(A \cdot C\right)\\ t_1 := -\frac{\sqrt{\left(2 \cdot \left(F \cdot t_0\right)\right) \cdot \left(A + \left(A + C\right)\right)}}{t_0}\\ \mathbf{if}\;C \leq -2.7 \cdot 10^{-116}:\\ \;\;\;\;t_1\\ \mathbf{elif}\;C \leq -7.5 \cdot 10^{-210}:\\ \;\;\;\;-\sqrt{2 \cdot \left(\frac{F}{B} + \frac{F}{B} \cdot \frac{A + C}{B}\right)}\\ \mathbf{elif}\;C \leq 1.85 \cdot 10^{-297}:\\ \;\;\;\;t_1\\ \mathbf{elif}\;C \leq 4.2 \cdot 10^{-257}:\\ \;\;\;\;-\sqrt{\left(F \cdot 2\right) \cdot \left(\frac{A}{B \cdot B} - \left(\frac{1}{B} - \frac{C}{B \cdot B}\right)\right)}\\ \mathbf{elif}\;C \leq 2.5 \cdot 10^{-254}:\\ \;\;\;\;t_1\\ \mathbf{else}:\\ \;\;\;\;-\sqrt{\frac{-F}{C}}\\ \end{array} \]
Alternative 11
Error42.6
Cost8980
\[\begin{array}{l} t_0 := B \cdot B + -4 \cdot \left(A \cdot C\right)\\ t_1 := F \cdot t_0\\ t_2 := -\frac{\sqrt{\left(2 \cdot t_1\right) \cdot \left(A + \left(A + C\right)\right)}}{t_0}\\ \mathbf{if}\;C \leq -8.5 \cdot 10^{-116}:\\ \;\;\;\;\frac{-\sqrt{\left(\left(C - A\right) - \left(A + C\right)\right) \cdot \left(t_1 \cdot -2\right)}}{t_0}\\ \mathbf{elif}\;C \leq -7 \cdot 10^{-211}:\\ \;\;\;\;-\sqrt{2 \cdot \left(\frac{F}{B} + \frac{F}{B} \cdot \frac{A + C}{B}\right)}\\ \mathbf{elif}\;C \leq 7 \cdot 10^{-298}:\\ \;\;\;\;t_2\\ \mathbf{elif}\;C \leq 9 \cdot 10^{-258}:\\ \;\;\;\;-\sqrt{\left(F \cdot 2\right) \cdot \left(\frac{A}{B \cdot B} - \left(\frac{1}{B} - \frac{C}{B \cdot B}\right)\right)}\\ \mathbf{elif}\;C \leq 1.9 \cdot 10^{-253}:\\ \;\;\;\;t_2\\ \mathbf{else}:\\ \;\;\;\;-\sqrt{\frac{-F}{C}}\\ \end{array} \]
Alternative 12
Error38.6
Cost7556
\[\begin{array}{l} \mathbf{if}\;B \leq -3.4 \cdot 10^{-34}:\\ \;\;\;\;-\sqrt{2 \cdot \left(\frac{F}{B} + \frac{F}{B} \cdot \frac{A + C}{B}\right)}\\ \mathbf{elif}\;B \leq 9.4 \cdot 10^{-15}:\\ \;\;\;\;-\sqrt{\frac{-F}{C}}\\ \mathbf{else}:\\ \;\;\;\;-\sqrt{\frac{F}{B} \cdot -2}\\ \end{array} \]
Alternative 13
Error38.6
Cost7048
\[\begin{array}{l} \mathbf{if}\;B \leq -2 \cdot 10^{-35}:\\ \;\;\;\;-\sqrt{2 \cdot \frac{F}{B}}\\ \mathbf{elif}\;B \leq 4.1 \cdot 10^{-16}:\\ \;\;\;\;-\sqrt{\frac{-F}{C}}\\ \mathbf{else}:\\ \;\;\;\;-\sqrt{\frac{F}{B} \cdot -2}\\ \end{array} \]
Alternative 14
Error44.2
Cost6916
\[\begin{array}{l} \mathbf{if}\;C \leq 6.8 \cdot 10^{-250}:\\ \;\;\;\;-\sqrt{\frac{F}{B} \cdot -2}\\ \mathbf{else}:\\ \;\;\;\;-\sqrt{\frac{-F}{C}}\\ \end{array} \]
Alternative 15
Error63.1
Cost6720
\[-\sqrt{\frac{-F}{A}} \]
Alternative 16
Error46.4
Cost6720
\[-\sqrt{-\frac{F}{C}} \]

Error

Reproduce

herbie shell --seed 2022325 
(FPCore (A B C F)
  :name "ABCF->ab-angle b"
  :precision binary64
  (/ (- (sqrt (* (* 2.0 (* (- (pow B 2.0) (* (* 4.0 A) C)) F)) (- (+ A C) (sqrt (+ (pow (- A C) 2.0) (pow B 2.0))))))) (- (pow B 2.0) (* (* 4.0 A) C))))