| Alternative 1 | |
|---|---|
| Error | 14.4 |
| Cost | 14544 |
(FPCore (x.re x.im y.re y.im) :precision binary64 (/ (+ (* x.re y.re) (* x.im y.im)) (+ (* y.re y.re) (* y.im y.im))))
(FPCore (x.re x.im y.re y.im)
:precision binary64
(let* ((t_0
(+
(/ x.im y.im)
(*
(-
(* (/ x.re (pow y.im 2.0)) -0.25)
(* x.re (/ -1.25 (pow y.im 2.0))))
y.re)))
(t_1 (+ (pow y.im 2.0) (pow y.re 2.0)))
(t_2 (+ (* y.re y.re) (* y.im y.im)))
(t_3 (/ x.im t_2))
(t_4 (+ (/ x.re y.re) (* y.im t_3)))
(t_5 (/ y.re t_1)))
(if (<= y.re -9e+104)
t_4
(if (<= y.re -6e-114)
(+ (/ (* x.im y.im) t_1) (* x.re (- (* t_5 -0.25) (* -1.25 t_5))))
(if (<= y.re -1.08e-191)
t_0
(if (<= y.re -7.8e-252)
(/
(+
(/ (* y.re x.re) -2.0)
(+ (* x.re (- (* 0.25 y.re) (* -1.25 y.re))) (* x.im y.im)))
t_2)
(if (<= y.re 4.2e-270)
(/ x.im y.im)
(if (<= y.re 9.5e-150)
t_0
(if (<= y.re 3e+98)
(- (/ (* y.re x.re) t_2) (* (- y.im) t_3))
t_4)))))))))double code(double x_46_re, double x_46_im, double y_46_re, double y_46_im) {
return ((x_46_re * y_46_re) + (x_46_im * y_46_im)) / ((y_46_re * y_46_re) + (y_46_im * y_46_im));
}
double code(double x_46_re, double x_46_im, double y_46_re, double y_46_im) {
double t_0 = (x_46_im / y_46_im) + ((((x_46_re / pow(y_46_im, 2.0)) * -0.25) - (x_46_re * (-1.25 / pow(y_46_im, 2.0)))) * y_46_re);
double t_1 = pow(y_46_im, 2.0) + pow(y_46_re, 2.0);
double t_2 = (y_46_re * y_46_re) + (y_46_im * y_46_im);
double t_3 = x_46_im / t_2;
double t_4 = (x_46_re / y_46_re) + (y_46_im * t_3);
double t_5 = y_46_re / t_1;
double tmp;
if (y_46_re <= -9e+104) {
tmp = t_4;
} else if (y_46_re <= -6e-114) {
tmp = ((x_46_im * y_46_im) / t_1) + (x_46_re * ((t_5 * -0.25) - (-1.25 * t_5)));
} else if (y_46_re <= -1.08e-191) {
tmp = t_0;
} else if (y_46_re <= -7.8e-252) {
tmp = (((y_46_re * x_46_re) / -2.0) + ((x_46_re * ((0.25 * y_46_re) - (-1.25 * y_46_re))) + (x_46_im * y_46_im))) / t_2;
} else if (y_46_re <= 4.2e-270) {
tmp = x_46_im / y_46_im;
} else if (y_46_re <= 9.5e-150) {
tmp = t_0;
} else if (y_46_re <= 3e+98) {
tmp = ((y_46_re * x_46_re) / t_2) - (-y_46_im * t_3);
} else {
tmp = t_4;
}
return tmp;
}
real(8) function code(x_46re, x_46im, y_46re, y_46im)
real(8), intent (in) :: x_46re
real(8), intent (in) :: x_46im
real(8), intent (in) :: y_46re
real(8), intent (in) :: y_46im
code = ((x_46re * y_46re) + (x_46im * y_46im)) / ((y_46re * y_46re) + (y_46im * y_46im))
end function
real(8) function code(x_46re, x_46im, y_46re, y_46im)
real(8), intent (in) :: x_46re
real(8), intent (in) :: x_46im
real(8), intent (in) :: y_46re
real(8), intent (in) :: y_46im
real(8) :: t_0
real(8) :: t_1
real(8) :: t_2
real(8) :: t_3
real(8) :: t_4
real(8) :: t_5
real(8) :: tmp
t_0 = (x_46im / y_46im) + ((((x_46re / (y_46im ** 2.0d0)) * (-0.25d0)) - (x_46re * ((-1.25d0) / (y_46im ** 2.0d0)))) * y_46re)
t_1 = (y_46im ** 2.0d0) + (y_46re ** 2.0d0)
t_2 = (y_46re * y_46re) + (y_46im * y_46im)
t_3 = x_46im / t_2
t_4 = (x_46re / y_46re) + (y_46im * t_3)
t_5 = y_46re / t_1
if (y_46re <= (-9d+104)) then
tmp = t_4
else if (y_46re <= (-6d-114)) then
tmp = ((x_46im * y_46im) / t_1) + (x_46re * ((t_5 * (-0.25d0)) - ((-1.25d0) * t_5)))
else if (y_46re <= (-1.08d-191)) then
tmp = t_0
else if (y_46re <= (-7.8d-252)) then
tmp = (((y_46re * x_46re) / (-2.0d0)) + ((x_46re * ((0.25d0 * y_46re) - ((-1.25d0) * y_46re))) + (x_46im * y_46im))) / t_2
else if (y_46re <= 4.2d-270) then
tmp = x_46im / y_46im
else if (y_46re <= 9.5d-150) then
tmp = t_0
else if (y_46re <= 3d+98) then
tmp = ((y_46re * x_46re) / t_2) - (-y_46im * t_3)
else
tmp = t_4
end if
code = tmp
end function
public static double code(double x_46_re, double x_46_im, double y_46_re, double y_46_im) {
return ((x_46_re * y_46_re) + (x_46_im * y_46_im)) / ((y_46_re * y_46_re) + (y_46_im * y_46_im));
}
public static double code(double x_46_re, double x_46_im, double y_46_re, double y_46_im) {
double t_0 = (x_46_im / y_46_im) + ((((x_46_re / Math.pow(y_46_im, 2.0)) * -0.25) - (x_46_re * (-1.25 / Math.pow(y_46_im, 2.0)))) * y_46_re);
double t_1 = Math.pow(y_46_im, 2.0) + Math.pow(y_46_re, 2.0);
double t_2 = (y_46_re * y_46_re) + (y_46_im * y_46_im);
double t_3 = x_46_im / t_2;
double t_4 = (x_46_re / y_46_re) + (y_46_im * t_3);
double t_5 = y_46_re / t_1;
double tmp;
if (y_46_re <= -9e+104) {
tmp = t_4;
} else if (y_46_re <= -6e-114) {
tmp = ((x_46_im * y_46_im) / t_1) + (x_46_re * ((t_5 * -0.25) - (-1.25 * t_5)));
} else if (y_46_re <= -1.08e-191) {
tmp = t_0;
} else if (y_46_re <= -7.8e-252) {
tmp = (((y_46_re * x_46_re) / -2.0) + ((x_46_re * ((0.25 * y_46_re) - (-1.25 * y_46_re))) + (x_46_im * y_46_im))) / t_2;
} else if (y_46_re <= 4.2e-270) {
tmp = x_46_im / y_46_im;
} else if (y_46_re <= 9.5e-150) {
tmp = t_0;
} else if (y_46_re <= 3e+98) {
tmp = ((y_46_re * x_46_re) / t_2) - (-y_46_im * t_3);
} else {
tmp = t_4;
}
return tmp;
}
def code(x_46_re, x_46_im, y_46_re, y_46_im): return ((x_46_re * y_46_re) + (x_46_im * y_46_im)) / ((y_46_re * y_46_re) + (y_46_im * y_46_im))
def code(x_46_re, x_46_im, y_46_re, y_46_im): t_0 = (x_46_im / y_46_im) + ((((x_46_re / math.pow(y_46_im, 2.0)) * -0.25) - (x_46_re * (-1.25 / math.pow(y_46_im, 2.0)))) * y_46_re) t_1 = math.pow(y_46_im, 2.0) + math.pow(y_46_re, 2.0) t_2 = (y_46_re * y_46_re) + (y_46_im * y_46_im) t_3 = x_46_im / t_2 t_4 = (x_46_re / y_46_re) + (y_46_im * t_3) t_5 = y_46_re / t_1 tmp = 0 if y_46_re <= -9e+104: tmp = t_4 elif y_46_re <= -6e-114: tmp = ((x_46_im * y_46_im) / t_1) + (x_46_re * ((t_5 * -0.25) - (-1.25 * t_5))) elif y_46_re <= -1.08e-191: tmp = t_0 elif y_46_re <= -7.8e-252: tmp = (((y_46_re * x_46_re) / -2.0) + ((x_46_re * ((0.25 * y_46_re) - (-1.25 * y_46_re))) + (x_46_im * y_46_im))) / t_2 elif y_46_re <= 4.2e-270: tmp = x_46_im / y_46_im elif y_46_re <= 9.5e-150: tmp = t_0 elif y_46_re <= 3e+98: tmp = ((y_46_re * x_46_re) / t_2) - (-y_46_im * t_3) else: tmp = t_4 return tmp
function code(x_46_re, x_46_im, y_46_re, y_46_im) return Float64(Float64(Float64(x_46_re * y_46_re) + Float64(x_46_im * y_46_im)) / Float64(Float64(y_46_re * y_46_re) + Float64(y_46_im * y_46_im))) end
function code(x_46_re, x_46_im, y_46_re, y_46_im) t_0 = Float64(Float64(x_46_im / y_46_im) + Float64(Float64(Float64(Float64(x_46_re / (y_46_im ^ 2.0)) * -0.25) - Float64(x_46_re * Float64(-1.25 / (y_46_im ^ 2.0)))) * y_46_re)) t_1 = Float64((y_46_im ^ 2.0) + (y_46_re ^ 2.0)) t_2 = Float64(Float64(y_46_re * y_46_re) + Float64(y_46_im * y_46_im)) t_3 = Float64(x_46_im / t_2) t_4 = Float64(Float64(x_46_re / y_46_re) + Float64(y_46_im * t_3)) t_5 = Float64(y_46_re / t_1) tmp = 0.0 if (y_46_re <= -9e+104) tmp = t_4; elseif (y_46_re <= -6e-114) tmp = Float64(Float64(Float64(x_46_im * y_46_im) / t_1) + Float64(x_46_re * Float64(Float64(t_5 * -0.25) - Float64(-1.25 * t_5)))); elseif (y_46_re <= -1.08e-191) tmp = t_0; elseif (y_46_re <= -7.8e-252) tmp = Float64(Float64(Float64(Float64(y_46_re * x_46_re) / -2.0) + Float64(Float64(x_46_re * Float64(Float64(0.25 * y_46_re) - Float64(-1.25 * y_46_re))) + Float64(x_46_im * y_46_im))) / t_2); elseif (y_46_re <= 4.2e-270) tmp = Float64(x_46_im / y_46_im); elseif (y_46_re <= 9.5e-150) tmp = t_0; elseif (y_46_re <= 3e+98) tmp = Float64(Float64(Float64(y_46_re * x_46_re) / t_2) - Float64(Float64(-y_46_im) * t_3)); else tmp = t_4; end return tmp end
function tmp = code(x_46_re, x_46_im, y_46_re, y_46_im) tmp = ((x_46_re * y_46_re) + (x_46_im * y_46_im)) / ((y_46_re * y_46_re) + (y_46_im * y_46_im)); end
function tmp_2 = code(x_46_re, x_46_im, y_46_re, y_46_im) t_0 = (x_46_im / y_46_im) + ((((x_46_re / (y_46_im ^ 2.0)) * -0.25) - (x_46_re * (-1.25 / (y_46_im ^ 2.0)))) * y_46_re); t_1 = (y_46_im ^ 2.0) + (y_46_re ^ 2.0); t_2 = (y_46_re * y_46_re) + (y_46_im * y_46_im); t_3 = x_46_im / t_2; t_4 = (x_46_re / y_46_re) + (y_46_im * t_3); t_5 = y_46_re / t_1; tmp = 0.0; if (y_46_re <= -9e+104) tmp = t_4; elseif (y_46_re <= -6e-114) tmp = ((x_46_im * y_46_im) / t_1) + (x_46_re * ((t_5 * -0.25) - (-1.25 * t_5))); elseif (y_46_re <= -1.08e-191) tmp = t_0; elseif (y_46_re <= -7.8e-252) tmp = (((y_46_re * x_46_re) / -2.0) + ((x_46_re * ((0.25 * y_46_re) - (-1.25 * y_46_re))) + (x_46_im * y_46_im))) / t_2; elseif (y_46_re <= 4.2e-270) tmp = x_46_im / y_46_im; elseif (y_46_re <= 9.5e-150) tmp = t_0; elseif (y_46_re <= 3e+98) tmp = ((y_46_re * x_46_re) / t_2) - (-y_46_im * t_3); else tmp = t_4; end tmp_2 = tmp; end
code[x$46$re_, x$46$im_, y$46$re_, y$46$im_] := N[(N[(N[(x$46$re * y$46$re), $MachinePrecision] + N[(x$46$im * y$46$im), $MachinePrecision]), $MachinePrecision] / N[(N[(y$46$re * y$46$re), $MachinePrecision] + N[(y$46$im * y$46$im), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
code[x$46$re_, x$46$im_, y$46$re_, y$46$im_] := Block[{t$95$0 = N[(N[(x$46$im / y$46$im), $MachinePrecision] + N[(N[(N[(N[(x$46$re / N[Power[y$46$im, 2.0], $MachinePrecision]), $MachinePrecision] * -0.25), $MachinePrecision] - N[(x$46$re * N[(-1.25 / N[Power[y$46$im, 2.0], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * y$46$re), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$1 = N[(N[Power[y$46$im, 2.0], $MachinePrecision] + N[Power[y$46$re, 2.0], $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(N[(y$46$re * y$46$re), $MachinePrecision] + N[(y$46$im * y$46$im), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$3 = N[(x$46$im / t$95$2), $MachinePrecision]}, Block[{t$95$4 = N[(N[(x$46$re / y$46$re), $MachinePrecision] + N[(y$46$im * t$95$3), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$5 = N[(y$46$re / t$95$1), $MachinePrecision]}, If[LessEqual[y$46$re, -9e+104], t$95$4, If[LessEqual[y$46$re, -6e-114], N[(N[(N[(x$46$im * y$46$im), $MachinePrecision] / t$95$1), $MachinePrecision] + N[(x$46$re * N[(N[(t$95$5 * -0.25), $MachinePrecision] - N[(-1.25 * t$95$5), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[y$46$re, -1.08e-191], t$95$0, If[LessEqual[y$46$re, -7.8e-252], N[(N[(N[(N[(y$46$re * x$46$re), $MachinePrecision] / -2.0), $MachinePrecision] + N[(N[(x$46$re * N[(N[(0.25 * y$46$re), $MachinePrecision] - N[(-1.25 * y$46$re), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(x$46$im * y$46$im), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / t$95$2), $MachinePrecision], If[LessEqual[y$46$re, 4.2e-270], N[(x$46$im / y$46$im), $MachinePrecision], If[LessEqual[y$46$re, 9.5e-150], t$95$0, If[LessEqual[y$46$re, 3e+98], N[(N[(N[(y$46$re * x$46$re), $MachinePrecision] / t$95$2), $MachinePrecision] - N[((-y$46$im) * t$95$3), $MachinePrecision]), $MachinePrecision], t$95$4]]]]]]]]]]]]]
\frac{x.re \cdot y.re + x.im \cdot y.im}{y.re \cdot y.re + y.im \cdot y.im}
\begin{array}{l}
t_0 := \frac{x.im}{y.im} + \left(\frac{x.re}{{y.im}^{2}} \cdot -0.25 - x.re \cdot \frac{-1.25}{{y.im}^{2}}\right) \cdot y.re\\
t_1 := {y.im}^{2} + {y.re}^{2}\\
t_2 := y.re \cdot y.re + y.im \cdot y.im\\
t_3 := \frac{x.im}{t_2}\\
t_4 := \frac{x.re}{y.re} + y.im \cdot t_3\\
t_5 := \frac{y.re}{t_1}\\
\mathbf{if}\;y.re \leq -9 \cdot 10^{+104}:\\
\;\;\;\;t_4\\
\mathbf{elif}\;y.re \leq -6 \cdot 10^{-114}:\\
\;\;\;\;\frac{x.im \cdot y.im}{t_1} + x.re \cdot \left(t_5 \cdot -0.25 - -1.25 \cdot t_5\right)\\
\mathbf{elif}\;y.re \leq -1.08 \cdot 10^{-191}:\\
\;\;\;\;t_0\\
\mathbf{elif}\;y.re \leq -7.8 \cdot 10^{-252}:\\
\;\;\;\;\frac{\frac{y.re \cdot x.re}{-2} + \left(x.re \cdot \left(0.25 \cdot y.re - -1.25 \cdot y.re\right) + x.im \cdot y.im\right)}{t_2}\\
\mathbf{elif}\;y.re \leq 4.2 \cdot 10^{-270}:\\
\;\;\;\;\frac{x.im}{y.im}\\
\mathbf{elif}\;y.re \leq 9.5 \cdot 10^{-150}:\\
\;\;\;\;t_0\\
\mathbf{elif}\;y.re \leq 3 \cdot 10^{+98}:\\
\;\;\;\;\frac{y.re \cdot x.re}{t_2} - \left(-y.im\right) \cdot t_3\\
\mathbf{else}:\\
\;\;\;\;t_4\\
\end{array}
Results
if y.re < -8.9999999999999997e104 or 3.0000000000000001e98 < y.re Initial program 39.7
Applied egg-rr39.3
Simplified39.3
[Start]39.3 | \[ \frac{x.re \cdot y.re}{y.re \cdot y.re + y.im \cdot y.im} - \left(-y.im\right) \cdot \frac{x.im}{y.re \cdot y.re + y.im \cdot y.im}
\] |
|---|---|
rational_best-simplify-1 [=>]39.3 | \[ \frac{\color{blue}{y.re \cdot x.re}}{y.re \cdot y.re + y.im \cdot y.im} - \left(-y.im\right) \cdot \frac{x.im}{y.re \cdot y.re + y.im \cdot y.im}
\] |
Taylor expanded in y.re around inf 13.9
Applied egg-rr13.9
if -8.9999999999999997e104 < y.re < -6.0000000000000003e-114Initial program 15.9
Applied egg-rr15.9
Applied egg-rr16.1
Simplified16.1
[Start]16.1 | \[ \frac{\left(\left(x.im \cdot y.im - \frac{x.re \cdot y.re}{-2}\right) + x.re \cdot y.re\right) + \frac{x.re \cdot y.re}{-2}}{y.re \cdot y.re + y.im \cdot y.im}
\] |
|---|---|
rational_best-simplify-3 [=>]16.1 | \[ \frac{\color{blue}{\frac{x.re \cdot y.re}{-2} + \left(\left(x.im \cdot y.im - \frac{x.re \cdot y.re}{-2}\right) + x.re \cdot y.re\right)}}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-1 [=>]16.1 | \[ \frac{\frac{\color{blue}{y.re \cdot x.re}}{-2} + \left(\left(x.im \cdot y.im - \frac{x.re \cdot y.re}{-2}\right) + x.re \cdot y.re\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-59 [=>]16.1 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \color{blue}{\left(x.re \cdot y.re - \left(-\left(x.im \cdot y.im - \frac{x.re \cdot y.re}{-2}\right)\right)\right)}}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-14 [=>]16.1 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(x.re \cdot y.re - \color{blue}{\left(0 - \left(x.im \cdot y.im - \frac{x.re \cdot y.re}{-2}\right)\right)}\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-51 [=>]16.1 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(x.re \cdot y.re - \color{blue}{\left(\frac{x.re \cdot y.re}{-2} - \left(x.im \cdot y.im - 0\right)\right)}\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-9 [=>]16.1 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(x.re \cdot y.re - \left(\frac{x.re \cdot y.re}{-2} - \color{blue}{x.im \cdot y.im}\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-6 [<=]16.1 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(x.re \cdot y.re - \color{blue}{\left(0 + \left(\frac{x.re \cdot y.re}{-2} - x.im \cdot y.im\right)\right)}\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-57 [=>]16.1 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \color{blue}{\left(\left(x.re \cdot y.re - 0\right) + \left(-\left(\frac{x.re \cdot y.re}{-2} - x.im \cdot y.im\right)\right)\right)}}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-9 [=>]16.1 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(\color{blue}{x.re \cdot y.re} + \left(-\left(\frac{x.re \cdot y.re}{-2} - x.im \cdot y.im\right)\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-1 [=>]16.1 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(\color{blue}{y.re \cdot x.re} + \left(-\left(\frac{x.re \cdot y.re}{-2} - x.im \cdot y.im\right)\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-14 [=>]16.1 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \color{blue}{\left(0 - \left(\frac{x.re \cdot y.re}{-2} - x.im \cdot y.im\right)\right)}\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-51 [=>]16.1 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \color{blue}{\left(x.im \cdot y.im - \left(\frac{x.re \cdot y.re}{-2} - 0\right)\right)}\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-1 [=>]16.1 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \left(\color{blue}{y.im \cdot x.im} - \left(\frac{x.re \cdot y.re}{-2} - 0\right)\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
metadata-eval [<=]16.1 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \left(y.im \cdot x.im - \left(\frac{x.re \cdot y.re}{-2} - \color{blue}{\left(1 + -1\right)}\right)\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-52 [<=]22.0 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \left(y.im \cdot x.im - \color{blue}{\left(\left(\frac{x.re \cdot y.re}{-2} - -1\right) - 1\right)}\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-20 [=>]22.0 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \left(y.im \cdot x.im - \left(\color{blue}{\left(\frac{x.re \cdot y.re}{-2} + 1\right)} - 1\right)\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-3 [<=]22.0 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \left(y.im \cdot x.im - \left(\color{blue}{\left(1 + \frac{x.re \cdot y.re}{-2}\right)} - 1\right)\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-19 [<=]22.0 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \left(y.im \cdot x.im - \color{blue}{\left(\left(1 + \frac{x.re \cdot y.re}{-2}\right) + -1\right)}\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-3 [<=]22.0 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \left(y.im \cdot x.im - \color{blue}{\left(-1 + \left(1 + \frac{x.re \cdot y.re}{-2}\right)\right)}\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-47 [=>]16.1 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \left(y.im \cdot x.im - \color{blue}{\left(\frac{x.re \cdot y.re}{-2} + \left(1 + -1\right)\right)}\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
metadata-eval [=>]16.1 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \left(y.im \cdot x.im - \left(\frac{x.re \cdot y.re}{-2} + \color{blue}{0}\right)\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-3 [=>]16.1 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \left(y.im \cdot x.im - \color{blue}{\left(0 + \frac{x.re \cdot y.re}{-2}\right)}\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-6 [=>]16.1 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \left(y.im \cdot x.im - \color{blue}{\frac{x.re \cdot y.re}{-2}}\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-1 [=>]16.1 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \left(y.im \cdot x.im - \frac{\color{blue}{y.re \cdot x.re}}{-2}\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
Applied egg-rr16.1
Simplified16.1
[Start]16.1 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(\left(y.im \cdot x.im + \frac{y.re \cdot x.re}{4}\right) - \left(\frac{y.re \cdot x.re}{-4} - y.re \cdot x.re\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
|---|---|
rational_best-simplify-51 [=>]16.1 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \color{blue}{\left(y.re \cdot x.re - \left(\frac{y.re \cdot x.re}{-4} - \left(y.im \cdot x.im + \frac{y.re \cdot x.re}{4}\right)\right)\right)}}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-3 [=>]16.1 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re - \left(\frac{y.re \cdot x.re}{-4} - \color{blue}{\left(\frac{y.re \cdot x.re}{4} + y.im \cdot x.im\right)}\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-52 [<=]16.1 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re - \color{blue}{\left(\left(\frac{y.re \cdot x.re}{-4} - y.im \cdot x.im\right) - \frac{y.re \cdot x.re}{4}\right)}\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-51 [<=]16.1 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \color{blue}{\left(\frac{y.re \cdot x.re}{4} - \left(\left(\frac{y.re \cdot x.re}{-4} - y.im \cdot x.im\right) - y.re \cdot x.re\right)\right)}}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-52 [=>]16.1 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(\frac{y.re \cdot x.re}{4} - \color{blue}{\left(\frac{y.re \cdot x.re}{-4} - \left(y.re \cdot x.re + y.im \cdot x.im\right)\right)}\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-57 [=>]16.1 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(\frac{y.re \cdot x.re}{4} - \color{blue}{\left(\left(\frac{y.re \cdot x.re}{-4} - y.re \cdot x.re\right) + \left(-y.im \cdot x.im\right)\right)}\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-57 [=>]16.1 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \color{blue}{\left(\left(\frac{y.re \cdot x.re}{4} - \left(\frac{y.re \cdot x.re}{-4} - y.re \cdot x.re\right)\right) + \left(-\left(-y.im \cdot x.im\right)\right)\right)}}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-1 [<=]16.1 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(\left(\frac{\color{blue}{x.re \cdot y.re}}{4} - \left(\frac{y.re \cdot x.re}{-4} - y.re \cdot x.re\right)\right) + \left(-\left(-y.im \cdot x.im\right)\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-112 [=>]16.1 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(\left(\frac{x.re \cdot y.re}{4} - \color{blue}{\left(1 - -4\right) \cdot \frac{y.re \cdot x.re}{-4}}\right) + \left(-\left(-y.im \cdot x.im\right)\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-55 [=>]16.1 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(\left(\frac{x.re \cdot y.re}{4} - \color{blue}{\left(y.re \cdot x.re\right) \cdot \frac{1 - -4}{-4}}\right) + \left(-\left(-y.im \cdot x.im\right)\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-1 [<=]16.1 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(\left(\frac{x.re \cdot y.re}{4} - \color{blue}{\left(x.re \cdot y.re\right)} \cdot \frac{1 - -4}{-4}\right) + \left(-\left(-y.im \cdot x.im\right)\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
metadata-eval [=>]16.1 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(\left(\frac{x.re \cdot y.re}{4} - \left(x.re \cdot y.re\right) \cdot \frac{\color{blue}{5}}{-4}\right) + \left(-\left(-y.im \cdot x.im\right)\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
metadata-eval [=>]16.1 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(\left(\frac{x.re \cdot y.re}{4} - \left(x.re \cdot y.re\right) \cdot \color{blue}{-1.25}\right) + \left(-\left(-y.im \cdot x.im\right)\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-13 [=>]16.1 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(\left(\frac{x.re \cdot y.re}{4} - \left(x.re \cdot y.re\right) \cdot -1.25\right) + \color{blue}{\frac{-y.im \cdot x.im}{-1}}\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-13 [=>]16.1 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(\left(\frac{x.re \cdot y.re}{4} - \left(x.re \cdot y.re\right) \cdot -1.25\right) + \frac{\color{blue}{\frac{y.im \cdot x.im}{-1}}}{-1}\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
Taylor expanded in x.re around 0 13.7
Simplified13.7
[Start]13.7 | \[ \left(\left(0.25 \cdot \frac{y.re}{{y.re}^{2} + {y.im}^{2}} + -0.5 \cdot \frac{y.re}{{y.re}^{2} + {y.im}^{2}}\right) - -1.25 \cdot \frac{y.re}{{y.re}^{2} + {y.im}^{2}}\right) \cdot x.re + \frac{y.im \cdot x.im}{{y.re}^{2} + {y.im}^{2}}
\] |
|---|---|
rational_best-simplify-3 [=>]13.7 | \[ \color{blue}{\frac{y.im \cdot x.im}{{y.re}^{2} + {y.im}^{2}} + \left(\left(0.25 \cdot \frac{y.re}{{y.re}^{2} + {y.im}^{2}} + -0.5 \cdot \frac{y.re}{{y.re}^{2} + {y.im}^{2}}\right) - -1.25 \cdot \frac{y.re}{{y.re}^{2} + {y.im}^{2}}\right) \cdot x.re}
\] |
rational_best-simplify-1 [=>]13.7 | \[ \frac{\color{blue}{x.im \cdot y.im}}{{y.re}^{2} + {y.im}^{2}} + \left(\left(0.25 \cdot \frac{y.re}{{y.re}^{2} + {y.im}^{2}} + -0.5 \cdot \frac{y.re}{{y.re}^{2} + {y.im}^{2}}\right) - -1.25 \cdot \frac{y.re}{{y.re}^{2} + {y.im}^{2}}\right) \cdot x.re
\] |
rational_best-simplify-3 [=>]13.7 | \[ \frac{x.im \cdot y.im}{\color{blue}{{y.im}^{2} + {y.re}^{2}}} + \left(\left(0.25 \cdot \frac{y.re}{{y.re}^{2} + {y.im}^{2}} + -0.5 \cdot \frac{y.re}{{y.re}^{2} + {y.im}^{2}}\right) - -1.25 \cdot \frac{y.re}{{y.re}^{2} + {y.im}^{2}}\right) \cdot x.re
\] |
rational_best-simplify-1 [=>]13.7 | \[ \frac{x.im \cdot y.im}{{y.im}^{2} + {y.re}^{2}} + \color{blue}{x.re \cdot \left(\left(0.25 \cdot \frac{y.re}{{y.re}^{2} + {y.im}^{2}} + -0.5 \cdot \frac{y.re}{{y.re}^{2} + {y.im}^{2}}\right) - -1.25 \cdot \frac{y.re}{{y.re}^{2} + {y.im}^{2}}\right)}
\] |
rational_best-simplify-63 [=>]13.7 | \[ \frac{x.im \cdot y.im}{{y.im}^{2} + {y.re}^{2}} + x.re \cdot \left(\color{blue}{\frac{y.re}{{y.re}^{2} + {y.im}^{2}} \cdot \left(0.25 + -0.5\right)} - -1.25 \cdot \frac{y.re}{{y.re}^{2} + {y.im}^{2}}\right)
\] |
rational_best-simplify-3 [=>]13.7 | \[ \frac{x.im \cdot y.im}{{y.im}^{2} + {y.re}^{2}} + x.re \cdot \left(\frac{y.re}{\color{blue}{{y.im}^{2} + {y.re}^{2}}} \cdot \left(0.25 + -0.5\right) - -1.25 \cdot \frac{y.re}{{y.re}^{2} + {y.im}^{2}}\right)
\] |
metadata-eval [=>]13.7 | \[ \frac{x.im \cdot y.im}{{y.im}^{2} + {y.re}^{2}} + x.re \cdot \left(\frac{y.re}{{y.im}^{2} + {y.re}^{2}} \cdot \color{blue}{-0.25} - -1.25 \cdot \frac{y.re}{{y.re}^{2} + {y.im}^{2}}\right)
\] |
rational_best-simplify-3 [=>]13.7 | \[ \frac{x.im \cdot y.im}{{y.im}^{2} + {y.re}^{2}} + x.re \cdot \left(\frac{y.re}{{y.im}^{2} + {y.re}^{2}} \cdot -0.25 - -1.25 \cdot \frac{y.re}{\color{blue}{{y.im}^{2} + {y.re}^{2}}}\right)
\] |
if -6.0000000000000003e-114 < y.re < -1.07999999999999996e-191 or 4.19999999999999992e-270 < y.re < 9.50000000000000013e-150Initial program 21.9
Applied egg-rr21.9
Applied egg-rr21.9
Simplified21.9
[Start]21.9 | \[ \frac{\left(\left(x.im \cdot y.im - \frac{x.re \cdot y.re}{-2}\right) + x.re \cdot y.re\right) + \frac{x.re \cdot y.re}{-2}}{y.re \cdot y.re + y.im \cdot y.im}
\] |
|---|---|
rational_best-simplify-3 [=>]21.9 | \[ \frac{\color{blue}{\frac{x.re \cdot y.re}{-2} + \left(\left(x.im \cdot y.im - \frac{x.re \cdot y.re}{-2}\right) + x.re \cdot y.re\right)}}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-1 [=>]21.9 | \[ \frac{\frac{\color{blue}{y.re \cdot x.re}}{-2} + \left(\left(x.im \cdot y.im - \frac{x.re \cdot y.re}{-2}\right) + x.re \cdot y.re\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-59 [=>]21.9 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \color{blue}{\left(x.re \cdot y.re - \left(-\left(x.im \cdot y.im - \frac{x.re \cdot y.re}{-2}\right)\right)\right)}}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-14 [=>]21.9 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(x.re \cdot y.re - \color{blue}{\left(0 - \left(x.im \cdot y.im - \frac{x.re \cdot y.re}{-2}\right)\right)}\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-51 [=>]21.9 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(x.re \cdot y.re - \color{blue}{\left(\frac{x.re \cdot y.re}{-2} - \left(x.im \cdot y.im - 0\right)\right)}\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-9 [=>]21.9 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(x.re \cdot y.re - \left(\frac{x.re \cdot y.re}{-2} - \color{blue}{x.im \cdot y.im}\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-6 [<=]21.9 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(x.re \cdot y.re - \color{blue}{\left(0 + \left(\frac{x.re \cdot y.re}{-2} - x.im \cdot y.im\right)\right)}\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-57 [=>]21.9 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \color{blue}{\left(\left(x.re \cdot y.re - 0\right) + \left(-\left(\frac{x.re \cdot y.re}{-2} - x.im \cdot y.im\right)\right)\right)}}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-9 [=>]21.9 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(\color{blue}{x.re \cdot y.re} + \left(-\left(\frac{x.re \cdot y.re}{-2} - x.im \cdot y.im\right)\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-1 [=>]21.9 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(\color{blue}{y.re \cdot x.re} + \left(-\left(\frac{x.re \cdot y.re}{-2} - x.im \cdot y.im\right)\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-14 [=>]21.9 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \color{blue}{\left(0 - \left(\frac{x.re \cdot y.re}{-2} - x.im \cdot y.im\right)\right)}\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-51 [=>]21.9 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \color{blue}{\left(x.im \cdot y.im - \left(\frac{x.re \cdot y.re}{-2} - 0\right)\right)}\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-1 [=>]21.9 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \left(\color{blue}{y.im \cdot x.im} - \left(\frac{x.re \cdot y.re}{-2} - 0\right)\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
metadata-eval [<=]21.9 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \left(y.im \cdot x.im - \left(\frac{x.re \cdot y.re}{-2} - \color{blue}{\left(1 + -1\right)}\right)\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-52 [<=]26.7 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \left(y.im \cdot x.im - \color{blue}{\left(\left(\frac{x.re \cdot y.re}{-2} - -1\right) - 1\right)}\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-20 [=>]26.7 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \left(y.im \cdot x.im - \left(\color{blue}{\left(\frac{x.re \cdot y.re}{-2} + 1\right)} - 1\right)\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-3 [<=]26.7 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \left(y.im \cdot x.im - \left(\color{blue}{\left(1 + \frac{x.re \cdot y.re}{-2}\right)} - 1\right)\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-19 [<=]26.7 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \left(y.im \cdot x.im - \color{blue}{\left(\left(1 + \frac{x.re \cdot y.re}{-2}\right) + -1\right)}\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-3 [<=]26.7 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \left(y.im \cdot x.im - \color{blue}{\left(-1 + \left(1 + \frac{x.re \cdot y.re}{-2}\right)\right)}\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-47 [=>]21.9 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \left(y.im \cdot x.im - \color{blue}{\left(\frac{x.re \cdot y.re}{-2} + \left(1 + -1\right)\right)}\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
metadata-eval [=>]21.9 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \left(y.im \cdot x.im - \left(\frac{x.re \cdot y.re}{-2} + \color{blue}{0}\right)\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-3 [=>]21.9 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \left(y.im \cdot x.im - \color{blue}{\left(0 + \frac{x.re \cdot y.re}{-2}\right)}\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-6 [=>]21.9 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \left(y.im \cdot x.im - \color{blue}{\frac{x.re \cdot y.re}{-2}}\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-1 [=>]21.9 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \left(y.im \cdot x.im - \frac{\color{blue}{y.re \cdot x.re}}{-2}\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
Applied egg-rr21.9
Simplified21.9
[Start]21.9 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(\left(y.im \cdot x.im + \frac{y.re \cdot x.re}{4}\right) - \left(\frac{y.re \cdot x.re}{-4} - y.re \cdot x.re\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
|---|---|
rational_best-simplify-51 [=>]21.9 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \color{blue}{\left(y.re \cdot x.re - \left(\frac{y.re \cdot x.re}{-4} - \left(y.im \cdot x.im + \frac{y.re \cdot x.re}{4}\right)\right)\right)}}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-3 [=>]21.9 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re - \left(\frac{y.re \cdot x.re}{-4} - \color{blue}{\left(\frac{y.re \cdot x.re}{4} + y.im \cdot x.im\right)}\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-52 [<=]21.9 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re - \color{blue}{\left(\left(\frac{y.re \cdot x.re}{-4} - y.im \cdot x.im\right) - \frac{y.re \cdot x.re}{4}\right)}\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-51 [<=]21.9 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \color{blue}{\left(\frac{y.re \cdot x.re}{4} - \left(\left(\frac{y.re \cdot x.re}{-4} - y.im \cdot x.im\right) - y.re \cdot x.re\right)\right)}}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-52 [=>]21.9 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(\frac{y.re \cdot x.re}{4} - \color{blue}{\left(\frac{y.re \cdot x.re}{-4} - \left(y.re \cdot x.re + y.im \cdot x.im\right)\right)}\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-57 [=>]21.9 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(\frac{y.re \cdot x.re}{4} - \color{blue}{\left(\left(\frac{y.re \cdot x.re}{-4} - y.re \cdot x.re\right) + \left(-y.im \cdot x.im\right)\right)}\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-57 [=>]21.9 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \color{blue}{\left(\left(\frac{y.re \cdot x.re}{4} - \left(\frac{y.re \cdot x.re}{-4} - y.re \cdot x.re\right)\right) + \left(-\left(-y.im \cdot x.im\right)\right)\right)}}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-1 [<=]21.9 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(\left(\frac{\color{blue}{x.re \cdot y.re}}{4} - \left(\frac{y.re \cdot x.re}{-4} - y.re \cdot x.re\right)\right) + \left(-\left(-y.im \cdot x.im\right)\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-112 [=>]21.9 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(\left(\frac{x.re \cdot y.re}{4} - \color{blue}{\left(1 - -4\right) \cdot \frac{y.re \cdot x.re}{-4}}\right) + \left(-\left(-y.im \cdot x.im\right)\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-55 [=>]21.9 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(\left(\frac{x.re \cdot y.re}{4} - \color{blue}{\left(y.re \cdot x.re\right) \cdot \frac{1 - -4}{-4}}\right) + \left(-\left(-y.im \cdot x.im\right)\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-1 [<=]21.9 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(\left(\frac{x.re \cdot y.re}{4} - \color{blue}{\left(x.re \cdot y.re\right)} \cdot \frac{1 - -4}{-4}\right) + \left(-\left(-y.im \cdot x.im\right)\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
metadata-eval [=>]21.9 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(\left(\frac{x.re \cdot y.re}{4} - \left(x.re \cdot y.re\right) \cdot \frac{\color{blue}{5}}{-4}\right) + \left(-\left(-y.im \cdot x.im\right)\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
metadata-eval [=>]21.9 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(\left(\frac{x.re \cdot y.re}{4} - \left(x.re \cdot y.re\right) \cdot \color{blue}{-1.25}\right) + \left(-\left(-y.im \cdot x.im\right)\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-13 [=>]21.9 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(\left(\frac{x.re \cdot y.re}{4} - \left(x.re \cdot y.re\right) \cdot -1.25\right) + \color{blue}{\frac{-y.im \cdot x.im}{-1}}\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-13 [=>]21.9 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(\left(\frac{x.re \cdot y.re}{4} - \left(x.re \cdot y.re\right) \cdot -1.25\right) + \frac{\color{blue}{\frac{y.im \cdot x.im}{-1}}}{-1}\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
Taylor expanded in y.re around 0 15.6
Simplified16.1
[Start]15.6 | \[ \frac{x.im}{y.im} + \left(\left(0.25 \cdot \frac{x.re}{{y.im}^{2}} + -0.5 \cdot \frac{x.re}{{y.im}^{2}}\right) - -1.25 \cdot \frac{x.re}{{y.im}^{2}}\right) \cdot y.re
\] |
|---|---|
rational_best-simplify-63 [=>]15.6 | \[ \frac{x.im}{y.im} + \left(\color{blue}{\frac{x.re}{{y.im}^{2}} \cdot \left(0.25 + -0.5\right)} - -1.25 \cdot \frac{x.re}{{y.im}^{2}}\right) \cdot y.re
\] |
metadata-eval [=>]15.6 | \[ \frac{x.im}{y.im} + \left(\frac{x.re}{{y.im}^{2}} \cdot \color{blue}{-0.25} - -1.25 \cdot \frac{x.re}{{y.im}^{2}}\right) \cdot y.re
\] |
rational_best-simplify-55 [=>]16.1 | \[ \frac{x.im}{y.im} + \left(\frac{x.re}{{y.im}^{2}} \cdot -0.25 - \color{blue}{x.re \cdot \frac{-1.25}{{y.im}^{2}}}\right) \cdot y.re
\] |
if -1.07999999999999996e-191 < y.re < -7.7999999999999998e-252Initial program 22.4
Applied egg-rr22.4
Applied egg-rr22.4
Simplified22.4
[Start]22.4 | \[ \frac{\left(\left(x.im \cdot y.im - \frac{x.re \cdot y.re}{-2}\right) + x.re \cdot y.re\right) + \frac{x.re \cdot y.re}{-2}}{y.re \cdot y.re + y.im \cdot y.im}
\] |
|---|---|
rational_best-simplify-3 [=>]22.4 | \[ \frac{\color{blue}{\frac{x.re \cdot y.re}{-2} + \left(\left(x.im \cdot y.im - \frac{x.re \cdot y.re}{-2}\right) + x.re \cdot y.re\right)}}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-1 [=>]22.4 | \[ \frac{\frac{\color{blue}{y.re \cdot x.re}}{-2} + \left(\left(x.im \cdot y.im - \frac{x.re \cdot y.re}{-2}\right) + x.re \cdot y.re\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-59 [=>]22.4 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \color{blue}{\left(x.re \cdot y.re - \left(-\left(x.im \cdot y.im - \frac{x.re \cdot y.re}{-2}\right)\right)\right)}}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-14 [=>]22.4 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(x.re \cdot y.re - \color{blue}{\left(0 - \left(x.im \cdot y.im - \frac{x.re \cdot y.re}{-2}\right)\right)}\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-51 [=>]22.4 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(x.re \cdot y.re - \color{blue}{\left(\frac{x.re \cdot y.re}{-2} - \left(x.im \cdot y.im - 0\right)\right)}\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-9 [=>]22.4 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(x.re \cdot y.re - \left(\frac{x.re \cdot y.re}{-2} - \color{blue}{x.im \cdot y.im}\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-6 [<=]22.4 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(x.re \cdot y.re - \color{blue}{\left(0 + \left(\frac{x.re \cdot y.re}{-2} - x.im \cdot y.im\right)\right)}\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-57 [=>]22.4 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \color{blue}{\left(\left(x.re \cdot y.re - 0\right) + \left(-\left(\frac{x.re \cdot y.re}{-2} - x.im \cdot y.im\right)\right)\right)}}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-9 [=>]22.4 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(\color{blue}{x.re \cdot y.re} + \left(-\left(\frac{x.re \cdot y.re}{-2} - x.im \cdot y.im\right)\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-1 [=>]22.4 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(\color{blue}{y.re \cdot x.re} + \left(-\left(\frac{x.re \cdot y.re}{-2} - x.im \cdot y.im\right)\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-14 [=>]22.4 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \color{blue}{\left(0 - \left(\frac{x.re \cdot y.re}{-2} - x.im \cdot y.im\right)\right)}\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-51 [=>]22.4 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \color{blue}{\left(x.im \cdot y.im - \left(\frac{x.re \cdot y.re}{-2} - 0\right)\right)}\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-1 [=>]22.4 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \left(\color{blue}{y.im \cdot x.im} - \left(\frac{x.re \cdot y.re}{-2} - 0\right)\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
metadata-eval [<=]22.4 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \left(y.im \cdot x.im - \left(\frac{x.re \cdot y.re}{-2} - \color{blue}{\left(1 + -1\right)}\right)\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-52 [<=]26.2 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \left(y.im \cdot x.im - \color{blue}{\left(\left(\frac{x.re \cdot y.re}{-2} - -1\right) - 1\right)}\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-20 [=>]26.2 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \left(y.im \cdot x.im - \left(\color{blue}{\left(\frac{x.re \cdot y.re}{-2} + 1\right)} - 1\right)\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-3 [<=]26.2 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \left(y.im \cdot x.im - \left(\color{blue}{\left(1 + \frac{x.re \cdot y.re}{-2}\right)} - 1\right)\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-19 [<=]26.2 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \left(y.im \cdot x.im - \color{blue}{\left(\left(1 + \frac{x.re \cdot y.re}{-2}\right) + -1\right)}\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-3 [<=]26.2 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \left(y.im \cdot x.im - \color{blue}{\left(-1 + \left(1 + \frac{x.re \cdot y.re}{-2}\right)\right)}\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-47 [=>]22.4 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \left(y.im \cdot x.im - \color{blue}{\left(\frac{x.re \cdot y.re}{-2} + \left(1 + -1\right)\right)}\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
metadata-eval [=>]22.4 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \left(y.im \cdot x.im - \left(\frac{x.re \cdot y.re}{-2} + \color{blue}{0}\right)\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-3 [=>]22.4 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \left(y.im \cdot x.im - \color{blue}{\left(0 + \frac{x.re \cdot y.re}{-2}\right)}\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-6 [=>]22.4 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \left(y.im \cdot x.im - \color{blue}{\frac{x.re \cdot y.re}{-2}}\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-1 [=>]22.4 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re + \left(y.im \cdot x.im - \frac{\color{blue}{y.re \cdot x.re}}{-2}\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
Applied egg-rr22.5
Simplified22.5
[Start]22.5 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(\left(y.im \cdot x.im + \frac{y.re \cdot x.re}{4}\right) - \left(\frac{y.re \cdot x.re}{-4} - y.re \cdot x.re\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
|---|---|
rational_best-simplify-51 [=>]22.4 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \color{blue}{\left(y.re \cdot x.re - \left(\frac{y.re \cdot x.re}{-4} - \left(y.im \cdot x.im + \frac{y.re \cdot x.re}{4}\right)\right)\right)}}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-3 [=>]22.4 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re - \left(\frac{y.re \cdot x.re}{-4} - \color{blue}{\left(\frac{y.re \cdot x.re}{4} + y.im \cdot x.im\right)}\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-52 [<=]22.4 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(y.re \cdot x.re - \color{blue}{\left(\left(\frac{y.re \cdot x.re}{-4} - y.im \cdot x.im\right) - \frac{y.re \cdot x.re}{4}\right)}\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-51 [<=]22.5 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \color{blue}{\left(\frac{y.re \cdot x.re}{4} - \left(\left(\frac{y.re \cdot x.re}{-4} - y.im \cdot x.im\right) - y.re \cdot x.re\right)\right)}}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-52 [=>]22.5 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(\frac{y.re \cdot x.re}{4} - \color{blue}{\left(\frac{y.re \cdot x.re}{-4} - \left(y.re \cdot x.re + y.im \cdot x.im\right)\right)}\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-57 [=>]22.5 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(\frac{y.re \cdot x.re}{4} - \color{blue}{\left(\left(\frac{y.re \cdot x.re}{-4} - y.re \cdot x.re\right) + \left(-y.im \cdot x.im\right)\right)}\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-57 [=>]22.5 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \color{blue}{\left(\left(\frac{y.re \cdot x.re}{4} - \left(\frac{y.re \cdot x.re}{-4} - y.re \cdot x.re\right)\right) + \left(-\left(-y.im \cdot x.im\right)\right)\right)}}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-1 [<=]22.5 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(\left(\frac{\color{blue}{x.re \cdot y.re}}{4} - \left(\frac{y.re \cdot x.re}{-4} - y.re \cdot x.re\right)\right) + \left(-\left(-y.im \cdot x.im\right)\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-112 [=>]22.5 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(\left(\frac{x.re \cdot y.re}{4} - \color{blue}{\left(1 - -4\right) \cdot \frac{y.re \cdot x.re}{-4}}\right) + \left(-\left(-y.im \cdot x.im\right)\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-55 [=>]22.5 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(\left(\frac{x.re \cdot y.re}{4} - \color{blue}{\left(y.re \cdot x.re\right) \cdot \frac{1 - -4}{-4}}\right) + \left(-\left(-y.im \cdot x.im\right)\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-1 [<=]22.5 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(\left(\frac{x.re \cdot y.re}{4} - \color{blue}{\left(x.re \cdot y.re\right)} \cdot \frac{1 - -4}{-4}\right) + \left(-\left(-y.im \cdot x.im\right)\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
metadata-eval [=>]22.5 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(\left(\frac{x.re \cdot y.re}{4} - \left(x.re \cdot y.re\right) \cdot \frac{\color{blue}{5}}{-4}\right) + \left(-\left(-y.im \cdot x.im\right)\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
metadata-eval [=>]22.5 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(\left(\frac{x.re \cdot y.re}{4} - \left(x.re \cdot y.re\right) \cdot \color{blue}{-1.25}\right) + \left(-\left(-y.im \cdot x.im\right)\right)\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-13 [=>]22.5 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(\left(\frac{x.re \cdot y.re}{4} - \left(x.re \cdot y.re\right) \cdot -1.25\right) + \color{blue}{\frac{-y.im \cdot x.im}{-1}}\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
rational_best-simplify-13 [=>]22.5 | \[ \frac{\frac{y.re \cdot x.re}{-2} + \left(\left(\frac{x.re \cdot y.re}{4} - \left(x.re \cdot y.re\right) \cdot -1.25\right) + \frac{\color{blue}{\frac{y.im \cdot x.im}{-1}}}{-1}\right)}{y.re \cdot y.re + y.im \cdot y.im}
\] |
Taylor expanded in x.re around 0 22.5
if -7.7999999999999998e-252 < y.re < 4.19999999999999992e-270Initial program 25.0
Taylor expanded in y.re around 0 12.3
if 9.50000000000000013e-150 < y.re < 3.0000000000000001e98Initial program 16.4
Applied egg-rr17.7
Simplified17.7
[Start]17.7 | \[ \frac{x.re \cdot y.re}{y.re \cdot y.re + y.im \cdot y.im} - \left(-y.im\right) \cdot \frac{x.im}{y.re \cdot y.re + y.im \cdot y.im}
\] |
|---|---|
rational_best-simplify-1 [=>]17.7 | \[ \frac{\color{blue}{y.re \cdot x.re}}{y.re \cdot y.re + y.im \cdot y.im} - \left(-y.im\right) \cdot \frac{x.im}{y.re \cdot y.re + y.im \cdot y.im}
\] |
Final simplification15.2
| Alternative 1 | |
|---|---|
| Error | 14.4 |
| Cost | 14544 |
| Alternative 2 | |
|---|---|
| Error | 14.7 |
| Cost | 2064 |
| Alternative 3 | |
|---|---|
| Error | 14.6 |
| Cost | 2000 |
| Alternative 4 | |
|---|---|
| Error | 23.7 |
| Cost | 1496 |
| Alternative 5 | |
|---|---|
| Error | 23.7 |
| Cost | 1496 |
| Alternative 6 | |
|---|---|
| Error | 19.4 |
| Cost | 1488 |
| Alternative 7 | |
|---|---|
| Error | 15.6 |
| Cost | 1488 |
| Alternative 8 | |
|---|---|
| Error | 14.6 |
| Cost | 1488 |
| Alternative 9 | |
|---|---|
| Error | 14.6 |
| Cost | 1488 |
| Alternative 10 | |
|---|---|
| Error | 23.3 |
| Cost | 1232 |
| Alternative 11 | |
|---|---|
| Error | 23.4 |
| Cost | 456 |
| Alternative 12 | |
|---|---|
| Error | 38.0 |
| Cost | 192 |
herbie shell --seed 2023099
(FPCore (x.re x.im y.re y.im)
:name "_divideComplex, real part"
:precision binary64
(/ (+ (* x.re y.re) (* x.im y.im)) (+ (* y.re y.re) (* y.im y.im))))