a from scale-rotated-ellipse

Percentage Accurate: 2.6% → 32.8%
Time: 26.8s
Alternatives: 6
Speedup: 7.5×

Specification

?
\[\begin{array}{l} t_0 := \frac{angle}{180} \cdot \pi\\ t_1 := \sin t\_0\\ t_2 := \cos t\_0\\ t_3 := \frac{\frac{{\left(a \cdot t\_2\right)}^{2} + {\left(b \cdot t\_1\right)}^{2}}{y-scale}}{y-scale}\\ t_4 := \frac{\frac{{\left(a \cdot t\_1\right)}^{2} + {\left(b \cdot t\_2\right)}^{2}}{x-scale}}{x-scale}\\ t_5 := \left(b \cdot a\right) \cdot \left(b \cdot \left(-a\right)\right)\\ t_6 := \frac{4 \cdot t\_5}{{\left(x-scale \cdot y-scale\right)}^{2}}\\ \frac{-\sqrt{\left(\left(2 \cdot t\_6\right) \cdot t\_5\right) \cdot \left(\left(t\_4 + t\_3\right) + \sqrt{{\left(t\_4 - t\_3\right)}^{2} + {\left(\frac{\frac{\left(\left(2 \cdot \left({b}^{2} - {a}^{2}\right)\right) \cdot t\_1\right) \cdot t\_2}{x-scale}}{y-scale}\right)}^{2}}\right)}}{t\_6} \end{array} \]
(FPCore (a b angle x-scale y-scale)
  :precision binary64
  (let* ((t_0 (* (/ angle 180.0) PI))
       (t_1 (sin t_0))
       (t_2 (cos t_0))
       (t_3
        (/
         (/ (+ (pow (* a t_2) 2.0) (pow (* b t_1) 2.0)) y-scale)
         y-scale))
       (t_4
        (/
         (/ (+ (pow (* a t_1) 2.0) (pow (* b t_2) 2.0)) x-scale)
         x-scale))
       (t_5 (* (* b a) (* b (- a))))
       (t_6 (/ (* 4.0 t_5) (pow (* x-scale y-scale) 2.0))))
  (/
   (-
    (sqrt
     (*
      (* (* 2.0 t_6) t_5)
      (+
       (+ t_4 t_3)
       (sqrt
        (+
         (pow (- t_4 t_3) 2.0)
         (pow
          (/
           (/
            (* (* (* 2.0 (- (pow b 2.0) (pow a 2.0))) t_1) t_2)
            x-scale)
           y-scale)
          2.0)))))))
   t_6)))
double code(double a, double b, double angle, double x_45_scale, double y_45_scale) {
	double t_0 = (angle / 180.0) * ((double) M_PI);
	double t_1 = sin(t_0);
	double t_2 = cos(t_0);
	double t_3 = ((pow((a * t_2), 2.0) + pow((b * t_1), 2.0)) / y_45_scale) / y_45_scale;
	double t_4 = ((pow((a * t_1), 2.0) + pow((b * t_2), 2.0)) / x_45_scale) / x_45_scale;
	double t_5 = (b * a) * (b * -a);
	double t_6 = (4.0 * t_5) / pow((x_45_scale * y_45_scale), 2.0);
	return -sqrt((((2.0 * t_6) * t_5) * ((t_4 + t_3) + sqrt((pow((t_4 - t_3), 2.0) + pow((((((2.0 * (pow(b, 2.0) - pow(a, 2.0))) * t_1) * t_2) / x_45_scale) / y_45_scale), 2.0)))))) / t_6;
}
public static double code(double a, double b, double angle, double x_45_scale, double y_45_scale) {
	double t_0 = (angle / 180.0) * Math.PI;
	double t_1 = Math.sin(t_0);
	double t_2 = Math.cos(t_0);
	double t_3 = ((Math.pow((a * t_2), 2.0) + Math.pow((b * t_1), 2.0)) / y_45_scale) / y_45_scale;
	double t_4 = ((Math.pow((a * t_1), 2.0) + Math.pow((b * t_2), 2.0)) / x_45_scale) / x_45_scale;
	double t_5 = (b * a) * (b * -a);
	double t_6 = (4.0 * t_5) / Math.pow((x_45_scale * y_45_scale), 2.0);
	return -Math.sqrt((((2.0 * t_6) * t_5) * ((t_4 + t_3) + Math.sqrt((Math.pow((t_4 - t_3), 2.0) + Math.pow((((((2.0 * (Math.pow(b, 2.0) - Math.pow(a, 2.0))) * t_1) * t_2) / x_45_scale) / y_45_scale), 2.0)))))) / t_6;
}
def code(a, b, angle, x_45_scale, y_45_scale):
	t_0 = (angle / 180.0) * math.pi
	t_1 = math.sin(t_0)
	t_2 = math.cos(t_0)
	t_3 = ((math.pow((a * t_2), 2.0) + math.pow((b * t_1), 2.0)) / y_45_scale) / y_45_scale
	t_4 = ((math.pow((a * t_1), 2.0) + math.pow((b * t_2), 2.0)) / x_45_scale) / x_45_scale
	t_5 = (b * a) * (b * -a)
	t_6 = (4.0 * t_5) / math.pow((x_45_scale * y_45_scale), 2.0)
	return -math.sqrt((((2.0 * t_6) * t_5) * ((t_4 + t_3) + math.sqrt((math.pow((t_4 - t_3), 2.0) + math.pow((((((2.0 * (math.pow(b, 2.0) - math.pow(a, 2.0))) * t_1) * t_2) / x_45_scale) / y_45_scale), 2.0)))))) / t_6
function code(a, b, angle, x_45_scale, y_45_scale)
	t_0 = Float64(Float64(angle / 180.0) * pi)
	t_1 = sin(t_0)
	t_2 = cos(t_0)
	t_3 = Float64(Float64(Float64((Float64(a * t_2) ^ 2.0) + (Float64(b * t_1) ^ 2.0)) / y_45_scale) / y_45_scale)
	t_4 = Float64(Float64(Float64((Float64(a * t_1) ^ 2.0) + (Float64(b * t_2) ^ 2.0)) / x_45_scale) / x_45_scale)
	t_5 = Float64(Float64(b * a) * Float64(b * Float64(-a)))
	t_6 = Float64(Float64(4.0 * t_5) / (Float64(x_45_scale * y_45_scale) ^ 2.0))
	return Float64(Float64(-sqrt(Float64(Float64(Float64(2.0 * t_6) * t_5) * Float64(Float64(t_4 + t_3) + sqrt(Float64((Float64(t_4 - t_3) ^ 2.0) + (Float64(Float64(Float64(Float64(Float64(2.0 * Float64((b ^ 2.0) - (a ^ 2.0))) * t_1) * t_2) / x_45_scale) / y_45_scale) ^ 2.0))))))) / t_6)
end
function tmp = code(a, b, angle, x_45_scale, y_45_scale)
	t_0 = (angle / 180.0) * pi;
	t_1 = sin(t_0);
	t_2 = cos(t_0);
	t_3 = ((((a * t_2) ^ 2.0) + ((b * t_1) ^ 2.0)) / y_45_scale) / y_45_scale;
	t_4 = ((((a * t_1) ^ 2.0) + ((b * t_2) ^ 2.0)) / x_45_scale) / x_45_scale;
	t_5 = (b * a) * (b * -a);
	t_6 = (4.0 * t_5) / ((x_45_scale * y_45_scale) ^ 2.0);
	tmp = -sqrt((((2.0 * t_6) * t_5) * ((t_4 + t_3) + sqrt((((t_4 - t_3) ^ 2.0) + ((((((2.0 * ((b ^ 2.0) - (a ^ 2.0))) * t_1) * t_2) / x_45_scale) / y_45_scale) ^ 2.0)))))) / t_6;
end
code[a_, b_, angle_, x$45$scale_, y$45$scale_] := Block[{t$95$0 = N[(N[(angle / 180.0), $MachinePrecision] * Pi), $MachinePrecision]}, Block[{t$95$1 = N[Sin[t$95$0], $MachinePrecision]}, Block[{t$95$2 = N[Cos[t$95$0], $MachinePrecision]}, Block[{t$95$3 = N[(N[(N[(N[Power[N[(a * t$95$2), $MachinePrecision], 2.0], $MachinePrecision] + N[Power[N[(b * t$95$1), $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision] / y$45$scale), $MachinePrecision] / y$45$scale), $MachinePrecision]}, Block[{t$95$4 = N[(N[(N[(N[Power[N[(a * t$95$1), $MachinePrecision], 2.0], $MachinePrecision] + N[Power[N[(b * t$95$2), $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision] / x$45$scale), $MachinePrecision] / x$45$scale), $MachinePrecision]}, Block[{t$95$5 = N[(N[(b * a), $MachinePrecision] * N[(b * (-a)), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$6 = N[(N[(4.0 * t$95$5), $MachinePrecision] / N[Power[N[(x$45$scale * y$45$scale), $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision]}, N[((-N[Sqrt[N[(N[(N[(2.0 * t$95$6), $MachinePrecision] * t$95$5), $MachinePrecision] * N[(N[(t$95$4 + t$95$3), $MachinePrecision] + N[Sqrt[N[(N[Power[N[(t$95$4 - t$95$3), $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] * t$95$1), $MachinePrecision] * t$95$2), $MachinePrecision] / x$45$scale), $MachinePrecision] / y$45$scale), $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]) / t$95$6), $MachinePrecision]]]]]]]]
\begin{array}{l}
t_0 := \frac{angle}{180} \cdot \pi\\
t_1 := \sin t\_0\\
t_2 := \cos t\_0\\
t_3 := \frac{\frac{{\left(a \cdot t\_2\right)}^{2} + {\left(b \cdot t\_1\right)}^{2}}{y-scale}}{y-scale}\\
t_4 := \frac{\frac{{\left(a \cdot t\_1\right)}^{2} + {\left(b \cdot t\_2\right)}^{2}}{x-scale}}{x-scale}\\
t_5 := \left(b \cdot a\right) \cdot \left(b \cdot \left(-a\right)\right)\\
t_6 := \frac{4 \cdot t\_5}{{\left(x-scale \cdot y-scale\right)}^{2}}\\
\frac{-\sqrt{\left(\left(2 \cdot t\_6\right) \cdot t\_5\right) \cdot \left(\left(t\_4 + t\_3\right) + \sqrt{{\left(t\_4 - t\_3\right)}^{2} + {\left(\frac{\frac{\left(\left(2 \cdot \left({b}^{2} - {a}^{2}\right)\right) \cdot t\_1\right) \cdot t\_2}{x-scale}}{y-scale}\right)}^{2}}\right)}}{t\_6}
\end{array}

Local Percentage Accuracy vs ?

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

Accuracy vs Speed?

Herbie found 6 alternatives:

AlternativeAccuracySpeedup
The accuracy (vertical axis) and speed (horizontal axis) of each alternatives. Up and to the right is better. The red square shows the initial program, and each blue circle shows an alternative.The line shows the best available speed-accuracy tradeoffs.

Initial Program: 2.6% accurate, 1.0× speedup?

\[\begin{array}{l} t_0 := \frac{angle}{180} \cdot \pi\\ t_1 := \sin t\_0\\ t_2 := \cos t\_0\\ t_3 := \frac{\frac{{\left(a \cdot t\_2\right)}^{2} + {\left(b \cdot t\_1\right)}^{2}}{y-scale}}{y-scale}\\ t_4 := \frac{\frac{{\left(a \cdot t\_1\right)}^{2} + {\left(b \cdot t\_2\right)}^{2}}{x-scale}}{x-scale}\\ t_5 := \left(b \cdot a\right) \cdot \left(b \cdot \left(-a\right)\right)\\ t_6 := \frac{4 \cdot t\_5}{{\left(x-scale \cdot y-scale\right)}^{2}}\\ \frac{-\sqrt{\left(\left(2 \cdot t\_6\right) \cdot t\_5\right) \cdot \left(\left(t\_4 + t\_3\right) + \sqrt{{\left(t\_4 - t\_3\right)}^{2} + {\left(\frac{\frac{\left(\left(2 \cdot \left({b}^{2} - {a}^{2}\right)\right) \cdot t\_1\right) \cdot t\_2}{x-scale}}{y-scale}\right)}^{2}}\right)}}{t\_6} \end{array} \]
(FPCore (a b angle x-scale y-scale)
  :precision binary64
  (let* ((t_0 (* (/ angle 180.0) PI))
       (t_1 (sin t_0))
       (t_2 (cos t_0))
       (t_3
        (/
         (/ (+ (pow (* a t_2) 2.0) (pow (* b t_1) 2.0)) y-scale)
         y-scale))
       (t_4
        (/
         (/ (+ (pow (* a t_1) 2.0) (pow (* b t_2) 2.0)) x-scale)
         x-scale))
       (t_5 (* (* b a) (* b (- a))))
       (t_6 (/ (* 4.0 t_5) (pow (* x-scale y-scale) 2.0))))
  (/
   (-
    (sqrt
     (*
      (* (* 2.0 t_6) t_5)
      (+
       (+ t_4 t_3)
       (sqrt
        (+
         (pow (- t_4 t_3) 2.0)
         (pow
          (/
           (/
            (* (* (* 2.0 (- (pow b 2.0) (pow a 2.0))) t_1) t_2)
            x-scale)
           y-scale)
          2.0)))))))
   t_6)))
double code(double a, double b, double angle, double x_45_scale, double y_45_scale) {
	double t_0 = (angle / 180.0) * ((double) M_PI);
	double t_1 = sin(t_0);
	double t_2 = cos(t_0);
	double t_3 = ((pow((a * t_2), 2.0) + pow((b * t_1), 2.0)) / y_45_scale) / y_45_scale;
	double t_4 = ((pow((a * t_1), 2.0) + pow((b * t_2), 2.0)) / x_45_scale) / x_45_scale;
	double t_5 = (b * a) * (b * -a);
	double t_6 = (4.0 * t_5) / pow((x_45_scale * y_45_scale), 2.0);
	return -sqrt((((2.0 * t_6) * t_5) * ((t_4 + t_3) + sqrt((pow((t_4 - t_3), 2.0) + pow((((((2.0 * (pow(b, 2.0) - pow(a, 2.0))) * t_1) * t_2) / x_45_scale) / y_45_scale), 2.0)))))) / t_6;
}
public static double code(double a, double b, double angle, double x_45_scale, double y_45_scale) {
	double t_0 = (angle / 180.0) * Math.PI;
	double t_1 = Math.sin(t_0);
	double t_2 = Math.cos(t_0);
	double t_3 = ((Math.pow((a * t_2), 2.0) + Math.pow((b * t_1), 2.0)) / y_45_scale) / y_45_scale;
	double t_4 = ((Math.pow((a * t_1), 2.0) + Math.pow((b * t_2), 2.0)) / x_45_scale) / x_45_scale;
	double t_5 = (b * a) * (b * -a);
	double t_6 = (4.0 * t_5) / Math.pow((x_45_scale * y_45_scale), 2.0);
	return -Math.sqrt((((2.0 * t_6) * t_5) * ((t_4 + t_3) + Math.sqrt((Math.pow((t_4 - t_3), 2.0) + Math.pow((((((2.0 * (Math.pow(b, 2.0) - Math.pow(a, 2.0))) * t_1) * t_2) / x_45_scale) / y_45_scale), 2.0)))))) / t_6;
}
def code(a, b, angle, x_45_scale, y_45_scale):
	t_0 = (angle / 180.0) * math.pi
	t_1 = math.sin(t_0)
	t_2 = math.cos(t_0)
	t_3 = ((math.pow((a * t_2), 2.0) + math.pow((b * t_1), 2.0)) / y_45_scale) / y_45_scale
	t_4 = ((math.pow((a * t_1), 2.0) + math.pow((b * t_2), 2.0)) / x_45_scale) / x_45_scale
	t_5 = (b * a) * (b * -a)
	t_6 = (4.0 * t_5) / math.pow((x_45_scale * y_45_scale), 2.0)
	return -math.sqrt((((2.0 * t_6) * t_5) * ((t_4 + t_3) + math.sqrt((math.pow((t_4 - t_3), 2.0) + math.pow((((((2.0 * (math.pow(b, 2.0) - math.pow(a, 2.0))) * t_1) * t_2) / x_45_scale) / y_45_scale), 2.0)))))) / t_6
function code(a, b, angle, x_45_scale, y_45_scale)
	t_0 = Float64(Float64(angle / 180.0) * pi)
	t_1 = sin(t_0)
	t_2 = cos(t_0)
	t_3 = Float64(Float64(Float64((Float64(a * t_2) ^ 2.0) + (Float64(b * t_1) ^ 2.0)) / y_45_scale) / y_45_scale)
	t_4 = Float64(Float64(Float64((Float64(a * t_1) ^ 2.0) + (Float64(b * t_2) ^ 2.0)) / x_45_scale) / x_45_scale)
	t_5 = Float64(Float64(b * a) * Float64(b * Float64(-a)))
	t_6 = Float64(Float64(4.0 * t_5) / (Float64(x_45_scale * y_45_scale) ^ 2.0))
	return Float64(Float64(-sqrt(Float64(Float64(Float64(2.0 * t_6) * t_5) * Float64(Float64(t_4 + t_3) + sqrt(Float64((Float64(t_4 - t_3) ^ 2.0) + (Float64(Float64(Float64(Float64(Float64(2.0 * Float64((b ^ 2.0) - (a ^ 2.0))) * t_1) * t_2) / x_45_scale) / y_45_scale) ^ 2.0))))))) / t_6)
end
function tmp = code(a, b, angle, x_45_scale, y_45_scale)
	t_0 = (angle / 180.0) * pi;
	t_1 = sin(t_0);
	t_2 = cos(t_0);
	t_3 = ((((a * t_2) ^ 2.0) + ((b * t_1) ^ 2.0)) / y_45_scale) / y_45_scale;
	t_4 = ((((a * t_1) ^ 2.0) + ((b * t_2) ^ 2.0)) / x_45_scale) / x_45_scale;
	t_5 = (b * a) * (b * -a);
	t_6 = (4.0 * t_5) / ((x_45_scale * y_45_scale) ^ 2.0);
	tmp = -sqrt((((2.0 * t_6) * t_5) * ((t_4 + t_3) + sqrt((((t_4 - t_3) ^ 2.0) + ((((((2.0 * ((b ^ 2.0) - (a ^ 2.0))) * t_1) * t_2) / x_45_scale) / y_45_scale) ^ 2.0)))))) / t_6;
end
code[a_, b_, angle_, x$45$scale_, y$45$scale_] := Block[{t$95$0 = N[(N[(angle / 180.0), $MachinePrecision] * Pi), $MachinePrecision]}, Block[{t$95$1 = N[Sin[t$95$0], $MachinePrecision]}, Block[{t$95$2 = N[Cos[t$95$0], $MachinePrecision]}, Block[{t$95$3 = N[(N[(N[(N[Power[N[(a * t$95$2), $MachinePrecision], 2.0], $MachinePrecision] + N[Power[N[(b * t$95$1), $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision] / y$45$scale), $MachinePrecision] / y$45$scale), $MachinePrecision]}, Block[{t$95$4 = N[(N[(N[(N[Power[N[(a * t$95$1), $MachinePrecision], 2.0], $MachinePrecision] + N[Power[N[(b * t$95$2), $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision] / x$45$scale), $MachinePrecision] / x$45$scale), $MachinePrecision]}, Block[{t$95$5 = N[(N[(b * a), $MachinePrecision] * N[(b * (-a)), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$6 = N[(N[(4.0 * t$95$5), $MachinePrecision] / N[Power[N[(x$45$scale * y$45$scale), $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision]}, N[((-N[Sqrt[N[(N[(N[(2.0 * t$95$6), $MachinePrecision] * t$95$5), $MachinePrecision] * N[(N[(t$95$4 + t$95$3), $MachinePrecision] + N[Sqrt[N[(N[Power[N[(t$95$4 - t$95$3), $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] * t$95$1), $MachinePrecision] * t$95$2), $MachinePrecision] / x$45$scale), $MachinePrecision] / y$45$scale), $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]) / t$95$6), $MachinePrecision]]]]]]]]
\begin{array}{l}
t_0 := \frac{angle}{180} \cdot \pi\\
t_1 := \sin t\_0\\
t_2 := \cos t\_0\\
t_3 := \frac{\frac{{\left(a \cdot t\_2\right)}^{2} + {\left(b \cdot t\_1\right)}^{2}}{y-scale}}{y-scale}\\
t_4 := \frac{\frac{{\left(a \cdot t\_1\right)}^{2} + {\left(b \cdot t\_2\right)}^{2}}{x-scale}}{x-scale}\\
t_5 := \left(b \cdot a\right) \cdot \left(b \cdot \left(-a\right)\right)\\
t_6 := \frac{4 \cdot t\_5}{{\left(x-scale \cdot y-scale\right)}^{2}}\\
\frac{-\sqrt{\left(\left(2 \cdot t\_6\right) \cdot t\_5\right) \cdot \left(\left(t\_4 + t\_3\right) + \sqrt{{\left(t\_4 - t\_3\right)}^{2} + {\left(\frac{\frac{\left(\left(2 \cdot \left({b}^{2} - {a}^{2}\right)\right) \cdot t\_1\right) \cdot t\_2}{x-scale}}{y-scale}\right)}^{2}}\right)}}{t\_6}
\end{array}

Alternative 1: 32.8% accurate, 0.6× speedup?

\[\begin{array}{l} t_0 := \left(\left|b\right| \cdot a\right) \cdot \left(\left|b\right| \cdot \left(-a\right)\right)\\ t_1 := \frac{angle}{180} \cdot \pi\\ t_2 := \sin t\_1\\ t_3 := \cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)\\ t_4 := \cos t\_1\\ t_5 := \frac{\frac{{\left(a \cdot t\_4\right)}^{2} + {\left(\left|b\right| \cdot t\_2\right)}^{2}}{\left|y-scale\right|}}{\left|y-scale\right|}\\ t_6 := \frac{4 \cdot t\_0}{{\left(x-scale \cdot \left|y-scale\right|\right)}^{2}}\\ t_7 := \left(2 \cdot t\_6\right) \cdot t\_0\\ t_8 := \frac{\frac{{\left(a \cdot t\_2\right)}^{2} + {\left(\left|b\right| \cdot t\_4\right)}^{2}}{x-scale}}{x-scale}\\ t_9 := {\left(\left|b\right|\right)}^{2}\\ t_10 := {\left(\frac{\frac{\left(\left(2 \cdot \left(t\_9 - {a}^{2}\right)\right) \cdot t\_2\right) \cdot t\_4}{x-scale}}{\left|y-scale\right|}\right)}^{2}\\ t_11 := \frac{\frac{t\_9}{x-scale}}{x-scale}\\ \mathbf{if}\;\frac{-\sqrt{t\_7 \cdot \left(\left(t\_8 + t\_5\right) + \sqrt{{\left(t\_8 - t\_5\right)}^{2} + t\_10}\right)}}{t\_6} \leq \infty:\\ \;\;\;\;\frac{-\sqrt{t\_7 \cdot \left(\left(t\_11 + t\_5\right) + \sqrt{{\left(t\_11 - t\_5\right)}^{2} + t\_10}\right)}}{t\_6}\\ \mathbf{else}:\\ \;\;\;\;-0.25 \cdot \left(-1 \cdot \left(\left|b\right| \cdot \left(\left|y-scale\right| \cdot \sqrt{8 \cdot \left(\sqrt{{t\_3}^{4}} + {t\_3}^{2}\right)}\right)\right)\right)\\ \end{array} \]
(FPCore (a b angle x-scale y-scale)
  :precision binary64
  (let* ((t_0 (* (* (fabs b) a) (* (fabs b) (- a))))
       (t_1 (* (/ angle 180.0) PI))
       (t_2 (sin t_1))
       (t_3 (cos (* 0.005555555555555556 (* angle PI))))
       (t_4 (cos t_1))
       (t_5
        (/
         (/
          (+ (pow (* a t_4) 2.0) (pow (* (fabs b) t_2) 2.0))
          (fabs y-scale))
         (fabs y-scale)))
       (t_6 (/ (* 4.0 t_0) (pow (* x-scale (fabs y-scale)) 2.0)))
       (t_7 (* (* 2.0 t_6) t_0))
       (t_8
        (/
         (/
          (+ (pow (* a t_2) 2.0) (pow (* (fabs b) t_4) 2.0))
          x-scale)
         x-scale))
       (t_9 (pow (fabs b) 2.0))
       (t_10
        (pow
         (/
          (/ (* (* (* 2.0 (- t_9 (pow a 2.0))) t_2) t_4) x-scale)
          (fabs y-scale))
         2.0))
       (t_11 (/ (/ t_9 x-scale) x-scale)))
  (if (<=
       (/
        (-
         (sqrt
          (*
           t_7
           (+ (+ t_8 t_5) (sqrt (+ (pow (- t_8 t_5) 2.0) t_10))))))
        t_6)
       INFINITY)
    (/
     (-
      (sqrt
       (*
        t_7
        (+ (+ t_11 t_5) (sqrt (+ (pow (- t_11 t_5) 2.0) t_10))))))
     t_6)
    (*
     -0.25
     (*
      -1.0
      (*
       (fabs b)
       (*
        (fabs y-scale)
        (sqrt (* 8.0 (+ (sqrt (pow t_3 4.0)) (pow t_3 2.0)))))))))))
double code(double a, double b, double angle, double x_45_scale, double y_45_scale) {
	double t_0 = (fabs(b) * a) * (fabs(b) * -a);
	double t_1 = (angle / 180.0) * ((double) M_PI);
	double t_2 = sin(t_1);
	double t_3 = cos((0.005555555555555556 * (angle * ((double) M_PI))));
	double t_4 = cos(t_1);
	double t_5 = ((pow((a * t_4), 2.0) + pow((fabs(b) * t_2), 2.0)) / fabs(y_45_scale)) / fabs(y_45_scale);
	double t_6 = (4.0 * t_0) / pow((x_45_scale * fabs(y_45_scale)), 2.0);
	double t_7 = (2.0 * t_6) * t_0;
	double t_8 = ((pow((a * t_2), 2.0) + pow((fabs(b) * t_4), 2.0)) / x_45_scale) / x_45_scale;
	double t_9 = pow(fabs(b), 2.0);
	double t_10 = pow((((((2.0 * (t_9 - pow(a, 2.0))) * t_2) * t_4) / x_45_scale) / fabs(y_45_scale)), 2.0);
	double t_11 = (t_9 / x_45_scale) / x_45_scale;
	double tmp;
	if ((-sqrt((t_7 * ((t_8 + t_5) + sqrt((pow((t_8 - t_5), 2.0) + t_10))))) / t_6) <= ((double) INFINITY)) {
		tmp = -sqrt((t_7 * ((t_11 + t_5) + sqrt((pow((t_11 - t_5), 2.0) + t_10))))) / t_6;
	} else {
		tmp = -0.25 * (-1.0 * (fabs(b) * (fabs(y_45_scale) * sqrt((8.0 * (sqrt(pow(t_3, 4.0)) + pow(t_3, 2.0)))))));
	}
	return tmp;
}
public static double code(double a, double b, double angle, double x_45_scale, double y_45_scale) {
	double t_0 = (Math.abs(b) * a) * (Math.abs(b) * -a);
	double t_1 = (angle / 180.0) * Math.PI;
	double t_2 = Math.sin(t_1);
	double t_3 = Math.cos((0.005555555555555556 * (angle * Math.PI)));
	double t_4 = Math.cos(t_1);
	double t_5 = ((Math.pow((a * t_4), 2.0) + Math.pow((Math.abs(b) * t_2), 2.0)) / Math.abs(y_45_scale)) / Math.abs(y_45_scale);
	double t_6 = (4.0 * t_0) / Math.pow((x_45_scale * Math.abs(y_45_scale)), 2.0);
	double t_7 = (2.0 * t_6) * t_0;
	double t_8 = ((Math.pow((a * t_2), 2.0) + Math.pow((Math.abs(b) * t_4), 2.0)) / x_45_scale) / x_45_scale;
	double t_9 = Math.pow(Math.abs(b), 2.0);
	double t_10 = Math.pow((((((2.0 * (t_9 - Math.pow(a, 2.0))) * t_2) * t_4) / x_45_scale) / Math.abs(y_45_scale)), 2.0);
	double t_11 = (t_9 / x_45_scale) / x_45_scale;
	double tmp;
	if ((-Math.sqrt((t_7 * ((t_8 + t_5) + Math.sqrt((Math.pow((t_8 - t_5), 2.0) + t_10))))) / t_6) <= Double.POSITIVE_INFINITY) {
		tmp = -Math.sqrt((t_7 * ((t_11 + t_5) + Math.sqrt((Math.pow((t_11 - t_5), 2.0) + t_10))))) / t_6;
	} else {
		tmp = -0.25 * (-1.0 * (Math.abs(b) * (Math.abs(y_45_scale) * Math.sqrt((8.0 * (Math.sqrt(Math.pow(t_3, 4.0)) + Math.pow(t_3, 2.0)))))));
	}
	return tmp;
}
def code(a, b, angle, x_45_scale, y_45_scale):
	t_0 = (math.fabs(b) * a) * (math.fabs(b) * -a)
	t_1 = (angle / 180.0) * math.pi
	t_2 = math.sin(t_1)
	t_3 = math.cos((0.005555555555555556 * (angle * math.pi)))
	t_4 = math.cos(t_1)
	t_5 = ((math.pow((a * t_4), 2.0) + math.pow((math.fabs(b) * t_2), 2.0)) / math.fabs(y_45_scale)) / math.fabs(y_45_scale)
	t_6 = (4.0 * t_0) / math.pow((x_45_scale * math.fabs(y_45_scale)), 2.0)
	t_7 = (2.0 * t_6) * t_0
	t_8 = ((math.pow((a * t_2), 2.0) + math.pow((math.fabs(b) * t_4), 2.0)) / x_45_scale) / x_45_scale
	t_9 = math.pow(math.fabs(b), 2.0)
	t_10 = math.pow((((((2.0 * (t_9 - math.pow(a, 2.0))) * t_2) * t_4) / x_45_scale) / math.fabs(y_45_scale)), 2.0)
	t_11 = (t_9 / x_45_scale) / x_45_scale
	tmp = 0
	if (-math.sqrt((t_7 * ((t_8 + t_5) + math.sqrt((math.pow((t_8 - t_5), 2.0) + t_10))))) / t_6) <= math.inf:
		tmp = -math.sqrt((t_7 * ((t_11 + t_5) + math.sqrt((math.pow((t_11 - t_5), 2.0) + t_10))))) / t_6
	else:
		tmp = -0.25 * (-1.0 * (math.fabs(b) * (math.fabs(y_45_scale) * math.sqrt((8.0 * (math.sqrt(math.pow(t_3, 4.0)) + math.pow(t_3, 2.0)))))))
	return tmp
function code(a, b, angle, x_45_scale, y_45_scale)
	t_0 = Float64(Float64(abs(b) * a) * Float64(abs(b) * Float64(-a)))
	t_1 = Float64(Float64(angle / 180.0) * pi)
	t_2 = sin(t_1)
	t_3 = cos(Float64(0.005555555555555556 * Float64(angle * pi)))
	t_4 = cos(t_1)
	t_5 = Float64(Float64(Float64((Float64(a * t_4) ^ 2.0) + (Float64(abs(b) * t_2) ^ 2.0)) / abs(y_45_scale)) / abs(y_45_scale))
	t_6 = Float64(Float64(4.0 * t_0) / (Float64(x_45_scale * abs(y_45_scale)) ^ 2.0))
	t_7 = Float64(Float64(2.0 * t_6) * t_0)
	t_8 = Float64(Float64(Float64((Float64(a * t_2) ^ 2.0) + (Float64(abs(b) * t_4) ^ 2.0)) / x_45_scale) / x_45_scale)
	t_9 = abs(b) ^ 2.0
	t_10 = Float64(Float64(Float64(Float64(Float64(2.0 * Float64(t_9 - (a ^ 2.0))) * t_2) * t_4) / x_45_scale) / abs(y_45_scale)) ^ 2.0
	t_11 = Float64(Float64(t_9 / x_45_scale) / x_45_scale)
	tmp = 0.0
	if (Float64(Float64(-sqrt(Float64(t_7 * Float64(Float64(t_8 + t_5) + sqrt(Float64((Float64(t_8 - t_5) ^ 2.0) + t_10)))))) / t_6) <= Inf)
		tmp = Float64(Float64(-sqrt(Float64(t_7 * Float64(Float64(t_11 + t_5) + sqrt(Float64((Float64(t_11 - t_5) ^ 2.0) + t_10)))))) / t_6);
	else
		tmp = Float64(-0.25 * Float64(-1.0 * Float64(abs(b) * Float64(abs(y_45_scale) * sqrt(Float64(8.0 * Float64(sqrt((t_3 ^ 4.0)) + (t_3 ^ 2.0))))))));
	end
	return tmp
end
function tmp_2 = code(a, b, angle, x_45_scale, y_45_scale)
	t_0 = (abs(b) * a) * (abs(b) * -a);
	t_1 = (angle / 180.0) * pi;
	t_2 = sin(t_1);
	t_3 = cos((0.005555555555555556 * (angle * pi)));
	t_4 = cos(t_1);
	t_5 = ((((a * t_4) ^ 2.0) + ((abs(b) * t_2) ^ 2.0)) / abs(y_45_scale)) / abs(y_45_scale);
	t_6 = (4.0 * t_0) / ((x_45_scale * abs(y_45_scale)) ^ 2.0);
	t_7 = (2.0 * t_6) * t_0;
	t_8 = ((((a * t_2) ^ 2.0) + ((abs(b) * t_4) ^ 2.0)) / x_45_scale) / x_45_scale;
	t_9 = abs(b) ^ 2.0;
	t_10 = (((((2.0 * (t_9 - (a ^ 2.0))) * t_2) * t_4) / x_45_scale) / abs(y_45_scale)) ^ 2.0;
	t_11 = (t_9 / x_45_scale) / x_45_scale;
	tmp = 0.0;
	if ((-sqrt((t_7 * ((t_8 + t_5) + sqrt((((t_8 - t_5) ^ 2.0) + t_10))))) / t_6) <= Inf)
		tmp = -sqrt((t_7 * ((t_11 + t_5) + sqrt((((t_11 - t_5) ^ 2.0) + t_10))))) / t_6;
	else
		tmp = -0.25 * (-1.0 * (abs(b) * (abs(y_45_scale) * sqrt((8.0 * (sqrt((t_3 ^ 4.0)) + (t_3 ^ 2.0)))))));
	end
	tmp_2 = tmp;
end
code[a_, b_, angle_, x$45$scale_, y$45$scale_] := Block[{t$95$0 = N[(N[(N[Abs[b], $MachinePrecision] * a), $MachinePrecision] * N[(N[Abs[b], $MachinePrecision] * (-a)), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$1 = N[(N[(angle / 180.0), $MachinePrecision] * Pi), $MachinePrecision]}, Block[{t$95$2 = N[Sin[t$95$1], $MachinePrecision]}, Block[{t$95$3 = N[Cos[N[(0.005555555555555556 * N[(angle * Pi), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]}, Block[{t$95$4 = N[Cos[t$95$1], $MachinePrecision]}, Block[{t$95$5 = N[(N[(N[(N[Power[N[(a * t$95$4), $MachinePrecision], 2.0], $MachinePrecision] + N[Power[N[(N[Abs[b], $MachinePrecision] * t$95$2), $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision] / N[Abs[y$45$scale], $MachinePrecision]), $MachinePrecision] / N[Abs[y$45$scale], $MachinePrecision]), $MachinePrecision]}, Block[{t$95$6 = N[(N[(4.0 * t$95$0), $MachinePrecision] / N[Power[N[(x$45$scale * N[Abs[y$45$scale], $MachinePrecision]), $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision]}, Block[{t$95$7 = N[(N[(2.0 * t$95$6), $MachinePrecision] * t$95$0), $MachinePrecision]}, Block[{t$95$8 = N[(N[(N[(N[Power[N[(a * t$95$2), $MachinePrecision], 2.0], $MachinePrecision] + N[Power[N[(N[Abs[b], $MachinePrecision] * t$95$4), $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision] / x$45$scale), $MachinePrecision] / x$45$scale), $MachinePrecision]}, Block[{t$95$9 = N[Power[N[Abs[b], $MachinePrecision], 2.0], $MachinePrecision]}, Block[{t$95$10 = N[Power[N[(N[(N[(N[(N[(2.0 * N[(t$95$9 - N[Power[a, 2.0], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * t$95$2), $MachinePrecision] * t$95$4), $MachinePrecision] / x$45$scale), $MachinePrecision] / N[Abs[y$45$scale], $MachinePrecision]), $MachinePrecision], 2.0], $MachinePrecision]}, Block[{t$95$11 = N[(N[(t$95$9 / x$45$scale), $MachinePrecision] / x$45$scale), $MachinePrecision]}, If[LessEqual[N[((-N[Sqrt[N[(t$95$7 * N[(N[(t$95$8 + t$95$5), $MachinePrecision] + N[Sqrt[N[(N[Power[N[(t$95$8 - t$95$5), $MachinePrecision], 2.0], $MachinePrecision] + t$95$10), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]) / t$95$6), $MachinePrecision], Infinity], N[((-N[Sqrt[N[(t$95$7 * N[(N[(t$95$11 + t$95$5), $MachinePrecision] + N[Sqrt[N[(N[Power[N[(t$95$11 - t$95$5), $MachinePrecision], 2.0], $MachinePrecision] + t$95$10), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]) / t$95$6), $MachinePrecision], N[(-0.25 * N[(-1.0 * N[(N[Abs[b], $MachinePrecision] * N[(N[Abs[y$45$scale], $MachinePrecision] * N[Sqrt[N[(8.0 * N[(N[Sqrt[N[Power[t$95$3, 4.0], $MachinePrecision]], $MachinePrecision] + N[Power[t$95$3, 2.0], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]]]]]]]]
\begin{array}{l}
t_0 := \left(\left|b\right| \cdot a\right) \cdot \left(\left|b\right| \cdot \left(-a\right)\right)\\
t_1 := \frac{angle}{180} \cdot \pi\\
t_2 := \sin t\_1\\
t_3 := \cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)\\
t_4 := \cos t\_1\\
t_5 := \frac{\frac{{\left(a \cdot t\_4\right)}^{2} + {\left(\left|b\right| \cdot t\_2\right)}^{2}}{\left|y-scale\right|}}{\left|y-scale\right|}\\
t_6 := \frac{4 \cdot t\_0}{{\left(x-scale \cdot \left|y-scale\right|\right)}^{2}}\\
t_7 := \left(2 \cdot t\_6\right) \cdot t\_0\\
t_8 := \frac{\frac{{\left(a \cdot t\_2\right)}^{2} + {\left(\left|b\right| \cdot t\_4\right)}^{2}}{x-scale}}{x-scale}\\
t_9 := {\left(\left|b\right|\right)}^{2}\\
t_10 := {\left(\frac{\frac{\left(\left(2 \cdot \left(t\_9 - {a}^{2}\right)\right) \cdot t\_2\right) \cdot t\_4}{x-scale}}{\left|y-scale\right|}\right)}^{2}\\
t_11 := \frac{\frac{t\_9}{x-scale}}{x-scale}\\
\mathbf{if}\;\frac{-\sqrt{t\_7 \cdot \left(\left(t\_8 + t\_5\right) + \sqrt{{\left(t\_8 - t\_5\right)}^{2} + t\_10}\right)}}{t\_6} \leq \infty:\\
\;\;\;\;\frac{-\sqrt{t\_7 \cdot \left(\left(t\_11 + t\_5\right) + \sqrt{{\left(t\_11 - t\_5\right)}^{2} + t\_10}\right)}}{t\_6}\\

\mathbf{else}:\\
\;\;\;\;-0.25 \cdot \left(-1 \cdot \left(\left|b\right| \cdot \left(\left|y-scale\right| \cdot \sqrt{8 \cdot \left(\sqrt{{t\_3}^{4}} + {t\_3}^{2}\right)}\right)\right)\right)\\


\end{array}
Derivation
  1. Split input into 2 regimes
  2. if (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 #s(literal 4 binary64) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) #s(literal 2 binary64)))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (+.f64 (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle #s(literal 180 binary64)) (PI.f64)))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle #s(literal 180 binary64)) (PI.f64)))) #s(literal 2 binary64))) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle #s(literal 180 binary64)) (PI.f64)))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle #s(literal 180 binary64)) (PI.f64)))) #s(literal 2 binary64))) y-scale) y-scale)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle #s(literal 180 binary64)) (PI.f64)))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle #s(literal 180 binary64)) (PI.f64)))) #s(literal 2 binary64))) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle #s(literal 180 binary64)) (PI.f64)))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle #s(literal 180 binary64)) (PI.f64)))) #s(literal 2 binary64))) y-scale) y-scale)) #s(literal 2 binary64)) (pow.f64 (/.f64 (/.f64 (*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 b #s(literal 2 binary64)) (pow.f64 a #s(literal 2 binary64)))) (sin.f64 (*.f64 (/.f64 angle #s(literal 180 binary64)) (PI.f64)))) (cos.f64 (*.f64 (/.f64 angle #s(literal 180 binary64)) (PI.f64)))) x-scale) y-scale) #s(literal 2 binary64)))))))) (/.f64 (*.f64 #s(literal 4 binary64) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) #s(literal 2 binary64)))) < +inf.0

    1. Initial program 2.6%

      \[\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. Taylor expanded in angle around 0

      \[\leadsto \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{\color{blue}{\frac{{b}^{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}}} \]
    3. Step-by-step derivation
      1. lower-/.f64N/A

        \[\leadsto \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{{b}^{2}}{\color{blue}{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. lower-pow.f642.5%

        \[\leadsto \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{{b}^{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}}} \]
    4. Applied rewrites2.5%

      \[\leadsto \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{\color{blue}{\frac{{b}^{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}}} \]
    5. Taylor expanded in angle around 0

      \[\leadsto \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{{b}^{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{\color{blue}{\frac{{b}^{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}}} \]
    6. Step-by-step derivation
      1. lower-/.f64N/A

        \[\leadsto \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{{b}^{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{{b}^{2}}{\color{blue}{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. lower-pow.f644.0%

        \[\leadsto \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{{b}^{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{{b}^{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}}} \]
    7. Applied rewrites4.0%

      \[\leadsto \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{{b}^{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{\color{blue}{\frac{{b}^{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}}} \]

    if +inf.0 < (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 #s(literal 4 binary64) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) #s(literal 2 binary64)))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (+.f64 (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle #s(literal 180 binary64)) (PI.f64)))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle #s(literal 180 binary64)) (PI.f64)))) #s(literal 2 binary64))) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle #s(literal 180 binary64)) (PI.f64)))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle #s(literal 180 binary64)) (PI.f64)))) #s(literal 2 binary64))) y-scale) y-scale)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle #s(literal 180 binary64)) (PI.f64)))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle #s(literal 180 binary64)) (PI.f64)))) #s(literal 2 binary64))) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle #s(literal 180 binary64)) (PI.f64)))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle #s(literal 180 binary64)) (PI.f64)))) #s(literal 2 binary64))) y-scale) y-scale)) #s(literal 2 binary64)) (pow.f64 (/.f64 (/.f64 (*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 b #s(literal 2 binary64)) (pow.f64 a #s(literal 2 binary64)))) (sin.f64 (*.f64 (/.f64 angle #s(literal 180 binary64)) (PI.f64)))) (cos.f64 (*.f64 (/.f64 angle #s(literal 180 binary64)) (PI.f64)))) x-scale) y-scale) #s(literal 2 binary64)))))))) (/.f64 (*.f64 #s(literal 4 binary64) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) #s(literal 2 binary64))))

    1. Initial program 2.6%

      \[\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. Taylor expanded in y-scale around -inf

      \[\leadsto \color{blue}{\frac{-1}{4} \cdot \frac{{x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{{a}^{4} \cdot \left({b}^{4} \cdot \left(\sqrt{{\left(\frac{{a}^{2} \cdot {\sin \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}} + \frac{{b}^{2} \cdot {\cos \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}\right)}^{2}} + \left(\frac{{a}^{2} \cdot {\sin \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}} + \frac{{b}^{2} \cdot {\cos \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}\right)\right)\right)}{{x-scale}^{2}}}\right)}{{a}^{2} \cdot {b}^{2}}} \]
    3. Applied rewrites0.5%

      \[\leadsto \color{blue}{-0.25 \cdot \frac{{x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{{a}^{4} \cdot \left({b}^{4} \cdot \left(\sqrt{{\left(\frac{{a}^{2} \cdot {\sin \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}} + \frac{{b}^{2} \cdot {\cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}\right)}^{2}} + \left(\frac{{a}^{2} \cdot {\sin \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}} + \frac{{b}^{2} \cdot {\cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}\right)\right)\right)}{{x-scale}^{2}}}\right)}{{a}^{2} \cdot {b}^{2}}} \]
    4. Taylor expanded in a around 0

      \[\leadsto -0.25 \cdot \frac{{x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{{b}^{4} \cdot \left(\sqrt{\frac{{b}^{4} \cdot {\cos \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{4}}{{x-scale}^{4}}} + \frac{{b}^{2} \cdot {\cos \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}\right)}{{x-scale}^{2}}}\right)}{\color{blue}{{b}^{2}}} \]
    5. Applied rewrites1.8%

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

      \[\leadsto -0.25 \cdot \left(-1 \cdot \left(b \cdot \color{blue}{\left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{4}}{{x-scale}^{4}}} + \frac{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)}\right)\right) \]
    7. Step-by-step derivation
      1. lower-*.f64N/A

        \[\leadsto \frac{-1}{4} \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \color{blue}{\left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \mathsf{PI}\left(\right)\right)\right)}^{4}}{{x-scale}^{4}}} + \frac{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \mathsf{PI}\left(\right)\right)\right)}^{2}}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)}\right)\right)\right) \]
      2. lower-*.f64N/A

        \[\leadsto \frac{-1}{4} \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \left(y-scale \cdot \color{blue}{\sqrt{8 \cdot \frac{\sqrt{\frac{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \mathsf{PI}\left(\right)\right)\right)}^{4}}{{x-scale}^{4}}} + \frac{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \mathsf{PI}\left(\right)\right)\right)}^{2}}{{x-scale}^{2}}}{{x-scale}^{2}}}}\right)\right)\right)\right) \]
    8. Applied rewrites5.9%

      \[\leadsto -0.25 \cdot \left(-1 \cdot \left(b \cdot \color{blue}{\left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{{\cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)}^{4}}{{x-scale}^{4}}} + \frac{{\cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)}\right)\right) \]
    9. Taylor expanded in x-scale around 0

      \[\leadsto -0.25 \cdot \left(-1 \cdot \left(b \cdot \left(y-scale \cdot \sqrt{8 \cdot \left(\sqrt{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{4}} + {\cos \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{2}\right)}\right)\right)\right) \]
    10. Step-by-step derivation
      1. lower-*.f64N/A

        \[\leadsto \frac{-1}{4} \cdot \left(-1 \cdot \left(b \cdot \left(y-scale \cdot \sqrt{8 \cdot \left(\sqrt{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \mathsf{PI}\left(\right)\right)\right)}^{4}} + {\cos \left(\frac{1}{180} \cdot \left(angle \cdot \mathsf{PI}\left(\right)\right)\right)}^{2}\right)}\right)\right)\right) \]
      2. lower-sqrt.f64N/A

        \[\leadsto \frac{-1}{4} \cdot \left(-1 \cdot \left(b \cdot \left(y-scale \cdot \sqrt{8 \cdot \left(\sqrt{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \mathsf{PI}\left(\right)\right)\right)}^{4}} + {\cos \left(\frac{1}{180} \cdot \left(angle \cdot \mathsf{PI}\left(\right)\right)\right)}^{2}\right)}\right)\right)\right) \]
      3. lower-*.f64N/A

        \[\leadsto \frac{-1}{4} \cdot \left(-1 \cdot \left(b \cdot \left(y-scale \cdot \sqrt{8 \cdot \left(\sqrt{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \mathsf{PI}\left(\right)\right)\right)}^{4}} + {\cos \left(\frac{1}{180} \cdot \left(angle \cdot \mathsf{PI}\left(\right)\right)\right)}^{2}\right)}\right)\right)\right) \]
      4. lower-+.f64N/A

        \[\leadsto \frac{-1}{4} \cdot \left(-1 \cdot \left(b \cdot \left(y-scale \cdot \sqrt{8 \cdot \left(\sqrt{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \mathsf{PI}\left(\right)\right)\right)}^{4}} + {\cos \left(\frac{1}{180} \cdot \left(angle \cdot \mathsf{PI}\left(\right)\right)\right)}^{2}\right)}\right)\right)\right) \]
    11. Applied rewrites17.8%

      \[\leadsto -0.25 \cdot \left(-1 \cdot \left(b \cdot \left(y-scale \cdot \sqrt{8 \cdot \left(\sqrt{{\cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)}^{4}} + {\cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)}^{2}\right)}\right)\right)\right) \]
  3. Recombined 2 regimes into one program.
  4. Add Preprocessing

Alternative 2: 32.7% accurate, 0.8× speedup?

\[\begin{array}{l} t_0 := \left|b\right| \cdot a\\ t_1 := t\_0 \cdot \left(\left|b\right| \cdot \left(-a\right)\right)\\ t_2 := \frac{angle}{180} \cdot \pi\\ t_3 := \cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)\\ t_4 := \sin t\_2\\ t_5 := \left(4 \cdot t\_0\right) \cdot \left(\left(-a\right) \cdot \left|b\right|\right)\\ t_6 := x-scale \cdot \left|y-scale\right|\\ t_7 := t\_6 \cdot t\_6\\ t_8 := \frac{4 \cdot t\_1}{{t\_6}^{2}}\\ t_9 := \frac{a \cdot a}{\left|y-scale\right| \cdot \left|y-scale\right|}\\ t_10 := \cos t\_2\\ t_11 := \frac{\frac{{\left(a \cdot t\_10\right)}^{2} + {\left(\left|b\right| \cdot t\_4\right)}^{2}}{\left|y-scale\right|}}{\left|y-scale\right|}\\ t_12 := \frac{\frac{{\left(a \cdot t\_4\right)}^{2} + {\left(\left|b\right| \cdot t\_10\right)}^{2}}{x-scale}}{x-scale}\\ t_13 := \frac{\left|b\right| \cdot \left|b\right|}{x-scale \cdot x-scale}\\ \mathbf{if}\;\frac{-\sqrt{\left(\left(2 \cdot t\_8\right) \cdot t\_1\right) \cdot \left(\left(t\_12 + t\_11\right) + \sqrt{{\left(t\_12 - t\_11\right)}^{2} + {\left(\frac{\frac{\left(\left(2 \cdot \left({\left(\left|b\right|\right)}^{2} - {a}^{2}\right)\right) \cdot t\_4\right) \cdot t\_10}{x-scale}}{\left|y-scale\right|}\right)}^{2}}\right)}}{t\_8} \leq \infty:\\ \;\;\;\;\frac{-\sqrt{\left(\left(t\_9 + t\_13\right) + \left|t\_13 - t\_9\right|\right) \cdot \left(\left(\frac{t\_5}{t\_7} \cdot 2\right) \cdot \left(\left(t\_0 \cdot \left|b\right|\right) \cdot \left(-a\right)\right)\right)}}{t\_5} \cdot t\_7\\ \mathbf{else}:\\ \;\;\;\;-0.25 \cdot \left(-1 \cdot \left(\left|b\right| \cdot \left(\left|y-scale\right| \cdot \sqrt{8 \cdot \left(\sqrt{{t\_3}^{4}} + {t\_3}^{2}\right)}\right)\right)\right)\\ \end{array} \]
(FPCore (a b angle x-scale y-scale)
  :precision binary64
  (let* ((t_0 (* (fabs b) a))
       (t_1 (* t_0 (* (fabs b) (- a))))
       (t_2 (* (/ angle 180.0) PI))
       (t_3 (cos (* 0.005555555555555556 (* angle PI))))
       (t_4 (sin t_2))
       (t_5 (* (* 4.0 t_0) (* (- a) (fabs b))))
       (t_6 (* x-scale (fabs y-scale)))
       (t_7 (* t_6 t_6))
       (t_8 (/ (* 4.0 t_1) (pow t_6 2.0)))
       (t_9 (/ (* a a) (* (fabs y-scale) (fabs y-scale))))
       (t_10 (cos t_2))
       (t_11
        (/
         (/
          (+ (pow (* a t_10) 2.0) (pow (* (fabs b) t_4) 2.0))
          (fabs y-scale))
         (fabs y-scale)))
       (t_12
        (/
         (/
          (+ (pow (* a t_4) 2.0) (pow (* (fabs b) t_10) 2.0))
          x-scale)
         x-scale))
       (t_13 (/ (* (fabs b) (fabs b)) (* x-scale x-scale))))
  (if (<=
       (/
        (-
         (sqrt
          (*
           (* (* 2.0 t_8) t_1)
           (+
            (+ t_12 t_11)
            (sqrt
             (+
              (pow (- t_12 t_11) 2.0)
              (pow
               (/
                (/
                 (*
                  (* (* 2.0 (- (pow (fabs b) 2.0) (pow a 2.0))) t_4)
                  t_10)
                 x-scale)
                (fabs y-scale))
               2.0)))))))
        t_8)
       INFINITY)
    (*
     (/
      (-
       (sqrt
        (*
         (+ (+ t_9 t_13) (fabs (- t_13 t_9)))
         (* (* (/ t_5 t_7) 2.0) (* (* t_0 (fabs b)) (- a))))))
      t_5)
     t_7)
    (*
     -0.25
     (*
      -1.0
      (*
       (fabs b)
       (*
        (fabs y-scale)
        (sqrt (* 8.0 (+ (sqrt (pow t_3 4.0)) (pow t_3 2.0)))))))))))
double code(double a, double b, double angle, double x_45_scale, double y_45_scale) {
	double t_0 = fabs(b) * a;
	double t_1 = t_0 * (fabs(b) * -a);
	double t_2 = (angle / 180.0) * ((double) M_PI);
	double t_3 = cos((0.005555555555555556 * (angle * ((double) M_PI))));
	double t_4 = sin(t_2);
	double t_5 = (4.0 * t_0) * (-a * fabs(b));
	double t_6 = x_45_scale * fabs(y_45_scale);
	double t_7 = t_6 * t_6;
	double t_8 = (4.0 * t_1) / pow(t_6, 2.0);
	double t_9 = (a * a) / (fabs(y_45_scale) * fabs(y_45_scale));
	double t_10 = cos(t_2);
	double t_11 = ((pow((a * t_10), 2.0) + pow((fabs(b) * t_4), 2.0)) / fabs(y_45_scale)) / fabs(y_45_scale);
	double t_12 = ((pow((a * t_4), 2.0) + pow((fabs(b) * t_10), 2.0)) / x_45_scale) / x_45_scale;
	double t_13 = (fabs(b) * fabs(b)) / (x_45_scale * x_45_scale);
	double tmp;
	if ((-sqrt((((2.0 * t_8) * t_1) * ((t_12 + t_11) + sqrt((pow((t_12 - t_11), 2.0) + pow((((((2.0 * (pow(fabs(b), 2.0) - pow(a, 2.0))) * t_4) * t_10) / x_45_scale) / fabs(y_45_scale)), 2.0)))))) / t_8) <= ((double) INFINITY)) {
		tmp = (-sqrt((((t_9 + t_13) + fabs((t_13 - t_9))) * (((t_5 / t_7) * 2.0) * ((t_0 * fabs(b)) * -a)))) / t_5) * t_7;
	} else {
		tmp = -0.25 * (-1.0 * (fabs(b) * (fabs(y_45_scale) * sqrt((8.0 * (sqrt(pow(t_3, 4.0)) + pow(t_3, 2.0)))))));
	}
	return tmp;
}
public static double code(double a, double b, double angle, double x_45_scale, double y_45_scale) {
	double t_0 = Math.abs(b) * a;
	double t_1 = t_0 * (Math.abs(b) * -a);
	double t_2 = (angle / 180.0) * Math.PI;
	double t_3 = Math.cos((0.005555555555555556 * (angle * Math.PI)));
	double t_4 = Math.sin(t_2);
	double t_5 = (4.0 * t_0) * (-a * Math.abs(b));
	double t_6 = x_45_scale * Math.abs(y_45_scale);
	double t_7 = t_6 * t_6;
	double t_8 = (4.0 * t_1) / Math.pow(t_6, 2.0);
	double t_9 = (a * a) / (Math.abs(y_45_scale) * Math.abs(y_45_scale));
	double t_10 = Math.cos(t_2);
	double t_11 = ((Math.pow((a * t_10), 2.0) + Math.pow((Math.abs(b) * t_4), 2.0)) / Math.abs(y_45_scale)) / Math.abs(y_45_scale);
	double t_12 = ((Math.pow((a * t_4), 2.0) + Math.pow((Math.abs(b) * t_10), 2.0)) / x_45_scale) / x_45_scale;
	double t_13 = (Math.abs(b) * Math.abs(b)) / (x_45_scale * x_45_scale);
	double tmp;
	if ((-Math.sqrt((((2.0 * t_8) * t_1) * ((t_12 + t_11) + Math.sqrt((Math.pow((t_12 - t_11), 2.0) + Math.pow((((((2.0 * (Math.pow(Math.abs(b), 2.0) - Math.pow(a, 2.0))) * t_4) * t_10) / x_45_scale) / Math.abs(y_45_scale)), 2.0)))))) / t_8) <= Double.POSITIVE_INFINITY) {
		tmp = (-Math.sqrt((((t_9 + t_13) + Math.abs((t_13 - t_9))) * (((t_5 / t_7) * 2.0) * ((t_0 * Math.abs(b)) * -a)))) / t_5) * t_7;
	} else {
		tmp = -0.25 * (-1.0 * (Math.abs(b) * (Math.abs(y_45_scale) * Math.sqrt((8.0 * (Math.sqrt(Math.pow(t_3, 4.0)) + Math.pow(t_3, 2.0)))))));
	}
	return tmp;
}
def code(a, b, angle, x_45_scale, y_45_scale):
	t_0 = math.fabs(b) * a
	t_1 = t_0 * (math.fabs(b) * -a)
	t_2 = (angle / 180.0) * math.pi
	t_3 = math.cos((0.005555555555555556 * (angle * math.pi)))
	t_4 = math.sin(t_2)
	t_5 = (4.0 * t_0) * (-a * math.fabs(b))
	t_6 = x_45_scale * math.fabs(y_45_scale)
	t_7 = t_6 * t_6
	t_8 = (4.0 * t_1) / math.pow(t_6, 2.0)
	t_9 = (a * a) / (math.fabs(y_45_scale) * math.fabs(y_45_scale))
	t_10 = math.cos(t_2)
	t_11 = ((math.pow((a * t_10), 2.0) + math.pow((math.fabs(b) * t_4), 2.0)) / math.fabs(y_45_scale)) / math.fabs(y_45_scale)
	t_12 = ((math.pow((a * t_4), 2.0) + math.pow((math.fabs(b) * t_10), 2.0)) / x_45_scale) / x_45_scale
	t_13 = (math.fabs(b) * math.fabs(b)) / (x_45_scale * x_45_scale)
	tmp = 0
	if (-math.sqrt((((2.0 * t_8) * t_1) * ((t_12 + t_11) + math.sqrt((math.pow((t_12 - t_11), 2.0) + math.pow((((((2.0 * (math.pow(math.fabs(b), 2.0) - math.pow(a, 2.0))) * t_4) * t_10) / x_45_scale) / math.fabs(y_45_scale)), 2.0)))))) / t_8) <= math.inf:
		tmp = (-math.sqrt((((t_9 + t_13) + math.fabs((t_13 - t_9))) * (((t_5 / t_7) * 2.0) * ((t_0 * math.fabs(b)) * -a)))) / t_5) * t_7
	else:
		tmp = -0.25 * (-1.0 * (math.fabs(b) * (math.fabs(y_45_scale) * math.sqrt((8.0 * (math.sqrt(math.pow(t_3, 4.0)) + math.pow(t_3, 2.0)))))))
	return tmp
function code(a, b, angle, x_45_scale, y_45_scale)
	t_0 = Float64(abs(b) * a)
	t_1 = Float64(t_0 * Float64(abs(b) * Float64(-a)))
	t_2 = Float64(Float64(angle / 180.0) * pi)
	t_3 = cos(Float64(0.005555555555555556 * Float64(angle * pi)))
	t_4 = sin(t_2)
	t_5 = Float64(Float64(4.0 * t_0) * Float64(Float64(-a) * abs(b)))
	t_6 = Float64(x_45_scale * abs(y_45_scale))
	t_7 = Float64(t_6 * t_6)
	t_8 = Float64(Float64(4.0 * t_1) / (t_6 ^ 2.0))
	t_9 = Float64(Float64(a * a) / Float64(abs(y_45_scale) * abs(y_45_scale)))
	t_10 = cos(t_2)
	t_11 = Float64(Float64(Float64((Float64(a * t_10) ^ 2.0) + (Float64(abs(b) * t_4) ^ 2.0)) / abs(y_45_scale)) / abs(y_45_scale))
	t_12 = Float64(Float64(Float64((Float64(a * t_4) ^ 2.0) + (Float64(abs(b) * t_10) ^ 2.0)) / x_45_scale) / x_45_scale)
	t_13 = Float64(Float64(abs(b) * abs(b)) / Float64(x_45_scale * x_45_scale))
	tmp = 0.0
	if (Float64(Float64(-sqrt(Float64(Float64(Float64(2.0 * t_8) * t_1) * Float64(Float64(t_12 + t_11) + sqrt(Float64((Float64(t_12 - t_11) ^ 2.0) + (Float64(Float64(Float64(Float64(Float64(2.0 * Float64((abs(b) ^ 2.0) - (a ^ 2.0))) * t_4) * t_10) / x_45_scale) / abs(y_45_scale)) ^ 2.0))))))) / t_8) <= Inf)
		tmp = Float64(Float64(Float64(-sqrt(Float64(Float64(Float64(t_9 + t_13) + abs(Float64(t_13 - t_9))) * Float64(Float64(Float64(t_5 / t_7) * 2.0) * Float64(Float64(t_0 * abs(b)) * Float64(-a)))))) / t_5) * t_7);
	else
		tmp = Float64(-0.25 * Float64(-1.0 * Float64(abs(b) * Float64(abs(y_45_scale) * sqrt(Float64(8.0 * Float64(sqrt((t_3 ^ 4.0)) + (t_3 ^ 2.0))))))));
	end
	return tmp
end
function tmp_2 = code(a, b, angle, x_45_scale, y_45_scale)
	t_0 = abs(b) * a;
	t_1 = t_0 * (abs(b) * -a);
	t_2 = (angle / 180.0) * pi;
	t_3 = cos((0.005555555555555556 * (angle * pi)));
	t_4 = sin(t_2);
	t_5 = (4.0 * t_0) * (-a * abs(b));
	t_6 = x_45_scale * abs(y_45_scale);
	t_7 = t_6 * t_6;
	t_8 = (4.0 * t_1) / (t_6 ^ 2.0);
	t_9 = (a * a) / (abs(y_45_scale) * abs(y_45_scale));
	t_10 = cos(t_2);
	t_11 = ((((a * t_10) ^ 2.0) + ((abs(b) * t_4) ^ 2.0)) / abs(y_45_scale)) / abs(y_45_scale);
	t_12 = ((((a * t_4) ^ 2.0) + ((abs(b) * t_10) ^ 2.0)) / x_45_scale) / x_45_scale;
	t_13 = (abs(b) * abs(b)) / (x_45_scale * x_45_scale);
	tmp = 0.0;
	if ((-sqrt((((2.0 * t_8) * t_1) * ((t_12 + t_11) + sqrt((((t_12 - t_11) ^ 2.0) + ((((((2.0 * ((abs(b) ^ 2.0) - (a ^ 2.0))) * t_4) * t_10) / x_45_scale) / abs(y_45_scale)) ^ 2.0)))))) / t_8) <= Inf)
		tmp = (-sqrt((((t_9 + t_13) + abs((t_13 - t_9))) * (((t_5 / t_7) * 2.0) * ((t_0 * abs(b)) * -a)))) / t_5) * t_7;
	else
		tmp = -0.25 * (-1.0 * (abs(b) * (abs(y_45_scale) * sqrt((8.0 * (sqrt((t_3 ^ 4.0)) + (t_3 ^ 2.0)))))));
	end
	tmp_2 = tmp;
end
code[a_, b_, angle_, x$45$scale_, y$45$scale_] := Block[{t$95$0 = N[(N[Abs[b], $MachinePrecision] * a), $MachinePrecision]}, Block[{t$95$1 = N[(t$95$0 * N[(N[Abs[b], $MachinePrecision] * (-a)), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(N[(angle / 180.0), $MachinePrecision] * Pi), $MachinePrecision]}, Block[{t$95$3 = N[Cos[N[(0.005555555555555556 * N[(angle * Pi), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]}, Block[{t$95$4 = N[Sin[t$95$2], $MachinePrecision]}, Block[{t$95$5 = N[(N[(4.0 * t$95$0), $MachinePrecision] * N[((-a) * N[Abs[b], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$6 = N[(x$45$scale * N[Abs[y$45$scale], $MachinePrecision]), $MachinePrecision]}, Block[{t$95$7 = N[(t$95$6 * t$95$6), $MachinePrecision]}, Block[{t$95$8 = N[(N[(4.0 * t$95$1), $MachinePrecision] / N[Power[t$95$6, 2.0], $MachinePrecision]), $MachinePrecision]}, Block[{t$95$9 = N[(N[(a * a), $MachinePrecision] / N[(N[Abs[y$45$scale], $MachinePrecision] * N[Abs[y$45$scale], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$10 = N[Cos[t$95$2], $MachinePrecision]}, Block[{t$95$11 = N[(N[(N[(N[Power[N[(a * t$95$10), $MachinePrecision], 2.0], $MachinePrecision] + N[Power[N[(N[Abs[b], $MachinePrecision] * t$95$4), $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision] / N[Abs[y$45$scale], $MachinePrecision]), $MachinePrecision] / N[Abs[y$45$scale], $MachinePrecision]), $MachinePrecision]}, Block[{t$95$12 = N[(N[(N[(N[Power[N[(a * t$95$4), $MachinePrecision], 2.0], $MachinePrecision] + N[Power[N[(N[Abs[b], $MachinePrecision] * t$95$10), $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision] / x$45$scale), $MachinePrecision] / x$45$scale), $MachinePrecision]}, Block[{t$95$13 = N[(N[(N[Abs[b], $MachinePrecision] * N[Abs[b], $MachinePrecision]), $MachinePrecision] / N[(x$45$scale * x$45$scale), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[N[((-N[Sqrt[N[(N[(N[(2.0 * t$95$8), $MachinePrecision] * t$95$1), $MachinePrecision] * N[(N[(t$95$12 + t$95$11), $MachinePrecision] + N[Sqrt[N[(N[Power[N[(t$95$12 - t$95$11), $MachinePrecision], 2.0], $MachinePrecision] + N[Power[N[(N[(N[(N[(N[(2.0 * N[(N[Power[N[Abs[b], $MachinePrecision], 2.0], $MachinePrecision] - N[Power[a, 2.0], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * t$95$4), $MachinePrecision] * t$95$10), $MachinePrecision] / x$45$scale), $MachinePrecision] / N[Abs[y$45$scale], $MachinePrecision]), $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]) / t$95$8), $MachinePrecision], Infinity], N[(N[((-N[Sqrt[N[(N[(N[(t$95$9 + t$95$13), $MachinePrecision] + N[Abs[N[(t$95$13 - t$95$9), $MachinePrecision]], $MachinePrecision]), $MachinePrecision] * N[(N[(N[(t$95$5 / t$95$7), $MachinePrecision] * 2.0), $MachinePrecision] * N[(N[(t$95$0 * N[Abs[b], $MachinePrecision]), $MachinePrecision] * (-a)), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]) / t$95$5), $MachinePrecision] * t$95$7), $MachinePrecision], N[(-0.25 * N[(-1.0 * N[(N[Abs[b], $MachinePrecision] * N[(N[Abs[y$45$scale], $MachinePrecision] * N[Sqrt[N[(8.0 * N[(N[Sqrt[N[Power[t$95$3, 4.0], $MachinePrecision]], $MachinePrecision] + N[Power[t$95$3, 2.0], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]]]]]]]]]]
\begin{array}{l}
t_0 := \left|b\right| \cdot a\\
t_1 := t\_0 \cdot \left(\left|b\right| \cdot \left(-a\right)\right)\\
t_2 := \frac{angle}{180} \cdot \pi\\
t_3 := \cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)\\
t_4 := \sin t\_2\\
t_5 := \left(4 \cdot t\_0\right) \cdot \left(\left(-a\right) \cdot \left|b\right|\right)\\
t_6 := x-scale \cdot \left|y-scale\right|\\
t_7 := t\_6 \cdot t\_6\\
t_8 := \frac{4 \cdot t\_1}{{t\_6}^{2}}\\
t_9 := \frac{a \cdot a}{\left|y-scale\right| \cdot \left|y-scale\right|}\\
t_10 := \cos t\_2\\
t_11 := \frac{\frac{{\left(a \cdot t\_10\right)}^{2} + {\left(\left|b\right| \cdot t\_4\right)}^{2}}{\left|y-scale\right|}}{\left|y-scale\right|}\\
t_12 := \frac{\frac{{\left(a \cdot t\_4\right)}^{2} + {\left(\left|b\right| \cdot t\_10\right)}^{2}}{x-scale}}{x-scale}\\
t_13 := \frac{\left|b\right| \cdot \left|b\right|}{x-scale \cdot x-scale}\\
\mathbf{if}\;\frac{-\sqrt{\left(\left(2 \cdot t\_8\right) \cdot t\_1\right) \cdot \left(\left(t\_12 + t\_11\right) + \sqrt{{\left(t\_12 - t\_11\right)}^{2} + {\left(\frac{\frac{\left(\left(2 \cdot \left({\left(\left|b\right|\right)}^{2} - {a}^{2}\right)\right) \cdot t\_4\right) \cdot t\_10}{x-scale}}{\left|y-scale\right|}\right)}^{2}}\right)}}{t\_8} \leq \infty:\\
\;\;\;\;\frac{-\sqrt{\left(\left(t\_9 + t\_13\right) + \left|t\_13 - t\_9\right|\right) \cdot \left(\left(\frac{t\_5}{t\_7} \cdot 2\right) \cdot \left(\left(t\_0 \cdot \left|b\right|\right) \cdot \left(-a\right)\right)\right)}}{t\_5} \cdot t\_7\\

\mathbf{else}:\\
\;\;\;\;-0.25 \cdot \left(-1 \cdot \left(\left|b\right| \cdot \left(\left|y-scale\right| \cdot \sqrt{8 \cdot \left(\sqrt{{t\_3}^{4}} + {t\_3}^{2}\right)}\right)\right)\right)\\


\end{array}
Derivation
  1. Split input into 2 regimes
  2. if (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 #s(literal 4 binary64) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) #s(literal 2 binary64)))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (+.f64 (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle #s(literal 180 binary64)) (PI.f64)))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle #s(literal 180 binary64)) (PI.f64)))) #s(literal 2 binary64))) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle #s(literal 180 binary64)) (PI.f64)))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle #s(literal 180 binary64)) (PI.f64)))) #s(literal 2 binary64))) y-scale) y-scale)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle #s(literal 180 binary64)) (PI.f64)))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle #s(literal 180 binary64)) (PI.f64)))) #s(literal 2 binary64))) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle #s(literal 180 binary64)) (PI.f64)))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle #s(literal 180 binary64)) (PI.f64)))) #s(literal 2 binary64))) y-scale) y-scale)) #s(literal 2 binary64)) (pow.f64 (/.f64 (/.f64 (*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 b #s(literal 2 binary64)) (pow.f64 a #s(literal 2 binary64)))) (sin.f64 (*.f64 (/.f64 angle #s(literal 180 binary64)) (PI.f64)))) (cos.f64 (*.f64 (/.f64 angle #s(literal 180 binary64)) (PI.f64)))) x-scale) y-scale) #s(literal 2 binary64)))))))) (/.f64 (*.f64 #s(literal 4 binary64) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) #s(literal 2 binary64)))) < +inf.0

    1. Initial program 2.6%

      \[\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. Taylor expanded in angle around 0

      \[\leadsto \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 \color{blue}{\left(\sqrt{{\left(\frac{{b}^{2}}{{x-scale}^{2}} - \frac{{a}^{2}}{{y-scale}^{2}}\right)}^{2}} + \left(\frac{{a}^{2}}{{y-scale}^{2}} + \frac{{b}^{2}}{{x-scale}^{2}}\right)\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}}} \]
    3. Step-by-step derivation
      1. Applied rewrites4.3%

        \[\leadsto \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 \color{blue}{\left(\sqrt{{\left(\frac{{b}^{2}}{{x-scale}^{2}} - \frac{{a}^{2}}{{y-scale}^{2}}\right)}^{2}} + \left(\frac{{a}^{2}}{{y-scale}^{2}} + \frac{{b}^{2}}{{x-scale}^{2}}\right)\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. Applied rewrites4.3%

        \[\leadsto \color{blue}{\frac{-\sqrt{\left(\left(\frac{a \cdot a}{y-scale \cdot y-scale} + \frac{b \cdot b}{x-scale \cdot x-scale}\right) + \left|\frac{b \cdot b}{x-scale \cdot x-scale} - \frac{a \cdot a}{y-scale \cdot y-scale}\right|\right) \cdot \left(\left(\frac{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)}{\left(\left(x-scale \cdot y-scale\right) \cdot x-scale\right) \cdot y-scale} \cdot 2\right) \cdot \left(\left(\left(b \cdot a\right) \cdot b\right) \cdot \left(-a\right)\right)\right)}}{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)} \cdot \left(\left(\left(x-scale \cdot y-scale\right) \cdot x-scale\right) \cdot y-scale\right)} \]
      3. Step-by-step derivation
        1. lift-*.f64N/A

          \[\leadsto \frac{-\sqrt{\left(\left(\frac{a \cdot a}{y-scale \cdot y-scale} + \frac{b \cdot b}{x-scale \cdot x-scale}\right) + \left|\frac{b \cdot b}{x-scale \cdot x-scale} - \frac{a \cdot a}{y-scale \cdot y-scale}\right|\right) \cdot \left(\left(\frac{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)}{\color{blue}{\left(\left(x-scale \cdot y-scale\right) \cdot x-scale\right) \cdot y-scale}} \cdot 2\right) \cdot \left(\left(\left(b \cdot a\right) \cdot b\right) \cdot \left(-a\right)\right)\right)}}{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)} \cdot \left(\left(\left(x-scale \cdot y-scale\right) \cdot x-scale\right) \cdot y-scale\right) \]
        2. lift-*.f64N/A

          \[\leadsto \frac{-\sqrt{\left(\left(\frac{a \cdot a}{y-scale \cdot y-scale} + \frac{b \cdot b}{x-scale \cdot x-scale}\right) + \left|\frac{b \cdot b}{x-scale \cdot x-scale} - \frac{a \cdot a}{y-scale \cdot y-scale}\right|\right) \cdot \left(\left(\frac{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)}{\color{blue}{\left(\left(x-scale \cdot y-scale\right) \cdot x-scale\right)} \cdot y-scale} \cdot 2\right) \cdot \left(\left(\left(b \cdot a\right) \cdot b\right) \cdot \left(-a\right)\right)\right)}}{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)} \cdot \left(\left(\left(x-scale \cdot y-scale\right) \cdot x-scale\right) \cdot y-scale\right) \]
        3. associate-*l*N/A

          \[\leadsto \frac{-\sqrt{\left(\left(\frac{a \cdot a}{y-scale \cdot y-scale} + \frac{b \cdot b}{x-scale \cdot x-scale}\right) + \left|\frac{b \cdot b}{x-scale \cdot x-scale} - \frac{a \cdot a}{y-scale \cdot y-scale}\right|\right) \cdot \left(\left(\frac{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)}{\color{blue}{\left(x-scale \cdot y-scale\right) \cdot \left(x-scale \cdot y-scale\right)}} \cdot 2\right) \cdot \left(\left(\left(b \cdot a\right) \cdot b\right) \cdot \left(-a\right)\right)\right)}}{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)} \cdot \left(\left(\left(x-scale \cdot y-scale\right) \cdot x-scale\right) \cdot y-scale\right) \]
        4. lift-*.f64N/A

          \[\leadsto \frac{-\sqrt{\left(\left(\frac{a \cdot a}{y-scale \cdot y-scale} + \frac{b \cdot b}{x-scale \cdot x-scale}\right) + \left|\frac{b \cdot b}{x-scale \cdot x-scale} - \frac{a \cdot a}{y-scale \cdot y-scale}\right|\right) \cdot \left(\left(\frac{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)}{\left(x-scale \cdot y-scale\right) \cdot \color{blue}{\left(x-scale \cdot y-scale\right)}} \cdot 2\right) \cdot \left(\left(\left(b \cdot a\right) \cdot b\right) \cdot \left(-a\right)\right)\right)}}{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)} \cdot \left(\left(\left(x-scale \cdot y-scale\right) \cdot x-scale\right) \cdot y-scale\right) \]
        5. unpow2N/A

          \[\leadsto \frac{-\sqrt{\left(\left(\frac{a \cdot a}{y-scale \cdot y-scale} + \frac{b \cdot b}{x-scale \cdot x-scale}\right) + \left|\frac{b \cdot b}{x-scale \cdot x-scale} - \frac{a \cdot a}{y-scale \cdot y-scale}\right|\right) \cdot \left(\left(\frac{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)}{\color{blue}{{\left(x-scale \cdot y-scale\right)}^{2}}} \cdot 2\right) \cdot \left(\left(\left(b \cdot a\right) \cdot b\right) \cdot \left(-a\right)\right)\right)}}{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)} \cdot \left(\left(\left(x-scale \cdot y-scale\right) \cdot x-scale\right) \cdot y-scale\right) \]
        6. lift-*.f64N/A

          \[\leadsto \frac{-\sqrt{\left(\left(\frac{a \cdot a}{y-scale \cdot y-scale} + \frac{b \cdot b}{x-scale \cdot x-scale}\right) + \left|\frac{b \cdot b}{x-scale \cdot x-scale} - \frac{a \cdot a}{y-scale \cdot y-scale}\right|\right) \cdot \left(\left(\frac{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)}{{\color{blue}{\left(x-scale \cdot y-scale\right)}}^{2}} \cdot 2\right) \cdot \left(\left(\left(b \cdot a\right) \cdot b\right) \cdot \left(-a\right)\right)\right)}}{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)} \cdot \left(\left(\left(x-scale \cdot y-scale\right) \cdot x-scale\right) \cdot y-scale\right) \]
        7. *-commutativeN/A

          \[\leadsto \frac{-\sqrt{\left(\left(\frac{a \cdot a}{y-scale \cdot y-scale} + \frac{b \cdot b}{x-scale \cdot x-scale}\right) + \left|\frac{b \cdot b}{x-scale \cdot x-scale} - \frac{a \cdot a}{y-scale \cdot y-scale}\right|\right) \cdot \left(\left(\frac{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)}{{\color{blue}{\left(y-scale \cdot x-scale\right)}}^{2}} \cdot 2\right) \cdot \left(\left(\left(b \cdot a\right) \cdot b\right) \cdot \left(-a\right)\right)\right)}}{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)} \cdot \left(\left(\left(x-scale \cdot y-scale\right) \cdot x-scale\right) \cdot y-scale\right) \]
        8. lift-*.f64N/A

          \[\leadsto \frac{-\sqrt{\left(\left(\frac{a \cdot a}{y-scale \cdot y-scale} + \frac{b \cdot b}{x-scale \cdot x-scale}\right) + \left|\frac{b \cdot b}{x-scale \cdot x-scale} - \frac{a \cdot a}{y-scale \cdot y-scale}\right|\right) \cdot \left(\left(\frac{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)}{{\color{blue}{\left(y-scale \cdot x-scale\right)}}^{2}} \cdot 2\right) \cdot \left(\left(\left(b \cdot a\right) \cdot b\right) \cdot \left(-a\right)\right)\right)}}{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)} \cdot \left(\left(\left(x-scale \cdot y-scale\right) \cdot x-scale\right) \cdot y-scale\right) \]
        9. pow2N/A

          \[\leadsto \frac{-\sqrt{\left(\left(\frac{a \cdot a}{y-scale \cdot y-scale} + \frac{b \cdot b}{x-scale \cdot x-scale}\right) + \left|\frac{b \cdot b}{x-scale \cdot x-scale} - \frac{a \cdot a}{y-scale \cdot y-scale}\right|\right) \cdot \left(\left(\frac{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)}{\color{blue}{\left(y-scale \cdot x-scale\right) \cdot \left(y-scale \cdot x-scale\right)}} \cdot 2\right) \cdot \left(\left(\left(b \cdot a\right) \cdot b\right) \cdot \left(-a\right)\right)\right)}}{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)} \cdot \left(\left(\left(x-scale \cdot y-scale\right) \cdot x-scale\right) \cdot y-scale\right) \]
        10. lower-*.f644.8%

          \[\leadsto \frac{-\sqrt{\left(\left(\frac{a \cdot a}{y-scale \cdot y-scale} + \frac{b \cdot b}{x-scale \cdot x-scale}\right) + \left|\frac{b \cdot b}{x-scale \cdot x-scale} - \frac{a \cdot a}{y-scale \cdot y-scale}\right|\right) \cdot \left(\left(\frac{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)}{\color{blue}{\left(y-scale \cdot x-scale\right) \cdot \left(y-scale \cdot x-scale\right)}} \cdot 2\right) \cdot \left(\left(\left(b \cdot a\right) \cdot b\right) \cdot \left(-a\right)\right)\right)}}{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)} \cdot \left(\left(\left(x-scale \cdot y-scale\right) \cdot x-scale\right) \cdot y-scale\right) \]
        11. lift-*.f64N/A

          \[\leadsto \frac{-\sqrt{\left(\left(\frac{a \cdot a}{y-scale \cdot y-scale} + \frac{b \cdot b}{x-scale \cdot x-scale}\right) + \left|\frac{b \cdot b}{x-scale \cdot x-scale} - \frac{a \cdot a}{y-scale \cdot y-scale}\right|\right) \cdot \left(\left(\frac{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)}{\color{blue}{\left(y-scale \cdot x-scale\right)} \cdot \left(y-scale \cdot x-scale\right)} \cdot 2\right) \cdot \left(\left(\left(b \cdot a\right) \cdot b\right) \cdot \left(-a\right)\right)\right)}}{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)} \cdot \left(\left(\left(x-scale \cdot y-scale\right) \cdot x-scale\right) \cdot y-scale\right) \]
        12. *-commutativeN/A

          \[\leadsto \frac{-\sqrt{\left(\left(\frac{a \cdot a}{y-scale \cdot y-scale} + \frac{b \cdot b}{x-scale \cdot x-scale}\right) + \left|\frac{b \cdot b}{x-scale \cdot x-scale} - \frac{a \cdot a}{y-scale \cdot y-scale}\right|\right) \cdot \left(\left(\frac{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)}{\color{blue}{\left(x-scale \cdot y-scale\right)} \cdot \left(y-scale \cdot x-scale\right)} \cdot 2\right) \cdot \left(\left(\left(b \cdot a\right) \cdot b\right) \cdot \left(-a\right)\right)\right)}}{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)} \cdot \left(\left(\left(x-scale \cdot y-scale\right) \cdot x-scale\right) \cdot y-scale\right) \]
        13. lift-*.f644.8%

          \[\leadsto \frac{-\sqrt{\left(\left(\frac{a \cdot a}{y-scale \cdot y-scale} + \frac{b \cdot b}{x-scale \cdot x-scale}\right) + \left|\frac{b \cdot b}{x-scale \cdot x-scale} - \frac{a \cdot a}{y-scale \cdot y-scale}\right|\right) \cdot \left(\left(\frac{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)}{\color{blue}{\left(x-scale \cdot y-scale\right)} \cdot \left(y-scale \cdot x-scale\right)} \cdot 2\right) \cdot \left(\left(\left(b \cdot a\right) \cdot b\right) \cdot \left(-a\right)\right)\right)}}{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)} \cdot \left(\left(\left(x-scale \cdot y-scale\right) \cdot x-scale\right) \cdot y-scale\right) \]
        14. lift-*.f64N/A

          \[\leadsto \frac{-\sqrt{\left(\left(\frac{a \cdot a}{y-scale \cdot y-scale} + \frac{b \cdot b}{x-scale \cdot x-scale}\right) + \left|\frac{b \cdot b}{x-scale \cdot x-scale} - \frac{a \cdot a}{y-scale \cdot y-scale}\right|\right) \cdot \left(\left(\frac{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)}{\left(x-scale \cdot y-scale\right) \cdot \color{blue}{\left(y-scale \cdot x-scale\right)}} \cdot 2\right) \cdot \left(\left(\left(b \cdot a\right) \cdot b\right) \cdot \left(-a\right)\right)\right)}}{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)} \cdot \left(\left(\left(x-scale \cdot y-scale\right) \cdot x-scale\right) \cdot y-scale\right) \]
        15. *-commutativeN/A

          \[\leadsto \frac{-\sqrt{\left(\left(\frac{a \cdot a}{y-scale \cdot y-scale} + \frac{b \cdot b}{x-scale \cdot x-scale}\right) + \left|\frac{b \cdot b}{x-scale \cdot x-scale} - \frac{a \cdot a}{y-scale \cdot y-scale}\right|\right) \cdot \left(\left(\frac{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)}{\left(x-scale \cdot y-scale\right) \cdot \color{blue}{\left(x-scale \cdot y-scale\right)}} \cdot 2\right) \cdot \left(\left(\left(b \cdot a\right) \cdot b\right) \cdot \left(-a\right)\right)\right)}}{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)} \cdot \left(\left(\left(x-scale \cdot y-scale\right) \cdot x-scale\right) \cdot y-scale\right) \]
        16. lift-*.f644.8%

          \[\leadsto \frac{-\sqrt{\left(\left(\frac{a \cdot a}{y-scale \cdot y-scale} + \frac{b \cdot b}{x-scale \cdot x-scale}\right) + \left|\frac{b \cdot b}{x-scale \cdot x-scale} - \frac{a \cdot a}{y-scale \cdot y-scale}\right|\right) \cdot \left(\left(\frac{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)}{\left(x-scale \cdot y-scale\right) \cdot \color{blue}{\left(x-scale \cdot y-scale\right)}} \cdot 2\right) \cdot \left(\left(\left(b \cdot a\right) \cdot b\right) \cdot \left(-a\right)\right)\right)}}{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)} \cdot \left(\left(\left(x-scale \cdot y-scale\right) \cdot x-scale\right) \cdot y-scale\right) \]
      4. Applied rewrites4.8%

        \[\leadsto \frac{-\sqrt{\left(\left(\frac{a \cdot a}{y-scale \cdot y-scale} + \frac{b \cdot b}{x-scale \cdot x-scale}\right) + \left|\frac{b \cdot b}{x-scale \cdot x-scale} - \frac{a \cdot a}{y-scale \cdot y-scale}\right|\right) \cdot \left(\left(\frac{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)}{\color{blue}{\left(x-scale \cdot y-scale\right) \cdot \left(x-scale \cdot y-scale\right)}} \cdot 2\right) \cdot \left(\left(\left(b \cdot a\right) \cdot b\right) \cdot \left(-a\right)\right)\right)}}{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)} \cdot \left(\left(\left(x-scale \cdot y-scale\right) \cdot x-scale\right) \cdot y-scale\right) \]
      5. Step-by-step derivation
        1. lift-*.f64N/A

          \[\leadsto \frac{-\sqrt{\left(\left(\frac{a \cdot a}{y-scale \cdot y-scale} + \frac{b \cdot b}{x-scale \cdot x-scale}\right) + \left|\frac{b \cdot b}{x-scale \cdot x-scale} - \frac{a \cdot a}{y-scale \cdot y-scale}\right|\right) \cdot \left(\left(\frac{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)}{\left(x-scale \cdot y-scale\right) \cdot \left(x-scale \cdot y-scale\right)} \cdot 2\right) \cdot \left(\left(\left(b \cdot a\right) \cdot b\right) \cdot \left(-a\right)\right)\right)}}{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)} \cdot \color{blue}{\left(\left(\left(x-scale \cdot y-scale\right) \cdot x-scale\right) \cdot y-scale\right)} \]
        2. lift-*.f64N/A

          \[\leadsto \frac{-\sqrt{\left(\left(\frac{a \cdot a}{y-scale \cdot y-scale} + \frac{b \cdot b}{x-scale \cdot x-scale}\right) + \left|\frac{b \cdot b}{x-scale \cdot x-scale} - \frac{a \cdot a}{y-scale \cdot y-scale}\right|\right) \cdot \left(\left(\frac{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)}{\left(x-scale \cdot y-scale\right) \cdot \left(x-scale \cdot y-scale\right)} \cdot 2\right) \cdot \left(\left(\left(b \cdot a\right) \cdot b\right) \cdot \left(-a\right)\right)\right)}}{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)} \cdot \left(\color{blue}{\left(\left(x-scale \cdot y-scale\right) \cdot x-scale\right)} \cdot y-scale\right) \]
        3. associate-*l*N/A

          \[\leadsto \frac{-\sqrt{\left(\left(\frac{a \cdot a}{y-scale \cdot y-scale} + \frac{b \cdot b}{x-scale \cdot x-scale}\right) + \left|\frac{b \cdot b}{x-scale \cdot x-scale} - \frac{a \cdot a}{y-scale \cdot y-scale}\right|\right) \cdot \left(\left(\frac{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)}{\left(x-scale \cdot y-scale\right) \cdot \left(x-scale \cdot y-scale\right)} \cdot 2\right) \cdot \left(\left(\left(b \cdot a\right) \cdot b\right) \cdot \left(-a\right)\right)\right)}}{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)} \cdot \color{blue}{\left(\left(x-scale \cdot y-scale\right) \cdot \left(x-scale \cdot y-scale\right)\right)} \]
        4. lift-*.f64N/A

          \[\leadsto \frac{-\sqrt{\left(\left(\frac{a \cdot a}{y-scale \cdot y-scale} + \frac{b \cdot b}{x-scale \cdot x-scale}\right) + \left|\frac{b \cdot b}{x-scale \cdot x-scale} - \frac{a \cdot a}{y-scale \cdot y-scale}\right|\right) \cdot \left(\left(\frac{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)}{\left(x-scale \cdot y-scale\right) \cdot \left(x-scale \cdot y-scale\right)} \cdot 2\right) \cdot \left(\left(\left(b \cdot a\right) \cdot b\right) \cdot \left(-a\right)\right)\right)}}{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)} \cdot \left(\left(x-scale \cdot y-scale\right) \cdot \color{blue}{\left(x-scale \cdot y-scale\right)}\right) \]
        5. unpow2N/A

          \[\leadsto \frac{-\sqrt{\left(\left(\frac{a \cdot a}{y-scale \cdot y-scale} + \frac{b \cdot b}{x-scale \cdot x-scale}\right) + \left|\frac{b \cdot b}{x-scale \cdot x-scale} - \frac{a \cdot a}{y-scale \cdot y-scale}\right|\right) \cdot \left(\left(\frac{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)}{\left(x-scale \cdot y-scale\right) \cdot \left(x-scale \cdot y-scale\right)} \cdot 2\right) \cdot \left(\left(\left(b \cdot a\right) \cdot b\right) \cdot \left(-a\right)\right)\right)}}{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)} \cdot \color{blue}{{\left(x-scale \cdot y-scale\right)}^{2}} \]
        6. lift-*.f64N/A

          \[\leadsto \frac{-\sqrt{\left(\left(\frac{a \cdot a}{y-scale \cdot y-scale} + \frac{b \cdot b}{x-scale \cdot x-scale}\right) + \left|\frac{b \cdot b}{x-scale \cdot x-scale} - \frac{a \cdot a}{y-scale \cdot y-scale}\right|\right) \cdot \left(\left(\frac{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)}{\left(x-scale \cdot y-scale\right) \cdot \left(x-scale \cdot y-scale\right)} \cdot 2\right) \cdot \left(\left(\left(b \cdot a\right) \cdot b\right) \cdot \left(-a\right)\right)\right)}}{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)} \cdot {\color{blue}{\left(x-scale \cdot y-scale\right)}}^{2} \]
        7. *-commutativeN/A

          \[\leadsto \frac{-\sqrt{\left(\left(\frac{a \cdot a}{y-scale \cdot y-scale} + \frac{b \cdot b}{x-scale \cdot x-scale}\right) + \left|\frac{b \cdot b}{x-scale \cdot x-scale} - \frac{a \cdot a}{y-scale \cdot y-scale}\right|\right) \cdot \left(\left(\frac{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)}{\left(x-scale \cdot y-scale\right) \cdot \left(x-scale \cdot y-scale\right)} \cdot 2\right) \cdot \left(\left(\left(b \cdot a\right) \cdot b\right) \cdot \left(-a\right)\right)\right)}}{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)} \cdot {\color{blue}{\left(y-scale \cdot x-scale\right)}}^{2} \]
        8. lift-*.f64N/A

          \[\leadsto \frac{-\sqrt{\left(\left(\frac{a \cdot a}{y-scale \cdot y-scale} + \frac{b \cdot b}{x-scale \cdot x-scale}\right) + \left|\frac{b \cdot b}{x-scale \cdot x-scale} - \frac{a \cdot a}{y-scale \cdot y-scale}\right|\right) \cdot \left(\left(\frac{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)}{\left(x-scale \cdot y-scale\right) \cdot \left(x-scale \cdot y-scale\right)} \cdot 2\right) \cdot \left(\left(\left(b \cdot a\right) \cdot b\right) \cdot \left(-a\right)\right)\right)}}{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)} \cdot {\color{blue}{\left(y-scale \cdot x-scale\right)}}^{2} \]
        9. pow2N/A

          \[\leadsto \frac{-\sqrt{\left(\left(\frac{a \cdot a}{y-scale \cdot y-scale} + \frac{b \cdot b}{x-scale \cdot x-scale}\right) + \left|\frac{b \cdot b}{x-scale \cdot x-scale} - \frac{a \cdot a}{y-scale \cdot y-scale}\right|\right) \cdot \left(\left(\frac{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)}{\left(x-scale \cdot y-scale\right) \cdot \left(x-scale \cdot y-scale\right)} \cdot 2\right) \cdot \left(\left(\left(b \cdot a\right) \cdot b\right) \cdot \left(-a\right)\right)\right)}}{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)} \cdot \color{blue}{\left(\left(y-scale \cdot x-scale\right) \cdot \left(y-scale \cdot x-scale\right)\right)} \]
        10. lower-*.f645.1%

          \[\leadsto \frac{-\sqrt{\left(\left(\frac{a \cdot a}{y-scale \cdot y-scale} + \frac{b \cdot b}{x-scale \cdot x-scale}\right) + \left|\frac{b \cdot b}{x-scale \cdot x-scale} - \frac{a \cdot a}{y-scale \cdot y-scale}\right|\right) \cdot \left(\left(\frac{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)}{\left(x-scale \cdot y-scale\right) \cdot \left(x-scale \cdot y-scale\right)} \cdot 2\right) \cdot \left(\left(\left(b \cdot a\right) \cdot b\right) \cdot \left(-a\right)\right)\right)}}{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)} \cdot \color{blue}{\left(\left(y-scale \cdot x-scale\right) \cdot \left(y-scale \cdot x-scale\right)\right)} \]
        11. lift-*.f64N/A

          \[\leadsto \frac{-\sqrt{\left(\left(\frac{a \cdot a}{y-scale \cdot y-scale} + \frac{b \cdot b}{x-scale \cdot x-scale}\right) + \left|\frac{b \cdot b}{x-scale \cdot x-scale} - \frac{a \cdot a}{y-scale \cdot y-scale}\right|\right) \cdot \left(\left(\frac{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)}{\left(x-scale \cdot y-scale\right) \cdot \left(x-scale \cdot y-scale\right)} \cdot 2\right) \cdot \left(\left(\left(b \cdot a\right) \cdot b\right) \cdot \left(-a\right)\right)\right)}}{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)} \cdot \left(\color{blue}{\left(y-scale \cdot x-scale\right)} \cdot \left(y-scale \cdot x-scale\right)\right) \]
        12. *-commutativeN/A

          \[\leadsto \frac{-\sqrt{\left(\left(\frac{a \cdot a}{y-scale \cdot y-scale} + \frac{b \cdot b}{x-scale \cdot x-scale}\right) + \left|\frac{b \cdot b}{x-scale \cdot x-scale} - \frac{a \cdot a}{y-scale \cdot y-scale}\right|\right) \cdot \left(\left(\frac{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)}{\left(x-scale \cdot y-scale\right) \cdot \left(x-scale \cdot y-scale\right)} \cdot 2\right) \cdot \left(\left(\left(b \cdot a\right) \cdot b\right) \cdot \left(-a\right)\right)\right)}}{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)} \cdot \left(\color{blue}{\left(x-scale \cdot y-scale\right)} \cdot \left(y-scale \cdot x-scale\right)\right) \]
        13. lift-*.f645.1%

          \[\leadsto \frac{-\sqrt{\left(\left(\frac{a \cdot a}{y-scale \cdot y-scale} + \frac{b \cdot b}{x-scale \cdot x-scale}\right) + \left|\frac{b \cdot b}{x-scale \cdot x-scale} - \frac{a \cdot a}{y-scale \cdot y-scale}\right|\right) \cdot \left(\left(\frac{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)}{\left(x-scale \cdot y-scale\right) \cdot \left(x-scale \cdot y-scale\right)} \cdot 2\right) \cdot \left(\left(\left(b \cdot a\right) \cdot b\right) \cdot \left(-a\right)\right)\right)}}{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)} \cdot \left(\color{blue}{\left(x-scale \cdot y-scale\right)} \cdot \left(y-scale \cdot x-scale\right)\right) \]
        14. lift-*.f64N/A

          \[\leadsto \frac{-\sqrt{\left(\left(\frac{a \cdot a}{y-scale \cdot y-scale} + \frac{b \cdot b}{x-scale \cdot x-scale}\right) + \left|\frac{b \cdot b}{x-scale \cdot x-scale} - \frac{a \cdot a}{y-scale \cdot y-scale}\right|\right) \cdot \left(\left(\frac{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)}{\left(x-scale \cdot y-scale\right) \cdot \left(x-scale \cdot y-scale\right)} \cdot 2\right) \cdot \left(\left(\left(b \cdot a\right) \cdot b\right) \cdot \left(-a\right)\right)\right)}}{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)} \cdot \left(\left(x-scale \cdot y-scale\right) \cdot \color{blue}{\left(y-scale \cdot x-scale\right)}\right) \]
        15. *-commutativeN/A

          \[\leadsto \frac{-\sqrt{\left(\left(\frac{a \cdot a}{y-scale \cdot y-scale} + \frac{b \cdot b}{x-scale \cdot x-scale}\right) + \left|\frac{b \cdot b}{x-scale \cdot x-scale} - \frac{a \cdot a}{y-scale \cdot y-scale}\right|\right) \cdot \left(\left(\frac{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)}{\left(x-scale \cdot y-scale\right) \cdot \left(x-scale \cdot y-scale\right)} \cdot 2\right) \cdot \left(\left(\left(b \cdot a\right) \cdot b\right) \cdot \left(-a\right)\right)\right)}}{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)} \cdot \left(\left(x-scale \cdot y-scale\right) \cdot \color{blue}{\left(x-scale \cdot y-scale\right)}\right) \]
        16. lift-*.f645.1%

          \[\leadsto \frac{-\sqrt{\left(\left(\frac{a \cdot a}{y-scale \cdot y-scale} + \frac{b \cdot b}{x-scale \cdot x-scale}\right) + \left|\frac{b \cdot b}{x-scale \cdot x-scale} - \frac{a \cdot a}{y-scale \cdot y-scale}\right|\right) \cdot \left(\left(\frac{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)}{\left(x-scale \cdot y-scale\right) \cdot \left(x-scale \cdot y-scale\right)} \cdot 2\right) \cdot \left(\left(\left(b \cdot a\right) \cdot b\right) \cdot \left(-a\right)\right)\right)}}{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)} \cdot \left(\left(x-scale \cdot y-scale\right) \cdot \color{blue}{\left(x-scale \cdot y-scale\right)}\right) \]
      6. Applied rewrites5.1%

        \[\leadsto \frac{-\sqrt{\left(\left(\frac{a \cdot a}{y-scale \cdot y-scale} + \frac{b \cdot b}{x-scale \cdot x-scale}\right) + \left|\frac{b \cdot b}{x-scale \cdot x-scale} - \frac{a \cdot a}{y-scale \cdot y-scale}\right|\right) \cdot \left(\left(\frac{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)}{\left(x-scale \cdot y-scale\right) \cdot \left(x-scale \cdot y-scale\right)} \cdot 2\right) \cdot \left(\left(\left(b \cdot a\right) \cdot b\right) \cdot \left(-a\right)\right)\right)}}{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)} \cdot \color{blue}{\left(\left(x-scale \cdot y-scale\right) \cdot \left(x-scale \cdot y-scale\right)\right)} \]

      if +inf.0 < (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 #s(literal 4 binary64) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) #s(literal 2 binary64)))) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (+.f64 (+.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle #s(literal 180 binary64)) (PI.f64)))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle #s(literal 180 binary64)) (PI.f64)))) #s(literal 2 binary64))) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle #s(literal 180 binary64)) (PI.f64)))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle #s(literal 180 binary64)) (PI.f64)))) #s(literal 2 binary64))) y-scale) y-scale)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle #s(literal 180 binary64)) (PI.f64)))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle #s(literal 180 binary64)) (PI.f64)))) #s(literal 2 binary64))) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle #s(literal 180 binary64)) (PI.f64)))) #s(literal 2 binary64)) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle #s(literal 180 binary64)) (PI.f64)))) #s(literal 2 binary64))) y-scale) y-scale)) #s(literal 2 binary64)) (pow.f64 (/.f64 (/.f64 (*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 b #s(literal 2 binary64)) (pow.f64 a #s(literal 2 binary64)))) (sin.f64 (*.f64 (/.f64 angle #s(literal 180 binary64)) (PI.f64)))) (cos.f64 (*.f64 (/.f64 angle #s(literal 180 binary64)) (PI.f64)))) x-scale) y-scale) #s(literal 2 binary64)))))))) (/.f64 (*.f64 #s(literal 4 binary64) (*.f64 (*.f64 b a) (*.f64 b (neg.f64 a)))) (pow.f64 (*.f64 x-scale y-scale) #s(literal 2 binary64))))

      1. Initial program 2.6%

        \[\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. Taylor expanded in y-scale around -inf

        \[\leadsto \color{blue}{\frac{-1}{4} \cdot \frac{{x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{{a}^{4} \cdot \left({b}^{4} \cdot \left(\sqrt{{\left(\frac{{a}^{2} \cdot {\sin \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}} + \frac{{b}^{2} \cdot {\cos \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}\right)}^{2}} + \left(\frac{{a}^{2} \cdot {\sin \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}} + \frac{{b}^{2} \cdot {\cos \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}\right)\right)\right)}{{x-scale}^{2}}}\right)}{{a}^{2} \cdot {b}^{2}}} \]
      3. Applied rewrites0.5%

        \[\leadsto \color{blue}{-0.25 \cdot \frac{{x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{{a}^{4} \cdot \left({b}^{4} \cdot \left(\sqrt{{\left(\frac{{a}^{2} \cdot {\sin \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}} + \frac{{b}^{2} \cdot {\cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}\right)}^{2}} + \left(\frac{{a}^{2} \cdot {\sin \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}} + \frac{{b}^{2} \cdot {\cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}\right)\right)\right)}{{x-scale}^{2}}}\right)}{{a}^{2} \cdot {b}^{2}}} \]
      4. Taylor expanded in a around 0

        \[\leadsto -0.25 \cdot \frac{{x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{{b}^{4} \cdot \left(\sqrt{\frac{{b}^{4} \cdot {\cos \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{4}}{{x-scale}^{4}}} + \frac{{b}^{2} \cdot {\cos \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}\right)}{{x-scale}^{2}}}\right)}{\color{blue}{{b}^{2}}} \]
      5. Applied rewrites1.8%

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

        \[\leadsto -0.25 \cdot \left(-1 \cdot \left(b \cdot \color{blue}{\left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{4}}{{x-scale}^{4}}} + \frac{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)}\right)\right) \]
      7. Step-by-step derivation
        1. lower-*.f64N/A

          \[\leadsto \frac{-1}{4} \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \color{blue}{\left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \mathsf{PI}\left(\right)\right)\right)}^{4}}{{x-scale}^{4}}} + \frac{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \mathsf{PI}\left(\right)\right)\right)}^{2}}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)}\right)\right)\right) \]
        2. lower-*.f64N/A

          \[\leadsto \frac{-1}{4} \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \left(y-scale \cdot \color{blue}{\sqrt{8 \cdot \frac{\sqrt{\frac{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \mathsf{PI}\left(\right)\right)\right)}^{4}}{{x-scale}^{4}}} + \frac{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \mathsf{PI}\left(\right)\right)\right)}^{2}}{{x-scale}^{2}}}{{x-scale}^{2}}}}\right)\right)\right)\right) \]
      8. Applied rewrites5.9%

        \[\leadsto -0.25 \cdot \left(-1 \cdot \left(b \cdot \color{blue}{\left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{{\cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)}^{4}}{{x-scale}^{4}}} + \frac{{\cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)}\right)\right) \]
      9. Taylor expanded in x-scale around 0

        \[\leadsto -0.25 \cdot \left(-1 \cdot \left(b \cdot \left(y-scale \cdot \sqrt{8 \cdot \left(\sqrt{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{4}} + {\cos \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{2}\right)}\right)\right)\right) \]
      10. Step-by-step derivation
        1. lower-*.f64N/A

          \[\leadsto \frac{-1}{4} \cdot \left(-1 \cdot \left(b \cdot \left(y-scale \cdot \sqrt{8 \cdot \left(\sqrt{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \mathsf{PI}\left(\right)\right)\right)}^{4}} + {\cos \left(\frac{1}{180} \cdot \left(angle \cdot \mathsf{PI}\left(\right)\right)\right)}^{2}\right)}\right)\right)\right) \]
        2. lower-sqrt.f64N/A

          \[\leadsto \frac{-1}{4} \cdot \left(-1 \cdot \left(b \cdot \left(y-scale \cdot \sqrt{8 \cdot \left(\sqrt{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \mathsf{PI}\left(\right)\right)\right)}^{4}} + {\cos \left(\frac{1}{180} \cdot \left(angle \cdot \mathsf{PI}\left(\right)\right)\right)}^{2}\right)}\right)\right)\right) \]
        3. lower-*.f64N/A

          \[\leadsto \frac{-1}{4} \cdot \left(-1 \cdot \left(b \cdot \left(y-scale \cdot \sqrt{8 \cdot \left(\sqrt{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \mathsf{PI}\left(\right)\right)\right)}^{4}} + {\cos \left(\frac{1}{180} \cdot \left(angle \cdot \mathsf{PI}\left(\right)\right)\right)}^{2}\right)}\right)\right)\right) \]
        4. lower-+.f64N/A

          \[\leadsto \frac{-1}{4} \cdot \left(-1 \cdot \left(b \cdot \left(y-scale \cdot \sqrt{8 \cdot \left(\sqrt{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \mathsf{PI}\left(\right)\right)\right)}^{4}} + {\cos \left(\frac{1}{180} \cdot \left(angle \cdot \mathsf{PI}\left(\right)\right)\right)}^{2}\right)}\right)\right)\right) \]
      11. Applied rewrites17.8%

        \[\leadsto -0.25 \cdot \left(-1 \cdot \left(b \cdot \left(y-scale \cdot \sqrt{8 \cdot \left(\sqrt{{\cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)}^{4}} + {\cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)}^{2}\right)}\right)\right)\right) \]
    4. Recombined 2 regimes into one program.
    5. Add Preprocessing

    Alternative 3: 17.1% accurate, 5.2× speedup?

    \[\begin{array}{l} t_0 := \left(4 \cdot \left|b\right|\right) \cdot a\\ t_1 := \left|y-scale\right| \cdot \left|y-scale\right|\\ t_2 := \frac{a}{t\_1}\\ t_3 := {\left(\left|x-scale\right|\right)}^{2}\\ t_4 := \left|x-scale\right| \cdot \left|x-scale\right|\\ t_5 := \frac{\left|b\right|}{t\_4}\\ t_6 := \left(-a\right) \cdot \left|b\right|\\ t_7 := \left(\left(\left|x-scale\right| \cdot \left|y-scale\right|\right) \cdot \left|x-scale\right|\right) \cdot \left|y-scale\right|\\ t_8 := a \cdot \left|b\right|\\ \mathbf{if}\;\left|x-scale\right| \leq 2.6 \cdot 10^{-166}:\\ \;\;\;\;\frac{\frac{-\sqrt{\left(\left(\left(t\_0 \cdot \frac{t\_6}{t\_7}\right) \cdot 2\right) \cdot \left(\left(t\_6 \cdot \left|b\right|\right) \cdot a\right)\right) \cdot \mathsf{fma}\left(a, t\_2, \mathsf{fma}\left(\left|b\right|, t\_5, \left|a \cdot t\_2 - \left|b\right| \cdot t\_5\right|\right)\right)}}{t\_0}}{t\_6} \cdot t\_7\\ \mathbf{elif}\;\left|x-scale\right| \leq 4.2 \cdot 10^{+109}:\\ \;\;\;\;-0.25 \cdot \left(-1 \cdot \left(\left|b\right| \cdot \left(t\_3 \cdot \left(\left|y-scale\right| \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{1}{{\left(\left|x-scale\right|\right)}^{4}}} + \frac{1}{t\_3}}{t\_3}}\right)\right)\right)\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{-\frac{\left(\left(\left|y-scale\right| \cdot t\_4\right) \cdot \left|y-scale\right|\right) \cdot \sqrt{\left({t\_8}^{4} \cdot \mathsf{fma}\left(t\_2, a, \mathsf{fma}\left(t\_5, \left|b\right|, \left|t\_5 \cdot \left|b\right| - \frac{a \cdot a}{t\_1}\right|\right)\right)\right) \cdot 8}}{\left|\left|y-scale\right| \cdot \left|x-scale\right|\right|}}{\left(t\_8 \cdot 4\right) \cdot \left|b\right|}}{-a}\\ \end{array} \]
    (FPCore (a b angle x-scale y-scale)
      :precision binary64
      (let* ((t_0 (* (* 4.0 (fabs b)) a))
           (t_1 (* (fabs y-scale) (fabs y-scale)))
           (t_2 (/ a t_1))
           (t_3 (pow (fabs x-scale) 2.0))
           (t_4 (* (fabs x-scale) (fabs x-scale)))
           (t_5 (/ (fabs b) t_4))
           (t_6 (* (- a) (fabs b)))
           (t_7
            (*
             (* (* (fabs x-scale) (fabs y-scale)) (fabs x-scale))
             (fabs y-scale)))
           (t_8 (* a (fabs b))))
      (if (<= (fabs x-scale) 2.6e-166)
        (*
         (/
          (/
           (-
            (sqrt
             (*
              (* (* (* t_0 (/ t_6 t_7)) 2.0) (* (* t_6 (fabs b)) a))
              (fma
               a
               t_2
               (fma
                (fabs b)
                t_5
                (fabs (- (* a t_2) (* (fabs b) t_5))))))))
           t_0)
          t_6)
         t_7)
        (if (<= (fabs x-scale) 4.2e+109)
          (*
           -0.25
           (*
            -1.0
            (*
             (fabs b)
             (*
              t_3
              (*
               (fabs y-scale)
               (sqrt
                (*
                 8.0
                 (/
                  (+ (sqrt (/ 1.0 (pow (fabs x-scale) 4.0))) (/ 1.0 t_3))
                  t_3))))))))
          (/
           (/
            (-
             (/
              (*
               (* (* (fabs y-scale) t_4) (fabs y-scale))
               (sqrt
                (*
                 (*
                  (pow t_8 4.0)
                  (fma
                   t_2
                   a
                   (fma
                    t_5
                    (fabs b)
                    (fabs (- (* t_5 (fabs b)) (/ (* a a) t_1))))))
                 8.0)))
              (fabs (* (fabs y-scale) (fabs x-scale)))))
            (* (* t_8 4.0) (fabs b)))
           (- a))))))
    double code(double a, double b, double angle, double x_45_scale, double y_45_scale) {
    	double t_0 = (4.0 * fabs(b)) * a;
    	double t_1 = fabs(y_45_scale) * fabs(y_45_scale);
    	double t_2 = a / t_1;
    	double t_3 = pow(fabs(x_45_scale), 2.0);
    	double t_4 = fabs(x_45_scale) * fabs(x_45_scale);
    	double t_5 = fabs(b) / t_4;
    	double t_6 = -a * fabs(b);
    	double t_7 = ((fabs(x_45_scale) * fabs(y_45_scale)) * fabs(x_45_scale)) * fabs(y_45_scale);
    	double t_8 = a * fabs(b);
    	double tmp;
    	if (fabs(x_45_scale) <= 2.6e-166) {
    		tmp = ((-sqrt(((((t_0 * (t_6 / t_7)) * 2.0) * ((t_6 * fabs(b)) * a)) * fma(a, t_2, fma(fabs(b), t_5, fabs(((a * t_2) - (fabs(b) * t_5))))))) / t_0) / t_6) * t_7;
    	} else if (fabs(x_45_scale) <= 4.2e+109) {
    		tmp = -0.25 * (-1.0 * (fabs(b) * (t_3 * (fabs(y_45_scale) * sqrt((8.0 * ((sqrt((1.0 / pow(fabs(x_45_scale), 4.0))) + (1.0 / t_3)) / t_3)))))));
    	} else {
    		tmp = (-((((fabs(y_45_scale) * t_4) * fabs(y_45_scale)) * sqrt(((pow(t_8, 4.0) * fma(t_2, a, fma(t_5, fabs(b), fabs(((t_5 * fabs(b)) - ((a * a) / t_1)))))) * 8.0))) / fabs((fabs(y_45_scale) * fabs(x_45_scale)))) / ((t_8 * 4.0) * fabs(b))) / -a;
    	}
    	return tmp;
    }
    
    function code(a, b, angle, x_45_scale, y_45_scale)
    	t_0 = Float64(Float64(4.0 * abs(b)) * a)
    	t_1 = Float64(abs(y_45_scale) * abs(y_45_scale))
    	t_2 = Float64(a / t_1)
    	t_3 = abs(x_45_scale) ^ 2.0
    	t_4 = Float64(abs(x_45_scale) * abs(x_45_scale))
    	t_5 = Float64(abs(b) / t_4)
    	t_6 = Float64(Float64(-a) * abs(b))
    	t_7 = Float64(Float64(Float64(abs(x_45_scale) * abs(y_45_scale)) * abs(x_45_scale)) * abs(y_45_scale))
    	t_8 = Float64(a * abs(b))
    	tmp = 0.0
    	if (abs(x_45_scale) <= 2.6e-166)
    		tmp = Float64(Float64(Float64(Float64(-sqrt(Float64(Float64(Float64(Float64(t_0 * Float64(t_6 / t_7)) * 2.0) * Float64(Float64(t_6 * abs(b)) * a)) * fma(a, t_2, fma(abs(b), t_5, abs(Float64(Float64(a * t_2) - Float64(abs(b) * t_5)))))))) / t_0) / t_6) * t_7);
    	elseif (abs(x_45_scale) <= 4.2e+109)
    		tmp = Float64(-0.25 * Float64(-1.0 * Float64(abs(b) * Float64(t_3 * Float64(abs(y_45_scale) * sqrt(Float64(8.0 * Float64(Float64(sqrt(Float64(1.0 / (abs(x_45_scale) ^ 4.0))) + Float64(1.0 / t_3)) / t_3))))))));
    	else
    		tmp = Float64(Float64(Float64(-Float64(Float64(Float64(Float64(abs(y_45_scale) * t_4) * abs(y_45_scale)) * sqrt(Float64(Float64((t_8 ^ 4.0) * fma(t_2, a, fma(t_5, abs(b), abs(Float64(Float64(t_5 * abs(b)) - Float64(Float64(a * a) / t_1)))))) * 8.0))) / abs(Float64(abs(y_45_scale) * abs(x_45_scale))))) / Float64(Float64(t_8 * 4.0) * abs(b))) / Float64(-a));
    	end
    	return tmp
    end
    
    code[a_, b_, angle_, x$45$scale_, y$45$scale_] := Block[{t$95$0 = N[(N[(4.0 * N[Abs[b], $MachinePrecision]), $MachinePrecision] * a), $MachinePrecision]}, Block[{t$95$1 = N[(N[Abs[y$45$scale], $MachinePrecision] * N[Abs[y$45$scale], $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(a / t$95$1), $MachinePrecision]}, Block[{t$95$3 = N[Power[N[Abs[x$45$scale], $MachinePrecision], 2.0], $MachinePrecision]}, Block[{t$95$4 = N[(N[Abs[x$45$scale], $MachinePrecision] * N[Abs[x$45$scale], $MachinePrecision]), $MachinePrecision]}, Block[{t$95$5 = N[(N[Abs[b], $MachinePrecision] / t$95$4), $MachinePrecision]}, Block[{t$95$6 = N[((-a) * N[Abs[b], $MachinePrecision]), $MachinePrecision]}, Block[{t$95$7 = N[(N[(N[(N[Abs[x$45$scale], $MachinePrecision] * N[Abs[y$45$scale], $MachinePrecision]), $MachinePrecision] * N[Abs[x$45$scale], $MachinePrecision]), $MachinePrecision] * N[Abs[y$45$scale], $MachinePrecision]), $MachinePrecision]}, Block[{t$95$8 = N[(a * N[Abs[b], $MachinePrecision]), $MachinePrecision]}, If[LessEqual[N[Abs[x$45$scale], $MachinePrecision], 2.6e-166], N[(N[(N[((-N[Sqrt[N[(N[(N[(N[(t$95$0 * N[(t$95$6 / t$95$7), $MachinePrecision]), $MachinePrecision] * 2.0), $MachinePrecision] * N[(N[(t$95$6 * N[Abs[b], $MachinePrecision]), $MachinePrecision] * a), $MachinePrecision]), $MachinePrecision] * N[(a * t$95$2 + N[(N[Abs[b], $MachinePrecision] * t$95$5 + N[Abs[N[(N[(a * t$95$2), $MachinePrecision] - N[(N[Abs[b], $MachinePrecision] * t$95$5), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]) / t$95$0), $MachinePrecision] / t$95$6), $MachinePrecision] * t$95$7), $MachinePrecision], If[LessEqual[N[Abs[x$45$scale], $MachinePrecision], 4.2e+109], N[(-0.25 * N[(-1.0 * N[(N[Abs[b], $MachinePrecision] * N[(t$95$3 * N[(N[Abs[y$45$scale], $MachinePrecision] * N[Sqrt[N[(8.0 * N[(N[(N[Sqrt[N[(1.0 / N[Power[N[Abs[x$45$scale], $MachinePrecision], 4.0], $MachinePrecision]), $MachinePrecision]], $MachinePrecision] + N[(1.0 / t$95$3), $MachinePrecision]), $MachinePrecision] / t$95$3), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(N[((-N[(N[(N[(N[(N[Abs[y$45$scale], $MachinePrecision] * t$95$4), $MachinePrecision] * N[Abs[y$45$scale], $MachinePrecision]), $MachinePrecision] * N[Sqrt[N[(N[(N[Power[t$95$8, 4.0], $MachinePrecision] * N[(t$95$2 * a + N[(t$95$5 * N[Abs[b], $MachinePrecision] + N[Abs[N[(N[(t$95$5 * N[Abs[b], $MachinePrecision]), $MachinePrecision] - N[(N[(a * a), $MachinePrecision] / t$95$1), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * 8.0), $MachinePrecision]], $MachinePrecision]), $MachinePrecision] / N[Abs[N[(N[Abs[y$45$scale], $MachinePrecision] * N[Abs[x$45$scale], $MachinePrecision]), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]) / N[(N[(t$95$8 * 4.0), $MachinePrecision] * N[Abs[b], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / (-a)), $MachinePrecision]]]]]]]]]]]]
    
    \begin{array}{l}
    t_0 := \left(4 \cdot \left|b\right|\right) \cdot a\\
    t_1 := \left|y-scale\right| \cdot \left|y-scale\right|\\
    t_2 := \frac{a}{t\_1}\\
    t_3 := {\left(\left|x-scale\right|\right)}^{2}\\
    t_4 := \left|x-scale\right| \cdot \left|x-scale\right|\\
    t_5 := \frac{\left|b\right|}{t\_4}\\
    t_6 := \left(-a\right) \cdot \left|b\right|\\
    t_7 := \left(\left(\left|x-scale\right| \cdot \left|y-scale\right|\right) \cdot \left|x-scale\right|\right) \cdot \left|y-scale\right|\\
    t_8 := a \cdot \left|b\right|\\
    \mathbf{if}\;\left|x-scale\right| \leq 2.6 \cdot 10^{-166}:\\
    \;\;\;\;\frac{\frac{-\sqrt{\left(\left(\left(t\_0 \cdot \frac{t\_6}{t\_7}\right) \cdot 2\right) \cdot \left(\left(t\_6 \cdot \left|b\right|\right) \cdot a\right)\right) \cdot \mathsf{fma}\left(a, t\_2, \mathsf{fma}\left(\left|b\right|, t\_5, \left|a \cdot t\_2 - \left|b\right| \cdot t\_5\right|\right)\right)}}{t\_0}}{t\_6} \cdot t\_7\\
    
    \mathbf{elif}\;\left|x-scale\right| \leq 4.2 \cdot 10^{+109}:\\
    \;\;\;\;-0.25 \cdot \left(-1 \cdot \left(\left|b\right| \cdot \left(t\_3 \cdot \left(\left|y-scale\right| \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{1}{{\left(\left|x-scale\right|\right)}^{4}}} + \frac{1}{t\_3}}{t\_3}}\right)\right)\right)\right)\\
    
    \mathbf{else}:\\
    \;\;\;\;\frac{\frac{-\frac{\left(\left(\left|y-scale\right| \cdot t\_4\right) \cdot \left|y-scale\right|\right) \cdot \sqrt{\left({t\_8}^{4} \cdot \mathsf{fma}\left(t\_2, a, \mathsf{fma}\left(t\_5, \left|b\right|, \left|t\_5 \cdot \left|b\right| - \frac{a \cdot a}{t\_1}\right|\right)\right)\right) \cdot 8}}{\left|\left|y-scale\right| \cdot \left|x-scale\right|\right|}}{\left(t\_8 \cdot 4\right) \cdot \left|b\right|}}{-a}\\
    
    
    \end{array}
    
    Derivation
    1. Split input into 3 regimes
    2. if x-scale < 2.5999999999999999e-166

      1. Initial program 2.6%

        \[\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. Taylor expanded in angle around 0

        \[\leadsto \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 \color{blue}{\left(\sqrt{{\left(\frac{{b}^{2}}{{x-scale}^{2}} - \frac{{a}^{2}}{{y-scale}^{2}}\right)}^{2}} + \left(\frac{{a}^{2}}{{y-scale}^{2}} + \frac{{b}^{2}}{{x-scale}^{2}}\right)\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}}} \]
      3. Step-by-step derivation
        1. Applied rewrites4.3%

          \[\leadsto \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 \color{blue}{\left(\sqrt{{\left(\frac{{b}^{2}}{{x-scale}^{2}} - \frac{{a}^{2}}{{y-scale}^{2}}\right)}^{2}} + \left(\frac{{a}^{2}}{{y-scale}^{2}} + \frac{{b}^{2}}{{x-scale}^{2}}\right)\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. Applied rewrites4.3%

          \[\leadsto \color{blue}{\frac{-\sqrt{\left(\left(\frac{a \cdot a}{y-scale \cdot y-scale} + \frac{b \cdot b}{x-scale \cdot x-scale}\right) + \left|\frac{b \cdot b}{x-scale \cdot x-scale} - \frac{a \cdot a}{y-scale \cdot y-scale}\right|\right) \cdot \left(\left(\frac{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)}{\left(\left(x-scale \cdot y-scale\right) \cdot x-scale\right) \cdot y-scale} \cdot 2\right) \cdot \left(\left(\left(b \cdot a\right) \cdot b\right) \cdot \left(-a\right)\right)\right)}}{\left(4 \cdot \left(b \cdot a\right)\right) \cdot \left(\left(-a\right) \cdot b\right)} \cdot \left(\left(\left(x-scale \cdot y-scale\right) \cdot x-scale\right) \cdot y-scale\right)} \]
        3. Applied rewrites8.4%

          \[\leadsto \color{blue}{\frac{\frac{-\sqrt{\left(\left(\left(\left(\left(4 \cdot b\right) \cdot a\right) \cdot \frac{\left(-a\right) \cdot b}{\left(\left(x-scale \cdot y-scale\right) \cdot x-scale\right) \cdot y-scale}\right) \cdot 2\right) \cdot \left(\left(\left(\left(-a\right) \cdot b\right) \cdot b\right) \cdot a\right)\right) \cdot \mathsf{fma}\left(a, \frac{a}{y-scale \cdot y-scale}, \mathsf{fma}\left(b, \frac{b}{x-scale \cdot x-scale}, \left|a \cdot \frac{a}{y-scale \cdot y-scale} - b \cdot \frac{b}{x-scale \cdot x-scale}\right|\right)\right)}}{\left(4 \cdot b\right) \cdot a}}{\left(-a\right) \cdot b}} \cdot \left(\left(\left(x-scale \cdot y-scale\right) \cdot x-scale\right) \cdot y-scale\right) \]

        if 2.5999999999999999e-166 < x-scale < 4.2000000000000003e109

        1. Initial program 2.6%

          \[\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. Taylor expanded in y-scale around -inf

          \[\leadsto \color{blue}{\frac{-1}{4} \cdot \frac{{x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{{a}^{4} \cdot \left({b}^{4} \cdot \left(\sqrt{{\left(\frac{{a}^{2} \cdot {\sin \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}} + \frac{{b}^{2} \cdot {\cos \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}\right)}^{2}} + \left(\frac{{a}^{2} \cdot {\sin \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}} + \frac{{b}^{2} \cdot {\cos \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}\right)\right)\right)}{{x-scale}^{2}}}\right)}{{a}^{2} \cdot {b}^{2}}} \]
        3. Applied rewrites0.5%

          \[\leadsto \color{blue}{-0.25 \cdot \frac{{x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{{a}^{4} \cdot \left({b}^{4} \cdot \left(\sqrt{{\left(\frac{{a}^{2} \cdot {\sin \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}} + \frac{{b}^{2} \cdot {\cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}\right)}^{2}} + \left(\frac{{a}^{2} \cdot {\sin \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}} + \frac{{b}^{2} \cdot {\cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}\right)\right)\right)}{{x-scale}^{2}}}\right)}{{a}^{2} \cdot {b}^{2}}} \]
        4. Taylor expanded in a around 0

          \[\leadsto -0.25 \cdot \frac{{x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{{b}^{4} \cdot \left(\sqrt{\frac{{b}^{4} \cdot {\cos \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{4}}{{x-scale}^{4}}} + \frac{{b}^{2} \cdot {\cos \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}\right)}{{x-scale}^{2}}}\right)}{\color{blue}{{b}^{2}}} \]
        5. Applied rewrites1.8%

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

          \[\leadsto -0.25 \cdot \left(-1 \cdot \left(b \cdot \color{blue}{\left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{4}}{{x-scale}^{4}}} + \frac{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)}\right)\right) \]
        7. Step-by-step derivation
          1. lower-*.f64N/A

            \[\leadsto \frac{-1}{4} \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \color{blue}{\left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \mathsf{PI}\left(\right)\right)\right)}^{4}}{{x-scale}^{4}}} + \frac{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \mathsf{PI}\left(\right)\right)\right)}^{2}}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)}\right)\right)\right) \]
          2. lower-*.f64N/A

            \[\leadsto \frac{-1}{4} \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \left(y-scale \cdot \color{blue}{\sqrt{8 \cdot \frac{\sqrt{\frac{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \mathsf{PI}\left(\right)\right)\right)}^{4}}{{x-scale}^{4}}} + \frac{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \mathsf{PI}\left(\right)\right)\right)}^{2}}{{x-scale}^{2}}}{{x-scale}^{2}}}}\right)\right)\right)\right) \]
        8. Applied rewrites5.9%

          \[\leadsto -0.25 \cdot \left(-1 \cdot \left(b \cdot \color{blue}{\left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{{\cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)}^{4}}{{x-scale}^{4}}} + \frac{{\cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)}\right)\right) \]
        9. Taylor expanded in angle around 0

          \[\leadsto -0.25 \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{1}{{x-scale}^{4}}} + \frac{1}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)\right)\right) \]
        10. Step-by-step derivation
          1. lower-+.f64N/A

            \[\leadsto \frac{-1}{4} \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{1}{{x-scale}^{4}}} + \frac{1}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)\right)\right) \]
          2. lower-sqrt.f64N/A

            \[\leadsto \frac{-1}{4} \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{1}{{x-scale}^{4}}} + \frac{1}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)\right)\right) \]
          3. lower-/.f64N/A

            \[\leadsto \frac{-1}{4} \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{1}{{x-scale}^{4}}} + \frac{1}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)\right)\right) \]
          4. lower-pow.f64N/A

            \[\leadsto \frac{-1}{4} \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{1}{{x-scale}^{4}}} + \frac{1}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)\right)\right) \]
          5. lower-/.f64N/A

            \[\leadsto \frac{-1}{4} \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{1}{{x-scale}^{4}}} + \frac{1}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)\right)\right) \]
          6. lower-pow.f645.9%

            \[\leadsto -0.25 \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{1}{{x-scale}^{4}}} + \frac{1}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)\right)\right) \]
        11. Applied rewrites5.9%

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

        if 4.2000000000000003e109 < x-scale

        1. Initial program 2.6%

          \[\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. Applied rewrites4.4%

          \[\leadsto \color{blue}{\frac{\left(-\frac{\sqrt{\left(8 \cdot \left(\left(\left(\left(-a\right) \cdot b\right) \cdot b\right) \cdot a\right)\right) \cdot \left(\left(\left(\mathsf{hypot}\left(\frac{\left(\left(b + a\right) \cdot \left(b - a\right)\right) \cdot \sin \left(2 \cdot \left(\pi \cdot \left(0.005555555555555556 \cdot angle\right)\right)\right)}{y-scale \cdot x-scale}, \frac{\mathsf{fma}\left(0.5 - 0.5 \cdot \cos \left(2 \cdot \left(\pi \cdot \left(0.005555555555555556 \cdot angle\right)\right)\right), a \cdot a, \left(0.5 + 0.5 \cdot \cos \left(2 \cdot \left(\pi \cdot \left(0.005555555555555556 \cdot angle\right)\right)\right)\right) \cdot \left(b \cdot b\right)\right)}{x-scale \cdot x-scale} - \frac{\mathsf{fma}\left(0.5 - 0.5 \cdot \cos \left(2 \cdot \left(\pi \cdot \left(0.005555555555555556 \cdot angle\right)\right)\right), b \cdot b, \left(0.5 + 0.5 \cdot \cos \left(2 \cdot \left(\pi \cdot \left(0.005555555555555556 \cdot angle\right)\right)\right)\right) \cdot \left(a \cdot a\right)\right)}{y-scale \cdot y-scale}\right) + \frac{\mathsf{fma}\left(0.5 - 0.5 \cdot \cos \left(2 \cdot \left(\pi \cdot \left(0.005555555555555556 \cdot angle\right)\right)\right), a \cdot a, \left(0.5 + 0.5 \cdot \cos \left(2 \cdot \left(\pi \cdot \left(0.005555555555555556 \cdot angle\right)\right)\right)\right) \cdot \left(b \cdot b\right)\right)}{x-scale \cdot x-scale}\right) + \frac{\mathsf{fma}\left(0.5 - 0.5 \cdot \cos \left(2 \cdot \left(\pi \cdot \left(0.005555555555555556 \cdot angle\right)\right)\right), b \cdot b, \left(0.5 + 0.5 \cdot \cos \left(2 \cdot \left(\pi \cdot \left(0.005555555555555556 \cdot angle\right)\right)\right)\right) \cdot \left(a \cdot a\right)\right)}{y-scale \cdot y-scale}\right) \cdot \left(\left(\left(\left(-a\right) \cdot b\right) \cdot b\right) \cdot a\right)\right)}}{\left|y-scale \cdot x-scale\right|}\right) \cdot \left(\left(\left(y-scale \cdot x-scale\right) \cdot x-scale\right) \cdot y-scale\right)}{\left(\left(\left(a \cdot b\right) \cdot 4\right) \cdot b\right) \cdot \left(-a\right)}} \]
        3. Taylor expanded in angle around 0

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

          \[\leadsto \frac{\color{blue}{-1 \cdot \frac{{x-scale}^{2} \cdot \left({y-scale}^{2} \cdot \sqrt{8 \cdot \left({a}^{4} \cdot \left({b}^{4} \cdot \left(\sqrt{{\left(\frac{{b}^{2}}{{x-scale}^{2}} - \frac{{a}^{2}}{{y-scale}^{2}}\right)}^{2}} + \left(\frac{{a}^{2}}{{y-scale}^{2}} + \frac{{b}^{2}}{{x-scale}^{2}}\right)\right)\right)\right)}\right)}{\left|x-scale \cdot y-scale\right|}}}{\left(\left(\left(a \cdot b\right) \cdot 4\right) \cdot b\right) \cdot \left(-a\right)} \]
        5. Applied rewrites7.5%

          \[\leadsto \color{blue}{\frac{\frac{-\frac{\left(\left(y-scale \cdot \left(x-scale \cdot x-scale\right)\right) \cdot y-scale\right) \cdot \sqrt{\left({\left(a \cdot b\right)}^{4} \cdot \mathsf{fma}\left(\frac{a}{y-scale \cdot y-scale}, a, \mathsf{fma}\left(\frac{b}{x-scale \cdot x-scale}, b, \left|\frac{b}{x-scale \cdot x-scale} \cdot b - \frac{a \cdot a}{y-scale \cdot y-scale}\right|\right)\right)\right) \cdot 8}}{\left|y-scale \cdot x-scale\right|}}{\left(\left(a \cdot b\right) \cdot 4\right) \cdot b}}{-a}} \]
      4. Recombined 3 regimes into one program.
      5. Add Preprocessing

      Alternative 4: 15.3% accurate, 5.7× speedup?

      \[\begin{array}{l} t_0 := \left|x-scale\right| \cdot \left|x-scale\right|\\ t_1 := \frac{\left|b\right|}{t\_0}\\ t_2 := a \cdot \left|b\right|\\ t_3 := {\left(\left|x-scale\right|\right)}^{2}\\ t_4 := \left|y-scale\right| \cdot \left|y-scale\right|\\ \mathbf{if}\;\left|x-scale\right| \leq 4.2 \cdot 10^{+109}:\\ \;\;\;\;-0.25 \cdot \left(-1 \cdot \left(\left|b\right| \cdot \left(t\_3 \cdot \left(\left|y-scale\right| \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{1}{{\left(\left|x-scale\right|\right)}^{4}}} + \frac{1}{t\_3}}{t\_3}}\right)\right)\right)\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{-\frac{\left(\left(\left|y-scale\right| \cdot t\_0\right) \cdot \left|y-scale\right|\right) \cdot \sqrt{\left({t\_2}^{4} \cdot \mathsf{fma}\left(\frac{a}{t\_4}, a, \mathsf{fma}\left(t\_1, \left|b\right|, \left|t\_1 \cdot \left|b\right| - \frac{a \cdot a}{t\_4}\right|\right)\right)\right) \cdot 8}}{\left|\left|y-scale\right| \cdot \left|x-scale\right|\right|}}{\left(t\_2 \cdot 4\right) \cdot \left|b\right|}}{-a}\\ \end{array} \]
      (FPCore (a b angle x-scale y-scale)
        :precision binary64
        (let* ((t_0 (* (fabs x-scale) (fabs x-scale)))
             (t_1 (/ (fabs b) t_0))
             (t_2 (* a (fabs b)))
             (t_3 (pow (fabs x-scale) 2.0))
             (t_4 (* (fabs y-scale) (fabs y-scale))))
        (if (<= (fabs x-scale) 4.2e+109)
          (*
           -0.25
           (*
            -1.0
            (*
             (fabs b)
             (*
              t_3
              (*
               (fabs y-scale)
               (sqrt
                (*
                 8.0
                 (/
                  (+ (sqrt (/ 1.0 (pow (fabs x-scale) 4.0))) (/ 1.0 t_3))
                  t_3))))))))
          (/
           (/
            (-
             (/
              (*
               (* (* (fabs y-scale) t_0) (fabs y-scale))
               (sqrt
                (*
                 (*
                  (pow t_2 4.0)
                  (fma
                   (/ a t_4)
                   a
                   (fma
                    t_1
                    (fabs b)
                    (fabs (- (* t_1 (fabs b)) (/ (* a a) t_4))))))
                 8.0)))
              (fabs (* (fabs y-scale) (fabs x-scale)))))
            (* (* t_2 4.0) (fabs b)))
           (- a)))))
      double code(double a, double b, double angle, double x_45_scale, double y_45_scale) {
      	double t_0 = fabs(x_45_scale) * fabs(x_45_scale);
      	double t_1 = fabs(b) / t_0;
      	double t_2 = a * fabs(b);
      	double t_3 = pow(fabs(x_45_scale), 2.0);
      	double t_4 = fabs(y_45_scale) * fabs(y_45_scale);
      	double tmp;
      	if (fabs(x_45_scale) <= 4.2e+109) {
      		tmp = -0.25 * (-1.0 * (fabs(b) * (t_3 * (fabs(y_45_scale) * sqrt((8.0 * ((sqrt((1.0 / pow(fabs(x_45_scale), 4.0))) + (1.0 / t_3)) / t_3)))))));
      	} else {
      		tmp = (-((((fabs(y_45_scale) * t_0) * fabs(y_45_scale)) * sqrt(((pow(t_2, 4.0) * fma((a / t_4), a, fma(t_1, fabs(b), fabs(((t_1 * fabs(b)) - ((a * a) / t_4)))))) * 8.0))) / fabs((fabs(y_45_scale) * fabs(x_45_scale)))) / ((t_2 * 4.0) * fabs(b))) / -a;
      	}
      	return tmp;
      }
      
      function code(a, b, angle, x_45_scale, y_45_scale)
      	t_0 = Float64(abs(x_45_scale) * abs(x_45_scale))
      	t_1 = Float64(abs(b) / t_0)
      	t_2 = Float64(a * abs(b))
      	t_3 = abs(x_45_scale) ^ 2.0
      	t_4 = Float64(abs(y_45_scale) * abs(y_45_scale))
      	tmp = 0.0
      	if (abs(x_45_scale) <= 4.2e+109)
      		tmp = Float64(-0.25 * Float64(-1.0 * Float64(abs(b) * Float64(t_3 * Float64(abs(y_45_scale) * sqrt(Float64(8.0 * Float64(Float64(sqrt(Float64(1.0 / (abs(x_45_scale) ^ 4.0))) + Float64(1.0 / t_3)) / t_3))))))));
      	else
      		tmp = Float64(Float64(Float64(-Float64(Float64(Float64(Float64(abs(y_45_scale) * t_0) * abs(y_45_scale)) * sqrt(Float64(Float64((t_2 ^ 4.0) * fma(Float64(a / t_4), a, fma(t_1, abs(b), abs(Float64(Float64(t_1 * abs(b)) - Float64(Float64(a * a) / t_4)))))) * 8.0))) / abs(Float64(abs(y_45_scale) * abs(x_45_scale))))) / Float64(Float64(t_2 * 4.0) * abs(b))) / Float64(-a));
      	end
      	return tmp
      end
      
      code[a_, b_, angle_, x$45$scale_, y$45$scale_] := Block[{t$95$0 = N[(N[Abs[x$45$scale], $MachinePrecision] * N[Abs[x$45$scale], $MachinePrecision]), $MachinePrecision]}, Block[{t$95$1 = N[(N[Abs[b], $MachinePrecision] / t$95$0), $MachinePrecision]}, Block[{t$95$2 = N[(a * N[Abs[b], $MachinePrecision]), $MachinePrecision]}, Block[{t$95$3 = N[Power[N[Abs[x$45$scale], $MachinePrecision], 2.0], $MachinePrecision]}, Block[{t$95$4 = N[(N[Abs[y$45$scale], $MachinePrecision] * N[Abs[y$45$scale], $MachinePrecision]), $MachinePrecision]}, If[LessEqual[N[Abs[x$45$scale], $MachinePrecision], 4.2e+109], N[(-0.25 * N[(-1.0 * N[(N[Abs[b], $MachinePrecision] * N[(t$95$3 * N[(N[Abs[y$45$scale], $MachinePrecision] * N[Sqrt[N[(8.0 * N[(N[(N[Sqrt[N[(1.0 / N[Power[N[Abs[x$45$scale], $MachinePrecision], 4.0], $MachinePrecision]), $MachinePrecision]], $MachinePrecision] + N[(1.0 / t$95$3), $MachinePrecision]), $MachinePrecision] / t$95$3), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(N[((-N[(N[(N[(N[(N[Abs[y$45$scale], $MachinePrecision] * t$95$0), $MachinePrecision] * N[Abs[y$45$scale], $MachinePrecision]), $MachinePrecision] * N[Sqrt[N[(N[(N[Power[t$95$2, 4.0], $MachinePrecision] * N[(N[(a / t$95$4), $MachinePrecision] * a + N[(t$95$1 * N[Abs[b], $MachinePrecision] + N[Abs[N[(N[(t$95$1 * N[Abs[b], $MachinePrecision]), $MachinePrecision] - N[(N[(a * a), $MachinePrecision] / t$95$4), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * 8.0), $MachinePrecision]], $MachinePrecision]), $MachinePrecision] / N[Abs[N[(N[Abs[y$45$scale], $MachinePrecision] * N[Abs[x$45$scale], $MachinePrecision]), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]) / N[(N[(t$95$2 * 4.0), $MachinePrecision] * N[Abs[b], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / (-a)), $MachinePrecision]]]]]]]
      
      \begin{array}{l}
      t_0 := \left|x-scale\right| \cdot \left|x-scale\right|\\
      t_1 := \frac{\left|b\right|}{t\_0}\\
      t_2 := a \cdot \left|b\right|\\
      t_3 := {\left(\left|x-scale\right|\right)}^{2}\\
      t_4 := \left|y-scale\right| \cdot \left|y-scale\right|\\
      \mathbf{if}\;\left|x-scale\right| \leq 4.2 \cdot 10^{+109}:\\
      \;\;\;\;-0.25 \cdot \left(-1 \cdot \left(\left|b\right| \cdot \left(t\_3 \cdot \left(\left|y-scale\right| \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{1}{{\left(\left|x-scale\right|\right)}^{4}}} + \frac{1}{t\_3}}{t\_3}}\right)\right)\right)\right)\\
      
      \mathbf{else}:\\
      \;\;\;\;\frac{\frac{-\frac{\left(\left(\left|y-scale\right| \cdot t\_0\right) \cdot \left|y-scale\right|\right) \cdot \sqrt{\left({t\_2}^{4} \cdot \mathsf{fma}\left(\frac{a}{t\_4}, a, \mathsf{fma}\left(t\_1, \left|b\right|, \left|t\_1 \cdot \left|b\right| - \frac{a \cdot a}{t\_4}\right|\right)\right)\right) \cdot 8}}{\left|\left|y-scale\right| \cdot \left|x-scale\right|\right|}}{\left(t\_2 \cdot 4\right) \cdot \left|b\right|}}{-a}\\
      
      
      \end{array}
      
      Derivation
      1. Split input into 2 regimes
      2. if x-scale < 4.2000000000000003e109

        1. Initial program 2.6%

          \[\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. Taylor expanded in y-scale around -inf

          \[\leadsto \color{blue}{\frac{-1}{4} \cdot \frac{{x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{{a}^{4} \cdot \left({b}^{4} \cdot \left(\sqrt{{\left(\frac{{a}^{2} \cdot {\sin \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}} + \frac{{b}^{2} \cdot {\cos \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}\right)}^{2}} + \left(\frac{{a}^{2} \cdot {\sin \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}} + \frac{{b}^{2} \cdot {\cos \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}\right)\right)\right)}{{x-scale}^{2}}}\right)}{{a}^{2} \cdot {b}^{2}}} \]
        3. Applied rewrites0.5%

          \[\leadsto \color{blue}{-0.25 \cdot \frac{{x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{{a}^{4} \cdot \left({b}^{4} \cdot \left(\sqrt{{\left(\frac{{a}^{2} \cdot {\sin \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}} + \frac{{b}^{2} \cdot {\cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}\right)}^{2}} + \left(\frac{{a}^{2} \cdot {\sin \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}} + \frac{{b}^{2} \cdot {\cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}\right)\right)\right)}{{x-scale}^{2}}}\right)}{{a}^{2} \cdot {b}^{2}}} \]
        4. Taylor expanded in a around 0

          \[\leadsto -0.25 \cdot \frac{{x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{{b}^{4} \cdot \left(\sqrt{\frac{{b}^{4} \cdot {\cos \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{4}}{{x-scale}^{4}}} + \frac{{b}^{2} \cdot {\cos \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}\right)}{{x-scale}^{2}}}\right)}{\color{blue}{{b}^{2}}} \]
        5. Applied rewrites1.8%

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

          \[\leadsto -0.25 \cdot \left(-1 \cdot \left(b \cdot \color{blue}{\left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{4}}{{x-scale}^{4}}} + \frac{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)}\right)\right) \]
        7. Step-by-step derivation
          1. lower-*.f64N/A

            \[\leadsto \frac{-1}{4} \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \color{blue}{\left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \mathsf{PI}\left(\right)\right)\right)}^{4}}{{x-scale}^{4}}} + \frac{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \mathsf{PI}\left(\right)\right)\right)}^{2}}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)}\right)\right)\right) \]
          2. lower-*.f64N/A

            \[\leadsto \frac{-1}{4} \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \left(y-scale \cdot \color{blue}{\sqrt{8 \cdot \frac{\sqrt{\frac{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \mathsf{PI}\left(\right)\right)\right)}^{4}}{{x-scale}^{4}}} + \frac{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \mathsf{PI}\left(\right)\right)\right)}^{2}}{{x-scale}^{2}}}{{x-scale}^{2}}}}\right)\right)\right)\right) \]
        8. Applied rewrites5.9%

          \[\leadsto -0.25 \cdot \left(-1 \cdot \left(b \cdot \color{blue}{\left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{{\cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)}^{4}}{{x-scale}^{4}}} + \frac{{\cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)}\right)\right) \]
        9. Taylor expanded in angle around 0

          \[\leadsto -0.25 \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{1}{{x-scale}^{4}}} + \frac{1}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)\right)\right) \]
        10. Step-by-step derivation
          1. lower-+.f64N/A

            \[\leadsto \frac{-1}{4} \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{1}{{x-scale}^{4}}} + \frac{1}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)\right)\right) \]
          2. lower-sqrt.f64N/A

            \[\leadsto \frac{-1}{4} \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{1}{{x-scale}^{4}}} + \frac{1}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)\right)\right) \]
          3. lower-/.f64N/A

            \[\leadsto \frac{-1}{4} \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{1}{{x-scale}^{4}}} + \frac{1}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)\right)\right) \]
          4. lower-pow.f64N/A

            \[\leadsto \frac{-1}{4} \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{1}{{x-scale}^{4}}} + \frac{1}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)\right)\right) \]
          5. lower-/.f64N/A

            \[\leadsto \frac{-1}{4} \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{1}{{x-scale}^{4}}} + \frac{1}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)\right)\right) \]
          6. lower-pow.f645.9%

            \[\leadsto -0.25 \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{1}{{x-scale}^{4}}} + \frac{1}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)\right)\right) \]
        11. Applied rewrites5.9%

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

        if 4.2000000000000003e109 < x-scale

        1. Initial program 2.6%

          \[\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. Applied rewrites4.4%

          \[\leadsto \color{blue}{\frac{\left(-\frac{\sqrt{\left(8 \cdot \left(\left(\left(\left(-a\right) \cdot b\right) \cdot b\right) \cdot a\right)\right) \cdot \left(\left(\left(\mathsf{hypot}\left(\frac{\left(\left(b + a\right) \cdot \left(b - a\right)\right) \cdot \sin \left(2 \cdot \left(\pi \cdot \left(0.005555555555555556 \cdot angle\right)\right)\right)}{y-scale \cdot x-scale}, \frac{\mathsf{fma}\left(0.5 - 0.5 \cdot \cos \left(2 \cdot \left(\pi \cdot \left(0.005555555555555556 \cdot angle\right)\right)\right), a \cdot a, \left(0.5 + 0.5 \cdot \cos \left(2 \cdot \left(\pi \cdot \left(0.005555555555555556 \cdot angle\right)\right)\right)\right) \cdot \left(b \cdot b\right)\right)}{x-scale \cdot x-scale} - \frac{\mathsf{fma}\left(0.5 - 0.5 \cdot \cos \left(2 \cdot \left(\pi \cdot \left(0.005555555555555556 \cdot angle\right)\right)\right), b \cdot b, \left(0.5 + 0.5 \cdot \cos \left(2 \cdot \left(\pi \cdot \left(0.005555555555555556 \cdot angle\right)\right)\right)\right) \cdot \left(a \cdot a\right)\right)}{y-scale \cdot y-scale}\right) + \frac{\mathsf{fma}\left(0.5 - 0.5 \cdot \cos \left(2 \cdot \left(\pi \cdot \left(0.005555555555555556 \cdot angle\right)\right)\right), a \cdot a, \left(0.5 + 0.5 \cdot \cos \left(2 \cdot \left(\pi \cdot \left(0.005555555555555556 \cdot angle\right)\right)\right)\right) \cdot \left(b \cdot b\right)\right)}{x-scale \cdot x-scale}\right) + \frac{\mathsf{fma}\left(0.5 - 0.5 \cdot \cos \left(2 \cdot \left(\pi \cdot \left(0.005555555555555556 \cdot angle\right)\right)\right), b \cdot b, \left(0.5 + 0.5 \cdot \cos \left(2 \cdot \left(\pi \cdot \left(0.005555555555555556 \cdot angle\right)\right)\right)\right) \cdot \left(a \cdot a\right)\right)}{y-scale \cdot y-scale}\right) \cdot \left(\left(\left(\left(-a\right) \cdot b\right) \cdot b\right) \cdot a\right)\right)}}{\left|y-scale \cdot x-scale\right|}\right) \cdot \left(\left(\left(y-scale \cdot x-scale\right) \cdot x-scale\right) \cdot y-scale\right)}{\left(\left(\left(a \cdot b\right) \cdot 4\right) \cdot b\right) \cdot \left(-a\right)}} \]
        3. Taylor expanded in angle around 0

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

          \[\leadsto \frac{\color{blue}{-1 \cdot \frac{{x-scale}^{2} \cdot \left({y-scale}^{2} \cdot \sqrt{8 \cdot \left({a}^{4} \cdot \left({b}^{4} \cdot \left(\sqrt{{\left(\frac{{b}^{2}}{{x-scale}^{2}} - \frac{{a}^{2}}{{y-scale}^{2}}\right)}^{2}} + \left(\frac{{a}^{2}}{{y-scale}^{2}} + \frac{{b}^{2}}{{x-scale}^{2}}\right)\right)\right)\right)}\right)}{\left|x-scale \cdot y-scale\right|}}}{\left(\left(\left(a \cdot b\right) \cdot 4\right) \cdot b\right) \cdot \left(-a\right)} \]
        5. Applied rewrites7.5%

          \[\leadsto \color{blue}{\frac{\frac{-\frac{\left(\left(y-scale \cdot \left(x-scale \cdot x-scale\right)\right) \cdot y-scale\right) \cdot \sqrt{\left({\left(a \cdot b\right)}^{4} \cdot \mathsf{fma}\left(\frac{a}{y-scale \cdot y-scale}, a, \mathsf{fma}\left(\frac{b}{x-scale \cdot x-scale}, b, \left|\frac{b}{x-scale \cdot x-scale} \cdot b - \frac{a \cdot a}{y-scale \cdot y-scale}\right|\right)\right)\right) \cdot 8}}{\left|y-scale \cdot x-scale\right|}}{\left(\left(a \cdot b\right) \cdot 4\right) \cdot b}}{-a}} \]
      3. Recombined 2 regimes into one program.
      4. Add Preprocessing

      Alternative 5: 14.1% accurate, 5.8× speedup?

      \[\begin{array}{l} t_0 := \left|y-scale\right| \cdot \left|y-scale\right|\\ t_1 := {\left(\left|x-scale\right|\right)}^{2}\\ t_2 := \left|x-scale\right| \cdot \left|x-scale\right|\\ t_3 := \frac{\left|b\right|}{t\_2}\\ \mathbf{if}\;\left|x-scale\right| \leq 4.2 \cdot 10^{+109}:\\ \;\;\;\;-0.25 \cdot \left(-1 \cdot \left(\left|b\right| \cdot \left(t\_1 \cdot \left(\left|y-scale\right| \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{1}{{\left(\left|x-scale\right|\right)}^{4}}} + \frac{1}{t\_1}}{t\_1}}\right)\right)\right)\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{-\frac{\left(\left(\left|y-scale\right| \cdot t\_2\right) \cdot \left|y-scale\right|\right) \cdot \sqrt{\left({\left(a \cdot \left|b\right|\right)}^{4} \cdot \mathsf{fma}\left(\frac{a}{t\_0}, a, \mathsf{fma}\left(t\_3, \left|b\right|, \left|t\_3 \cdot \left|b\right| - \frac{a \cdot a}{t\_0}\right|\right)\right)\right) \cdot 8}}{\left|\left|y-scale\right| \cdot \left|x-scale\right|\right|}}{\left(\left(\left(\left(-a\right) \cdot \left|b\right|\right) \cdot \left|b\right|\right) \cdot a\right) \cdot 4}\\ \end{array} \]
      (FPCore (a b angle x-scale y-scale)
        :precision binary64
        (let* ((t_0 (* (fabs y-scale) (fabs y-scale)))
             (t_1 (pow (fabs x-scale) 2.0))
             (t_2 (* (fabs x-scale) (fabs x-scale)))
             (t_3 (/ (fabs b) t_2)))
        (if (<= (fabs x-scale) 4.2e+109)
          (*
           -0.25
           (*
            -1.0
            (*
             (fabs b)
             (*
              t_1
              (*
               (fabs y-scale)
               (sqrt
                (*
                 8.0
                 (/
                  (+ (sqrt (/ 1.0 (pow (fabs x-scale) 4.0))) (/ 1.0 t_1))
                  t_1))))))))
          (/
           (-
            (/
             (*
              (* (* (fabs y-scale) t_2) (fabs y-scale))
              (sqrt
               (*
                (*
                 (pow (* a (fabs b)) 4.0)
                 (fma
                  (/ a t_0)
                  a
                  (fma
                   t_3
                   (fabs b)
                   (fabs (- (* t_3 (fabs b)) (/ (* a a) t_0))))))
                8.0)))
             (fabs (* (fabs y-scale) (fabs x-scale)))))
           (* (* (* (* (- a) (fabs b)) (fabs b)) a) 4.0)))))
      double code(double a, double b, double angle, double x_45_scale, double y_45_scale) {
      	double t_0 = fabs(y_45_scale) * fabs(y_45_scale);
      	double t_1 = pow(fabs(x_45_scale), 2.0);
      	double t_2 = fabs(x_45_scale) * fabs(x_45_scale);
      	double t_3 = fabs(b) / t_2;
      	double tmp;
      	if (fabs(x_45_scale) <= 4.2e+109) {
      		tmp = -0.25 * (-1.0 * (fabs(b) * (t_1 * (fabs(y_45_scale) * sqrt((8.0 * ((sqrt((1.0 / pow(fabs(x_45_scale), 4.0))) + (1.0 / t_1)) / t_1)))))));
      	} else {
      		tmp = -((((fabs(y_45_scale) * t_2) * fabs(y_45_scale)) * sqrt(((pow((a * fabs(b)), 4.0) * fma((a / t_0), a, fma(t_3, fabs(b), fabs(((t_3 * fabs(b)) - ((a * a) / t_0)))))) * 8.0))) / fabs((fabs(y_45_scale) * fabs(x_45_scale)))) / ((((-a * fabs(b)) * fabs(b)) * a) * 4.0);
      	}
      	return tmp;
      }
      
      function code(a, b, angle, x_45_scale, y_45_scale)
      	t_0 = Float64(abs(y_45_scale) * abs(y_45_scale))
      	t_1 = abs(x_45_scale) ^ 2.0
      	t_2 = Float64(abs(x_45_scale) * abs(x_45_scale))
      	t_3 = Float64(abs(b) / t_2)
      	tmp = 0.0
      	if (abs(x_45_scale) <= 4.2e+109)
      		tmp = Float64(-0.25 * Float64(-1.0 * Float64(abs(b) * Float64(t_1 * Float64(abs(y_45_scale) * sqrt(Float64(8.0 * Float64(Float64(sqrt(Float64(1.0 / (abs(x_45_scale) ^ 4.0))) + Float64(1.0 / t_1)) / t_1))))))));
      	else
      		tmp = Float64(Float64(-Float64(Float64(Float64(Float64(abs(y_45_scale) * t_2) * abs(y_45_scale)) * sqrt(Float64(Float64((Float64(a * abs(b)) ^ 4.0) * fma(Float64(a / t_0), a, fma(t_3, abs(b), abs(Float64(Float64(t_3 * abs(b)) - Float64(Float64(a * a) / t_0)))))) * 8.0))) / abs(Float64(abs(y_45_scale) * abs(x_45_scale))))) / Float64(Float64(Float64(Float64(Float64(-a) * abs(b)) * abs(b)) * a) * 4.0));
      	end
      	return tmp
      end
      
      code[a_, b_, angle_, x$45$scale_, y$45$scale_] := Block[{t$95$0 = N[(N[Abs[y$45$scale], $MachinePrecision] * N[Abs[y$45$scale], $MachinePrecision]), $MachinePrecision]}, Block[{t$95$1 = N[Power[N[Abs[x$45$scale], $MachinePrecision], 2.0], $MachinePrecision]}, Block[{t$95$2 = N[(N[Abs[x$45$scale], $MachinePrecision] * N[Abs[x$45$scale], $MachinePrecision]), $MachinePrecision]}, Block[{t$95$3 = N[(N[Abs[b], $MachinePrecision] / t$95$2), $MachinePrecision]}, If[LessEqual[N[Abs[x$45$scale], $MachinePrecision], 4.2e+109], N[(-0.25 * N[(-1.0 * N[(N[Abs[b], $MachinePrecision] * N[(t$95$1 * N[(N[Abs[y$45$scale], $MachinePrecision] * N[Sqrt[N[(8.0 * N[(N[(N[Sqrt[N[(1.0 / N[Power[N[Abs[x$45$scale], $MachinePrecision], 4.0], $MachinePrecision]), $MachinePrecision]], $MachinePrecision] + N[(1.0 / t$95$1), $MachinePrecision]), $MachinePrecision] / t$95$1), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[((-N[(N[(N[(N[(N[Abs[y$45$scale], $MachinePrecision] * t$95$2), $MachinePrecision] * N[Abs[y$45$scale], $MachinePrecision]), $MachinePrecision] * N[Sqrt[N[(N[(N[Power[N[(a * N[Abs[b], $MachinePrecision]), $MachinePrecision], 4.0], $MachinePrecision] * N[(N[(a / t$95$0), $MachinePrecision] * a + N[(t$95$3 * N[Abs[b], $MachinePrecision] + N[Abs[N[(N[(t$95$3 * N[Abs[b], $MachinePrecision]), $MachinePrecision] - N[(N[(a * a), $MachinePrecision] / t$95$0), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * 8.0), $MachinePrecision]], $MachinePrecision]), $MachinePrecision] / N[Abs[N[(N[Abs[y$45$scale], $MachinePrecision] * N[Abs[x$45$scale], $MachinePrecision]), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]) / N[(N[(N[(N[((-a) * N[Abs[b], $MachinePrecision]), $MachinePrecision] * N[Abs[b], $MachinePrecision]), $MachinePrecision] * a), $MachinePrecision] * 4.0), $MachinePrecision]), $MachinePrecision]]]]]]
      
      \begin{array}{l}
      t_0 := \left|y-scale\right| \cdot \left|y-scale\right|\\
      t_1 := {\left(\left|x-scale\right|\right)}^{2}\\
      t_2 := \left|x-scale\right| \cdot \left|x-scale\right|\\
      t_3 := \frac{\left|b\right|}{t\_2}\\
      \mathbf{if}\;\left|x-scale\right| \leq 4.2 \cdot 10^{+109}:\\
      \;\;\;\;-0.25 \cdot \left(-1 \cdot \left(\left|b\right| \cdot \left(t\_1 \cdot \left(\left|y-scale\right| \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{1}{{\left(\left|x-scale\right|\right)}^{4}}} + \frac{1}{t\_1}}{t\_1}}\right)\right)\right)\right)\\
      
      \mathbf{else}:\\
      \;\;\;\;\frac{-\frac{\left(\left(\left|y-scale\right| \cdot t\_2\right) \cdot \left|y-scale\right|\right) \cdot \sqrt{\left({\left(a \cdot \left|b\right|\right)}^{4} \cdot \mathsf{fma}\left(\frac{a}{t\_0}, a, \mathsf{fma}\left(t\_3, \left|b\right|, \left|t\_3 \cdot \left|b\right| - \frac{a \cdot a}{t\_0}\right|\right)\right)\right) \cdot 8}}{\left|\left|y-scale\right| \cdot \left|x-scale\right|\right|}}{\left(\left(\left(\left(-a\right) \cdot \left|b\right|\right) \cdot \left|b\right|\right) \cdot a\right) \cdot 4}\\
      
      
      \end{array}
      
      Derivation
      1. Split input into 2 regimes
      2. if x-scale < 4.2000000000000003e109

        1. Initial program 2.6%

          \[\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. Taylor expanded in y-scale around -inf

          \[\leadsto \color{blue}{\frac{-1}{4} \cdot \frac{{x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{{a}^{4} \cdot \left({b}^{4} \cdot \left(\sqrt{{\left(\frac{{a}^{2} \cdot {\sin \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}} + \frac{{b}^{2} \cdot {\cos \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}\right)}^{2}} + \left(\frac{{a}^{2} \cdot {\sin \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}} + \frac{{b}^{2} \cdot {\cos \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}\right)\right)\right)}{{x-scale}^{2}}}\right)}{{a}^{2} \cdot {b}^{2}}} \]
        3. Applied rewrites0.5%

          \[\leadsto \color{blue}{-0.25 \cdot \frac{{x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{{a}^{4} \cdot \left({b}^{4} \cdot \left(\sqrt{{\left(\frac{{a}^{2} \cdot {\sin \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}} + \frac{{b}^{2} \cdot {\cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}\right)}^{2}} + \left(\frac{{a}^{2} \cdot {\sin \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}} + \frac{{b}^{2} \cdot {\cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}\right)\right)\right)}{{x-scale}^{2}}}\right)}{{a}^{2} \cdot {b}^{2}}} \]
        4. Taylor expanded in a around 0

          \[\leadsto -0.25 \cdot \frac{{x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{{b}^{4} \cdot \left(\sqrt{\frac{{b}^{4} \cdot {\cos \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{4}}{{x-scale}^{4}}} + \frac{{b}^{2} \cdot {\cos \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}\right)}{{x-scale}^{2}}}\right)}{\color{blue}{{b}^{2}}} \]
        5. Applied rewrites1.8%

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

          \[\leadsto -0.25 \cdot \left(-1 \cdot \left(b \cdot \color{blue}{\left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{4}}{{x-scale}^{4}}} + \frac{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)}\right)\right) \]
        7. Step-by-step derivation
          1. lower-*.f64N/A

            \[\leadsto \frac{-1}{4} \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \color{blue}{\left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \mathsf{PI}\left(\right)\right)\right)}^{4}}{{x-scale}^{4}}} + \frac{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \mathsf{PI}\left(\right)\right)\right)}^{2}}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)}\right)\right)\right) \]
          2. lower-*.f64N/A

            \[\leadsto \frac{-1}{4} \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \left(y-scale \cdot \color{blue}{\sqrt{8 \cdot \frac{\sqrt{\frac{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \mathsf{PI}\left(\right)\right)\right)}^{4}}{{x-scale}^{4}}} + \frac{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \mathsf{PI}\left(\right)\right)\right)}^{2}}{{x-scale}^{2}}}{{x-scale}^{2}}}}\right)\right)\right)\right) \]
        8. Applied rewrites5.9%

          \[\leadsto -0.25 \cdot \left(-1 \cdot \left(b \cdot \color{blue}{\left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{{\cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)}^{4}}{{x-scale}^{4}}} + \frac{{\cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)}\right)\right) \]
        9. Taylor expanded in angle around 0

          \[\leadsto -0.25 \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{1}{{x-scale}^{4}}} + \frac{1}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)\right)\right) \]
        10. Step-by-step derivation
          1. lower-+.f64N/A

            \[\leadsto \frac{-1}{4} \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{1}{{x-scale}^{4}}} + \frac{1}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)\right)\right) \]
          2. lower-sqrt.f64N/A

            \[\leadsto \frac{-1}{4} \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{1}{{x-scale}^{4}}} + \frac{1}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)\right)\right) \]
          3. lower-/.f64N/A

            \[\leadsto \frac{-1}{4} \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{1}{{x-scale}^{4}}} + \frac{1}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)\right)\right) \]
          4. lower-pow.f64N/A

            \[\leadsto \frac{-1}{4} \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{1}{{x-scale}^{4}}} + \frac{1}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)\right)\right) \]
          5. lower-/.f64N/A

            \[\leadsto \frac{-1}{4} \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{1}{{x-scale}^{4}}} + \frac{1}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)\right)\right) \]
          6. lower-pow.f645.9%

            \[\leadsto -0.25 \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{1}{{x-scale}^{4}}} + \frac{1}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)\right)\right) \]
        11. Applied rewrites5.9%

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

        if 4.2000000000000003e109 < x-scale

        1. Initial program 2.6%

          \[\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. Applied rewrites4.4%

          \[\leadsto \color{blue}{\frac{\left(-\frac{\sqrt{\left(8 \cdot \left(\left(\left(\left(-a\right) \cdot b\right) \cdot b\right) \cdot a\right)\right) \cdot \left(\left(\left(\mathsf{hypot}\left(\frac{\left(\left(b + a\right) \cdot \left(b - a\right)\right) \cdot \sin \left(2 \cdot \left(\pi \cdot \left(0.005555555555555556 \cdot angle\right)\right)\right)}{y-scale \cdot x-scale}, \frac{\mathsf{fma}\left(0.5 - 0.5 \cdot \cos \left(2 \cdot \left(\pi \cdot \left(0.005555555555555556 \cdot angle\right)\right)\right), a \cdot a, \left(0.5 + 0.5 \cdot \cos \left(2 \cdot \left(\pi \cdot \left(0.005555555555555556 \cdot angle\right)\right)\right)\right) \cdot \left(b \cdot b\right)\right)}{x-scale \cdot x-scale} - \frac{\mathsf{fma}\left(0.5 - 0.5 \cdot \cos \left(2 \cdot \left(\pi \cdot \left(0.005555555555555556 \cdot angle\right)\right)\right), b \cdot b, \left(0.5 + 0.5 \cdot \cos \left(2 \cdot \left(\pi \cdot \left(0.005555555555555556 \cdot angle\right)\right)\right)\right) \cdot \left(a \cdot a\right)\right)}{y-scale \cdot y-scale}\right) + \frac{\mathsf{fma}\left(0.5 - 0.5 \cdot \cos \left(2 \cdot \left(\pi \cdot \left(0.005555555555555556 \cdot angle\right)\right)\right), a \cdot a, \left(0.5 + 0.5 \cdot \cos \left(2 \cdot \left(\pi \cdot \left(0.005555555555555556 \cdot angle\right)\right)\right)\right) \cdot \left(b \cdot b\right)\right)}{x-scale \cdot x-scale}\right) + \frac{\mathsf{fma}\left(0.5 - 0.5 \cdot \cos \left(2 \cdot \left(\pi \cdot \left(0.005555555555555556 \cdot angle\right)\right)\right), b \cdot b, \left(0.5 + 0.5 \cdot \cos \left(2 \cdot \left(\pi \cdot \left(0.005555555555555556 \cdot angle\right)\right)\right)\right) \cdot \left(a \cdot a\right)\right)}{y-scale \cdot y-scale}\right) \cdot \left(\left(\left(\left(-a\right) \cdot b\right) \cdot b\right) \cdot a\right)\right)}}{\left|y-scale \cdot x-scale\right|}\right) \cdot \left(\left(\left(y-scale \cdot x-scale\right) \cdot x-scale\right) \cdot y-scale\right)}{\left(\left(\left(a \cdot b\right) \cdot 4\right) \cdot b\right) \cdot \left(-a\right)}} \]
        3. Taylor expanded in angle around 0

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

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

          \[\leadsto \color{blue}{\frac{-\frac{\left(\left(y-scale \cdot \left(x-scale \cdot x-scale\right)\right) \cdot y-scale\right) \cdot \sqrt{\left({\left(a \cdot b\right)}^{4} \cdot \mathsf{fma}\left(\frac{a}{y-scale \cdot y-scale}, a, \mathsf{fma}\left(\frac{b}{x-scale \cdot x-scale}, b, \left|\frac{b}{x-scale \cdot x-scale} \cdot b - \frac{a \cdot a}{y-scale \cdot y-scale}\right|\right)\right)\right) \cdot 8}}{\left|y-scale \cdot x-scale\right|}}{\left(\left(\left(\left(-a\right) \cdot b\right) \cdot b\right) \cdot a\right) \cdot 4}} \]
      3. Recombined 2 regimes into one program.
      4. Add Preprocessing

      Alternative 6: 11.2% accurate, 7.5× speedup?

      \[-0.25 \cdot \left(-1 \cdot \left(\left|b\right| \cdot \left({x-scale}^{2} \cdot \left(\left|y-scale\right| \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{1}{{x-scale}^{4}}} + \frac{1}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)\right)\right) \]
      (FPCore (a b angle x-scale y-scale)
        :precision binary64
        (*
       -0.25
       (*
        -1.0
        (*
         (fabs b)
         (*
          (pow x-scale 2.0)
          (*
           (fabs y-scale)
           (sqrt
            (*
             8.0
             (/
              (+ (sqrt (/ 1.0 (pow x-scale 4.0))) (/ 1.0 (pow x-scale 2.0)))
              (pow x-scale 2.0))))))))))
      double code(double a, double b, double angle, double x_45_scale, double y_45_scale) {
      	return -0.25 * (-1.0 * (fabs(b) * (pow(x_45_scale, 2.0) * (fabs(y_45_scale) * sqrt((8.0 * ((sqrt((1.0 / pow(x_45_scale, 4.0))) + (1.0 / pow(x_45_scale, 2.0))) / pow(x_45_scale, 2.0))))))));
      }
      
      module fmin_fmax_functions
          implicit none
          private
          public fmax
          public fmin
      
          interface fmax
              module procedure fmax88
              module procedure fmax44
              module procedure fmax84
              module procedure fmax48
          end interface
          interface fmin
              module procedure fmin88
              module procedure fmin44
              module procedure fmin84
              module procedure fmin48
          end interface
      contains
          real(8) function fmax88(x, y) result (res)
              real(8), intent (in) :: x
              real(8), intent (in) :: y
              res = merge(y, merge(x, max(x, y), y /= y), x /= x)
          end function
          real(4) function fmax44(x, y) result (res)
              real(4), intent (in) :: x
              real(4), intent (in) :: y
              res = merge(y, merge(x, max(x, y), y /= y), x /= x)
          end function
          real(8) function fmax84(x, y) result(res)
              real(8), intent (in) :: x
              real(4), intent (in) :: y
              res = merge(dble(y), merge(x, max(x, dble(y)), y /= y), x /= x)
          end function
          real(8) function fmax48(x, y) result(res)
              real(4), intent (in) :: x
              real(8), intent (in) :: y
              res = merge(y, merge(dble(x), max(dble(x), y), y /= y), x /= x)
          end function
          real(8) function fmin88(x, y) result (res)
              real(8), intent (in) :: x
              real(8), intent (in) :: y
              res = merge(y, merge(x, min(x, y), y /= y), x /= x)
          end function
          real(4) function fmin44(x, y) result (res)
              real(4), intent (in) :: x
              real(4), intent (in) :: y
              res = merge(y, merge(x, min(x, y), y /= y), x /= x)
          end function
          real(8) function fmin84(x, y) result(res)
              real(8), intent (in) :: x
              real(4), intent (in) :: y
              res = merge(dble(y), merge(x, min(x, dble(y)), y /= y), x /= x)
          end function
          real(8) function fmin48(x, y) result(res)
              real(4), intent (in) :: x
              real(8), intent (in) :: y
              res = merge(y, merge(dble(x), min(dble(x), y), y /= y), x /= x)
          end function
      end module
      
      real(8) function code(a, b, angle, x_45scale, y_45scale)
      use fmin_fmax_functions
          real(8), intent (in) :: a
          real(8), intent (in) :: b
          real(8), intent (in) :: angle
          real(8), intent (in) :: x_45scale
          real(8), intent (in) :: y_45scale
          code = (-0.25d0) * ((-1.0d0) * (abs(b) * ((x_45scale ** 2.0d0) * (abs(y_45scale) * sqrt((8.0d0 * ((sqrt((1.0d0 / (x_45scale ** 4.0d0))) + (1.0d0 / (x_45scale ** 2.0d0))) / (x_45scale ** 2.0d0))))))))
      end function
      
      public static double code(double a, double b, double angle, double x_45_scale, double y_45_scale) {
      	return -0.25 * (-1.0 * (Math.abs(b) * (Math.pow(x_45_scale, 2.0) * (Math.abs(y_45_scale) * Math.sqrt((8.0 * ((Math.sqrt((1.0 / Math.pow(x_45_scale, 4.0))) + (1.0 / Math.pow(x_45_scale, 2.0))) / Math.pow(x_45_scale, 2.0))))))));
      }
      
      def code(a, b, angle, x_45_scale, y_45_scale):
      	return -0.25 * (-1.0 * (math.fabs(b) * (math.pow(x_45_scale, 2.0) * (math.fabs(y_45_scale) * math.sqrt((8.0 * ((math.sqrt((1.0 / math.pow(x_45_scale, 4.0))) + (1.0 / math.pow(x_45_scale, 2.0))) / math.pow(x_45_scale, 2.0))))))))
      
      function code(a, b, angle, x_45_scale, y_45_scale)
      	return Float64(-0.25 * Float64(-1.0 * Float64(abs(b) * Float64((x_45_scale ^ 2.0) * Float64(abs(y_45_scale) * sqrt(Float64(8.0 * Float64(Float64(sqrt(Float64(1.0 / (x_45_scale ^ 4.0))) + Float64(1.0 / (x_45_scale ^ 2.0))) / (x_45_scale ^ 2.0)))))))))
      end
      
      function tmp = code(a, b, angle, x_45_scale, y_45_scale)
      	tmp = -0.25 * (-1.0 * (abs(b) * ((x_45_scale ^ 2.0) * (abs(y_45_scale) * sqrt((8.0 * ((sqrt((1.0 / (x_45_scale ^ 4.0))) + (1.0 / (x_45_scale ^ 2.0))) / (x_45_scale ^ 2.0))))))));
      end
      
      code[a_, b_, angle_, x$45$scale_, y$45$scale_] := N[(-0.25 * N[(-1.0 * N[(N[Abs[b], $MachinePrecision] * N[(N[Power[x$45$scale, 2.0], $MachinePrecision] * N[(N[Abs[y$45$scale], $MachinePrecision] * N[Sqrt[N[(8.0 * N[(N[(N[Sqrt[N[(1.0 / N[Power[x$45$scale, 4.0], $MachinePrecision]), $MachinePrecision]], $MachinePrecision] + N[(1.0 / N[Power[x$45$scale, 2.0], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / N[Power[x$45$scale, 2.0], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
      
      -0.25 \cdot \left(-1 \cdot \left(\left|b\right| \cdot \left({x-scale}^{2} \cdot \left(\left|y-scale\right| \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{1}{{x-scale}^{4}}} + \frac{1}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)\right)\right)
      
      Derivation
      1. Initial program 2.6%

        \[\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. Taylor expanded in y-scale around -inf

        \[\leadsto \color{blue}{\frac{-1}{4} \cdot \frac{{x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{{a}^{4} \cdot \left({b}^{4} \cdot \left(\sqrt{{\left(\frac{{a}^{2} \cdot {\sin \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}} + \frac{{b}^{2} \cdot {\cos \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}\right)}^{2}} + \left(\frac{{a}^{2} \cdot {\sin \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}} + \frac{{b}^{2} \cdot {\cos \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}\right)\right)\right)}{{x-scale}^{2}}}\right)}{{a}^{2} \cdot {b}^{2}}} \]
      3. Applied rewrites0.5%

        \[\leadsto \color{blue}{-0.25 \cdot \frac{{x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{{a}^{4} \cdot \left({b}^{4} \cdot \left(\sqrt{{\left(\frac{{a}^{2} \cdot {\sin \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}} + \frac{{b}^{2} \cdot {\cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}\right)}^{2}} + \left(\frac{{a}^{2} \cdot {\sin \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}} + \frac{{b}^{2} \cdot {\cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}\right)\right)\right)}{{x-scale}^{2}}}\right)}{{a}^{2} \cdot {b}^{2}}} \]
      4. Taylor expanded in a around 0

        \[\leadsto -0.25 \cdot \frac{{x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{{b}^{4} \cdot \left(\sqrt{\frac{{b}^{4} \cdot {\cos \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{4}}{{x-scale}^{4}}} + \frac{{b}^{2} \cdot {\cos \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}\right)}{{x-scale}^{2}}}\right)}{\color{blue}{{b}^{2}}} \]
      5. Applied rewrites1.8%

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

        \[\leadsto -0.25 \cdot \left(-1 \cdot \left(b \cdot \color{blue}{\left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{4}}{{x-scale}^{4}}} + \frac{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)}\right)\right) \]
      7. Step-by-step derivation
        1. lower-*.f64N/A

          \[\leadsto \frac{-1}{4} \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \color{blue}{\left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \mathsf{PI}\left(\right)\right)\right)}^{4}}{{x-scale}^{4}}} + \frac{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \mathsf{PI}\left(\right)\right)\right)}^{2}}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)}\right)\right)\right) \]
        2. lower-*.f64N/A

          \[\leadsto \frac{-1}{4} \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \left(y-scale \cdot \color{blue}{\sqrt{8 \cdot \frac{\sqrt{\frac{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \mathsf{PI}\left(\right)\right)\right)}^{4}}{{x-scale}^{4}}} + \frac{{\cos \left(\frac{1}{180} \cdot \left(angle \cdot \mathsf{PI}\left(\right)\right)\right)}^{2}}{{x-scale}^{2}}}{{x-scale}^{2}}}}\right)\right)\right)\right) \]
      8. Applied rewrites5.9%

        \[\leadsto -0.25 \cdot \left(-1 \cdot \left(b \cdot \color{blue}{\left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{{\cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)}^{4}}{{x-scale}^{4}}} + \frac{{\cos \left(0.005555555555555556 \cdot \left(angle \cdot \pi\right)\right)}^{2}}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)}\right)\right) \]
      9. Taylor expanded in angle around 0

        \[\leadsto -0.25 \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{1}{{x-scale}^{4}}} + \frac{1}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)\right)\right) \]
      10. Step-by-step derivation
        1. lower-+.f64N/A

          \[\leadsto \frac{-1}{4} \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{1}{{x-scale}^{4}}} + \frac{1}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)\right)\right) \]
        2. lower-sqrt.f64N/A

          \[\leadsto \frac{-1}{4} \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{1}{{x-scale}^{4}}} + \frac{1}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)\right)\right) \]
        3. lower-/.f64N/A

          \[\leadsto \frac{-1}{4} \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{1}{{x-scale}^{4}}} + \frac{1}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)\right)\right) \]
        4. lower-pow.f64N/A

          \[\leadsto \frac{-1}{4} \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{1}{{x-scale}^{4}}} + \frac{1}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)\right)\right) \]
        5. lower-/.f64N/A

          \[\leadsto \frac{-1}{4} \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{1}{{x-scale}^{4}}} + \frac{1}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)\right)\right) \]
        6. lower-pow.f645.9%

          \[\leadsto -0.25 \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{1}{{x-scale}^{4}}} + \frac{1}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)\right)\right) \]
      11. Applied rewrites5.9%

        \[\leadsto -0.25 \cdot \left(-1 \cdot \left(b \cdot \left({x-scale}^{2} \cdot \left(y-scale \cdot \sqrt{8 \cdot \frac{\sqrt{\frac{1}{{x-scale}^{4}}} + \frac{1}{{x-scale}^{2}}}{{x-scale}^{2}}}\right)\right)\right)\right) \]
      12. Add Preprocessing

      Reproduce

      ?
      herbie shell --seed 2025210 
      (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))))