_divideComplex, imaginary part

Time bar (total: 4.1s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated; 0ms collecting garbage

analyze28.0ms (0.7%)

Memory
6.9MiB live, 51.9MiB allocated; 12ms collecting garbage
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.8%0.2%0%0%0%0
0%0%99.8%0.2%0%0%0%1
0%0%99.8%0.2%0%0%0%2
0%0%99.8%0.2%0%0%0%3
0%0%99.8%0.2%0%0%0%4
75%74.9%25%0.2%0%0%0%5
75%74.9%25%0.2%0%0%0%6
75%74.9%25%0.2%0%0%0%7
87.5%87.3%12.5%0.2%0%0%0%8
93.8%93.6%6.2%0.2%0%0%0%9
93.8%93.6%6.2%0.2%0%0%0%10
93.8%93.6%6.2%0.2%0%0%0%11
96.9%96.7%3.1%0.2%0%0%0%12
Compiler

Compiled 17 to 13 computations (23.5% saved)

sample1.2s (30.6%)

Memory
-11.3MiB live, 1 328.5MiB allocated; 586ms collecting garbage
Samples
741.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 386.0ms
ival-mult!: 245.0ms (63.5% of total)
ival-add!: 60.0ms (15.5% of total)
ival-div!: 58.0ms (15% of total)
ival-sub!: 21.0ms (5.4% of total)
adjust: 2.0ms (0.5% of total)
Bogosity

preprocess94.0ms (2.3%)

Memory
1.9MiB live, 94.5MiB allocated; 10ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
062225
1427225
23362225
Stop Event
node-limit
Alt Table
Click to see full alt table
StatusAccuracyProgram
66.4%
(/.f64 (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
Compiler

Compiled 30 to 22 computations (26.7% saved)

series174.0ms (4.3%)

Memory
28.4MiB live, 172.8MiB allocated; 25ms collecting garbage
Counts
11 → 49
Calls
Call 1
Inputs
(/.f64 (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(*.f64 x.im y.re)
x.im
y.re
(*.f64 x.re y.im)
x.re
y.im
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
(*.f64 y.re y.re)
(*.f64 y.im y.im)
Outputs
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (*.f64 x.im y.re) (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))) (/.f64 (*.f64 x.im y.re) (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))))
#s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 x.im y.re))
#s(approx (- (* x.im y.re) (* x.re y.im)) (fma.f64 #s(literal -1 binary64) (*.f64 x.re y.im) (*.f64 x.im y.re)))
#s(approx (* x.re y.im) (*.f64 x.re y.im))
#s(approx x.re x.re)
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.re (fma.f64 #s(literal -1 binary64) (/.f64 y.im (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))) (/.f64 (*.f64 x.im y.re) (*.f64 x.re (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))))))
#s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.re y.im)))
#s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 x.re (-.f64 (/.f64 (*.f64 x.im y.re) x.re) y.im)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (*.f64 x.re (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im y.re) (*.f64 x.re (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))) (/.f64 y.im (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))))))
#s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.re (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im y.re) x.re)) (*.f64 #s(literal -1 binary64) y.im)))))
#s(approx (- (* x.im y.re) (* x.re y.im)) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)))
#s(approx x.im x.im)
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (*.f64 x.im (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))) (/.f64 y.re (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))))))
#s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 x.im (+.f64 y.re (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) x.im)))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (*.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 y.re (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))) (/.f64 (*.f64 x.re y.im) (*.f64 x.im (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))))))))
#s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.im (fma.f64 #s(literal -1 binary64) y.re (/.f64 (*.f64 x.re y.im) x.im)))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (/.f64 x.re y.im)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (fma.f64 #s(literal -1 binary64) (/.f64 x.re y.im) (/.f64 (*.f64 x.im y.re) (pow.f64 y.im #s(literal 2 binary64)))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (fma.f64 #s(literal -1 binary64) (/.f64 x.re y.im) (*.f64 y.re (+.f64 (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64))) (/.f64 (*.f64 x.re y.re) (pow.f64 y.im #s(literal 3 binary64)))))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (fma.f64 #s(literal -1 binary64) (/.f64 x.re y.im) (*.f64 y.re (fma.f64 y.re (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im y.re) (pow.f64 y.im #s(literal 4 binary64)))) (*.f64 #s(literal -1 binary64) (/.f64 x.re (pow.f64 y.im #s(literal 3 binary64))))) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64)))))))
#s(approx y.re y.re)
#s(approx (+ (* y.re y.re) (* y.im y.im)) (pow.f64 y.im #s(literal 2 binary64)))
#s(approx (+ (* y.re y.re) (* y.im y.im)) (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))
#s(approx (* y.re y.re) (pow.f64 y.re #s(literal 2 binary64)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 x.im y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (+.f64 x.im (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re))) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (+.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im (pow.f64 y.im #s(literal 2 binary64))) (pow.f64 y.re #s(literal 2 binary64))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re)))) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (-.f64 (+.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re) (/.f64 (*.f64 x.re (pow.f64 y.im #s(literal 3 binary64))) (pow.f64 y.re #s(literal 3 binary64))))) (/.f64 (*.f64 x.im (pow.f64 y.im #s(literal 2 binary64))) (pow.f64 y.re #s(literal 2 binary64)))) y.re))
#s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 y.re (+.f64 x.im (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re)))))
#s(approx (+ (* y.re y.re) (* y.im y.im)) (*.f64 (pow.f64 y.re #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (/.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) x.im (/.f64 (*.f64 x.re y.im) y.re)) y.re)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) x.im (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x.re y.im) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im (pow.f64 y.im #s(literal 2 binary64))) y.re))) y.re))) y.re)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) x.im (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x.re y.im) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (pow.f64 y.im #s(literal 3 binary64))) y.re)) (*.f64 #s(literal -1 binary64) (*.f64 x.im (pow.f64 y.im #s(literal 2 binary64))))) y.re))) y.re))) y.re)))
#s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 y.re (fma.f64 #s(literal -1 binary64) x.im (/.f64 (*.f64 x.re y.im) y.re)))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (pow.f64 y.re #s(literal 2 binary64))) (/.f64 x.im y.re)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (fma.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im y.im) (pow.f64 y.re #s(literal 3 binary64))))) (/.f64 x.im y.re)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (fma.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (*.f64 y.im (-.f64 (/.f64 (*.f64 x.re y.im) (pow.f64 y.re #s(literal 4 binary64))) (/.f64 x.im (pow.f64 y.re #s(literal 3 binary64)))))) (/.f64 x.im y.re)))
#s(approx y.im y.im)
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (fma.f64 #s(literal -1 binary64) x.re (/.f64 (*.f64 x.im y.re) y.im)) y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (fma.f64 #s(literal -1 binary64) x.re (+.f64 (/.f64 (*.f64 x.im y.re) y.im) (/.f64 (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (pow.f64 y.im #s(literal 2 binary64))))) y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (-.f64 (fma.f64 #s(literal -1 binary64) x.re (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im (pow.f64 y.re #s(literal 3 binary64))) (pow.f64 y.im #s(literal 3 binary64))) (/.f64 (*.f64 x.im y.re) y.im))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (pow.f64 y.im #s(literal 2 binary64))))) y.im))
#s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 y.im (-.f64 (/.f64 (*.f64 x.im y.re) y.im) x.re)))
#s(approx (+ (* y.re y.re) (* y.im y.im)) (*.f64 (pow.f64 y.im #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (/.f64 (pow.f64 y.re #s(literal 2 binary64)) (pow.f64 y.im #s(literal 2 binary64))))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 x.re (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im y.re) y.im))) y.im)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 x.re (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 x.im y.re (/.f64 (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) y.im)) y.im))) y.im)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 x.re (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 (*.f64 x.im (pow.f64 y.re #s(literal 3 binary64))) y.im) (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64)))) y.im) (*.f64 x.im y.re)) y.im))) y.im)))
#s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 y.im (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im y.re) y.im)) (*.f64 #s(literal -1 binary64) x.re)))))
Calls

12 calls:

TimeVariablePoint
11.0ms
y.im
inf
5.0ms
x.im
inf
4.0ms
x.re
inf
4.0ms
x.re
0
3.0ms
x.re
-inf

rewrite181.0ms (4.4%)

Memory
-0.9MiB live, 189.7MiB allocated; 13ms collecting garbage
Counts
11 → 39
Calls
Call 1
Inputs
(/.f64 (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(*.f64 x.im y.re)
x.im
y.re
(*.f64 x.re y.im)
x.re
y.im
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
(*.f64 y.re y.re)
(*.f64 y.im y.im)
Outputs
(*.f64 (/.f64 (fma.f64 y.im x.re (*.f64 x.im y.re)) (fma.f64 y.im x.re (*.f64 x.im y.re))) (/.f64 (fma.f64 y.im x.re (*.f64 x.im y.re)) (fma.f64 y.re y.re (*.f64 y.im y.im))))
(*.f64 (/.f64 (fma.f64 y.im x.re (*.f64 x.im y.re)) (*.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (fma.f64 y.re y.re (*.f64 y.im y.im)))
(*.f64 (/.f64 (fma.f64 (fma.f64 y.im x.re (*.f64 x.im y.re)) (*.f64 x.re y.im) (*.f64 (*.f64 x.im x.im) (*.f64 y.re y.re))) (fma.f64 (fma.f64 y.im x.re (*.f64 x.im y.re)) (*.f64 x.re y.im) (*.f64 (*.f64 x.im x.im) (*.f64 y.re y.re)))) (/.f64 (fma.f64 y.im x.re (*.f64 x.im y.re)) (fma.f64 y.re y.re (*.f64 y.im y.im))))
(*.f64 (/.f64 (fma.f64 y.im x.re (*.f64 x.im y.re)) (*.f64 (fma.f64 (*.f64 y.re y.re) y.re (*.f64 (*.f64 y.im y.im) y.im)) (-.f64 (*.f64 (*.f64 y.re y.re) y.re) (*.f64 (*.f64 y.im y.im) y.im)))) (fma.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) (*.f64 y.im y.im) (*.f64 (*.f64 y.re y.re) (*.f64 y.re y.re))))
(*.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) (/.f64 (fma.f64 y.im x.re (*.f64 x.im y.re)) (*.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im)))))
(*.f64 (fma.f64 y.im x.re (*.f64 x.im y.re)) (/.f64 (fma.f64 y.im x.re (*.f64 x.im y.re)) (fma.f64 y.im x.re (*.f64 x.im y.re))))
(*.f64 (/.f64 (*.f64 (fma.f64 y.im x.re (*.f64 x.im y.re)) (fma.f64 y.im x.re (*.f64 x.im y.re))) (*.f64 (fma.f64 y.im x.re (*.f64 x.im y.re)) (fma.f64 y.im x.re (*.f64 x.im y.re)))) (fma.f64 y.im x.re (*.f64 x.im y.re)))
(*.f64 (/.f64 (*.f64 (fma.f64 y.im x.re (*.f64 x.im y.re)) (fma.f64 y.im x.re (*.f64 x.im y.re))) (fma.f64 (*.f64 (*.f64 x.re x.re) (*.f64 y.im y.im)) (*.f64 x.re y.im) (*.f64 (*.f64 (*.f64 x.im x.im) x.im) (*.f64 (*.f64 y.re y.re) y.re)))) (fma.f64 (*.f64 x.re y.im) (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) (*.f64 (*.f64 x.im x.im) (*.f64 y.re y.re))))
(*.f64 (/.f64 (*.f64 (fma.f64 y.im x.re (*.f64 x.im y.re)) (fma.f64 y.im x.re (*.f64 x.im y.re))) (fma.f64 (*.f64 (*.f64 x.re x.re) (*.f64 y.im y.im)) (*.f64 x.re y.im) (*.f64 (*.f64 (*.f64 x.im x.im) x.im) (*.f64 (*.f64 y.re y.re) y.re)))) (fma.f64 (fma.f64 y.im x.re (*.f64 x.im y.re)) (*.f64 x.re y.im) (*.f64 (*.f64 x.im x.im) (*.f64 y.re y.re))))
(*.f64 (fma.f64 (fma.f64 y.im x.re (*.f64 x.im y.re)) (*.f64 x.re y.im) (*.f64 (*.f64 x.im x.im) (*.f64 y.re y.re))) (/.f64 (fma.f64 y.im x.re (*.f64 x.im y.re)) (fma.f64 (*.f64 x.re y.im) (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) (*.f64 (*.f64 x.im x.im) (*.f64 y.re y.re)))))
(*.f64 x.im y.re)
(*.f64 y.re x.im)
x.im
y.re
(neg.f64 (neg.f64 y.re))
(*.f64 x.re y.im)
(*.f64 y.im x.re)
(*.f64 (neg.f64 x.re) (neg.f64 y.im))
(*.f64 (neg.f64 y.im) (neg.f64 x.re))
(neg.f64 (neg.f64 (*.f64 x.re y.im)))
x.re
(neg.f64 (neg.f64 x.re))
y.im
(neg.f64 (neg.f64 y.im))
(*.f64 (+.f64 y.im y.re) (-.f64 y.re y.im))
(*.f64 (+.f64 y.im y.re) (-.f64 y.im y.re))
(*.f64 (-.f64 y.re y.im) (+.f64 y.im y.re))
(*.f64 (+.f64 (fabs.f64 y.re) (neg.f64 y.im)) (-.f64 (fabs.f64 y.re) (neg.f64 y.im)))
(*.f64 (+.f64 (fabs.f64 y.re) (neg.f64 y.im)) (-.f64 (neg.f64 y.im) (fabs.f64 y.re)))
(*.f64 y.re y.re)
(*.f64 (fabs.f64 y.re) (fabs.f64 y.re))
(*.f64 (fabs.f64 y.re) y.re)
(*.f64 (fabs.f64 y.re) (neg.f64 y.re))
(*.f64 (neg.f64 y.re) y.re)
(*.f64 y.im y.im)
(*.f64 (fabs.f64 y.im) (fabs.f64 y.im))
(*.f64 (fabs.f64 y.im) y.im)
(*.f64 (fabs.f64 y.im) (neg.f64 y.im))
(*.f64 (neg.f64 y.im) y.im)

eval9.0ms (0.2%)

Memory
-30.4MiB live, 15.7MiB allocated; 3ms collecting garbage
Compiler

Compiled 2 283 to 393 computations (82.8% saved)

prune7.0ms (0.2%)

Memory
11.5MiB live, 11.5MiB allocated; 0ms collecting garbage
Pruning

11 alts after pruning (11 fresh and 0 done)

PrunedKeptTotal
New691180
Fresh000
Picked101
Done000
Total701181
Accuracy
96.9%
Counts
81 → 11
Alt Table
Click to see full alt table
StatusAccuracyProgram
43.8%
(/.f64 (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (*.f64 (-.f64 y.re y.im) (+.f64 y.im y.re)))
44.0%
(/.f64 #s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 x.im y.re)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
40.6%
(/.f64 #s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.re y.im))) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
45.5%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (fma.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im y.im) (pow.f64 y.re #s(literal 3 binary64))))) (/.f64 x.im y.re)))
39.8%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (fma.f64 #s(literal -1 binary64) (/.f64 x.re y.im) (*.f64 y.re (+.f64 (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64))) (/.f64 (*.f64 x.re y.re) (pow.f64 y.im #s(literal 3 binary64)))))))
49.9%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (fma.f64 #s(literal -1 binary64) x.re (/.f64 (*.f64 x.im y.re) y.im)) y.im))
55.0%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (+.f64 x.im (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re))) y.re))
45.0%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 x.im y.re))
57.2%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.re (fma.f64 #s(literal -1 binary64) (/.f64 y.im (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))) (/.f64 (*.f64 x.im y.re) (*.f64 x.re (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))))))
62.1%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (*.f64 x.im (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))) (/.f64 y.re (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))))))
40.3%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (/.f64 x.re y.im)))
Compiler

Compiled 610 to 392 computations (35.7% saved)

series399.0ms (9.8%)

Memory
22.8MiB live, 347.0MiB allocated; 113ms collecting garbage
Counts
33 → 207
Calls
Call 1
Inputs
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (*.f64 x.im (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))) (/.f64 y.re (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))))))
(*.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (*.f64 x.im (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))) (/.f64 y.re (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))))
x.im
(fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (*.f64 x.im (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))) (/.f64 y.re (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))))
#s(literal -1 binary64)
(/.f64 (*.f64 x.re y.im) (*.f64 x.im (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))))
(*.f64 x.re y.im)
x.re
y.im
(*.f64 x.im (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))
(+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))
(pow.f64 y.im #s(literal 2 binary64))
#s(literal 2 binary64)
(pow.f64 y.re #s(literal 2 binary64))
y.re
(/.f64 y.re (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 x.im y.re))
(/.f64 x.im y.re)
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (fma.f64 #s(literal -1 binary64) x.re (/.f64 (*.f64 x.im y.re) y.im)) y.im))
(/.f64 (fma.f64 #s(literal -1 binary64) x.re (/.f64 (*.f64 x.im y.re) y.im)) y.im)
(fma.f64 #s(literal -1 binary64) x.re (/.f64 (*.f64 x.im y.re) y.im))
(/.f64 (*.f64 x.im y.re) y.im)
(*.f64 x.im y.re)
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (+.f64 x.im (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re))) y.re))
(/.f64 (+.f64 x.im (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re))) y.re)
(+.f64 x.im (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re)))
(*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re))
(/.f64 (*.f64 x.re y.im) y.re)
(/.f64 (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (*.f64 (-.f64 y.re y.im) (+.f64 y.im y.re)))
(-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(*.f64 (-.f64 y.re y.im) (+.f64 y.im y.re))
(-.f64 y.re y.im)
(+.f64 y.im y.re)
Outputs
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (*.f64 x.im y.re) (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))) (/.f64 (*.f64 x.im y.re) (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))))
#s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (/.f64 y.re (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))))
#s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (*.f64 x.im (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))) (/.f64 y.re (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))))
#s(approx (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2)))) (/.f64 (*.f64 x.re y.im) (*.f64 x.im (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))))
#s(approx (* x.re y.im) (*.f64 x.re y.im))
#s(approx x.re x.re)
#s(approx (/ (+ (* -1 x.re) (/ (* x.im y.re) y.im)) y.im) (/.f64 (*.f64 x.im y.re) (pow.f64 y.im #s(literal 2 binary64))))
#s(approx (/ (+ (* -1 x.re) (/ (* x.im y.re) y.im)) y.im) (fma.f64 #s(literal -1 binary64) (/.f64 x.re y.im) (/.f64 (*.f64 x.im y.re) (pow.f64 y.im #s(literal 2 binary64)))))
#s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (/.f64 (*.f64 x.im y.re) y.im))
#s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (fma.f64 #s(literal -1 binary64) x.re (/.f64 (*.f64 x.im y.re) y.im)))
#s(approx (/ (+ x.im (* -1 (/ (* x.re y.im) y.re))) y.re) (/.f64 x.im y.re))
#s(approx (/ (+ x.im (* -1 (/ (* x.re y.im) y.re))) y.re) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (pow.f64 y.re #s(literal 2 binary64))) (/.f64 x.im y.re)))
#s(approx (+ x.im (* -1 (/ (* x.re y.im) y.re))) x.im)
#s(approx (+ x.im (* -1 (/ (* x.re y.im) y.re))) (+.f64 x.im (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re))))
#s(approx (* -1 (/ (* x.re y.im) y.re)) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re)))
#s(approx (/ (* x.re y.im) y.re) (/.f64 (*.f64 x.re y.im) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 (*.f64 x.im y.re) (*.f64 (+.f64 y.im y.re) (-.f64 y.re y.im))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (*.f64 (+.f64 y.im y.re) (-.f64 y.re y.im))) (/.f64 (*.f64 x.im y.re) (*.f64 (+.f64 y.im y.re) (-.f64 y.re y.im)))))
#s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 x.im y.re))
#s(approx (- (* x.im y.re) (* x.re y.im)) (fma.f64 #s(literal -1 binary64) (*.f64 x.re y.im) (*.f64 x.im y.re)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.re (fma.f64 #s(literal -1 binary64) (/.f64 y.im (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))) (/.f64 (*.f64 x.im y.re) (*.f64 x.re (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))))))
#s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (*.f64 x.im (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))))))
#s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (*.f64 x.re (fma.f64 #s(literal -1 binary64) (/.f64 y.im (*.f64 x.im (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))) (/.f64 y.re (*.f64 x.re (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))))))
#s(approx (/ (+ (* -1 x.re) (/ (* x.im y.re) y.im)) y.im) (*.f64 #s(literal -1 binary64) (/.f64 x.re y.im)))
#s(approx (/ (+ (* -1 x.re) (/ (* x.im y.re) y.im)) y.im) (*.f64 x.re (-.f64 (/.f64 (*.f64 x.im y.re) (*.f64 x.re (pow.f64 y.im #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) y.im))))
#s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 #s(literal -1 binary64) x.re))
#s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 x.re (-.f64 (/.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) #s(literal 1 binary64))))
#s(approx (/ (+ x.im (* -1 (/ (* x.re y.im) y.re))) y.re) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (pow.f64 y.re #s(literal 2 binary64)))))
#s(approx (/ (+ x.im (* -1 (/ (* x.re y.im) y.re))) y.re) (*.f64 x.re (fma.f64 #s(literal -1 binary64) (/.f64 y.im (pow.f64 y.re #s(literal 2 binary64))) (/.f64 x.im (*.f64 x.re y.re)))))
#s(approx (+ x.im (* -1 (/ (* x.re y.im) y.re))) (*.f64 x.re (fma.f64 #s(literal -1 binary64) (/.f64 y.im y.re) (/.f64 x.im x.re))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (*.f64 (+.f64 y.im y.re) (-.f64 y.re y.im)))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (*.f64 x.re (fma.f64 #s(literal -1 binary64) (/.f64 y.im (*.f64 (+.f64 y.im y.re) (-.f64 y.re y.im))) (/.f64 (*.f64 x.im y.re) (*.f64 x.re (*.f64 (+.f64 y.im y.re) (-.f64 y.re y.im)))))))
#s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.re y.im)))
#s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 x.re (-.f64 (/.f64 (*.f64 x.im y.re) x.re) y.im)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (*.f64 x.re (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im y.re) (*.f64 x.re (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))) (/.f64 y.im (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))))))
#s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (*.f64 #s(literal -1 binary64) (*.f64 x.re (fma.f64 #s(literal -1 binary64) (/.f64 y.re (*.f64 x.re (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))) (/.f64 y.im (*.f64 x.im (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))))))))
#s(approx (/ (+ (* -1 x.re) (/ (* x.im y.re) y.im)) y.im) (*.f64 #s(literal -1 binary64) (*.f64 x.re (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im y.re) (*.f64 x.re (pow.f64 y.im #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) y.im)))))
#s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)))))))
#s(approx (/ (+ x.im (* -1 (/ (* x.re y.im) y.re))) y.re) (*.f64 #s(literal -1 binary64) (*.f64 x.re (fma.f64 #s(literal -1 binary64) (/.f64 x.im (*.f64 x.re y.re)) (/.f64 y.im (pow.f64 y.re #s(literal 2 binary64)))))))
#s(approx (+ x.im (* -1 (/ (* x.re y.im) y.re))) (*.f64 #s(literal -1 binary64) (*.f64 x.re (fma.f64 #s(literal -1 binary64) (/.f64 x.im x.re) (/.f64 y.im y.re)))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (*.f64 #s(literal -1 binary64) (*.f64 x.re (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im y.re) (*.f64 x.re (*.f64 (+.f64 y.im y.re) (-.f64 y.re y.im)))) (/.f64 y.im (*.f64 (+.f64 y.im y.re) (-.f64 y.re y.im)))))))
#s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.re (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im y.re) x.re)) (*.f64 #s(literal -1 binary64) y.im)))))
#s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))) (/.f64 (*.f64 x.im y.re) (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))) x.im))
#s(approx (* x.im (+ (pow y.im 2) (pow y.re 2))) (*.f64 x.im (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))))
#s(approx (- (* x.im y.re) (* x.re y.im)) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (*.f64 x.im (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))) (/.f64 y.re (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))))))
#s(approx (/ (+ (* -1 x.re) (/ (* x.im y.re) y.im)) y.im) (*.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re (*.f64 x.im y.im)) (/.f64 y.re (pow.f64 y.im #s(literal 2 binary64))))))
#s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re x.im) (/.f64 y.re y.im))))
#s(approx (/ (+ x.im (* -1 (/ (* x.re y.im) y.re))) y.re) (*.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (*.f64 x.im (pow.f64 y.re #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) y.re))))
#s(approx (+ x.im (* -1 (/ (* x.re y.im) y.re))) (*.f64 x.im (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (*.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (*.f64 x.im (*.f64 (+.f64 y.im y.re) (-.f64 y.re y.im)))) (/.f64 y.re (*.f64 (+.f64 y.im y.re) (-.f64 y.re y.im))))))
#s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 x.im (+.f64 y.re (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) x.im)))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (*.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 y.re (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))) (/.f64 (*.f64 x.re y.im) (*.f64 x.im (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))))))))
#s(approx (/ (+ (* -1 x.re) (/ (* x.im y.re) y.im)) y.im) (*.f64 #s(literal -1 binary64) (*.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 y.re (pow.f64 y.im #s(literal 2 binary64))) (/.f64 x.re (*.f64 x.im y.im))))))
#s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 y.re y.im) (/.f64 x.re x.im)))))
#s(approx (/ (+ x.im (* -1 (/ (* x.re y.im) y.re))) y.re) (*.f64 #s(literal -1 binary64) (*.f64 x.im (-.f64 (/.f64 (*.f64 x.re y.im) (*.f64 x.im (pow.f64 y.re #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) y.re)))))
#s(approx (+ x.im (* -1 (/ (* x.re y.im) y.re))) (*.f64 #s(literal -1 binary64) (*.f64 x.im (-.f64 (/.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) #s(literal 1 binary64)))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (*.f64 #s(literal -1 binary64) (*.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 y.re (*.f64 (+.f64 y.im y.re) (-.f64 y.re y.im))) (/.f64 (*.f64 x.re y.im) (*.f64 x.im (*.f64 (+.f64 y.im y.re) (-.f64 y.re y.im))))))))
#s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.im (fma.f64 #s(literal -1 binary64) y.re (/.f64 (*.f64 x.re y.im) x.im)))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (fma.f64 #s(literal -1 binary64) (/.f64 x.re y.im) (*.f64 y.re (+.f64 (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64))) (/.f64 (*.f64 x.re y.re) (pow.f64 y.im #s(literal 3 binary64)))))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (fma.f64 #s(literal -1 binary64) (/.f64 x.re y.im) (*.f64 y.re (fma.f64 y.re (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im y.re) (pow.f64 y.im #s(literal 4 binary64)))) (*.f64 #s(literal -1 binary64) (/.f64 x.re (pow.f64 y.im #s(literal 3 binary64))))) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64)))))))
#s(approx (* x.im (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2))))) (fma.f64 #s(literal -1 binary64) (/.f64 x.re y.im) (*.f64 y.re (fma.f64 y.re (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im y.re) (pow.f64 y.im #s(literal 4 binary64))) (/.f64 x.re (pow.f64 y.im #s(literal 3 binary64)))) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64)))))))
#s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (*.f64 #s(literal -1 binary64) (/.f64 x.re (*.f64 x.im y.im))))
#s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (fma.f64 #s(literal -1 binary64) (/.f64 x.re (*.f64 x.im y.im)) (/.f64 y.re (pow.f64 y.im #s(literal 2 binary64)))))
#s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (fma.f64 #s(literal -1 binary64) (/.f64 x.re (*.f64 x.im y.im)) (*.f64 y.re (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y.im #s(literal 2 binary64))) (/.f64 (*.f64 x.re y.re) (*.f64 x.im (pow.f64 y.im #s(literal 3 binary64))))))))
#s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (fma.f64 #s(literal -1 binary64) (/.f64 x.re (*.f64 x.im y.im)) (*.f64 y.re (fma.f64 y.re (fma.f64 #s(literal -1 binary64) (/.f64 y.re (pow.f64 y.im #s(literal 4 binary64))) (/.f64 x.re (*.f64 x.im (pow.f64 y.im #s(literal 3 binary64))))) (/.f64 #s(literal 1 binary64) (pow.f64 y.im #s(literal 2 binary64)))))))
#s(approx (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2)))) (/.f64 x.re (*.f64 x.im y.im)))
#s(approx (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2)))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (*.f64 x.im (pow.f64 y.im #s(literal 3 binary64)))) (/.f64 x.re (*.f64 x.im y.im))))
#s(approx (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2)))) (fma.f64 (pow.f64 y.re #s(literal 2 binary64)) (-.f64 (/.f64 (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (*.f64 x.im (pow.f64 y.im #s(literal 5 binary64)))) (/.f64 x.re (*.f64 x.im (pow.f64 y.im #s(literal 3 binary64))))) (/.f64 x.re (*.f64 x.im y.im))))
#s(approx (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2)))) (fma.f64 (pow.f64 y.re #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 y.re #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (*.f64 x.im (pow.f64 y.im #s(literal 7 binary64))))) (*.f64 #s(literal -1 binary64) (/.f64 x.re (*.f64 x.im (pow.f64 y.im #s(literal 5 binary64))))))) (/.f64 x.re (*.f64 x.im (pow.f64 y.im #s(literal 3 binary64))))) (/.f64 x.re (*.f64 x.im y.im))))
#s(approx (* x.im (+ (pow y.im 2) (pow y.re 2))) (*.f64 x.im (pow.f64 y.im #s(literal 2 binary64))))
#s(approx (* x.im (+ (pow y.im 2) (pow y.re 2))) (fma.f64 x.im (pow.f64 y.im #s(literal 2 binary64)) (*.f64 x.im (pow.f64 y.re #s(literal 2 binary64)))))
#s(approx (+ (pow y.im 2) (pow y.re 2)) (pow.f64 y.im #s(literal 2 binary64)))
#s(approx (+ (pow y.im 2) (pow y.re 2)) (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))
#s(approx (pow y.re 2) (pow.f64 y.re #s(literal 2 binary64)))
#s(approx y.re y.re)
#s(approx (/ y.re (+ (pow y.im 2) (pow y.re 2))) (/.f64 y.re (pow.f64 y.im #s(literal 2 binary64))))
#s(approx (/ y.re (+ (pow y.im 2) (pow y.re 2))) (*.f64 y.re (fma.f64 #s(literal -1 binary64) (/.f64 (pow.f64 y.re #s(literal 2 binary64)) (pow.f64 y.im #s(literal 4 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 y.im #s(literal 2 binary64))))))
#s(approx (/ y.re (+ (pow y.im 2) (pow y.re 2))) (*.f64 y.re (fma.f64 (pow.f64 y.re #s(literal 2 binary64)) (-.f64 (/.f64 (pow.f64 y.re #s(literal 2 binary64)) (pow.f64 y.im #s(literal 6 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 y.im #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (pow.f64 y.im #s(literal 2 binary64))))))
#s(approx (/ y.re (+ (pow y.im 2) (pow y.re 2))) (*.f64 y.re (fma.f64 (pow.f64 y.re #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 y.re #s(literal 2 binary64)) (fma.f64 #s(literal -1 binary64) (/.f64 (pow.f64 y.re #s(literal 2 binary64)) (pow.f64 y.im #s(literal 8 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 y.im #s(literal 6 binary64))))) (/.f64 #s(literal 1 binary64) (pow.f64 y.im #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (pow.f64 y.im #s(literal 2 binary64))))))
#s(approx (/ (+ x.im (* -1 (/ (* x.re y.im) y.re))) y.re) (/.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x.re y.im) (*.f64 x.im y.re)) (pow.f64 y.re #s(literal 2 binary64))))
#s(approx (+ x.im (* -1 (/ (* x.re y.im) y.re))) (/.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x.re y.im) (*.f64 x.im y.re)) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 x.re y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (fma.f64 y.re (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64)))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im))) (pow.f64 y.im #s(literal 3 binary64))))) (/.f64 x.re y.im)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (fma.f64 y.re (-.f64 (fma.f64 #s(literal -1 binary64) (*.f64 y.re (fma.f64 #s(literal -1 binary64) (/.f64 x.re (pow.f64 y.im #s(literal 3 binary64))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im)) (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64)))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im))) (pow.f64 y.im #s(literal 3 binary64)))))) (pow.f64 y.im #s(literal 2 binary64)))))) (*.f64 #s(literal -1 binary64) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64))))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im))) (pow.f64 y.im #s(literal 3 binary64))))) (/.f64 x.re y.im)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (fma.f64 y.re (-.f64 (fma.f64 #s(literal -1 binary64) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64))) (*.f64 y.re (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 y.re (fma.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64)))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im))) (pow.f64 y.im #s(literal 3 binary64))))) (pow.f64 y.im #s(literal 2 binary64))) (/.f64 (*.f64 (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im)) (fma.f64 #s(literal -1 binary64) (/.f64 x.re (pow.f64 y.im #s(literal 3 binary64))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im)) (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64)))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im))) (pow.f64 y.im #s(literal 3 binary64)))))) (pow.f64 y.im #s(literal 2 binary64)))))) (pow.f64 y.im #s(literal 2 binary64)))))) (fma.f64 #s(literal -1 binary64) (/.f64 x.re (pow.f64 y.im #s(literal 3 binary64))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im)) (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64)))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im))) (pow.f64 y.im #s(literal 3 binary64)))))) (pow.f64 y.im #s(literal 2 binary64)))))))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im))) (pow.f64 y.im #s(literal 3 binary64))))) (/.f64 x.re y.im)))
#s(approx (* (- y.re y.im) (+ y.im y.re)) (*.f64 #s(literal -1 binary64) (pow.f64 y.im #s(literal 2 binary64))))
#s(approx (* (- y.re y.im) (+ y.im y.re)) (fma.f64 #s(literal -1 binary64) (pow.f64 y.im #s(literal 2 binary64)) (*.f64 y.re (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im)))))
#s(approx (* (- y.re y.im) (+ y.im y.re)) (fma.f64 #s(literal -1 binary64) (pow.f64 y.im #s(literal 2 binary64)) (*.f64 y.re (+.f64 y.im (+.f64 y.re (*.f64 #s(literal -1 binary64) y.im))))))
#s(approx (- y.re y.im) (*.f64 #s(literal -1 binary64) y.im))
#s(approx (- y.re y.im) (-.f64 y.re y.im))
#s(approx (+ y.im y.re) y.im)
#s(approx (+ y.im y.re) (+.f64 y.im y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (+.f64 x.im (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re))) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (+.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im (pow.f64 y.im #s(literal 2 binary64))) (pow.f64 y.re #s(literal 2 binary64))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re)))) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (-.f64 (+.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re) (/.f64 (*.f64 x.re (pow.f64 y.im #s(literal 3 binary64))) (pow.f64 y.re #s(literal 3 binary64))))) (/.f64 (*.f64 x.im (pow.f64 y.im #s(literal 2 binary64))) (pow.f64 y.re #s(literal 2 binary64)))) y.re))
#s(approx (* x.im (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2))))) (/.f64 (+.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im (pow.f64 y.im #s(literal 2 binary64))) (pow.f64 y.re #s(literal 2 binary64))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re) (/.f64 (*.f64 x.re (pow.f64 y.im #s(literal 3 binary64))) (pow.f64 y.re #s(literal 3 binary64)))))) y.re))
#s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (/.f64 #s(literal 1 binary64) y.re))
#s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (/.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)))) y.re))
#s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (/.f64 (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))))) y.re))
#s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (/.f64 (-.f64 (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) (/.f64 (*.f64 x.re (pow.f64 y.im #s(literal 3 binary64))) (*.f64 x.im (pow.f64 y.re #s(literal 3 binary64)))))) (/.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))) y.re))
#s(approx (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2)))) (/.f64 (*.f64 x.re y.im) (*.f64 x.im (pow.f64 y.re #s(literal 2 binary64)))))
#s(approx (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2)))) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (pow.f64 y.im #s(literal 3 binary64))) (*.f64 x.im (pow.f64 y.re #s(literal 2 binary64)))) (/.f64 (*.f64 x.re y.im) x.im)) (pow.f64 y.re #s(literal 2 binary64))))
#s(approx (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2)))) (/.f64 (-.f64 (+.f64 (/.f64 (*.f64 x.re y.im) x.im) (/.f64 (*.f64 x.re (pow.f64 y.im #s(literal 5 binary64))) (*.f64 x.im (pow.f64 y.re #s(literal 4 binary64))))) (/.f64 (*.f64 x.re (pow.f64 y.im #s(literal 3 binary64))) (*.f64 x.im (pow.f64 y.re #s(literal 2 binary64))))) (pow.f64 y.re #s(literal 2 binary64))))
#s(approx (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2)))) (/.f64 (-.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (pow.f64 y.im #s(literal 7 binary64))) (*.f64 x.im (pow.f64 y.re #s(literal 6 binary64)))) (/.f64 (*.f64 x.re y.im) x.im)) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (pow.f64 y.im #s(literal 5 binary64))) (*.f64 x.im (pow.f64 y.re #s(literal 4 binary64)))) (/.f64 (*.f64 x.re (pow.f64 y.im #s(literal 3 binary64))) (*.f64 x.im (pow.f64 y.re #s(literal 2 binary64)))))) (pow.f64 y.re #s(literal 2 binary64))))
#s(approx (* x.im (+ (pow y.im 2) (pow y.re 2))) (*.f64 x.im (pow.f64 y.re #s(literal 2 binary64))))
#s(approx (* x.im (+ (pow y.im 2) (pow y.re 2))) (*.f64 (pow.f64 y.re #s(literal 2 binary64)) (+.f64 x.im (/.f64 (*.f64 x.im (pow.f64 y.im #s(literal 2 binary64))) (pow.f64 y.re #s(literal 2 binary64))))))
#s(approx (+ (pow y.im 2) (pow y.re 2)) (*.f64 (pow.f64 y.re #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (/.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))))
#s(approx (/ y.re (+ (pow y.im 2) (pow y.re 2))) (/.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))) y.re))
#s(approx (/ y.re (+ (pow y.im 2) (pow y.re 2))) (/.f64 (-.f64 (+.f64 #s(literal 1 binary64) (/.f64 (pow.f64 y.im #s(literal 4 binary64)) (pow.f64 y.re #s(literal 4 binary64)))) (/.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))) y.re))
#s(approx (/ y.re (+ (pow y.im 2) (pow y.re 2))) (/.f64 (-.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 y.im #s(literal 6 binary64)) (pow.f64 y.re #s(literal 6 binary64))))) (fma.f64 #s(literal -1 binary64) (/.f64 (pow.f64 y.im #s(literal 4 binary64)) (pow.f64 y.re #s(literal 4 binary64))) (/.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))) y.re))
#s(approx (/ (+ (* -1 x.re) (/ (* x.im y.re) y.im)) y.im) (*.f64 y.re (fma.f64 #s(literal -1 binary64) (/.f64 x.re (*.f64 y.im y.re)) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64))))))
#s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 y.re (fma.f64 #s(literal -1 binary64) (/.f64 x.re y.re) (/.f64 x.im y.im))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 (-.f64 (+.f64 x.im (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re))) (/.f64 (*.f64 x.im (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im))) y.re)) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 (-.f64 (+.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x.im (pow.f64 y.im #s(literal 2 binary64))) (*.f64 (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im)) (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 x.re y.im)) (*.f64 x.im (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im)))))) (pow.f64 y.re #s(literal 2 binary64)))))) (/.f64 (*.f64 x.im (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im))) y.re)) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 (-.f64 (+.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (*.f64 (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im)) (fma.f64 #s(literal -1 binary64) (*.f64 x.im (pow.f64 y.im #s(literal 2 binary64))) (*.f64 (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im)) (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 x.re y.im)) (*.f64 x.im (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im))))))) (*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 y.im #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 x.re y.im)) (*.f64 x.im (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im))))))) (pow.f64 y.re #s(literal 3 binary64)))))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im (pow.f64 y.im #s(literal 2 binary64))) (pow.f64 y.re #s(literal 2 binary64))) (+.f64 (/.f64 (*.f64 x.im (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im))) y.re) (/.f64 (*.f64 (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im)) (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 x.re y.im)) (*.f64 x.im (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im))))) (pow.f64 y.re #s(literal 2 binary64)))))) y.re))
#s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 y.re (+.f64 x.im (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re)))))
#s(approx (* (- y.re y.im) (+ y.im y.re)) (*.f64 (pow.f64 y.re #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1 binary64) (/.f64 y.im y.re) (/.f64 y.im y.re)))))
#s(approx (* (- y.re y.im) (+ y.im y.re)) (*.f64 (pow.f64 y.re #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1 binary64) (/.f64 y.im y.re) (fma.f64 #s(literal -1 binary64) (/.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))) (/.f64 y.im y.re))))))
#s(approx (- y.re y.im) (*.f64 y.re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 y.im y.re)))))
#s(approx (+ y.im y.re) (*.f64 y.re (+.f64 #s(literal 1 binary64) (/.f64 y.im y.re))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) x.im (/.f64 (*.f64 x.re y.im) y.re)) y.re)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) x.im (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x.re y.im) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im (pow.f64 y.im #s(literal 2 binary64))) y.re))) y.re))) y.re)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) x.im (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x.re y.im) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (pow.f64 y.im #s(literal 3 binary64))) y.re)) (*.f64 #s(literal -1 binary64) (*.f64 x.im (pow.f64 y.im #s(literal 2 binary64))))) y.re))) y.re))) y.re)))
#s(approx (* x.im (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2))))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) x.im (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x.re y.im) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (pow.f64 y.im #s(literal 3 binary64))) y.re) (*.f64 x.im (pow.f64 y.im #s(literal 2 binary64)))) y.re))) y.re))) y.re)))
#s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) #s(literal 1 binary64)) y.re)))
#s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) x.im) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 y.im #s(literal 2 binary64)) y.re))) y.re)) #s(literal 1 binary64)) y.re)))
#s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) x.im) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (pow.f64 y.im #s(literal 3 binary64))) (*.f64 x.im y.re)) (pow.f64 y.im #s(literal 2 binary64))) y.re))) y.re)) #s(literal 1 binary64)) y.re)))
#s(approx (/ y.re (+ (pow y.im 2) (pow y.re 2))) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))) #s(literal 1 binary64)) y.re)))
#s(approx (/ y.re (+ (pow y.im 2) (pow y.re 2))) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 y.im #s(literal 4 binary64)) (pow.f64 y.re #s(literal 4 binary64)))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))))) y.re)))
#s(approx (/ y.re (+ (pow y.im 2) (pow y.re 2))) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 (pow.f64 y.im #s(literal 6 binary64)) (pow.f64 y.re #s(literal 6 binary64))) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1 binary64) (/.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))) (/.f64 (pow.f64 y.im #s(literal 4 binary64)) (pow.f64 y.re #s(literal 4 binary64)))))) y.re)))
#s(approx (/ (+ (* -1 x.re) (/ (* x.im y.re) y.im)) y.im) (*.f64 #s(literal -1 binary64) (*.f64 y.re (fma.f64 #s(literal -1 binary64) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64))) (/.f64 x.re (*.f64 y.im y.re))))))
#s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 #s(literal -1 binary64) (*.f64 y.re (fma.f64 #s(literal -1 binary64) (/.f64 x.im y.im) (/.f64 x.re y.re)))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (fma.f64 #s(literal -1 binary64) x.im (/.f64 (*.f64 x.re y.im) y.re)) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im))) y.re))) y.re)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) x.im (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (-.f64 (*.f64 x.re y.im) (*.f64 #s(literal -1 binary64) (*.f64 x.im (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im))))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x.im (pow.f64 y.im #s(literal 2 binary64))) (*.f64 #s(literal -1 binary64) (*.f64 (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im)) (-.f64 (*.f64 x.re y.im) (*.f64 #s(literal -1 binary64) (*.f64 x.im (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im)))))))) y.re))) y.re))) y.re)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) x.im (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (-.f64 (*.f64 x.re y.im) (*.f64 #s(literal -1 binary64) (*.f64 x.im (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im))))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x.im (pow.f64 y.im #s(literal 2 binary64))) (fma.f64 #s(literal -1 binary64) (*.f64 (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im)) (-.f64 (*.f64 x.re y.im) (*.f64 #s(literal -1 binary64) (*.f64 x.im (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im)))))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (*.f64 (pow.f64 y.im #s(literal 2 binary64)) (-.f64 (*.f64 x.re y.im) (*.f64 #s(literal -1 binary64) (*.f64 x.im (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im)))))) (*.f64 (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im)) (fma.f64 #s(literal -1 binary64) (*.f64 x.im (pow.f64 y.im #s(literal 2 binary64))) (*.f64 #s(literal -1 binary64) (*.f64 (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im)) (-.f64 (*.f64 x.re y.im) (*.f64 #s(literal -1 binary64) (*.f64 x.im (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im)))))))))) y.re)))) y.re))) y.re))) y.re)))
#s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 y.re (fma.f64 #s(literal -1 binary64) x.im (/.f64 (*.f64 x.re y.im) y.re)))))
#s(approx (* (- y.re y.im) (+ y.im y.re)) (*.f64 (pow.f64 y.re #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im)) (/.f64 (pow.f64 y.im #s(literal 2 binary64)) y.re)) y.re)))))
#s(approx (- y.re y.im) (*.f64 #s(literal -1 binary64) (*.f64 y.re (-.f64 (/.f64 y.im y.re) #s(literal 1 binary64)))))
#s(approx (+ y.im y.re) (*.f64 #s(literal -1 binary64) (*.f64 y.re (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 y.im y.re)) #s(literal 1 binary64)))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (fma.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im y.im) (pow.f64 y.re #s(literal 3 binary64))))) (/.f64 x.im y.re)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (fma.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (*.f64 y.im (-.f64 (/.f64 (*.f64 x.re y.im) (pow.f64 y.re #s(literal 4 binary64))) (/.f64 x.im (pow.f64 y.re #s(literal 3 binary64)))))) (/.f64 x.im y.re)))
#s(approx (* x.im (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2))))) (fma.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (*.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.im (pow.f64 y.re #s(literal 3 binary64))) (/.f64 (*.f64 x.re y.im) (pow.f64 y.re #s(literal 4 binary64)))))) (/.f64 x.im y.re)))
#s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (*.f64 x.im (pow.f64 y.re #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) y.re)))
#s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (fma.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re (*.f64 x.im (pow.f64 y.re #s(literal 2 binary64)))) (*.f64 #s(literal -1 binary64) (/.f64 y.im (pow.f64 y.re #s(literal 3 binary64))))) (/.f64 #s(literal 1 binary64) y.re)))
#s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (fma.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re (*.f64 x.im (pow.f64 y.re #s(literal 2 binary64)))) (*.f64 y.im (-.f64 (/.f64 (*.f64 x.re y.im) (*.f64 x.im (pow.f64 y.re #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (pow.f64 y.re #s(literal 3 binary64)))))) (/.f64 #s(literal 1 binary64) y.re)))
#s(approx (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2)))) (*.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (pow.f64 y.im #s(literal 2 binary64))) (*.f64 x.im (pow.f64 y.re #s(literal 4 binary64)))) (/.f64 x.re (*.f64 x.im (pow.f64 y.re #s(literal 2 binary64)))))))
#s(approx (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2)))) (*.f64 y.im (fma.f64 (pow.f64 y.im #s(literal 2 binary64)) (-.f64 (/.f64 (*.f64 x.re (pow.f64 y.im #s(literal 2 binary64))) (*.f64 x.im (pow.f64 y.re #s(literal 6 binary64)))) (/.f64 x.re (*.f64 x.im (pow.f64 y.re #s(literal 4 binary64))))) (/.f64 x.re (*.f64 x.im (pow.f64 y.re #s(literal 2 binary64)))))))
#s(approx (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2)))) (*.f64 y.im (fma.f64 (pow.f64 y.im #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 y.im #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (pow.f64 y.im #s(literal 2 binary64))) (*.f64 x.im (pow.f64 y.re #s(literal 8 binary64))))) (*.f64 #s(literal -1 binary64) (/.f64 x.re (*.f64 x.im (pow.f64 y.re #s(literal 6 binary64))))))) (/.f64 x.re (*.f64 x.im (pow.f64 y.re #s(literal 4 binary64))))) (/.f64 x.re (*.f64 x.im (pow.f64 y.re #s(literal 2 binary64)))))))
#s(approx (/ y.re (+ (pow y.im 2) (pow y.re 2))) (fma.f64 #s(literal -1 binary64) (/.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) y.re)))
#s(approx (/ y.re (+ (pow y.im 2) (pow y.re 2))) (fma.f64 (pow.f64 y.im #s(literal 2 binary64)) (-.f64 (/.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 5 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 y.re #s(literal 3 binary64)))) (/.f64 #s(literal 1 binary64) y.re)))
#s(approx (/ y.re (+ (pow y.im 2) (pow y.re 2))) (fma.f64 (pow.f64 y.im #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 y.im #s(literal 2 binary64)) (fma.f64 #s(literal -1 binary64) (/.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 7 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 y.re #s(literal 5 binary64))))) (/.f64 #s(literal 1 binary64) (pow.f64 y.re #s(literal 3 binary64)))) (/.f64 #s(literal 1 binary64) y.re)))
#s(approx (/ (+ (* -1 x.re) (/ (* x.im y.re) y.im)) y.im) (/.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x.re y.im) (*.f64 x.im y.re)) (pow.f64 y.im #s(literal 2 binary64))))
#s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (/.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x.re y.im) (*.f64 x.im y.re)) y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (fma.f64 y.im (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 x.re (pow.f64 y.re #s(literal 2 binary64)))) (/.f64 (*.f64 x.im (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re))) (pow.f64 y.re #s(literal 3 binary64)))) (/.f64 x.im y.re)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (fma.f64 y.im (-.f64 (fma.f64 #s(literal -1 binary64) (*.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.im (pow.f64 y.re #s(literal 3 binary64))) (/.f64 (*.f64 (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re)) (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 x.re (pow.f64 y.re #s(literal 2 binary64)))) (/.f64 (*.f64 x.im (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re))) (pow.f64 y.re #s(literal 3 binary64))))) (pow.f64 y.re #s(literal 2 binary64))))) (*.f64 #s(literal -1 binary64) (/.f64 x.re (pow.f64 y.re #s(literal 2 binary64))))) (/.f64 (*.f64 x.im (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re))) (pow.f64 y.re #s(literal 3 binary64)))) (/.f64 x.im y.re)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (fma.f64 y.im (-.f64 (fma.f64 #s(literal -1 binary64) (/.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (*.f64 y.im (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re)) (fma.f64 #s(literal -1 binary64) (/.f64 x.im (pow.f64 y.re #s(literal 3 binary64))) (/.f64 (*.f64 (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re)) (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 x.re (pow.f64 y.re #s(literal 2 binary64)))) (/.f64 (*.f64 x.im (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re))) (pow.f64 y.re #s(literal 3 binary64))))) (pow.f64 y.re #s(literal 2 binary64))))) (pow.f64 y.re #s(literal 2 binary64))) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 x.re (pow.f64 y.re #s(literal 2 binary64)))) (/.f64 (*.f64 x.im (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re))) (pow.f64 y.re #s(literal 3 binary64)))) (pow.f64 y.re #s(literal 2 binary64))))))) (fma.f64 #s(literal -1 binary64) (/.f64 x.im (pow.f64 y.re #s(literal 3 binary64))) (/.f64 (*.f64 (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re)) (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 x.re (pow.f64 y.re #s(literal 2 binary64)))) (/.f64 (*.f64 x.im (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re))) (pow.f64 y.re #s(literal 3 binary64))))) (pow.f64 y.re #s(literal 2 binary64))))))) (/.f64 (*.f64 x.im (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re))) (pow.f64 y.re #s(literal 3 binary64)))) (/.f64 x.im y.re)))
#s(approx (* (- y.re y.im) (+ y.im y.re)) (fma.f64 y.im (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re)) (pow.f64 y.re #s(literal 2 binary64))))
#s(approx (* (- y.re y.im) (+ y.im y.re)) (fma.f64 y.im (+.f64 y.re (fma.f64 #s(literal -1 binary64) y.im (*.f64 #s(literal -1 binary64) y.re))) (pow.f64 y.re #s(literal 2 binary64))))
#s(approx (- y.re y.im) (+.f64 y.re (*.f64 #s(literal -1 binary64) y.im)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (fma.f64 #s(literal -1 binary64) x.re (/.f64 (*.f64 x.im y.re) y.im)) y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (fma.f64 #s(literal -1 binary64) x.re (+.f64 (/.f64 (*.f64 x.im y.re) y.im) (/.f64 (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (pow.f64 y.im #s(literal 2 binary64))))) y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (-.f64 (fma.f64 #s(literal -1 binary64) x.re (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im (pow.f64 y.re #s(literal 3 binary64))) (pow.f64 y.im #s(literal 3 binary64))) (/.f64 (*.f64 x.im y.re) y.im))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (pow.f64 y.im #s(literal 2 binary64))))) y.im))
#s(approx (* x.im (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2))))) (/.f64 (fma.f64 #s(literal -1 binary64) x.re (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im (pow.f64 y.re #s(literal 3 binary64))) (pow.f64 y.im #s(literal 3 binary64))) (+.f64 (/.f64 (*.f64 x.im y.re) y.im) (/.f64 (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (pow.f64 y.im #s(literal 2 binary64)))))) y.im))
#s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 x.re x.im) (/.f64 y.re y.im)) y.im))
#s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 x.re x.im) (+.f64 (/.f64 y.re y.im) (/.f64 (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (*.f64 x.im (pow.f64 y.im #s(literal 2 binary64)))))) y.im))
#s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 x.re x.im) (fma.f64 #s(literal -1 binary64) (/.f64 (pow.f64 y.re #s(literal 3 binary64)) (pow.f64 y.im #s(literal 3 binary64))) (+.f64 (/.f64 y.re y.im) (/.f64 (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (*.f64 x.im (pow.f64 y.im #s(literal 2 binary64))))))) y.im))
#s(approx (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2)))) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (*.f64 x.im (pow.f64 y.im #s(literal 2 binary64)))) (/.f64 x.re x.im)) y.im))
#s(approx (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2)))) (/.f64 (-.f64 (+.f64 (/.f64 x.re x.im) (/.f64 (*.f64 x.re (pow.f64 y.re #s(literal 4 binary64))) (*.f64 x.im (pow.f64 y.im #s(literal 4 binary64))))) (/.f64 (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (*.f64 x.im (pow.f64 y.im #s(literal 2 binary64))))) y.im))
#s(approx (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2)))) (/.f64 (-.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (pow.f64 y.re #s(literal 6 binary64))) (*.f64 x.im (pow.f64 y.im #s(literal 6 binary64)))) (/.f64 x.re x.im)) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (pow.f64 y.re #s(literal 4 binary64))) (*.f64 x.im (pow.f64 y.im #s(literal 4 binary64)))) (/.f64 (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (*.f64 x.im (pow.f64 y.im #s(literal 2 binary64)))))) y.im))
#s(approx (* x.im (+ (pow y.im 2) (pow y.re 2))) (*.f64 (pow.f64 y.im #s(literal 2 binary64)) (+.f64 x.im (/.f64 (*.f64 x.im (pow.f64 y.re #s(literal 2 binary64))) (pow.f64 y.im #s(literal 2 binary64))))))
#s(approx (+ (pow y.im 2) (pow y.re 2)) (*.f64 (pow.f64 y.im #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (/.f64 (pow.f64 y.re #s(literal 2 binary64)) (pow.f64 y.im #s(literal 2 binary64))))))
#s(approx (/ y.re (+ (pow y.im 2) (pow y.re 2))) (/.f64 (+.f64 y.re (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 y.re #s(literal 3 binary64)) (pow.f64 y.im #s(literal 2 binary64))))) (pow.f64 y.im #s(literal 2 binary64))))
#s(approx (/ y.re (+ (pow y.im 2) (pow y.re 2))) (/.f64 (-.f64 (+.f64 y.re (/.f64 (pow.f64 y.re #s(literal 5 binary64)) (pow.f64 y.im #s(literal 4 binary64)))) (/.f64 (pow.f64 y.re #s(literal 3 binary64)) (pow.f64 y.im #s(literal 2 binary64)))) (pow.f64 y.im #s(literal 2 binary64))))
#s(approx (/ y.re (+ (pow y.im 2) (pow y.re 2))) (/.f64 (-.f64 (+.f64 y.re (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 y.re #s(literal 7 binary64)) (pow.f64 y.im #s(literal 6 binary64))))) (fma.f64 #s(literal -1 binary64) (/.f64 (pow.f64 y.re #s(literal 5 binary64)) (pow.f64 y.im #s(literal 4 binary64))) (/.f64 (pow.f64 y.re #s(literal 3 binary64)) (pow.f64 y.im #s(literal 2 binary64))))) (pow.f64 y.im #s(literal 2 binary64))))
#s(approx (/ (+ x.im (* -1 (/ (* x.re y.im) y.re))) y.re) (*.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (/.f64 x.im (*.f64 y.im y.re)))))
#s(approx (+ x.im (* -1 (/ (* x.re y.im) y.re))) (*.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re y.re) (/.f64 x.im y.im))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 (-.f64 (+.f64 x.re (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im y.re) y.im))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re))) y.im))) y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 (-.f64 (+.f64 x.re (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im y.re) y.im) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (*.f64 #s(literal -1 binary64) (*.f64 (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re)) (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 x.im y.re)) (*.f64 #s(literal -1 binary64) (*.f64 x.re (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re)))))))) (pow.f64 y.im #s(literal 2 binary64)))))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re))) y.im))) y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 (-.f64 (+.f64 x.re (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im y.re) y.im) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (*.f64 (pow.f64 y.re #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 x.im y.re)) (*.f64 #s(literal -1 binary64) (*.f64 x.re (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re)))))) (*.f64 (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re)) (fma.f64 #s(literal -1 binary64) (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (*.f64 #s(literal -1 binary64) (*.f64 (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re)) (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 x.im y.re)) (*.f64 #s(literal -1 binary64) (*.f64 x.re (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re)))))))))) (pow.f64 y.im #s(literal 3 binary64)))))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re))) y.im) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (pow.f64 y.im #s(literal 2 binary64))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re)) (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 x.im y.re)) (*.f64 #s(literal -1 binary64) (*.f64 x.re (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re)))))) (pow.f64 y.im #s(literal 2 binary64))))))) y.im))
#s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 y.im (-.f64 (/.f64 (*.f64 x.im y.re) y.im) x.re)))
#s(approx (* (- y.re y.im) (+ y.im y.re)) (*.f64 (pow.f64 y.im #s(literal 2 binary64)) (-.f64 (fma.f64 #s(literal -1 binary64) (/.f64 y.re y.im) (/.f64 y.re y.im)) #s(literal 1 binary64))))
#s(approx (* (- y.re y.im) (+ y.im y.re)) (*.f64 (pow.f64 y.im #s(literal 2 binary64)) (-.f64 (fma.f64 #s(literal -1 binary64) (/.f64 y.re y.im) (+.f64 (/.f64 y.re y.im) (/.f64 (pow.f64 y.re #s(literal 2 binary64)) (pow.f64 y.im #s(literal 2 binary64))))) #s(literal 1 binary64))))
#s(approx (- y.re y.im) (*.f64 y.im (-.f64 (/.f64 y.re y.im) #s(literal 1 binary64))))
#s(approx (+ y.im y.re) (*.f64 y.im (+.f64 #s(literal 1 binary64) (/.f64 y.re y.im))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 x.re (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im y.re) y.im))) y.im)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 x.re (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 x.im y.re (/.f64 (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) y.im)) y.im))) y.im)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 x.re (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 (*.f64 x.im (pow.f64 y.re #s(literal 3 binary64))) y.im) (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64)))) y.im) (*.f64 x.im y.re)) y.im))) y.im)))
#s(approx (* x.im (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2))))) (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 x.re (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (/.f64 (*.f64 x.im (pow.f64 y.re #s(literal 3 binary64))) y.im)) y.im) (*.f64 x.im y.re)) y.im))) y.im)))
#s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 y.re y.im) (/.f64 x.re x.im)) y.im)))
#s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (+.f64 y.re (/.f64 (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (*.f64 x.im y.im))) y.im) (/.f64 x.re x.im)) y.im)))
#s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (+.f64 y.re (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 (pow.f64 y.re #s(literal 3 binary64)) y.im) (/.f64 (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) x.im)) y.im))) y.im) (/.f64 x.re x.im)) y.im)))
#s(approx (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2)))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 x.re x.im) (/.f64 (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (*.f64 x.im (pow.f64 y.im #s(literal 2 binary64))))) y.im)))
#s(approx (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2)))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 x.re x.im) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (pow.f64 y.re #s(literal 4 binary64))) (*.f64 x.im (pow.f64 y.im #s(literal 4 binary64)))) (/.f64 (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (*.f64 x.im (pow.f64 y.im #s(literal 2 binary64)))))) y.im)))
#s(approx (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2)))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 x.re x.im) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (pow.f64 y.re #s(literal 4 binary64))) (*.f64 x.im (pow.f64 y.im #s(literal 4 binary64)))) (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (*.f64 x.im (pow.f64 y.im #s(literal 2 binary64)))) (/.f64 (*.f64 x.re (pow.f64 y.re #s(literal 6 binary64))) (*.f64 x.im (pow.f64 y.im #s(literal 6 binary64))))))) y.im)))
#s(approx (/ (+ x.im (* -1 (/ (* x.re y.im) y.re))) y.re) (*.f64 #s(literal -1 binary64) (*.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.im (*.f64 y.im y.re)) (/.f64 x.re (pow.f64 y.re #s(literal 2 binary64)))))))
#s(approx (+ x.im (* -1 (/ (* x.re y.im) y.re))) (*.f64 #s(literal -1 binary64) (*.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.im y.im) (/.f64 x.re y.re)))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) x.re (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 x.im y.re)) (*.f64 x.re (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re)))) y.im))) y.im)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) x.re (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x.im y.re) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re)) (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 x.im y.re)) (*.f64 x.re (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re))))) y.im) (/.f64 (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) y.im))) (*.f64 x.re (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re)))) y.im))) y.im)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) x.re (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x.im y.re) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 (pow.f64 y.re #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 x.im y.re)) (*.f64 x.re (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re))))) y.im) (/.f64 (*.f64 (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re)) (fma.f64 #s(literal -1 binary64) (*.f64 (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re)) (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 x.im y.re)) (*.f64 x.re (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re))))) (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64))))) y.im)) (fma.f64 #s(literal -1 binary64) (*.f64 (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re)) (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 x.im y.re)) (*.f64 x.re (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re))))) (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64))))) y.im))) (*.f64 x.re (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re)))) y.im))) y.im)))
#s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 y.im (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im y.re) y.im)) (*.f64 #s(literal -1 binary64) x.re)))))
#s(approx (* (- y.re y.im) (+ y.im y.re)) (*.f64 (pow.f64 y.im #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re)) y.im)) #s(literal 1 binary64))))
#s(approx (* (- y.re y.im) (+ y.im y.re)) (*.f64 (pow.f64 y.im #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 y.re (fma.f64 #s(literal -1 binary64) y.re (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 y.re #s(literal 2 binary64)) y.im)))) y.im)) #s(literal 1 binary64))))
#s(approx (- y.re y.im) (*.f64 #s(literal -1 binary64) (*.f64 y.im (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 y.re y.im))))))
#s(approx (+ y.im y.re) (*.f64 #s(literal -1 binary64) (*.f64 y.im (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 y.re y.im)) #s(literal 1 binary64)))))
Calls

12 calls:

TimeVariablePoint
12.0ms
y.re
-inf
10.0ms
x.im
-inf
8.0ms
y.im
0
7.0ms
x.im
0
6.0ms
y.re
inf

rewrite285.0ms (7%)

Memory
-5.0MiB live, 133.9MiB allocated; 30ms collecting garbage
Counts
33 → 141
Calls
Call 1
Inputs
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (*.f64 x.im (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))) (/.f64 y.re (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))))))
(*.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (*.f64 x.im (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))) (/.f64 y.re (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))))
x.im
(fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (*.f64 x.im (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))) (/.f64 y.re (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))))
#s(literal -1 binary64)
(/.f64 (*.f64 x.re y.im) (*.f64 x.im (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))))
(*.f64 x.re y.im)
x.re
y.im
(*.f64 x.im (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))
(+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))
(pow.f64 y.im #s(literal 2 binary64))
#s(literal 2 binary64)
(pow.f64 y.re #s(literal 2 binary64))
y.re
(/.f64 y.re (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 x.im y.re))
(/.f64 x.im y.re)
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (fma.f64 #s(literal -1 binary64) x.re (/.f64 (*.f64 x.im y.re) y.im)) y.im))
(/.f64 (fma.f64 #s(literal -1 binary64) x.re (/.f64 (*.f64 x.im y.re) y.im)) y.im)
(fma.f64 #s(literal -1 binary64) x.re (/.f64 (*.f64 x.im y.re) y.im))
(/.f64 (*.f64 x.im y.re) y.im)
(*.f64 x.im y.re)
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (+.f64 x.im (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re))) y.re))
(/.f64 (+.f64 x.im (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re))) y.re)
(+.f64 x.im (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re)))
(*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re))
(/.f64 (*.f64 x.re y.im) y.re)
(/.f64 (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (*.f64 (-.f64 y.re y.im) (+.f64 y.im y.re)))
(-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(*.f64 (-.f64 y.re y.im) (+.f64 y.im y.re))
(-.f64 y.re y.im)
(+.f64 y.im y.re)
Outputs
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (/.f64 (fma.f64 (/.f64 x.re x.im) y.im y.re) (-.f64 y.re y.im)))
(*.f64 (*.f64 x.im (-.f64 y.re y.im)) (/.f64 (fma.f64 (/.f64 x.re x.im) y.im y.re) (-.f64 y.re y.im)))
(*.f64 (/.f64 (fma.f64 (/.f64 x.re x.im) y.im y.re) (-.f64 y.re y.im)) x.im)
(*.f64 (/.f64 (fma.f64 (/.f64 x.re x.im) y.im y.re) (-.f64 y.re y.im)) (-.f64 y.re y.im))
(*.f64 x.im (/.f64 (fma.f64 (/.f64 x.re x.im) y.im y.re) (-.f64 y.re y.im)))
(*.f64 (-.f64 y.re y.im) (/.f64 (fma.f64 (/.f64 x.re x.im) y.im y.re) (-.f64 y.re y.im)))
x.im
(neg.f64 (neg.f64 x.im))
(*.f64 (*.f64 x.im (-.f64 y.re y.im)) (/.f64 (fma.f64 (/.f64 x.re x.im) y.im y.re) (-.f64 y.re y.im)))
(*.f64 (/.f64 (fma.f64 (/.f64 x.re x.im) y.im y.re) (-.f64 y.re y.im)) x.im)
(*.f64 (/.f64 (fma.f64 (/.f64 x.re x.im) y.im y.re) (-.f64 y.re y.im)) (-.f64 y.re y.im))
(*.f64 x.im (/.f64 (fma.f64 (/.f64 x.re x.im) y.im y.re) (-.f64 y.re y.im)))
(*.f64 (-.f64 y.re y.im) (/.f64 (fma.f64 (/.f64 x.re x.im) y.im y.re) (-.f64 y.re y.im)))
#s(literal -1 binary64)
(neg.f64 (neg.f64 #s(literal -1 binary64)))
(*.f64 (/.f64 x.re x.im) (fma.f64 y.im y.re y.im))
(*.f64 (fma.f64 y.im y.re y.im) (/.f64 x.re x.im))
(*.f64 (*.f64 (neg.f64 #s(literal -1 binary64)) (/.f64 x.re x.im)) (fma.f64 y.im y.re y.im))
(*.f64 (*.f64 (neg.f64 #s(literal -1 binary64)) (/.f64 y.im x.im)) (/.f64 x.re (-.f64 y.re y.im)))
(*.f64 (*.f64 (neg.f64 #s(literal -1 binary64)) y.im) (/.f64 x.re (*.f64 x.im (-.f64 y.re y.im))))
(*.f64 x.re y.im)
(*.f64 y.im x.re)
(*.f64 (neg.f64 #s(literal -1 binary64)) (*.f64 x.re y.im))
(*.f64 (neg.f64 x.re) y.im)
(*.f64 (*.f64 x.re y.im) y.im)
x.re
(*.f64 (neg.f64 #s(literal -1 binary64)) x.re)
(*.f64 (neg.f64 x.re) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (neg.f64 x.re))
(*.f64 x.re (neg.f64 #s(literal -1 binary64)))
y.im
(*.f64 y.im #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) y.im)
(*.f64 y.im y.im)
(fabs.f64 y.im)
(*.f64 x.im (-.f64 y.re y.im))
(*.f64 (neg.f64 x.im) (-.f64 y.re y.im))
(*.f64 (*.f64 x.im x.im) (-.f64 y.re y.im))
(*.f64 (*.f64 x.im y.re) (-.f64 y.re y.im))
(*.f64 (-.f64 y.re y.im) (*.f64 x.im x.im))
(*.f64 (-.f64 y.re y.im) (-.f64 y.re y.im))
(*.f64 (-.f64 y.re y.im) y.re)
(*.f64 (-.f64 y.re y.im) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (-.f64 y.re y.im))
(*.f64 y.re (-.f64 y.re y.im))
y.im
(*.f64 y.im #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) y.im)
(*.f64 y.im y.im)
(fabs.f64 y.im)
#s(literal 2 binary64)
#s(literal 0 binary64)
#s(literal 1 binary64)
(*.f64 #s(literal 2 binary64) #s(literal 2 binary64))
(*.f64 (fabs.f64 #s(literal 2 binary64)) (fabs.f64 #s(literal 2 binary64)))
y.re
(*.f64 y.re y.re)
(fabs.f64 y.re)
(+.f64 (cosh.f64 (log.f64 y.re)) (sinh.f64 (log.f64 y.re)))
(+.f64 (sinh.f64 (log.f64 y.re)) (cosh.f64 (log.f64 y.re)))
y.re
(*.f64 y.re y.re)
(fabs.f64 y.re)
(+.f64 (cosh.f64 (log.f64 y.re)) (sinh.f64 (log.f64 y.re)))
(+.f64 (sinh.f64 (log.f64 y.re)) (cosh.f64 (log.f64 y.re)))
(*.f64 (-.f64 y.re y.im) (-.f64 y.re y.im))
(*.f64 (-.f64 y.re y.im) y.re)
(*.f64 (-.f64 y.re y.im) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (-.f64 y.re y.im))
(*.f64 y.re (-.f64 y.re y.im))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (/.f64 x.im y.re))
(/.f64 x.im y.re)
(/.f64 (neg.f64 x.im) y.re)
(neg.f64 (/.f64 x.im y.re))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (fma.f64 (/.f64 x.im y.im) y.re (/.f64 x.re y.im)))
(*.f64 (fma.f64 (*.f64 x.im x.im) (/.f64 y.re y.im) (*.f64 x.re x.re)) (fma.f64 (/.f64 x.im y.im) y.re (/.f64 x.re y.im)))
(*.f64 (-.f64 (/.f64 (*.f64 x.im y.re) y.im) x.re) (/.f64 (-.f64 (/.f64 (*.f64 x.im y.re) y.im) x.re) (*.f64 (-.f64 (/.f64 (*.f64 x.im y.re) y.im) x.re) y.im)))
(*.f64 (/.f64 (fma.f64 (/.f64 (*.f64 x.im y.re) y.im) (fma.f64 (/.f64 x.im y.im) y.re x.re) (*.f64 x.re x.re)) (fma.f64 (/.f64 (*.f64 x.im y.re) y.im) (fma.f64 (/.f64 x.im y.im) y.re x.re) (*.f64 x.re x.re))) (fma.f64 (/.f64 x.im y.im) y.re (/.f64 x.re y.im)))
(*.f64 (fma.f64 (/.f64 (*.f64 x.im y.re) y.im) (fma.f64 (/.f64 x.im y.im) y.re x.re) (*.f64 x.re x.re)) (/.f64 (-.f64 (/.f64 (*.f64 x.im y.re) y.im) x.re) (*.f64 (fma.f64 (/.f64 (*.f64 x.im y.re) y.im) (fma.f64 (/.f64 x.im y.im) y.re x.re) (*.f64 x.re x.re)) y.im)))
(+.f64 (/.f64 (*.f64 x.im y.re) y.im) (/.f64 x.re y.im))
(*.f64 (-.f64 (/.f64 (*.f64 x.im y.re) y.im) x.re) (fma.f64 (*.f64 x.im x.im) (/.f64 y.re y.im) (*.f64 x.re x.re)))
(*.f64 (fma.f64 (*.f64 x.im x.im) (/.f64 y.re y.im) (*.f64 x.re x.re)) (-.f64 (/.f64 (*.f64 x.im y.re) y.im) x.re))
(*.f64 (fma.f64 (/.f64 (*.f64 x.im y.re) y.im) (fma.f64 (/.f64 x.im y.im) y.re x.re) (*.f64 x.re x.re)) (fma.f64 (*.f64 x.im x.im) (/.f64 y.re y.im) (*.f64 x.re x.re)))
(*.f64 (-.f64 (/.f64 (*.f64 (*.f64 x.im x.im) y.re) y.im) (*.f64 x.re x.re)) (neg.f64 (fma.f64 (/.f64 (*.f64 x.im y.re) y.im) (fma.f64 (/.f64 x.im y.im) y.re x.re) (*.f64 x.re x.re))))
(*.f64 (-.f64 (/.f64 (*.f64 (*.f64 x.im x.im) y.re) y.im) (*.f64 x.re x.re)) (fma.f64 (/.f64 x.im y.im) y.re x.re))
(*.f64 (neg.f64 x.im) (/.f64 y.re y.im))
(*.f64 (*.f64 #s(literal -1 binary64) y.re) (/.f64 x.im y.im))
(*.f64 (/.f64 x.im y.im) (/.f64 y.re y.im))
(*.f64 (/.f64 x.im y.im) y.re)
(*.f64 (/.f64 y.re y.im) (/.f64 x.im y.im))
(*.f64 x.im y.re)
(*.f64 y.re x.im)
(*.f64 (neg.f64 x.im) y.re)
(*.f64 (*.f64 x.im y.re) y.re)
(*.f64 y.re (neg.f64 x.im))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (fma.f64 (/.f64 x.re y.re) y.im (/.f64 x.im y.re)))
(*.f64 (fma.f64 (*.f64 x.re x.re) (/.f64 y.im y.re) (*.f64 x.im x.im)) (fma.f64 (/.f64 x.re y.re) y.im (/.f64 x.im y.re)))
(*.f64 (fma.f64 (/.f64 x.re y.re) y.im x.im) (/.f64 (fma.f64 (/.f64 x.re y.re) y.im x.im) (*.f64 (fma.f64 (/.f64 x.re y.re) y.im x.im) y.re)))
(*.f64 (/.f64 (fma.f64 (/.f64 (*.f64 x.re y.im) y.re) (fma.f64 (/.f64 x.re y.re) y.im x.im) (*.f64 x.im x.im)) (fma.f64 (/.f64 (*.f64 x.re y.im) y.re) (fma.f64 (/.f64 x.re y.re) y.im x.im) (*.f64 x.im x.im))) (fma.f64 (/.f64 x.re y.re) y.im (/.f64 x.im y.re)))
(*.f64 (fma.f64 (/.f64 (*.f64 x.re y.im) y.re) (fma.f64 (/.f64 x.re y.re) y.im x.im) (*.f64 x.im x.im)) (/.f64 (fma.f64 (/.f64 x.re y.re) y.im x.im) (*.f64 (fma.f64 (/.f64 (*.f64 x.re y.im) y.re) (fma.f64 (/.f64 x.re y.re) y.im x.im) (*.f64 x.im x.im)) y.re)))
(+.f64 (/.f64 (*.f64 x.re y.im) y.re) (/.f64 x.im y.re))
(*.f64 (fma.f64 (/.f64 x.re y.re) y.im x.im) (fma.f64 (*.f64 x.re x.re) (/.f64 y.im y.re) (*.f64 x.im x.im)))
(*.f64 (fma.f64 (*.f64 x.re x.re) (/.f64 y.im y.re) (*.f64 x.im x.im)) (fma.f64 (/.f64 x.re y.re) y.im x.im))
(*.f64 (fma.f64 (/.f64 (*.f64 x.re y.im) y.re) (fma.f64 (/.f64 x.re y.re) y.im x.im) (*.f64 x.im x.im)) (fma.f64 (*.f64 x.re x.re) (/.f64 y.im y.re) (*.f64 x.im x.im)))
(*.f64 (neg.f64 (fma.f64 (*.f64 x.re x.re) (/.f64 y.im y.re) (*.f64 x.im x.im))) (neg.f64 (fma.f64 (/.f64 (*.f64 x.re y.im) y.re) (fma.f64 (/.f64 x.re y.re) y.im x.im) (*.f64 x.im x.im))))
(*.f64 (neg.f64 (fma.f64 (*.f64 x.re x.re) (/.f64 y.im y.re) (*.f64 x.im x.im))) (neg.f64 (fma.f64 (/.f64 x.re y.re) y.im x.im)))
(*.f64 (neg.f64 x.re) (/.f64 y.im y.re))
(*.f64 (*.f64 x.re y.im) (/.f64 #s(literal -1 binary64) y.re))
(*.f64 (/.f64 x.re y.re) (/.f64 y.im y.re))
(*.f64 (/.f64 x.re y.re) y.im)
(*.f64 (/.f64 y.im y.re) (neg.f64 x.re))
(*.f64 (neg.f64 x.re) (/.f64 y.im y.re))
(*.f64 (*.f64 x.re y.im) (/.f64 #s(literal -1 binary64) y.re))
(*.f64 (/.f64 x.re y.re) (/.f64 y.im y.re))
(*.f64 (/.f64 x.re y.re) y.im)
(*.f64 (/.f64 y.im y.re) (neg.f64 x.re))
(*.f64 (fma.f64 y.im x.re (*.f64 x.im y.re)) (-.f64 y.re y.im))
(*.f64 (-.f64 y.re y.im) (fma.f64 y.im x.re (*.f64 x.im y.re)))
(*.f64 (fma.f64 (*.f64 x.re y.im) x.re (*.f64 (*.f64 x.im x.im) y.re)) (*.f64 (fma.f64 y.im x.re (*.f64 x.im y.re)) (-.f64 y.re y.im)))
(*.f64 (*.f64 (fma.f64 y.im x.re (*.f64 x.im y.re)) (-.f64 y.re y.im)) (-.f64 (-.f64 y.re y.im) y.im))
(*.f64 (*.f64 (fma.f64 y.im x.re (*.f64 x.im y.re)) (-.f64 y.re y.im)) (/.f64 (-.f64 (-.f64 y.re y.im) y.im) (-.f64 y.re y.im)))
(*.f64 (fma.f64 (fma.f64 y.im x.re (*.f64 x.im y.re)) (*.f64 x.re y.im) (*.f64 (*.f64 x.im x.im) y.re)) (fma.f64 (*.f64 x.re y.im) x.re (*.f64 (*.f64 x.im x.im) y.re)))
(*.f64 (fma.f64 (*.f64 x.re y.im) x.re (*.f64 (*.f64 x.im x.im) y.re)) (fma.f64 (fma.f64 y.im x.re (*.f64 x.im y.re)) (*.f64 x.re y.im) (*.f64 (*.f64 x.im x.im) y.re)))
(*.f64 (fma.f64 (*.f64 x.re y.im) x.re (*.f64 (*.f64 x.im x.im) y.re)) (fma.f64 y.im x.re (*.f64 x.im y.re)))
(*.f64 (fma.f64 y.im x.re (*.f64 x.im y.re)) (fma.f64 (*.f64 x.re y.im) x.re (*.f64 (*.f64 x.im x.im) y.re)))
(*.f64 (/.f64 (fma.f64 (*.f64 x.re y.im) x.re (*.f64 (*.f64 x.im x.im) y.re)) (fma.f64 y.re (*.f64 x.im x.im) (pow.f64 (*.f64 (fma.f64 y.im x.re (*.f64 x.im y.re)) (*.f64 x.re y.im)) #s(literal 3 binary64)))) (fma.f64 (*.f64 (fma.f64 y.im x.re (*.f64 x.im y.re)) (*.f64 x.re y.im)) (fma.f64 (fma.f64 y.im x.re (*.f64 x.im y.re)) (*.f64 x.re y.im) (*.f64 (*.f64 x.im x.im) y.re)) (*.f64 (*.f64 x.im x.im) y.re)))
(*.f64 (-.f64 y.re y.im) (-.f64 y.re y.im))
(*.f64 (-.f64 y.re y.im) y.re)
(*.f64 (-.f64 y.re y.im) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (-.f64 y.re y.im))
(*.f64 y.re (-.f64 y.re y.im))
(*.f64 (-.f64 y.re y.im) (-.f64 y.re y.im))
(*.f64 (-.f64 y.re y.im) y.re)
(*.f64 (-.f64 y.re y.im) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (-.f64 y.re y.im))
(*.f64 y.re (-.f64 y.re y.im))
(*.f64 (-.f64 y.re y.im) (-.f64 y.re y.im))
(*.f64 (-.f64 y.re y.im) y.re)
(*.f64 (-.f64 y.re y.im) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (-.f64 y.re y.im))
(*.f64 y.re (-.f64 y.re y.im))

eval44.0ms (1.1%)

Memory
1.2MiB live, 45.8MiB allocated; 5ms collecting garbage
Compiler

Compiled 14 881 to 2 003 computations (86.5% saved)

prune20.0ms (0.5%)

Memory
24.9MiB live, 24.9MiB allocated; 0ms collecting garbage
Pruning

23 alts after pruning (21 fresh and 2 done)

PrunedKeptTotal
New32619345
Fresh426
Picked325
Done000
Total33323356
Accuracy
99.7%
Counts
356 → 23
Alt Table
Click to see full alt table
StatusAccuracyProgram
44.0%
(/.f64 #s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 x.im y.re)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
40.6%
(/.f64 #s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.re y.im))) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
49.9%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (fma.f64 #s(literal -1 binary64) x.re (/.f64 (*.f64 x.im y.re) y.im)) y.im))
51.7%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (fma.f64 #s(literal -1 binary64) x.re (*.f64 (/.f64 x.im y.im) y.re)) y.im))
56.4%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (+.f64 x.im (*.f64 (/.f64 y.im y.re) (neg.f64 x.re))) y.re))
55.0%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (+.f64 x.im (*.f64 (*.f64 x.re y.im) (/.f64 #s(literal -1 binary64) y.re))) y.re))
12.1%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (neg.f64 x.im) y.re))
22.3%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (/.f64 (*.f64 x.im y.re) y.im)) y.im))
49.0%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re x.im) (/.f64 y.re y.im)))) y.im))
40.3%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 #s(literal -1 binary64) x.re)) y.im))
48.6%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ x.im (* -1 (/ (* x.re y.im) y.re))) (*.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re y.re) (/.f64 x.im y.im)))) y.re))
54.1%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ x.im (* -1 (/ (* x.re y.im) y.re))) (*.f64 #s(literal -1 binary64) (*.f64 x.im (-.f64 (/.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) #s(literal 1 binary64))))) y.re))
45.0%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 x.im y.re))
20.6%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 (fma.f64 (/.f64 (*.f64 x.im y.re) y.im) (fma.f64 (/.f64 x.im y.im) y.re x.re) (*.f64 x.re x.re)) (/.f64 (-.f64 (/.f64 (*.f64 x.im y.re) y.im) x.re) (*.f64 (fma.f64 (/.f64 (*.f64 x.im y.re) y.im) (fma.f64 (/.f64 x.im y.im) y.re x.re) (*.f64 x.re x.re)) y.im))))
45.3%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im #s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 x.re x.im) (/.f64 y.re y.im)) y.im))))
46.3%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im #s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (/.f64 y.re (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))))))
44.9%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im #s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (/.f64 #s(literal 1 binary64) y.re))))
42.4%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im #s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) x.im) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (pow.f64 y.im #s(literal 3 binary64))) (*.f64 x.im y.re)) (pow.f64 y.im #s(literal 2 binary64))) y.re))) y.re)) #s(literal 1 binary64)) y.re)))))
46.0%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im #s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) x.im) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 y.im #s(literal 2 binary64)) y.re))) y.re)) #s(literal 1 binary64)) y.re)))))
32.2%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im #s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (*.f64 #s(literal -1 binary64) (/.f64 x.re (*.f64 x.im y.im))))))
39.6%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) #s(approx (/ (+ (* -1 x.re) (/ (* x.im y.re) y.im)) y.im) (*.f64 y.re (fma.f64 #s(literal -1 binary64) (/.f64 x.re (*.f64 y.im y.re)) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64)))))))
11.8%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 x.re y.im))
38.2%
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (fma.f64 (/.f64 x.re y.re) y.im (/.f64 x.im y.re)))
Compiler

Compiled 1 665 to 978 computations (41.3% saved)

series303.0ms (7.4%)

Memory
15.1MiB live, 202.3MiB allocated; 25ms collecting garbage
Counts
33 → 151
Calls
Call 1
Inputs
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (+.f64 x.im (*.f64 (/.f64 y.im y.re) (neg.f64 x.re))) y.re))
(/.f64 (+.f64 x.im (*.f64 (/.f64 y.im y.re) (neg.f64 x.re))) y.re)
(+.f64 x.im (*.f64 (/.f64 y.im y.re) (neg.f64 x.re)))
x.im
(*.f64 (/.f64 y.im y.re) (neg.f64 x.re))
(/.f64 y.im y.re)
y.im
y.re
(neg.f64 x.re)
x.re
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 x.re y.im))
(/.f64 x.re y.im)
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (fma.f64 (/.f64 x.re y.re) y.im (/.f64 x.im y.re)))
(fma.f64 (/.f64 x.re y.re) y.im (/.f64 x.im y.re))
(/.f64 x.re y.re)
(/.f64 x.im y.re)
(/.f64 #s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.re y.im))) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
#s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.re y.im)))
(*.f64 #s(literal -1 binary64) (*.f64 x.re y.im))
#s(literal -1 binary64)
(*.f64 x.re y.im)
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
(*.f64 y.re y.re)
(*.f64 y.im y.im)
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) #s(approx (/ (+ (* -1 x.re) (/ (* x.im y.re) y.im)) y.im) (*.f64 y.re (fma.f64 #s(literal -1 binary64) (/.f64 x.re (*.f64 y.im y.re)) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64)))))))
#s(approx (/ (+ (* -1 x.re) (/ (* x.im y.re) y.im)) y.im) (*.f64 y.re (fma.f64 #s(literal -1 binary64) (/.f64 x.re (*.f64 y.im y.re)) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64))))))
(*.f64 y.re (fma.f64 #s(literal -1 binary64) (/.f64 x.re (*.f64 y.im y.re)) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64)))))
(fma.f64 #s(literal -1 binary64) (/.f64 x.re (*.f64 y.im y.re)) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64))))
(/.f64 x.re (*.f64 y.im y.re))
(*.f64 y.im y.re)
(/.f64 x.im (pow.f64 y.im #s(literal 2 binary64)))
(pow.f64 y.im #s(literal 2 binary64))
#s(literal 2 binary64)
Outputs
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (*.f64 x.im y.re) (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))) (/.f64 (*.f64 x.im y.re) (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))))
#s(approx (/ (+ x.im (* (/ y.im y.re) (neg x.re))) y.re) (/.f64 x.im y.re))
#s(approx (/ (+ x.im (* (/ y.im y.re) (neg x.re))) y.re) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (pow.f64 y.re #s(literal 2 binary64))) (/.f64 x.im y.re)))
#s(approx (+ x.im (* (/ y.im y.re) (neg x.re))) x.im)
#s(approx (+ x.im (* (/ y.im y.re) (neg x.re))) (+.f64 x.im (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re))))
#s(approx (* (/ y.im y.re) (neg x.re)) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re)))
#s(approx (neg x.re) (*.f64 #s(literal -1 binary64) x.re))
#s(approx x.re x.re)
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 (*.f64 x.im y.re) (*.f64 (+.f64 y.im y.re) (-.f64 y.re y.im))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (*.f64 (+.f64 y.im y.re) (-.f64 y.re y.im))) (/.f64 (*.f64 x.im y.re) (*.f64 (+.f64 y.im y.re) (-.f64 y.re y.im)))))
#s(approx (/ x.re y.im) (/.f64 x.re y.im))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (/.f64 (*.f64 x.im y.re) (+.f64 y.im y.re)))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (+.f64 (/.f64 (*.f64 x.im y.re) (+.f64 y.im y.re)) (/.f64 (*.f64 x.re y.im) (+.f64 y.im y.re))))
#s(approx (+ (* (/ x.re y.re) y.im) (/ x.im y.re)) (+.f64 (/.f64 x.im y.re) (/.f64 (*.f64 x.re y.im) y.re)))
#s(approx (/ x.re y.re) (/.f64 x.re y.re))
#s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 x.im y.re))
#s(approx (- (* x.im y.re) (* x.re y.im)) (fma.f64 #s(literal -1 binary64) (*.f64 x.re y.im) (*.f64 x.im y.re)))
#s(approx (* -1 (* x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.re y.im)))
#s(approx (* x.re y.im) (*.f64 x.re y.im))
#s(approx (/ (+ (* -1 x.re) (/ (* x.im y.re) y.im)) y.im) (/.f64 (*.f64 x.im y.re) (pow.f64 y.im #s(literal 2 binary64))))
#s(approx (/ (+ (* -1 x.re) (/ (* x.im y.re) y.im)) y.im) (fma.f64 #s(literal -1 binary64) (/.f64 x.re y.im) (/.f64 (*.f64 x.im y.re) (pow.f64 y.im #s(literal 2 binary64)))))
#s(approx (+ (* -1 (/ x.re (* y.im y.re))) (/ x.im (pow y.im 2))) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64))))
#s(approx (+ (* -1 (/ x.re (* y.im y.re))) (/ x.im (pow y.im 2))) (fma.f64 #s(literal -1 binary64) (/.f64 x.re (*.f64 y.im y.re)) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64)))))
#s(approx (/ x.re (* y.im y.re)) (/.f64 x.re (*.f64 y.im y.re)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.re (fma.f64 #s(literal -1 binary64) (/.f64 y.im (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))) (/.f64 (*.f64 x.im y.re) (*.f64 x.re (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))))))
#s(approx (/ (+ x.im (* (/ y.im y.re) (neg x.re))) y.re) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (pow.f64 y.re #s(literal 2 binary64)))))
#s(approx (/ (+ x.im (* (/ y.im y.re) (neg x.re))) y.re) (*.f64 x.re (fma.f64 #s(literal -1 binary64) (/.f64 y.im (pow.f64 y.re #s(literal 2 binary64))) (/.f64 x.im (*.f64 x.re y.re)))))
#s(approx (+ x.im (* (/ y.im y.re) (neg x.re))) (*.f64 x.re (fma.f64 #s(literal -1 binary64) (/.f64 y.im y.re) (/.f64 x.im x.re))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (*.f64 (+.f64 y.im y.re) (-.f64 y.re y.im)))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (*.f64 x.re (fma.f64 #s(literal -1 binary64) (/.f64 y.im (*.f64 (+.f64 y.im y.re) (-.f64 y.re y.im))) (/.f64 (*.f64 x.im y.re) (*.f64 x.re (*.f64 (+.f64 y.im y.re) (-.f64 y.re y.im)))))))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (/.f64 (*.f64 x.re y.im) (+.f64 y.im y.re)))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (*.f64 x.re (+.f64 (/.f64 y.im (+.f64 y.im y.re)) (/.f64 (*.f64 x.im y.re) (*.f64 x.re (+.f64 y.im y.re))))))
#s(approx (+ (* (/ x.re y.re) y.im) (/ x.im y.re)) (/.f64 (*.f64 x.re y.im) y.re))
#s(approx (+ (* (/ x.re y.re) y.im) (/ x.im y.re)) (*.f64 x.re (+.f64 (/.f64 x.im (*.f64 x.re y.re)) (/.f64 y.im y.re))))
#s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 x.re (-.f64 (/.f64 (*.f64 x.im y.re) x.re) y.im)))
#s(approx (/ (+ (* -1 x.re) (/ (* x.im y.re) y.im)) y.im) (*.f64 #s(literal -1 binary64) (/.f64 x.re y.im)))
#s(approx (/ (+ (* -1 x.re) (/ (* x.im y.re) y.im)) y.im) (*.f64 x.re (-.f64 (/.f64 (*.f64 x.im y.re) (*.f64 x.re (pow.f64 y.im #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) y.im))))
#s(approx (+ (* -1 (/ x.re (* y.im y.re))) (/ x.im (pow y.im 2))) (*.f64 #s(literal -1 binary64) (/.f64 x.re (*.f64 y.im y.re))))
#s(approx (+ (* -1 (/ x.re (* y.im y.re))) (/ x.im (pow y.im 2))) (*.f64 x.re (-.f64 (/.f64 x.im (*.f64 x.re (pow.f64 y.im #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (*.f64 y.im y.re)))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (*.f64 x.re (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im y.re) (*.f64 x.re (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))) (/.f64 y.im (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))))))
#s(approx (/ (+ x.im (* (/ y.im y.re) (neg x.re))) y.re) (*.f64 #s(literal -1 binary64) (*.f64 x.re (fma.f64 #s(literal -1 binary64) (/.f64 x.im (*.f64 x.re y.re)) (/.f64 y.im (pow.f64 y.re #s(literal 2 binary64)))))))
#s(approx (+ x.im (* (/ y.im y.re) (neg x.re))) (*.f64 #s(literal -1 binary64) (*.f64 x.re (fma.f64 #s(literal -1 binary64) (/.f64 x.im x.re) (/.f64 y.im y.re)))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (*.f64 #s(literal -1 binary64) (*.f64 x.re (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im y.re) (*.f64 x.re (*.f64 (+.f64 y.im y.re) (-.f64 y.re y.im)))) (/.f64 y.im (*.f64 (+.f64 y.im y.re) (-.f64 y.re y.im)))))))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.re (fma.f64 #s(literal -1 binary64) (/.f64 y.im (+.f64 y.im y.re)) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im y.re) (*.f64 x.re (+.f64 y.im y.re))))))))
#s(approx (+ (* (/ x.re y.re) y.im) (/ x.im y.re)) (*.f64 #s(literal -1 binary64) (*.f64 x.re (fma.f64 #s(literal -1 binary64) (/.f64 x.im (*.f64 x.re y.re)) (*.f64 #s(literal -1 binary64) (/.f64 y.im y.re))))))
#s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.re (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im y.re) x.re)) (*.f64 #s(literal -1 binary64) y.im)))))
#s(approx (/ (+ (* -1 x.re) (/ (* x.im y.re) y.im)) y.im) (*.f64 #s(literal -1 binary64) (*.f64 x.re (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im y.re) (*.f64 x.re (pow.f64 y.im #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) y.im)))))
#s(approx (+ (* -1 (/ x.re (* y.im y.re))) (/ x.im (pow y.im 2))) (*.f64 #s(literal -1 binary64) (*.f64 x.re (fma.f64 #s(literal -1 binary64) (/.f64 x.im (*.f64 x.re (pow.f64 y.im #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (*.f64 y.im y.re))))))
#s(approx (- (* x.im y.re) (* x.re y.im)) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (*.f64 x.im (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))) (/.f64 y.re (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))))))
#s(approx (/ (+ x.im (* (/ y.im y.re) (neg x.re))) y.re) (*.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (*.f64 x.im (pow.f64 y.re #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) y.re))))
#s(approx (+ x.im (* (/ y.im y.re) (neg x.re))) (*.f64 x.im (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (*.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (*.f64 x.im (*.f64 (+.f64 y.im y.re) (-.f64 y.re y.im)))) (/.f64 y.re (*.f64 (+.f64 y.im y.re) (-.f64 y.re y.im))))))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (*.f64 x.im (+.f64 (/.f64 y.re (+.f64 y.im y.re)) (/.f64 (*.f64 x.re y.im) (*.f64 x.im (+.f64 y.im y.re))))))
#s(approx (+ (* (/ x.re y.re) y.im) (/ x.im y.re)) (*.f64 x.im (+.f64 (/.f64 #s(literal 1 binary64) y.re) (/.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)))))
#s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 x.im (+.f64 y.re (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) x.im)))))
#s(approx (/ (+ (* -1 x.re) (/ (* x.im y.re) y.im)) y.im) (*.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re (*.f64 x.im y.im)) (/.f64 y.re (pow.f64 y.im #s(literal 2 binary64))))))
#s(approx (+ (* -1 (/ x.re (* y.im y.re))) (/ x.im (pow y.im 2))) (*.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re (*.f64 x.im (*.f64 y.im y.re))) (/.f64 #s(literal 1 binary64) (pow.f64 y.im #s(literal 2 binary64))))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (*.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 y.re (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))) (/.f64 (*.f64 x.re y.im) (*.f64 x.im (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))))))))
#s(approx (/ (+ x.im (* (/ y.im y.re) (neg x.re))) y.re) (*.f64 #s(literal -1 binary64) (*.f64 x.im (-.f64 (/.f64 (*.f64 x.re y.im) (*.f64 x.im (pow.f64 y.re #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) y.re)))))
#s(approx (+ x.im (* (/ y.im y.re) (neg x.re))) (*.f64 #s(literal -1 binary64) (*.f64 x.im (-.f64 (/.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) #s(literal 1 binary64)))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (*.f64 #s(literal -1 binary64) (*.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 y.re (*.f64 (+.f64 y.im y.re) (-.f64 y.re y.im))) (/.f64 (*.f64 x.re y.im) (*.f64 x.im (*.f64 (+.f64 y.im y.re) (-.f64 y.re y.im))))))))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 y.re (+.f64 y.im y.re)) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (*.f64 x.im (+.f64 y.im y.re))))))))
#s(approx (+ (* (/ x.re y.re) y.im) (/ x.im y.re)) (*.f64 #s(literal -1 binary64) (*.f64 x.im (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))) (/.f64 #s(literal 1 binary64) y.re)))))
#s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.im (fma.f64 #s(literal -1 binary64) y.re (/.f64 (*.f64 x.re y.im) x.im)))))
#s(approx (/ (+ (* -1 x.re) (/ (* x.im y.re) y.im)) y.im) (*.f64 #s(literal -1 binary64) (*.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 y.re (pow.f64 y.im #s(literal 2 binary64))) (/.f64 x.re (*.f64 x.im y.im))))))
#s(approx (+ (* -1 (/ x.re (* y.im y.re))) (/ x.im (pow y.im 2))) (*.f64 #s(literal -1 binary64) (*.f64 x.im (-.f64 (/.f64 x.re (*.f64 x.im (*.f64 y.im y.re))) (/.f64 #s(literal 1 binary64) (pow.f64 y.im #s(literal 2 binary64)))))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (fma.f64 #s(literal -1 binary64) (/.f64 x.re y.im) (*.f64 y.re (+.f64 (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64))) (/.f64 (*.f64 x.re y.re) (pow.f64 y.im #s(literal 3 binary64)))))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (fma.f64 #s(literal -1 binary64) (/.f64 x.re y.im) (*.f64 y.re (fma.f64 y.re (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im y.re) (pow.f64 y.im #s(literal 4 binary64)))) (*.f64 #s(literal -1 binary64) (/.f64 x.re (pow.f64 y.im #s(literal 3 binary64))))) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64)))))))
#s(approx (/ (+ x.im (* (/ y.im y.re) (neg x.re))) y.re) (/.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x.re y.im) (*.f64 x.im y.re)) (pow.f64 y.re #s(literal 2 binary64))))
#s(approx (+ x.im (* (/ y.im y.re) (neg x.re))) (/.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x.re y.im) (*.f64 x.im y.re)) y.re))
#s(approx (/ y.im y.re) (/.f64 y.im y.re))
#s(approx y.re y.re)
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (fma.f64 y.re (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64)))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im))) (pow.f64 y.im #s(literal 3 binary64))))) (/.f64 x.re y.im)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (fma.f64 y.re (-.f64 (fma.f64 #s(literal -1 binary64) (*.f64 y.re (fma.f64 #s(literal -1 binary64) (/.f64 x.re (pow.f64 y.im #s(literal 3 binary64))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im)) (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64)))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im))) (pow.f64 y.im #s(literal 3 binary64)))))) (pow.f64 y.im #s(literal 2 binary64)))))) (*.f64 #s(literal -1 binary64) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64))))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im))) (pow.f64 y.im #s(literal 3 binary64))))) (/.f64 x.re y.im)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (fma.f64 y.re (-.f64 (fma.f64 #s(literal -1 binary64) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64))) (*.f64 y.re (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 y.re (fma.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64)))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im))) (pow.f64 y.im #s(literal 3 binary64))))) (pow.f64 y.im #s(literal 2 binary64))) (/.f64 (*.f64 (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im)) (fma.f64 #s(literal -1 binary64) (/.f64 x.re (pow.f64 y.im #s(literal 3 binary64))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im)) (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64)))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im))) (pow.f64 y.im #s(literal 3 binary64)))))) (pow.f64 y.im #s(literal 2 binary64)))))) (pow.f64 y.im #s(literal 2 binary64)))))) (fma.f64 #s(literal -1 binary64) (/.f64 x.re (pow.f64 y.im #s(literal 3 binary64))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im)) (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64)))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im))) (pow.f64 y.im #s(literal 3 binary64)))))) (pow.f64 y.im #s(literal 2 binary64)))))))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im))) (pow.f64 y.im #s(literal 3 binary64))))) (/.f64 x.re y.im)))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (+.f64 x.re (*.f64 y.re (-.f64 (/.f64 x.im y.im) (/.f64 x.re y.im)))))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (+.f64 x.re (*.f64 y.re (-.f64 (fma.f64 y.re (-.f64 (/.f64 x.re (pow.f64 y.im #s(literal 2 binary64))) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64)))) (/.f64 x.im y.im)) (/.f64 x.re y.im)))))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (+.f64 x.re (*.f64 y.re (-.f64 (fma.f64 y.re (-.f64 (fma.f64 y.re (-.f64 (/.f64 x.im (pow.f64 y.im #s(literal 3 binary64))) (/.f64 x.re (pow.f64 y.im #s(literal 3 binary64)))) (/.f64 x.re (pow.f64 y.im #s(literal 2 binary64)))) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64)))) (/.f64 x.im y.im)) (/.f64 x.re y.im)))))
#s(approx (+ (* (/ x.re y.re) y.im) (/ x.im y.re)) (/.f64 (+.f64 x.im (*.f64 x.re y.im)) y.re))
#s(approx (+ (* y.re y.re) (* y.im y.im)) (pow.f64 y.im #s(literal 2 binary64)))
#s(approx (+ (* y.re y.re) (* y.im y.im)) (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))
#s(approx (* y.re y.re) (pow.f64 y.re #s(literal 2 binary64)))
#s(approx (+ (* -1 (/ x.re (* y.im y.re))) (/ x.im (pow y.im 2))) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 x.re y.im) (/.f64 (*.f64 x.im y.re) (pow.f64 y.im #s(literal 2 binary64)))) y.re))
#s(approx (* y.im y.re) (*.f64 y.im y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (+.f64 x.im (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re))) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (+.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im (pow.f64 y.im #s(literal 2 binary64))) (pow.f64 y.re #s(literal 2 binary64))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re)))) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (-.f64 (+.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re) (/.f64 (*.f64 x.re (pow.f64 y.im #s(literal 3 binary64))) (pow.f64 y.re #s(literal 3 binary64))))) (/.f64 (*.f64 x.im (pow.f64 y.im #s(literal 2 binary64))) (pow.f64 y.re #s(literal 2 binary64)))) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 (-.f64 (+.f64 x.im (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re))) (/.f64 (*.f64 x.im (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im))) y.re)) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 (-.f64 (+.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x.im (pow.f64 y.im #s(literal 2 binary64))) (*.f64 (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im)) (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 x.re y.im)) (*.f64 x.im (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im)))))) (pow.f64 y.re #s(literal 2 binary64)))))) (/.f64 (*.f64 x.im (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im))) y.re)) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 (-.f64 (+.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (*.f64 (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im)) (fma.f64 #s(literal -1 binary64) (*.f64 x.im (pow.f64 y.im #s(literal 2 binary64))) (*.f64 (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im)) (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 x.re y.im)) (*.f64 x.im (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im))))))) (*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 y.im #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 x.re y.im)) (*.f64 x.im (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im))))))) (pow.f64 y.re #s(literal 3 binary64)))))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im (pow.f64 y.im #s(literal 2 binary64))) (pow.f64 y.re #s(literal 2 binary64))) (+.f64 (/.f64 (*.f64 x.im (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im))) y.re) (/.f64 (*.f64 (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im)) (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 x.re y.im)) (*.f64 x.im (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im))))) (pow.f64 y.re #s(literal 2 binary64)))))) y.re))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (-.f64 (+.f64 x.im (/.f64 (*.f64 x.re y.im) y.re)) (/.f64 (*.f64 x.im y.im) y.re)))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (-.f64 (+.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 y.im (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.im))) (pow.f64 y.re #s(literal 2 binary64))) (/.f64 (*.f64 x.re y.im) y.re))) (/.f64 (*.f64 x.im y.im) y.re)))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (-.f64 (+.f64 x.im (+.f64 (/.f64 (*.f64 x.re y.im) y.re) (/.f64 (*.f64 (pow.f64 y.im #s(literal 2 binary64)) (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.im))) (pow.f64 y.re #s(literal 3 binary64))))) (+.f64 (/.f64 (*.f64 x.im y.im) y.re) (/.f64 (*.f64 y.im (-.f64 (*.f64 x.re y.im) (*.f64 x.im y.im))) (pow.f64 y.re #s(literal 2 binary64))))))
#s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 y.re (+.f64 x.im (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re)))))
#s(approx (+ (* y.re y.re) (* y.im y.im)) (*.f64 (pow.f64 y.re #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (/.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))))
#s(approx (/ (+ (* -1 x.re) (/ (* x.im y.re) y.im)) y.im) (*.f64 y.re (fma.f64 #s(literal -1 binary64) (/.f64 x.re (*.f64 y.im y.re)) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64))))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) x.im (/.f64 (*.f64 x.re y.im) y.re)) y.re)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) x.im (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x.re y.im) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im (pow.f64 y.im #s(literal 2 binary64))) y.re))) y.re))) y.re)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) x.im (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x.re y.im) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (pow.f64 y.im #s(literal 3 binary64))) y.re)) (*.f64 #s(literal -1 binary64) (*.f64 x.im (pow.f64 y.im #s(literal 2 binary64))))) y.re))) y.re))) y.re)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (fma.f64 #s(literal -1 binary64) x.im (/.f64 (*.f64 x.re y.im) y.re)) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im))) y.re))) y.re)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) x.im (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (-.f64 (*.f64 x.re y.im) (*.f64 #s(literal -1 binary64) (*.f64 x.im (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im))))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x.im (pow.f64 y.im #s(literal 2 binary64))) (*.f64 #s(literal -1 binary64) (*.f64 (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im)) (-.f64 (*.f64 x.re y.im) (*.f64 #s(literal -1 binary64) (*.f64 x.im (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im)))))))) y.re))) y.re))) y.re)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) x.im (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (-.f64 (*.f64 x.re y.im) (*.f64 #s(literal -1 binary64) (*.f64 x.im (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im))))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x.im (pow.f64 y.im #s(literal 2 binary64))) (fma.f64 #s(literal -1 binary64) (*.f64 (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im)) (-.f64 (*.f64 x.re y.im) (*.f64 #s(literal -1 binary64) (*.f64 x.im (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im)))))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (*.f64 (pow.f64 y.im #s(literal 2 binary64)) (-.f64 (*.f64 x.re y.im) (*.f64 #s(literal -1 binary64) (*.f64 x.im (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im)))))) (*.f64 (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im)) (fma.f64 #s(literal -1 binary64) (*.f64 x.im (pow.f64 y.im #s(literal 2 binary64))) (*.f64 #s(literal -1 binary64) (*.f64 (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im)) (-.f64 (*.f64 x.re y.im) (*.f64 #s(literal -1 binary64) (*.f64 x.im (+.f64 y.im (*.f64 #s(literal -1 binary64) y.im)))))))))) y.re)))) y.re))) y.re))) y.re)))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (+.f64 x.im (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.im y.im))) y.re))))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (+.f64 x.im (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x.re y.im) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 y.im (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.im y.im)))) y.re))) (*.f64 #s(literal -1 binary64) (*.f64 x.im y.im))) y.re))))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (+.f64 x.im (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x.re y.im) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 (pow.f64 y.im #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.im y.im)))) y.re)) (*.f64 #s(literal -1 binary64) (*.f64 y.im (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.im y.im)))))) y.re))) (*.f64 #s(literal -1 binary64) (*.f64 x.im y.im))) y.re))))
#s(approx (+ (* (/ x.re y.re) y.im) (/ x.im y.re)) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) x.im (*.f64 #s(literal -1 binary64) (*.f64 x.re y.im))) y.re)))
#s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 y.re (fma.f64 #s(literal -1 binary64) x.im (/.f64 (*.f64 x.re y.im) y.re)))))
#s(approx (/ (+ (* -1 x.re) (/ (* x.im y.re) y.im)) y.im) (*.f64 #s(literal -1 binary64) (*.f64 y.re (fma.f64 #s(literal -1 binary64) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64))) (/.f64 x.re (*.f64 y.im y.re))))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (fma.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im y.im) (pow.f64 y.re #s(literal 3 binary64))))) (/.f64 x.im y.re)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (fma.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (*.f64 y.im (-.f64 (/.f64 (*.f64 x.re y.im) (pow.f64 y.re #s(literal 4 binary64))) (/.f64 x.im (pow.f64 y.re #s(literal 3 binary64)))))) (/.f64 x.im y.re)))
#s(approx y.im y.im)
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (fma.f64 y.im (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 x.re (pow.f64 y.re #s(literal 2 binary64)))) (/.f64 (*.f64 x.im (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re))) (pow.f64 y.re #s(literal 3 binary64)))) (/.f64 x.im y.re)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (fma.f64 y.im (-.f64 (fma.f64 #s(literal -1 binary64) (*.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.im (pow.f64 y.re #s(literal 3 binary64))) (/.f64 (*.f64 (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re)) (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 x.re (pow.f64 y.re #s(literal 2 binary64)))) (/.f64 (*.f64 x.im (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re))) (pow.f64 y.re #s(literal 3 binary64))))) (pow.f64 y.re #s(literal 2 binary64))))) (*.f64 #s(literal -1 binary64) (/.f64 x.re (pow.f64 y.re #s(literal 2 binary64))))) (/.f64 (*.f64 x.im (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re))) (pow.f64 y.re #s(literal 3 binary64)))) (/.f64 x.im y.re)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (fma.f64 y.im (-.f64 (fma.f64 #s(literal -1 binary64) (/.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (*.f64 y.im (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re)) (fma.f64 #s(literal -1 binary64) (/.f64 x.im (pow.f64 y.re #s(literal 3 binary64))) (/.f64 (*.f64 (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re)) (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 x.re (pow.f64 y.re #s(literal 2 binary64)))) (/.f64 (*.f64 x.im (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re))) (pow.f64 y.re #s(literal 3 binary64))))) (pow.f64 y.re #s(literal 2 binary64))))) (pow.f64 y.re #s(literal 2 binary64))) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 x.re (pow.f64 y.re #s(literal 2 binary64)))) (/.f64 (*.f64 x.im (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re))) (pow.f64 y.re #s(literal 3 binary64)))) (pow.f64 y.re #s(literal 2 binary64))))))) (fma.f64 #s(literal -1 binary64) (/.f64 x.im (pow.f64 y.re #s(literal 3 binary64))) (/.f64 (*.f64 (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re)) (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 x.re (pow.f64 y.re #s(literal 2 binary64)))) (/.f64 (*.f64 x.im (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re))) (pow.f64 y.re #s(literal 3 binary64))))) (pow.f64 y.re #s(literal 2 binary64))))))) (/.f64 (*.f64 x.im (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re))) (pow.f64 y.re #s(literal 3 binary64)))) (/.f64 x.im y.re)))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (+.f64 x.im (*.f64 y.im (-.f64 (/.f64 x.re y.re) (/.f64 x.im y.re)))))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (+.f64 x.im (*.f64 y.im (-.f64 (fma.f64 y.im (-.f64 (/.f64 x.im (pow.f64 y.re #s(literal 2 binary64))) (/.f64 x.re (pow.f64 y.re #s(literal 2 binary64)))) (/.f64 x.re y.re)) (/.f64 x.im y.re)))))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (+.f64 x.im (*.f64 y.im (-.f64 (fma.f64 y.im (-.f64 (fma.f64 y.im (-.f64 (/.f64 x.re (pow.f64 y.re #s(literal 3 binary64))) (/.f64 x.im (pow.f64 y.re #s(literal 3 binary64)))) (/.f64 x.im (pow.f64 y.re #s(literal 2 binary64)))) (/.f64 x.re (pow.f64 y.re #s(literal 2 binary64)))) (/.f64 x.re y.re)) (/.f64 x.im y.re)))))
#s(approx (/ (+ (* -1 x.re) (/ (* x.im y.re) y.im)) y.im) (/.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x.re y.im) (*.f64 x.im y.re)) (pow.f64 y.im #s(literal 2 binary64))))
#s(approx (+ (* -1 (/ x.re (* y.im y.re))) (/ x.im (pow y.im 2))) (/.f64 (+.f64 x.im (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re))) (pow.f64 y.im #s(literal 2 binary64))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (fma.f64 #s(literal -1 binary64) x.re (/.f64 (*.f64 x.im y.re) y.im)) y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (fma.f64 #s(literal -1 binary64) x.re (+.f64 (/.f64 (*.f64 x.im y.re) y.im) (/.f64 (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (pow.f64 y.im #s(literal 2 binary64))))) y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (-.f64 (fma.f64 #s(literal -1 binary64) x.re (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im (pow.f64 y.re #s(literal 3 binary64))) (pow.f64 y.im #s(literal 3 binary64))) (/.f64 (*.f64 x.im y.re) y.im))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (pow.f64 y.im #s(literal 2 binary64))))) y.im))
#s(approx (/ (+ x.im (* (/ y.im y.re) (neg x.re))) y.re) (*.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (/.f64 x.im (*.f64 y.im y.re)))))
#s(approx (+ x.im (* (/ y.im y.re) (neg x.re))) (*.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re y.re) (/.f64 x.im y.im))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 (-.f64 (+.f64 x.re (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im y.re) y.im))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re))) y.im))) y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 (-.f64 (+.f64 x.re (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im y.re) y.im) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (*.f64 #s(literal -1 binary64) (*.f64 (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re)) (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 x.im y.re)) (*.f64 #s(literal -1 binary64) (*.f64 x.re (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re)))))))) (pow.f64 y.im #s(literal 2 binary64)))))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re))) y.im))) y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 (-.f64 (+.f64 x.re (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im y.re) y.im) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (*.f64 (pow.f64 y.re #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 x.im y.re)) (*.f64 #s(literal -1 binary64) (*.f64 x.re (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re)))))) (*.f64 (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re)) (fma.f64 #s(literal -1 binary64) (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (*.f64 #s(literal -1 binary64) (*.f64 (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re)) (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 x.im y.re)) (*.f64 #s(literal -1 binary64) (*.f64 x.re (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re)))))))))) (pow.f64 y.im #s(literal 3 binary64)))))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re))) y.im) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (pow.f64 y.im #s(literal 2 binary64))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re)) (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 x.im y.re)) (*.f64 #s(literal -1 binary64) (*.f64 x.re (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re)))))) (pow.f64 y.im #s(literal 2 binary64))))))) y.im))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (-.f64 (+.f64 x.re (/.f64 (*.f64 x.im y.re) y.im)) (/.f64 (*.f64 x.re y.re) y.im)))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (-.f64 (+.f64 x.re (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 y.re (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.re))) (pow.f64 y.im #s(literal 2 binary64))) (/.f64 (*.f64 x.im y.re) y.im))) (/.f64 (*.f64 x.re y.re) y.im)))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (-.f64 (+.f64 x.re (+.f64 (/.f64 (*.f64 x.im y.re) y.im) (/.f64 (*.f64 (pow.f64 y.re #s(literal 2 binary64)) (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.re))) (pow.f64 y.im #s(literal 3 binary64))))) (+.f64 (/.f64 (*.f64 x.re y.re) y.im) (/.f64 (*.f64 y.re (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.re))) (pow.f64 y.im #s(literal 2 binary64))))))
#s(approx (+ (* (/ x.re y.re) y.im) (/ x.im y.re)) (*.f64 y.im (+.f64 (/.f64 x.im (*.f64 y.im y.re)) (/.f64 x.re y.re))))
#s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 y.im (-.f64 (/.f64 (*.f64 x.im y.re) y.im) x.re)))
#s(approx (+ (* y.re y.re) (* y.im y.im)) (*.f64 (pow.f64 y.im #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (/.f64 (pow.f64 y.re #s(literal 2 binary64)) (pow.f64 y.im #s(literal 2 binary64))))))
#s(approx (+ (* -1 (/ x.re (* y.im y.re))) (/ x.im (pow y.im 2))) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 x.re y.re) (/.f64 x.im y.im)) y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 x.re (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im y.re) y.im))) y.im)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 x.re (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 x.im y.re (/.f64 (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) y.im)) y.im))) y.im)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 x.re (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 (*.f64 x.im (pow.f64 y.re #s(literal 3 binary64))) y.im) (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64)))) y.im) (*.f64 x.im y.re)) y.im))) y.im)))
#s(approx (/ (+ x.im (* (/ y.im y.re) (neg x.re))) y.re) (*.f64 #s(literal -1 binary64) (*.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.im (*.f64 y.im y.re)) (/.f64 x.re (pow.f64 y.re #s(literal 2 binary64)))))))
#s(approx (+ x.im (* (/ y.im y.re) (neg x.re))) (*.f64 #s(literal -1 binary64) (*.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.im y.im) (/.f64 x.re y.re)))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) x.re (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 x.im y.re)) (*.f64 x.re (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re)))) y.im))) y.im)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) x.re (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x.im y.re) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re)) (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 x.im y.re)) (*.f64 x.re (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re))))) y.im) (/.f64 (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) y.im))) (*.f64 x.re (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re)))) y.im))) y.im)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) x.re (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x.im y.re) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 (pow.f64 y.re #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 x.im y.re)) (*.f64 x.re (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re))))) y.im) (/.f64 (*.f64 (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re)) (fma.f64 #s(literal -1 binary64) (*.f64 (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re)) (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 x.im y.re)) (*.f64 x.re (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re))))) (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64))))) y.im)) (fma.f64 #s(literal -1 binary64) (*.f64 (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re)) (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 x.im y.re)) (*.f64 x.re (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re))))) (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64))))) y.im))) (*.f64 x.re (+.f64 y.re (*.f64 #s(literal -1 binary64) y.re)))) y.im))) y.im)))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (+.f64 x.re (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 x.im y.re)) (*.f64 #s(literal -1 binary64) (*.f64 x.re y.re))) y.im))))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (+.f64 x.re (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x.im y.re) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 y.re (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 x.im y.re)) (*.f64 #s(literal -1 binary64) (*.f64 x.re y.re)))) y.im))) (*.f64 #s(literal -1 binary64) (*.f64 x.re y.re))) y.im))))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (+.f64 x.re (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x.im y.re) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 (pow.f64 y.re #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 x.im y.re)) (*.f64 #s(literal -1 binary64) (*.f64 x.re y.re)))) y.im)) (*.f64 #s(literal -1 binary64) (*.f64 y.re (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 x.im y.re)) (*.f64 #s(literal -1 binary64) (*.f64 x.re y.re)))))) y.im))) (*.f64 #s(literal -1 binary64) (*.f64 x.re y.re))) y.im))))
#s(approx (+ (* (/ x.re y.re) y.im) (/ x.im y.re)) (*.f64 #s(literal -1 binary64) (*.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.im (*.f64 y.im y.re)) (*.f64 #s(literal -1 binary64) (/.f64 x.re y.re))))))
#s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 y.im (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im y.re) y.im)) (*.f64 #s(literal -1 binary64) x.re)))))
#s(approx (+ (* -1 (/ x.re (* y.im y.re))) (/ x.im (pow y.im 2))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 x.im y.im) (/.f64 x.re y.re)) y.im)))
Calls

12 calls:

TimeVariablePoint
6.0ms
x.re
-inf
5.0ms
y.im
-inf
5.0ms
y.im
inf
4.0ms
y.re
0
4.0ms
y.re
-inf

rewrite292.0ms (7.2%)

Memory
-22.3MiB live, 210.2MiB allocated; 27ms collecting garbage
Counts
33 → 126
Calls
Call 1
Inputs
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (+.f64 x.im (*.f64 (/.f64 y.im y.re) (neg.f64 x.re))) y.re))
(/.f64 (+.f64 x.im (*.f64 (/.f64 y.im y.re) (neg.f64 x.re))) y.re)
(+.f64 x.im (*.f64 (/.f64 y.im y.re) (neg.f64 x.re)))
x.im
(*.f64 (/.f64 y.im y.re) (neg.f64 x.re))
(/.f64 y.im y.re)
y.im
y.re
(neg.f64 x.re)
x.re
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 x.re y.im))
(/.f64 x.re y.im)
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (fma.f64 (/.f64 x.re y.re) y.im (/.f64 x.im y.re)))
(fma.f64 (/.f64 x.re y.re) y.im (/.f64 x.im y.re))
(/.f64 x.re y.re)
(/.f64 x.im y.re)
(/.f64 #s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.re y.im))) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
#s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.re y.im)))
(*.f64 #s(literal -1 binary64) (*.f64 x.re y.im))
#s(literal -1 binary64)
(*.f64 x.re y.im)
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
(*.f64 y.re y.re)
(*.f64 y.im y.im)
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) #s(approx (/ (+ (* -1 x.re) (/ (* x.im y.re) y.im)) y.im) (*.f64 y.re (fma.f64 #s(literal -1 binary64) (/.f64 x.re (*.f64 y.im y.re)) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64)))))))
#s(approx (/ (+ (* -1 x.re) (/ (* x.im y.re) y.im)) y.im) (*.f64 y.re (fma.f64 #s(literal -1 binary64) (/.f64 x.re (*.f64 y.im y.re)) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64))))))
(*.f64 y.re (fma.f64 #s(literal -1 binary64) (/.f64 x.re (*.f64 y.im y.re)) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64)))))
(fma.f64 #s(literal -1 binary64) (/.f64 x.re (*.f64 y.im y.re)) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64))))
(/.f64 x.re (*.f64 y.im y.re))
(*.f64 y.im y.re)
(/.f64 x.im (pow.f64 y.im #s(literal 2 binary64)))
(pow.f64 y.im #s(literal 2 binary64))
#s(literal 2 binary64)
Outputs
#s(approx (+ (* x.re y.im) (* x.im y.re)) (/.f64 (fma.f64 y.im x.re x.im) y.re))
(*.f64 (fma.f64 (*.f64 x.re x.re) (/.f64 y.im y.re) (*.f64 x.im x.im)) (/.f64 (fma.f64 y.im x.re x.im) y.re))
(*.f64 (/.f64 (fma.f64 (*.f64 x.re x.re) y.im (*.f64 x.im x.im)) y.re) (fma.f64 (/.f64 (*.f64 x.re y.im) y.re) x.re (/.f64 (*.f64 x.im (*.f64 y.re (fma.f64 y.im x.re x.im))) y.re)))
(*.f64 (/.f64 (fma.f64 (*.f64 x.re x.re) y.im (*.f64 x.im x.im)) y.re) (/.f64 (fma.f64 y.im x.re x.im) y.re))
(*.f64 (fma.f64 (/.f64 (*.f64 x.re y.im) y.re) x.re (/.f64 (*.f64 x.im (*.f64 y.re (fma.f64 y.im x.re x.im))) y.re)) (/.f64 (fma.f64 (*.f64 x.re x.re) y.im (*.f64 x.im x.im)) y.re))
(*.f64 (/.f64 (fma.f64 y.im x.re x.im) y.re) (/.f64 (fma.f64 (*.f64 x.re x.re) y.im (*.f64 x.im x.im)) y.re))
(*.f64 (fma.f64 (/.f64 x.re y.re) y.im x.im) (fma.f64 (*.f64 x.re x.re) (/.f64 y.im y.re) (*.f64 x.im x.im)))
(*.f64 (fma.f64 (*.f64 x.re x.re) (/.f64 y.im y.re) (*.f64 x.im x.im)) (fma.f64 (/.f64 x.re y.re) y.im x.im))
(*.f64 (fma.f64 (/.f64 (*.f64 x.re y.im) y.re) (fma.f64 (/.f64 x.re y.re) y.im x.im) (*.f64 x.im x.im)) (fma.f64 (*.f64 x.re x.re) (/.f64 y.im y.re) (*.f64 x.im x.im)))
(*.f64 (-.f64 (/.f64 (*.f64 (*.f64 x.re x.re) y.im) y.re) (*.f64 x.im x.im)) (-.f64 (/.f64 (*.f64 x.re y.im) y.re) x.im))
(*.f64 (-.f64 (/.f64 (*.f64 (*.f64 x.re x.re) y.im) y.re) (*.f64 x.im x.im)) (neg.f64 (fma.f64 (/.f64 (*.f64 x.re y.im) y.re) (fma.f64 (/.f64 x.re y.re) y.im x.im) (*.f64 x.im x.im))))
x.im
(neg.f64 (neg.f64 x.im))
(*.f64 (/.f64 y.im y.re) (neg.f64 x.re))
(*.f64 (neg.f64 x.re) (/.f64 y.im y.re))
(*.f64 (*.f64 x.re y.im) (/.f64 #s(literal -1 binary64) y.re))
(*.f64 (*.f64 x.re y.im) (/.f64 y.im y.re))
(*.f64 (/.f64 x.re y.re) (/.f64 y.im y.re))
(*.f64 (/.f64 y.im y.re) (/.f64 y.im y.re))
(*.f64 (/.f64 y.im y.re) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (/.f64 y.im y.re))
(*.f64 (fabs.f64 (/.f64 y.im y.re)) (fabs.f64 (/.f64 y.im y.re)))
(*.f64 (pow.f64 (/.f64 y.im y.re) (/.f64 #s(literal 3 binary64) #s(literal 2 binary64))) (pow.f64 (/.f64 y.im y.re) (/.f64 #s(literal 3 binary64) #s(literal 2 binary64))))
y.im
(*.f64 y.im y.im)
(*.f64 y.im #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) y.im)
(fabs.f64 y.im)
y.re
(*.f64 y.re y.re)
(*.f64 y.re #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) y.re)
(fabs.f64 y.re)
(*.f64 x.re #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) x.re)
(neg.f64 x.re)
x.re
(*.f64 (neg.f64 #s(literal -1 binary64)) x.re)
(*.f64 (neg.f64 x.re) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (neg.f64 x.re))
(*.f64 x.re (neg.f64 #s(literal -1 binary64)))
#s(approx (+ (* x.re y.im) (* x.im y.re)) (/.f64 x.re y.im))
(*.f64 (neg.f64 #s(literal -1 binary64)) (/.f64 x.re y.im))
(*.f64 (neg.f64 x.re) (/.f64 #s(literal -1 binary64) y.im))
(*.f64 (/.f64 #s(literal -1 binary64) y.im) x.re)
(*.f64 (/.f64 x.re y.im) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (/.f64 x.re y.im))
#s(approx (+ (* x.re y.im) (* x.im y.re)) (/.f64 (fma.f64 y.im x.re x.im) y.re))
(*.f64 (fma.f64 (*.f64 x.re x.re) (/.f64 y.im y.re) (*.f64 x.im x.im)) (/.f64 (fma.f64 y.im x.re x.im) y.re))
(*.f64 (/.f64 (fma.f64 (*.f64 x.re x.re) y.im (*.f64 x.im x.im)) y.re) (fma.f64 (/.f64 (*.f64 x.re y.im) y.re) x.re (/.f64 (*.f64 x.im (*.f64 y.re (fma.f64 y.im x.re x.im))) y.re)))
(*.f64 (/.f64 (fma.f64 (*.f64 x.re x.re) y.im (*.f64 x.im x.im)) y.re) (/.f64 (fma.f64 y.im x.re x.im) y.re))
(*.f64 (fma.f64 (/.f64 (*.f64 x.re y.im) y.re) x.re (/.f64 (*.f64 x.im (*.f64 y.re (fma.f64 y.im x.re x.im))) y.re)) (/.f64 (fma.f64 (*.f64 x.re x.re) y.im (*.f64 x.im x.im)) y.re))
(*.f64 (/.f64 (fma.f64 y.im x.re x.im) y.re) (/.f64 (fma.f64 (*.f64 x.re x.re) y.im (*.f64 x.im x.im)) y.re))
(*.f64 (neg.f64 #s(literal -1 binary64)) (/.f64 x.re y.re))
(*.f64 (neg.f64 x.re) (/.f64 #s(literal -1 binary64) y.re))
(*.f64 (/.f64 #s(literal -1 binary64) y.re) x.re)
(*.f64 (/.f64 x.re y.re) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (/.f64 x.re y.re))
(/.f64 x.im y.re)
(/.f64 (neg.f64 x.im) y.re)
(neg.f64 (/.f64 x.im y.re))
(/.f64 #s(approx (+ (* x.re y.im) (* x.im y.re)) (*.f64 x.re y.im)) #s(literal 2 binary64))
#s(approx (+ (* x.re y.im) (* x.im y.re)) (*.f64 x.re y.im))
(*.f64 x.re y.im)
(*.f64 y.im x.re)
(*.f64 #s(literal -1 binary64) (*.f64 x.re y.im))
(*.f64 (neg.f64 #s(literal -1 binary64)) (*.f64 x.re y.im))
(*.f64 (neg.f64 x.re) y.im)
#s(literal -1 binary64)
(*.f64 x.re y.im)
(*.f64 y.im x.re)
(*.f64 #s(literal -1 binary64) (*.f64 x.re y.im))
(*.f64 (neg.f64 #s(literal -1 binary64)) (*.f64 x.re y.im))
(*.f64 (neg.f64 x.re) y.im)
#s(literal 2 binary64)
#s(literal 0 binary64)
#s(literal 1 binary64)
(*.f64 #s(literal 2 binary64) #s(literal 2 binary64))
(*.f64 y.re #s(literal 2 binary64))
y.re
(*.f64 y.re y.re)
(*.f64 y.re #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) y.re)
(fabs.f64 y.re)
y.im
(*.f64 y.im y.im)
(*.f64 y.im #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) y.im)
(fabs.f64 y.im)
#s(approx (+ (* x.re y.im) (* x.im y.re)) #s(approx (+ (/ x.re y.im) (/ (* x.im y.re) y.im)) (*.f64 y.re (-.f64 (/.f64 x.re (*.f64 y.im y.re)) (/.f64 x.im y.im)))))
#s(approx (+ (/ x.re y.im) (/ (* x.im y.re) y.im)) (*.f64 y.re (-.f64 (/.f64 x.re (*.f64 y.im y.re)) (/.f64 x.im y.im))))
(*.f64 y.re (-.f64 (/.f64 x.re (*.f64 y.im y.re)) (/.f64 x.im y.im)))
(*.f64 (-.f64 (/.f64 x.re (*.f64 y.im y.re)) (/.f64 x.im y.im)) y.re)
(*.f64 (fma.f64 (/.f64 x.re (*.f64 y.im y.re)) x.re (/.f64 (*.f64 x.im x.im) y.im)) (/.f64 y.re (-.f64 (/.f64 x.re (*.f64 y.im y.re)) (/.f64 x.im y.im))))
(*.f64 (*.f64 (fma.f64 (/.f64 x.re (*.f64 y.im y.re)) x.re (/.f64 (*.f64 x.im x.im) y.im)) y.re) (fma.f64 (/.f64 x.re (*.f64 y.im y.re)) x.re (fma.f64 (/.f64 x.re (*.f64 y.im y.re)) x.im (/.f64 (*.f64 x.im x.im) y.im))))
(*.f64 (*.f64 (fma.f64 (/.f64 x.re (*.f64 y.im y.re)) x.re (/.f64 (*.f64 x.im x.im) y.im)) y.re) (-.f64 (/.f64 x.re (*.f64 y.im y.re)) (/.f64 x.im y.im)))
(*.f64 (fma.f64 (/.f64 x.re (*.f64 y.im y.re)) x.re (fma.f64 (/.f64 x.re (*.f64 y.im y.re)) x.im (/.f64 (*.f64 x.im x.im) y.im))) (fma.f64 (/.f64 x.re (*.f64 y.im y.re)) x.re (/.f64 (*.f64 x.im x.im) y.im)))
(*.f64 (fma.f64 (/.f64 x.re (*.f64 y.im y.re)) x.re (/.f64 (*.f64 x.im x.im) y.im)) (-.f64 (/.f64 x.re (*.f64 y.im y.re)) (/.f64 x.im y.im)))
(*.f64 (fma.f64 (/.f64 x.re (*.f64 y.im y.re)) x.re (/.f64 (*.f64 x.im x.im) y.im)) (fma.f64 (/.f64 x.re (*.f64 y.im y.re)) x.re (fma.f64 (/.f64 x.re (*.f64 y.im y.re)) x.im (/.f64 (*.f64 x.im x.im) y.im))))
(*.f64 (-.f64 (/.f64 x.re (*.f64 y.im y.re)) (/.f64 x.im y.im)) (fma.f64 (/.f64 x.re (*.f64 y.im y.re)) x.re (/.f64 (*.f64 x.im x.im) y.im)))
(*.f64 (/.f64 (fma.f64 (/.f64 x.re (*.f64 y.im y.re)) x.re (/.f64 (*.f64 x.im x.im) y.im)) (fma.f64 (*.f64 y.re x.im) y.im (*.f64 x.re y.im))) (*.f64 y.im y.re))
(*.f64 (/.f64 #s(literal -1 binary64) y.re) (/.f64 x.re y.im))
(*.f64 (/.f64 x.re y.re) (/.f64 #s(literal -1 binary64) y.im))
(*.f64 (/.f64 #s(literal -1 binary64) y.im) (/.f64 x.re y.re))
(*.f64 (/.f64 x.re y.im) (/.f64 #s(literal -1 binary64) y.re))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) y.re) #s(literal -1 binary64)) (/.f64 x.re y.im))
(*.f64 y.im y.re)
(*.f64 y.re y.im)
(*.f64 (*.f64 y.im y.re) (*.f64 y.im y.re))
(*.f64 (*.f64 y.im y.re) y.im)
(*.f64 (*.f64 y.im y.re) y.re)
(*.f64 (/.f64 x.im y.im) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (/.f64 x.im y.im))
(/.f64 x.im y.im)
(/.f64 (*.f64 #s(literal -1 binary64) x.im) y.im)
(/.f64 (/.f64 x.im y.im) y.im)
y.im
(*.f64 y.im y.im)
(*.f64 y.im #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) y.im)
(fabs.f64 y.im)
#s(literal 2 binary64)
#s(literal 0 binary64)
#s(literal 1 binary64)
(*.f64 #s(literal 2 binary64) #s(literal 2 binary64))
(*.f64 y.re #s(literal 2 binary64))

eval79.0ms (1.9%)

Memory
12.4MiB live, 60.9MiB allocated; 88ms collecting garbage
Compiler

Compiled 10 850 to 1 525 computations (85.9% saved)

prune28.0ms (0.7%)

Memory
8.0MiB live, 57.1MiB allocated; 8ms collecting garbage
Pruning

33 alts after pruning (28 fresh and 5 done)

PrunedKeptTotal
New27514289
Fresh21416
Picked235
Done022
Total27933312
Accuracy
99.7%
Counts
312 → 33
Alt Table
Click to see full alt table
StatusAccuracyProgram
40.6%
(/.f64 #s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 (neg.f64 x.re) y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
44.0%
(/.f64 #s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 x.im y.re)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
7.4%
(/.f64 #s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.re y.im))) (*.f64 y.re #s(literal 2 binary64)))
5.1%
(/.f64 #s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.re y.im))) #s(literal 2 binary64))
4.1%
(/.f64 #s(approx (+ (* x.re y.im) (* x.im y.re)) (*.f64 x.re y.im)) #s(literal 2 binary64))
49.9%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (fma.f64 #s(literal -1 binary64) x.re (/.f64 (*.f64 x.im y.re) y.im)) y.im))
51.7%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (fma.f64 #s(literal -1 binary64) x.re (*.f64 (/.f64 x.im y.im) y.re)) y.im))
56.4%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (+.f64 x.im (*.f64 (/.f64 y.im y.re) (neg.f64 x.re))) y.re))
55.0%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (+.f64 x.im (*.f64 (*.f64 x.re y.im) (/.f64 #s(literal -1 binary64) y.re))) y.re))
12.1%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (neg.f64 x.im) y.re))
22.3%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (/.f64 (*.f64 x.im y.re) y.im)) y.im))
49.0%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re x.im) (/.f64 y.re y.im)))) y.im))
40.3%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 #s(literal -1 binary64) x.re)) y.im))
48.6%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ x.im (* (/ y.im y.re) (neg x.re))) (*.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re y.re) (/.f64 x.im y.im)))) y.re))
54.1%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ x.im (* (/ y.im y.re) (neg x.re))) (*.f64 #s(literal -1 binary64) (*.f64 x.im (-.f64 (/.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) #s(literal 1 binary64))))) y.re))
45.0%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 x.im y.re))
20.6%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 (fma.f64 (/.f64 (*.f64 x.im y.re) y.im) (fma.f64 (/.f64 x.im y.im) y.re x.re) (*.f64 x.re x.re)) (/.f64 (-.f64 (/.f64 (*.f64 x.im y.re) y.im) x.re) (*.f64 (fma.f64 (/.f64 (*.f64 x.im y.re) y.im) (fma.f64 (/.f64 x.im y.im) y.re x.re) (*.f64 x.re x.re)) y.im))))
45.3%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im #s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 x.re x.im) (/.f64 y.re y.im)) y.im))))
46.3%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im #s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (/.f64 y.re (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))))))
44.9%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im #s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (/.f64 #s(literal 1 binary64) y.re))))
42.4%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im #s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) x.im) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (pow.f64 y.im #s(literal 3 binary64))) (*.f64 x.im y.re)) (pow.f64 y.im #s(literal 2 binary64))) y.re))) y.re)) #s(literal 1 binary64)) y.re)))))
46.0%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im #s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) x.im) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 y.im #s(literal 2 binary64)) y.re))) y.re)) #s(literal 1 binary64)) y.re)))))
32.2%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im #s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (*.f64 #s(literal -1 binary64) (/.f64 x.re (*.f64 x.im y.im))))))
22.9%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) #s(approx (/ (+ (* -1 x.re) (/ (* x.im y.re) y.im)) y.im) (*.f64 y.re #s(approx (+ (* -1 (/ x.re (* y.im y.re))) (/ x.im (pow y.im 2))) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64)))))))
14.3%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 x.re (*.f64 y.im y.im)))
27.7%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 x.re (fabs.f64 y.im)))
11.8%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 x.re y.im))
40.2%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (*.f64 (/.f64 #s(literal -1 binary64) y.im) x.re))
38.2%
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (fma.f64 (/.f64 x.re y.re) y.im (/.f64 x.im y.re)))
8.0%
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (/.f64 (*.f64 x.re y.im) (+.f64 y.im y.re)))
8.1%
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (/.f64 (*.f64 x.im y.re) (+.f64 y.im y.re)))
7.8%
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) #s(approx (+ (* (/ x.re y.re) y.im) (/ x.im y.re)) (/.f64 (*.f64 x.re y.im) y.re)))
36.5%
#s(approx (+ (* x.re y.im) (* x.im y.re)) (/.f64 (fma.f64 y.im x.re x.im) y.re))
Compiler

Compiled 1 980 to 1 209 computations (38.9% saved)

series162.0ms (4%)

Memory
-28.3MiB live, 203.0MiB allocated; 57ms collecting garbage
Counts
30 → 81
Calls
Call 1
Inputs
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (+.f64 x.im (*.f64 (*.f64 x.re y.im) (/.f64 #s(literal -1 binary64) y.re))) y.re))
(/.f64 (+.f64 x.im (*.f64 (*.f64 x.re y.im) (/.f64 #s(literal -1 binary64) y.re))) y.re)
(+.f64 x.im (*.f64 (*.f64 x.re y.im) (/.f64 #s(literal -1 binary64) y.re)))
x.im
(*.f64 (*.f64 x.re y.im) (/.f64 #s(literal -1 binary64) y.re))
(*.f64 x.re y.im)
x.re
y.im
(/.f64 #s(literal -1 binary64) y.re)
#s(literal -1 binary64)
y.re
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (neg.f64 x.im) y.re))
(/.f64 (neg.f64 x.im) y.re)
(neg.f64 x.im)
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 #s(literal -1 binary64) x.re)) y.im))
(/.f64 #s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 #s(literal -1 binary64) x.re)) y.im)
#s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 #s(literal -1 binary64) x.re))
(*.f64 #s(literal -1 binary64) x.re)
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (/.f64 (*.f64 x.im y.re) y.im)) y.im))
(/.f64 #s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (/.f64 (*.f64 x.im y.re) y.im)) y.im)
#s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (/.f64 (*.f64 x.im y.re) y.im))
(/.f64 (*.f64 x.im y.re) y.im)
(*.f64 x.im y.re)
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ x.im (* (/ y.im y.re) (neg x.re))) (*.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re y.re) (/.f64 x.im y.im)))) y.re))
(/.f64 #s(approx (+ x.im (* (/ y.im y.re) (neg x.re))) (*.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re y.re) (/.f64 x.im y.im)))) y.re)
#s(approx (+ x.im (* (/ y.im y.re) (neg x.re))) (*.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re y.re) (/.f64 x.im y.im))))
(*.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re y.re) (/.f64 x.im y.im)))
(fma.f64 #s(literal -1 binary64) (/.f64 x.re y.re) (/.f64 x.im y.im))
(/.f64 x.re y.re)
(/.f64 x.im y.im)
Outputs
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (*.f64 x.im y.re) (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))) (/.f64 (*.f64 x.im y.re) (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))))
#s(approx (/ (+ x.im (* (* x.re y.im) (/ -1 y.re))) y.re) (/.f64 x.im y.re))
#s(approx (/ (+ x.im (* (* x.re y.im) (/ -1 y.re))) y.re) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (pow.f64 y.re #s(literal 2 binary64))) (/.f64 x.im y.re)))
#s(approx (+ x.im (* (* x.re y.im) (/ -1 y.re))) x.im)
#s(approx (+ x.im (* (* x.re y.im) (/ -1 y.re))) (+.f64 x.im (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re))))
#s(approx (* (* x.re y.im) (/ -1 y.re)) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re)))
#s(approx (* x.re y.im) (*.f64 x.re y.im))
#s(approx x.re x.re)
#s(approx (/ (+ (* -1 x.re) (/ (* x.im y.re) y.im)) y.im) (/.f64 (*.f64 x.im y.re) (pow.f64 y.im #s(literal 2 binary64))))
#s(approx (/ (+ (* -1 x.re) (/ (* x.im y.re) y.im)) y.im) (fma.f64 #s(literal -1 binary64) (/.f64 x.re y.im) (/.f64 (*.f64 x.im y.re) (pow.f64 y.im #s(literal 2 binary64)))))
#s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (/.f64 (*.f64 x.im y.re) y.im))
#s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (fma.f64 #s(literal -1 binary64) x.re (/.f64 (*.f64 x.im y.re) y.im)))
#s(approx (* -1 x.re) (*.f64 #s(literal -1 binary64) x.re))
#s(approx (+ (* -1 (/ x.re y.re)) (/ x.im y.im)) (/.f64 x.im y.im))
#s(approx (+ (* -1 (/ x.re y.re)) (/ x.im y.im)) (fma.f64 #s(literal -1 binary64) (/.f64 x.re y.re) (/.f64 x.im y.im)))
#s(approx (/ x.re y.re) (/.f64 x.re y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.re (fma.f64 #s(literal -1 binary64) (/.f64 y.im (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))) (/.f64 (*.f64 x.im y.re) (*.f64 x.re (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))))))
#s(approx (/ (+ x.im (* (* x.re y.im) (/ -1 y.re))) y.re) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (pow.f64 y.re #s(literal 2 binary64)))))
#s(approx (/ (+ x.im (* (* x.re y.im) (/ -1 y.re))) y.re) (*.f64 x.re (fma.f64 #s(literal -1 binary64) (/.f64 y.im (pow.f64 y.re #s(literal 2 binary64))) (/.f64 x.im (*.f64 x.re y.re)))))
#s(approx (+ x.im (* (* x.re y.im) (/ -1 y.re))) (*.f64 x.re (fma.f64 #s(literal -1 binary64) (/.f64 y.im y.re) (/.f64 x.im x.re))))
#s(approx (/ (+ (* -1 x.re) (/ (* x.im y.re) y.im)) y.im) (*.f64 #s(literal -1 binary64) (/.f64 x.re y.im)))
#s(approx (/ (+ (* -1 x.re) (/ (* x.im y.re) y.im)) y.im) (*.f64 x.re (-.f64 (/.f64 (*.f64 x.im y.re) (*.f64 x.re (pow.f64 y.im #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) y.im))))
#s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 x.re (-.f64 (/.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) #s(literal 1 binary64))))
#s(approx (+ (* -1 (/ x.re y.re)) (/ x.im y.im)) (*.f64 #s(literal -1 binary64) (/.f64 x.re y.re)))
#s(approx (+ (* -1 (/ x.re y.re)) (/ x.im y.im)) (*.f64 x.re (-.f64 (/.f64 x.im (*.f64 x.re y.im)) (/.f64 #s(literal 1 binary64) y.re))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (*.f64 x.re (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im y.re) (*.f64 x.re (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))) (/.f64 y.im (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))))))
#s(approx (/ (+ x.im (* (* x.re y.im) (/ -1 y.re))) y.re) (*.f64 #s(literal -1 binary64) (*.f64 x.re (fma.f64 #s(literal -1 binary64) (/.f64 x.im (*.f64 x.re y.re)) (/.f64 y.im (pow.f64 y.re #s(literal 2 binary64)))))))
#s(approx (+ x.im (* (* x.re y.im) (/ -1 y.re))) (*.f64 #s(literal -1 binary64) (*.f64 x.re (fma.f64 #s(literal -1 binary64) (/.f64 x.im x.re) (/.f64 y.im y.re)))))
#s(approx (/ (+ (* -1 x.re) (/ (* x.im y.re) y.im)) y.im) (*.f64 #s(literal -1 binary64) (*.f64 x.re (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im y.re) (*.f64 x.re (pow.f64 y.im #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) y.im)))))
#s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)))))))
#s(approx (+ (* -1 (/ x.re y.re)) (/ x.im y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.re (fma.f64 #s(literal -1 binary64) (/.f64 x.im (*.f64 x.re y.im)) (/.f64 #s(literal 1 binary64) y.re)))))
#s(approx (/ (neg x.im) y.re) (*.f64 #s(literal -1 binary64) (/.f64 x.im y.re)))
#s(approx (neg x.im) (*.f64 #s(literal -1 binary64) x.im))
#s(approx (* x.im y.re) (*.f64 x.im y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (*.f64 x.im (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))) (/.f64 y.re (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))))))
#s(approx (/ (+ x.im (* (* x.re y.im) (/ -1 y.re))) y.re) (*.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (*.f64 x.im (pow.f64 y.re #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) y.re))))
#s(approx (+ x.im (* (* x.re y.im) (/ -1 y.re))) (*.f64 x.im (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))))))
#s(approx (/ (+ (* -1 x.re) (/ (* x.im y.re) y.im)) y.im) (*.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re (*.f64 x.im y.im)) (/.f64 y.re (pow.f64 y.im #s(literal 2 binary64))))))
#s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re x.im) (/.f64 y.re y.im))))
#s(approx (+ (* -1 (/ x.re y.re)) (/ x.im y.im)) (*.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re (*.f64 x.im y.re)) (/.f64 #s(literal 1 binary64) y.im))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (*.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 y.re (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))) (/.f64 (*.f64 x.re y.im) (*.f64 x.im (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))))))))
#s(approx (/ (+ x.im (* (* x.re y.im) (/ -1 y.re))) y.re) (*.f64 #s(literal -1 binary64) (*.f64 x.im (-.f64 (/.f64 (*.f64 x.re y.im) (*.f64 x.im (pow.f64 y.re #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) y.re)))))
#s(approx (+ x.im (* (* x.re y.im) (/ -1 y.re))) (*.f64 #s(literal -1 binary64) (*.f64 x.im (-.f64 (/.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) #s(literal 1 binary64)))))
#s(approx (/ (+ (* -1 x.re) (/ (* x.im y.re) y.im)) y.im) (*.f64 #s(literal -1 binary64) (*.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 y.re (pow.f64 y.im #s(literal 2 binary64))) (/.f64 x.re (*.f64 x.im y.im))))))
#s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 y.re y.im) (/.f64 x.re x.im)))))
#s(approx (+ (* -1 (/ x.re y.re)) (/ x.im y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.im (-.f64 (/.f64 x.re (*.f64 x.im y.re)) (/.f64 #s(literal 1 binary64) y.im)))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (fma.f64 #s(literal -1 binary64) (/.f64 x.re y.im) (*.f64 y.re (+.f64 (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64))) (/.f64 (*.f64 x.re y.re) (pow.f64 y.im #s(literal 3 binary64)))))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (fma.f64 #s(literal -1 binary64) (/.f64 x.re y.im) (*.f64 y.re (fma.f64 y.re (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im y.re) (pow.f64 y.im #s(literal 4 binary64)))) (*.f64 #s(literal -1 binary64) (/.f64 x.re (pow.f64 y.im #s(literal 3 binary64))))) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64)))))))
#s(approx (/ (+ x.im (* (* x.re y.im) (/ -1 y.re))) y.re) (/.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x.re y.im) (*.f64 x.im y.re)) (pow.f64 y.re #s(literal 2 binary64))))
#s(approx (+ x.im (* (* x.re y.im) (/ -1 y.re))) (/.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x.re y.im) (*.f64 x.im y.re)) y.re))
#s(approx (/ -1 y.re) (/.f64 #s(literal -1 binary64) y.re))
#s(approx y.re y.re)
#s(approx (+ (* -1 (/ x.re y.re)) (/ x.im y.im)) (/.f64 (fma.f64 #s(literal -1 binary64) x.re (/.f64 (*.f64 x.im y.re) y.im)) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (+.f64 x.im (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re))) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (+.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im (pow.f64 y.im #s(literal 2 binary64))) (pow.f64 y.re #s(literal 2 binary64))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re)))) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (-.f64 (+.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re) (/.f64 (*.f64 x.re (pow.f64 y.im #s(literal 3 binary64))) (pow.f64 y.re #s(literal 3 binary64))))) (/.f64 (*.f64 x.im (pow.f64 y.im #s(literal 2 binary64))) (pow.f64 y.re #s(literal 2 binary64)))) y.re))
#s(approx (/ (+ (* -1 x.re) (/ (* x.im y.re) y.im)) y.im) (*.f64 y.re (fma.f64 #s(literal -1 binary64) (/.f64 x.re (*.f64 y.im y.re)) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64))))))
#s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 y.re (fma.f64 #s(literal -1 binary64) (/.f64 x.re y.re) (/.f64 x.im y.im))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) x.im (/.f64 (*.f64 x.re y.im) y.re)) y.re)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) x.im (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x.re y.im) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im (pow.f64 y.im #s(literal 2 binary64))) y.re))) y.re))) y.re)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) x.im (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x.re y.im) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (pow.f64 y.im #s(literal 3 binary64))) y.re)) (*.f64 #s(literal -1 binary64) (*.f64 x.im (pow.f64 y.im #s(literal 2 binary64))))) y.re))) y.re))) y.re)))
#s(approx (/ (+ (* -1 x.re) (/ (* x.im y.re) y.im)) y.im) (*.f64 #s(literal -1 binary64) (*.f64 y.re (fma.f64 #s(literal -1 binary64) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64))) (/.f64 x.re (*.f64 y.im y.re))))))
#s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 #s(literal -1 binary64) (*.f64 y.re (fma.f64 #s(literal -1 binary64) (/.f64 x.im y.im) (/.f64 x.re y.re)))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (fma.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im y.im) (pow.f64 y.re #s(literal 3 binary64))))) (/.f64 x.im y.re)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (fma.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (*.f64 y.im (-.f64 (/.f64 (*.f64 x.re y.im) (pow.f64 y.re #s(literal 4 binary64))) (/.f64 x.im (pow.f64 y.re #s(literal 3 binary64)))))) (/.f64 x.im y.re)))
#s(approx y.im y.im)
#s(approx (/ (+ (* -1 x.re) (/ (* x.im y.re) y.im)) y.im) (/.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x.re y.im) (*.f64 x.im y.re)) (pow.f64 y.im #s(literal 2 binary64))))
#s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (/.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x.re y.im) (*.f64 x.im y.re)) y.im))
#s(approx (+ (* -1 (/ x.re y.re)) (/ x.im y.im)) (/.f64 (+.f64 x.im (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re))) y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (fma.f64 #s(literal -1 binary64) x.re (/.f64 (*.f64 x.im y.re) y.im)) y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (fma.f64 #s(literal -1 binary64) x.re (+.f64 (/.f64 (*.f64 x.im y.re) y.im) (/.f64 (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (pow.f64 y.im #s(literal 2 binary64))))) y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (-.f64 (fma.f64 #s(literal -1 binary64) x.re (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im (pow.f64 y.re #s(literal 3 binary64))) (pow.f64 y.im #s(literal 3 binary64))) (/.f64 (*.f64 x.im y.re) y.im))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (pow.f64 y.im #s(literal 2 binary64))))) y.im))
#s(approx (/ (+ x.im (* (* x.re y.im) (/ -1 y.re))) y.re) (*.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (/.f64 x.im (*.f64 y.im y.re)))))
#s(approx (+ x.im (* (* x.re y.im) (/ -1 y.re))) (*.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re y.re) (/.f64 x.im y.im))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 x.re (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im y.re) y.im))) y.im)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 x.re (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 x.im y.re (/.f64 (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) y.im)) y.im))) y.im)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 x.re (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 (*.f64 x.im (pow.f64 y.re #s(literal 3 binary64))) y.im) (*.f64 x.re (pow.f64 y.re #s(literal 2 binary64)))) y.im) (*.f64 x.im y.re)) y.im))) y.im)))
#s(approx (/ (+ x.im (* (* x.re y.im) (/ -1 y.re))) y.re) (*.f64 #s(literal -1 binary64) (*.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.im (*.f64 y.im y.re)) (/.f64 x.re (pow.f64 y.re #s(literal 2 binary64)))))))
#s(approx (+ x.im (* (* x.re y.im) (/ -1 y.re))) (*.f64 #s(literal -1 binary64) (*.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.im y.im) (/.f64 x.re y.re)))))
Calls

12 calls:

TimeVariablePoint
4.0ms
y.re
-inf
4.0ms
x.re
inf
3.0ms
x.im
-inf
3.0ms
x.im
inf
3.0ms
x.re
-inf

rewrite273.0ms (6.7%)

Memory
42.0MiB live, 364.7MiB allocated; 55ms collecting garbage
Counts
30 → 84
Calls
Call 1
Inputs
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (+.f64 x.im (*.f64 (*.f64 x.re y.im) (/.f64 #s(literal -1 binary64) y.re))) y.re))
(/.f64 (+.f64 x.im (*.f64 (*.f64 x.re y.im) (/.f64 #s(literal -1 binary64) y.re))) y.re)
(+.f64 x.im (*.f64 (*.f64 x.re y.im) (/.f64 #s(literal -1 binary64) y.re)))
x.im
(*.f64 (*.f64 x.re y.im) (/.f64 #s(literal -1 binary64) y.re))
(*.f64 x.re y.im)
x.re
y.im
(/.f64 #s(literal -1 binary64) y.re)
#s(literal -1 binary64)
y.re
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (neg.f64 x.im) y.re))
(/.f64 (neg.f64 x.im) y.re)
(neg.f64 x.im)
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 #s(literal -1 binary64) x.re)) y.im))
(/.f64 #s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 #s(literal -1 binary64) x.re)) y.im)
#s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 #s(literal -1 binary64) x.re))
(*.f64 #s(literal -1 binary64) x.re)
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (/.f64 (*.f64 x.im y.re) y.im)) y.im))
(/.f64 #s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (/.f64 (*.f64 x.im y.re) y.im)) y.im)
#s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (/.f64 (*.f64 x.im y.re) y.im))
(/.f64 (*.f64 x.im y.re) y.im)
(*.f64 x.im y.re)
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ x.im (* (/ y.im y.re) (neg x.re))) (*.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re y.re) (/.f64 x.im y.im)))) y.re))
(/.f64 #s(approx (+ x.im (* (/ y.im y.re) (neg x.re))) (*.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re y.re) (/.f64 x.im y.im)))) y.re)
#s(approx (+ x.im (* (/ y.im y.re) (neg x.re))) (*.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re y.re) (/.f64 x.im y.im))))
(*.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re y.re) (/.f64 x.im y.im)))
(fma.f64 #s(literal -1 binary64) (/.f64 x.re y.re) (/.f64 x.im y.im))
(/.f64 x.re y.re)
(/.f64 x.im y.im)
Outputs
#s(approx (/ (+ (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (fma.f64 (/.f64 x.re y.re) y.im x.im) y.re))
(*.f64 (/.f64 (-.f64 x.im (/.f64 (*.f64 x.re y.im) y.re)) (fma.f64 (/.f64 x.re y.re) y.im x.im)) (/.f64 (fma.f64 (/.f64 x.re y.re) y.im x.im) y.re))
(*.f64 (/.f64 (fma.f64 (/.f64 (*.f64 x.re y.im) y.re) (fma.f64 (/.f64 x.re y.re) y.im x.im) (*.f64 x.im x.im)) (fma.f64 (/.f64 (*.f64 x.re y.im) y.re) (fma.f64 (/.f64 x.re y.re) y.im x.im) (*.f64 x.im x.im))) (/.f64 (fma.f64 (/.f64 x.re y.re) y.im x.im) y.re))
(*.f64 (-.f64 x.im (/.f64 (*.f64 x.re y.im) y.re)) (/.f64 (fma.f64 (/.f64 x.re y.re) y.im x.im) (*.f64 (fma.f64 (/.f64 x.re y.re) y.im x.im) y.re)))
(*.f64 (fma.f64 (/.f64 (*.f64 x.re y.im) y.re) (fma.f64 (/.f64 x.re y.re) y.im x.im) (*.f64 x.im x.im)) (/.f64 (-.f64 x.im (/.f64 (*.f64 x.re y.im) y.re)) (*.f64 (fma.f64 (/.f64 (*.f64 x.re y.im) y.re) (fma.f64 (/.f64 x.re y.re) y.im x.im) (*.f64 x.im x.im)) y.re)))
(+.f64 (/.f64 (*.f64 x.re y.im) (*.f64 y.re y.re)) (/.f64 x.im y.re))
(*.f64 (-.f64 x.im (/.f64 (*.f64 x.re y.im) y.re)) (/.f64 (fma.f64 (/.f64 x.re y.re) y.im x.im) (fma.f64 (/.f64 x.re y.re) y.im x.im)))
(*.f64 (/.f64 (fma.f64 (*.f64 (*.f64 x.re x.re) y.im) (/.f64 y.im (*.f64 y.re y.re)) (*.f64 x.im x.im)) (fma.f64 (*.f64 (*.f64 x.re x.re) y.im) (/.f64 y.im (*.f64 y.re y.re)) (*.f64 x.im x.im))) (-.f64 x.im (/.f64 (*.f64 x.re y.im) y.re)))
(*.f64 (/.f64 (fma.f64 (*.f64 (*.f64 x.re x.re) y.im) (/.f64 y.im (*.f64 y.re y.re)) (*.f64 x.im x.im)) (fma.f64 (*.f64 x.im x.im) x.im (pow.f64 (/.f64 (*.f64 x.re y.im) y.re) #s(literal 3 binary64)))) (-.f64 (*.f64 x.im x.im) (*.f64 (/.f64 (*.f64 x.re y.im) y.re) (fma.f64 (/.f64 x.re y.re) y.im x.im))))
(*.f64 (fma.f64 (/.f64 (*.f64 x.re y.im) y.re) (fma.f64 (/.f64 x.re y.re) y.im x.im) (*.f64 x.im x.im)) (/.f64 (-.f64 x.im (/.f64 (*.f64 x.re y.im) y.re)) (fma.f64 (/.f64 (*.f64 x.re y.im) y.re) (fma.f64 (/.f64 x.re y.re) y.im x.im) (*.f64 x.im x.im))))
(*.f64 (/.f64 (fma.f64 (*.f64 x.im x.im) x.im (pow.f64 (/.f64 (*.f64 x.re y.im) y.re) #s(literal 3 binary64))) (-.f64 (*.f64 (*.f64 x.im x.im) (*.f64 x.im x.im)) (pow.f64 (*.f64 (/.f64 (*.f64 x.re y.im) y.re) (fma.f64 (/.f64 x.re y.re) y.im x.im)) #s(literal 2 binary64)))) (-.f64 (*.f64 x.im x.im) (*.f64 (/.f64 (*.f64 x.re y.im) y.re) (fma.f64 (/.f64 x.re y.re) y.im x.im))))
x.im
(neg.f64 (neg.f64 x.im))
(*.f64 (*.f64 x.re y.im) (/.f64 #s(literal -1 binary64) y.re))
(*.f64 (neg.f64 x.re) (/.f64 y.im y.re))
(*.f64 (neg.f64 y.im) (/.f64 x.re y.re))
(*.f64 (/.f64 #s(literal -1 binary64) y.re) (*.f64 x.re y.im))
(*.f64 (/.f64 x.re y.re) (neg.f64 y.im))
(*.f64 x.re y.im)
(*.f64 y.im x.re)
(*.f64 (neg.f64 #s(literal -1 binary64)) (*.f64 x.re y.im))
(*.f64 (neg.f64 x.re) (neg.f64 y.im))
(*.f64 (neg.f64 y.im) (neg.f64 x.re))
x.re
(*.f64 (neg.f64 #s(literal -1 binary64)) x.re)
(*.f64 (neg.f64 x.re) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (neg.f64 x.re))
(*.f64 x.re (neg.f64 #s(literal -1 binary64)))
y.im
(*.f64 (neg.f64 #s(literal -1 binary64)) y.im)
(*.f64 y.im (neg.f64 #s(literal -1 binary64)))
(neg.f64 (neg.f64 y.im))
(/.f64 #s(literal -1 binary64) y.re)
(/.f64 (neg.f64 #s(literal -1 binary64)) (neg.f64 y.re))
(neg.f64 (neg.f64 (/.f64 #s(literal -1 binary64) y.re)))
#s(literal -1 binary64)
(neg.f64 (neg.f64 #s(literal -1 binary64)))
y.re
(neg.f64 (neg.f64 y.re))
#s(approx (/ (+ (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (neg.f64 (/.f64 x.im y.re)))
(/.f64 (neg.f64 x.im) y.re)
(/.f64 x.im (neg.f64 y.re))
(neg.f64 (/.f64 x.im y.re))
(neg.f64 x.im)
#s(approx (/ (+ (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (- (/ (* x.im y.re) y.im) x.re) (neg.f64 x.re)) y.im))
(/.f64 #s(approx (- (/ (* x.im y.re) y.im) x.re) (neg.f64 x.re)) y.im)
#s(approx (- (/ (* x.im y.re) y.im) x.re) (neg.f64 x.re))
(*.f64 #s(literal -1 binary64) x.re)
(*.f64 x.re #s(literal -1 binary64))
(neg.f64 x.re)
#s(approx (/ (+ (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (- (/ (* x.im y.re) y.im) x.re) (/.f64 (*.f64 x.im y.re) y.im)) y.im))
(/.f64 #s(approx (- (/ (* x.im y.re) y.im) x.re) (/.f64 (*.f64 x.im y.re) y.im)) y.im)
#s(approx (- (/ (* x.im y.re) y.im) x.re) (/.f64 (*.f64 x.im y.re) y.im))
(*.f64 (/.f64 x.im y.im) y.re)
(*.f64 (/.f64 y.re y.im) x.im)
(*.f64 x.im (/.f64 y.re y.im))
(*.f64 y.re (/.f64 x.im y.im))
(*.f64 (neg.f64 x.im) (/.f64 y.re (neg.f64 y.im)))
(*.f64 x.im y.re)
(*.f64 y.re x.im)
(*.f64 (neg.f64 x.im) (neg.f64 y.re))
(*.f64 (neg.f64 y.re) (neg.f64 x.im))
(neg.f64 (neg.f64 (*.f64 x.im y.re)))
#s(approx (/ (+ (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (- x.im (/ (* x.re y.im) y.re)) (*.f64 y.im (-.f64 (/.f64 x.im y.im) (/.f64 x.re y.re)))) y.re))
(/.f64 #s(approx (- x.im (/ (* x.re y.im) y.re)) (*.f64 y.im (-.f64 (/.f64 x.im y.im) (/.f64 x.re y.re)))) y.re)
#s(approx (- x.im (/ (* x.re y.im) y.re)) (*.f64 y.im (-.f64 (/.f64 x.im y.im) (/.f64 x.re y.re))))
(*.f64 y.im (-.f64 (/.f64 x.im y.im) (/.f64 x.re y.re)))
(*.f64 (-.f64 (/.f64 x.im y.im) (/.f64 x.re y.re)) y.im)
(*.f64 (fma.f64 x.re (/.f64 x.re (*.f64 y.re y.re)) (/.f64 (*.f64 x.im x.im) (*.f64 y.im y.im))) (/.f64 y.im (-.f64 (/.f64 x.im y.im) (/.f64 x.re y.re))))
(*.f64 y.im (-.f64 (neg.f64 (/.f64 x.re y.re)) (neg.f64 (/.f64 x.im y.im))))
(*.f64 (fma.f64 x.im (/.f64 (*.f64 x.im x.im) (*.f64 (*.f64 y.im y.im) y.im)) (/.f64 (*.f64 (*.f64 x.re x.re) x.re) (*.f64 (*.f64 y.re y.re) y.re))) (/.f64 y.im (fma.f64 (-.f64 (/.f64 x.im y.im) (/.f64 x.re y.re)) (/.f64 x.im y.im) (/.f64 (*.f64 x.re x.re) (*.f64 y.re y.re)))))
(*.f64 (-.f64 (/.f64 x.im y.im) (/.f64 x.re y.re)) (/.f64 (-.f64 (/.f64 x.im y.im) (/.f64 x.re y.re)) (-.f64 (/.f64 x.im y.im) (/.f64 x.re y.re))))
(*.f64 (/.f64 (fma.f64 x.re (/.f64 x.re (*.f64 y.re y.re)) (/.f64 (*.f64 x.im x.im) (*.f64 y.im y.im))) (fma.f64 x.re (/.f64 x.re (*.f64 y.re y.re)) (/.f64 (*.f64 x.im x.im) (*.f64 y.im y.im)))) (-.f64 (/.f64 x.im y.im) (/.f64 x.re y.re)))
(*.f64 (/.f64 (fma.f64 x.re (/.f64 x.re (*.f64 y.re y.re)) (/.f64 (*.f64 x.im x.im) (*.f64 y.im y.im))) (fma.f64 y.im x.re (*.f64 x.im y.re))) (*.f64 y.im y.re))
(*.f64 (/.f64 (fma.f64 x.re (/.f64 x.re (*.f64 y.re y.re)) (/.f64 (*.f64 x.im x.im) (*.f64 y.im y.im))) (fma.f64 y.im x.re (*.f64 x.im y.re))) (neg.f64 (*.f64 y.im y.re)))
(*.f64 (/.f64 (fma.f64 x.re (/.f64 x.re (*.f64 y.re y.re)) (/.f64 (*.f64 x.im x.im) (*.f64 y.im y.im))) (fma.f64 x.im (/.f64 (*.f64 x.im x.im) (*.f64 (*.f64 y.im y.im) y.im)) (/.f64 (*.f64 (*.f64 x.re x.re) x.re) (*.f64 (*.f64 y.re y.re) y.re)))) (fma.f64 (-.f64 (/.f64 x.im y.im) (/.f64 x.re y.re)) (/.f64 x.im y.im) (/.f64 (*.f64 x.re x.re) (*.f64 y.re y.re))))
(*.f64 (neg.f64 #s(literal -1 binary64)) (/.f64 x.re y.re))
(*.f64 (neg.f64 x.re) (/.f64 #s(literal -1 binary64) y.re))
(*.f64 (/.f64 x.re y.re) (neg.f64 #s(literal -1 binary64)))
(*.f64 (neg.f64 (/.f64 x.re y.re)) #s(literal -1 binary64))
(*.f64 (neg.f64 (/.f64 #s(literal -1 binary64) y.re)) x.re)
(/.f64 x.im y.im)
(/.f64 (neg.f64 x.im) (neg.f64 y.im))
(neg.f64 (neg.f64 (/.f64 x.im y.im)))

eval37.0ms (0.9%)

Memory
-5.4MiB live, 40.9MiB allocated; 7ms collecting garbage
Compiler

Compiled 6 897 to 976 computations (85.8% saved)

prune19.0ms (0.5%)

Memory
-20.3MiB live, 26.6MiB allocated; 2ms collecting garbage
Pruning

34 alts after pruning (26 fresh and 8 done)

PrunedKeptTotal
New1766182
Fresh32023
Picked235
Done055
Total18134215
Accuracy
99.7%
Counts
215 → 34
Alt Table
Click to see full alt table
StatusAccuracyProgram
40.6%
(/.f64 #s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 (neg.f64 x.re) y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
44.0%
(/.f64 #s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 x.im y.re)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
7.4%
(/.f64 #s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.re y.im))) (*.f64 y.re #s(literal 2 binary64)))
5.1%
(/.f64 #s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.re y.im))) #s(literal 2 binary64))
4.1%
(/.f64 #s(approx (+ (* x.re y.im) (* x.im y.re)) (*.f64 x.re y.im)) #s(literal 2 binary64))
49.9%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (fma.f64 #s(literal -1 binary64) x.re (/.f64 (*.f64 x.im y.re) y.im)) y.im))
56.4%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (+.f64 x.im (*.f64 (/.f64 y.im y.re) (neg.f64 x.re))) y.re))
55.0%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (+.f64 x.im (*.f64 (*.f64 x.re y.im) (/.f64 #s(literal -1 binary64) y.re))) y.re))
12.1%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (neg.f64 x.im) y.re))
40.3%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (- (/ (* x.im y.re) y.im) x.re) (neg.f64 x.re)) y.im))
48.6%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (- x.im (/ (* x.re y.im) y.re)) (*.f64 y.im (-.f64 (/.f64 x.im y.im) (/.f64 x.re y.re)))) y.re))
22.3%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (/.f64 (*.f64 x.im y.re) y.im)) y.im))
24.2%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 (/.f64 y.re y.im) x.im)) y.im))
24.6%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 (/.f64 x.im y.im) y.re)) y.im))
46.3%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ x.im (* (/ y.im y.re) (neg x.re))) (*.f64 y.im #s(approx (+ (* -1 (/ x.re y.re)) (/ x.im y.im)) (*.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re (*.f64 x.im y.re)) (/.f64 #s(literal 1 binary64) y.im)))))) y.re))
24.4%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ x.im (* (/ y.im y.re) (neg x.re))) (*.f64 y.im #s(approx (+ (* -1 (/ x.re y.re)) (/ x.im y.im)) (*.f64 #s(literal -1 binary64) (/.f64 x.re y.re))))) y.re))
54.1%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ x.im (* (/ y.im y.re) (neg x.re))) (*.f64 #s(literal -1 binary64) (*.f64 x.im (-.f64 (/.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) #s(literal 1 binary64))))) y.re))
45.0%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 x.im y.re))
20.6%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 (fma.f64 (/.f64 (*.f64 x.im y.re) y.im) (fma.f64 (/.f64 x.im y.im) y.re x.re) (*.f64 x.re x.re)) (/.f64 (-.f64 (/.f64 (*.f64 x.im y.re) y.im) x.re) (*.f64 (fma.f64 (/.f64 (*.f64 x.im y.re) y.im) (fma.f64 (/.f64 x.im y.im) y.re x.re) (*.f64 x.re x.re)) y.im))))
45.3%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im #s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 x.re x.im) (/.f64 y.re y.im)) y.im))))
46.3%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im #s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (/.f64 y.re (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))))))
44.9%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im #s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (/.f64 #s(literal 1 binary64) y.re))))
42.4%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im #s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) x.im) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (pow.f64 y.im #s(literal 3 binary64))) (*.f64 x.im y.re)) (pow.f64 y.im #s(literal 2 binary64))) y.re))) y.re)) #s(literal 1 binary64)) y.re)))))
46.0%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im #s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) x.im) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 y.im #s(literal 2 binary64)) y.re))) y.re)) #s(literal 1 binary64)) y.re)))))
32.2%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im #s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (*.f64 #s(literal -1 binary64) (/.f64 x.re (*.f64 x.im y.im))))))
22.9%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) #s(approx (/ (+ (* -1 x.re) (/ (* x.im y.re) y.im)) y.im) (*.f64 y.re #s(approx (+ (* -1 (/ x.re (* y.im y.re))) (/ x.im (pow y.im 2))) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64)))))))
14.3%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 x.re (*.f64 y.im y.im)))
11.8%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 x.re y.im))
40.2%
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (*.f64 (/.f64 #s(literal -1 binary64) y.im) x.re))
38.2%
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (fma.f64 (/.f64 x.re y.re) y.im (/.f64 x.im y.re)))
8.0%
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (/.f64 (*.f64 x.re y.im) (+.f64 y.im y.re)))
8.1%
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (/.f64 (*.f64 x.im y.re) (+.f64 y.im y.re)))
7.8%
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) #s(approx (+ (* (/ x.re y.re) y.im) (/ x.im y.re)) (/.f64 (*.f64 x.re y.im) y.re)))
36.5%
#s(approx (+ (* x.re y.im) (* x.im y.re)) (/.f64 (fma.f64 y.im x.re x.im) y.re))
Compiler

Compiled 1 117 to 681 computations (39% saved)

regimes203.0ms (5%)

Memory
9.9MiB live, 249.8MiB allocated; 71ms collecting garbage
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
2 → 3
23 → 3
24 → 3
25 → 3
37 → 3
51 → 5
Calls
Call 1
Inputs
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 x.re y.im))
Outputs
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 x.re y.im))
Call 2
Inputs
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 x.re y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 x.im y.re))
Outputs
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 x.re y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 x.im y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 x.re y.im))
Call 3
Inputs
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 x.re y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 x.im y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (- (/ (* x.im y.re) y.im) x.re) (neg.f64 x.re)) y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (neg.f64 x.im) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 x.re (fabs.f64 y.im)))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) #s(approx (+ (* (/ x.re y.re) y.im) (/ x.im y.re)) (/.f64 (*.f64 x.re y.im) y.re)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (*.f64 (/.f64 #s(literal -1 binary64) y.im) x.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 x.re (*.f64 y.im y.im)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (/.f64 x.re y.im)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im #s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (/.f64 #s(literal 1 binary64) y.re))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 #s(literal -1 binary64) x.re)) y.im))
(/.f64 #s(approx (+ (* x.re y.im) (* x.im y.re)) (*.f64 x.re y.im)) #s(literal 2 binary64))
#s(approx (+ (* x.re y.im) (* x.im y.re)) (/.f64 (fma.f64 y.im x.re x.im) y.re))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (/.f64 (*.f64 x.im y.re) (+.f64 y.im y.re)))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (/.f64 (*.f64 x.re y.im) (+.f64 y.im y.re)))
(/.f64 #s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.re y.im))) #s(literal 2 binary64))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 (/.f64 x.im y.im) y.re)) y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 (/.f64 y.re y.im) x.im)) y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (/.f64 (*.f64 x.im y.re) y.im)) y.im))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (fma.f64 (/.f64 x.re y.re) y.im (/.f64 x.im y.re)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im #s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (*.f64 #s(literal -1 binary64) (/.f64 x.re (*.f64 x.im y.im))))))
(/.f64 #s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.re y.im))) (*.f64 y.re #s(literal 2 binary64)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ x.im (* (/ y.im y.re) (neg x.re))) (*.f64 y.im #s(approx (+ (* -1 (/ x.re y.re)) (/ x.im y.im)) (*.f64 #s(literal -1 binary64) (/.f64 x.re y.re))))) y.re))
Outputs
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 x.im y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (- (/ (* x.im y.re) y.im) x.re) (neg.f64 x.re)) y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 x.im y.re))
Call 4
Inputs
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 x.re y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 x.im y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (- (/ (* x.im y.re) y.im) x.re) (neg.f64 x.re)) y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (neg.f64 x.im) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 x.re (fabs.f64 y.im)))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) #s(approx (+ (* (/ x.re y.re) y.im) (/ x.im y.re)) (/.f64 (*.f64 x.re y.im) y.re)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (*.f64 (/.f64 #s(literal -1 binary64) y.im) x.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 x.re (*.f64 y.im y.im)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (/.f64 x.re y.im)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im #s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (/.f64 #s(literal 1 binary64) y.re))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 #s(literal -1 binary64) x.re)) y.im))
(/.f64 #s(approx (+ (* x.re y.im) (* x.im y.re)) (*.f64 x.re y.im)) #s(literal 2 binary64))
#s(approx (+ (* x.re y.im) (* x.im y.re)) (/.f64 (fma.f64 y.im x.re x.im) y.re))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (/.f64 (*.f64 x.im y.re) (+.f64 y.im y.re)))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (/.f64 (*.f64 x.re y.im) (+.f64 y.im y.re)))
(/.f64 #s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.re y.im))) #s(literal 2 binary64))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 (/.f64 x.im y.im) y.re)) y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 (/.f64 y.re y.im) x.im)) y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (/.f64 (*.f64 x.im y.re) y.im)) y.im))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (fma.f64 (/.f64 x.re y.re) y.im (/.f64 x.im y.re)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im #s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (*.f64 #s(literal -1 binary64) (/.f64 x.re (*.f64 x.im y.im))))))
(/.f64 #s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.re y.im))) (*.f64 y.re #s(literal 2 binary64)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ x.im (* (/ y.im y.re) (neg x.re))) (*.f64 y.im #s(approx (+ (* -1 (/ x.re y.re)) (/ x.im y.im)) (*.f64 #s(literal -1 binary64) (/.f64 x.re y.re))))) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (+.f64 x.im (*.f64 (/.f64 y.im y.re) (neg.f64 x.re))) y.re))
Outputs
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (+.f64 x.im (*.f64 (/.f64 y.im y.re) (neg.f64 x.re))) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (- (/ (* x.im y.re) y.im) x.re) (neg.f64 x.re)) y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (+.f64 x.im (*.f64 (/.f64 y.im y.re) (neg.f64 x.re))) y.re))
Call 5
Inputs
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 x.re y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 x.im y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (- (/ (* x.im y.re) y.im) x.re) (neg.f64 x.re)) y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (neg.f64 x.im) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 x.re (fabs.f64 y.im)))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) #s(approx (+ (* (/ x.re y.re) y.im) (/ x.im y.re)) (/.f64 (*.f64 x.re y.im) y.re)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (*.f64 (/.f64 #s(literal -1 binary64) y.im) x.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 x.re (*.f64 y.im y.im)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (/.f64 x.re y.im)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im #s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (/.f64 #s(literal 1 binary64) y.re))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 #s(literal -1 binary64) x.re)) y.im))
(/.f64 #s(approx (+ (* x.re y.im) (* x.im y.re)) (*.f64 x.re y.im)) #s(literal 2 binary64))
#s(approx (+ (* x.re y.im) (* x.im y.re)) (/.f64 (fma.f64 y.im x.re x.im) y.re))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (/.f64 (*.f64 x.im y.re) (+.f64 y.im y.re)))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (/.f64 (*.f64 x.re y.im) (+.f64 y.im y.re)))
(/.f64 #s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.re y.im))) #s(literal 2 binary64))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 (/.f64 x.im y.im) y.re)) y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 (/.f64 y.re y.im) x.im)) y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (/.f64 (*.f64 x.im y.re) y.im)) y.im))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (fma.f64 (/.f64 x.re y.re) y.im (/.f64 x.im y.re)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im #s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (*.f64 #s(literal -1 binary64) (/.f64 x.re (*.f64 x.im y.im))))))
(/.f64 #s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.re y.im))) (*.f64 y.re #s(literal 2 binary64)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ x.im (* (/ y.im y.re) (neg x.re))) (*.f64 y.im #s(approx (+ (* -1 (/ x.re y.re)) (/ x.im y.im)) (*.f64 #s(literal -1 binary64) (/.f64 x.re y.re))))) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (+.f64 x.im (*.f64 (/.f64 y.im y.re) (neg.f64 x.re))) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (fma.f64 #s(literal -1 binary64) x.re (*.f64 (/.f64 x.im y.im) y.re)) y.im))
Outputs
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (+.f64 x.im (*.f64 (/.f64 y.im y.re) (neg.f64 x.re))) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (fma.f64 #s(literal -1 binary64) x.re (*.f64 (/.f64 x.im y.im) y.re)) y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (+.f64 x.im (*.f64 (/.f64 y.im y.re) (neg.f64 x.re))) y.re))
Call 6
Inputs
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 x.re y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 x.im y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (- (/ (* x.im y.re) y.im) x.re) (neg.f64 x.re)) y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (neg.f64 x.im) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 x.re (fabs.f64 y.im)))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) #s(approx (+ (* (/ x.re y.re) y.im) (/ x.im y.re)) (/.f64 (*.f64 x.re y.im) y.re)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (*.f64 (/.f64 #s(literal -1 binary64) y.im) x.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 x.re (*.f64 y.im y.im)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (/.f64 x.re y.im)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im #s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (/.f64 #s(literal 1 binary64) y.re))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 #s(literal -1 binary64) x.re)) y.im))
(/.f64 #s(approx (+ (* x.re y.im) (* x.im y.re)) (*.f64 x.re y.im)) #s(literal 2 binary64))
#s(approx (+ (* x.re y.im) (* x.im y.re)) (/.f64 (fma.f64 y.im x.re x.im) y.re))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (/.f64 (*.f64 x.im y.re) (+.f64 y.im y.re)))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (/.f64 (*.f64 x.re y.im) (+.f64 y.im y.re)))
(/.f64 #s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.re y.im))) #s(literal 2 binary64))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 (/.f64 x.im y.im) y.re)) y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 (/.f64 y.re y.im) x.im)) y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (/.f64 (*.f64 x.im y.re) y.im)) y.im))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (fma.f64 (/.f64 x.re y.re) y.im (/.f64 x.im y.re)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im #s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (*.f64 #s(literal -1 binary64) (/.f64 x.re (*.f64 x.im y.im))))))
(/.f64 #s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.re y.im))) (*.f64 y.re #s(literal 2 binary64)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ x.im (* (/ y.im y.re) (neg x.re))) (*.f64 y.im #s(approx (+ (* -1 (/ x.re y.re)) (/ x.im y.im)) (*.f64 #s(literal -1 binary64) (/.f64 x.re y.re))))) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (+.f64 x.im (*.f64 (/.f64 y.im y.re) (neg.f64 x.re))) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (fma.f64 #s(literal -1 binary64) x.re (*.f64 (/.f64 x.im y.im) y.re)) y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (fma.f64 #s(literal -1 binary64) x.re (/.f64 (*.f64 x.im y.re) y.im)) y.im))
(/.f64 #s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 x.im y.re)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (+.f64 x.im (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re))) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (+.f64 x.im (*.f64 (*.f64 x.re y.im) (/.f64 #s(literal -1 binary64) y.re))) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (- x.im (/ (* x.re y.im) y.re)) (*.f64 y.im (-.f64 (/.f64 x.im y.im) (/.f64 x.re y.re)))) y.re))
(/.f64 #s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 (neg.f64 x.re) y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(/.f64 #s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.re y.im))) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ x.im (* -1 (/ (* x.re y.im) y.re))) (*.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re y.re) (/.f64 x.im y.im)))) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ x.im (* (/ y.im y.re) (neg x.re))) (*.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re y.re) (/.f64 x.im y.im)))) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re x.im) (/.f64 y.re y.im)))) y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im #s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 x.re x.im) (/.f64 y.re y.im)) y.im))))
(/.f64 (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (*.f64 (-.f64 y.re y.im) (+.f64 y.im y.re)))
Outputs
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (+.f64 x.im (*.f64 (/.f64 y.im y.re) (neg.f64 x.re))) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (fma.f64 #s(literal -1 binary64) x.re (/.f64 (*.f64 x.im y.re) y.im)) y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (+.f64 x.im (*.f64 (/.f64 y.im y.re) (neg.f64 x.re))) y.re))
Call 7
Inputs
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 x.re y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 x.im y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (- (/ (* x.im y.re) y.im) x.re) (neg.f64 x.re)) y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (neg.f64 x.im) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 x.re (fabs.f64 y.im)))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) #s(approx (+ (* (/ x.re y.re) y.im) (/ x.im y.re)) (/.f64 (*.f64 x.re y.im) y.re)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (*.f64 (/.f64 #s(literal -1 binary64) y.im) x.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (* (- y.re y.im) (+ y.im y.re))) (/.f64 x.re (*.f64 y.im y.im)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 #s(literal -1 binary64) (/.f64 x.re y.im)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im #s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (/.f64 #s(literal 1 binary64) y.re))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 #s(literal -1 binary64) x.re)) y.im))
(/.f64 #s(approx (+ (* x.re y.im) (* x.im y.re)) (*.f64 x.re y.im)) #s(literal 2 binary64))
#s(approx (+ (* x.re y.im) (* x.im y.re)) (/.f64 (fma.f64 y.im x.re x.im) y.re))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (/.f64 (*.f64 x.im y.re) (+.f64 y.im y.re)))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (/.f64 (*.f64 x.re y.im) (+.f64 y.im y.re)))
(/.f64 #s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.re y.im))) #s(literal 2 binary64))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 (/.f64 x.im y.im) y.re)) y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 (/.f64 y.re y.im) x.im)) y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (/.f64 (*.f64 x.im y.re) y.im)) y.im))
#s(approx (/ (+ (* x.im y.re) (* y.im x.re)) (+ y.re y.im)) (fma.f64 (/.f64 x.re y.re) y.im (/.f64 x.im y.re)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im #s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (*.f64 #s(literal -1 binary64) (/.f64 x.re (*.f64 x.im y.im))))))
(/.f64 #s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.re y.im))) (*.f64 y.re #s(literal 2 binary64)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ x.im (* (/ y.im y.re) (neg x.re))) (*.f64 y.im #s(approx (+ (* -1 (/ x.re y.re)) (/ x.im y.im)) (*.f64 #s(literal -1 binary64) (/.f64 x.re y.re))))) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (+.f64 x.im (*.f64 (/.f64 y.im y.re) (neg.f64 x.re))) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (fma.f64 #s(literal -1 binary64) x.re (*.f64 (/.f64 x.im y.im) y.re)) y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (fma.f64 #s(literal -1 binary64) x.re (/.f64 (*.f64 x.im y.re) y.im)) y.im))
(/.f64 #s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 x.im y.re)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (+.f64 x.im (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) y.re))) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (+.f64 x.im (*.f64 (*.f64 x.re y.im) (/.f64 #s(literal -1 binary64) y.re))) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (- x.im (/ (* x.re y.im) y.re)) (*.f64 y.im (-.f64 (/.f64 x.im y.im) (/.f64 x.re y.re)))) y.re))
(/.f64 #s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 (neg.f64 x.re) y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
(/.f64 #s(approx (- (* x.im y.re) (* x.re y.im)) (*.f64 #s(literal -1 binary64) (*.f64 x.re y.im))) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ x.im (* -1 (/ (* x.re y.im) y.re))) (*.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re y.re) (/.f64 x.im y.im)))) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ x.im (* (/ y.im y.re) (neg x.re))) (*.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re y.re) (/.f64 x.im y.im)))) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ (* -1 x.re) (/ (* x.im y.re) y.im)) (*.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re x.im) (/.f64 y.re y.im)))) y.im))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im #s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 x.re x.im) (/.f64 y.re y.im)) y.im))))
(/.f64 (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (*.f64 (-.f64 y.re y.im) (+.f64 y.im y.re)))
(/.f64 (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ x.im (* -1 (/ (* x.re y.im) y.re))) (*.f64 #s(literal -1 binary64) (*.f64 x.im (-.f64 (/.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) #s(literal 1 binary64))))) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ x.im (* (/ y.im y.re) (neg x.re))) (*.f64 #s(literal -1 binary64) (*.f64 x.im (-.f64 (/.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) #s(literal 1 binary64))))) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) #s(approx (/ (+ (* -1 x.re) (/ (* x.im y.re) y.im)) y.im) (*.f64 y.re #s(approx (+ (* -1 (/ x.re (* y.im y.re))) (/ x.im (pow y.im 2))) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64)))))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 #s(approx (+ x.im (* (/ y.im y.re) (neg x.re))) (*.f64 y.im #s(approx (+ (* -1 (/ x.re y.re)) (/ x.im y.im)) (*.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re (*.f64 x.im y.re)) (/.f64 #s(literal 1 binary64) y.im)))))) y.re))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) #s(approx (/ (+ (* -1 x.re) (/ (* x.im y.re) y.im)) y.im) (*.f64 y.re (fma.f64 #s(literal -1 binary64) (/.f64 x.re (*.f64 y.im y.re)) (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64)))))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im #s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (/.f64 y.re (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im #s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) x.im) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 y.im #s(literal 2 binary64)) y.re))) y.re)) #s(literal 1 binary64)) y.re)))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (fma.f64 #s(literal -1 binary64) (/.f64 x.re y.im) (*.f64 y.re (+.f64 (/.f64 x.im (pow.f64 y.im #s(literal 2 binary64))) (/.f64 (*.f64 x.re y.re) (pow.f64 y.im #s(literal 3 binary64)))))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (fma.f64 y.im (fma.f64 #s(literal -1 binary64) (/.f64 x.re (pow.f64 y.re #s(literal 2 binary64))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.im y.im) (pow.f64 y.re #s(literal 3 binary64))))) (/.f64 x.im y.re)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 (fma.f64 (/.f64 (*.f64 x.im y.re) y.im) (fma.f64 (/.f64 x.im y.im) y.re x.re) (*.f64 x.re x.re)) (/.f64 (-.f64 (/.f64 (*.f64 x.im y.re) y.im) x.re) (*.f64 (fma.f64 (/.f64 (*.f64 x.im y.re) y.im) (fma.f64 (/.f64 x.im y.im) y.re x.re) (*.f64 x.re x.re)) y.im))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im #s(approx (+ (* -1 (/ (* x.re y.im) (* x.im (+ (pow y.im 2) (pow y.re 2))))) (/ y.re (+ (pow y.im 2) (pow y.re 2)))) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) x.im) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re (pow.f64 y.im #s(literal 3 binary64))) (*.f64 x.im y.re)) (pow.f64 y.im #s(literal 2 binary64))) y.re))) y.re)) #s(literal 1 binary64)) y.re)))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.im (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x.re y.im) (*.f64 x.im (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))) (/.f64 y.re (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))))))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (*.f64 x.re (fma.f64 #s(literal -1 binary64) (/.f64 y.im (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64)))) (/.f64 (*.f64 x.im y.re) (*.f64 x.re (+.f64 (pow.f64 y.im #s(literal 2 binary64)) (pow.f64 y.re #s(literal 2 binary64))))))))
Outputs
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (+.f64 x.im (*.f64 (/.f64 y.im y.re) (neg.f64 x.re))) y.re))
(/.f64 (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (fma.f64 #s(literal -1 binary64) x.re (/.f64 (*.f64 x.im y.re) y.im)) y.im))
(/.f64 (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
#s(approx (/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))) (/.f64 (+.f64 x.im (*.f64 (/.f64 y.im y.re) (neg.f64 x.re))) y.re))
Calls

25 calls:

38.0ms
y.re
15.0ms
(/.f64 (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
13.0ms
y.im
13.0ms
x.im
13.0ms
x.re
Results
AccuracySegmentsBranch
11.8%1x.re
11.8%1x.im
11.8%1(/.f64 (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
11.8%1y.re
11.8%1y.im
45.0%1x.im
45.0%1x.re
45.0%1(/.f64 (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
49.6%3y.im
45.0%1y.re
53.9%3x.re
52.1%3x.im
65.6%3y.im
67.0%3y.re
56.4%1(/.f64 (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
73.9%3y.im
74.9%3y.re
81.2%3y.re
81.0%3y.im
82.4%3y.re
78.0%3(/.f64 (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
68.8%2x.re
70.1%2x.im
87.5%5y.re
87.3%5y.im
Compiler

Compiled 1 727 to 418 computations (75.8% saved)

bsearch55.0ms (1.4%)

Memory
29.1MiB live, 73.4MiB allocated; 22ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
14.0ms
6.110460308082385e+56
8.312236968888669e+67
22.0ms
1.690213711440189e-140
3.2045618521843277e-139
6.0ms
-3.2229761446344004e-77
-2.335434396362077e-77
8.0ms
-1.1446424208992266e+122
-1.44382865987144e+121
Samples
22.0ms432×0valid
Compiler

Compiled 1 125 to 828 computations (26.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 12.0ms
ival-mult!: 8.0ms (69% of total)
ival-div!: 2.0ms (17.2% of total)
ival-sub!: 1.0ms (8.6% of total)
ival-add!: 1.0ms (8.6% of total)
adjust: 0.0ms (0% of total)

bsearch25.0ms (0.6%)

Memory
-16.3MiB live, 28.1MiB allocated; 17ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
20.0ms
1.2767990029651682e-78
4.224637637968445e-76
3.0ms
-2.999233870410874e-43
-2.7341765451261627e-43
Samples
17.0ms160×0valid
Compiler

Compiled 538 to 378 computations (29.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 13.0ms
ival-sub!: 9.0ms (70.4% of total)
ival-mult!: 3.0ms (23.5% of total)
ival-div!: 1.0ms (7.8% of total)
adjust: 0.0ms (0% of total)
ival-add!: 0.0ms (0% of total)

bsearch2.0ms (0%)

Memory
3.7MiB live, 3.7MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
1.2767990029651682e-78
4.224637637968445e-76
0.0ms
-2.999233870410874e-43
-2.7341765451261627e-43
Compiler

Compiled 538 to 378 computations (29.7% saved)

bsearch2.0ms (0%)

Memory
3.2MiB live, 3.2MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
1.2767990029651682e-78
4.224637637968445e-76
0.0ms
-2.999233870410874e-43
-2.7341765451261627e-43
Compiler

Compiled 558 to 378 computations (32.3% saved)

bsearch9.0ms (0.2%)

Memory
15.4MiB live, 15.4MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
1.2767990029651682e-78
4.224637637968445e-76
7.0ms
-9.294110079208634e-27
-2.9284490610414075e-27
Samples
4.0ms80×0valid
Compiler

Compiled 629 to 434 computations (31% saved)

Precisions
Click to see histograms. Total time spent on operations: 2.0ms
ival-mult!: 2.0ms (92.2% of total)
ival-sub!: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
ival-add!: 0.0ms (0% of total)
ival-div!: 0.0ms (0% of total)

bsearch34.0ms (0.8%)

Memory
-4.8MiB live, 39.6MiB allocated; 25ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
8.0ms
5.566504969615052e+185
2.5939420826509175e+186
24.0ms
-5.932481151713854e+206
-9.53877036296394e+202
Samples
24.0ms224×0valid
Compiler

Compiled 550 to 410 computations (25.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 6.0ms
ival-mult!: 4.0ms (65.7% of total)
ival-add!: 1.0ms (16.4% of total)
ival-div!: 1.0ms (16.4% of total)
ival-sub!: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)

derivations2.0ms (0.1%)

Memory
4.4MiB live, 4.4MiB allocated; 0ms collecting garbage
Stop Event
fuel
Compiler

Compiled 542 to 79 computations (85.4% saved)

preprocess61.0ms (1.5%)

Memory
-3.2MiB live, 100.0MiB allocated; 31ms collecting garbage
Compiler

Compiled 557 to 90 computations (83.8% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated; 0ms collecting garbage

Profiling

Loading profile data...