Initial program 25.7
\[\frac{x.im \cdot y.re - x.re \cdot y.im}{y.re \cdot y.re + y.im \cdot y.im}\]
Simplified25.7
\[\leadsto \color{blue}{\frac{x.im \cdot y.re - x.re \cdot y.im}{\mathsf{fma}\left(y.re, y.re, y.im \cdot y.im\right)}}\]
- Using strategy
rm Applied add-sqr-sqrt25.7
\[\leadsto \frac{x.im \cdot y.re - x.re \cdot y.im}{\color{blue}{\sqrt{\mathsf{fma}\left(y.re, y.re, y.im \cdot y.im\right)} \cdot \sqrt{\mathsf{fma}\left(y.re, y.re, y.im \cdot y.im\right)}}}\]
Applied *-un-lft-identity25.7
\[\leadsto \frac{\color{blue}{1 \cdot \left(x.im \cdot y.re - x.re \cdot y.im\right)}}{\sqrt{\mathsf{fma}\left(y.re, y.re, y.im \cdot y.im\right)} \cdot \sqrt{\mathsf{fma}\left(y.re, y.re, y.im \cdot y.im\right)}}\]
Applied times-frac25.7
\[\leadsto \color{blue}{\frac{1}{\sqrt{\mathsf{fma}\left(y.re, y.re, y.im \cdot y.im\right)}} \cdot \frac{x.im \cdot y.re - x.re \cdot y.im}{\sqrt{\mathsf{fma}\left(y.re, y.re, y.im \cdot y.im\right)}}}\]
Simplified25.7
\[\leadsto \color{blue}{\frac{1}{\mathsf{hypot}\left(y.im, y.re\right)}} \cdot \frac{x.im \cdot y.re - x.re \cdot y.im}{\sqrt{\mathsf{fma}\left(y.re, y.re, y.im \cdot y.im\right)}}\]
Simplified16.6
\[\leadsto \frac{1}{\mathsf{hypot}\left(y.im, y.re\right)} \cdot \color{blue}{\frac{x.im \cdot y.re - x.re \cdot y.im}{\mathsf{hypot}\left(y.im, y.re\right)}}\]
- Using strategy
rm Applied *-un-lft-identity16.6
\[\leadsto \color{blue}{\left(1 \cdot \frac{1}{\mathsf{hypot}\left(y.im, y.re\right)}\right)} \cdot \frac{x.im \cdot y.re - x.re \cdot y.im}{\mathsf{hypot}\left(y.im, y.re\right)}\]
Applied associate-*l*16.6
\[\leadsto \color{blue}{1 \cdot \left(\frac{1}{\mathsf{hypot}\left(y.im, y.re\right)} \cdot \frac{x.im \cdot y.re - x.re \cdot y.im}{\mathsf{hypot}\left(y.im, y.re\right)}\right)}\]
Simplified16.5
\[\leadsto 1 \cdot \color{blue}{\frac{\frac{x.im \cdot y.re - x.re \cdot y.im}{\mathsf{hypot}\left(y.im, y.re\right)}}{\mathsf{hypot}\left(y.im, y.re\right)}}\]
- Using strategy
rm Applied div-sub16.5
\[\leadsto 1 \cdot \frac{\color{blue}{\frac{x.im \cdot y.re}{\mathsf{hypot}\left(y.im, y.re\right)} - \frac{x.re \cdot y.im}{\mathsf{hypot}\left(y.im, y.re\right)}}}{\mathsf{hypot}\left(y.im, y.re\right)}\]
Simplified9.7
\[\leadsto 1 \cdot \frac{\color{blue}{\frac{y.re}{\frac{\mathsf{hypot}\left(y.im, y.re\right)}{x.im}}} - \frac{x.re \cdot y.im}{\mathsf{hypot}\left(y.im, y.re\right)}}{\mathsf{hypot}\left(y.im, y.re\right)}\]
Simplified1.5
\[\leadsto 1 \cdot \frac{\frac{y.re}{\frac{\mathsf{hypot}\left(y.im, y.re\right)}{x.im}} - \color{blue}{y.im \cdot \frac{x.re}{\mathsf{hypot}\left(y.im, y.re\right)}}}{\mathsf{hypot}\left(y.im, y.re\right)}\]
- Using strategy
rm Applied *-un-lft-identity1.5
\[\leadsto 1 \cdot \frac{\frac{y.re}{\frac{\mathsf{hypot}\left(y.im, y.re\right)}{\color{blue}{1 \cdot x.im}}} - y.im \cdot \frac{x.re}{\mathsf{hypot}\left(y.im, y.re\right)}}{\mathsf{hypot}\left(y.im, y.re\right)}\]
Applied *-un-lft-identity1.5
\[\leadsto 1 \cdot \frac{\frac{y.re}{\frac{\color{blue}{1 \cdot \mathsf{hypot}\left(y.im, y.re\right)}}{1 \cdot x.im}} - y.im \cdot \frac{x.re}{\mathsf{hypot}\left(y.im, y.re\right)}}{\mathsf{hypot}\left(y.im, y.re\right)}\]
Applied times-frac1.5
\[\leadsto 1 \cdot \frac{\frac{y.re}{\color{blue}{\frac{1}{1} \cdot \frac{\mathsf{hypot}\left(y.im, y.re\right)}{x.im}}} - y.im \cdot \frac{x.re}{\mathsf{hypot}\left(y.im, y.re\right)}}{\mathsf{hypot}\left(y.im, y.re\right)}\]
Applied *-un-lft-identity1.5
\[\leadsto 1 \cdot \frac{\frac{\color{blue}{1 \cdot y.re}}{\frac{1}{1} \cdot \frac{\mathsf{hypot}\left(y.im, y.re\right)}{x.im}} - y.im \cdot \frac{x.re}{\mathsf{hypot}\left(y.im, y.re\right)}}{\mathsf{hypot}\left(y.im, y.re\right)}\]
Applied times-frac1.5
\[\leadsto 1 \cdot \frac{\color{blue}{\frac{1}{\frac{1}{1}} \cdot \frac{y.re}{\frac{\mathsf{hypot}\left(y.im, y.re\right)}{x.im}}} - y.im \cdot \frac{x.re}{\mathsf{hypot}\left(y.im, y.re\right)}}{\mathsf{hypot}\left(y.im, y.re\right)}\]
Simplified1.5
\[\leadsto 1 \cdot \frac{\color{blue}{1} \cdot \frac{y.re}{\frac{\mathsf{hypot}\left(y.im, y.re\right)}{x.im}} - y.im \cdot \frac{x.re}{\mathsf{hypot}\left(y.im, y.re\right)}}{\mathsf{hypot}\left(y.im, y.re\right)}\]
Simplified0.9
\[\leadsto 1 \cdot \frac{1 \cdot \color{blue}{\left(\frac{y.re}{\mathsf{hypot}\left(y.im, y.re\right)} \cdot x.im\right)} - y.im \cdot \frac{x.re}{\mathsf{hypot}\left(y.im, y.re\right)}}{\mathsf{hypot}\left(y.im, y.re\right)}\]
Final simplification0.9
\[\leadsto \frac{\frac{y.re}{\mathsf{hypot}\left(y.im, y.re\right)} \cdot x.im - y.im \cdot \frac{x.re}{\mathsf{hypot}\left(y.im, y.re\right)}}{\mathsf{hypot}\left(y.im, y.re\right)}\]