Average Error: 63.4 → 60.0
Time: 1.9min
Precision: binary64
Cost: 53828
\[\frac{-\sqrt{\left(\left(2 \cdot \frac{4 \cdot \left(\left(b \cdot a\right) \cdot \left(b \cdot \left(-a\right)\right)\right)}{{\left(x-scale \cdot y-scale\right)}^{2}}\right) \cdot \left(\left(b \cdot a\right) \cdot \left(b \cdot \left(-a\right)\right)\right)\right) \cdot \left(\left(\frac{\frac{{\left(a \cdot \sin \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2} + {\left(b \cdot \cos \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2}}{x-scale}}{x-scale} + \frac{\frac{{\left(a \cdot \cos \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2} + {\left(b \cdot \sin \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2}}{y-scale}}{y-scale}\right) + \sqrt{{\left(\frac{\frac{{\left(a \cdot \sin \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2} + {\left(b \cdot \cos \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2}}{x-scale}}{x-scale} - \frac{\frac{{\left(a \cdot \cos \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2} + {\left(b \cdot \sin \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2}}{y-scale}}{y-scale}\right)}^{2} + {\left(\frac{\frac{\left(\left(2 \cdot \left({b}^{2} - {a}^{2}\right)\right) \cdot \sin \left(\frac{angle}{180} \cdot \pi\right)\right) \cdot \cos \left(\frac{angle}{180} \cdot \pi\right)}{x-scale}}{y-scale}\right)}^{2}}\right)}}{\frac{4 \cdot \left(\left(b \cdot a\right) \cdot \left(b \cdot \left(-a\right)\right)\right)}{{\left(x-scale \cdot y-scale\right)}^{2}}} \]
\[\begin{array}{l} \mathbf{if}\;b \leq -4.7 \cdot 10^{-158}:\\ \;\;\;\;0.25 \cdot {\left(\frac{b \cdot \frac{\sqrt{\mathsf{hypot}\left(\mathsf{fma}\left(-0.5, \frac{x-scale}{b} \cdot {\left(\frac{a}{y-scale}\right)}^{2}, \frac{b}{x-scale}\right), \mathsf{hypot}\left(\frac{a}{y-scale}, \frac{b}{x-scale}\right)\right) \cdot \sqrt{8}}}{\frac{\sqrt{x-scale \cdot y-scale}}{a}}}{b} \cdot \left(y-scale \cdot \frac{x-scale}{a}\right)\right)}^{2}\\ \mathbf{elif}\;b \leq 4 \cdot 10^{-73}:\\ \;\;\;\;0\\ \mathbf{else}:\\ \;\;\;\;0.25 \cdot {\left(\frac{x-scale \cdot y-scale}{\frac{a}{\sqrt{b} \cdot \frac{\sqrt{4 \cdot \frac{a}{\frac{y-scale}{a}}}}{x-scale}}}\right)}^{2}\\ \end{array} \]
(FPCore (a b angle x-scale y-scale)
 :precision binary64
 (/
  (-
   (sqrt
    (*
     (*
      (* 2.0 (/ (* 4.0 (* (* b a) (* b (- a)))) (pow (* x-scale y-scale) 2.0)))
      (* (* b a) (* b (- a))))
     (+
      (+
       (/
        (/
         (+
          (pow (* a (sin (* (/ angle 180.0) PI))) 2.0)
          (pow (* b (cos (* (/ angle 180.0) PI))) 2.0))
         x-scale)
        x-scale)
       (/
        (/
         (+
          (pow (* a (cos (* (/ angle 180.0) PI))) 2.0)
          (pow (* b (sin (* (/ angle 180.0) PI))) 2.0))
         y-scale)
        y-scale))
      (sqrt
       (+
        (pow
         (-
          (/
           (/
            (+
             (pow (* a (sin (* (/ angle 180.0) PI))) 2.0)
             (pow (* b (cos (* (/ angle 180.0) PI))) 2.0))
            x-scale)
           x-scale)
          (/
           (/
            (+
             (pow (* a (cos (* (/ angle 180.0) PI))) 2.0)
             (pow (* b (sin (* (/ angle 180.0) PI))) 2.0))
            y-scale)
           y-scale))
         2.0)
        (pow
         (/
          (/
           (*
            (*
             (* 2.0 (- (pow b 2.0) (pow a 2.0)))
             (sin (* (/ angle 180.0) PI)))
            (cos (* (/ angle 180.0) PI)))
           x-scale)
          y-scale)
         2.0)))))))
  (/ (* 4.0 (* (* b a) (* b (- a)))) (pow (* x-scale y-scale) 2.0))))
(FPCore (a b angle x-scale y-scale)
 :precision binary64
 (if (<= b -4.7e-158)
   (*
    0.25
    (pow
     (*
      (/
       (*
        b
        (/
         (sqrt
          (*
           (hypot
            (fma -0.5 (* (/ x-scale b) (pow (/ a y-scale) 2.0)) (/ b x-scale))
            (hypot (/ a y-scale) (/ b x-scale)))
           (sqrt 8.0)))
         (/ (sqrt (* x-scale y-scale)) a)))
       b)
      (* y-scale (/ x-scale a)))
     2.0))
   (if (<= b 4e-73)
     0.0
     (*
      0.25
      (pow
       (/
        (* x-scale y-scale)
        (/ a (* (sqrt b) (/ (sqrt (* 4.0 (/ a (/ y-scale a)))) x-scale))))
       2.0)))))
double code(double a, double b, double angle, double x_45_scale, double y_45_scale) {
	return -sqrt((((2.0 * ((4.0 * ((b * a) * (b * -a))) / pow((x_45_scale * y_45_scale), 2.0))) * ((b * a) * (b * -a))) * (((((pow((a * sin(((angle / 180.0) * ((double) M_PI)))), 2.0) + pow((b * cos(((angle / 180.0) * ((double) M_PI)))), 2.0)) / x_45_scale) / x_45_scale) + (((pow((a * cos(((angle / 180.0) * ((double) M_PI)))), 2.0) + pow((b * sin(((angle / 180.0) * ((double) M_PI)))), 2.0)) / y_45_scale) / y_45_scale)) + sqrt((pow(((((pow((a * sin(((angle / 180.0) * ((double) M_PI)))), 2.0) + pow((b * cos(((angle / 180.0) * ((double) M_PI)))), 2.0)) / x_45_scale) / x_45_scale) - (((pow((a * cos(((angle / 180.0) * ((double) M_PI)))), 2.0) + pow((b * sin(((angle / 180.0) * ((double) M_PI)))), 2.0)) / y_45_scale) / y_45_scale)), 2.0) + pow((((((2.0 * (pow(b, 2.0) - pow(a, 2.0))) * sin(((angle / 180.0) * ((double) M_PI)))) * cos(((angle / 180.0) * ((double) M_PI)))) / x_45_scale) / y_45_scale), 2.0)))))) / ((4.0 * ((b * a) * (b * -a))) / pow((x_45_scale * y_45_scale), 2.0));
}
double code(double a, double b, double angle, double x_45_scale, double y_45_scale) {
	double tmp;
	if (b <= -4.7e-158) {
		tmp = 0.25 * pow((((b * (sqrt((hypot(fma(-0.5, ((x_45_scale / b) * pow((a / y_45_scale), 2.0)), (b / x_45_scale)), hypot((a / y_45_scale), (b / x_45_scale))) * sqrt(8.0))) / (sqrt((x_45_scale * y_45_scale)) / a))) / b) * (y_45_scale * (x_45_scale / a))), 2.0);
	} else if (b <= 4e-73) {
		tmp = 0.0;
	} else {
		tmp = 0.25 * pow(((x_45_scale * y_45_scale) / (a / (sqrt(b) * (sqrt((4.0 * (a / (y_45_scale / a)))) / x_45_scale)))), 2.0);
	}
	return tmp;
}
function code(a, b, angle, x_45_scale, y_45_scale)
	return Float64(Float64(-sqrt(Float64(Float64(Float64(2.0 * Float64(Float64(4.0 * Float64(Float64(b * a) * Float64(b * Float64(-a)))) / (Float64(x_45_scale * y_45_scale) ^ 2.0))) * Float64(Float64(b * a) * Float64(b * Float64(-a)))) * Float64(Float64(Float64(Float64(Float64((Float64(a * sin(Float64(Float64(angle / 180.0) * pi))) ^ 2.0) + (Float64(b * cos(Float64(Float64(angle / 180.0) * pi))) ^ 2.0)) / x_45_scale) / x_45_scale) + Float64(Float64(Float64((Float64(a * cos(Float64(Float64(angle / 180.0) * pi))) ^ 2.0) + (Float64(b * sin(Float64(Float64(angle / 180.0) * pi))) ^ 2.0)) / y_45_scale) / y_45_scale)) + sqrt(Float64((Float64(Float64(Float64(Float64((Float64(a * sin(Float64(Float64(angle / 180.0) * pi))) ^ 2.0) + (Float64(b * cos(Float64(Float64(angle / 180.0) * pi))) ^ 2.0)) / x_45_scale) / x_45_scale) - Float64(Float64(Float64((Float64(a * cos(Float64(Float64(angle / 180.0) * pi))) ^ 2.0) + (Float64(b * sin(Float64(Float64(angle / 180.0) * pi))) ^ 2.0)) / y_45_scale) / y_45_scale)) ^ 2.0) + (Float64(Float64(Float64(Float64(Float64(2.0 * Float64((b ^ 2.0) - (a ^ 2.0))) * sin(Float64(Float64(angle / 180.0) * pi))) * cos(Float64(Float64(angle / 180.0) * pi))) / x_45_scale) / y_45_scale) ^ 2.0))))))) / Float64(Float64(4.0 * Float64(Float64(b * a) * Float64(b * Float64(-a)))) / (Float64(x_45_scale * y_45_scale) ^ 2.0)))
end
function code(a, b, angle, x_45_scale, y_45_scale)
	tmp = 0.0
	if (b <= -4.7e-158)
		tmp = Float64(0.25 * (Float64(Float64(Float64(b * Float64(sqrt(Float64(hypot(fma(-0.5, Float64(Float64(x_45_scale / b) * (Float64(a / y_45_scale) ^ 2.0)), Float64(b / x_45_scale)), hypot(Float64(a / y_45_scale), Float64(b / x_45_scale))) * sqrt(8.0))) / Float64(sqrt(Float64(x_45_scale * y_45_scale)) / a))) / b) * Float64(y_45_scale * Float64(x_45_scale / a))) ^ 2.0));
	elseif (b <= 4e-73)
		tmp = 0.0;
	else
		tmp = Float64(0.25 * (Float64(Float64(x_45_scale * y_45_scale) / Float64(a / Float64(sqrt(b) * Float64(sqrt(Float64(4.0 * Float64(a / Float64(y_45_scale / a)))) / x_45_scale)))) ^ 2.0));
	end
	return tmp
end
code[a_, b_, angle_, x$45$scale_, y$45$scale_] := N[((-N[Sqrt[N[(N[(N[(2.0 * N[(N[(4.0 * N[(N[(b * a), $MachinePrecision] * N[(b * (-a)), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / N[Power[N[(x$45$scale * y$45$scale), $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * N[(N[(b * a), $MachinePrecision] * N[(b * (-a)), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * N[(N[(N[(N[(N[(N[Power[N[(a * N[Sin[N[(N[(angle / 180.0), $MachinePrecision] * Pi), $MachinePrecision]], $MachinePrecision]), $MachinePrecision], 2.0], $MachinePrecision] + N[Power[N[(b * N[Cos[N[(N[(angle / 180.0), $MachinePrecision] * Pi), $MachinePrecision]], $MachinePrecision]), $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision] / x$45$scale), $MachinePrecision] / x$45$scale), $MachinePrecision] + N[(N[(N[(N[Power[N[(a * N[Cos[N[(N[(angle / 180.0), $MachinePrecision] * Pi), $MachinePrecision]], $MachinePrecision]), $MachinePrecision], 2.0], $MachinePrecision] + N[Power[N[(b * N[Sin[N[(N[(angle / 180.0), $MachinePrecision] * Pi), $MachinePrecision]], $MachinePrecision]), $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision] / y$45$scale), $MachinePrecision] / y$45$scale), $MachinePrecision]), $MachinePrecision] + N[Sqrt[N[(N[Power[N[(N[(N[(N[(N[Power[N[(a * N[Sin[N[(N[(angle / 180.0), $MachinePrecision] * Pi), $MachinePrecision]], $MachinePrecision]), $MachinePrecision], 2.0], $MachinePrecision] + N[Power[N[(b * N[Cos[N[(N[(angle / 180.0), $MachinePrecision] * Pi), $MachinePrecision]], $MachinePrecision]), $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision] / x$45$scale), $MachinePrecision] / x$45$scale), $MachinePrecision] - N[(N[(N[(N[Power[N[(a * N[Cos[N[(N[(angle / 180.0), $MachinePrecision] * Pi), $MachinePrecision]], $MachinePrecision]), $MachinePrecision], 2.0], $MachinePrecision] + N[Power[N[(b * N[Sin[N[(N[(angle / 180.0), $MachinePrecision] * Pi), $MachinePrecision]], $MachinePrecision]), $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision] / y$45$scale), $MachinePrecision] / y$45$scale), $MachinePrecision]), $MachinePrecision], 2.0], $MachinePrecision] + N[Power[N[(N[(N[(N[(N[(2.0 * N[(N[Power[b, 2.0], $MachinePrecision] - N[Power[a, 2.0], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * N[Sin[N[(N[(angle / 180.0), $MachinePrecision] * Pi), $MachinePrecision]], $MachinePrecision]), $MachinePrecision] * N[Cos[N[(N[(angle / 180.0), $MachinePrecision] * Pi), $MachinePrecision]], $MachinePrecision]), $MachinePrecision] / x$45$scale), $MachinePrecision] / y$45$scale), $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]) / N[(N[(4.0 * N[(N[(b * a), $MachinePrecision] * N[(b * (-a)), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / N[Power[N[(x$45$scale * y$45$scale), $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
code[a_, b_, angle_, x$45$scale_, y$45$scale_] := If[LessEqual[b, -4.7e-158], N[(0.25 * N[Power[N[(N[(N[(b * N[(N[Sqrt[N[(N[Sqrt[N[(-0.5 * N[(N[(x$45$scale / b), $MachinePrecision] * N[Power[N[(a / y$45$scale), $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision] + N[(b / x$45$scale), $MachinePrecision]), $MachinePrecision] ^ 2 + N[Sqrt[N[(a / y$45$scale), $MachinePrecision] ^ 2 + N[(b / x$45$scale), $MachinePrecision] ^ 2], $MachinePrecision] ^ 2], $MachinePrecision] * N[Sqrt[8.0], $MachinePrecision]), $MachinePrecision]], $MachinePrecision] / N[(N[Sqrt[N[(x$45$scale * y$45$scale), $MachinePrecision]], $MachinePrecision] / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / b), $MachinePrecision] * N[(y$45$scale * N[(x$45$scale / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision], If[LessEqual[b, 4e-73], 0.0, N[(0.25 * N[Power[N[(N[(x$45$scale * y$45$scale), $MachinePrecision] / N[(a / N[(N[Sqrt[b], $MachinePrecision] * N[(N[Sqrt[N[(4.0 * N[(a / N[(y$45$scale / a), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]], $MachinePrecision] / x$45$scale), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision]]]
\frac{-\sqrt{\left(\left(2 \cdot \frac{4 \cdot \left(\left(b \cdot a\right) \cdot \left(b \cdot \left(-a\right)\right)\right)}{{\left(x-scale \cdot y-scale\right)}^{2}}\right) \cdot \left(\left(b \cdot a\right) \cdot \left(b \cdot \left(-a\right)\right)\right)\right) \cdot \left(\left(\frac{\frac{{\left(a \cdot \sin \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2} + {\left(b \cdot \cos \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2}}{x-scale}}{x-scale} + \frac{\frac{{\left(a \cdot \cos \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2} + {\left(b \cdot \sin \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2}}{y-scale}}{y-scale}\right) + \sqrt{{\left(\frac{\frac{{\left(a \cdot \sin \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2} + {\left(b \cdot \cos \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2}}{x-scale}}{x-scale} - \frac{\frac{{\left(a \cdot \cos \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2} + {\left(b \cdot \sin \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2}}{y-scale}}{y-scale}\right)}^{2} + {\left(\frac{\frac{\left(\left(2 \cdot \left({b}^{2} - {a}^{2}\right)\right) \cdot \sin \left(\frac{angle}{180} \cdot \pi\right)\right) \cdot \cos \left(\frac{angle}{180} \cdot \pi\right)}{x-scale}}{y-scale}\right)}^{2}}\right)}}{\frac{4 \cdot \left(\left(b \cdot a\right) \cdot \left(b \cdot \left(-a\right)\right)\right)}{{\left(x-scale \cdot y-scale\right)}^{2}}}
\begin{array}{l}
\mathbf{if}\;b \leq -4.7 \cdot 10^{-158}:\\
\;\;\;\;0.25 \cdot {\left(\frac{b \cdot \frac{\sqrt{\mathsf{hypot}\left(\mathsf{fma}\left(-0.5, \frac{x-scale}{b} \cdot {\left(\frac{a}{y-scale}\right)}^{2}, \frac{b}{x-scale}\right), \mathsf{hypot}\left(\frac{a}{y-scale}, \frac{b}{x-scale}\right)\right) \cdot \sqrt{8}}}{\frac{\sqrt{x-scale \cdot y-scale}}{a}}}{b} \cdot \left(y-scale \cdot \frac{x-scale}{a}\right)\right)}^{2}\\

\mathbf{elif}\;b \leq 4 \cdot 10^{-73}:\\
\;\;\;\;0\\

\mathbf{else}:\\
\;\;\;\;0.25 \cdot {\left(\frac{x-scale \cdot y-scale}{\frac{a}{\sqrt{b} \cdot \frac{\sqrt{4 \cdot \frac{a}{\frac{y-scale}{a}}}}{x-scale}}}\right)}^{2}\\


\end{array}

Error

Derivation

  1. Split input into 3 regimes
  2. if b < -4.70000000000000036e-158

    1. Initial program 63.2

      \[\frac{-\sqrt{\left(\left(2 \cdot \frac{4 \cdot \left(\left(b \cdot a\right) \cdot \left(b \cdot \left(-a\right)\right)\right)}{{\left(x-scale \cdot y-scale\right)}^{2}}\right) \cdot \left(\left(b \cdot a\right) \cdot \left(b \cdot \left(-a\right)\right)\right)\right) \cdot \left(\left(\frac{\frac{{\left(a \cdot \sin \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2} + {\left(b \cdot \cos \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2}}{x-scale}}{x-scale} + \frac{\frac{{\left(a \cdot \cos \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2} + {\left(b \cdot \sin \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2}}{y-scale}}{y-scale}\right) + \sqrt{{\left(\frac{\frac{{\left(a \cdot \sin \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2} + {\left(b \cdot \cos \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2}}{x-scale}}{x-scale} - \frac{\frac{{\left(a \cdot \cos \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2} + {\left(b \cdot \sin \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2}}{y-scale}}{y-scale}\right)}^{2} + {\left(\frac{\frac{\left(\left(2 \cdot \left({b}^{2} - {a}^{2}\right)\right) \cdot \sin \left(\frac{angle}{180} \cdot \pi\right)\right) \cdot \cos \left(\frac{angle}{180} \cdot \pi\right)}{x-scale}}{y-scale}\right)}^{2}}\right)}}{\frac{4 \cdot \left(\left(b \cdot a\right) \cdot \left(b \cdot \left(-a\right)\right)\right)}{{\left(x-scale \cdot y-scale\right)}^{2}}} \]
    2. Simplified63.2

      \[\leadsto \color{blue}{\frac{-\sqrt{\left(2 \cdot \left(\frac{4}{\frac{{\left(x-scale \cdot y-scale\right)}^{2}}{b \cdot \left(a \cdot \left(b \cdot \left(-a\right)\right)\right)}} \cdot \left(b \cdot \left(a \cdot \left(b \cdot \left(-a\right)\right)\right)\right)\right)\right) \cdot \left(\frac{{\left(a \cdot \sin \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2} + {\left(b \cdot \cos \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2}}{x-scale \cdot x-scale} + \left(\frac{{\left(a \cdot \cos \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2} + {\left(b \cdot \sin \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2}}{y-scale \cdot y-scale} + \sqrt{{\left(\frac{{\left(a \cdot \sin \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2} + {\left(b \cdot \cos \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2}}{x-scale \cdot x-scale} - \frac{{\left(a \cdot \cos \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2} + {\left(b \cdot \sin \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2}}{y-scale \cdot y-scale}\right)}^{2} + {\left(\frac{\cos \left(\frac{angle}{180} \cdot \pi\right) \cdot \left(2 \cdot \left(\left(b \cdot b - a \cdot a\right) \cdot \sin \left(\frac{angle}{180} \cdot \pi\right)\right)\right)}{x-scale \cdot y-scale}\right)}^{2}}\right)\right)}}{\frac{4}{\frac{{\left(x-scale \cdot y-scale\right)}^{2}}{b \cdot \left(a \cdot \left(b \cdot \left(-a\right)\right)\right)}}}} \]
      Proof
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a)))))) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a)))))) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 x-scale x-scale)) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 x-scale x-scale)) (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale))) 2) (pow.f64 (/.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (*.f64 (-.f64 (*.f64 b b) (*.f64 a a)) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))))) (*.f64 x-scale y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (Rewrite<= associate-*l*_binary64 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))))) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a)))))) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 x-scale x-scale)) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 x-scale x-scale)) (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale))) 2) (pow.f64 (/.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (*.f64 (-.f64 (*.f64 b b) (*.f64 a a)) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))))) (*.f64 x-scale y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (Rewrite<= associate-/l*_binary64 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a)))))) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 x-scale x-scale)) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 x-scale x-scale)) (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale))) 2) (pow.f64 (/.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (*.f64 (-.f64 (*.f64 b b) (*.f64 a a)) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))))) (*.f64 x-scale y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2)) (Rewrite<= associate-*l*_binary64 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))))) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 x-scale x-scale)) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 x-scale x-scale)) (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale))) 2) (pow.f64 (/.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (*.f64 (-.f64 (*.f64 b b) (*.f64 a a)) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))))) (*.f64 x-scale y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 1 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (Rewrite<= associate-*l*_binary64 (*.f64 (*.f64 2 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a))))) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 x-scale x-scale)) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 x-scale x-scale)) (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale))) 2) (pow.f64 (/.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (*.f64 (-.f64 (*.f64 b b) (*.f64 a a)) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))))) (*.f64 x-scale y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (+.f64 (Rewrite<= associate-/l/_binary64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale)) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 x-scale x-scale)) (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale))) 2) (pow.f64 (/.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (*.f64 (-.f64 (*.f64 b b) (*.f64 a a)) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))))) (*.f64 x-scale y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (+.f64 (Rewrite<= associate-/l/_binary64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 x-scale x-scale)) (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale))) 2) (pow.f64 (/.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (*.f64 (-.f64 (*.f64 b b) (*.f64 a a)) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))))) (*.f64 x-scale y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 1 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (Rewrite<= associate-/l/_binary64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale)) (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale))) 2) (pow.f64 (/.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (*.f64 (-.f64 (*.f64 b b) (*.f64 a a)) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))))) (*.f64 x-scale y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (Rewrite<= associate-/l/_binary64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale))) 2) (pow.f64 (/.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (*.f64 (-.f64 (*.f64 b b) (*.f64 a a)) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))))) (*.f64 x-scale y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) 2) (pow.f64 (/.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (*.f64 (-.f64 (Rewrite<= unpow2_binary64 (pow.f64 b 2)) (*.f64 a a)) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))))) (*.f64 x-scale y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) 2) (pow.f64 (/.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (*.f64 (-.f64 (pow.f64 b 2) (Rewrite<= unpow2_binary64 (pow.f64 a 2))) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))))) (*.f64 x-scale y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) 2) (pow.f64 (/.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (Rewrite<= associate-*l*_binary64 (*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))))) (*.f64 x-scale y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) 2) (pow.f64 (/.f64 (Rewrite<= *-commutative_binary64 (*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))))) (*.f64 x-scale y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) 2) (pow.f64 (Rewrite=> associate-/r*_binary64 (/.f64 (/.f64 (*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) x-scale) y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (Rewrite<= associate-+l+_binary64 (+.f64 (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) 2) (pow.f64 (/.f64 (/.f64 (*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) x-scale) y-scale) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (+.f64 (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) 2) (pow.f64 (/.f64 (/.f64 (*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) x-scale) y-scale) 2))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (Rewrite<= associate-*l*_binary64 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a))))))): 1 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (+.f64 (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) 2) (pow.f64 (/.f64 (/.f64 (*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) x-scale) y-scale) 2))))))) (Rewrite<= associate-/l*_binary64 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2)))): 0 points increase in error, 1 points decrease in error
    3. Taylor expanded in angle around 0 63.6

      \[\leadsto \color{blue}{0.25 \cdot \frac{\sqrt{8 \cdot \frac{\left(\frac{{b}^{2}}{{x-scale}^{2}} + \left(\frac{{a}^{2}}{{y-scale}^{2}} + \sqrt{{\left(\frac{{b}^{2}}{{x-scale}^{2}} - \frac{{a}^{2}}{{y-scale}^{2}}\right)}^{2}}\right)\right) \cdot \left({\left({b}^{2}\right)}^{2} \cdot {\left({a}^{2}\right)}^{2}\right)}{{x-scale}^{2} \cdot {y-scale}^{2}}} \cdot \left({x-scale}^{2} \cdot {y-scale}^{2}\right)}{{b}^{2} \cdot {a}^{2}}} \]
    4. Simplified63.6

      \[\leadsto \color{blue}{0.25 \cdot \left(\frac{\sqrt{8 \cdot \frac{\left(\frac{b \cdot b}{x-scale \cdot x-scale} + \frac{a \cdot a}{y-scale \cdot y-scale}\right) + \sqrt{{\left(\frac{b \cdot b}{x-scale \cdot x-scale} - \frac{a \cdot a}{y-scale \cdot y-scale}\right)}^{2}}}{\frac{\left(x-scale \cdot x-scale\right) \cdot \left(y-scale \cdot y-scale\right)}{{\left(b \cdot b\right)}^{2} \cdot {\left(a \cdot a\right)}^{2}}}}}{b \cdot b} \cdot \frac{\left(x-scale \cdot x-scale\right) \cdot \left(y-scale \cdot y-scale\right)}{a \cdot a}\right)} \]
      Proof
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (+.f64 (+.f64 (/.f64 (*.f64 b b) (*.f64 x-scale x-scale)) (/.f64 (*.f64 a a) (*.f64 y-scale y-scale))) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (*.f64 b b) (*.f64 x-scale x-scale)) (/.f64 (*.f64 a a) (*.f64 y-scale y-scale))) 2))) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 (pow.f64 (*.f64 b b) 2) (pow.f64 (*.f64 a a) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (+.f64 (+.f64 (/.f64 (Rewrite<= unpow2_binary64 (pow.f64 b 2)) (*.f64 x-scale x-scale)) (/.f64 (*.f64 a a) (*.f64 y-scale y-scale))) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (*.f64 b b) (*.f64 x-scale x-scale)) (/.f64 (*.f64 a a) (*.f64 y-scale y-scale))) 2))) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 (pow.f64 (*.f64 b b) 2) (pow.f64 (*.f64 a a) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (+.f64 (+.f64 (/.f64 (pow.f64 b 2) (Rewrite<= unpow2_binary64 (pow.f64 x-scale 2))) (/.f64 (*.f64 a a) (*.f64 y-scale y-scale))) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (*.f64 b b) (*.f64 x-scale x-scale)) (/.f64 (*.f64 a a) (*.f64 y-scale y-scale))) 2))) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 (pow.f64 (*.f64 b b) 2) (pow.f64 (*.f64 a a) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (+.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (Rewrite<= unpow2_binary64 (pow.f64 a 2)) (*.f64 y-scale y-scale))) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (*.f64 b b) (*.f64 x-scale x-scale)) (/.f64 (*.f64 a a) (*.f64 y-scale y-scale))) 2))) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 (pow.f64 (*.f64 b b) 2) (pow.f64 (*.f64 a a) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (+.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (Rewrite<= unpow2_binary64 (pow.f64 y-scale 2)))) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (*.f64 b b) (*.f64 x-scale x-scale)) (/.f64 (*.f64 a a) (*.f64 y-scale y-scale))) 2))) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 (pow.f64 (*.f64 b b) 2) (pow.f64 (*.f64 a a) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (+.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (Rewrite<= unpow2_binary64 (pow.f64 b 2)) (*.f64 x-scale x-scale)) (/.f64 (*.f64 a a) (*.f64 y-scale y-scale))) 2))) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 (pow.f64 (*.f64 b b) 2) (pow.f64 (*.f64 a a) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (+.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (Rewrite<= unpow2_binary64 (pow.f64 x-scale 2))) (/.f64 (*.f64 a a) (*.f64 y-scale y-scale))) 2))) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 (pow.f64 (*.f64 b b) 2) (pow.f64 (*.f64 a a) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (+.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (Rewrite<= unpow2_binary64 (pow.f64 a 2)) (*.f64 y-scale y-scale))) 2))) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 (pow.f64 (*.f64 b b) 2) (pow.f64 (*.f64 a a) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (+.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (Rewrite<= unpow2_binary64 (pow.f64 y-scale 2)))) 2))) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 (pow.f64 (*.f64 b b) 2) (pow.f64 (*.f64 a a) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (Rewrite<= associate-+r+_binary64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (+.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) 2))))) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 (pow.f64 (*.f64 b b) 2) (pow.f64 (*.f64 a a) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (+.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) 2)))) (/.f64 (*.f64 (Rewrite<= unpow2_binary64 (pow.f64 x-scale 2)) (*.f64 y-scale y-scale)) (*.f64 (pow.f64 (*.f64 b b) 2) (pow.f64 (*.f64 a a) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (+.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) 2)))) (/.f64 (*.f64 (pow.f64 x-scale 2) (Rewrite<= unpow2_binary64 (pow.f64 y-scale 2))) (*.f64 (pow.f64 (*.f64 b b) 2) (pow.f64 (*.f64 a a) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (+.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) 2)))) (/.f64 (*.f64 (pow.f64 x-scale 2) (pow.f64 y-scale 2)) (*.f64 (pow.f64 (Rewrite<= unpow2_binary64 (pow.f64 b 2)) 2) (pow.f64 (*.f64 a a) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (+.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) 2)))) (/.f64 (*.f64 (pow.f64 x-scale 2) (pow.f64 y-scale 2)) (*.f64 (pow.f64 (pow.f64 b 2) 2) (pow.f64 (Rewrite<= unpow2_binary64 (pow.f64 a 2)) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (Rewrite<= associate-/l*_binary64 (/.f64 (*.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (+.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) 2)))) (*.f64 (pow.f64 (pow.f64 b 2) 2) (pow.f64 (pow.f64 a 2) 2))) (*.f64 (pow.f64 x-scale 2) (pow.f64 y-scale 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (*.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (+.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) 2)))) (*.f64 (pow.f64 (pow.f64 b 2) 2) (pow.f64 (pow.f64 a 2) 2))) (*.f64 (pow.f64 x-scale 2) (pow.f64 y-scale 2))))) (Rewrite<= unpow2_binary64 (pow.f64 b 2))) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (*.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (+.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) 2)))) (*.f64 (pow.f64 (pow.f64 b 2) 2) (pow.f64 (pow.f64 a 2) 2))) (*.f64 (pow.f64 x-scale 2) (pow.f64 y-scale 2))))) (pow.f64 b 2)) (/.f64 (*.f64 (Rewrite<= unpow2_binary64 (pow.f64 x-scale 2)) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (*.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (+.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) 2)))) (*.f64 (pow.f64 (pow.f64 b 2) 2) (pow.f64 (pow.f64 a 2) 2))) (*.f64 (pow.f64 x-scale 2) (pow.f64 y-scale 2))))) (pow.f64 b 2)) (/.f64 (*.f64 (pow.f64 x-scale 2) (Rewrite<= unpow2_binary64 (pow.f64 y-scale 2))) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (*.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (+.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) 2)))) (*.f64 (pow.f64 (pow.f64 b 2) 2) (pow.f64 (pow.f64 a 2) 2))) (*.f64 (pow.f64 x-scale 2) (pow.f64 y-scale 2))))) (pow.f64 b 2)) (/.f64 (*.f64 (pow.f64 x-scale 2) (pow.f64 y-scale 2)) (Rewrite<= unpow2_binary64 (pow.f64 a 2))))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (Rewrite<= times-frac_binary64 (/.f64 (*.f64 (sqrt.f64 (*.f64 8 (/.f64 (*.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (+.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) 2)))) (*.f64 (pow.f64 (pow.f64 b 2) 2) (pow.f64 (pow.f64 a 2) 2))) (*.f64 (pow.f64 x-scale 2) (pow.f64 y-scale 2))))) (*.f64 (pow.f64 x-scale 2) (pow.f64 y-scale 2))) (*.f64 (pow.f64 b 2) (pow.f64 a 2))))): 3 points increase in error, 1 points decrease in error
    5. Applied egg-rr63.3

      \[\leadsto 0.25 \cdot \color{blue}{\left(e^{\mathsf{log1p}\left({\left(\frac{\sqrt{\sqrt{8} \cdot \frac{\mathsf{hypot}\left(\sqrt{{\left(\frac{b}{x-scale}\right)}^{2} - {\left(\frac{a}{y-scale}\right)}^{2}}, \mathsf{hypot}\left(\frac{a}{y-scale}, \frac{b}{x-scale}\right)\right)}{\frac{x-scale \cdot y-scale}{{\left(b \cdot a\right)}^{2}}}}}{b} \cdot \frac{x-scale}{\frac{a}{y-scale}}\right)}^{2}\right)} - 1\right)} \]
    6. Simplified63.1

      \[\leadsto 0.25 \cdot \color{blue}{{\left(\frac{\sqrt{\sqrt{8} \cdot \frac{\mathsf{hypot}\left(\sqrt{{\left(\frac{b}{x-scale}\right)}^{2} - {\left(\frac{a}{y-scale}\right)}^{2}}, \mathsf{hypot}\left(\frac{a}{y-scale}, \frac{b}{x-scale}\right)\right)}{\frac{y-scale \cdot x-scale}{{\left(a \cdot b\right)}^{2}}}}}{b} \cdot \left(\frac{x-scale}{a} \cdot y-scale\right)\right)}^{2}} \]
      Proof
      (pow.f64 (*.f64 (/.f64 (sqrt.f64 (*.f64 (sqrt.f64 8) (/.f64 (hypot.f64 (sqrt.f64 (-.f64 (pow.f64 (/.f64 b x-scale) 2) (pow.f64 (/.f64 a y-scale) 2))) (hypot.f64 (/.f64 a y-scale) (/.f64 b x-scale))) (/.f64 (*.f64 y-scale x-scale) (pow.f64 (*.f64 a b) 2))))) b) (*.f64 (/.f64 x-scale a) y-scale)) 2): 0 points increase in error, 0 points decrease in error
      (pow.f64 (*.f64 (/.f64 (sqrt.f64 (*.f64 (sqrt.f64 8) (/.f64 (hypot.f64 (sqrt.f64 (-.f64 (pow.f64 (/.f64 b x-scale) 2) (pow.f64 (/.f64 a y-scale) 2))) (hypot.f64 (/.f64 a y-scale) (/.f64 b x-scale))) (/.f64 (Rewrite<= *-commutative_binary64 (*.f64 x-scale y-scale)) (pow.f64 (*.f64 a b) 2))))) b) (*.f64 (/.f64 x-scale a) y-scale)) 2): 0 points increase in error, 0 points decrease in error
      (pow.f64 (*.f64 (/.f64 (sqrt.f64 (*.f64 (sqrt.f64 8) (/.f64 (hypot.f64 (sqrt.f64 (-.f64 (pow.f64 (/.f64 b x-scale) 2) (pow.f64 (/.f64 a y-scale) 2))) (hypot.f64 (/.f64 a y-scale) (/.f64 b x-scale))) (/.f64 (*.f64 x-scale y-scale) (pow.f64 (Rewrite=> *-commutative_binary64 (*.f64 b a)) 2))))) b) (*.f64 (/.f64 x-scale a) y-scale)) 2): 0 points increase in error, 0 points decrease in error
      (pow.f64 (*.f64 (/.f64 (sqrt.f64 (*.f64 (sqrt.f64 8) (/.f64 (hypot.f64 (sqrt.f64 (-.f64 (pow.f64 (/.f64 b x-scale) 2) (pow.f64 (/.f64 a y-scale) 2))) (hypot.f64 (/.f64 a y-scale) (/.f64 b x-scale))) (/.f64 (*.f64 x-scale y-scale) (pow.f64 (*.f64 b a) 2))))) b) (Rewrite<= associate-/r/_binary64 (/.f64 x-scale (/.f64 a y-scale)))) 2): 6 points increase in error, 5 points decrease in error
      (Rewrite<= expm1-log1p_binary64 (expm1.f64 (log1p.f64 (pow.f64 (*.f64 (/.f64 (sqrt.f64 (*.f64 (sqrt.f64 8) (/.f64 (hypot.f64 (sqrt.f64 (-.f64 (pow.f64 (/.f64 b x-scale) 2) (pow.f64 (/.f64 a y-scale) 2))) (hypot.f64 (/.f64 a y-scale) (/.f64 b x-scale))) (/.f64 (*.f64 x-scale y-scale) (pow.f64 (*.f64 b a) 2))))) b) (/.f64 x-scale (/.f64 a y-scale))) 2)))): 4 points increase in error, 5 points decrease in error
      (Rewrite<= expm1-def_binary64 (-.f64 (exp.f64 (log1p.f64 (pow.f64 (*.f64 (/.f64 (sqrt.f64 (*.f64 (sqrt.f64 8) (/.f64 (hypot.f64 (sqrt.f64 (-.f64 (pow.f64 (/.f64 b x-scale) 2) (pow.f64 (/.f64 a y-scale) 2))) (hypot.f64 (/.f64 a y-scale) (/.f64 b x-scale))) (/.f64 (*.f64 x-scale y-scale) (pow.f64 (*.f64 b a) 2))))) b) (/.f64 x-scale (/.f64 a y-scale))) 2))) 1)): 3 points increase in error, 2 points decrease in error
    7. Taylor expanded in x-scale around 0 62.7

      \[\leadsto 0.25 \cdot {\left(\frac{\sqrt{\sqrt{8} \cdot \frac{\mathsf{hypot}\left(\color{blue}{\frac{\sqrt{{b}^{2}}}{x-scale} + -0.5 \cdot \frac{x-scale \cdot {a}^{2}}{\sqrt{{b}^{2}} \cdot {y-scale}^{2}}}, \mathsf{hypot}\left(\frac{a}{y-scale}, \frac{b}{x-scale}\right)\right)}{\frac{y-scale \cdot x-scale}{{\left(a \cdot b\right)}^{2}}}}}{b} \cdot \left(\frac{x-scale}{a} \cdot y-scale\right)\right)}^{2} \]
    8. Simplified62.4

      \[\leadsto 0.25 \cdot {\left(\frac{\sqrt{\sqrt{8} \cdot \frac{\mathsf{hypot}\left(\color{blue}{\mathsf{fma}\left(-0.5, {\left(\frac{a}{y-scale}\right)}^{2} \cdot \frac{x-scale}{\left|b\right|}, \frac{\left|b\right|}{x-scale}\right)}, \mathsf{hypot}\left(\frac{a}{y-scale}, \frac{b}{x-scale}\right)\right)}{\frac{y-scale \cdot x-scale}{{\left(a \cdot b\right)}^{2}}}}}{b} \cdot \left(\frac{x-scale}{a} \cdot y-scale\right)\right)}^{2} \]
      Proof
      (fma.f64 -1/2 (*.f64 (pow.f64 (/.f64 a y-scale) 2) (/.f64 x-scale (fabs.f64 b))) (/.f64 (fabs.f64 b) x-scale)): 0 points increase in error, 0 points decrease in error
      (fma.f64 -1/2 (*.f64 (pow.f64 (/.f64 a y-scale) 2) (/.f64 x-scale (Rewrite<= rem-sqrt-square_binary64 (sqrt.f64 (*.f64 b b))))) (/.f64 (fabs.f64 b) x-scale)): 25 points increase in error, 1 points decrease in error
      (fma.f64 -1/2 (*.f64 (pow.f64 (/.f64 a y-scale) 2) (/.f64 x-scale (sqrt.f64 (Rewrite<= unpow2_binary64 (pow.f64 b 2))))) (/.f64 (fabs.f64 b) x-scale)): 0 points increase in error, 0 points decrease in error
      (fma.f64 -1/2 (Rewrite<= *-commutative_binary64 (*.f64 (/.f64 x-scale (sqrt.f64 (pow.f64 b 2))) (pow.f64 (/.f64 a y-scale) 2))) (/.f64 (fabs.f64 b) x-scale)): 0 points increase in error, 0 points decrease in error
      (fma.f64 -1/2 (*.f64 (/.f64 x-scale (sqrt.f64 (pow.f64 b 2))) (Rewrite=> unpow2_binary64 (*.f64 (/.f64 a y-scale) (/.f64 a y-scale)))) (/.f64 (fabs.f64 b) x-scale)): 0 points increase in error, 0 points decrease in error
      (fma.f64 -1/2 (*.f64 (/.f64 x-scale (sqrt.f64 (pow.f64 b 2))) (Rewrite<= times-frac_binary64 (/.f64 (*.f64 a a) (*.f64 y-scale y-scale)))) (/.f64 (fabs.f64 b) x-scale)): 24 points increase in error, 4 points decrease in error
      (fma.f64 -1/2 (*.f64 (/.f64 x-scale (sqrt.f64 (pow.f64 b 2))) (/.f64 (Rewrite<= unpow2_binary64 (pow.f64 a 2)) (*.f64 y-scale y-scale))) (/.f64 (fabs.f64 b) x-scale)): 0 points increase in error, 0 points decrease in error
      (fma.f64 -1/2 (*.f64 (/.f64 x-scale (sqrt.f64 (pow.f64 b 2))) (/.f64 (pow.f64 a 2) (Rewrite<= unpow2_binary64 (pow.f64 y-scale 2)))) (/.f64 (fabs.f64 b) x-scale)): 0 points increase in error, 0 points decrease in error
      (fma.f64 -1/2 (Rewrite<= times-frac_binary64 (/.f64 (*.f64 x-scale (pow.f64 a 2)) (*.f64 (sqrt.f64 (pow.f64 b 2)) (pow.f64 y-scale 2)))) (/.f64 (fabs.f64 b) x-scale)): 7 points increase in error, 6 points decrease in error
      (fma.f64 -1/2 (/.f64 (*.f64 x-scale (pow.f64 a 2)) (*.f64 (sqrt.f64 (pow.f64 b 2)) (pow.f64 y-scale 2))) (/.f64 (Rewrite<= rem-sqrt-square_binary64 (sqrt.f64 (*.f64 b b))) x-scale)): 11 points increase in error, 0 points decrease in error
      (fma.f64 -1/2 (/.f64 (*.f64 x-scale (pow.f64 a 2)) (*.f64 (sqrt.f64 (pow.f64 b 2)) (pow.f64 y-scale 2))) (/.f64 (sqrt.f64 (Rewrite<= unpow2_binary64 (pow.f64 b 2))) x-scale)): 0 points increase in error, 0 points decrease in error
      (Rewrite<= fma-def_binary64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x-scale (pow.f64 a 2)) (*.f64 (sqrt.f64 (pow.f64 b 2)) (pow.f64 y-scale 2)))) (/.f64 (sqrt.f64 (pow.f64 b 2)) x-scale))): 0 points increase in error, 0 points decrease in error
      (Rewrite<= +-commutative_binary64 (+.f64 (/.f64 (sqrt.f64 (pow.f64 b 2)) x-scale) (*.f64 -1/2 (/.f64 (*.f64 x-scale (pow.f64 a 2)) (*.f64 (sqrt.f64 (pow.f64 b 2)) (pow.f64 y-scale 2)))))): 0 points increase in error, 0 points decrease in error
    9. Applied egg-rr60.9

      \[\leadsto 0.25 \cdot {\left(\frac{\color{blue}{\frac{\sqrt{\sqrt{8} \cdot \mathsf{hypot}\left(\mathsf{fma}\left(-0.5, \frac{{\left(\frac{a}{y-scale}\right)}^{2}}{\frac{b}{x-scale}}, \frac{b}{x-scale}\right), \mathsf{hypot}\left(\frac{a}{y-scale}, \frac{b}{x-scale}\right)\right)}}{\frac{\sqrt{y-scale \cdot x-scale}}{a \cdot b}}}}{b} \cdot \left(\frac{x-scale}{a} \cdot y-scale\right)\right)}^{2} \]
    10. Simplified60.7

      \[\leadsto 0.25 \cdot {\left(\frac{\color{blue}{\frac{\sqrt{\mathsf{hypot}\left(\mathsf{fma}\left(-0.5, \frac{x-scale}{b} \cdot {\left(\frac{a}{y-scale}\right)}^{2}, \frac{b}{x-scale}\right), \mathsf{hypot}\left(\frac{a}{y-scale}, \frac{b}{x-scale}\right)\right) \cdot \sqrt{8}}}{\frac{\sqrt{x-scale \cdot y-scale}}{a}} \cdot b}}{b} \cdot \left(\frac{x-scale}{a} \cdot y-scale\right)\right)}^{2} \]
      Proof
      (*.f64 (/.f64 (sqrt.f64 (*.f64 (hypot.f64 (fma.f64 -1/2 (*.f64 (/.f64 x-scale b) (pow.f64 (/.f64 a y-scale) 2)) (/.f64 b x-scale)) (hypot.f64 (/.f64 a y-scale) (/.f64 b x-scale))) (sqrt.f64 8))) (/.f64 (sqrt.f64 (*.f64 x-scale y-scale)) a)) b): 0 points increase in error, 0 points decrease in error
      (*.f64 (/.f64 (sqrt.f64 (*.f64 (hypot.f64 (fma.f64 -1/2 (*.f64 (/.f64 x-scale b) (Rewrite=> unpow2_binary64 (*.f64 (/.f64 a y-scale) (/.f64 a y-scale)))) (/.f64 b x-scale)) (hypot.f64 (/.f64 a y-scale) (/.f64 b x-scale))) (sqrt.f64 8))) (/.f64 (sqrt.f64 (*.f64 x-scale y-scale)) a)) b): 0 points increase in error, 0 points decrease in error
      (*.f64 (/.f64 (sqrt.f64 (*.f64 (hypot.f64 (fma.f64 -1/2 (*.f64 (/.f64 x-scale b) (Rewrite<= times-frac_binary64 (/.f64 (*.f64 a a) (*.f64 y-scale y-scale)))) (/.f64 b x-scale)) (hypot.f64 (/.f64 a y-scale) (/.f64 b x-scale))) (sqrt.f64 8))) (/.f64 (sqrt.f64 (*.f64 x-scale y-scale)) a)) b): 9 points increase in error, 2 points decrease in error
      (*.f64 (/.f64 (sqrt.f64 (*.f64 (hypot.f64 (fma.f64 -1/2 (*.f64 (/.f64 x-scale b) (/.f64 (Rewrite<= unpow2_binary64 (pow.f64 a 2)) (*.f64 y-scale y-scale))) (/.f64 b x-scale)) (hypot.f64 (/.f64 a y-scale) (/.f64 b x-scale))) (sqrt.f64 8))) (/.f64 (sqrt.f64 (*.f64 x-scale y-scale)) a)) b): 0 points increase in error, 0 points decrease in error
      (*.f64 (/.f64 (sqrt.f64 (*.f64 (hypot.f64 (fma.f64 -1/2 (*.f64 (/.f64 x-scale b) (/.f64 (pow.f64 a 2) (Rewrite<= unpow2_binary64 (pow.f64 y-scale 2)))) (/.f64 b x-scale)) (hypot.f64 (/.f64 a y-scale) (/.f64 b x-scale))) (sqrt.f64 8))) (/.f64 (sqrt.f64 (*.f64 x-scale y-scale)) a)) b): 0 points increase in error, 0 points decrease in error
      (*.f64 (/.f64 (sqrt.f64 (*.f64 (hypot.f64 (fma.f64 -1/2 (*.f64 (/.f64 x-scale b) (Rewrite<= rem-square-sqrt_binary64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) (sqrt.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)))))) (/.f64 b x-scale)) (hypot.f64 (/.f64 a y-scale) (/.f64 b x-scale))) (sqrt.f64 8))) (/.f64 (sqrt.f64 (*.f64 x-scale y-scale)) a)) b): 1 points increase in error, 2 points decrease in error
      (*.f64 (/.f64 (sqrt.f64 (*.f64 (hypot.f64 (fma.f64 -1/2 (*.f64 (/.f64 x-scale b) (Rewrite<= unpow2_binary64 (pow.f64 (sqrt.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) 2))) (/.f64 b x-scale)) (hypot.f64 (/.f64 a y-scale) (/.f64 b x-scale))) (sqrt.f64 8))) (/.f64 (sqrt.f64 (*.f64 x-scale y-scale)) a)) b): 0 points increase in error, 0 points decrease in error
      (*.f64 (/.f64 (sqrt.f64 (*.f64 (hypot.f64 (fma.f64 -1/2 (Rewrite<= associate-/r/_binary64 (/.f64 x-scale (/.f64 b (pow.f64 (sqrt.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) 2)))) (/.f64 b x-scale)) (hypot.f64 (/.f64 a y-scale) (/.f64 b x-scale))) (sqrt.f64 8))) (/.f64 (sqrt.f64 (*.f64 x-scale y-scale)) a)) b): 1 points increase in error, 16 points decrease in error
      (*.f64 (/.f64 (sqrt.f64 (*.f64 (hypot.f64 (fma.f64 -1/2 (/.f64 x-scale (/.f64 b (Rewrite=> unpow2_binary64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) (sqrt.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))))))) (/.f64 b x-scale)) (hypot.f64 (/.f64 a y-scale) (/.f64 b x-scale))) (sqrt.f64 8))) (/.f64 (sqrt.f64 (*.f64 x-scale y-scale)) a)) b): 0 points increase in error, 0 points decrease in error
      (*.f64 (/.f64 (sqrt.f64 (*.f64 (hypot.f64 (fma.f64 -1/2 (/.f64 x-scale (/.f64 b (Rewrite=> rem-square-sqrt_binary64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))))) (/.f64 b x-scale)) (hypot.f64 (/.f64 a y-scale) (/.f64 b x-scale))) (sqrt.f64 8))) (/.f64 (sqrt.f64 (*.f64 x-scale y-scale)) a)) b): 1 points increase in error, 1 points decrease in error
      (*.f64 (/.f64 (sqrt.f64 (*.f64 (hypot.f64 (fma.f64 -1/2 (/.f64 x-scale (/.f64 b (/.f64 (Rewrite=> unpow2_binary64 (*.f64 a a)) (pow.f64 y-scale 2)))) (/.f64 b x-scale)) (hypot.f64 (/.f64 a y-scale) (/.f64 b x-scale))) (sqrt.f64 8))) (/.f64 (sqrt.f64 (*.f64 x-scale y-scale)) a)) b): 0 points increase in error, 0 points decrease in error
      (*.f64 (/.f64 (sqrt.f64 (*.f64 (hypot.f64 (fma.f64 -1/2 (/.f64 x-scale (/.f64 b (/.f64 (*.f64 a a) (Rewrite=> unpow2_binary64 (*.f64 y-scale y-scale))))) (/.f64 b x-scale)) (hypot.f64 (/.f64 a y-scale) (/.f64 b x-scale))) (sqrt.f64 8))) (/.f64 (sqrt.f64 (*.f64 x-scale y-scale)) a)) b): 0 points increase in error, 0 points decrease in error
      (*.f64 (/.f64 (sqrt.f64 (*.f64 (hypot.f64 (fma.f64 -1/2 (/.f64 x-scale (/.f64 b (Rewrite=> times-frac_binary64 (*.f64 (/.f64 a y-scale) (/.f64 a y-scale))))) (/.f64 b x-scale)) (hypot.f64 (/.f64 a y-scale) (/.f64 b x-scale))) (sqrt.f64 8))) (/.f64 (sqrt.f64 (*.f64 x-scale y-scale)) a)) b): 4 points increase in error, 10 points decrease in error
      (*.f64 (/.f64 (sqrt.f64 (*.f64 (hypot.f64 (fma.f64 -1/2 (/.f64 x-scale (/.f64 b (Rewrite<= unpow2_binary64 (pow.f64 (/.f64 a y-scale) 2)))) (/.f64 b x-scale)) (hypot.f64 (/.f64 a y-scale) (/.f64 b x-scale))) (sqrt.f64 8))) (/.f64 (sqrt.f64 (*.f64 x-scale y-scale)) a)) b): 0 points increase in error, 0 points decrease in error
      (*.f64 (/.f64 (sqrt.f64 (*.f64 (hypot.f64 (fma.f64 -1/2 (Rewrite<= associate-/l*_binary64 (/.f64 (*.f64 x-scale (pow.f64 (/.f64 a y-scale) 2)) b)) (/.f64 b x-scale)) (hypot.f64 (/.f64 a y-scale) (/.f64 b x-scale))) (sqrt.f64 8))) (/.f64 (sqrt.f64 (*.f64 x-scale y-scale)) a)) b): 3 points increase in error, 2 points decrease in error
      (*.f64 (/.f64 (sqrt.f64 (*.f64 (hypot.f64 (fma.f64 -1/2 (/.f64 (Rewrite=> *-commutative_binary64 (*.f64 (pow.f64 (/.f64 a y-scale) 2) x-scale)) b) (/.f64 b x-scale)) (hypot.f64 (/.f64 a y-scale) (/.f64 b x-scale))) (sqrt.f64 8))) (/.f64 (sqrt.f64 (*.f64 x-scale y-scale)) a)) b): 0 points increase in error, 0 points decrease in error
      (*.f64 (/.f64 (sqrt.f64 (*.f64 (hypot.f64 (fma.f64 -1/2 (Rewrite=> associate-/l*_binary64 (/.f64 (pow.f64 (/.f64 a y-scale) 2) (/.f64 b x-scale))) (/.f64 b x-scale)) (hypot.f64 (/.f64 a y-scale) (/.f64 b x-scale))) (sqrt.f64 8))) (/.f64 (sqrt.f64 (*.f64 x-scale y-scale)) a)) b): 17 points increase in error, 6 points decrease in error
      (*.f64 (/.f64 (sqrt.f64 (Rewrite<= *-commutative_binary64 (*.f64 (sqrt.f64 8) (hypot.f64 (fma.f64 -1/2 (/.f64 (pow.f64 (/.f64 a y-scale) 2) (/.f64 b x-scale)) (/.f64 b x-scale)) (hypot.f64 (/.f64 a y-scale) (/.f64 b x-scale)))))) (/.f64 (sqrt.f64 (*.f64 x-scale y-scale)) a)) b): 0 points increase in error, 0 points decrease in error
      (*.f64 (/.f64 (sqrt.f64 (*.f64 (sqrt.f64 8) (hypot.f64 (fma.f64 -1/2 (/.f64 (pow.f64 (/.f64 a y-scale) 2) (/.f64 b x-scale)) (/.f64 b x-scale)) (hypot.f64 (/.f64 a y-scale) (/.f64 b x-scale))))) (/.f64 (sqrt.f64 (Rewrite=> *-commutative_binary64 (*.f64 y-scale x-scale))) a)) b): 0 points increase in error, 0 points decrease in error
      (Rewrite<= associate-/r/_binary64 (/.f64 (sqrt.f64 (*.f64 (sqrt.f64 8) (hypot.f64 (fma.f64 -1/2 (/.f64 (pow.f64 (/.f64 a y-scale) 2) (/.f64 b x-scale)) (/.f64 b x-scale)) (hypot.f64 (/.f64 a y-scale) (/.f64 b x-scale))))) (/.f64 (/.f64 (sqrt.f64 (*.f64 y-scale x-scale)) a) b))): 7 points increase in error, 17 points decrease in error
      (/.f64 (sqrt.f64 (*.f64 (sqrt.f64 8) (hypot.f64 (fma.f64 -1/2 (/.f64 (pow.f64 (/.f64 a y-scale) 2) (/.f64 b x-scale)) (/.f64 b x-scale)) (hypot.f64 (/.f64 a y-scale) (/.f64 b x-scale))))) (Rewrite<= associate-/r*_binary64 (/.f64 (sqrt.f64 (*.f64 y-scale x-scale)) (*.f64 a b)))): 14 points increase in error, 11 points decrease in error

    if -4.70000000000000036e-158 < b < 3.99999999999999999e-73

    1. Initial program 63.9

      \[\frac{-\sqrt{\left(\left(2 \cdot \frac{4 \cdot \left(\left(b \cdot a\right) \cdot \left(b \cdot \left(-a\right)\right)\right)}{{\left(x-scale \cdot y-scale\right)}^{2}}\right) \cdot \left(\left(b \cdot a\right) \cdot \left(b \cdot \left(-a\right)\right)\right)\right) \cdot \left(\left(\frac{\frac{{\left(a \cdot \sin \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2} + {\left(b \cdot \cos \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2}}{x-scale}}{x-scale} + \frac{\frac{{\left(a \cdot \cos \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2} + {\left(b \cdot \sin \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2}}{y-scale}}{y-scale}\right) + \sqrt{{\left(\frac{\frac{{\left(a \cdot \sin \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2} + {\left(b \cdot \cos \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2}}{x-scale}}{x-scale} - \frac{\frac{{\left(a \cdot \cos \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2} + {\left(b \cdot \sin \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2}}{y-scale}}{y-scale}\right)}^{2} + {\left(\frac{\frac{\left(\left(2 \cdot \left({b}^{2} - {a}^{2}\right)\right) \cdot \sin \left(\frac{angle}{180} \cdot \pi\right)\right) \cdot \cos \left(\frac{angle}{180} \cdot \pi\right)}{x-scale}}{y-scale}\right)}^{2}}\right)}}{\frac{4 \cdot \left(\left(b \cdot a\right) \cdot \left(b \cdot \left(-a\right)\right)\right)}{{\left(x-scale \cdot y-scale\right)}^{2}}} \]
    2. Simplified63.9

      \[\leadsto \color{blue}{\frac{-\sqrt{\left(2 \cdot \left(\frac{4}{\frac{{\left(x-scale \cdot y-scale\right)}^{2}}{b \cdot \left(a \cdot \left(b \cdot \left(-a\right)\right)\right)}} \cdot \left(b \cdot \left(a \cdot \left(b \cdot \left(-a\right)\right)\right)\right)\right)\right) \cdot \left(\frac{{\left(a \cdot \sin \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2} + {\left(b \cdot \cos \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2}}{x-scale \cdot x-scale} + \left(\frac{{\left(a \cdot \cos \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2} + {\left(b \cdot \sin \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2}}{y-scale \cdot y-scale} + \sqrt{{\left(\frac{{\left(a \cdot \sin \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2} + {\left(b \cdot \cos \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2}}{x-scale \cdot x-scale} - \frac{{\left(a \cdot \cos \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2} + {\left(b \cdot \sin \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2}}{y-scale \cdot y-scale}\right)}^{2} + {\left(\frac{\cos \left(\frac{angle}{180} \cdot \pi\right) \cdot \left(2 \cdot \left(\left(b \cdot b - a \cdot a\right) \cdot \sin \left(\frac{angle}{180} \cdot \pi\right)\right)\right)}{x-scale \cdot y-scale}\right)}^{2}}\right)\right)}}{\frac{4}{\frac{{\left(x-scale \cdot y-scale\right)}^{2}}{b \cdot \left(a \cdot \left(b \cdot \left(-a\right)\right)\right)}}}} \]
      Proof
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a)))))) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a)))))) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 x-scale x-scale)) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 x-scale x-scale)) (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale))) 2) (pow.f64 (/.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (*.f64 (-.f64 (*.f64 b b) (*.f64 a a)) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))))) (*.f64 x-scale y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (Rewrite<= associate-*l*_binary64 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))))) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a)))))) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 x-scale x-scale)) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 x-scale x-scale)) (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale))) 2) (pow.f64 (/.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (*.f64 (-.f64 (*.f64 b b) (*.f64 a a)) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))))) (*.f64 x-scale y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (Rewrite<= associate-/l*_binary64 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a)))))) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 x-scale x-scale)) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 x-scale x-scale)) (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale))) 2) (pow.f64 (/.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (*.f64 (-.f64 (*.f64 b b) (*.f64 a a)) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))))) (*.f64 x-scale y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2)) (Rewrite<= associate-*l*_binary64 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))))) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 x-scale x-scale)) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 x-scale x-scale)) (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale))) 2) (pow.f64 (/.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (*.f64 (-.f64 (*.f64 b b) (*.f64 a a)) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))))) (*.f64 x-scale y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 1 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (Rewrite<= associate-*l*_binary64 (*.f64 (*.f64 2 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a))))) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 x-scale x-scale)) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 x-scale x-scale)) (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale))) 2) (pow.f64 (/.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (*.f64 (-.f64 (*.f64 b b) (*.f64 a a)) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))))) (*.f64 x-scale y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (+.f64 (Rewrite<= associate-/l/_binary64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale)) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 x-scale x-scale)) (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale))) 2) (pow.f64 (/.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (*.f64 (-.f64 (*.f64 b b) (*.f64 a a)) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))))) (*.f64 x-scale y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (+.f64 (Rewrite<= associate-/l/_binary64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 x-scale x-scale)) (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale))) 2) (pow.f64 (/.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (*.f64 (-.f64 (*.f64 b b) (*.f64 a a)) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))))) (*.f64 x-scale y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 1 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (Rewrite<= associate-/l/_binary64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale)) (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale))) 2) (pow.f64 (/.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (*.f64 (-.f64 (*.f64 b b) (*.f64 a a)) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))))) (*.f64 x-scale y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (Rewrite<= associate-/l/_binary64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale))) 2) (pow.f64 (/.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (*.f64 (-.f64 (*.f64 b b) (*.f64 a a)) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))))) (*.f64 x-scale y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) 2) (pow.f64 (/.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (*.f64 (-.f64 (Rewrite<= unpow2_binary64 (pow.f64 b 2)) (*.f64 a a)) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))))) (*.f64 x-scale y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) 2) (pow.f64 (/.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (*.f64 (-.f64 (pow.f64 b 2) (Rewrite<= unpow2_binary64 (pow.f64 a 2))) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))))) (*.f64 x-scale y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) 2) (pow.f64 (/.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (Rewrite<= associate-*l*_binary64 (*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))))) (*.f64 x-scale y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) 2) (pow.f64 (/.f64 (Rewrite<= *-commutative_binary64 (*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))))) (*.f64 x-scale y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) 2) (pow.f64 (Rewrite=> associate-/r*_binary64 (/.f64 (/.f64 (*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) x-scale) y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (Rewrite<= associate-+l+_binary64 (+.f64 (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) 2) (pow.f64 (/.f64 (/.f64 (*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) x-scale) y-scale) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (+.f64 (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) 2) (pow.f64 (/.f64 (/.f64 (*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) x-scale) y-scale) 2))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (Rewrite<= associate-*l*_binary64 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a))))))): 1 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (+.f64 (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) 2) (pow.f64 (/.f64 (/.f64 (*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) x-scale) y-scale) 2))))))) (Rewrite<= associate-/l*_binary64 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2)))): 0 points increase in error, 1 points decrease in error
    3. Taylor expanded in angle around 0 64.0

      \[\leadsto \color{blue}{0.25 \cdot \frac{\sqrt{8 \cdot \frac{\left(\frac{{b}^{2}}{{x-scale}^{2}} + \left(\frac{{a}^{2}}{{y-scale}^{2}} + \sqrt{{\left(\frac{{b}^{2}}{{x-scale}^{2}} - \frac{{a}^{2}}{{y-scale}^{2}}\right)}^{2}}\right)\right) \cdot \left({\left({b}^{2}\right)}^{2} \cdot {\left({a}^{2}\right)}^{2}\right)}{{x-scale}^{2} \cdot {y-scale}^{2}}} \cdot \left({x-scale}^{2} \cdot {y-scale}^{2}\right)}{{b}^{2} \cdot {a}^{2}}} \]
    4. Simplified64.0

      \[\leadsto \color{blue}{0.25 \cdot \left(\frac{\sqrt{8 \cdot \frac{\left(\frac{b \cdot b}{x-scale \cdot x-scale} + \frac{a \cdot a}{y-scale \cdot y-scale}\right) + \sqrt{{\left(\frac{b \cdot b}{x-scale \cdot x-scale} - \frac{a \cdot a}{y-scale \cdot y-scale}\right)}^{2}}}{\frac{\left(x-scale \cdot x-scale\right) \cdot \left(y-scale \cdot y-scale\right)}{{\left(b \cdot b\right)}^{2} \cdot {\left(a \cdot a\right)}^{2}}}}}{b \cdot b} \cdot \frac{\left(x-scale \cdot x-scale\right) \cdot \left(y-scale \cdot y-scale\right)}{a \cdot a}\right)} \]
      Proof
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (+.f64 (+.f64 (/.f64 (*.f64 b b) (*.f64 x-scale x-scale)) (/.f64 (*.f64 a a) (*.f64 y-scale y-scale))) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (*.f64 b b) (*.f64 x-scale x-scale)) (/.f64 (*.f64 a a) (*.f64 y-scale y-scale))) 2))) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 (pow.f64 (*.f64 b b) 2) (pow.f64 (*.f64 a a) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (+.f64 (+.f64 (/.f64 (Rewrite<= unpow2_binary64 (pow.f64 b 2)) (*.f64 x-scale x-scale)) (/.f64 (*.f64 a a) (*.f64 y-scale y-scale))) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (*.f64 b b) (*.f64 x-scale x-scale)) (/.f64 (*.f64 a a) (*.f64 y-scale y-scale))) 2))) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 (pow.f64 (*.f64 b b) 2) (pow.f64 (*.f64 a a) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (+.f64 (+.f64 (/.f64 (pow.f64 b 2) (Rewrite<= unpow2_binary64 (pow.f64 x-scale 2))) (/.f64 (*.f64 a a) (*.f64 y-scale y-scale))) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (*.f64 b b) (*.f64 x-scale x-scale)) (/.f64 (*.f64 a a) (*.f64 y-scale y-scale))) 2))) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 (pow.f64 (*.f64 b b) 2) (pow.f64 (*.f64 a a) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (+.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (Rewrite<= unpow2_binary64 (pow.f64 a 2)) (*.f64 y-scale y-scale))) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (*.f64 b b) (*.f64 x-scale x-scale)) (/.f64 (*.f64 a a) (*.f64 y-scale y-scale))) 2))) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 (pow.f64 (*.f64 b b) 2) (pow.f64 (*.f64 a a) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (+.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (Rewrite<= unpow2_binary64 (pow.f64 y-scale 2)))) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (*.f64 b b) (*.f64 x-scale x-scale)) (/.f64 (*.f64 a a) (*.f64 y-scale y-scale))) 2))) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 (pow.f64 (*.f64 b b) 2) (pow.f64 (*.f64 a a) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (+.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (Rewrite<= unpow2_binary64 (pow.f64 b 2)) (*.f64 x-scale x-scale)) (/.f64 (*.f64 a a) (*.f64 y-scale y-scale))) 2))) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 (pow.f64 (*.f64 b b) 2) (pow.f64 (*.f64 a a) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (+.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (Rewrite<= unpow2_binary64 (pow.f64 x-scale 2))) (/.f64 (*.f64 a a) (*.f64 y-scale y-scale))) 2))) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 (pow.f64 (*.f64 b b) 2) (pow.f64 (*.f64 a a) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (+.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (Rewrite<= unpow2_binary64 (pow.f64 a 2)) (*.f64 y-scale y-scale))) 2))) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 (pow.f64 (*.f64 b b) 2) (pow.f64 (*.f64 a a) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (+.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (Rewrite<= unpow2_binary64 (pow.f64 y-scale 2)))) 2))) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 (pow.f64 (*.f64 b b) 2) (pow.f64 (*.f64 a a) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (Rewrite<= associate-+r+_binary64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (+.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) 2))))) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 (pow.f64 (*.f64 b b) 2) (pow.f64 (*.f64 a a) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (+.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) 2)))) (/.f64 (*.f64 (Rewrite<= unpow2_binary64 (pow.f64 x-scale 2)) (*.f64 y-scale y-scale)) (*.f64 (pow.f64 (*.f64 b b) 2) (pow.f64 (*.f64 a a) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (+.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) 2)))) (/.f64 (*.f64 (pow.f64 x-scale 2) (Rewrite<= unpow2_binary64 (pow.f64 y-scale 2))) (*.f64 (pow.f64 (*.f64 b b) 2) (pow.f64 (*.f64 a a) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (+.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) 2)))) (/.f64 (*.f64 (pow.f64 x-scale 2) (pow.f64 y-scale 2)) (*.f64 (pow.f64 (Rewrite<= unpow2_binary64 (pow.f64 b 2)) 2) (pow.f64 (*.f64 a a) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (+.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) 2)))) (/.f64 (*.f64 (pow.f64 x-scale 2) (pow.f64 y-scale 2)) (*.f64 (pow.f64 (pow.f64 b 2) 2) (pow.f64 (Rewrite<= unpow2_binary64 (pow.f64 a 2)) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (Rewrite<= associate-/l*_binary64 (/.f64 (*.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (+.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) 2)))) (*.f64 (pow.f64 (pow.f64 b 2) 2) (pow.f64 (pow.f64 a 2) 2))) (*.f64 (pow.f64 x-scale 2) (pow.f64 y-scale 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (*.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (+.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) 2)))) (*.f64 (pow.f64 (pow.f64 b 2) 2) (pow.f64 (pow.f64 a 2) 2))) (*.f64 (pow.f64 x-scale 2) (pow.f64 y-scale 2))))) (Rewrite<= unpow2_binary64 (pow.f64 b 2))) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (*.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (+.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) 2)))) (*.f64 (pow.f64 (pow.f64 b 2) 2) (pow.f64 (pow.f64 a 2) 2))) (*.f64 (pow.f64 x-scale 2) (pow.f64 y-scale 2))))) (pow.f64 b 2)) (/.f64 (*.f64 (Rewrite<= unpow2_binary64 (pow.f64 x-scale 2)) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (*.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (+.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) 2)))) (*.f64 (pow.f64 (pow.f64 b 2) 2) (pow.f64 (pow.f64 a 2) 2))) (*.f64 (pow.f64 x-scale 2) (pow.f64 y-scale 2))))) (pow.f64 b 2)) (/.f64 (*.f64 (pow.f64 x-scale 2) (Rewrite<= unpow2_binary64 (pow.f64 y-scale 2))) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (*.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (+.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) 2)))) (*.f64 (pow.f64 (pow.f64 b 2) 2) (pow.f64 (pow.f64 a 2) 2))) (*.f64 (pow.f64 x-scale 2) (pow.f64 y-scale 2))))) (pow.f64 b 2)) (/.f64 (*.f64 (pow.f64 x-scale 2) (pow.f64 y-scale 2)) (Rewrite<= unpow2_binary64 (pow.f64 a 2))))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (Rewrite<= times-frac_binary64 (/.f64 (*.f64 (sqrt.f64 (*.f64 8 (/.f64 (*.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (+.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) 2)))) (*.f64 (pow.f64 (pow.f64 b 2) 2) (pow.f64 (pow.f64 a 2) 2))) (*.f64 (pow.f64 x-scale 2) (pow.f64 y-scale 2))))) (*.f64 (pow.f64 x-scale 2) (pow.f64 y-scale 2))) (*.f64 (pow.f64 b 2) (pow.f64 a 2))))): 3 points increase in error, 1 points decrease in error
    5. Applied egg-rr64.0

      \[\leadsto 0.25 \cdot \left(\frac{\sqrt{8 \cdot \frac{\left(\frac{b \cdot b}{x-scale \cdot x-scale} + \frac{a \cdot a}{y-scale \cdot y-scale}\right) + \color{blue}{\frac{\frac{b \cdot b}{x-scale} \cdot y-scale - x-scale \cdot \frac{a \cdot a}{y-scale}}{x-scale \cdot y-scale}}}{\frac{\left(x-scale \cdot x-scale\right) \cdot \left(y-scale \cdot y-scale\right)}{{\left(b \cdot b\right)}^{2} \cdot {\left(a \cdot a\right)}^{2}}}}}{b \cdot b} \cdot \frac{\left(x-scale \cdot x-scale\right) \cdot \left(y-scale \cdot y-scale\right)}{a \cdot a}\right) \]
    6. Taylor expanded in x-scale around inf 64.0

      \[\leadsto 0.25 \cdot \color{blue}{\frac{x-scale \cdot \left({y-scale}^{2} \cdot \sqrt{8 \cdot \frac{{\left({b}^{2}\right)}^{2} \cdot \left({\left({a}^{2}\right)}^{2} \cdot \left(\frac{{a}^{2}}{{y-scale}^{2}} + -1 \cdot \frac{{a}^{2}}{{y-scale}^{2}}\right)\right)}{{y-scale}^{2}}}\right)}{{b}^{2} \cdot {a}^{2}}} \]
    7. Simplified63.4

      \[\leadsto 0.25 \cdot \color{blue}{\left(\frac{x-scale \cdot \left(y-scale \cdot y-scale\right)}{b \cdot b} \cdot 0\right)} \]
      Proof
      (*.f64 (/.f64 (*.f64 x-scale (*.f64 y-scale y-scale)) (*.f64 b b)) 0): 0 points increase in error, 0 points decrease in error
      (*.f64 (/.f64 (*.f64 x-scale (Rewrite<= unpow2_binary64 (pow.f64 y-scale 2))) (*.f64 b b)) 0): 0 points increase in error, 0 points decrease in error
      (*.f64 (/.f64 (*.f64 x-scale (pow.f64 y-scale 2)) (Rewrite<= unpow2_binary64 (pow.f64 b 2))) 0): 0 points increase in error, 0 points decrease in error
      (*.f64 (/.f64 (*.f64 x-scale (pow.f64 y-scale 2)) (pow.f64 b 2)) (Rewrite<= div0_binary64 (/.f64 0 (pow.f64 a 2)))): 36 points increase in error, 0 points decrease in error
      (*.f64 (/.f64 (*.f64 x-scale (pow.f64 y-scale 2)) (pow.f64 b 2)) (/.f64 (Rewrite<= metadata-eval (pow.f64 0 1/2)) (pow.f64 a 2))): 0 points increase in error, 0 points decrease in error
      (*.f64 (/.f64 (*.f64 x-scale (pow.f64 y-scale 2)) (pow.f64 b 2)) (/.f64 (pow.f64 (Rewrite<= metadata-eval (*.f64 4 0)) 1/2) (pow.f64 a 2))): 0 points increase in error, 0 points decrease in error
      (*.f64 (/.f64 (*.f64 x-scale (pow.f64 y-scale 2)) (pow.f64 b 2)) (/.f64 (pow.f64 (*.f64 4 (Rewrite<= mul0-rgt_binary64 (*.f64 (/.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 x-scale 2) (sqrt.f64 (*.f64 16 (/.f64 (*.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 (pow.f64 a 2) 2) (pow.f64 b 2))) (pow.f64 (pow.f64 x-scale 2) 2)))))) 0))) 1/2) (pow.f64 a 2))): 98 points increase in error, 0 points decrease in error
      (*.f64 (/.f64 (*.f64 x-scale (pow.f64 y-scale 2)) (pow.f64 b 2)) (/.f64 (pow.f64 (*.f64 4 (*.f64 (/.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 x-scale 2) (sqrt.f64 (*.f64 16 (/.f64 (*.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 (pow.f64 a 2) 2) (pow.f64 b 2))) (pow.f64 (pow.f64 x-scale 2) 2)))))) (Rewrite<= mul0-rgt_binary64 (*.f64 (*.f64 (pow.f64 (pow.f64 a 2) 2) (pow.f64 (/.f64 -1 y-scale) 3)) 0)))) 1/2) (pow.f64 a 2))): 8 points increase in error, 0 points decrease in error
      (*.f64 (/.f64 (*.f64 x-scale (pow.f64 y-scale 2)) (pow.f64 b 2)) (/.f64 (pow.f64 (*.f64 4 (*.f64 (/.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 x-scale 2) (sqrt.f64 (*.f64 16 (/.f64 (*.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 (pow.f64 a 2) 2) (pow.f64 b 2))) (pow.f64 (pow.f64 x-scale 2) 2)))))) (Rewrite=> associate-*l*_binary64 (*.f64 (pow.f64 (pow.f64 a 2) 2) (*.f64 (pow.f64 (/.f64 -1 y-scale) 3) 0))))) 1/2) (pow.f64 a 2))): 0 points increase in error, 0 points decrease in error
      (*.f64 (/.f64 (*.f64 x-scale (pow.f64 y-scale 2)) (pow.f64 b 2)) (/.f64 (pow.f64 (*.f64 4 (*.f64 (/.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 x-scale 2) (sqrt.f64 (*.f64 16 (/.f64 (*.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 (pow.f64 a 2) 2) (pow.f64 b 2))) (pow.f64 (pow.f64 x-scale 2) 2)))))) (*.f64 (pow.f64 (pow.f64 a 2) 2) (Rewrite=> mul0-rgt_binary64 0)))) 1/2) (pow.f64 a 2))): 0 points increase in error, 2 points decrease in error
      (*.f64 (/.f64 (*.f64 x-scale (pow.f64 y-scale 2)) (pow.f64 b 2)) (/.f64 (pow.f64 (*.f64 4 (*.f64 (/.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 x-scale 2) (sqrt.f64 (*.f64 16 (/.f64 (*.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 (pow.f64 a 2) 2) (pow.f64 b 2))) (pow.f64 (pow.f64 x-scale 2) 2)))))) (*.f64 (pow.f64 (pow.f64 a 2) 2) (Rewrite<= mul0-lft_binary64 (*.f64 0 (pow.f64 a 2)))))) 1/2) (pow.f64 a 2))): 0 points increase in error, 0 points decrease in error
      (*.f64 (/.f64 (*.f64 x-scale (pow.f64 y-scale 2)) (pow.f64 b 2)) (/.f64 (pow.f64 (*.f64 4 (*.f64 (/.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 x-scale 2) (sqrt.f64 (*.f64 16 (/.f64 (*.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 (pow.f64 a 2) 2) (pow.f64 b 2))) (pow.f64 (pow.f64 x-scale 2) 2)))))) (*.f64 (pow.f64 (pow.f64 a 2) 2) (*.f64 (Rewrite<= metadata-eval (+.f64 -1 1)) (pow.f64 a 2))))) 1/2) (pow.f64 a 2))): 0 points increase in error, 0 points decrease in error
      (*.f64 (/.f64 (*.f64 x-scale (pow.f64 y-scale 2)) (pow.f64 b 2)) (/.f64 (pow.f64 (*.f64 4 (*.f64 (/.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 x-scale 2) (sqrt.f64 (*.f64 16 (/.f64 (*.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 (pow.f64 a 2) 2) (pow.f64 b 2))) (pow.f64 (pow.f64 x-scale 2) 2)))))) (*.f64 (pow.f64 (pow.f64 a 2) 2) (Rewrite<= distribute-lft1-in_binary64 (+.f64 (*.f64 -1 (pow.f64 a 2)) (pow.f64 a 2)))))) 1/2) (pow.f64 a 2))): 0 points increase in error, 0 points decrease in error
      (*.f64 (/.f64 (*.f64 x-scale (pow.f64 y-scale 2)) (pow.f64 b 2)) (/.f64 (pow.f64 (*.f64 4 (Rewrite<= associate-/r/_binary64 (/.f64 (pow.f64 (pow.f64 b 2) 2) (/.f64 (*.f64 (pow.f64 x-scale 2) (sqrt.f64 (*.f64 16 (/.f64 (*.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 (pow.f64 a 2) 2) (pow.f64 b 2))) (pow.f64 (pow.f64 x-scale 2) 2))))) (*.f64 (pow.f64 (pow.f64 a 2) 2) (+.f64 (*.f64 -1 (pow.f64 a 2)) (pow.f64 a 2))))))) 1/2) (pow.f64 a 2))): 0 points increase in error, 0 points decrease in error
      (*.f64 (/.f64 (*.f64 x-scale (pow.f64 y-scale 2)) (pow.f64 b 2)) (/.f64 (pow.f64 (*.f64 4 (Rewrite<= associate-/l*_binary64 (/.f64 (*.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 (pow.f64 a 2) 2) (+.f64 (*.f64 -1 (pow.f64 a 2)) (pow.f64 a 2)))) (*.f64 (pow.f64 x-scale 2) (sqrt.f64 (*.f64 16 (/.f64 (*.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 (pow.f64 a 2) 2) (pow.f64 b 2))) (pow.f64 (pow.f64 x-scale 2) 2)))))))) 1/2) (pow.f64 a 2))): 0 points increase in error, 0 points decrease in error
      (*.f64 (/.f64 (*.f64 x-scale (pow.f64 y-scale 2)) (pow.f64 b 2)) (/.f64 (Rewrite=> unpow1/2_binary64 (sqrt.f64 (*.f64 4 (/.f64 (*.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 (pow.f64 a 2) 2) (+.f64 (*.f64 -1 (pow.f64 a 2)) (pow.f64 a 2)))) (*.f64 (pow.f64 x-scale 2) (sqrt.f64 (*.f64 16 (/.f64 (*.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 (pow.f64 a 2) 2) (pow.f64 b 2))) (pow.f64 (pow.f64 x-scale 2) 2))))))))) (pow.f64 a 2))): 0 points increase in error, 0 points decrease in error
      (*.f64 (/.f64 (*.f64 x-scale (pow.f64 y-scale 2)) (pow.f64 b 2)) (/.f64 (sqrt.f64 (*.f64 4 (Rewrite=> associate-/l*_binary64 (/.f64 (pow.f64 (pow.f64 b 2) 2) (/.f64 (*.f64 (pow.f64 x-scale 2) (sqrt.f64 (*.f64 16 (/.f64 (*.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 (pow.f64 a 2) 2) (pow.f64 b 2))) (pow.f64 (pow.f64 x-scale 2) 2))))) (*.f64 (pow.f64 (pow.f64 a 2) 2) (+.f64 (*.f64 -1 (pow.f64 a 2)) (pow.f64 a 2)))))))) (pow.f64 a 2))): 0 points increase in error, 0 points decrease in error
      (*.f64 (/.f64 (*.f64 x-scale (pow.f64 y-scale 2)) (pow.f64 b 2)) (/.f64 (sqrt.f64 (*.f64 4 (Rewrite=> associate-/r/_binary64 (*.f64 (/.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 x-scale 2) (sqrt.f64 (*.f64 16 (/.f64 (*.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 (pow.f64 a 2) 2) (pow.f64 b 2))) (pow.f64 (pow.f64 x-scale 2) 2)))))) (*.f64 (pow.f64 (pow.f64 a 2) 2) (+.f64 (*.f64 -1 (pow.f64 a 2)) (pow.f64 a 2))))))) (pow.f64 a 2))): 0 points increase in error, 0 points decrease in error
      (*.f64 (/.f64 (*.f64 x-scale (pow.f64 y-scale 2)) (pow.f64 b 2)) (/.f64 (sqrt.f64 (*.f64 4 (*.f64 (/.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 x-scale 2) (sqrt.f64 (*.f64 16 (/.f64 (*.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 (pow.f64 a 2) 2) (pow.f64 b 2))) (pow.f64 (pow.f64 x-scale 2) 2)))))) (*.f64 (pow.f64 (pow.f64 a 2) 2) (Rewrite=> distribute-lft1-in_binary64 (*.f64 (+.f64 -1 1) (pow.f64 a 2))))))) (pow.f64 a 2))): 0 points increase in error, 0 points decrease in error
      (*.f64 (/.f64 (*.f64 x-scale (pow.f64 y-scale 2)) (pow.f64 b 2)) (/.f64 (sqrt.f64 (*.f64 4 (*.f64 (/.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 x-scale 2) (sqrt.f64 (*.f64 16 (/.f64 (*.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 (pow.f64 a 2) 2) (pow.f64 b 2))) (pow.f64 (pow.f64 x-scale 2) 2)))))) (*.f64 (pow.f64 (pow.f64 a 2) 2) (*.f64 (Rewrite=> metadata-eval 0) (pow.f64 a 2)))))) (pow.f64 a 2))): 0 points increase in error, 0 points decrease in error
      (*.f64 (/.f64 (*.f64 x-scale (pow.f64 y-scale 2)) (pow.f64 b 2)) (/.f64 (sqrt.f64 (*.f64 4 (*.f64 (/.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 x-scale 2) (sqrt.f64 (*.f64 16 (/.f64 (*.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 (pow.f64 a 2) 2) (pow.f64 b 2))) (pow.f64 (pow.f64 x-scale 2) 2)))))) (*.f64 (pow.f64 (pow.f64 a 2) 2) (Rewrite=> mul0-lft_binary64 0))))) (pow.f64 a 2))): 0 points increase in error, 0 points decrease in error
      (*.f64 (/.f64 (*.f64 x-scale (pow.f64 y-scale 2)) (pow.f64 b 2)) (/.f64 (sqrt.f64 (*.f64 4 (*.f64 (/.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 x-scale 2) (sqrt.f64 (*.f64 16 (/.f64 (*.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 (pow.f64 a 2) 2) (pow.f64 b 2))) (pow.f64 (pow.f64 x-scale 2) 2)))))) (*.f64 (pow.f64 (pow.f64 a 2) 2) (Rewrite<= mul0-rgt_binary64 (*.f64 (pow.f64 (*.f64 4 (/.f64 (*.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 (pow.f64 a 2) 2) (+.f64 (*.f64 -1 (pow.f64 a 2)) (pow.f64 a 2)))) (*.f64 (pow.f64 x-scale 2) (sqrt.f64 (*.f64 16 (/.f64 (*.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 (pow.f64 a 2) 2) (pow.f64 b 2))) (pow.f64 (pow.f64 x-scale 2) 2))))))) 2) 0)))))) (pow.f64 a 2))): 0 points increase in error, 0 points decrease in error
      (*.f64 (/.f64 (*.f64 x-scale (pow.f64 y-scale 2)) (pow.f64 b 2)) (/.f64 (sqrt.f64 (*.f64 4 (*.f64 (/.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 x-scale 2) (sqrt.f64 (*.f64 16 (/.f64 (*.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 (pow.f64 a 2) 2) (pow.f64 b 2))) (pow.f64 (pow.f64 x-scale 2) 2)))))) (Rewrite<= associate-*l*_binary64 (*.f64 (*.f64 (pow.f64 (pow.f64 a 2) 2) (pow.f64 (*.f64 4 (/.f64 (*.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 (pow.f64 a 2) 2) (+.f64 (*.f64 -1 (pow.f64 a 2)) (pow.f64 a 2)))) (*.f64 (pow.f64 x-scale 2) (sqrt.f64 (*.f64 16 (/.f64 (*.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 (pow.f64 a 2) 2) (pow.f64 b 2))) (pow.f64 (pow.f64 x-scale 2) 2))))))) 2)) 0))))) (pow.f64 a 2))): 0 points increase in error, 0 points decrease in error
      (*.f64 (/.f64 (*.f64 x-scale (pow.f64 y-scale 2)) (pow.f64 b 2)) (/.f64 (sqrt.f64 (*.f64 4 (*.f64 (/.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 x-scale 2) (sqrt.f64 (*.f64 16 (/.f64 (*.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 (pow.f64 a 2) 2) (pow.f64 b 2))) (pow.f64 (pow.f64 x-scale 2) 2)))))) (Rewrite=> mul0-rgt_binary64 0)))) (pow.f64 a 2))): 0 points increase in error, 6 points decrease in error
      (*.f64 (/.f64 (*.f64 x-scale (pow.f64 y-scale 2)) (pow.f64 b 2)) (/.f64 (sqrt.f64 (*.f64 4 (Rewrite=> mul0-rgt_binary64 0))) (pow.f64 a 2))): 0 points increase in error, 98 points decrease in error
      (*.f64 (/.f64 (*.f64 x-scale (pow.f64 y-scale 2)) (pow.f64 b 2)) (/.f64 (sqrt.f64 (Rewrite=> metadata-eval 0)) (pow.f64 a 2))): 0 points increase in error, 0 points decrease in error
      (*.f64 (/.f64 (*.f64 x-scale (pow.f64 y-scale 2)) (pow.f64 b 2)) (/.f64 (sqrt.f64 (Rewrite<= metadata-eval (*.f64 8 0))) (pow.f64 a 2))): 0 points increase in error, 0 points decrease in error
      (*.f64 (/.f64 (*.f64 x-scale (pow.f64 y-scale 2)) (pow.f64 b 2)) (/.f64 (sqrt.f64 (*.f64 8 (Rewrite<= mul0-rgt_binary64 (*.f64 (/.f64 (pow.f64 (pow.f64 b 2) 2) (pow.f64 y-scale 2)) 0)))) (pow.f64 a 2))): 68 points increase in error, 0 points decrease in error
      (*.f64 (/.f64 (*.f64 x-scale (pow.f64 y-scale 2)) (pow.f64 b 2)) (/.f64 (sqrt.f64 (*.f64 8 (*.f64 (/.f64 (pow.f64 (pow.f64 b 2) 2) (pow.f64 y-scale 2)) (Rewrite<= mul0-rgt_binary64 (*.f64 (*.f64 (pow.f64 (pow.f64 a 2) 2) (pow.f64 (/.f64 -1 y-scale) 3)) 0))))) (pow.f64 a 2))): 23 points increase in error, 0 points decrease in error
      (*.f64 (/.f64 (*.f64 x-scale (pow.f64 y-scale 2)) (pow.f64 b 2)) (/.f64 (sqrt.f64 (*.f64 8 (*.f64 (/.f64 (pow.f64 (pow.f64 b 2) 2) (pow.f64 y-scale 2)) (Rewrite=> associate-*l*_binary64 (*.f64 (pow.f64 (pow.f64 a 2) 2) (*.f64 (pow.f64 (/.f64 -1 y-scale) 3) 0)))))) (pow.f64 a 2))): 0 points increase in error, 1 points decrease in error
      (*.f64 (/.f64 (*.f64 x-scale (pow.f64 y-scale 2)) (pow.f64 b 2)) (/.f64 (sqrt.f64 (*.f64 8 (*.f64 (/.f64 (pow.f64 (pow.f64 b 2) 2) (pow.f64 y-scale 2)) (*.f64 (pow.f64 (pow.f64 a 2) 2) (Rewrite=> mul0-rgt_binary64 0))))) (pow.f64 a 2))): 0 points increase in error, 5 points decrease in error
      (*.f64 (/.f64 (*.f64 x-scale (pow.f64 y-scale 2)) (pow.f64 b 2)) (/.f64 (sqrt.f64 (*.f64 8 (*.f64 (/.f64 (pow.f64 (pow.f64 b 2) 2) (pow.f64 y-scale 2)) (*.f64 (pow.f64 (pow.f64 a 2) 2) (Rewrite<= mul0-lft_binary64 (*.f64 0 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)))))))) (pow.f64 a 2))): 2 points increase in error, 0 points decrease in error
      (*.f64 (/.f64 (*.f64 x-scale (pow.f64 y-scale 2)) (pow.f64 b 2)) (/.f64 (sqrt.f64 (*.f64 8 (*.f64 (/.f64 (pow.f64 (pow.f64 b 2) 2) (pow.f64 y-scale 2)) (*.f64 (pow.f64 (pow.f64 a 2) 2) (*.f64 (Rewrite<= metadata-eval (+.f64 -1 1)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))))))) (pow.f64 a 2))): 0 points increase in error, 0 points decrease in error
      (*.f64 (/.f64 (*.f64 x-scale (pow.f64 y-scale 2)) (pow.f64 b 2)) (/.f64 (sqrt.f64 (*.f64 8 (*.f64 (/.f64 (pow.f64 (pow.f64 b 2) 2) (pow.f64 y-scale 2)) (*.f64 (pow.f64 (pow.f64 a 2) 2) (Rewrite<= distribute-rgt1-in_binary64 (+.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)) (*.f64 -1 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))))))))) (pow.f64 a 2))): 0 points increase in error, 0 points decrease in error
      (*.f64 (/.f64 (*.f64 x-scale (pow.f64 y-scale 2)) (pow.f64 b 2)) (/.f64 (sqrt.f64 (*.f64 8 (Rewrite<= associate-/r/_binary64 (/.f64 (pow.f64 (pow.f64 b 2) 2) (/.f64 (pow.f64 y-scale 2) (*.f64 (pow.f64 (pow.f64 a 2) 2) (+.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)) (*.f64 -1 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)))))))))) (pow.f64 a 2))): 0 points increase in error, 2 points decrease in error
      (*.f64 (/.f64 (*.f64 x-scale (pow.f64 y-scale 2)) (pow.f64 b 2)) (/.f64 (sqrt.f64 (*.f64 8 (Rewrite<= associate-/l*_binary64 (/.f64 (*.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 (pow.f64 a 2) 2) (+.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)) (*.f64 -1 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)))))) (pow.f64 y-scale 2))))) (pow.f64 a 2))): 0 points increase in error, 0 points decrease in error
      (Rewrite<= times-frac_binary64 (/.f64 (*.f64 (*.f64 x-scale (pow.f64 y-scale 2)) (sqrt.f64 (*.f64 8 (/.f64 (*.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 (pow.f64 a 2) 2) (+.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)) (*.f64 -1 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)))))) (pow.f64 y-scale 2))))) (*.f64 (pow.f64 b 2) (pow.f64 a 2)))): 6 points increase in error, 5 points decrease in error
      (/.f64 (Rewrite<= associate-*r*_binary64 (*.f64 x-scale (*.f64 (pow.f64 y-scale 2) (sqrt.f64 (*.f64 8 (/.f64 (*.f64 (pow.f64 (pow.f64 b 2) 2) (*.f64 (pow.f64 (pow.f64 a 2) 2) (+.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)) (*.f64 -1 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)))))) (pow.f64 y-scale 2))))))) (*.f64 (pow.f64 b 2) (pow.f64 a 2))): 0 points increase in error, 1 points decrease in error
    8. Taylor expanded in x-scale around 0 59.2

      \[\leadsto 0.25 \cdot \color{blue}{0} \]

    if 3.99999999999999999e-73 < b

    1. Initial program 62.9

      \[\frac{-\sqrt{\left(\left(2 \cdot \frac{4 \cdot \left(\left(b \cdot a\right) \cdot \left(b \cdot \left(-a\right)\right)\right)}{{\left(x-scale \cdot y-scale\right)}^{2}}\right) \cdot \left(\left(b \cdot a\right) \cdot \left(b \cdot \left(-a\right)\right)\right)\right) \cdot \left(\left(\frac{\frac{{\left(a \cdot \sin \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2} + {\left(b \cdot \cos \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2}}{x-scale}}{x-scale} + \frac{\frac{{\left(a \cdot \cos \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2} + {\left(b \cdot \sin \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2}}{y-scale}}{y-scale}\right) + \sqrt{{\left(\frac{\frac{{\left(a \cdot \sin \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2} + {\left(b \cdot \cos \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2}}{x-scale}}{x-scale} - \frac{\frac{{\left(a \cdot \cos \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2} + {\left(b \cdot \sin \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2}}{y-scale}}{y-scale}\right)}^{2} + {\left(\frac{\frac{\left(\left(2 \cdot \left({b}^{2} - {a}^{2}\right)\right) \cdot \sin \left(\frac{angle}{180} \cdot \pi\right)\right) \cdot \cos \left(\frac{angle}{180} \cdot \pi\right)}{x-scale}}{y-scale}\right)}^{2}}\right)}}{\frac{4 \cdot \left(\left(b \cdot a\right) \cdot \left(b \cdot \left(-a\right)\right)\right)}{{\left(x-scale \cdot y-scale\right)}^{2}}} \]
    2. Simplified62.9

      \[\leadsto \color{blue}{\frac{-\sqrt{\left(2 \cdot \left(\frac{4}{\frac{{\left(x-scale \cdot y-scale\right)}^{2}}{b \cdot \left(a \cdot \left(b \cdot \left(-a\right)\right)\right)}} \cdot \left(b \cdot \left(a \cdot \left(b \cdot \left(-a\right)\right)\right)\right)\right)\right) \cdot \left(\frac{{\left(a \cdot \sin \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2} + {\left(b \cdot \cos \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2}}{x-scale \cdot x-scale} + \left(\frac{{\left(a \cdot \cos \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2} + {\left(b \cdot \sin \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2}}{y-scale \cdot y-scale} + \sqrt{{\left(\frac{{\left(a \cdot \sin \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2} + {\left(b \cdot \cos \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2}}{x-scale \cdot x-scale} - \frac{{\left(a \cdot \cos \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2} + {\left(b \cdot \sin \left(\frac{angle}{180} \cdot \pi\right)\right)}^{2}}{y-scale \cdot y-scale}\right)}^{2} + {\left(\frac{\cos \left(\frac{angle}{180} \cdot \pi\right) \cdot \left(2 \cdot \left(\left(b \cdot b - a \cdot a\right) \cdot \sin \left(\frac{angle}{180} \cdot \pi\right)\right)\right)}{x-scale \cdot y-scale}\right)}^{2}}\right)\right)}}{\frac{4}{\frac{{\left(x-scale \cdot y-scale\right)}^{2}}{b \cdot \left(a \cdot \left(b \cdot \left(-a\right)\right)\right)}}}} \]
      Proof
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a)))))) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a)))))) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 x-scale x-scale)) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 x-scale x-scale)) (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale))) 2) (pow.f64 (/.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (*.f64 (-.f64 (*.f64 b b) (*.f64 a a)) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))))) (*.f64 x-scale y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (Rewrite<= associate-*l*_binary64 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))))) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a)))))) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 x-scale x-scale)) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 x-scale x-scale)) (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale))) 2) (pow.f64 (/.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (*.f64 (-.f64 (*.f64 b b) (*.f64 a a)) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))))) (*.f64 x-scale y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (Rewrite<= associate-/l*_binary64 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a)))))) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 x-scale x-scale)) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 x-scale x-scale)) (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale))) 2) (pow.f64 (/.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (*.f64 (-.f64 (*.f64 b b) (*.f64 a a)) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))))) (*.f64 x-scale y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2)) (Rewrite<= associate-*l*_binary64 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))))) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 x-scale x-scale)) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 x-scale x-scale)) (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale))) 2) (pow.f64 (/.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (*.f64 (-.f64 (*.f64 b b) (*.f64 a a)) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))))) (*.f64 x-scale y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 1 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (Rewrite<= associate-*l*_binary64 (*.f64 (*.f64 2 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a))))) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 x-scale x-scale)) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 x-scale x-scale)) (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale))) 2) (pow.f64 (/.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (*.f64 (-.f64 (*.f64 b b) (*.f64 a a)) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))))) (*.f64 x-scale y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (+.f64 (Rewrite<= associate-/l/_binary64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale)) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 x-scale x-scale)) (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale))) 2) (pow.f64 (/.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (*.f64 (-.f64 (*.f64 b b) (*.f64 a a)) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))))) (*.f64 x-scale y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (+.f64 (Rewrite<= associate-/l/_binary64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 x-scale x-scale)) (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale))) 2) (pow.f64 (/.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (*.f64 (-.f64 (*.f64 b b) (*.f64 a a)) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))))) (*.f64 x-scale y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 1 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (Rewrite<= associate-/l/_binary64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale)) (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale))) 2) (pow.f64 (/.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (*.f64 (-.f64 (*.f64 b b) (*.f64 a a)) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))))) (*.f64 x-scale y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (Rewrite<= associate-/l/_binary64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale))) 2) (pow.f64 (/.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (*.f64 (-.f64 (*.f64 b b) (*.f64 a a)) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))))) (*.f64 x-scale y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) 2) (pow.f64 (/.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (*.f64 (-.f64 (Rewrite<= unpow2_binary64 (pow.f64 b 2)) (*.f64 a a)) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))))) (*.f64 x-scale y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) 2) (pow.f64 (/.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (*.f64 (-.f64 (pow.f64 b 2) (Rewrite<= unpow2_binary64 (pow.f64 a 2))) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))))) (*.f64 x-scale y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) 2) (pow.f64 (/.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (Rewrite<= associate-*l*_binary64 (*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))))) (*.f64 x-scale y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) 2) (pow.f64 (/.f64 (Rewrite<= *-commutative_binary64 (*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))))) (*.f64 x-scale y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) 2) (pow.f64 (Rewrite=> associate-/r*_binary64 (/.f64 (/.f64 (*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) x-scale) y-scale)) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (Rewrite<= associate-+l+_binary64 (+.f64 (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) 2) (pow.f64 (/.f64 (/.f64 (*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) x-scale) y-scale) 2)))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (*.f64 a (*.f64 b (neg.f64 a))))))): 0 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (+.f64 (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) 2) (pow.f64 (/.f64 (/.f64 (*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) x-scale) y-scale) 2))))))) (/.f64 4 (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (Rewrite<= associate-*l*_binary64 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a))))))): 1 points increase in error, 0 points decrease in error
      (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (+.f64 (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) 2) (pow.f64 (/.f64 (/.f64 (*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) x-scale) y-scale) 2))))))) (Rewrite<= associate-/l*_binary64 (/.f64 (*.f64 4 (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) 2)))): 0 points increase in error, 1 points decrease in error
    3. Taylor expanded in angle around 0 63.6

      \[\leadsto \color{blue}{0.25 \cdot \frac{\sqrt{8 \cdot \frac{\left(\frac{{b}^{2}}{{x-scale}^{2}} + \left(\frac{{a}^{2}}{{y-scale}^{2}} + \sqrt{{\left(\frac{{b}^{2}}{{x-scale}^{2}} - \frac{{a}^{2}}{{y-scale}^{2}}\right)}^{2}}\right)\right) \cdot \left({\left({b}^{2}\right)}^{2} \cdot {\left({a}^{2}\right)}^{2}\right)}{{x-scale}^{2} \cdot {y-scale}^{2}}} \cdot \left({x-scale}^{2} \cdot {y-scale}^{2}\right)}{{b}^{2} \cdot {a}^{2}}} \]
    4. Simplified63.6

      \[\leadsto \color{blue}{0.25 \cdot \left(\frac{\sqrt{8 \cdot \frac{\left(\frac{b \cdot b}{x-scale \cdot x-scale} + \frac{a \cdot a}{y-scale \cdot y-scale}\right) + \sqrt{{\left(\frac{b \cdot b}{x-scale \cdot x-scale} - \frac{a \cdot a}{y-scale \cdot y-scale}\right)}^{2}}}{\frac{\left(x-scale \cdot x-scale\right) \cdot \left(y-scale \cdot y-scale\right)}{{\left(b \cdot b\right)}^{2} \cdot {\left(a \cdot a\right)}^{2}}}}}{b \cdot b} \cdot \frac{\left(x-scale \cdot x-scale\right) \cdot \left(y-scale \cdot y-scale\right)}{a \cdot a}\right)} \]
      Proof
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (+.f64 (+.f64 (/.f64 (*.f64 b b) (*.f64 x-scale x-scale)) (/.f64 (*.f64 a a) (*.f64 y-scale y-scale))) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (*.f64 b b) (*.f64 x-scale x-scale)) (/.f64 (*.f64 a a) (*.f64 y-scale y-scale))) 2))) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 (pow.f64 (*.f64 b b) 2) (pow.f64 (*.f64 a a) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (+.f64 (+.f64 (/.f64 (Rewrite<= unpow2_binary64 (pow.f64 b 2)) (*.f64 x-scale x-scale)) (/.f64 (*.f64 a a) (*.f64 y-scale y-scale))) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (*.f64 b b) (*.f64 x-scale x-scale)) (/.f64 (*.f64 a a) (*.f64 y-scale y-scale))) 2))) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 (pow.f64 (*.f64 b b) 2) (pow.f64 (*.f64 a a) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (+.f64 (+.f64 (/.f64 (pow.f64 b 2) (Rewrite<= unpow2_binary64 (pow.f64 x-scale 2))) (/.f64 (*.f64 a a) (*.f64 y-scale y-scale))) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (*.f64 b b) (*.f64 x-scale x-scale)) (/.f64 (*.f64 a a) (*.f64 y-scale y-scale))) 2))) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 (pow.f64 (*.f64 b b) 2) (pow.f64 (*.f64 a a) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (+.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (Rewrite<= unpow2_binary64 (pow.f64 a 2)) (*.f64 y-scale y-scale))) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (*.f64 b b) (*.f64 x-scale x-scale)) (/.f64 (*.f64 a a) (*.f64 y-scale y-scale))) 2))) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 (pow.f64 (*.f64 b b) 2) (pow.f64 (*.f64 a a) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (+.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (Rewrite<= unpow2_binary64 (pow.f64 y-scale 2)))) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (*.f64 b b) (*.f64 x-scale x-scale)) (/.f64 (*.f64 a a) (*.f64 y-scale y-scale))) 2))) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 (pow.f64 (*.f64 b b) 2) (pow.f64 (*.f64 a a) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (+.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (Rewrite<= unpow2_binary64 (pow.f64 b 2)) (*.f64 x-scale x-scale)) (/.f64 (*.f64 a a) (*.f64 y-scale y-scale))) 2))) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 (pow.f64 (*.f64 b b) 2) (pow.f64 (*.f64 a a) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (+.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (Rewrite<= unpow2_binary64 (pow.f64 x-scale 2))) (/.f64 (*.f64 a a) (*.f64 y-scale y-scale))) 2))) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 (pow.f64 (*.f64 b b) 2) (pow.f64 (*.f64 a a) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (+.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (Rewrite<= unpow2_binary64 (pow.f64 a 2)) (*.f64 y-scale y-scale))) 2))) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 (pow.f64 (*.f64 b b) 2) (pow.f64 (*.f64 a a) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (+.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (Rewrite<= unpow2_binary64 (pow.f64 y-scale 2)))) 2))) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 (pow.f64 (*.f64 b b) 2) (pow.f64 (*.f64 a a) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (Rewrite<= associate-+r+_binary64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (+.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) 2))))) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 (pow.f64 (*.f64 b b) 2) (pow.f64 (*.f64 a a) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (+.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) 2)))) (/.f64 (*.f64 (Rewrite<= unpow2_binary64 (pow.f64 x-scale 2)) (*.f64 y-scale y-scale)) (*.f64 (pow.f64 (*.f64 b b) 2) (pow.f64 (*.f64 a a) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (+.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) 2)))) (/.f64 (*.f64 (pow.f64 x-scale 2) (Rewrite<= unpow2_binary64 (pow.f64 y-scale 2))) (*.f64 (pow.f64 (*.f64 b b) 2) (pow.f64 (*.f64 a a) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (+.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) 2)))) (/.f64 (*.f64 (pow.f64 x-scale 2) (pow.f64 y-scale 2)) (*.f64 (pow.f64 (Rewrite<= unpow2_binary64 (pow.f64 b 2)) 2) (pow.f64 (*.f64 a a) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (+.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) 2)))) (/.f64 (*.f64 (pow.f64 x-scale 2) (pow.f64 y-scale 2)) (*.f64 (pow.f64 (pow.f64 b 2) 2) (pow.f64 (Rewrite<= unpow2_binary64 (pow.f64 a 2)) 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (Rewrite<= associate-/l*_binary64 (/.f64 (*.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (+.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) 2)))) (*.f64 (pow.f64 (pow.f64 b 2) 2) (pow.f64 (pow.f64 a 2) 2))) (*.f64 (pow.f64 x-scale 2) (pow.f64 y-scale 2)))))) (*.f64 b b)) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (*.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (+.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) 2)))) (*.f64 (pow.f64 (pow.f64 b 2) 2) (pow.f64 (pow.f64 a 2) 2))) (*.f64 (pow.f64 x-scale 2) (pow.f64 y-scale 2))))) (Rewrite<= unpow2_binary64 (pow.f64 b 2))) (/.f64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (*.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (+.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) 2)))) (*.f64 (pow.f64 (pow.f64 b 2) 2) (pow.f64 (pow.f64 a 2) 2))) (*.f64 (pow.f64 x-scale 2) (pow.f64 y-scale 2))))) (pow.f64 b 2)) (/.f64 (*.f64 (Rewrite<= unpow2_binary64 (pow.f64 x-scale 2)) (*.f64 y-scale y-scale)) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (*.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (+.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) 2)))) (*.f64 (pow.f64 (pow.f64 b 2) 2) (pow.f64 (pow.f64 a 2) 2))) (*.f64 (pow.f64 x-scale 2) (pow.f64 y-scale 2))))) (pow.f64 b 2)) (/.f64 (*.f64 (pow.f64 x-scale 2) (Rewrite<= unpow2_binary64 (pow.f64 y-scale 2))) (*.f64 a a)))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (*.f64 (/.f64 (sqrt.f64 (*.f64 8 (/.f64 (*.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (+.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) 2)))) (*.f64 (pow.f64 (pow.f64 b 2) 2) (pow.f64 (pow.f64 a 2) 2))) (*.f64 (pow.f64 x-scale 2) (pow.f64 y-scale 2))))) (pow.f64 b 2)) (/.f64 (*.f64 (pow.f64 x-scale 2) (pow.f64 y-scale 2)) (Rewrite<= unpow2_binary64 (pow.f64 a 2))))): 0 points increase in error, 0 points decrease in error
      (*.f64 1/4 (Rewrite<= times-frac_binary64 (/.f64 (*.f64 (sqrt.f64 (*.f64 8 (/.f64 (*.f64 (+.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (+.f64 (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2)) (sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 b 2) (pow.f64 x-scale 2)) (/.f64 (pow.f64 a 2) (pow.f64 y-scale 2))) 2)))) (*.f64 (pow.f64 (pow.f64 b 2) 2) (pow.f64 (pow.f64 a 2) 2))) (*.f64 (pow.f64 x-scale 2) (pow.f64 y-scale 2))))) (*.f64 (pow.f64 x-scale 2) (pow.f64 y-scale 2))) (*.f64 (pow.f64 b 2) (pow.f64 a 2))))): 3 points increase in error, 1 points decrease in error
    5. Applied egg-rr63.8

      \[\leadsto 0.25 \cdot \left(\frac{\sqrt{8 \cdot \frac{\left(\frac{b \cdot b}{x-scale \cdot x-scale} + \frac{a \cdot a}{y-scale \cdot y-scale}\right) + \color{blue}{\frac{\frac{b \cdot b}{x-scale} \cdot y-scale - x-scale \cdot \frac{a \cdot a}{y-scale}}{x-scale \cdot y-scale}}}{\frac{\left(x-scale \cdot x-scale\right) \cdot \left(y-scale \cdot y-scale\right)}{{\left(b \cdot b\right)}^{2} \cdot {\left(a \cdot a\right)}^{2}}}}}{b \cdot b} \cdot \frac{\left(x-scale \cdot x-scale\right) \cdot \left(y-scale \cdot y-scale\right)}{a \cdot a}\right) \]
    6. Taylor expanded in b around -inf 63.9

      \[\leadsto 0.25 \cdot \color{blue}{\left(-1 \cdot \frac{{x-scale}^{2} \cdot \left({y-scale}^{2} \cdot \left(b \cdot \sqrt{16 \cdot \frac{{\left({a}^{2}\right)}^{2}}{{y-scale}^{2} \cdot {\left({x-scale}^{2}\right)}^{2}}}\right)\right)}{{a}^{2}}\right)} \]
    7. Simplified63.8

      \[\leadsto 0.25 \cdot \color{blue}{\frac{\left(-{\left(x-scale \cdot y-scale\right)}^{2}\right) \cdot \left(\sqrt{\frac{\frac{\frac{{a}^{4}}{y-scale}}{y-scale} \cdot 16}{{x-scale}^{4}}} \cdot b\right)}{a \cdot a}} \]
      Proof
      (/.f64 (*.f64 (neg.f64 (pow.f64 (*.f64 x-scale y-scale) 2)) (*.f64 (sqrt.f64 (/.f64 (*.f64 (/.f64 (/.f64 (pow.f64 a 4) y-scale) y-scale) 16) (pow.f64 x-scale 4))) b)) (*.f64 a a)): 0 points increase in error, 0 points decrease in error
      (/.f64 (*.f64 (Rewrite<= mul-1-neg_binary64 (*.f64 -1 (pow.f64 (*.f64 x-scale y-scale) 2))) (*.f64 (sqrt.f64 (/.f64 (*.f64 (/.f64 (/.f64 (pow.f64 a 4) y-scale) y-scale) 16) (pow.f64 x-scale 4))) b)) (*.f64 a a)): 0 points increase in error, 0 points decrease in error
      (/.f64 (*.f64 (*.f64 -1 (pow.f64 (*.f64 x-scale y-scale) 2)) (*.f64 (sqrt.f64 (/.f64 (*.f64 (/.f64 (/.f64 (pow.f64 a (Rewrite<= metadata-eval (*.f64 2 2))) y-scale) y-scale) 16) (pow.f64 x-scale 4))) b)) (*.f64 a a)): 0 points increase in error, 0 points decrease in error
      (/.f64 (*.f64 (*.f64 -1 (pow.f64 (*.f64 x-scale y-scale) 2)) (*.f64 (sqrt.f64 (/.f64 (*.f64 (/.f64 (/.f64 (Rewrite<= pow-sqr_binary64 (*.f64 (pow.f64 a 2) (pow.f64 a 2))) y-scale) y-scale) 16) (pow.f64 x-scale 4))) b)) (*.f64 a a)): 2 points increase in error, 0 points decrease in error
      (/.f64 (*.f64 (*.f64 -1 (pow.f64 (*.f64 x-scale y-scale) 2)) (*.f64 (sqrt.f64 (/.f64 (*.f64 (/.f64 (/.f64 (Rewrite<= unpow2_binary64 (pow.f64 (pow.f64 a 2) 2)) y-scale) y-scale) 16) (pow.f64 x-scale 4))) b)) (*.f64 a a)): 0 points increase in error, 0 points decrease in error
      (/.f64 (*.f64 (*.f64 -1 (pow.f64 (*.f64 x-scale y-scale) 2)) (*.f64 (sqrt.f64 (/.f64 (*.f64 (Rewrite<= associate-/r*_binary64 (/.f64 (pow.f64 (pow.f64 a 2) 2) (*.f64 y-scale y-scale))) 16) (pow.f64 x-scale 4))) b)) (*.f64 a a)): 4 points increase in error, 1 points decrease in error
      (/.f64 (*.f64 (*.f64 -1 (pow.f64 (*.f64 x-scale y-scale) 2)) (*.f64 (sqrt.f64 (/.f64 (*.f64 (/.f64 (pow.f64 (pow.f64 a 2) 2) (Rewrite<= unpow2_binary64 (pow.f64 y-scale 2))) 16) (pow.f64 x-scale 4))) b)) (*.f64 a a)): 0 points increase in error, 0 points decrease in error
      (/.f64 (*.f64 (*.f64 -1 (pow.f64 (*.f64 x-scale y-scale) 2)) (*.f64 (sqrt.f64 (/.f64 (*.f64 (/.f64 (pow.f64 (pow.f64 a 2) 2) (pow.f64 y-scale 2)) 16) (pow.f64 x-scale (Rewrite<= metadata-eval (*.f64 2 2))))) b)) (*.f64 a a)): 0 points increase in error, 0 points decrease in error
      (/.f64 (*.f64 (*.f64 -1 (pow.f64 (*.f64 x-scale y-scale) 2)) (*.f64 (sqrt.f64 (/.f64 (*.f64 (/.f64 (pow.f64 (pow.f64 a 2) 2) (pow.f64 y-scale 2)) 16) (Rewrite<= pow-sqr_binary64 (*.f64 (pow.f64 x-scale 2) (pow.f64 x-scale 2))))) b)) (*.f64 a a)): 0 points increase in error, 0 points decrease in error
      (/.f64 (*.f64 (*.f64 -1 (pow.f64 (*.f64 x-scale y-scale) 2)) (*.f64 (sqrt.f64 (/.f64 (*.f64 (/.f64 (pow.f64 (pow.f64 a 2) 2) (pow.f64 y-scale 2)) 16) (Rewrite<= unpow2_binary64 (pow.f64 (pow.f64 x-scale 2) 2)))) b)) (*.f64 a a)): 0 points increase in error, 0 points decrease in error
      (/.f64 (*.f64 (*.f64 -1 (pow.f64 (*.f64 x-scale y-scale) 2)) (*.f64 (sqrt.f64 (Rewrite<= associate-*l/_binary64 (*.f64 (/.f64 (/.f64 (pow.f64 (pow.f64 a 2) 2) (pow.f64 y-scale 2)) (pow.f64 (pow.f64 x-scale 2) 2)) 16))) b)) (*.f64 a a)): 0 points increase in error, 0 points decrease in error
      (/.f64 (*.f64 (*.f64 -1 (pow.f64 (*.f64 x-scale y-scale) 2)) (*.f64 (sqrt.f64 (*.f64 (Rewrite<= associate-/r*_binary64 (/.f64 (pow.f64 (pow.f64 a 2) 2) (*.f64 (pow.f64 y-scale 2) (pow.f64 (pow.f64 x-scale 2) 2)))) 16)) b)) (*.f64 a a)): 1 points increase in error, 1 points decrease in error
      (/.f64 (*.f64 (*.f64 -1 (pow.f64 (*.f64 x-scale y-scale) 2)) (*.f64 (sqrt.f64 (Rewrite<= *-commutative_binary64 (*.f64 16 (/.f64 (pow.f64 (pow.f64 a 2) 2) (*.f64 (pow.f64 y-scale 2) (pow.f64 (pow.f64 x-scale 2) 2)))))) b)) (*.f64 a a)): 0 points increase in error, 0 points decrease in error
      (/.f64 (*.f64 (*.f64 -1 (pow.f64 (*.f64 x-scale y-scale) 2)) (*.f64 (sqrt.f64 (*.f64 16 (/.f64 (pow.f64 (pow.f64 a 2) 2) (Rewrite<= *-commutative_binary64 (*.f64 (pow.f64 (pow.f64 x-scale 2) 2) (pow.f64 y-scale 2)))))) b)) (*.f64 a a)): 0 points increase in error, 0 points decrease in error
      (/.f64 (Rewrite<= associate-*r*_binary64 (*.f64 -1 (*.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 (sqrt.f64 (*.f64 16 (/.f64 (pow.f64 (pow.f64 a 2) 2) (*.f64 (pow.f64 (pow.f64 x-scale 2) 2) (pow.f64 y-scale 2))))) b)))) (*.f64 a a)): 0 points increase in error, 0 points decrease in error
      (/.f64 (*.f64 -1 (*.f64 (Rewrite=> unpow2_binary64 (*.f64 (*.f64 x-scale y-scale) (*.f64 x-scale y-scale))) (*.f64 (sqrt.f64 (*.f64 16 (/.f64 (pow.f64 (pow.f64 a 2) 2) (*.f64 (pow.f64 (pow.f64 x-scale 2) 2) (pow.f64 y-scale 2))))) b))) (*.f64 a a)): 0 points increase in error, 0 points decrease in error
      (/.f64 (*.f64 -1 (*.f64 (Rewrite<= unswap-sqr_binary64 (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale))) (*.f64 (sqrt.f64 (*.f64 16 (/.f64 (pow.f64 (pow.f64 a 2) 2) (*.f64 (pow.f64 (pow.f64 x-scale 2) 2) (pow.f64 y-scale 2))))) b))) (*.f64 a a)): 4 points increase in error, 2 points decrease in error
      (/.f64 (*.f64 -1 (*.f64 (*.f64 (Rewrite<= unpow2_binary64 (pow.f64 x-scale 2)) (*.f64 y-scale y-scale)) (*.f64 (sqrt.f64 (*.f64 16 (/.f64 (pow.f64 (pow.f64 a 2) 2) (*.f64 (pow.f64 (pow.f64 x-scale 2) 2) (pow.f64 y-scale 2))))) b))) (*.f64 a a)): 0 points increase in error, 0 points decrease in error
      (/.f64 (*.f64 -1 (*.f64 (*.f64 (pow.f64 x-scale 2) (Rewrite<= unpow2_binary64 (pow.f64 y-scale 2))) (*.f64 (sqrt.f64 (*.f64 16 (/.f64 (pow.f64 (pow.f64 a 2) 2) (*.f64 (pow.f64 (pow.f64 x-scale 2) 2) (pow.f64 y-scale 2))))) b))) (*.f64 a a)): 0 points increase in error, 0 points decrease in error
      (/.f64 (*.f64 -1 (Rewrite=> associate-*l*_binary64 (*.f64 (pow.f64 x-scale 2) (*.f64 (pow.f64 y-scale 2) (*.f64 (sqrt.f64 (*.f64 16 (/.f64 (pow.f64 (pow.f64 a 2) 2) (*.f64 (pow.f64 (pow.f64 x-scale 2) 2) (pow.f64 y-scale 2))))) b))))) (*.f64 a a)): 2 points increase in error, 8 points decrease in error
      (/.f64 (*.f64 -1 (*.f64 (pow.f64 x-scale 2) (*.f64 (pow.f64 y-scale 2) (*.f64 (sqrt.f64 (*.f64 16 (/.f64 (pow.f64 (pow.f64 a 2) 2) (Rewrite=> *-commutative_binary64 (*.f64 (pow.f64 y-scale 2) (pow.f64 (pow.f64 x-scale 2) 2)))))) b)))) (*.f64 a a)): 0 points increase in error, 0 points decrease in error
      (/.f64 (*.f64 -1 (*.f64 (pow.f64 x-scale 2) (*.f64 (pow.f64 y-scale 2) (Rewrite<= *-commutative_binary64 (*.f64 b (sqrt.f64 (*.f64 16 (/.f64 (pow.f64 (pow.f64 a 2) 2) (*.f64 (pow.f64 y-scale 2) (pow.f64 (pow.f64 x-scale 2) 2)))))))))) (*.f64 a a)): 0 points increase in error, 0 points decrease in error
      (/.f64 (*.f64 -1 (*.f64 (pow.f64 x-scale 2) (*.f64 (pow.f64 y-scale 2) (*.f64 b (sqrt.f64 (*.f64 16 (/.f64 (pow.f64 (pow.f64 a 2) 2) (*.f64 (pow.f64 y-scale 2) (pow.f64 (pow.f64 x-scale 2) 2))))))))) (Rewrite<= unpow2_binary64 (pow.f64 a 2))): 0 points increase in error, 0 points decrease in error
      (Rewrite<= associate-*r/_binary64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 x-scale 2) (*.f64 (pow.f64 y-scale 2) (*.f64 b (sqrt.f64 (*.f64 16 (/.f64 (pow.f64 (pow.f64 a 2) 2) (*.f64 (pow.f64 y-scale 2) (pow.f64 (pow.f64 x-scale 2) 2)))))))) (pow.f64 a 2)))): 0 points increase in error, 0 points decrease in error
    8. Applied egg-rr60.5

      \[\leadsto 0.25 \cdot \color{blue}{\left(e^{\mathsf{log1p}\left({\left(\frac{\left(x-scale \cdot y-scale\right) \cdot \left(\sqrt{b} \cdot \frac{\sqrt{4 \cdot \frac{a \cdot a}{y-scale}}}{x-scale}\right)}{a}\right)}^{2}\right)} - 1\right)} \]
    9. Simplified60.0

      \[\leadsto 0.25 \cdot \color{blue}{{\left(\frac{y-scale \cdot x-scale}{\frac{a}{\sqrt{b} \cdot \frac{\sqrt{4 \cdot \frac{a}{\frac{y-scale}{a}}}}{x-scale}}}\right)}^{2}} \]
      Proof
      (pow.f64 (/.f64 (*.f64 y-scale x-scale) (/.f64 a (*.f64 (sqrt.f64 b) (/.f64 (sqrt.f64 (*.f64 4 (/.f64 a (/.f64 y-scale a)))) x-scale)))) 2): 0 points increase in error, 0 points decrease in error
      (pow.f64 (/.f64 (Rewrite<= *-commutative_binary64 (*.f64 x-scale y-scale)) (/.f64 a (*.f64 (sqrt.f64 b) (/.f64 (sqrt.f64 (*.f64 4 (/.f64 a (/.f64 y-scale a)))) x-scale)))) 2): 0 points increase in error, 0 points decrease in error
      (pow.f64 (/.f64 (*.f64 x-scale y-scale) (/.f64 a (*.f64 (sqrt.f64 b) (/.f64 (sqrt.f64 (*.f64 4 (Rewrite<= associate-/l*_binary64 (/.f64 (*.f64 a a) y-scale)))) x-scale)))) 2): 3 points increase in error, 8 points decrease in error
      (pow.f64 (Rewrite<= associate-/l*_binary64 (/.f64 (*.f64 (*.f64 x-scale y-scale) (*.f64 (sqrt.f64 b) (/.f64 (sqrt.f64 (*.f64 4 (/.f64 (*.f64 a a) y-scale))) x-scale))) a)) 2): 1 points increase in error, 4 points decrease in error
      (Rewrite<= expm1-log1p_binary64 (expm1.f64 (log1p.f64 (pow.f64 (/.f64 (*.f64 (*.f64 x-scale y-scale) (*.f64 (sqrt.f64 b) (/.f64 (sqrt.f64 (*.f64 4 (/.f64 (*.f64 a a) y-scale))) x-scale))) a) 2)))): 3 points increase in error, 4 points decrease in error
      (Rewrite<= expm1-def_binary64 (-.f64 (exp.f64 (log1p.f64 (pow.f64 (/.f64 (*.f64 (*.f64 x-scale y-scale) (*.f64 (sqrt.f64 b) (/.f64 (sqrt.f64 (*.f64 4 (/.f64 (*.f64 a a) y-scale))) x-scale))) a) 2))) 1)): 7 points increase in error, 0 points decrease in error
  3. Recombined 3 regimes into one program.
  4. Final simplification60.0

    \[\leadsto \begin{array}{l} \mathbf{if}\;b \leq -4.7 \cdot 10^{-158}:\\ \;\;\;\;0.25 \cdot {\left(\frac{b \cdot \frac{\sqrt{\mathsf{hypot}\left(\mathsf{fma}\left(-0.5, \frac{x-scale}{b} \cdot {\left(\frac{a}{y-scale}\right)}^{2}, \frac{b}{x-scale}\right), \mathsf{hypot}\left(\frac{a}{y-scale}, \frac{b}{x-scale}\right)\right) \cdot \sqrt{8}}}{\frac{\sqrt{x-scale \cdot y-scale}}{a}}}{b} \cdot \left(y-scale \cdot \frac{x-scale}{a}\right)\right)}^{2}\\ \mathbf{elif}\;b \leq 4 \cdot 10^{-73}:\\ \;\;\;\;0\\ \mathbf{else}:\\ \;\;\;\;0.25 \cdot {\left(\frac{x-scale \cdot y-scale}{\frac{a}{\sqrt{b} \cdot \frac{\sqrt{4 \cdot \frac{a}{\frac{y-scale}{a}}}}{x-scale}}}\right)}^{2}\\ \end{array} \]

Alternatives

Alternative 1
Error60.2
Cost47492
\[\begin{array}{l} \mathbf{if}\;b \leq -1.3 \cdot 10^{-157}:\\ \;\;\;\;0.25 \cdot {\left(y-scale \cdot \left(\frac{\frac{x-scale}{a}}{\frac{b}{{8}^{0.25}}} \cdot \left(\left(b \cdot a\right) \cdot \sqrt{\frac{\mathsf{hypot}\left(\mathsf{fma}\left(-0.5, x-scale \cdot \frac{{\left(\frac{a}{y-scale}\right)}^{2}}{b}, \frac{b}{x-scale}\right), \mathsf{hypot}\left(\frac{a}{y-scale}, \frac{b}{x-scale}\right)\right)}{x-scale \cdot y-scale}}\right)\right)\right)}^{2}\\ \mathbf{elif}\;b \leq 4.9 \cdot 10^{-73}:\\ \;\;\;\;0\\ \mathbf{else}:\\ \;\;\;\;0.25 \cdot {\left(\frac{x-scale \cdot y-scale}{\frac{a}{\sqrt{b} \cdot \frac{\sqrt{4 \cdot \frac{a}{\frac{y-scale}{a}}}}{x-scale}}}\right)}^{2}\\ \end{array} \]
Alternative 2
Error60.2
Cost47492
\[\begin{array}{l} \mathbf{if}\;b \leq -5.5 \cdot 10^{-156}:\\ \;\;\;\;0.25 \cdot {\left(\frac{\left(x-scale \cdot y-scale\right) \cdot \left(\left(\sqrt{\frac{\mathsf{hypot}\left(\mathsf{fma}\left(-0.5, \frac{{\left(\frac{a}{y-scale}\right)}^{2}}{\frac{b}{x-scale}}, \frac{b}{x-scale}\right), \mathsf{hypot}\left(\frac{a}{y-scale}, \frac{b}{x-scale}\right)\right)}{x-scale \cdot y-scale}} \cdot \left(b \cdot a\right)\right) \cdot {8}^{0.25}\right)}{b \cdot a}\right)}^{2}\\ \mathbf{elif}\;b \leq 4.7 \cdot 10^{-79}:\\ \;\;\;\;0\\ \mathbf{else}:\\ \;\;\;\;0.25 \cdot {\left(\frac{x-scale \cdot y-scale}{\frac{a}{\sqrt{b} \cdot \frac{\sqrt{4 \cdot \frac{a}{\frac{y-scale}{a}}}}{x-scale}}}\right)}^{2}\\ \end{array} \]
Alternative 3
Error61.1
Cost46976
\[{\left(\frac{\sqrt{\sqrt{8} \cdot \left(\mathsf{hypot}\left(\frac{a}{y-scale}, \mathsf{hypot}\left(\frac{b}{x-scale}, \mathsf{hypot}\left(\frac{a}{y-scale}, \frac{b}{x-scale}\right)\right)\right) \cdot \frac{{\left(b \cdot a\right)}^{2}}{x-scale \cdot y-scale}\right)} \cdot \frac{\left(x-scale \cdot y-scale\right) \cdot 0.5}{a}}{b}\right)}^{2} \]
Alternative 4
Error60.5
Cost6656
\[0.25 \cdot {0}^{0} \]
Alternative 5
Error61.1
Cost64
\[0 \]

Error

Reproduce

herbie shell --seed 2022335 
(FPCore (a b angle x-scale y-scale)
  :name "a from scale-rotated-ellipse"
  :precision binary64
  (/ (- (sqrt (* (* (* 2.0 (/ (* 4.0 (* (* b a) (* b (- a)))) (pow (* x-scale y-scale) 2.0))) (* (* b a) (* b (- a)))) (+ (+ (/ (/ (+ (pow (* a (sin (* (/ angle 180.0) PI))) 2.0) (pow (* b (cos (* (/ angle 180.0) PI))) 2.0)) x-scale) x-scale) (/ (/ (+ (pow (* a (cos (* (/ angle 180.0) PI))) 2.0) (pow (* b (sin (* (/ angle 180.0) PI))) 2.0)) y-scale) y-scale)) (sqrt (+ (pow (- (/ (/ (+ (pow (* a (sin (* (/ angle 180.0) PI))) 2.0) (pow (* b (cos (* (/ angle 180.0) PI))) 2.0)) x-scale) x-scale) (/ (/ (+ (pow (* a (cos (* (/ angle 180.0) PI))) 2.0) (pow (* b (sin (* (/ angle 180.0) PI))) 2.0)) y-scale) y-scale)) 2.0) (pow (/ (/ (* (* (* 2.0 (- (pow b 2.0) (pow a 2.0))) (sin (* (/ angle 180.0) PI))) (cos (* (/ angle 180.0) PI))) x-scale) y-scale) 2.0))))))) (/ (* 4.0 (* (* b a) (* b (- a)))) (pow (* x-scale y-scale) 2.0))))